@shumai-one/shumai 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/{chunk-qmtvy2j4.js → chunk-03pw611p.js} +2 -2
- package/bin/{chunk-1nh6xgek.js → chunk-05m8w09t.js} +1 -1
- package/bin/chunk-0ark0qrm.js +1 -0
- package/bin/{chunk-arpna31w.js → chunk-1apsnd7e.js} +1 -1
- package/bin/{chunk-g2dk56e7.js → chunk-1bfrnc6b.js} +1 -1
- package/bin/chunk-21h9kgp5.js +1 -0
- package/bin/{chunk-na2nympm.js → chunk-2967rnmn.js} +1 -1
- package/bin/chunk-2errtbmb.js +2 -0
- package/bin/{chunk-hrzm70wg.js → chunk-2jnyk045.js} +1 -1
- package/bin/{chunk-etces6ff.js → chunk-2mr99scd.js} +2 -2
- package/bin/chunk-2pxev94x.js +2 -0
- package/bin/chunk-2y9t0qxp.js +45 -0
- package/bin/{chunk-s7qpj715.js → chunk-2ydhnafa.js} +2 -2
- package/bin/chunk-38hp9gfh.js +2 -0
- package/bin/chunk-3t7v2de9.js +307 -0
- package/bin/{chunk-20y3wte3.js → chunk-3vbx3x11.js} +2 -2
- package/bin/{chunk-d3s00sn0.js → chunk-3xfhbvar.js} +2 -2
- package/bin/chunk-4153rke8.js +12 -0
- package/bin/{chunk-7jjc175m.js → chunk-4a185tez.js} +3 -3
- package/bin/{chunk-zxpef55w.js → chunk-4rexdetz.js} +3 -3
- package/bin/{chunk-1dawjfk8.js → chunk-58y9bagr.js} +2 -2
- package/bin/chunk-5dqn7egd.js +11 -0
- package/bin/{chunk-9p2d0mk1.js → chunk-5e48saab.js} +1 -1
- package/bin/{chunk-vnfmh5ke.js → chunk-5qwzveck.js} +2 -2
- package/bin/chunk-61hfhfce.js +2 -0
- package/bin/chunk-6ab9eftx.js +3 -0
- package/bin/chunk-6b0f3d07.js +2 -0
- package/bin/chunk-6gjn8trh.js +3 -0
- package/bin/{chunk-gn8snrnk.js → chunk-75x3w5hx.js} +1 -1
- package/bin/chunk-7e39zmss.js +1 -0
- package/bin/chunk-7h1m1e0b.js +1 -0
- package/bin/chunk-7kdz1eng.js +3 -0
- package/bin/chunk-7pcba64w.js +1 -0
- package/bin/{chunk-s05f0v9t.js → chunk-7xfx7741.js} +1 -1
- package/bin/chunk-898hrxwq.js +2 -0
- package/bin/{chunk-ph3e1bpp.js → chunk-89chaa11.js} +2 -2
- package/bin/chunk-8btfb5g6.js +2 -0
- package/bin/{chunk-gvn079hy.js → chunk-8pa1n500.js} +2 -2
- package/bin/{chunk-vy24ncn2.js → chunk-8qe7cpbr.js} +1 -1
- package/bin/{chunk-ws07a9kv.js → chunk-8tnq43k9.js} +1 -1
- package/bin/{chunk-1d22tysv.js → chunk-8wzepzp3.js} +2 -2
- package/bin/chunk-9deae0n7.js +3 -0
- package/bin/{chunk-3rcc5s99.js → chunk-ankkm2wz.js} +2 -2
- package/bin/chunk-ardp3pze.js +2 -0
- package/bin/chunk-axe5rq99.js +7 -0
- package/bin/chunk-bagxeg82.js +2 -0
- package/bin/{chunk-ss45w8ks.js → chunk-bhqrqt97.js} +2 -2
- package/bin/chunk-bn1sts8x.js +3 -0
- package/bin/{chunk-31mjcykb.js → chunk-bpb0szs5.js} +2 -2
- package/bin/{chunk-tsncwscz.js → chunk-c1j58ekb.js} +2 -2
- package/bin/chunk-c4nenmry.js +2 -0
- package/bin/chunk-c9f6n4sf.js +3 -0
- package/bin/chunk-cwh21vfb.js +2 -0
- package/bin/chunk-cwpmf8tx.js +2 -0
- package/bin/{chunk-ejfmxjw6.js → chunk-d2xrh0vv.js} +2 -2
- package/bin/chunk-d4sg0z3y.js +2 -0
- package/bin/chunk-d4sjezbk.js +8 -0
- package/bin/{chunk-vgb8bzcg.js → chunk-ddfx823h.js} +2 -2
- package/bin/chunk-dtjx1097.js +2 -0
- package/bin/chunk-e32bzfza.js +1 -0
- package/bin/chunk-e6rmqgzv.js +2 -0
- package/bin/chunk-ersxsrz8.js +62 -0
- package/bin/chunk-gg1wfpm8.js +3 -0
- package/bin/{chunk-qc6dmzn0.js → chunk-gg8dmkwd.js} +2 -2
- package/bin/chunk-gnx9g8px.js +2 -0
- package/bin/{chunk-xawwxdq9.js → chunk-h0k9zw29.js} +2 -2
- package/bin/chunk-htrzgs2a.css +1 -0
- package/bin/chunk-j2jdrmaa.js +2 -0
- package/bin/{chunk-v2kfr8fx.js → chunk-j5dejr3e.js} +2 -2
- package/bin/{chunk-wap08p4j.js → chunk-j5q3t199.js} +2 -2
- package/bin/chunk-jgxhv36z.js +3 -0
- package/bin/{chunk-dwswqq3g.js → chunk-jnx8p6kj.js} +1 -1
- package/bin/chunk-k41vt2gq.js +1 -0
- package/bin/chunk-k78m3rar.js +2 -0
- package/bin/chunk-kfbztymc.js +4 -0
- package/bin/chunk-kgr3ytpb.js +5 -0
- package/bin/chunk-khc3dydj.js +2 -0
- package/bin/chunk-krpr6g8a.js +1 -0
- package/bin/chunk-m8tnsds1.js +2 -0
- package/bin/chunk-mfmcsdd7.js +1 -0
- package/bin/chunk-msjv1ykh.js +2 -0
- package/bin/chunk-n73dbqps.js +1 -0
- package/bin/{chunk-5vqan9c4.js → chunk-n7cmya8k.js} +2 -2
- package/bin/{chunk-hfp4hpca.js → chunk-nabagpah.js} +2 -2
- package/bin/chunk-nn5qpr0q.js +1 -0
- package/bin/{chunk-ve7v8wtv.js → chunk-pew69nxg.js} +2 -2
- package/bin/{chunk-7eycsyk6.js → chunk-q2shr586.js} +1 -1
- package/bin/chunk-q7v8sj72.js +1 -0
- package/bin/chunk-q9tm2d21.js +8 -0
- package/bin/{chunk-mcxsk75h.js → chunk-qw5yjhab.js} +3 -3
- package/bin/{chunk-j0p1peav.js → chunk-r9thyg31.js} +2 -2
- package/bin/{chunk-h2wsm7h3.js → chunk-s584wxzj.js} +2 -2
- package/bin/{chunk-wr5byz6r.js → chunk-s5s1rk4n.js} +1 -1
- package/bin/{chunk-zs9b0f3z.js → chunk-scfbmsy7.js} +2 -2
- package/bin/{chunk-k20bhxed.js → chunk-sddrv3ep.js} +1 -1
- package/bin/{chunk-amsb41z5.js → chunk-sfmhbk59.js} +1 -1
- package/bin/chunk-tbdgkpgw.js +2 -0
- package/bin/chunk-twhj7h73.js +1 -0
- package/bin/{chunk-mahxw48e.js → chunk-v5zdafv4.js} +2 -2
- package/bin/{chunk-3t7mjvdv.js → chunk-vzx1r87y.js} +2 -2
- package/bin/{chunk-a76c5r3c.js → chunk-w3xzd86e.js} +2 -2
- package/bin/{chunk-nzy3pjjm.js → chunk-xkh6b42h.js} +2 -2
- package/bin/chunk-yn7mxpmb.js +7 -0
- package/bin/{chunk-yahb7wan.js → chunk-z544s59c.js} +2 -2
- package/bin/{chunk-f8cn9m28.js → chunk-zned6mj8.js} +1 -1
- package/bin/{chunk-08mxv0sm.js → chunk-zpq34g0w.js} +2 -2
- package/bin/shumai-app.html +1 -1
- package/bin/shumai-app.js +495 -372
- package/package.json +7 -7
- package/prisma/migrations/20260801065040_add_audit_log/migration.sql +33 -0
- package/prisma/migrations/20260805021613_add_asset_autofill_context/migration.sql +2 -0
- package/prisma/migrations/20260806082136_add_sharelink_watermark/migration.sql +69 -0
- package/prisma/migrations/20260806085643_add_watermark_file_status/migration.sql +7 -0
- package/prisma/migrations/20260807140837_clean_media_remove_raw_transcodes_and_original_download_url/migration.sql +86 -0
- package/prisma/migrations/20260808014542_add_sharelink_allow_download/migration.sql +2 -0
- package/prisma/schema.prisma +93 -0
- package/bin/chunk-08dr94gp.js +0 -2
- package/bin/chunk-0t4z17qr.js +0 -2
- package/bin/chunk-2ynx0den.js +0 -8
- package/bin/chunk-31a3k77j.js +0 -2
- package/bin/chunk-3jdef7n4.js +0 -6
- package/bin/chunk-4ahve1nf.js +0 -2
- package/bin/chunk-4hdnrwh1.js +0 -1
- package/bin/chunk-4hdx2tv0.js +0 -2
- package/bin/chunk-4htdb0xp.js +0 -1
- package/bin/chunk-4p7xpfey.js +0 -2
- package/bin/chunk-5f81c951.js +0 -1
- package/bin/chunk-5zntjzxw.js +0 -3
- package/bin/chunk-6a2eb3b5.js +0 -3
- package/bin/chunk-6t3gdd7e.js +0 -2
- package/bin/chunk-7d5kep8c.js +0 -2
- package/bin/chunk-7kzqkp5z.js +0 -1
- package/bin/chunk-7sh6409h.js +0 -1
- package/bin/chunk-7y8dng8t.js +0 -2
- package/bin/chunk-8e5zvy88.js +0 -307
- package/bin/chunk-8m6zg15c.js +0 -4
- package/bin/chunk-8qyke29r.js +0 -7
- package/bin/chunk-90et6bwm.js +0 -3
- package/bin/chunk-9c7fxjej.js +0 -2
- package/bin/chunk-a10tf0d8.js +0 -3
- package/bin/chunk-b10meywb.js +0 -2
- package/bin/chunk-b1e3tec3.js +0 -62
- package/bin/chunk-bdjhb77e.js +0 -2
- package/bin/chunk-beay9amy.js +0 -1
- package/bin/chunk-c3fvs0bv.js +0 -4
- package/bin/chunk-c5my1b3k.js +0 -7
- package/bin/chunk-dhekxndw.js +0 -3
- package/bin/chunk-dwaj1yn4.js +0 -2
- package/bin/chunk-er1rb6yj.js +0 -1
- package/bin/chunk-etqpzc9e.js +0 -3
- package/bin/chunk-fdpjw17x.js +0 -7
- package/bin/chunk-gqh4ttjh.js +0 -3
- package/bin/chunk-hz31j0hk.js +0 -4
- package/bin/chunk-jm6bxtzt.js +0 -41
- package/bin/chunk-jstc7pka.js +0 -2
- package/bin/chunk-k0a35mg9.js +0 -2
- package/bin/chunk-k9w6mk9d.js +0 -3
- package/bin/chunk-kgb16ggd.css +0 -1
- package/bin/chunk-m4py21f3.js +0 -2
- package/bin/chunk-mm1j72a8.js +0 -7
- package/bin/chunk-nr89225z.js +0 -2
- package/bin/chunk-nrf5r23d.js +0 -1
- package/bin/chunk-nt9tfjx6.js +0 -12
- package/bin/chunk-p396vw9h.js +0 -8
- package/bin/chunk-p9xfyqh1.js +0 -2
- package/bin/chunk-pj0fgb2x.js +0 -6
- package/bin/chunk-pp072ksj.js +0 -2
- package/bin/chunk-q5cdjzbv.js +0 -3
- package/bin/chunk-qn96vbke.js +0 -2
- package/bin/chunk-qvgc9e08.js +0 -3
- package/bin/chunk-rrxjvewm.js +0 -2
- package/bin/chunk-s5rfya1p.js +0 -1
- package/bin/chunk-scsy69bp.js +0 -1
- package/bin/chunk-sf6fwvrs.js +0 -8
- package/bin/chunk-t2txvzkp.js +0 -3
- package/bin/chunk-td54rdfj.js +0 -8
- package/bin/chunk-vb9m47z9.js +0 -1
- package/bin/chunk-vf066xwh.js +0 -3
- package/bin/chunk-w3a50kz8.js +0 -3
- package/bin/chunk-w9w5301f.js +0 -4
- package/bin/chunk-wny0qagx.js +0 -3
- package/bin/chunk-wqhk76de.js +0 -14
- package/bin/chunk-wrz9e73c.js +0 -2
- package/bin/chunk-x5dcgk62.js +0 -6
- package/bin/chunk-xwmsxg5x.js +0 -1
- package/bin/chunk-y2nw8rbx.js +0 -4
- package/bin/chunk-y9ttm07y.js +0 -3
- package/bin/chunk-z0ej44ak.js +0 -3
- package/bin/chunk-zemgtnk0.js +0 -1
- package/bin/chunk-zg0vm233.js +0 -2
- package/bin/chunk-zhd2mkbr.js +0 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
function ct(t){return typeof t>"u"||t===void 0}function V(t){return typeof t==="string"}function F(t){return typeof t==="number"}function J(t){return typeof t==="boolean"}function Y(t){return t===null}function Z(t){return t instanceof Date}function $(t){return typeof t==="bigint"}function pt(t){return typeof Buffer<"u"&&Buffer.isBuffer(t)}function St(t){return typeof t==="function"}function X(t){return typeof t==="object"&&t!==null}function G(t){return t[t.length-1]}function N(t){return Object.freeze(t)}function Wt(t){if(r(t))return t;else return[t]}function r(t){return Array.isArray(t)}function Vt(t){return t}var Bt=["preserve rows","delete rows","drop"],L=N({is(t){return t.kind==="CreateTableNode"},create(t){return N({kind:"CreateTableNode",table:t,columns:N([])})},cloneWithColumn(t,i){return N({...t,columns:N([...t.columns,i])})},cloneWithConstraint(t,i){return N({...t,constraints:t.constraints?N([...t.constraints,i]):N([i])})},cloneWithFrontModifier(t,i){return N({...t,frontModifiers:t.frontModifiers?N([...t.frontModifiers,i]):N([i])})},cloneWithEndModifier(t,i){return N({...t,endModifiers:t.endModifiers?N([...t.endModifiers,i]):N([i])})},cloneWith(t,i){return N({...t,...i})}});var x=N({is(t){return t.kind==="InsertQueryNode"},create(t,i,h){return N({kind:"InsertQueryNode",into:t,...i&&{with:i},replace:h})},createWithoutInto(){return N({kind:"InsertQueryNode"})},cloneWith(t,i){return N({...t,...i})}});class U{nodeStack=[];get parentNode(){return this.nodeStack[this.nodeStack.length-2]}#t=N({AliasNode:this.visitAlias.bind(this),ColumnNode:this.visitColumn.bind(this),IdentifierNode:this.visitIdentifier.bind(this),SchemableIdentifierNode:this.visitSchemableIdentifier.bind(this),RawNode:this.visitRaw.bind(this),ReferenceNode:this.visitReference.bind(this),SelectQueryNode:this.visitSelectQuery.bind(this),SelectionNode:this.visitSelection.bind(this),TableNode:this.visitTable.bind(this),FromNode:this.visitFrom.bind(this),SelectAllNode:this.visitSelectAll.bind(this),AndNode:this.visitAnd.bind(this),OrNode:this.visitOr.bind(this),ValueNode:this.visitValue.bind(this),ValueListNode:this.visitValueList.bind(this),PrimitiveValueListNode:this.visitPrimitiveValueList.bind(this),ParensNode:this.visitParens.bind(this),JoinNode:this.visitJoin.bind(this),OperatorNode:this.visitOperator.bind(this),WhereNode:this.visitWhere.bind(this),InsertQueryNode:this.visitInsertQuery.bind(this),DeleteQueryNode:this.visitDeleteQuery.bind(this),ReturningNode:this.visitReturning.bind(this),CreateTableNode:this.visitCreateTable.bind(this),AddColumnNode:this.visitAddColumn.bind(this),ColumnDefinitionNode:this.visitColumnDefinition.bind(this),DropTableNode:this.visitDropTable.bind(this),DataTypeNode:this.visitDataType.bind(this),OrderByNode:this.visitOrderBy.bind(this),OrderByItemNode:this.visitOrderByItem.bind(this),GroupByNode:this.visitGroupBy.bind(this),GroupByItemNode:this.visitGroupByItem.bind(this),UpdateQueryNode:this.visitUpdateQuery.bind(this),ColumnUpdateNode:this.visitColumnUpdate.bind(this),LimitNode:this.visitLimit.bind(this),OffsetNode:this.visitOffset.bind(this),OnConflictNode:this.visitOnConflict.bind(this),OnDuplicateKeyNode:this.visitOnDuplicateKey.bind(this),CreateIndexNode:this.visitCreateIndex.bind(this),DropIndexNode:this.visitDropIndex.bind(this),ListNode:this.visitList.bind(this),PrimaryKeyConstraintNode:this.visitPrimaryKeyConstraint.bind(this),UniqueConstraintNode:this.visitUniqueConstraint.bind(this),ReferencesNode:this.visitReferences.bind(this),CheckConstraintNode:this.visitCheckConstraint.bind(this),WithNode:this.visitWith.bind(this),CommonTableExpressionNode:this.visitCommonTableExpression.bind(this),CommonTableExpressionNameNode:this.visitCommonTableExpressionName.bind(this),HavingNode:this.visitHaving.bind(this),CreateSchemaNode:this.visitCreateSchema.bind(this),DropSchemaNode:this.visitDropSchema.bind(this),AlterTableNode:this.visitAlterTable.bind(this),DropColumnNode:this.visitDropColumn.bind(this),RenameColumnNode:this.visitRenameColumn.bind(this),AlterColumnNode:this.visitAlterColumn.bind(this),ModifyColumnNode:this.visitModifyColumn.bind(this),AddConstraintNode:this.visitAddConstraint.bind(this),DropConstraintNode:this.visitDropConstraint.bind(this),RenameConstraintNode:this.visitRenameConstraint.bind(this),ForeignKeyConstraintNode:this.visitForeignKeyConstraint.bind(this),CreateViewNode:this.visitCreateView.bind(this),RefreshMaterializedViewNode:this.visitRefreshMaterializedView.bind(this),DropViewNode:this.visitDropView.bind(this),GeneratedNode:this.visitGenerated.bind(this),DefaultValueNode:this.visitDefaultValue.bind(this),OnNode:this.visitOn.bind(this),ValuesNode:this.visitValues.bind(this),SelectModifierNode:this.visitSelectModifier.bind(this),CreateTypeNode:this.visitCreateType.bind(this),DropTypeNode:this.visitDropType.bind(this),ExplainNode:this.visitExplain.bind(this),DefaultInsertValueNode:this.visitDefaultInsertValue.bind(this),AggregateFunctionNode:this.visitAggregateFunction.bind(this),OverNode:this.visitOver.bind(this),PartitionByNode:this.visitPartitionBy.bind(this),PartitionByItemNode:this.visitPartitionByItem.bind(this),SetOperationNode:this.visitSetOperation.bind(this),BinaryOperationNode:this.visitBinaryOperation.bind(this),UnaryOperationNode:this.visitUnaryOperation.bind(this),UsingNode:this.visitUsing.bind(this),FunctionNode:this.visitFunction.bind(this),CaseNode:this.visitCase.bind(this),WhenNode:this.visitWhen.bind(this),JSONReferenceNode:this.visitJSONReference.bind(this),JSONPathNode:this.visitJSONPath.bind(this),JSONPathLegNode:this.visitJSONPathLeg.bind(this),JSONOperatorChainNode:this.visitJSONOperatorChain.bind(this),TupleNode:this.visitTuple.bind(this),MergeQueryNode:this.visitMergeQuery.bind(this),MatchedNode:this.visitMatched.bind(this),AddIndexNode:this.visitAddIndex.bind(this),CastNode:this.visitCast.bind(this),FetchNode:this.visitFetch.bind(this),TopNode:this.visitTop.bind(this),OutputNode:this.visitOutput.bind(this),OrActionNode:this.visitOrAction.bind(this),CollateNode:this.visitCollate.bind(this)});visitNode=(t)=>{this.nodeStack.push(t),this.#t[t.kind](t),this.nodeStack.pop()}}var q=["=","==","!=","<>",">",">=","<","<=","in","not in","is","is not","like","not like","match","ilike","not ilike","@>","<@","^@","&&","?","?&","?|","!<","!>","<=>","!~","~","~*","!~*","@@","@@@","!!","<->","regexp","is distinct from","is not distinct from"],n=["+","-","*","/","%","^","&","|","#","<<",">>"],_=["->","->>"],o=[...q,...n,"&&","||"],d=["exists","not exists"],e=["not","-",...d],Ht=[...o,..._,...e,"between","between symmetric"],m=N({is(t){return t.kind==="OperatorNode"},create(t){return N({kind:"OperatorNode",operator:t})}});function Kt(t){return V(t)&&_.includes(t)}var R=N({is(t){return t.kind==="ParensNode"},create(t){return N({kind:"ParensNode",node:t})}});var c=N({is(t){return t.kind==="RawNode"},create(t,i){return N({kind:"RawNode",sqlFragments:N(t),parameters:N(i)})},createWithSql(t){return c.create([t],[])},createWithChild(t){return c.create(["",""],[t])},createWithChildren(t){return c.create(Array(t.length+1).fill(""),t)}});var S=N({is(t){return t.kind==="IdentifierNode"},create(t){return N({kind:"IdentifierNode",name:t})}});var p=N({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return N({kind:"SchemableIdentifierNode",identifier:S.create(t)})},createWithSchema(t,i){return N({kind:"SchemableIdentifierNode",schema:S.create(t),identifier:S.create(i)})}});var E=N({is(t){return t.kind==="CreateViewNode"},create(t){return N({kind:"CreateViewNode",name:p.create(t)})},cloneWith(t,i){return N({...t,...i})}});var M=N({is(t){return t.kind==="SetOperationNode"},create(t,i,h){return N({kind:"SetOperationNode",operator:t,expression:i,all:h})}});var Q=N({is(t){return t.kind==="WhenNode"},create(t){return N({kind:"WhenNode",condition:t})},cloneWithResult(t,i){return N({...t,result:i})}});var A=new Set;function b(t){if(A.has(t))return;A.add(t),console.log(t)}var tt=/'/g,it=/['"]/g;class ht extends U{#t="";#i=[];get numParameters(){return this.#i.length}compileQuery(t,i){return this.#t="",this.#i=[],this.nodeStack.splice(0,this.nodeStack.length),this.visitNode(t),N({query:t,queryId:i,sql:this.getSql(),parameters:[...this.#i]})}getSql(){return this.#t}visitSelectQuery(t){let i=this.parentNode!==void 0&&!R.is(this.parentNode)&&!x.is(this.parentNode)&&!L.is(this.parentNode)&&!E.is(this.parentNode)&&!M.is(this.parentNode);if(this.parentNode===void 0&&t.explain)this.visitNode(t.explain),this.append(" ");if(i)this.append("(");if(t.with)this.visitNode(t.with),this.append(" ");if(this.append("select"),t.distinctOn)this.append(" "),this.compileDistinctOn(t.distinctOn);if(t.frontModifiers?.length)this.append(" "),this.compileList(t.frontModifiers," ");if(t.top)this.append(" "),this.visitNode(t.top);if(t.selections)this.append(" "),this.compileList(t.selections);if(t.from)this.append(" "),this.visitNode(t.from);if(t.joins)this.append(" "),this.compileList(t.joins," ");if(t.where)this.append(" "),this.visitNode(t.where);if(t.groupBy)this.append(" "),this.visitNode(t.groupBy);if(t.having)this.append(" "),this.visitNode(t.having);if(t.setOperations)this.append(" "),this.compileList(t.setOperations," ");if(t.orderBy)this.append(" "),this.visitNode(t.orderBy);if(t.limit)this.append(" "),this.visitNode(t.limit);if(t.offset)this.append(" "),this.visitNode(t.offset);if(t.fetch)this.append(" "),this.visitNode(t.fetch);if(t.endModifiers?.length)this.append(" "),this.compileList(this.sortSelectModifiers([...t.endModifiers])," ");if(i)this.append(")")}visitFrom(t){this.append("from "),this.compileList(t.froms)}visitSelection(t){this.visitNode(t.selection)}visitColumn(t){this.visitNode(t.column)}compileDistinctOn(t){this.append("distinct on ("),this.compileList(t),this.append(")")}compileList(t,i=", "){let h=t.length-1;for(let f=0;f<=h;f++)if(this.visitNode(t[f]),f<h)this.append(i)}visitWhere(t){this.append("where "),this.visitNode(t.where)}visitHaving(t){this.append("having "),this.visitNode(t.having)}visitInsertQuery(t){let i=this.parentNode!==void 0&&!R.is(this.parentNode)&&!c.is(this.parentNode)&&!Q.is(this.parentNode);if(this.parentNode===void 0&&t.explain)this.visitNode(t.explain),this.append(" ");if(i)this.append("(");if(t.with)this.visitNode(t.with),this.append(" ");if(this.append(t.replace?"replace":"insert"),t.ignore)b("`InsertQueryNode.ignore` is deprecated. Use `InsertQueryNode.orAction` instead."),this.append(" ignore");if(t.orAction)this.append(" "),this.visitNode(t.orAction);if(t.top)this.append(" "),this.visitNode(t.top);if(t.into)this.append(" into "),this.visitNode(t.into);if(t.columns)this.append(" ("),this.compileList(t.columns),this.append(")");if(t.output)this.append(" "),this.visitNode(t.output);if(t.values)this.append(" "),this.visitNode(t.values);if(t.defaultValues)this.append(" "),this.append("default values");if(t.onConflict)this.append(" "),this.visitNode(t.onConflict);if(t.onDuplicateKey)this.append(" "),this.visitNode(t.onDuplicateKey);if(t.returning)this.append(" "),this.visitNode(t.returning);if(i)this.append(")");if(t.endModifiers?.length)this.append(" "),this.compileList(t.endModifiers," ")}visitValues(t){this.append("values "),this.compileList(t.values)}visitDeleteQuery(t){let i=this.parentNode!==void 0&&!R.is(this.parentNode)&&!c.is(this.parentNode);if(this.parentNode===void 0&&t.explain)this.visitNode(t.explain),this.append(" ");if(i)this.append("(");if(t.with)this.visitNode(t.with),this.append(" ");if(this.append("delete "),t.top)this.visitNode(t.top),this.append(" ");if(this.visitNode(t.from),t.output)this.append(" "),this.visitNode(t.output);if(t.using)this.append(" "),this.visitNode(t.using);if(t.joins)this.append(" "),this.compileList(t.joins," ");if(t.where)this.append(" "),this.visitNode(t.where);if(t.orderBy)this.append(" "),this.visitNode(t.orderBy);if(t.limit)this.append(" "),this.visitNode(t.limit);if(t.returning)this.append(" "),this.visitNode(t.returning);if(i)this.append(")");if(t.endModifiers?.length)this.append(" "),this.compileList(t.endModifiers," ")}visitReturning(t){this.append("returning "),this.compileList(t.selections)}visitAlias(t){this.visitNode(t.node),this.append(" as "),this.visitNode(t.alias)}visitReference(t){if(t.table)this.visitNode(t.table),this.append(".");this.visitNode(t.column)}visitSelectAll(t){this.append("*")}visitIdentifier(t){this.append(this.getLeftIdentifierWrapper()),this.compileUnwrappedIdentifier(t),this.append(this.getRightIdentifierWrapper())}compileUnwrappedIdentifier(t){if(!V(t.name))throw Error("a non-string identifier was passed to compileUnwrappedIdentifier.");this.append(this.sanitizeIdentifier(t.name))}visitAnd(t){this.visitNode(t.left),this.append(" and "),this.visitNode(t.right)}visitOr(t){this.visitNode(t.left),this.append(" or "),this.visitNode(t.right)}visitValue(t){if(t.immediate)this.appendImmediateValue(t.value);else this.appendValue(t.value)}visitValueList(t){this.append("("),this.compileList(t.values),this.append(")")}visitTuple(t){this.append("("),this.compileList(t.values),this.append(")")}visitPrimitiveValueList(t){this.append("(");let{values:i}=t;for(let h=0;h<i.length;++h)if(this.appendValue(i[h]),h!==i.length-1)this.append(", ");this.append(")")}visitParens(t){this.append("("),this.visitNode(t.node),this.append(")")}visitJoin(t){if(this.append(st[t.joinType]),this.append(" "),this.visitNode(t.table),t.on)this.append(" "),this.visitNode(t.on)}visitOn(t){this.append("on "),this.visitNode(t.on)}visitRaw(t){let{sqlFragments:i,parameters:h}=t;for(let f=0;f<i.length;++f)if(this.append(i[f]),h.length>f)this.visitNode(h[f])}visitOperator(t){this.append(t.operator)}visitTable(t){this.visitNode(t.table)}visitSchemableIdentifier(t){if(t.schema)this.visitNode(t.schema),this.append(".");this.visitNode(t.identifier)}visitCreateTable(t){if(this.append("create "),t.frontModifiers?.length)this.compileList(t.frontModifiers," "),this.append(" ");if(t.temporary)this.append("temporary ");if(this.append("table "),t.ifNotExists)this.append("if not exists ");if(this.visitNode(t.table),!t.selectQuery)this.append(" ("),this.compileList([...t.columns,...t.constraints??[]]),this.append(")");if(t.onCommit)this.append(" on commit "),this.append(t.onCommit);if(t.endModifiers?.length)this.append(" "),this.compileList(t.endModifiers," ");if(t.selectQuery)this.append(" as "),this.visitNode(t.selectQuery)}visitColumnDefinition(t){if(t.ifNotExists)this.append("if not exists ");if(this.visitNode(t.column),this.append(" "),this.visitNode(t.dataType),t.unsigned)this.append(" unsigned");if(t.frontModifiers&&t.frontModifiers.length>0)this.append(" "),this.compileList(t.frontModifiers," ");if(t.generated)this.append(" "),this.visitNode(t.generated);if(t.identity)this.append(" identity");if(t.defaultTo)this.append(" "),this.visitNode(t.defaultTo);if(t.notNull)this.append(" not null");if(t.unique)this.append(" unique");if(t.nullsNotDistinct)this.append(" nulls not distinct");if(t.primaryKey)this.append(" primary key");if(t.autoIncrement)this.append(" "),this.append(this.getAutoIncrement());if(t.references)this.append(" "),this.visitNode(t.references);if(t.check)this.append(" "),this.visitNode(t.check);if(t.endModifiers&&t.endModifiers.length>0)this.append(" "),this.compileList(t.endModifiers," ")}getAutoIncrement(){return"auto_increment"}visitReferences(t){if(this.append("references "),this.visitNode(t.table),this.append(" ("),this.compileList(t.columns),this.append(")"),t.onDelete)this.append(" on delete "),this.append(t.onDelete);if(t.onUpdate)this.append(" on update "),this.append(t.onUpdate)}visitDropTable(t){if(this.append("drop table "),t.ifExists)this.append("if exists ");if(this.visitNode(t.table),t.cascade)this.append(" cascade")}visitDataType(t){this.append(t.dataType)}visitOrderBy(t){this.append("order by "),this.compileList(t.items)}visitOrderByItem(t){if(this.visitNode(t.orderBy),t.collation)this.append(" "),this.visitNode(t.collation);if(t.direction)this.append(" "),this.visitNode(t.direction);if(t.nulls)this.append(" nulls "),this.append(t.nulls)}visitGroupBy(t){this.append("group by "),this.compileList(t.items)}visitGroupByItem(t){this.visitNode(t.groupBy)}visitUpdateQuery(t){let i=this.parentNode!==void 0&&!R.is(this.parentNode)&&!c.is(this.parentNode)&&!Q.is(this.parentNode);if(this.parentNode===void 0&&t.explain)this.visitNode(t.explain),this.append(" ");if(i)this.append("(");if(t.with)this.visitNode(t.with),this.append(" ");if(this.append("update "),t.top)this.visitNode(t.top),this.append(" ");if(t.table)this.visitNode(t.table),this.append(" ");if(this.append("set "),t.updates)this.compileList(t.updates);if(t.output)this.append(" "),this.visitNode(t.output);if(t.from)this.append(" "),this.visitNode(t.from);if(t.joins){if(!t.from)throw Error("Joins in an update query are only supported as a part of a PostgreSQL 'update set from join' query. If you want to create a MySQL 'update join set' query, see https://kysely.dev/docs/examples/update/my-sql-joins");this.append(" "),this.compileList(t.joins," ")}if(t.where)this.append(" "),this.visitNode(t.where);if(t.returning)this.append(" "),this.visitNode(t.returning);if(t.orderBy)this.append(" "),this.visitNode(t.orderBy);if(t.limit)this.append(" "),this.visitNode(t.limit);if(i)this.append(")");if(t.endModifiers?.length)this.append(" "),this.compileList(t.endModifiers," ")}visitColumnUpdate(t){this.visitNode(t.column),this.append(" = "),this.visitNode(t.value)}visitLimit(t){this.append("limit "),this.visitNode(t.limit)}visitOffset(t){this.append("offset "),this.visitNode(t.offset)}visitOnConflict(t){if(this.append("on conflict"),t.columns)this.append(" ("),this.compileList(t.columns),this.append(")");else if(t.constraint)this.append(" on constraint "),this.visitNode(t.constraint);else if(t.indexExpression)this.append(" ("),this.visitNode(t.indexExpression),this.append(")");if(t.indexWhere)this.append(" "),this.visitNode(t.indexWhere);if(t.doNothing===!0)this.append(" do nothing");else if(t.updates){if(this.append(" do update set "),this.compileList(t.updates),t.updateWhere)this.append(" "),this.visitNode(t.updateWhere)}}visitOnDuplicateKey(t){this.append("on duplicate key update "),this.compileList(t.updates)}visitCreateIndex(t){if(this.append("create "),t.unique)this.append("unique ");if(this.append("index "),t.ifNotExists)this.append("if not exists ");if(this.visitNode(t.name),t.table)this.append(" on "),this.visitNode(t.table);if(t.using)this.append(" using "),this.visitNode(t.using);if(t.columns)this.append(" ("),this.compileList(t.columns),this.append(")");if(t.nullsNotDistinct)this.append(" nulls not distinct");if(t.where)this.append(" "),this.visitNode(t.where)}visitDropIndex(t){if(this.append("drop index "),t.ifExists)this.append("if exists ");if(this.visitNode(t.name),t.table)this.append(" on "),this.visitNode(t.table);if(t.cascade)this.append(" cascade")}visitCreateSchema(t){if(this.append("create schema "),t.ifNotExists)this.append("if not exists ");this.visitNode(t.schema)}visitDropSchema(t){if(this.append("drop schema "),t.ifExists)this.append("if exists ");if(this.visitNode(t.schema),t.cascade)this.append(" cascade")}visitPrimaryKeyConstraint(t){if(t.name)this.append("constraint "),this.visitNode(t.name),this.append(" ");this.append("primary key ("),this.compileList(t.columns),this.append(")"),this.buildDeferrable(t)}buildDeferrable(t){if(t.deferrable!==void 0)if(t.deferrable)this.append(" deferrable");else this.append(" not deferrable");if(t.initiallyDeferred!==void 0)if(t.initiallyDeferred)this.append(" initially deferred");else this.append(" initially immediate")}visitUniqueConstraint(t){if(t.name)this.append("constraint "),this.visitNode(t.name),this.append(" ");if(this.append("unique"),t.nullsNotDistinct)this.append(" nulls not distinct");this.append(" ("),this.compileList(t.columns),this.append(")"),this.buildDeferrable(t)}visitCheckConstraint(t){if(t.name)this.append("constraint "),this.visitNode(t.name),this.append(" ");this.append("check ("),this.visitNode(t.expression),this.append(")")}visitForeignKeyConstraint(t){if(t.name)this.append("constraint "),this.visitNode(t.name),this.append(" ");if(this.append("foreign key ("),this.compileList(t.columns),this.append(") "),this.visitNode(t.references),t.onDelete)this.append(" on delete "),this.append(t.onDelete);if(t.onUpdate)this.append(" on update "),this.append(t.onUpdate);this.buildDeferrable(t)}visitList(t){this.compileList(t.items)}visitWith(t){if(this.append("with "),t.recursive)this.append("recursive ");this.compileList(t.expressions)}visitCommonTableExpression(t){if(this.visitNode(t.name),this.append(" as "),J(t.materialized)){if(!t.materialized)this.append("not ");this.append("materialized ")}this.visitNode(t.expression)}visitCommonTableExpressionName(t){if(this.visitNode(t.table),t.columns)this.append("("),this.compileList(t.columns),this.append(")")}visitAlterTable(t){if(this.append("alter table "),this.visitNode(t.table),this.append(" "),t.renameTo)this.append("rename to "),this.visitNode(t.renameTo);if(t.setSchema)this.append("set schema "),this.visitNode(t.setSchema);if(t.addConstraint)this.visitNode(t.addConstraint);if(t.dropConstraint)this.visitNode(t.dropConstraint);if(t.renameConstraint)this.visitNode(t.renameConstraint);if(t.columnAlterations)this.compileColumnAlterations(t.columnAlterations);if(t.addIndex)this.visitNode(t.addIndex);if(t.dropIndex)this.visitNode(t.dropIndex)}visitAddColumn(t){this.append("add column "),this.visitNode(t.column)}visitRenameColumn(t){this.append("rename column "),this.visitNode(t.column),this.append(" to "),this.visitNode(t.renameTo)}visitDropColumn(t){this.append("drop column "),this.visitNode(t.column)}visitAlterColumn(t){if(this.append("alter column "),this.visitNode(t.column),this.append(" "),t.dataType){if(this.announcesNewColumnDataType())this.append("type ");if(this.visitNode(t.dataType),t.dataTypeExpression)this.append("using "),this.visitNode(t.dataTypeExpression)}if(t.setDefault)this.append("set default "),this.visitNode(t.setDefault);if(t.dropDefault)this.append("drop default");if(t.setNotNull)this.append("set not null");if(t.dropNotNull)this.append("drop not null")}visitModifyColumn(t){this.append("modify column "),this.visitNode(t.column)}visitAddConstraint(t){this.append("add "),this.visitNode(t.constraint)}visitDropConstraint(t){if(this.append("drop constraint "),t.ifExists)this.append("if exists ");if(this.visitNode(t.constraintName),t.modifier==="cascade")this.append(" cascade");else if(t.modifier==="restrict")this.append(" restrict")}visitRenameConstraint(t){this.append("rename constraint "),this.visitNode(t.oldName),this.append(" to "),this.visitNode(t.newName)}visitSetOperation(t){if(this.append(t.operator),this.append(" "),t.all)this.append("all ");this.visitNode(t.expression)}visitCreateView(t){if(this.append("create "),t.orReplace)this.append("or replace ");if(t.materialized)this.append("materialized ");if(t.temporary)this.append("temporary ");if(this.append("view "),t.ifNotExists)this.append("if not exists ");if(this.visitNode(t.name),this.append(" "),t.columns)this.append("("),this.compileList(t.columns),this.append(") ");if(t.as)this.append("as "),this.visitNode(t.as)}visitRefreshMaterializedView(t){if(this.append("refresh materialized view "),t.concurrently)this.append("concurrently ");if(this.visitNode(t.name),t.withNoData)this.append(" with no data");else this.append(" with data")}visitDropView(t){if(this.append("drop "),t.materialized)this.append("materialized ");if(this.append("view "),t.ifExists)this.append("if exists ");if(this.visitNode(t.name),t.cascade)this.append(" cascade")}visitGenerated(t){if(this.append("generated "),t.always)this.append("always ");if(t.byDefault)this.append("by default ");if(this.append("as "),t.identity)this.append("identity");if(t.expression)this.append("("),this.visitNode(t.expression),this.append(")");if(t.stored)this.append(" stored")}visitDefaultValue(t){this.append("default "),this.visitNode(t.defaultValue)}visitSelectModifier(t){if(t.rawModifier)this.visitNode(t.rawModifier);else this.append(Nt[t.modifier]);if(t.of)this.append(" of "),this.compileList(t.of,", ")}visitCreateType(t){if(this.append("create type "),this.visitNode(t.name),t.enum)this.append(" as enum "),this.visitNode(t.enum)}visitDropType(t){if(this.append("drop type "),t.ifExists)this.append("if exists ");this.visitNode(t.name)}visitExplain(t){if(this.append("explain"),t.options||t.format){if(this.append(" "),this.append(this.getLeftExplainOptionsWrapper()),t.options){if(this.visitNode(t.options),t.format)this.append(this.getExplainOptionsDelimiter())}if(t.format)this.append("format"),this.append(this.getExplainOptionAssignment()),this.append(t.format);this.append(this.getRightExplainOptionsWrapper())}}visitDefaultInsertValue(t){this.append("default")}visitAggregateFunction(t){if(this.append(t.func),this.append("("),t.distinct)this.append("distinct ");if(this.compileList(t.aggregated),t.orderBy)this.append(" "),this.visitNode(t.orderBy);if(this.append(")"),t.withinGroup)this.append(" within group ("),this.visitNode(t.withinGroup),this.append(")");if(t.filter)this.append(" filter("),this.visitNode(t.filter),this.append(")");if(t.over)this.append(" "),this.visitNode(t.over)}visitOver(t){if(this.append("over("),t.partitionBy){if(this.visitNode(t.partitionBy),t.orderBy)this.append(" ")}if(t.orderBy)this.visitNode(t.orderBy);this.append(")")}visitPartitionBy(t){this.append("partition by "),this.compileList(t.items)}visitPartitionByItem(t){this.visitNode(t.partitionBy)}visitBinaryOperation(t){this.visitNode(t.leftOperand),this.append(" "),this.visitNode(t.operator),this.append(" "),this.visitNode(t.rightOperand)}visitUnaryOperation(t){if(this.visitNode(t.operator),!this.isMinusOperator(t.operator))this.append(" ");this.visitNode(t.operand)}isMinusOperator(t){return m.is(t)&&t.operator==="-"}visitUsing(t){this.append("using "),this.compileList(t.tables)}visitFunction(t){this.append(t.func),this.append("("),this.compileList(t.arguments),this.append(")")}visitCase(t){if(this.append("case"),t.value)this.append(" "),this.visitNode(t.value);if(t.when)this.append(" "),this.compileList(t.when," ");if(t.else)this.append(" else "),this.visitNode(t.else);if(this.append(" end"),t.isStatement)this.append(" case")}visitWhen(t){if(this.append("when "),this.visitNode(t.condition),t.result)this.append(" then "),this.visitNode(t.result)}visitJSONReference(t){this.visitNode(t.reference),this.visitNode(t.traversal)}visitJSONPath(t){if(t.inOperator)this.visitNode(t.inOperator);this.append("'$");for(let i of t.pathLegs)this.visitNode(i);this.append("'")}visitJSONPathLeg(t){let i=t.type==="ArrayLocation",h=String(t.value);if(i)this.append("["),this.append(this.sanitizeStringLiteral(h)),this.append("]");else this.append('."'),this.append(this.sanitizeJSONPathMemberValue(h)),this.append('"')}visitJSONOperatorChain(t){for(let i=0,h=t.values.length;i<h;i++){if(i===h-1)this.visitNode(t.operator);else this.append("->");this.visitNode(t.values[i])}}visitMergeQuery(t){if(t.with)this.visitNode(t.with),this.append(" ");if(this.append("merge "),t.top)this.visitNode(t.top),this.append(" ");if(this.append("into "),this.visitNode(t.into),t.using)this.append(" "),this.visitNode(t.using);if(t.whens)this.append(" "),this.compileList(t.whens," ");if(t.returning)this.append(" "),this.visitNode(t.returning);if(t.output)this.append(" "),this.visitNode(t.output);if(t.endModifiers?.length)this.append(" "),this.compileList(t.endModifiers," ")}visitMatched(t){if(t.not)this.append("not ");if(this.append("matched"),t.bySource)this.append(" by source")}visitAddIndex(t){if(this.append("add "),t.unique)this.append("unique ");if(this.append("index "),this.visitNode(t.name),t.columns)this.append(" ("),this.compileList(t.columns),this.append(")");if(t.using)this.append(" using "),this.visitNode(t.using)}visitCast(t){this.append("cast("),this.visitNode(t.expression),this.append(" as "),this.visitNode(t.dataType),this.append(")")}visitFetch(t){this.append("fetch next "),this.visitNode(t.rowCount),this.append(` rows ${t.modifier}`)}visitOutput(t){this.append("output "),this.compileList(t.selections)}visitTop(t){if(this.append(`top(${t.expression})`),t.modifiers)this.append(` ${t.modifiers}`)}visitOrAction(t){this.append(t.action)}visitCollate(t){this.append("collate "),this.visitNode(t.collation)}append(t){this.#t+=t}appendValue(t){this.addParameter(t),this.append(this.getCurrentParameterPlaceholder())}getLeftIdentifierWrapper(){return'"'}getRightIdentifierWrapper(){return'"'}getCurrentParameterPlaceholder(){return"$"+this.numParameters}getLeftExplainOptionsWrapper(){return"("}getExplainOptionAssignment(){return" "}getExplainOptionsDelimiter(){return", "}getRightExplainOptionsWrapper(){return")"}sanitizeIdentifier(t){let i=this.getLeftIdentifierWrapper(),h=this.getRightIdentifierWrapper(),f="";for(let C of t)if(f+=C,C===i)f+=i;else if(C===h)f+=h;return f}sanitizeStringLiteral(t){return t.replace(tt,"''")}sanitizeJSONPathMemberValue(t){return t.replace(it,(i)=>i==="'"?"''":"\\\"")}addParameter(t){this.#i.push(t)}appendImmediateValue(t){if(V(t))this.appendStringLiteral(t);else if(F(t)||J(t)||$(t))this.append(t.toString());else if(Y(t))this.append("null");else if(Z(t))this.appendImmediateValue(t.toISOString());else throw Error(`invalid immediate value ${t}`)}appendStringLiteral(t){this.append("'"),this.append(this.sanitizeStringLiteral(t)),this.append("'")}sortSelectModifiers(t){return t.sort((i,h)=>i.modifier&&h.modifier?P[i.modifier]-P[h.modifier]:1),N(t)}compileColumnAlterations(t){this.compileList(t)}announcesNewColumnDataType(){return!0}}var Nt=N({ForKeyShare:"for key share",ForNoKeyUpdate:"for no key update",ForUpdate:"for update",ForShare:"for share",NoWait:"nowait",SkipLocked:"skip locked",Distinct:"distinct"}),P=N({ForKeyShare:1,ForNoKeyUpdate:1,ForUpdate:1,ForShare:1,NoWait:2,SkipLocked:2,Distinct:0}),st=N({InnerJoin:"inner join",LeftJoin:"left join",RightJoin:"right join",FullJoin:"full join",CrossJoin:"cross join",LateralInnerJoin:"inner join lateral",LateralLeftJoin:"left join lateral",LateralCrossJoin:"cross join lateral",OuterApply:"outer apply",CrossApply:"cross apply",Using:"using"});class D{transformQuery(t){return t.node}async transformResult(t){return t.result}}var j=N({is(t){return t.kind==="AliasNode"},create(t,i){return N({kind:"AliasNode",node:t,alias:i})}});var g=N({is(t){return t.kind==="AndNode"},create(t,i){return N({kind:"AndNode",left:t,right:i})}});var l=N({is(t){return t.kind==="OrNode"},create(t,i){return N({kind:"OrNode",left:t,right:i})}});var w=N({is(t){return t.kind==="OnNode"},create(t){return N({kind:"OnNode",on:t})},cloneWithOperation(t,i,h){return N({...t,on:i==="And"?g.create(t.on,h):l.create(t.on,h)})}});var a=N({is(t){return t.kind==="JoinNode"},create(t,i){return N({kind:"JoinNode",joinType:t,table:i,on:void 0})},createWithOn(t,i,h){return N({kind:"JoinNode",joinType:t,table:i,on:w.create(h)})},cloneWithOn(t,i){return N({...t,on:t.on?w.cloneWithOperation(t.on,"And",i):w.create(i)})}});var y=N({is(t){return t.kind==="ListNode"},create(t){return N({kind:"ListNode",items:N(t)})}});function s(t){return t}class T{nodeStack=[];#t=N({AliasNode:this.transformAlias.bind(this),ColumnNode:this.transformColumn.bind(this),IdentifierNode:this.transformIdentifier.bind(this),SchemableIdentifierNode:this.transformSchemableIdentifier.bind(this),RawNode:this.transformRaw.bind(this),ReferenceNode:this.transformReference.bind(this),SelectQueryNode:this.transformSelectQuery.bind(this),SelectionNode:this.transformSelection.bind(this),TableNode:this.transformTable.bind(this),FromNode:this.transformFrom.bind(this),SelectAllNode:this.transformSelectAll.bind(this),AndNode:this.transformAnd.bind(this),OrNode:this.transformOr.bind(this),ValueNode:this.transformValue.bind(this),ValueListNode:this.transformValueList.bind(this),PrimitiveValueListNode:this.transformPrimitiveValueList.bind(this),ParensNode:this.transformParens.bind(this),JoinNode:this.transformJoin.bind(this),OperatorNode:this.transformOperator.bind(this),WhereNode:this.transformWhere.bind(this),InsertQueryNode:this.transformInsertQuery.bind(this),DeleteQueryNode:this.transformDeleteQuery.bind(this),ReturningNode:this.transformReturning.bind(this),CreateTableNode:this.transformCreateTable.bind(this),AddColumnNode:this.transformAddColumn.bind(this),ColumnDefinitionNode:this.transformColumnDefinition.bind(this),DropTableNode:this.transformDropTable.bind(this),DataTypeNode:this.transformDataType.bind(this),OrderByNode:this.transformOrderBy.bind(this),OrderByItemNode:this.transformOrderByItem.bind(this),GroupByNode:this.transformGroupBy.bind(this),GroupByItemNode:this.transformGroupByItem.bind(this),UpdateQueryNode:this.transformUpdateQuery.bind(this),ColumnUpdateNode:this.transformColumnUpdate.bind(this),LimitNode:this.transformLimit.bind(this),OffsetNode:this.transformOffset.bind(this),OnConflictNode:this.transformOnConflict.bind(this),OnDuplicateKeyNode:this.transformOnDuplicateKey.bind(this),CreateIndexNode:this.transformCreateIndex.bind(this),DropIndexNode:this.transformDropIndex.bind(this),ListNode:this.transformList.bind(this),PrimaryKeyConstraintNode:this.transformPrimaryKeyConstraint.bind(this),UniqueConstraintNode:this.transformUniqueConstraint.bind(this),ReferencesNode:this.transformReferences.bind(this),CheckConstraintNode:this.transformCheckConstraint.bind(this),WithNode:this.transformWith.bind(this),CommonTableExpressionNode:this.transformCommonTableExpression.bind(this),CommonTableExpressionNameNode:this.transformCommonTableExpressionName.bind(this),HavingNode:this.transformHaving.bind(this),CreateSchemaNode:this.transformCreateSchema.bind(this),DropSchemaNode:this.transformDropSchema.bind(this),AlterTableNode:this.transformAlterTable.bind(this),DropColumnNode:this.transformDropColumn.bind(this),RenameColumnNode:this.transformRenameColumn.bind(this),AlterColumnNode:this.transformAlterColumn.bind(this),ModifyColumnNode:this.transformModifyColumn.bind(this),AddConstraintNode:this.transformAddConstraint.bind(this),DropConstraintNode:this.transformDropConstraint.bind(this),RenameConstraintNode:this.transformRenameConstraint.bind(this),ForeignKeyConstraintNode:this.transformForeignKeyConstraint.bind(this),CreateViewNode:this.transformCreateView.bind(this),RefreshMaterializedViewNode:this.transformRefreshMaterializedView.bind(this),DropViewNode:this.transformDropView.bind(this),GeneratedNode:this.transformGenerated.bind(this),DefaultValueNode:this.transformDefaultValue.bind(this),OnNode:this.transformOn.bind(this),ValuesNode:this.transformValues.bind(this),SelectModifierNode:this.transformSelectModifier.bind(this),CreateTypeNode:this.transformCreateType.bind(this),DropTypeNode:this.transformDropType.bind(this),ExplainNode:this.transformExplain.bind(this),DefaultInsertValueNode:this.transformDefaultInsertValue.bind(this),AggregateFunctionNode:this.transformAggregateFunction.bind(this),OverNode:this.transformOver.bind(this),PartitionByNode:this.transformPartitionBy.bind(this),PartitionByItemNode:this.transformPartitionByItem.bind(this),SetOperationNode:this.transformSetOperation.bind(this),BinaryOperationNode:this.transformBinaryOperation.bind(this),UnaryOperationNode:this.transformUnaryOperation.bind(this),UsingNode:this.transformUsing.bind(this),FunctionNode:this.transformFunction.bind(this),CaseNode:this.transformCase.bind(this),WhenNode:this.transformWhen.bind(this),JSONReferenceNode:this.transformJSONReference.bind(this),JSONPathNode:this.transformJSONPath.bind(this),JSONPathLegNode:this.transformJSONPathLeg.bind(this),JSONOperatorChainNode:this.transformJSONOperatorChain.bind(this),TupleNode:this.transformTuple.bind(this),MergeQueryNode:this.transformMergeQuery.bind(this),MatchedNode:this.transformMatched.bind(this),AddIndexNode:this.transformAddIndex.bind(this),CastNode:this.transformCast.bind(this),FetchNode:this.transformFetch.bind(this),TopNode:this.transformTop.bind(this),OutputNode:this.transformOutput.bind(this),OrActionNode:this.transformOrAction.bind(this),CollateNode:this.transformCollate.bind(this)});transformNode(t,i){if(!t)return t;this.nodeStack.push(t);let h=this.transformNodeImpl(t,i);return this.nodeStack.pop(),N(h)}transformNodeImpl(t,i){return this.#t[t.kind](t,i)}transformNodeList(t,i){if(!t)return t;return N(t.map((h)=>this.transformNode(h,i)))}transformSelectQuery(t,i){return s({kind:"SelectQueryNode",from:this.transformNode(t.from,i),selections:this.transformNodeList(t.selections,i),distinctOn:this.transformNodeList(t.distinctOn,i),joins:this.transformNodeList(t.joins,i),groupBy:this.transformNode(t.groupBy,i),orderBy:this.transformNode(t.orderBy,i),where:this.transformNode(t.where,i),frontModifiers:this.transformNodeList(t.frontModifiers,i),endModifiers:this.transformNodeList(t.endModifiers,i),limit:this.transformNode(t.limit,i),offset:this.transformNode(t.offset,i),with:this.transformNode(t.with,i),having:this.transformNode(t.having,i),explain:this.transformNode(t.explain,i),setOperations:this.transformNodeList(t.setOperations,i),fetch:this.transformNode(t.fetch,i),top:this.transformNode(t.top,i)})}transformSelection(t,i){return s({kind:"SelectionNode",selection:this.transformNode(t.selection,i)})}transformColumn(t,i){return s({kind:"ColumnNode",column:this.transformNode(t.column,i)})}transformAlias(t,i){return s({kind:"AliasNode",node:this.transformNode(t.node,i),alias:this.transformNode(t.alias,i)})}transformTable(t,i){return s({kind:"TableNode",table:this.transformNode(t.table,i)})}transformFrom(t,i){return s({kind:"FromNode",froms:this.transformNodeList(t.froms,i)})}transformReference(t,i){return s({kind:"ReferenceNode",column:this.transformNode(t.column,i),table:this.transformNode(t.table,i)})}transformAnd(t,i){return s({kind:"AndNode",left:this.transformNode(t.left,i),right:this.transformNode(t.right,i)})}transformOr(t,i){return s({kind:"OrNode",left:this.transformNode(t.left,i),right:this.transformNode(t.right,i)})}transformValueList(t,i){return s({kind:"ValueListNode",values:this.transformNodeList(t.values,i)})}transformParens(t,i){return s({kind:"ParensNode",node:this.transformNode(t.node,i)})}transformJoin(t,i){return s({kind:"JoinNode",joinType:t.joinType,table:this.transformNode(t.table,i),on:this.transformNode(t.on,i)})}transformRaw(t,i){return s({kind:"RawNode",sqlFragments:N([...t.sqlFragments]),parameters:this.transformNodeList(t.parameters,i)})}transformWhere(t,i){return s({kind:"WhereNode",where:this.transformNode(t.where,i)})}transformInsertQuery(t,i){return s({kind:"InsertQueryNode",into:this.transformNode(t.into,i),columns:this.transformNodeList(t.columns,i),values:this.transformNode(t.values,i),returning:this.transformNode(t.returning,i),onConflict:this.transformNode(t.onConflict,i),onDuplicateKey:this.transformNode(t.onDuplicateKey,i),endModifiers:this.transformNodeList(t.endModifiers,i),with:this.transformNode(t.with,i),ignore:t.ignore,orAction:this.transformNode(t.orAction,i),replace:t.replace,explain:this.transformNode(t.explain,i),defaultValues:t.defaultValues,top:this.transformNode(t.top,i),output:this.transformNode(t.output,i)})}transformValues(t,i){return s({kind:"ValuesNode",values:this.transformNodeList(t.values,i)})}transformDeleteQuery(t,i){return s({kind:"DeleteQueryNode",from:this.transformNode(t.from,i),using:this.transformNode(t.using,i),joins:this.transformNodeList(t.joins,i),where:this.transformNode(t.where,i),returning:this.transformNode(t.returning,i),endModifiers:this.transformNodeList(t.endModifiers,i),with:this.transformNode(t.with,i),orderBy:this.transformNode(t.orderBy,i),limit:this.transformNode(t.limit,i),explain:this.transformNode(t.explain,i),top:this.transformNode(t.top,i),output:this.transformNode(t.output,i)})}transformReturning(t,i){return s({kind:"ReturningNode",selections:this.transformNodeList(t.selections,i)})}transformCreateTable(t,i){return s({kind:"CreateTableNode",table:this.transformNode(t.table,i),columns:this.transformNodeList(t.columns,i),constraints:this.transformNodeList(t.constraints,i),temporary:t.temporary,ifNotExists:t.ifNotExists,onCommit:t.onCommit,frontModifiers:this.transformNodeList(t.frontModifiers,i),endModifiers:this.transformNodeList(t.endModifiers,i),selectQuery:this.transformNode(t.selectQuery,i)})}transformColumnDefinition(t,i){return s({kind:"ColumnDefinitionNode",column:this.transformNode(t.column,i),dataType:this.transformNode(t.dataType,i),references:this.transformNode(t.references,i),primaryKey:t.primaryKey,autoIncrement:t.autoIncrement,unique:t.unique,notNull:t.notNull,unsigned:t.unsigned,defaultTo:this.transformNode(t.defaultTo,i),check:this.transformNode(t.check,i),generated:this.transformNode(t.generated,i),frontModifiers:this.transformNodeList(t.frontModifiers,i),endModifiers:this.transformNodeList(t.endModifiers,i),nullsNotDistinct:t.nullsNotDistinct,identity:t.identity,ifNotExists:t.ifNotExists})}transformAddColumn(t,i){return s({kind:"AddColumnNode",column:this.transformNode(t.column,i)})}transformDropTable(t,i){return s({kind:"DropTableNode",table:this.transformNode(t.table,i),ifExists:t.ifExists,cascade:t.cascade})}transformOrderBy(t,i){return s({kind:"OrderByNode",items:this.transformNodeList(t.items,i)})}transformOrderByItem(t,i){return s({kind:"OrderByItemNode",orderBy:this.transformNode(t.orderBy,i),direction:this.transformNode(t.direction,i),collation:this.transformNode(t.collation,i),nulls:t.nulls})}transformGroupBy(t,i){return s({kind:"GroupByNode",items:this.transformNodeList(t.items,i)})}transformGroupByItem(t,i){return s({kind:"GroupByItemNode",groupBy:this.transformNode(t.groupBy,i)})}transformUpdateQuery(t,i){return s({kind:"UpdateQueryNode",table:this.transformNode(t.table,i),from:this.transformNode(t.from,i),joins:this.transformNodeList(t.joins,i),where:this.transformNode(t.where,i),updates:this.transformNodeList(t.updates,i),returning:this.transformNode(t.returning,i),endModifiers:this.transformNodeList(t.endModifiers,i),with:this.transformNode(t.with,i),explain:this.transformNode(t.explain,i),limit:this.transformNode(t.limit,i),top:this.transformNode(t.top,i),output:this.transformNode(t.output,i),orderBy:this.transformNode(t.orderBy,i)})}transformColumnUpdate(t,i){return s({kind:"ColumnUpdateNode",column:this.transformNode(t.column,i),value:this.transformNode(t.value,i)})}transformLimit(t,i){return s({kind:"LimitNode",limit:this.transformNode(t.limit,i)})}transformOffset(t,i){return s({kind:"OffsetNode",offset:this.transformNode(t.offset,i)})}transformOnConflict(t,i){return s({kind:"OnConflictNode",columns:this.transformNodeList(t.columns,i),constraint:this.transformNode(t.constraint,i),indexExpression:this.transformNode(t.indexExpression,i),indexWhere:this.transformNode(t.indexWhere,i),updates:this.transformNodeList(t.updates,i),updateWhere:this.transformNode(t.updateWhere,i),doNothing:t.doNothing})}transformOnDuplicateKey(t,i){return s({kind:"OnDuplicateKeyNode",updates:this.transformNodeList(t.updates,i)})}transformCreateIndex(t,i){return s({kind:"CreateIndexNode",name:this.transformNode(t.name,i),table:this.transformNode(t.table,i),columns:this.transformNodeList(t.columns,i),unique:t.unique,using:this.transformNode(t.using,i),ifNotExists:t.ifNotExists,where:this.transformNode(t.where,i),nullsNotDistinct:t.nullsNotDistinct})}transformList(t,i){return s({kind:"ListNode",items:this.transformNodeList(t.items,i)})}transformDropIndex(t,i){return s({kind:"DropIndexNode",name:this.transformNode(t.name,i),table:this.transformNode(t.table,i),ifExists:t.ifExists,cascade:t.cascade})}transformPrimaryKeyConstraint(t,i){return s({kind:"PrimaryKeyConstraintNode",columns:this.transformNodeList(t.columns,i),name:this.transformNode(t.name,i),deferrable:t.deferrable,initiallyDeferred:t.initiallyDeferred})}transformUniqueConstraint(t,i){return s({kind:"UniqueConstraintNode",columns:this.transformNodeList(t.columns,i),name:this.transformNode(t.name,i),nullsNotDistinct:t.nullsNotDistinct,deferrable:t.deferrable,initiallyDeferred:t.initiallyDeferred})}transformForeignKeyConstraint(t,i){return s({kind:"ForeignKeyConstraintNode",columns:this.transformNodeList(t.columns,i),references:this.transformNode(t.references,i),name:this.transformNode(t.name,i),onDelete:t.onDelete,onUpdate:t.onUpdate,deferrable:t.deferrable,initiallyDeferred:t.initiallyDeferred})}transformSetOperation(t,i){return s({kind:"SetOperationNode",operator:t.operator,expression:this.transformNode(t.expression,i),all:t.all})}transformReferences(t,i){return s({kind:"ReferencesNode",table:this.transformNode(t.table,i),columns:this.transformNodeList(t.columns,i),onDelete:t.onDelete,onUpdate:t.onUpdate})}transformCheckConstraint(t,i){return s({kind:"CheckConstraintNode",expression:this.transformNode(t.expression,i),name:this.transformNode(t.name,i)})}transformWith(t,i){return s({kind:"WithNode",expressions:this.transformNodeList(t.expressions,i),recursive:t.recursive})}transformCommonTableExpression(t,i){return s({kind:"CommonTableExpressionNode",name:this.transformNode(t.name,i),materialized:t.materialized,expression:this.transformNode(t.expression,i)})}transformCommonTableExpressionName(t,i){return s({kind:"CommonTableExpressionNameNode",table:this.transformNode(t.table,i),columns:this.transformNodeList(t.columns,i)})}transformHaving(t,i){return s({kind:"HavingNode",having:this.transformNode(t.having,i)})}transformCreateSchema(t,i){return s({kind:"CreateSchemaNode",schema:this.transformNode(t.schema,i),ifNotExists:t.ifNotExists})}transformDropSchema(t,i){return s({kind:"DropSchemaNode",schema:this.transformNode(t.schema,i),ifExists:t.ifExists,cascade:t.cascade})}transformAlterTable(t,i){return s({kind:"AlterTableNode",table:this.transformNode(t.table,i),renameTo:this.transformNode(t.renameTo,i),setSchema:this.transformNode(t.setSchema,i),columnAlterations:this.transformNodeList(t.columnAlterations,i),addConstraint:this.transformNode(t.addConstraint,i),dropConstraint:this.transformNode(t.dropConstraint,i),renameConstraint:this.transformNode(t.renameConstraint,i),addIndex:this.transformNode(t.addIndex,i),dropIndex:this.transformNode(t.dropIndex,i)})}transformDropColumn(t,i){return s({kind:"DropColumnNode",column:this.transformNode(t.column,i)})}transformRenameColumn(t,i){return s({kind:"RenameColumnNode",column:this.transformNode(t.column,i),renameTo:this.transformNode(t.renameTo,i)})}transformAlterColumn(t,i){return s({kind:"AlterColumnNode",column:this.transformNode(t.column,i),dataType:this.transformNode(t.dataType,i),dataTypeExpression:this.transformNode(t.dataTypeExpression,i),setDefault:this.transformNode(t.setDefault,i),dropDefault:t.dropDefault,setNotNull:t.setNotNull,dropNotNull:t.dropNotNull})}transformModifyColumn(t,i){return s({kind:"ModifyColumnNode",column:this.transformNode(t.column,i)})}transformAddConstraint(t,i){return s({kind:"AddConstraintNode",constraint:this.transformNode(t.constraint,i)})}transformDropConstraint(t,i){return s({kind:"DropConstraintNode",constraintName:this.transformNode(t.constraintName,i),ifExists:t.ifExists,modifier:t.modifier})}transformRenameConstraint(t,i){return s({kind:"RenameConstraintNode",oldName:this.transformNode(t.oldName,i),newName:this.transformNode(t.newName,i)})}transformCreateView(t,i){return s({kind:"CreateViewNode",name:this.transformNode(t.name,i),temporary:t.temporary,orReplace:t.orReplace,ifNotExists:t.ifNotExists,materialized:t.materialized,columns:this.transformNodeList(t.columns,i),as:this.transformNode(t.as,i)})}transformRefreshMaterializedView(t,i){return s({kind:"RefreshMaterializedViewNode",name:this.transformNode(t.name,i),concurrently:t.concurrently,withNoData:t.withNoData})}transformDropView(t,i){return s({kind:"DropViewNode",name:this.transformNode(t.name,i),ifExists:t.ifExists,materialized:t.materialized,cascade:t.cascade})}transformGenerated(t,i){return s({kind:"GeneratedNode",byDefault:t.byDefault,always:t.always,identity:t.identity,stored:t.stored,expression:this.transformNode(t.expression,i)})}transformDefaultValue(t,i){return s({kind:"DefaultValueNode",defaultValue:this.transformNode(t.defaultValue,i)})}transformOn(t,i){return s({kind:"OnNode",on:this.transformNode(t.on,i)})}transformSelectModifier(t,i){return s({kind:"SelectModifierNode",modifier:t.modifier,rawModifier:this.transformNode(t.rawModifier,i),of:this.transformNodeList(t.of,i)})}transformCreateType(t,i){return s({kind:"CreateTypeNode",name:this.transformNode(t.name,i),enum:this.transformNode(t.enum,i)})}transformDropType(t,i){return s({kind:"DropTypeNode",name:this.transformNode(t.name,i),ifExists:t.ifExists})}transformExplain(t,i){return s({kind:"ExplainNode",format:t.format,options:this.transformNode(t.options,i)})}transformSchemableIdentifier(t,i){return s({kind:"SchemableIdentifierNode",schema:this.transformNode(t.schema,i),identifier:this.transformNode(t.identifier,i)})}transformAggregateFunction(t,i){return s({kind:"AggregateFunctionNode",func:t.func,aggregated:this.transformNodeList(t.aggregated,i),distinct:t.distinct,orderBy:this.transformNode(t.orderBy,i),withinGroup:this.transformNode(t.withinGroup,i),filter:this.transformNode(t.filter,i),over:this.transformNode(t.over,i)})}transformOver(t,i){return s({kind:"OverNode",orderBy:this.transformNode(t.orderBy,i),partitionBy:this.transformNode(t.partitionBy,i)})}transformPartitionBy(t,i){return s({kind:"PartitionByNode",items:this.transformNodeList(t.items,i)})}transformPartitionByItem(t,i){return s({kind:"PartitionByItemNode",partitionBy:this.transformNode(t.partitionBy,i)})}transformBinaryOperation(t,i){return s({kind:"BinaryOperationNode",leftOperand:this.transformNode(t.leftOperand,i),operator:this.transformNode(t.operator,i),rightOperand:this.transformNode(t.rightOperand,i)})}transformUnaryOperation(t,i){return s({kind:"UnaryOperationNode",operator:this.transformNode(t.operator,i),operand:this.transformNode(t.operand,i)})}transformUsing(t,i){return s({kind:"UsingNode",tables:this.transformNodeList(t.tables,i)})}transformFunction(t,i){return s({kind:"FunctionNode",func:t.func,arguments:this.transformNodeList(t.arguments,i)})}transformCase(t,i){return s({kind:"CaseNode",value:this.transformNode(t.value,i),when:this.transformNodeList(t.when,i),else:this.transformNode(t.else,i),isStatement:t.isStatement})}transformWhen(t,i){return s({kind:"WhenNode",condition:this.transformNode(t.condition,i),result:this.transformNode(t.result,i)})}transformJSONReference(t,i){return s({kind:"JSONReferenceNode",reference:this.transformNode(t.reference,i),traversal:this.transformNode(t.traversal,i)})}transformJSONPath(t,i){return s({kind:"JSONPathNode",inOperator:this.transformNode(t.inOperator,i),pathLegs:this.transformNodeList(t.pathLegs,i)})}transformJSONPathLeg(t,i){return s({kind:"JSONPathLegNode",type:t.type,value:t.value})}transformJSONOperatorChain(t,i){return s({kind:"JSONOperatorChainNode",operator:this.transformNode(t.operator,i),values:this.transformNodeList(t.values,i)})}transformTuple(t,i){return s({kind:"TupleNode",values:this.transformNodeList(t.values,i)})}transformMergeQuery(t,i){return s({kind:"MergeQueryNode",into:this.transformNode(t.into,i),using:this.transformNode(t.using,i),whens:this.transformNodeList(t.whens,i),with:this.transformNode(t.with,i),top:this.transformNode(t.top,i),endModifiers:this.transformNodeList(t.endModifiers,i),output:this.transformNode(t.output,i),returning:this.transformNode(t.returning,i)})}transformMatched(t,i){return s({kind:"MatchedNode",not:t.not,bySource:t.bySource})}transformAddIndex(t,i){return s({kind:"AddIndexNode",name:this.transformNode(t.name,i),columns:this.transformNodeList(t.columns,i),unique:t.unique,using:this.transformNode(t.using,i),ifNotExists:t.ifNotExists})}transformCast(t,i){return s({kind:"CastNode",expression:this.transformNode(t.expression,i),dataType:this.transformNode(t.dataType,i)})}transformFetch(t,i){return s({kind:"FetchNode",rowCount:this.transformNode(t.rowCount,i),modifier:t.modifier})}transformTop(t,i){return s({kind:"TopNode",expression:t.expression,modifiers:t.modifiers})}transformOutput(t,i){return s({kind:"OutputNode",selections:this.transformNodeList(t.selections,i)})}transformDataType(t,i){return t}transformSelectAll(t,i){return t}transformIdentifier(t,i){return t}transformValue(t,i){return t}transformPrimitiveValueList(t,i){return t}transformOperator(t,i){return t}transformDefaultInsertValue(t,i){return t}transformOrAction(t,i){return t}transformCollate(t,i){return t}}var W=N({is(t){return t.kind==="TableNode"},create(t){return N({kind:"TableNode",table:p.create(t)})},createWithSchema(t,i){return N({kind:"TableNode",table:p.createWithSchema(t,i)})}});var u=N({is(t){return t.kind==="UsingNode"},create(t){return N({kind:"UsingNode",tables:N(t)})},cloneWithTables(t,i){return N({...t,tables:N([...t.tables,...i])})}});var ft=N({AlterTableNode:!0,CreateIndexNode:!0,CreateSchemaNode:!0,CreateTableNode:!0,CreateTypeNode:!0,CreateViewNode:!0,RefreshMaterializedViewNode:!0,DeleteQueryNode:!0,DropIndexNode:!0,DropSchemaNode:!0,DropTableNode:!0,DropTypeNode:!0,DropViewNode:!0,InsertQueryNode:!0,RawNode:!0,SelectQueryNode:!0,UpdateQueryNode:!0,MergeQueryNode:!0}),vt={json_agg:!0,to_json:!0};class z extends T{#t;#i=new Set;#h=new Set;constructor(t){super();this.#t=t}transformNodeImpl(t,i){if(!this.#v(t))return super.transformNodeImpl(t,i);let h=this.#s(t);for(let v of h)this.#h.add(v);let f=this.#k(t);for(let v of f)this.#i.add(v);let C=super.transformNodeImpl(t,i);for(let v of f)this.#i.delete(v);for(let v of h)this.#h.delete(v);return C}transformSchemableIdentifier(t,i){let h=super.transformSchemableIdentifier(t,i);if(h.schema||!this.#i.has(t.identifier.name))return h;return{...h,schema:S.create(this.#t)}}transformReferences(t,i){let h=super.transformReferences(t,i);if(h.table.table.schema)return h;return{...h,table:W.createWithSchema(this.#t,h.table.table.identifier.name)}}transformAggregateFunction(t,i){return{...super.transformAggregateFunction({...t,aggregated:[]},i),aggregated:this.#N(t,i,"aggregated")}}transformFunction(t,i){return{...super.transformFunction({...t,arguments:[]},i),arguments:this.#N(t,i,"arguments")}}transformSelectModifier(t,i){return{...super.transformSelectModifier({...t,of:void 0},i),of:t.of?.map((h)=>W.is(h)&&!h.table.schema?{...h,table:this.transformIdentifier(h.table.identifier,i)}:this.transformNode(h,i))}}#N(t,i,h){return vt[t.func]?t[h].map((f)=>!W.is(f)||f.table.schema?this.transformNode(f,i):{...f,table:this.transformIdentifier(f.table.identifier,i)}):this.transformNodeList(t[h],i)}#v(t){return t.kind in ft}#k(t){let i=new Set;if("name"in t&&t.name&&p.is(t.name))this.#C(t.name,i);if("from"in t&&t.from)for(let h of t.from.froms)this.#f(h,i);if("into"in t&&t.into)this.#f(t.into,i);if("table"in t&&t.table)this.#f(t.table,i);if("joins"in t&&t.joins)for(let h of t.joins)this.#f(h.table,i);if("using"in t&&t.using)if(a.is(t.using))this.#f(t.using.table,i);else this.#f(t.using,i);return i}#s(t){let i=new Set;if("with"in t&&t.with)this.#c(t.with,i);return i}#f(t,i){if(W.is(t))return this.#C(t.table,i);if(j.is(t)&&W.is(t.node))return this.#C(t.node.table,i);if(y.is(t)){for(let h of t.items)this.#f(h,i);return}if(u.is(t)){for(let h of t.tables)this.#f(h,i);return}}#C(t,i){let h=t.identifier.name;if(!this.#i.has(h)&&!this.#h.has(h))i.add(h)}#c(t,i){for(let h of t.expressions){let f=h.name.table.table.identifier.name;if(!this.#h.has(f))i.add(f)}}}class H{#t;constructor(t){this.#t=new z(t)}transformQuery(t){return this.#t.transformNode(t.node,t.queryId)}async transformResult(t){return t.result}}var Ct="kysely_migration",I="kysely_migration_lock",Ot=!1,K="migration_lock",gi=N({__noMigrations__:!0});class kt{#t;constructor(t){this.#t=N(t)}async getMigrations(){let i=await this.#O(this.#N)?await this.#t.db.withPlugin(this.#s).selectFrom(this.#N).select(["name","timestamp"]).$narrowType().execute():[];return(await this.#V()).map(({name:f,...C})=>{let v=i.find((O)=>O.name===f);return{name:f,migration:C,executedAt:v?new Date(v.timestamp):void 0}})}async migrateToLatest(){return this.#i(()=>({direction:"Up",step:1/0}))}async migrateTo(t){return this.#i(({migrations:i,executedMigrations:h,pendingMigrations:f})=>{if(X(t)&&t.__noMigrations__===!0)return{direction:"Down",step:1/0};if(!i.find((O)=>O.name===t))throw Error(`migration "${t}" doesn't exist`);let C=h.indexOf(t),v=f.findIndex((O)=>O.name===t);if(C!==-1)return{direction:"Down",step:h.length-C-1};else if(v!==-1)return{direction:"Up",step:v+1};else throw Error(`migration "${t}" isn't executed or pending`)})}async migrateUp(){return this.#i(()=>({direction:"Up",step:1}))}async migrateDown(){return this.#i(()=>({direction:"Down",step:1}))}async#i(t){try{return await this.#f(),await this.#C(),await this.#c(),await this.#R(),await this.#w(t)}catch(i){if(i instanceof B)return i.resultSet;return{error:i}}}get#h(){return this.#t.migrationTableSchema}get#N(){return this.#t.migrationTableName??Ct}get#v(){return this.#t.migrationLockTableName??I}get#k(){return this.#t.allowUnorderedMigrations??Ot}get#s(){if(this.#h)return new H(this.#h);return new D}async#f(){if(!this.#h)return;if(await this.#S())return;try{await this.#p(this.#t.db.schema.createSchema(this.#h))}catch(i){if(!await this.#S())throw i}}async#C(){if(await this.#O(this.#N))return;try{await this.#p(this.#t.db.schema.withPlugin(this.#s).createTable(this.#N).addColumn("name","varchar(255)",(i)=>i.notNull().primaryKey()).addColumn("timestamp","varchar(255)",(i)=>i.notNull()))}catch(i){if(!await this.#O(this.#N))throw i}}async#c(){if(await this.#O(this.#v))return;try{await this.#p(this.#t.db.schema.withPlugin(this.#s).createTable(this.#v).addColumn("id","varchar(255)",(i)=>i.notNull().primaryKey()).addColumn("is_locked","integer",(i)=>i.notNull().defaultTo(0)))}catch(i){if(!await this.#O(this.#v))throw i}}async#R(){if(await this.#W())return;try{await this.#t.db.withPlugin(this.#s).insertInto(this.#v).values({id:K,is_locked:0}).execute()}catch(i){if(!await this.#W())throw i}}async#S(){return(await this.#t.db.introspection.getSchemas()).some((i)=>i.name===this.#h)}async#O(t){let i=this.#h;return(await this.#t.db.introspection.getTables({withInternalKyselyTables:!0})).some((f)=>f.name===t&&(!i||f.schema===i))}async#W(){return!!await this.#t.db.withPlugin(this.#s).selectFrom(this.#v).where("id","=",K).select("id").executeTakeFirst()}async#w(t){let i=this.#t.db.getExecutor().adapter,h=N({lockTable:this.#t.migrationLockTableName??I,lockRowId:K,lockTableSchema:this.#t.migrationTableSchema}),f=async(C)=>{try{await i.acquireMigrationLock(C,h);let v=await this.#B(C);if(v.migrations.length===0)return{results:[]};let{direction:O,step:k}=t(v);if(k<=0)return{results:[]};if(O==="Down")return await this.#T(C,v,k);else if(O==="Up")return await this.#z(C,v,k);return{results:[]}}finally{await i.releaseMigrationLock(C,h)}};if(i.supportsTransactionalDdl&&!this.#t.disableTransactions)return this.#t.db.transaction().execute(f);else return this.#t.db.connection().execute(f)}async#B(t){let i=await this.#V(),h=await this.#U(t);if(this.#Q(i,h),!this.#k)this.#D(i,h);let f=this.#J(i,h);return N({migrations:i,executedMigrations:h,lastMigration:G(h),pendingMigrations:f})}#J(t,i){return t.filter((h)=>{return!i.includes(h.name)})}async#V(){let t=await this.#t.provider.getMigrations();return Object.keys(t).sort().map((i)=>({...t[i],name:i}))}async#U(t){let i=await t.withPlugin(this.#s).selectFrom(this.#N).select(["name","timestamp"]).$narrowType().execute(),h=this.#t.nameComparator||((f,C)=>f.localeCompare(C));return i.sort((f,C)=>{if(f.timestamp===C.timestamp)return h(f.name,C.name);return new Date(f.timestamp).getTime()-new Date(C.timestamp).getTime()}).map((f)=>f.name)}#Q(t,i){for(let h of i)if(!t.some((f)=>f.name===h))throw Error(`corrupted migrations: previously executed migration ${h} is missing`)}#D(t,i){for(let h=0;h<i.length;++h)if(t[h].name!==i[h])throw Error(`corrupted migrations: expected previously executed migration ${i[h]} to be at index ${h} but ${t[h].name} was found in its place. New migrations must always have a name that comes alphabetically after the last executed migration.`)}async#T(t,i,h){let f=i.executedMigrations.slice().reverse().slice(0,h).map((v)=>{return i.migrations.find((O)=>O.name===v)}),C=f.map((v)=>{return{migrationName:v.name,direction:"Down",status:"NotExecuted"}});for(let v=0;v<C.length;++v){let O=f[v];try{if(O.down)await O.down(t),await t.withPlugin(this.#s).deleteFrom(this.#N).where("name","=",O.name).execute(),C[v]={migrationName:O.name,direction:"Down",status:"Success"}}catch(k){throw C[v]={migrationName:O.name,direction:"Down",status:"Error"},new B({error:k,results:C})}}return{results:C}}async#z(t,i,h){let C=i.pendingMigrations.slice(0,h).map((v)=>{return{migrationName:v.name,direction:"Up",status:"NotExecuted"}});for(let v=0;v<C.length;v++){let O=i.pendingMigrations[v];try{await O.up(t),await t.withPlugin(this.#s).insertInto(this.#N).values({name:O.name,timestamp:new Date().toISOString()}).execute(),C[v]={migrationName:O.name,direction:"Up",status:"Success"}}catch(k){throw C[v]={migrationName:O.name,direction:"Up",status:"Error"},new B({error:k,results:C})}}return{results:C}}async#p(t){if(this.#t.db.getExecutor().adapter.supportsCreateIfNotExists)t=t.ifNotExists();await t.execute()}}class B extends Error{#t;constructor(t){super();this.#t=t}get resultSet(){return this.#t}}
|
|
3
|
-
export{ct as
|
|
3
|
+
export{ct as Cc,V as Dc,F as Ec,J as Fc,Y as Gc,Z as Hc,$ as Ic,pt as Jc,St as Kc,X as Lc,N as Mc,Wt as Nc,r as Oc,Vt as Pc,S as Qc,Bt as Rc,L as Sc,p as Tc,j as Uc,W as Vc,g as Wc,l as Xc,a as Yc,Ht as Zc,m as _c,Kt as $c,c as ad,b as bd,R as cd,x as dd,y as ed,u as fd,Q as gd,T as hd,H as id,M as jd,E as kd,ht as ld,Ct as md,I as nd};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
2
|
-
export{B as
|
|
1
|
+
import{Oe as A}from"./chunk-pew69nxg.js";import{Bg as v,Sg as w,dh as z}from"./chunk-ersxsrz8.js";var B=(b)=>({queryKey:["projects",b],queryFn:async()=>{let h=await z.api.projects[":projectId"].$get({param:{projectId:b}});if(!h.ok)throw Error("Failed to fetch project");return await h.json()}}),H=w("/projects/$projectId/collections/")({loader:({context:{queryClient:b},params:{projectId:h}})=>b.ensureQueryData(B(h)),pendingComponent:()=>v(A,{})});
|
|
2
|
+
export{B as Fe,H as Ge};
|
package/bin/shumai-app.html
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<meta name="theme-color" content="#ffffff" />
|
|
26
26
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
27
27
|
<title>Shumai</title>
|
|
28
|
-
<link rel="stylesheet" crossorigin href="./chunk-
|
|
28
|
+
<link rel="stylesheet" crossorigin href="./chunk-htrzgs2a.css"><script type="module" crossorigin src="./chunk-j5dejr3e.js"></script></head>
|
|
29
29
|
<body>
|
|
30
30
|
<div id="root"></div>
|
|
31
31
|
|