@effect/sql-pg 4.0.0-beta.70 → 4.0.0-beta.71

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.
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../src/PgClient.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAKrC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,uCAAuC,CAAA;AACnE,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAEvD,OAAO,KAAK,KAAK,aAAa,MAAM,mCAAmC,CAAA;AACvE,OAAO,EAQL,QAAQ,EAKT,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AAIxB;;;;;GAKG;AACH,eAAO,MAAM,MAAM,EAAE,MAAmC,CAAA;AAExD;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG,0BAA0B,CAAA;AAE/C;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,MAAM,CAAC,SAAS;IAChD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,QAAQ,CAAA;IACvC,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACrE,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;CACrF;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,qCAAuD,CAAA;AAE5E;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAE5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAAA;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAEjD,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;IAEpD,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,SAAS,CAAA;IAE5C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IAE7D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;IACrE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,iBAAiB,GAAG,SAAS,CAAA;CAClD;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;IAEjD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;CACpD;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,SAAS,YAAY,KAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CA0D9G,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,SAAS,cAAc,GAAG;IACxB;;OAEG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAChD,KACA,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CA6CpE,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;sBAEC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;+BAEpC,MAAM,GAAG,SAAS;8BACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;oCAE7B,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS;mCACtC,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS;6BAC3C,OAAO,GAAG,SAAS;qBAC3B,EAAE,CAAC,iBAAiB,GAAG,SAAS;4EA0LnD,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU;sBAED,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;IAEjE;;OAEG;+BACwB,OAAO;+BAEP,MAAM,GAAG,SAAS;8BACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;oCAE7B,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS;mCACtC,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS;6BAC3C,OAAO,GAAG,SAAS;qBAC3B,EAAE,CAAC,iBAAiB,GAAG,SAAS;4EAqDnD,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;uBAEE,aAAa,CAAC,QAAQ;kCACX,aAAa,CAAC,QAAQ;6BAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;qBAE3D,cAAc;8BACL,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;oCAE7B,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS;mCACtC,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS;6BAC3C,OAAO,GAAG,SAAS;4EA6D9C,CAAA;AA0IF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,CAAC,EAC5B,SAAS,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,KACrC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAM9C,CAAA;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,CACxB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAC9B,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,GAAG,QAAQ,CAMvE,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAChB,QAAQ,YAAY,KACnB,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,QAAQ,CAA4B,CAAA;AAEhF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GACvB,YAAY,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,uBAAoB,KACnB,SAAS,CAAC,QAsCZ,CAAA;AAID;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAE7B;;;GAGG;AACH,UAAU,MAAO,SAAQ,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC;CAAG;AACrD;;;GAGG;AACH,QAAA,MAAM,MAAM,yDAAqC,CAAA"}
1
+ {"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../src/PgClient.ts"],"names":[],"mappings":"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"}
package/dist/PgClient.js CHANGED
@@ -1,20 +1,38 @@
1
1
  /**
2
- * PostgreSQL client implementation for Effect SQL, backed by `pg`.
2
+ * PostgreSQL driver for Effect SQL, backed by the `pg` package.
3
3
  *
4
- * This module exposes constructors for creating a scoped `PgClient` from a
5
- * managed `pg` pool, a single managed `pg` client, or lower-level connection
6
- * acquirers. The resulting service can be provided as both `PgClient` and the
7
- * generic `SqlClient`, and is intended for application database access,
8
- * migrations, transactional workflows, row streaming, JSON parameters, and
9
- * PostgreSQL LISTEN/NOTIFY integration.
4
+ * Use this module to provide a {@link PgClient} and the generic `SqlClient`
5
+ * service from pool settings, a single managed `pg.Client`, an existing
6
+ * `pg.Pool`, or custom connection acquirers. The client uses Effect SQL's
7
+ * PostgreSQL compiler, classifies common PostgreSQL failures as `SqlError`s,
8
+ * and adds PostgreSQL-specific JSON fragments plus LISTEN/NOTIFY operations.
10
9
  *
11
- * Pool-backed clients acquire connections per operation and reserve dedicated
12
- * connections for transactions and cursor streams. Clients built from one
13
- * `pg.Client` serialize shared access; enable `acquireForStream` when streams
14
- * or listeners need their own client instead of sharing the query connection.
15
- * LISTEN uses a scoped long-lived client and automatically issues `UNLISTEN`
16
- * when the stream scope closes, so listeners should be scoped for as long as
17
- * notifications are needed.
10
+ * ## Mental model
11
+ *
12
+ * Pool-backed clients acquire a connection for each operation. Transactions and
13
+ * cursor streams keep a dedicated connection for their scope, so they consume
14
+ * pool capacity while active. Clients built from one `pg.Client` serialize
15
+ * query access through that client; set `acquireForStream` in
16
+ * {@link makeClient} when streams or listeners need separate clients.
17
+ *
18
+ * ## Common tasks
19
+ *
20
+ * - Use {@link layer} with concrete pool settings, or {@link layerConfig} when
21
+ * settings should come from `Config`.
22
+ * - Use {@link make} for a scoped pool-backed client without immediately
23
+ * turning it into a layer.
24
+ * - Use {@link fromPool} or {@link fromClient} when another component owns
25
+ * acquisition of the underlying `pg` resources.
26
+ * - Use `client.json`, `client.listen`, and `client.notify` for
27
+ * PostgreSQL-specific values and notifications.
28
+ *
29
+ * ## Gotchas
30
+ *
31
+ * LISTEN opens a scoped long-lived client and issues `UNLISTEN` when the stream
32
+ * scope closes, so keep listener streams scoped for exactly the period
33
+ * notifications are needed. Long-running transactions, streams, and listeners
34
+ * can hold onto database connections even while other fibers continue to use
35
+ * the same `PgClient`.
18
36
  *
19
37
  * @since 4.0.0
20
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Arr","Cause","Channel","Config","Context","Duration","Effect","Fiber","Layer","Number","Option","Queue","RcRef","Redacted","Scope","Semaphore","Stream","Reactivity","Client","AuthenticationError","AuthorizationError","ConnectionError","ConstraintError","DeadlockError","LockTimeoutError","SerializationError","SqlError","SqlSyntaxError","StatementTimeoutError","UniqueViolation","UnknownError","Statement","Pg","PgConnString","Cursor","TypeId","PgClient","Service","make","options","fromPool","acquire","gen","pool","Pool","connectionString","url","value","undefined","user","username","host","database","password","ssl","port","stream","connectionTimeoutMillis","connectTimeout","toMillis","fromInputUnsafe","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","reason","classifyError","promise","end","pipe","timeoutOption","interruptible","timeoutOrElse","duration","seconds","orElse","fail","Error","message","operation","makeClient","fromClient","client","acquireForStream","fnUntraced","makeConection","ConnectionImpl","runWithClient","f","callback","resume","makeCancel","done","cancel","onError","cleanup","release","off","connect","client_","once","eff","suspend","void","ensuring","sync","succeed","reserveRaw","fiber","getCurrent","scope","getUnsafe","context","cause_","err","as","addFinalizer","reserve","map","onListenClientError","_","listenAcquirer","config","parsed","parse","getOrUndefined","makeWith","acquirer","transactionAcquirer","get","spanAttributes","transformResultNames","transformQueryNames","transformJson","acquireWithErrorHandler","tap","semaphore","makeUnsafe","streamClient","take","connection","withPermit","compiler","makeCompiler","transformRows","defaultTransforms","array","Object","assign","entries","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","json","fragment","PgJson","listen","channel","queue","onNotification","msg","payload","offerUnsafe","escapeIdentifier","notify","asVoid","scoped","flatMap","conn","executeRaw","constructor","run","params","result","Array","isArray","r","rows","execute","sql","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","fromChannel","fromTransform","provide","cursor","close","read","isArrayNonEmpty","cancelEffects","WeakMap","has","processId","processID","ending","set","layerFrom","effectContext","add","SqlClient","layer","layerConfig","unwrap","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","paramA","defaultEscape","custom","pgCodeFromCause","code","pgConstraintFromCause","constraint","normalized","trim","length","props","startsWith"],"sources":["../src/PgClient.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,KAAKA,GAAG,MAAM,cAAc;AACnC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,UAAU,MAAM,uCAAuC;AACnE,OAAO,KAAKC,MAAM,MAAM,+BAA+B;AAGvD,SACEC,mBAAmB,EACnBC,kBAAkB,EAClBC,eAAe,EACfC,eAAe,EACfC,aAAa,EACbC,gBAAgB,EAChBC,kBAAkB,EAClBC,QAAQ,EACRC,cAAc,EACdC,qBAAqB,EACrBC,eAAe,EACfC,YAAY,QACP,8BAA8B;AAErC,OAAO,KAAKC,SAAS,MAAM,+BAA+B;AAG1D,OAAO,KAAKC,EAAE,MAAM,IAAI;AACxB,OAAO,KAAKC,YAAY,MAAM,sBAAsB;AACpD,OAAOC,MAAM,MAAM,WAAW;AAE9B;;;;;;AAMA,OAAO,MAAMC,MAAM,GAAW,0BAA0B;AAwBxD;;;;;;AAMA,OAAO,MAAMC,QAAQ,gBAAGhC,OAAO,CAACiC,OAAO,CAAW,yBAAyB,CAAC;AA8C5E;;;;;;AAMA,OAAO,MAAMC,IAAI,GAAIC,OAAqB,IACxCC,QAAQ,CAAC;EACP,GAAGD,OAAO;EACVE,OAAO,EAAEnC,MAAM,CAACoC,GAAG,CAAC,aAAS;IAC3B,MAAMC,IAAI,GAAG,IAAIX,EAAE,CAACY,IAAI,CAAC;MACvBC,gBAAgB,EAAEN,OAAO,CAACO,GAAG,GAAGjC,QAAQ,CAACkC,KAAK,CAACR,OAAO,CAACO,GAAG,CAAC,GAAGE,SAAS;MACvEC,IAAI,EAAEV,OAAO,CAACW,QAAQ;MACtBC,IAAI,EAAEZ,OAAO,CAACY,IAAI;MAClBC,QAAQ,EAAEb,OAAO,CAACa,QAAQ;MAC1BC,QAAQ,EAAEd,OAAO,CAACc,QAAQ,GAAGxC,QAAQ,CAACkC,KAAK,CAACR,OAAO,CAACc,QAAQ,CAAC,GAAGL,SAAS;MACzEM,GAAG,EAAEf,OAAO,CAACe,GAAG;MAChBC,IAAI,EAAEhB,OAAO,CAACgB,IAAI;MAClB,IAAIhB,OAAO,CAACiB,MAAM,GAAG;QAAEA,MAAM,EAAEjB,OAAO,CAACiB;MAAM,CAAE,GAAG,EAAE,CAAC;MACrDC,uBAAuB,EAAElB,OAAO,CAACmB,cAAc,GAC3CrD,QAAQ,CAACsD,QAAQ,CAACtD,QAAQ,CAACuD,eAAe,CAACrB,OAAO,CAACmB,cAAc,CAAC,CAAC,GACnEV,SAAS;MACba,iBAAiB,EAAEtB,OAAO,CAACuB,WAAW,GAClCzD,QAAQ,CAACsD,QAAQ,CAACtD,QAAQ,CAACuD,eAAe,CAACrB,OAAO,CAACuB,WAAW,CAAC,CAAC,GAChEd,SAAS;MACbe,GAAG,EAAExB,OAAO,CAACyB,cAAc;MAC3BC,GAAG,EAAE1B,OAAO,CAAC2B,cAAc;MAC3BC,kBAAkB,EAAE5B,OAAO,CAAC6B,aAAa,GACrC/D,QAAQ,CAACgE,SAAS,CAAChE,QAAQ,CAACuD,eAAe,CAACrB,OAAO,CAAC6B,aAAa,CAAC,CAAC,GACnEpB,SAAS;MACbsB,gBAAgB,EAAE/B,OAAO,CAACgC,eAAe,IAAI,gBAAgB;MAC7DC,KAAK,EAAEjC,OAAO,CAACiC;KAChB,CAAC;IAEF7B,IAAI,CAAC8B,EAAE,CAAC,OAAO,EAAGC,IAAI,IAAI,CAAE,CAAC,CAAC;IAE9B,OAAOpE,MAAM,CAACqE,cAAc,CAC1BrE,MAAM,CAACsE,UAAU,CAAC;MAChBC,GAAG,EAAEA,CAAA,KAAMlC,IAAI,CAACmC,KAAK,CAAC,UAAU,CAAC;MACjCC,KAAK,EAAGC,KAAK,IAAK,IAAItD,QAAQ,CAAC;QAAEuD,MAAM,EAAEC,aAAa,CAACF,KAAK,EAAE,6BAA6B,EAAE,SAAS;MAAC,CAAE;KAC1G,CAAC,EACF,MACE1E,MAAM,CAAC6E,OAAO,CAAC,MAAMxC,IAAI,CAACyC,GAAG,EAAE,CAAC,CAACC,IAAI,CACnC/E,MAAM,CAACgF,aAAa,CAAC,IAAI,CAAC,CAC3B,EACH;MAAEC,aAAa,EAAE;IAAI,CAAE,CACxB,CAACF,IAAI,CACJ/E,MAAM,CAACkF,aAAa,CAAC;MACnBC,QAAQ,EAAElD,OAAO,CAACmB,cAAc,IAAIrD,QAAQ,CAACqF,OAAO,CAAC,CAAC,CAAC;MACvDC,MAAM,EAAEA,CAAA,KACNrF,MAAM,CAACsF,IAAI,CACT,IAAIlE,QAAQ,CAAC;QACXuD,MAAM,EAAE,IAAI5D,eAAe,CAAC;UAC1B2D,KAAK,EAAE,IAAIa,KAAK,CAAC,sBAAsB,CAAC;UACxCC,OAAO,EAAE,gCAAgC;UACzCC,SAAS,EAAE;SACZ;OACF,CAAC;KAEP,CAAC,CACH;IAED,OAAOpD,IAAI;EACb,CAAC;CACF,CAAC;AAEJ;;;;;;AAMA,OAAO,MAAMqD,UAAU,GACrBzD,OAKC,IAED0D,UAAU,CAAC;EACT,GAAG1D,OAAO;EACVE,OAAO,EAAEnC,MAAM,CAACoC,GAAG,CAAC,aAAS;IAC3B,MAAMwD,MAAM,GAAG,IAAIlE,EAAE,CAACd,MAAM,CAAC;MAC3B2B,gBAAgB,EAAEN,OAAO,CAACO,GAAG,GAAGjC,QAAQ,CAACkC,KAAK,CAACR,OAAO,CAACO,GAAG,CAAC,GAAGE,SAAS;MACvEC,IAAI,EAAEV,OAAO,CAACW,QAAQ;MACtBC,IAAI,EAAEZ,OAAO,CAACY,IAAI;MAClBC,QAAQ,EAAEb,OAAO,CAACa,QAAQ;MAC1BC,QAAQ,EAAEd,OAAO,CAACc,QAAQ,GAAGxC,QAAQ,CAACkC,KAAK,CAACR,OAAO,CAACc,QAAQ,CAAC,GAAGL,SAAS;MACzEM,GAAG,EAAEf,OAAO,CAACe,GAAG;MAChBC,IAAI,EAAEhB,OAAO,CAACgB,IAAI;MAClB,IAAIhB,OAAO,CAACiB,MAAM,GAAG;QAAEA,MAAM,EAAEjB,OAAO,CAACiB;MAAM,CAAE,GAAG,EAAE,CAAC;MACrDc,gBAAgB,EAAE/B,OAAO,CAACgC,eAAe,IAAI,gBAAgB;MAC7DC,KAAK,EAAEjC,OAAO,CAACiC;KAChB,CAAC;IACF,OAAOlE,MAAM,CAACqE,cAAc,CAC1BrE,MAAM,CAACsE,UAAU,CAAC;MAChBC,GAAG,EAAEA,CAAA,KAAMqB,MAAM,CAACpB,KAAK,CAAC,UAAU,CAAC;MACnCC,KAAK,EAAGC,KAAK,IAAK,IAAItD,QAAQ,CAAC;QAAEuD,MAAM,EAAEC,aAAa,CAACF,KAAK,EAAE,6BAA6B,EAAE,SAAS;MAAC,CAAE;KAC1G,CAAC,EACF,MACE1E,MAAM,CAAC6E,OAAO,CAAC,MAAMe,MAAM,CAACd,GAAG,EAAE,CAAC,CAACC,IAAI,CACrC/E,MAAM,CAACgF,aAAa,CAAC,IAAI,CAAC,CAC3B,EACH;MAAEC,aAAa,EAAE;IAAI,CAAE,CACxB,CAACF,IAAI,CACJ/E,MAAM,CAACkF,aAAa,CAAC;MACnBC,QAAQ,EAAElD,OAAO,CAACmB,cAAc,IAAIrD,QAAQ,CAACqF,OAAO,CAAC,CAAC,CAAC;MACvDC,MAAM,EAAEA,CAAA,KACNrF,MAAM,CAACsF,IAAI,CACT,IAAIlE,QAAQ,CAAC;QACXuD,MAAM,EAAE,IAAI5D,eAAe,CAAC;UAC1B2D,KAAK,EAAE,IAAIa,KAAK,CAAC,sBAAsB,CAAC;UACxCC,OAAO,EAAE,gCAAgC;UACzCC,SAAS,EAAE;SACZ;OACF,CAAC;KAEP,CAAC,CACH;IAED,OAAOG,MAAM;EACf,CAAC,CAAC;EACFC,gBAAgB,EAAE5D,OAAO,CAAC4D,gBAAgB,IAAI;CAC/C,CAAC;AAEJ;;;;;;AAMA,OAAO,MAAM3D,QAAQ,gBAAGlC,MAAM,CAAC8F,UAAU,CAAC,WACxC7D,OAUC;EAED,MAAMI,IAAI,GAAG,OAAOJ,OAAO,CAACE,OAAO;EAEnC,MAAM4D,aAAa,GAAIH,MAAsB,IAC3C,IAAII,cAAc,CAChB,SAASC,aAAaA,CAAIC,CAAmF;IAC3G,IAAIN,MAAM,KAAKlD,SAAS,EAAE;MACxB,OAAO1C,MAAM,CAACmG,QAAQ,CAAeC,MAAM,IAAI;QAC7CF,CAAC,CAACN,MAAO,EAAEQ,MAAM,CAAC;QAClB,OAAOC,UAAU,CAAChE,IAAI,EAAEuD,MAAO,CAAC;MAClC,CAAC,CAAC;IACJ;IACA,OAAO5F,MAAM,CAACmG,QAAQ,CAAeC,MAAM,IAAI;MAC7C,IAAIE,IAAI,GAAG,KAAK;MAChB,IAAIC,MAAM,GAAoC7D,SAAS;MACvD,IAAIkD,MAAM,GAA8BlD,SAAS;MACjD,SAAS8D,OAAOA,CAAC9B,KAAY;QAC3B+B,OAAO,CAAC/B,KAAK,CAAC;QACd0B,MAAM,CAACpG,MAAM,CAACsF,IAAI,CAAC,IAAIlE,QAAQ,CAAC;UAAEuD,MAAM,EAAEC,aAAa,CAACF,KAAK,EAAE,kBAAkB,EAAE,mBAAmB;QAAC,CAAE,CAAC,CAAC,CAAC;MAC9G;MACA,SAAS+B,OAAOA,CAAC/B,KAAa;QAC5B,IAAI,CAAC4B,IAAI,EAAEV,MAAM,EAAEc,OAAO,CAAChC,KAAK,CAAC;QACjC4B,IAAI,GAAG,IAAI;QACXV,MAAM,EAAEe,GAAG,CAAC,OAAO,EAAEH,OAAO,CAAC;MAC/B;MACAnE,IAAI,CAACuE,OAAO,CAAC,CAAClC,KAAK,EAAEmC,OAAO,KAAI;QAC9B,IAAInC,KAAK,EAAE;UACT,OAAO0B,MAAM,CACXpG,MAAM,CAACsF,IAAI,CACT,IAAIlE,QAAQ,CAAC;YACXuD,MAAM,EAAEC,aAAa,CAACF,KAAK,EAAE,8BAA8B,EAAE,mBAAmB;WACjF,CAAC,CACH,CACF;QACH,CAAC,MAAM,IAAI,CAACmC,OAAO,EAAE;UACnB,OAAOT,MAAM,CACXpG,MAAM,CAACsF,IAAI,CACT,IAAIlE,QAAQ,CAAC;YACXuD,MAAM,EAAE,IAAI5D,eAAe,CAAC;cAC1ByE,OAAO,EAAE,8BAA8B;cACvCd,KAAK,EAAE,IAAIa,KAAK,CAAC,oBAAoB,CAAC;cACtCE,SAAS,EAAE;aACZ;WACF,CAAC,CACH,CACF;QACH,CAAC,MAAM,IAAIa,IAAI,EAAE;UACfO,OAAO,CAACH,OAAO,EAAE;UACjB;QACF;QACAd,MAAM,GAAGiB,OAAO;QAChBjB,MAAM,CAACkB,IAAI,CAAC,OAAO,EAAEN,OAAO,CAAC;QAC7BD,MAAM,GAAGF,UAAU,CAAChE,IAAI,EAAEuD,MAAM,CAAC;QACjCM,CAAC,CAACN,MAAM,EAAGmB,GAAG,IAAI;UAChBN,OAAO,EAAE;UACTL,MAAM,CAACW,GAAG,CAAC;QACb,CAAC,CAAC;MACJ,CAAC,CAAC;MACF,OAAO/G,MAAM,CAACgH,OAAO,CAAC,MAAK;QACzB,IAAI,CAACT,MAAM,EAAE;UACXE,OAAO,EAAE;UACT,OAAOzG,MAAM,CAACiH,IAAI;QACpB;QACA,OAAOjH,MAAM,CAACkH,QAAQ,CAACX,MAAM,EAAEvG,MAAM,CAACmH,IAAI,CAACV,OAAO,CAAC,CAAC;MACtD,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,EACDb,MAAM,GAAG5F,MAAM,CAACoH,OAAO,CAACxB,MAAM,CAAC,GAAGyB,UAAU,CAC7C;EAEH,MAAMA,UAAU,GAAGrH,MAAM,CAACmG,QAAQ,CAAwCC,MAAM,IAAI;IAClF,MAAMkB,KAAK,GAAGrH,KAAK,CAACsH,UAAU,EAAG;IACjC,MAAMC,KAAK,GAAG1H,OAAO,CAAC2H,SAAS,CAACH,KAAK,CAACI,OAAO,EAAElH,KAAK,CAACA,KAAK,CAAC;IAC3D,IAAIkE,KAAK,GAAsBhC,SAAS;IACxC,SAAS8D,OAAOA,CAACmB,MAAa;MAC5BjD,KAAK,GAAGiD,MAAM;IAChB;IACAtF,IAAI,CAACuE,OAAO,CAAC,CAACgB,GAAG,EAAEhC,MAAM,EAAEc,OAAO,KAAI;MACpC,IAAIkB,GAAG,EAAE;QACP,OAAOxB,MAAM,CACXpG,MAAM,CAACsF,IAAI,CACT,IAAIlE,QAAQ,CAAC;UACXuD,MAAM,EAAEC,aAAa,CACnBgD,GAAG,EACH,8CAA8C,EAC9C,mBAAmB;SAEtB,CAAC,CACH,CACF;MACH,CAAC,MAAM,IAAI,CAAChC,MAAM,EAAE;QAClB,OAAOQ,MAAM,CACXpG,MAAM,CAACsF,IAAI,CACT,IAAIlE,QAAQ,CAAC;UACXuD,MAAM,EAAE,IAAI5D,eAAe,CAAC;YAC1ByE,OAAO,EAAE,8CAA8C;YACvDd,KAAK,EAAE,IAAIa,KAAK,CAAC,oBAAoB,CAAC;YACtCE,SAAS,EAAE;WACZ;SACF,CAAC,CACH,CACF;MACH;MACAG,MAAM,CAACzB,EAAE,CAAC,OAAO,EAAEqC,OAAO,CAAC;MAC3BJ,MAAM,CAACpG,MAAM,CAAC6H,EAAE,CACdrH,KAAK,CAACsH,YAAY,CAChBN,KAAK,EACLxH,MAAM,CAACmH,IAAI,CAAC,MAAK;QACfvB,MAAM,CAACe,GAAG,CAAC,OAAO,EAAEH,OAAO,CAAC;QAC5BE,OAAO,CAAChC,KAAK,CAAC;MAChB,CAAC,CAAC,CACH,EACDkB,MAAM,CACP,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EACF,MAAMmC,OAAO,GAAG/H,MAAM,CAACgI,GAAG,CAACX,UAAU,EAAEtB,aAAa,CAAC;EAErD,MAAMkC,mBAAmB,GAAIC,CAAQ,IAAI,CACzC,CAAC;EAED,MAAMC,cAAc,GAAG,OAAO7H,KAAK,CAAC0B,IAAI,CAAC;IACvCG,OAAO,EAAEnC,MAAM,CAACqE,cAAc,CAC5BrE,MAAM,CAACsE,UAAU,CAAC;MAChBC,GAAG,EAAE,MAAAA,CAAA,KAAW;QACd,MAAMqB,MAAM,GAAG,IAAIlE,EAAE,CAACd,MAAM,CAACyB,IAAI,CAACJ,OAAO,CAAC;QAC1C,MAAM2D,MAAM,CAACgB,OAAO,EAAE;QACtBhB,MAAM,CAACzB,EAAE,CAAC,OAAO,EAAE8D,mBAAmB,CAAC;QACvC,OAAOrC,MAAM;MACf,CAAC;MACDnB,KAAK,EAAGC,KAAK,IACX,IAAItD,QAAQ,CAAC;QACXuD,MAAM,EAAEC,aAAa,CAACF,KAAK,EAAE,yCAAyC,EAAE,mBAAmB;OAC5F;KACJ,CAAC,EACDkB,MAAM,IACL5F,MAAM,CAAC6E,OAAO,CAAC,MAAK;MAClBe,MAAM,CAACe,GAAG,CAAC,OAAO,EAAEsB,mBAAmB,CAAC;MACxC,OAAOrC,MAAM,CAACd,GAAG,EAAE;IACrB,CAAC,CAAC,CAACC,IAAI,CACL/E,MAAM,CAACgF,aAAa,CAAC,IAAI,CAAC,CAC3B,EACH;MAAEC,aAAa,EAAE;IAAI,CAAE;GAE1B,CAAC;EAEF,IAAImD,MAAM,GAAmB;IAC3B5F,GAAG,EAAEH,IAAI,CAACJ,OAAO,CAACM,gBAAgB,GAAGhC,QAAQ,CAACyB,IAAI,CAACK,IAAI,CAACJ,OAAO,CAACM,gBAAgB,CAAC,GAAGG,SAAS;IAC7FG,IAAI,EAAER,IAAI,CAACJ,OAAO,CAACY,IAAI;IACvBI,IAAI,EAAEZ,IAAI,CAACJ,OAAO,CAACgB,IAAI;IACvBH,QAAQ,EAAET,IAAI,CAACJ,OAAO,CAACa,QAAQ;IAC/BF,QAAQ,EAAEP,IAAI,CAACJ,OAAO,CAACU,IAAI;IAC3BI,QAAQ,EAAE,OAAOV,IAAI,CAACJ,OAAO,CAACc,QAAQ,KAAK,QAAQ,GAAGxC,QAAQ,CAACyB,IAAI,CAACK,IAAI,CAACJ,OAAO,CAACc,QAAQ,CAAC,GAAGL,SAAS;IACtGM,GAAG,EAAEX,IAAI,CAACJ,OAAO,CAACe,GAAG;IACrBiB,eAAe,EAAE5B,IAAI,CAACJ,OAAO,CAAC+B,gBAAgB;IAC9CE,KAAK,EAAE7B,IAAI,CAACJ,OAAO,CAACiC;GACrB;EACD,IAAI7B,IAAI,CAACJ,OAAO,CAACM,gBAAgB,EAAE;IACjC;IACA,IAAI;MACF,MAAM8F,MAAM,GAAG1G,YAAY,CAAC2G,KAAK,CAACjG,IAAI,CAACJ,OAAO,CAACM,gBAAgB,CAAC;MAChE6F,MAAM,GAAG;QACP,GAAGA,MAAM;QACTvF,IAAI,EAAEuF,MAAM,CAACvF,IAAI,IAAIwF,MAAM,CAACxF,IAAI,IAAIH,SAAS;QAC7CO,IAAI,EAAEmF,MAAM,CAACnF,IAAI,KAAKoF,MAAM,CAACpF,IAAI,GAAG7C,MAAM,CAACmI,cAAc,CAACpI,MAAM,CAACmI,KAAK,CAACD,MAAM,CAACpF,IAAI,CAAC,CAAC,GAAGP,SAAS,CAAC;QACjGE,QAAQ,EAAEwF,MAAM,CAACxF,QAAQ,IAAIyF,MAAM,CAAC1F,IAAI,IAAID,SAAS;QACrDK,QAAQ,EAAEqF,MAAM,CAACrF,QAAQ,KAAKsF,MAAM,CAACtF,QAAQ,GAAGxC,QAAQ,CAACyB,IAAI,CAACqG,MAAM,CAACtF,QAAQ,CAAC,GAAGL,SAAS,CAAC;QAC3FI,QAAQ,EAAEsF,MAAM,CAACtF,QAAQ,IAAIuF,MAAM,CAACvF,QAAQ,IAAIJ;OACjD;IACH,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAO,OAAO8F,QAAQ,CAAC;IACrBC,QAAQ,EAAEzI,MAAM,CAACoH,OAAO,CAACrB,aAAa,EAAE,CAAC;IACzC2C,mBAAmB,EAAEX,OAAO;IAC5BI,cAAc,EAAE7H,KAAK,CAACqI,GAAG,CAACR,cAAc,CAAC;IACzCC,MAAM;IACNQ,cAAc,EAAE3G,OAAO,CAAC2G,cAAc;IACtCC,oBAAoB,EAAE5G,OAAO,CAAC4G,oBAAoB;IAClDC,mBAAmB,EAAE7G,OAAO,CAAC6G,mBAAmB;IAChDC,aAAa,EAAE9G,OAAO,CAAC8G;GACxB,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;AAMA,OAAO,MAAMpD,UAAU,gBAAG3F,MAAM,CAAC8F,UAAU,CAAC,WAC1C7D,OAeC;EAED,SAASuE,OAAOA,CAAA,GAAI;EACpB,MAAMwC,uBAAuB,GAAG/G,OAAO,CAACE,OAAO,CAAC4C,IAAI,CAClD/E,MAAM,CAACiJ,GAAG,CAAErD,MAAM,IAAI;IACpBA,MAAM,CAACzB,EAAE,CAAC,OAAO,EAAEqC,OAAO,CAAC;IAC3B,OAAOxG,MAAM,CAAC8H,YAAY,CAAC,MAAK;MAC9BlC,MAAM,CAACe,GAAG,CAAC,OAAO,EAAEH,OAAO,CAAC;MAC5B,OAAOxG,MAAM,CAACiH,IAAI;IACpB,CAAC,CAAC;EACJ,CAAC,CAAC,CACH;EACD,MAAMrB,MAAM,GAAG,OAAOoD,uBAAuB;EAE7C,MAAME,SAAS,GAAGzI,SAAS,CAAC0I,UAAU,CAAC,CAAC,CAAC;EACzC,IAAIC,YAAY,GAAGnH,OAAO,CAAC4D,gBAAgB,GAAGmD,uBAAuB,GAAGhJ,MAAM,CAACqE,cAAc,CAC3FrE,MAAM,CAAC6H,EAAE,CAACqB,SAAS,CAACG,IAAI,CAAC,CAAC,CAAC,EAAEzD,MAAM,CAAC,EACpC,MAAMsD,SAAS,CAACxC,OAAO,CAAC,CAAC,CAAC,CAC3B;EAED,MAAMX,aAAa,GAAIH,MAAiB,IACtC,IAAII,cAAc,CAChB,SAASC,aAAaA,CAAIC,CAAmF;IAC3G,OAAOlG,MAAM,CAACmG,QAAQ,CAAeC,MAAM,IAAI;MAC7CF,CAAC,CAACN,MAAM,EAAEQ,MAAM,CAAC;IACnB,CAAC,CAAC;EACJ,CAAC,EACDgD,YAAY,CACb;EACH,MAAME,UAAU,GAAGvD,aAAa,CAACH,MAAM,CAAC;EACxC,MAAM6C,QAAQ,GAAGS,SAAS,CAACK,UAAU,CAACvJ,MAAM,CAACoH,OAAO,CAACkC,UAAU,CAAC,CAAC;EAEjE,MAAMlB,MAAM,GAAmB;IAC7B,GAAGnG,OAAO;IACVY,IAAI,EAAE+C,MAAM,CAAC/C,IAAI;IACjBI,IAAI,EAAE2C,MAAM,CAAC3C,IAAI;IACjBH,QAAQ,EAAE8C,MAAM,CAAC9C,QAAQ;IACzBF,QAAQ,EAAEgD,MAAM,CAACjD,IAAI;IACrBI,QAAQ,EAAE,OAAO6C,MAAM,CAAC7C,QAAQ,KAAK,QAAQ,GAAGxC,QAAQ,CAACyB,IAAI,CAAC4D,MAAM,CAAC7C,QAAQ,CAAC,GAAGL,SAAS;IAC1FM,GAAG,EAAE4C,MAAM,CAAC5C;GACb;EAED,OAAO,OAAOwF,QAAQ,CAAC;IACrBC,QAAQ;IACRC,mBAAmB,EAAED,QAAQ;IAC7BN,cAAc,EAAEiB,YAAY;IAC5BhB,MAAM;IACNQ,cAAc,EAAE3G,OAAO,CAAC2G,cAAc;IACtCC,oBAAoB,EAAE5G,OAAO,CAAC4G,oBAAoB;IAClDC,mBAAmB,EAAE7G,OAAO,CAAC6G,mBAAmB;IAChDC,aAAa,EAAE9G,OAAO,CAAC8G;GACxB,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;AAMA,OAAO,MAAMP,QAAQ,gBAAGxI,MAAM,CAAC8F,UAAU,CAAC,WACxC7D,OAWC;EAED,MAAMuH,QAAQ,GAAGC,YAAY,CAC3BxH,OAAO,CAAC6G,mBAAmB,EAC3B7G,OAAO,CAAC8G,aAAa,CACtB;EACD,MAAMW,aAAa,GAAGzH,OAAO,CAAC4G,oBAAoB,GAChDpH,SAAS,CAACkI,iBAAiB,CACzB1H,OAAO,CAAC4G,oBAAoB,EAC5B5G,OAAO,CAAC8G,aAAa,CACtB,CAACa,KAAK,GACPlH,SAAS;EAEX,MAAM0F,MAAM,GAAGnG,OAAO,CAACmG,MAAM;EAE7B,OAAOyB,MAAM,CAACC,MAAM,CAClB,OAAOlJ,MAAM,CAACoB,IAAI,CAAC;IACjByG,QAAQ,EAAExG,OAAO,CAACwG,QAAQ;IAC1BC,mBAAmB,EAAEzG,OAAO,CAACyG,mBAAmB;IAChDc,QAAQ;IACRZ,cAAc,EAAE,CACd,IAAI3G,OAAO,CAAC2G,cAAc,GAAGiB,MAAM,CAACE,OAAO,CAAC9H,OAAO,CAAC2G,cAAc,CAAC,GAAG,EAAE,CAAC,EACzE,CAACoB,mBAAmB,EAAE,YAAY,CAAC,EACnC,CAACC,iBAAiB,EAAE7B,MAAM,CAACtF,QAAQ,IAAIsF,MAAM,CAACxF,QAAQ,IAAI,UAAU,CAAC,EACrE,CAACsH,mBAAmB,EAAE9B,MAAM,CAACvF,IAAI,IAAI,WAAW,CAAC,EACjD,CAACsH,gBAAgB,EAAE/B,MAAM,CAACnF,IAAI,IAAI,IAAI,CAAC,CACxC;IACDyG;GACD,CAAC,EACF;IACE,CAAC7H,MAAM,GAAGA,MAAgB;IAC1BuG,MAAM,EAAEnG,OAAO,CAACmG,MAAM;IACtBgC,IAAI,EAAGlC,CAAU,IAAKzG,SAAS,CAAC4I,QAAQ,CAAC,CAACC,MAAM,CAACpC,CAAC,CAAC,CAAC,CAAC;IACrDqC,MAAM,EAAGC,OAAe,IACtB9J,MAAM,CAACyF,QAAQ,CAAmBnG,MAAM,CAAC8F,UAAU,CAAC,WAAU2E,KAAK;MACjE,MAAM7E,MAAM,GAAG,OAAO3D,OAAO,CAACkG,cAAc;MAC5C,SAASuC,cAAcA,CAACC,GAAoB;QAC1C,IAAIA,GAAG,CAACH,OAAO,KAAKA,OAAO,IAAIG,GAAG,CAACC,OAAO,EAAE;UAC1CvK,KAAK,CAACwK,WAAW,CAACJ,KAAK,EAAEE,GAAG,CAACC,OAAO,CAAC;QACvC;MACF;MACA,OAAO5K,MAAM,CAAC8H,YAAY,CAAC,MACzB9H,MAAM,CAAC6E,OAAO,CAAC,MAAK;QAClBe,MAAM,CAACe,GAAG,CAAC,cAAc,EAAE+D,cAAc,CAAC;QAC1C,OAAO9E,MAAM,CAACpB,KAAK,CAAC,YAAY9C,EAAE,CAACoJ,gBAAgB,CAACN,OAAO,CAAC,EAAE,CAAC;MACjE,CAAC,CAAC,CACH;MACD,OAAOxK,MAAM,CAACsE,UAAU,CAAC;QACvBC,GAAG,EAAEA,CAAA,KAAMqB,MAAM,CAACpB,KAAK,CAAC,UAAU9C,EAAE,CAACoJ,gBAAgB,CAACN,OAAO,CAAC,EAAE,CAAC;QACjE/F,KAAK,EAAGC,KAAK,IAAK,IAAItD,QAAQ,CAAC;UAAEuD,MAAM,EAAEC,aAAa,CAACF,KAAK,EAAE,kBAAkB,EAAE,QAAQ;QAAC,CAAE;OAC9F,CAAC;MACFkB,MAAM,CAACzB,EAAE,CAAC,cAAc,EAAEuG,cAAc,CAAC;IAC3C,CAAC,CAAC,CAAC;IACLK,MAAM,EAAEA,CAACP,OAAe,EAAEI,OAAe,KACvC5K,MAAM,CAACgL,MAAM,CAAChL,MAAM,CAACiL,MAAM,CAACjL,MAAM,CAACkL,OAAO,CACxCjJ,OAAO,CAACwG,QAAQ,EACf0C,IAAI,IAAKA,IAAI,CAACC,UAAU,CAAC,0BAA0B,EAAE,CAACZ,OAAO,EAAEI,OAAO,CAAC,CAAC,CAC1E,CAAC;GACL,CACF;AACH,CAAC,CAAC;AAEF,MAAM5E,cAAc;EAClBqF,YACEpF,aAE+B,EAC/B8B,OAA4D;IAE5D,IAAI,CAAC9B,aAAa,GAAGA,aAAa;IAClC,IAAI,CAAC8B,OAAO,GAAGA,OAAO;EACxB;EAEiB9B,aAAa;EAGb8B,OAAO;EAEhBuD,GAAGA,CAAC9G,KAAa,EAAE+G,MAA8B;IACvD,OAAO,IAAI,CAACtF,aAAa,CAAqB,CAACL,MAAM,EAAEQ,MAAM,KAAI;MAC/DR,MAAM,CAACpB,KAAK,CAACA,KAAK,EAAE+G,MAAa,EAAE,CAAC3D,GAAG,EAAE4D,MAAM,KAAI;QACjD,IAAI5D,GAAG,EAAE;UACPxB,MAAM,CACJpG,MAAM,CAACsF,IAAI,CAAC,IAAIlE,QAAQ,CAAC;YAAEuD,MAAM,EAAEC,aAAa,CAACgD,GAAG,EAAE,6BAA6B,EAAE,SAAS;UAAC,CAAE,CAAC,CAAC,CACpG;QACH,CAAC,MAAM;UACL;UACAxB,MAAM,CAACpG,MAAM,CAACoH,OAAO,CACnBqE,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,GACjBA,MAAM,CAACxD,GAAG,CAAE2D,CAAC,IAAKA,CAAC,CAACC,IAAI,IAAI,EAAE,CAAC,GAC/BJ,MAAM,CAACI,IAAI,IAAI,EAAE,CACtB,CAAC;QACJ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEAC,OAAOA,CACLC,GAAW,EACXP,MAA8B,EAC9B7B,aAA0F;IAE1F,OAAOA,aAAa,GAChB1J,MAAM,CAACgI,GAAG,CAAC,IAAI,CAACsD,GAAG,CAACQ,GAAG,EAAEP,MAAM,CAAC,EAAE7B,aAAa,CAAC,GAChD,IAAI,CAAC4B,GAAG,CAACQ,GAAG,EAAEP,MAAM,CAAC;EAC3B;EACAH,UAAUA,CAACU,GAAW,EAAEP,MAA8B;IACpD,OAAO,IAAI,CAACtF,aAAa,CAAY,CAACL,MAAM,EAAEQ,MAAM,KAAI;MACtDR,MAAM,CAACpB,KAAK,CAACsH,GAAG,EAAEP,MAAa,EAAE,CAAC3D,GAAG,EAAE4D,MAAM,KAAI;QAC/C,IAAI5D,GAAG,EAAE;UACPxB,MAAM,CACJpG,MAAM,CAACsF,IAAI,CAAC,IAAIlE,QAAQ,CAAC;YAAEuD,MAAM,EAAEC,aAAa,CAACgD,GAAG,EAAE,6BAA6B,EAAE,SAAS;UAAC,CAAE,CAAC,CAAC,CACpG;QACH,CAAC,MAAM;UACLxB,MAAM,CAACpG,MAAM,CAACoH,OAAO,CAACoE,MAAM,CAAC,CAAC;QAChC;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EACAO,uBAAuBA,CAACD,GAAW,EAAEP,MAA8B;IACjE,OAAO,IAAI,CAACD,GAAG,CAACQ,GAAG,EAAEP,MAAM,CAAC;EAC9B;EACAS,aAAaA,CAACF,GAAW,EAAEP,MAA8B;IACvD,OAAO,IAAI,CAACtF,aAAa,CAAqB,CAACL,MAAM,EAAEQ,MAAM,KAAI;MAC/DR,MAAM,CAACpB,KAAK,CACV;QACEyH,IAAI,EAAEH,GAAG;QACTI,OAAO,EAAE,OAAO;QAChBC,MAAM,EAAEZ;OACT,EACD,CAAC3D,GAAG,EAAE4D,MAAM,KAAI;QACd,IAAI5D,GAAG,EAAE;UACPxB,MAAM,CACJpG,MAAM,CAACsF,IAAI,CAAC,IAAIlE,QAAQ,CAAC;YAAEuD,MAAM,EAAEC,aAAa,CAACgD,GAAG,EAAE,6BAA6B,EAAE,SAAS;UAAC,CAAE,CAAC,CAAC,CACpG;QACH,CAAC,MAAM;UACLxB,MAAM,CAACpG,MAAM,CAACoH,OAAO,CAACoE,MAAM,CAACI,IAAI,CAAC,CAAC;QACrC;MACF,CAAC,CACF;IACH,CAAC,CAAC;EACJ;EACAQ,iBAAiBA,CACfN,GAAW,EACXP,MAA8B,EAC9B7B,aAA0F;IAE1F,OAAO,IAAI,CAACmC,OAAO,CAACC,GAAG,EAAEP,MAAM,EAAE7B,aAAa,CAAC;EACjD;EACA2C,aAAaA,CACXP,GAAW,EACXP,MAA8B,EAC9B7B,aAA0F;IAE1F;IACA,MAAM4C,IAAI,GAAG,IAAI;IACjB,OAAO5L,MAAM,CAAC6L,WAAW,CAAC3M,OAAO,CAAC4M,aAAa,CAACxM,MAAM,CAAC8F,UAAU,CAAC,WAAUoC,CAAC,EAAEV,KAAK;MAClF,MAAM5B,MAAM,GAAG,OAAOpF,KAAK,CAACiM,OAAO,CAACH,IAAI,CAACvE,OAAO,EAAEP,KAAK,CAAC;MACxD,OAAOhH,KAAK,CAACsH,YAAY,CAACN,KAAK,EAAExH,MAAM,CAAC6E,OAAO,CAAC,MAAM6H,MAAM,CAACC,KAAK,EAAE,CAAC,CAAC;MACtE,MAAMD,MAAM,GAAG9G,MAAM,CAACpB,KAAK,CAAC,IAAI5C,MAAM,CAACkK,GAAG,EAAEP,MAAa,CAAC,CAAC;MAC3D;MACA,OAAOvL,MAAM,CAACmG,QAAQ,CAAyDC,MAAM,IAAI;QACvFsG,MAAM,CAACE,IAAI,CAAC,GAAG,EAAE,CAAChF,GAAG,EAAEgE,IAAI,KAAI;UAC7B,IAAIhE,GAAG,EAAE;YACPxB,MAAM,CAACpG,MAAM,CAACsF,IAAI,CAAC,IAAIlE,QAAQ,CAAC;cAAEuD,MAAM,EAAEC,aAAa,CAACgD,GAAG,EAAE,6BAA6B,EAAE,QAAQ;YAAC,CAAE,CAAC,CAAC,CAAC;UAC5G,CAAC,MAAM,IAAIlI,GAAG,CAACmN,eAAe,CAACjB,IAAI,CAAC,EAAE;YACpCxF,MAAM,CAACpG,MAAM,CAACoH,OAAO,CAACsC,aAAa,GAAGA,aAAa,CAACkC,IAAI,CAAQ,GAAGA,IAAI,CAAC,CAAC;UAC3E,CAAC,MAAM;YACLxF,MAAM,CAACzG,KAAK,CAAC2G,IAAI,EAAE,CAAC;UACtB;QACF,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC,CAAC;EACN;;AAGF,MAAMwG,aAAa,gBAAG,IAAIC,OAAO,EAAkD;AACnF,MAAM1G,UAAU,GAAGA,CAAChE,IAAa,EAAEuD,MAAqB,KAAI;EAC1D,IAAIkH,aAAa,CAACE,GAAG,CAACpH,MAAM,CAAC,EAAE;IAC7B,OAAOkH,aAAa,CAACnE,GAAG,CAAC/C,MAAM,CAAE;EACnC;EACA,MAAMqH,SAAS,GAAIrH,MAAc,CAACsH,SAAS;EAC3C,MAAMnG,GAAG,GAAGkG,SAAS,KAAKvK;EACxB;EAAA,EACE1C,MAAM,CAACmG,QAAQ,CAAQC,MAAM,IAAI;IACjC,IAAI/D,IAAI,CAAC8K,MAAM,EAAE,OAAO/G,MAAM,CAACpG,MAAM,CAACiH,IAAI,CAAC;IAC3C5E,IAAI,CAACmC,KAAK,CAAC,4BAA4ByI,SAAS,GAAG,EAAE,MAAK;MACxD7G,MAAM,CAACpG,MAAM,CAACiH,IAAI,CAAC;IACrB,CAAC,CAAC;EACJ,CAAC,CAAC,CAAClC,IAAI,CACL/E,MAAM,CAACiF,aAAa,EACpBjF,MAAM,CAACgF,aAAa,CAAC,IAAI,CAAC,CAC3B,GACCtC,SAAS;EACboK,aAAa,CAACM,GAAG,CAACxH,MAAM,EAAEmB,GAAG,CAAC;EAC9B,OAAOA,GAAG;AACZ,CAAC;AAED;;;;;;AAMA,OAAO,MAAMsG,SAAS,GACpBlL,OAAsC,IAEtCjC,KAAK,CAACoN,aAAa,CACjBtN,MAAM,CAACgI,GAAG,CAAC7F,OAAO,EAAGyD,MAAM,IACzB9F,OAAO,CAACkC,IAAI,CAACF,QAAQ,EAAE8D,MAAM,CAAC,CAACb,IAAI,CACjCjF,OAAO,CAACyN,GAAG,CAAC3M,MAAM,CAAC4M,SAAS,EAAE5H,MAAM,CAAC,CACtC,CAAC,CACL,CAACb,IAAI,CAAC7E,KAAK,CAACuM,OAAO,CAAC9L,UAAU,CAAC8M,KAAK,CAAC,CAAQ;AAEhD;;;;;;AAMA,OAAO,MAAMC,WAAW,GAGtBtF,MAAiC,IAEjCiF,SAAS,CAACrN,MAAM,CAACkL,OAAO,CACtBrL,MAAM,CAAC8N,MAAM,CAACvF,MAAM,CAAC,EACrBpG,IAAI,CACL,CAAC;AAEJ;;;;;;AAMA,OAAO,MAAMyL,KAAK,GAChBrF,MAAoB,IACmCiF,SAAS,CAACrL,IAAI,CAACoG,MAAM,CAAC,CAAC;AAEhF;;;;;;AAMA,OAAO,MAAMqB,YAAY,GAAGA,CAC1BmE,SAAiC,EACjC7E,aAAa,GAAG,IAAI,KACE;EACtB,MAAM8E,cAAc,GAAG9E,aAAa,IAAI6E,SAAS,GAC7CnM,SAAS,CAACkI,iBAAiB,CAACiE,SAAS,CAAC,CAACnL,KAAK,GAC5CC,SAAS;EAEb,OAAOjB,SAAS,CAACgI,YAAY,CAAW;IACtCqE,OAAO,EAAE,IAAI;IACbC,WAAWA,CAAC7F,CAAC;MACX,OAAO,IAAIA,CAAC,EAAE;IAChB,CAAC;IACD8F,YAAY,EAAEJ,SAAS,GACrB,UAASnL,KAAK,EAAEwL,gBAAgB;MAC9B,OAAOA,gBAAgB,GAAGC,MAAM,CAACzL,KAAK,CAAC,GAAGyL,MAAM,CAACN,SAAS,CAACnL,KAAK,CAAC,CAAC;IACpE,CAAC,GACDyL,MAAM;IACRC,cAAcA,CAACC,YAAY,EAAEC,UAAU,EAAEC,YAAY,EAAEnC,MAAM,EAAEoC,SAAS;MACtE,OAAO,CACL,WAAWH,YAAY,QAAQC,UAAU,GAAGC,YAAY,GAAGC,SAAS,GAAG,cAAcA,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAC1GA,SAAS,GACPpC,MAAM,CAACqC,IAAI,EAAE,CAACC,MAAM,CAACF,SAAS,CAAC,CAAC,CAAC,CAAC,GAClCpC,MAAM,CAACqC,IAAI,EAAE,CAChB;IACH,CAAC;IACDE,QAAQA,CAACC,IAAI,EAAEZ,WAAW,EAAEE,gBAAgB;MAC1C,QAAQU,IAAI,CAACC,IAAI;QACf,KAAK,QAAQ;UAAE;YACb,OAAO,CACLb,WAAW,CAACrL,SAAS,CAAC,EACtB,CACEuL,gBAAgB,IAAIJ,cAAc,KAAKnL,SAAS,GAC5CiM,IAAI,CAACE,MAAM,GACXhB,cAAc,CAACc,IAAI,CAACE,MAAM,CAAC,CAChC,CACF;UACH;MACF;IACF;GACD,CAAC;AACJ,CAAC;AAED,MAAMX,MAAM,gBAAGzM,SAAS,CAACqN,aAAa,CAAC,IAAI,CAAC;AAe5C;;;;AAIA,MAAMxE,MAAM,gBAAG7I,SAAS,CAACsN,MAAM,CAAS,QAAQ,CAAC;AAEjD,MAAM/E,mBAAmB,GAAG,gBAAgB;AAC5C,MAAMC,iBAAiB,GAAG,cAAc;AACxC,MAAMC,mBAAmB,GAAG,gBAAgB;AAC5C,MAAMC,gBAAgB,GAAG,aAAa;AAEtC,MAAM6E,eAAe,GAAItK,KAAc,IAAwB;EAC7D,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,IAAI,EAAE,MAAM,IAAIA,KAAK,CAAC,EAAE;IACrE,OAAOhC,SAAS;EAClB;EACA,MAAMuM,IAAI,GAAGvK,KAAK,CAACuK,IAAI;EACvB,OAAO,OAAOA,IAAI,KAAK,QAAQ,GAAGA,IAAI,GAAGvM,SAAS;AACpD,CAAC;AAED,MAAMwM,qBAAqB,GAAIxK,KAAc,IAAY;EACvD,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,IAAI,EAAE,YAAY,IAAIA,KAAK,CAAC,EAAE;IAC3E,OAAO,SAAS;EAClB;EACA,MAAMyK,UAAU,GAAGzK,KAAK,CAACyK,UAAU;EACnC,IAAI,OAAOA,UAAU,KAAK,QAAQ,EAAE;IAClC,OAAO,SAAS;EAClB;EACA,MAAMC,UAAU,GAAGD,UAAU,CAACE,IAAI,EAAE;EACpC,OAAOD,UAAU,CAACE,MAAM,KAAK,CAAC,GAAG,SAAS,GAAGF,UAAU;AACzD,CAAC;AAED,MAAMxK,aAAa,GAAGA,CACpBF,KAAc,EACdc,OAAe,EACfC,SAAiB,KACf;EACF,MAAM8J,KAAK,GAAG;IAAE7K,KAAK;IAAEc,OAAO;IAAEC;EAAS,CAAE;EAC3C,MAAMwJ,IAAI,GAAGD,eAAe,CAACtK,KAAK,CAAC;EACnC,IAAIuK,IAAI,KAAKvM,SAAS,EAAE;IACtB,IAAIuM,IAAI,CAACO,UAAU,CAAC,IAAI,CAAC,EAAE;MACzB,OAAO,IAAIzO,eAAe,CAACwO,KAAK,CAAC;IACnC;IACA,IAAIN,IAAI,CAACO,UAAU,CAAC,IAAI,CAAC,EAAE;MACzB,OAAO,IAAI3O,mBAAmB,CAAC0O,KAAK,CAAC;IACvC;IACA,IAAIN,IAAI,KAAK,OAAO,EAAE;MACpB,OAAO,IAAInO,kBAAkB,CAACyO,KAAK,CAAC;IACtC;IACA,IAAIN,IAAI,CAACO,UAAU,CAAC,IAAI,CAAC,EAAE;MACzB,OAAO,IAAInO,cAAc,CAACkO,KAAK,CAAC;IAClC;IACA,IAAIN,IAAI,KAAK,OAAO,EAAE;MACpB,OAAO,IAAI1N,eAAe,CAAC;QAAE,GAAGgO,KAAK;QAAEJ,UAAU,EAAED,qBAAqB,CAACxK,KAAK;MAAC,CAAE,CAAC;IACpF;IACA,IAAIuK,IAAI,CAACO,UAAU,CAAC,IAAI,CAAC,EAAE;MACzB,OAAO,IAAIxO,eAAe,CAACuO,KAAK,CAAC;IACnC;IACA,IAAIN,IAAI,KAAK,OAAO,EAAE;MACpB,OAAO,IAAIhO,aAAa,CAACsO,KAAK,CAAC;IACjC;IACA,IAAIN,IAAI,KAAK,OAAO,EAAE;MACpB,OAAO,IAAI9N,kBAAkB,CAACoO,KAAK,CAAC;IACtC;IACA,IAAIN,IAAI,KAAK,OAAO,EAAE;MACpB,OAAO,IAAI/N,gBAAgB,CAACqO,KAAK,CAAC;IACpC;IACA,IAAIN,IAAI,KAAK,OAAO,EAAE;MACpB,OAAO,IAAI3N,qBAAqB,CAACiO,KAAK,CAAC;IACzC;EACF;EACA,OAAO,IAAI/N,YAAY,CAAC+N,KAAK,CAAC;AAChC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"PgClient.js","names":["Arr","Cause","Channel","Config","Context","Duration","Effect","Fiber","Layer","Number","Option","Queue","RcRef","Redacted","Scope","Semaphore","Stream","Reactivity","Client","AuthenticationError","AuthorizationError","ConnectionError","ConstraintError","DeadlockError","LockTimeoutError","SerializationError","SqlError","SqlSyntaxError","StatementTimeoutError","UniqueViolation","UnknownError","Statement","Pg","PgConnString","Cursor","TypeId","PgClient","Service","make","options","fromPool","acquire","gen","pool","Pool","connectionString","url","value","undefined","user","username","host","database","password","ssl","port","stream","connectionTimeoutMillis","connectTimeout","toMillis","fromInputUnsafe","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","reason","classifyError","promise","end","pipe","timeoutOption","interruptible","timeoutOrElse","duration","seconds","orElse","fail","Error","message","operation","makeClient","fromClient","client","acquireForStream","fnUntraced","makeConection","ConnectionImpl","runWithClient","f","callback","resume","makeCancel","done","cancel","onError","cleanup","release","off","connect","client_","once","eff","suspend","void","ensuring","sync","succeed","reserveRaw","fiber","getCurrent","scope","getUnsafe","context","cause_","err","as","addFinalizer","reserve","map","onListenClientError","_","listenAcquirer","config","parsed","parse","getOrUndefined","makeWith","acquirer","transactionAcquirer","get","spanAttributes","transformResultNames","transformQueryNames","transformJson","acquireWithErrorHandler","tap","semaphore","makeUnsafe","streamClient","take","connection","withPermit","compiler","makeCompiler","transformRows","defaultTransforms","array","Object","assign","entries","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","json","fragment","PgJson","listen","channel","queue","onNotification","msg","payload","offerUnsafe","escapeIdentifier","notify","asVoid","scoped","flatMap","conn","executeRaw","constructor","run","params","result","Array","isArray","r","rows","execute","sql","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","fromChannel","fromTransform","provide","cursor","close","read","isArrayNonEmpty","cancelEffects","WeakMap","has","processId","processID","ending","set","layerFrom","effectContext","add","SqlClient","layer","layerConfig","unwrap","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","paramA","defaultEscape","custom","pgCodeFromCause","code","pgConstraintFromCause","constraint","normalized","trim","length","props","startsWith"],"sources":["../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,23 +1,39 @@
1
1
  /**
2
- * Utilities for applying Effect SQL migrations to PostgreSQL databases.
3
- *
4
- * This module re-exports the shared `Migrator` loaders and error types, then
5
- * provides `run` and `layer` helpers for applying ordered migrations through
6
- * the current PostgreSQL `SqlClient` and `PgClient`. It is typically used at
7
- * application startup, during deployment, in integration tests that provision a
8
- * temporary PostgreSQL database, or in layer graphs that must prepare the
9
- * schema before dependent services are acquired.
10
- *
11
- * Migrations are recorded in `effect_sql_migrations` by default and are loaded
12
- * using the shared `<id>_<name>` file or record-key convention. Only migrations
13
- * with an id greater than the latest recorded id are applied, so concurrent
14
- * application instances should coordinate startup against the same database and
15
- * avoid racing to install the same changes. When `schemaDirectory` is enabled,
16
- * this adapter shells out to `pg_dump` using the active `PgClient`
17
- * configuration, so `pg_dump` must be available on `PATH` and the layer must
18
- * provide child process, filesystem, and path services. The generated dumps
19
- * intentionally strip comments, session settings, ownership, and privilege
20
- * statements to keep schema snapshots portable across PostgreSQL environments.
2
+ * PostgreSQL migration support for Effect SQL applications.
3
+ *
4
+ * This module adapts the shared SQL migrator to PostgreSQL. It re-exports the
5
+ * common migration loaders and errors, then provides {@link run} and
6
+ * {@link layer} helpers that execute pending migrations with the current
7
+ * `SqlClient` and `PgClient`.
8
+ *
9
+ * **Mental model**
10
+ *
11
+ * Migrations are numbered operations loaded from files, records, or bundler
12
+ * glob results. The migrator ensures the migrations table exists, reads the
13
+ * latest recorded id, and runs only migrations with a greater id. PostgreSQL
14
+ * runs use the configured `PgClient` connection details for both migration SQL
15
+ * and optional schema dumps.
16
+ *
17
+ * **Common tasks**
18
+ *
19
+ * - Run migrations explicitly with {@link run} during startup or deployment
20
+ * - Add migrations to a layer graph with {@link layer} so dependent services
21
+ * are acquired after the schema is prepared
22
+ * - Reuse the shared loaders such as `fromGlob`, `fromRecord`, and
23
+ * `fromFileSystem`
24
+ * - Enable `schemaDirectory` to write a portable schema snapshot after a
25
+ * successful migration run
26
+ *
27
+ * **Gotchas**
28
+ *
29
+ * - The default migrations table is `effect_sql_migrations`; use `table` when a
30
+ * database needs a different name
31
+ * - Only migrations with an id greater than the latest recorded id are run, so
32
+ * editing an older migration does not make it run again
33
+ * - Schema dumps shell out to `pg_dump`, so `pg_dump` must be on `PATH` and the
34
+ * layer must provide child process, filesystem, and path services
35
+ * - Generated dumps intentionally omit comments, session settings, ownership,
36
+ * and privilege statements to keep snapshots portable
21
37
  *
22
38
  * @since 4.0.0
23
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PgMigrator.d.ts","sourceRoot":"","sources":["../src/PgMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AAGnC,OAAO,KAAK,mBAAmB,MAAM,6CAA6C,CAAA;AAClF,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,EAC3B,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAClC,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAChC,SAAS,GACT,QAAQ,GACR,mBAAmB,CAAC,mBAAmB,GACvC,UAAU,CAAC,UAAU,GACrB,IAAI,CAAC,IAAI,GACT,EAAE,CAwDJ,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EACrB,SAAS,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAChC,SAAS,GACT,QAAQ,GACR,mBAAmB,CAAC,mBAAmB,GACvC,UAAU,CAAC,UAAU,GACrB,IAAI,CAAC,IAAI,GACT,CAAC,CACiC,CAAA"}
1
+ {"version":3,"file":"PgMigrator.d.ts","sourceRoot":"","sources":["../src/PgMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AAGnC,OAAO,KAAK,mBAAmB,MAAM,6CAA6C,CAAA;AAClF,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,EAC3B,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAClC,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAChC,SAAS,GACT,QAAQ,GACR,mBAAmB,CAAC,mBAAmB,GACvC,UAAU,CAAC,UAAU,GACrB,IAAI,CAAC,IAAI,GACT,EAAE,CAwDJ,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EACrB,SAAS,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAChC,SAAS,GACT,QAAQ,GACR,mBAAmB,CAAC,mBAAmB,GACvC,UAAU,CAAC,UAAU,GACrB,IAAI,CAAC,IAAI,GACT,CAAC,CACiC,CAAA"}
@@ -1,23 +1,39 @@
1
1
  /**
2
- * Utilities for applying Effect SQL migrations to PostgreSQL databases.
2
+ * PostgreSQL migration support for Effect SQL applications.
3
3
  *
4
- * This module re-exports the shared `Migrator` loaders and error types, then
5
- * provides `run` and `layer` helpers for applying ordered migrations through
6
- * the current PostgreSQL `SqlClient` and `PgClient`. It is typically used at
7
- * application startup, during deployment, in integration tests that provision a
8
- * temporary PostgreSQL database, or in layer graphs that must prepare the
9
- * schema before dependent services are acquired.
4
+ * This module adapts the shared SQL migrator to PostgreSQL. It re-exports the
5
+ * common migration loaders and errors, then provides {@link run} and
6
+ * {@link layer} helpers that execute pending migrations with the current
7
+ * `SqlClient` and `PgClient`.
10
8
  *
11
- * Migrations are recorded in `effect_sql_migrations` by default and are loaded
12
- * using the shared `<id>_<name>` file or record-key convention. Only migrations
13
- * with an id greater than the latest recorded id are applied, so concurrent
14
- * application instances should coordinate startup against the same database and
15
- * avoid racing to install the same changes. When `schemaDirectory` is enabled,
16
- * this adapter shells out to `pg_dump` using the active `PgClient`
17
- * configuration, so `pg_dump` must be available on `PATH` and the layer must
18
- * provide child process, filesystem, and path services. The generated dumps
19
- * intentionally strip comments, session settings, ownership, and privilege
20
- * statements to keep schema snapshots portable across PostgreSQL environments.
9
+ * **Mental model**
10
+ *
11
+ * Migrations are numbered operations loaded from files, records, or bundler
12
+ * glob results. The migrator ensures the migrations table exists, reads the
13
+ * latest recorded id, and runs only migrations with a greater id. PostgreSQL
14
+ * runs use the configured `PgClient` connection details for both migration SQL
15
+ * and optional schema dumps.
16
+ *
17
+ * **Common tasks**
18
+ *
19
+ * - Run migrations explicitly with {@link run} during startup or deployment
20
+ * - Add migrations to a layer graph with {@link layer} so dependent services
21
+ * are acquired after the schema is prepared
22
+ * - Reuse the shared loaders such as `fromGlob`, `fromRecord`, and
23
+ * `fromFileSystem`
24
+ * - Enable `schemaDirectory` to write a portable schema snapshot after a
25
+ * successful migration run
26
+ *
27
+ * **Gotchas**
28
+ *
29
+ * - The default migrations table is `effect_sql_migrations`; use `table` when a
30
+ * database needs a different name
31
+ * - Only migrations with an id greater than the latest recorded id are run, so
32
+ * editing an older migration does not make it run again
33
+ * - Schema dumps shell out to `pg_dump`, so `pg_dump` must be on `PATH` and the
34
+ * layer must provide child process, filesystem, and path services
35
+ * - Generated dumps intentionally omit comments, session settings, ownership,
36
+ * and privilege statements to keep snapshots portable
21
37
  *
22
38
  * @since 4.0.0
23
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PgMigrator.js","names":["Effect","FileSystem","Layer","Path","Redacted","ChildProcess","ChildProcessSpawner","Migrator","PgClient","run","make","dumpSchema","path","table","pgDump","args","gen","sql","spawner","dump","env","PATH","globalThis","process","PGHOST","config","host","PGPORT","port","toString","PGUSER","username","PGPASSWORD","password","value","undefined","PGDATABASE","database","PGSSLMODE","ssl","pipe","string","replace","trim","mapError","error","MigrationError","kind","message","pgDumpSchema","pgDumpMigrations","pgDumpAll","map","all","concurrency","schema","migrations","pgDumpFile","fs","path_","makeDirectory","dirname","recursive","writeFileString","layer","options","effectDiscard"],"sources":["../src/PgMigrator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PgMigrator.js","names":["Effect","FileSystem","Layer","Path","Redacted","ChildProcess","ChildProcessSpawner","Migrator","PgClient","run","make","dumpSchema","path","table","pgDump","args","gen","sql","spawner","dump","env","PATH","globalThis","process","PGHOST","config","host","PGPORT","port","toString","PGUSER","username","PGPASSWORD","password","value","undefined","PGDATABASE","database","PGSSLMODE","ssl","pipe","string","replace","trim","mapError","error","MigrationError","kind","message","pgDumpSchema","pgDumpMigrations","pgDumpAll","map","all","concurrency","schema","migrations","pgDumpFile","fs","path_","makeDirectory","dirname","recursive","writeFileString","layer","options","effectDiscard"],"sources":["../src/PgMigrator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/index.d.ts CHANGED
@@ -2,47 +2,10 @@
2
2
  * @since 4.0.0
3
3
  */
4
4
  /**
5
- * PostgreSQL client implementation for Effect SQL, backed by `pg`.
6
- *
7
- * This module exposes constructors for creating a scoped `PgClient` from a
8
- * managed `pg` pool, a single managed `pg` client, or lower-level connection
9
- * acquirers. The resulting service can be provided as both `PgClient` and the
10
- * generic `SqlClient`, and is intended for application database access,
11
- * migrations, transactional workflows, row streaming, JSON parameters, and
12
- * PostgreSQL LISTEN/NOTIFY integration.
13
- *
14
- * Pool-backed clients acquire connections per operation and reserve dedicated
15
- * connections for transactions and cursor streams. Clients built from one
16
- * `pg.Client` serialize shared access; enable `acquireForStream` when streams
17
- * or listeners need their own client instead of sharing the query connection.
18
- * LISTEN uses a scoped long-lived client and automatically issues `UNLISTEN`
19
- * when the stream scope closes, so listeners should be scoped for as long as
20
- * notifications are needed.
21
- *
22
5
  * @since 4.0.0
23
6
  */
24
7
  export * as PgClient from "./PgClient.ts";
25
8
  /**
26
- * Utilities for applying Effect SQL migrations to PostgreSQL databases.
27
- *
28
- * This module re-exports the shared `Migrator` loaders and error types, then
29
- * provides `run` and `layer` helpers for applying ordered migrations through
30
- * the current PostgreSQL `SqlClient` and `PgClient`. It is typically used at
31
- * application startup, during deployment, in integration tests that provision a
32
- * temporary PostgreSQL database, or in layer graphs that must prepare the
33
- * schema before dependent services are acquired.
34
- *
35
- * Migrations are recorded in `effect_sql_migrations` by default and are loaded
36
- * using the shared `<id>_<name>` file or record-key convention. Only migrations
37
- * with an id greater than the latest recorded id are applied, so concurrent
38
- * application instances should coordinate startup against the same database and
39
- * avoid racing to install the same changes. When `schemaDirectory` is enabled,
40
- * this adapter shells out to `pg_dump` using the active `PgClient`
41
- * configuration, so `pg_dump` must be available on `PATH` and the layer must
42
- * provide child process, filesystem, and path services. The generated dumps
43
- * intentionally strip comments, session settings, ownership, and privilege
44
- * statements to keep schema snapshots portable across PostgreSQL environments.
45
- *
46
9
  * @since 4.0.0
47
10
  */
48
11
  export * as PgMigrator from "./PgMigrator.ts";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
package/dist/index.js CHANGED
@@ -3,47 +3,10 @@
3
3
  */
4
4
  // @barrel: Auto-generated exports. Do not edit manually.
5
5
  /**
6
- * PostgreSQL client implementation for Effect SQL, backed by `pg`.
7
- *
8
- * This module exposes constructors for creating a scoped `PgClient` from a
9
- * managed `pg` pool, a single managed `pg` client, or lower-level connection
10
- * acquirers. The resulting service can be provided as both `PgClient` and the
11
- * generic `SqlClient`, and is intended for application database access,
12
- * migrations, transactional workflows, row streaming, JSON parameters, and
13
- * PostgreSQL LISTEN/NOTIFY integration.
14
- *
15
- * Pool-backed clients acquire connections per operation and reserve dedicated
16
- * connections for transactions and cursor streams. Clients built from one
17
- * `pg.Client` serialize shared access; enable `acquireForStream` when streams
18
- * or listeners need their own client instead of sharing the query connection.
19
- * LISTEN uses a scoped long-lived client and automatically issues `UNLISTEN`
20
- * when the stream scope closes, so listeners should be scoped for as long as
21
- * notifications are needed.
22
- *
23
6
  * @since 4.0.0
24
7
  */
25
8
  export * as PgClient from "./PgClient.js";
26
9
  /**
27
- * Utilities for applying Effect SQL migrations to PostgreSQL databases.
28
- *
29
- * This module re-exports the shared `Migrator` loaders and error types, then
30
- * provides `run` and `layer` helpers for applying ordered migrations through
31
- * the current PostgreSQL `SqlClient` and `PgClient`. It is typically used at
32
- * application startup, during deployment, in integration tests that provision a
33
- * temporary PostgreSQL database, or in layer graphs that must prepare the
34
- * schema before dependent services are acquired.
35
- *
36
- * Migrations are recorded in `effect_sql_migrations` by default and are loaded
37
- * using the shared `<id>_<name>` file or record-key convention. Only migrations
38
- * with an id greater than the latest recorded id are applied, so concurrent
39
- * application instances should coordinate startup against the same database and
40
- * avoid racing to install the same changes. When `schemaDirectory` is enabled,
41
- * this adapter shells out to `pg_dump` using the active `PgClient`
42
- * configuration, so `pg_dump` must be available on `PATH` and the layer must
43
- * provide child process, filesystem, and path services. The generated dumps
44
- * intentionally strip comments, session settings, ownership, and privilege
45
- * statements to keep schema snapshots portable across PostgreSQL environments.
46
- *
47
10
  * @since 4.0.0
48
11
  */
49
12
  export * as PgMigrator from "./PgMigrator.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["PgClient","PgMigrator"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,KAAKA,QAAQ,MAAM,eAAe;AAEzC;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,KAAKC,UAAU,MAAM,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["PgClient","PgMigrator"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;AAGA,OAAO,KAAKA,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-pg",
3
- "version": "4.0.0-beta.70",
3
+ "version": "4.0.0-beta.71",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "A PostgreSQL toolkit for Effect",
@@ -46,10 +46,10 @@
46
46
  "@testcontainers/postgresql": "^11.14.0",
47
47
  "@types/pg": "^8.20.0",
48
48
  "@types/pg-cursor": "^2.7.2",
49
- "effect": "^4.0.0-beta.70"
49
+ "effect": "^4.0.0-beta.71"
50
50
  },
51
51
  "peerDependencies": {
52
- "effect": "^4.0.0-beta.70"
52
+ "effect": "^4.0.0-beta.71"
53
53
  },
54
54
  "dependencies": {
55
55
  "pg": "^8.20.0",
package/src/PgClient.ts CHANGED
@@ -1,20 +1,38 @@
1
1
  /**
2
- * PostgreSQL client implementation for Effect SQL, backed by `pg`.
2
+ * PostgreSQL driver for Effect SQL, backed by the `pg` package.
3
3
  *
4
- * This module exposes constructors for creating a scoped `PgClient` from a
5
- * managed `pg` pool, a single managed `pg` client, or lower-level connection
6
- * acquirers. The resulting service can be provided as both `PgClient` and the
7
- * generic `SqlClient`, and is intended for application database access,
8
- * migrations, transactional workflows, row streaming, JSON parameters, and
9
- * PostgreSQL LISTEN/NOTIFY integration.
4
+ * Use this module to provide a {@link PgClient} and the generic `SqlClient`
5
+ * service from pool settings, a single managed `pg.Client`, an existing
6
+ * `pg.Pool`, or custom connection acquirers. The client uses Effect SQL's
7
+ * PostgreSQL compiler, classifies common PostgreSQL failures as `SqlError`s,
8
+ * and adds PostgreSQL-specific JSON fragments plus LISTEN/NOTIFY operations.
10
9
  *
11
- * Pool-backed clients acquire connections per operation and reserve dedicated
12
- * connections for transactions and cursor streams. Clients built from one
13
- * `pg.Client` serialize shared access; enable `acquireForStream` when streams
14
- * or listeners need their own client instead of sharing the query connection.
15
- * LISTEN uses a scoped long-lived client and automatically issues `UNLISTEN`
16
- * when the stream scope closes, so listeners should be scoped for as long as
17
- * notifications are needed.
10
+ * ## Mental model
11
+ *
12
+ * Pool-backed clients acquire a connection for each operation. Transactions and
13
+ * cursor streams keep a dedicated connection for their scope, so they consume
14
+ * pool capacity while active. Clients built from one `pg.Client` serialize
15
+ * query access through that client; set `acquireForStream` in
16
+ * {@link makeClient} when streams or listeners need separate clients.
17
+ *
18
+ * ## Common tasks
19
+ *
20
+ * - Use {@link layer} with concrete pool settings, or {@link layerConfig} when
21
+ * settings should come from `Config`.
22
+ * - Use {@link make} for a scoped pool-backed client without immediately
23
+ * turning it into a layer.
24
+ * - Use {@link fromPool} or {@link fromClient} when another component owns
25
+ * acquisition of the underlying `pg` resources.
26
+ * - Use `client.json`, `client.listen`, and `client.notify` for
27
+ * PostgreSQL-specific values and notifications.
28
+ *
29
+ * ## Gotchas
30
+ *
31
+ * LISTEN opens a scoped long-lived client and issues `UNLISTEN` when the stream
32
+ * scope closes, so keep listener streams scoped for exactly the period
33
+ * notifications are needed. Long-running transactions, streams, and listeners
34
+ * can hold onto database connections even while other fibers continue to use
35
+ * the same `PgClient`.
18
36
  *
19
37
  * @since 4.0.0
20
38
  */
package/src/PgMigrator.ts CHANGED
@@ -1,23 +1,39 @@
1
1
  /**
2
- * Utilities for applying Effect SQL migrations to PostgreSQL databases.
2
+ * PostgreSQL migration support for Effect SQL applications.
3
3
  *
4
- * This module re-exports the shared `Migrator` loaders and error types, then
5
- * provides `run` and `layer` helpers for applying ordered migrations through
6
- * the current PostgreSQL `SqlClient` and `PgClient`. It is typically used at
7
- * application startup, during deployment, in integration tests that provision a
8
- * temporary PostgreSQL database, or in layer graphs that must prepare the
9
- * schema before dependent services are acquired.
4
+ * This module adapts the shared SQL migrator to PostgreSQL. It re-exports the
5
+ * common migration loaders and errors, then provides {@link run} and
6
+ * {@link layer} helpers that execute pending migrations with the current
7
+ * `SqlClient` and `PgClient`.
10
8
  *
11
- * Migrations are recorded in `effect_sql_migrations` by default and are loaded
12
- * using the shared `<id>_<name>` file or record-key convention. Only migrations
13
- * with an id greater than the latest recorded id are applied, so concurrent
14
- * application instances should coordinate startup against the same database and
15
- * avoid racing to install the same changes. When `schemaDirectory` is enabled,
16
- * this adapter shells out to `pg_dump` using the active `PgClient`
17
- * configuration, so `pg_dump` must be available on `PATH` and the layer must
18
- * provide child process, filesystem, and path services. The generated dumps
19
- * intentionally strip comments, session settings, ownership, and privilege
20
- * statements to keep schema snapshots portable across PostgreSQL environments.
9
+ * **Mental model**
10
+ *
11
+ * Migrations are numbered operations loaded from files, records, or bundler
12
+ * glob results. The migrator ensures the migrations table exists, reads the
13
+ * latest recorded id, and runs only migrations with a greater id. PostgreSQL
14
+ * runs use the configured `PgClient` connection details for both migration SQL
15
+ * and optional schema dumps.
16
+ *
17
+ * **Common tasks**
18
+ *
19
+ * - Run migrations explicitly with {@link run} during startup or deployment
20
+ * - Add migrations to a layer graph with {@link layer} so dependent services
21
+ * are acquired after the schema is prepared
22
+ * - Reuse the shared loaders such as `fromGlob`, `fromRecord`, and
23
+ * `fromFileSystem`
24
+ * - Enable `schemaDirectory` to write a portable schema snapshot after a
25
+ * successful migration run
26
+ *
27
+ * **Gotchas**
28
+ *
29
+ * - The default migrations table is `effect_sql_migrations`; use `table` when a
30
+ * database needs a different name
31
+ * - Only migrations with an id greater than the latest recorded id are run, so
32
+ * editing an older migration does not make it run again
33
+ * - Schema dumps shell out to `pg_dump`, so `pg_dump` must be on `PATH` and the
34
+ * layer must provide child process, filesystem, and path services
35
+ * - Generated dumps intentionally omit comments, session settings, ownership,
36
+ * and privilege statements to keep snapshots portable
21
37
  *
22
38
  * @since 4.0.0
23
39
  */
package/src/index.ts CHANGED
@@ -5,48 +5,11 @@
5
5
  // @barrel: Auto-generated exports. Do not edit manually.
6
6
 
7
7
  /**
8
- * PostgreSQL client implementation for Effect SQL, backed by `pg`.
9
- *
10
- * This module exposes constructors for creating a scoped `PgClient` from a
11
- * managed `pg` pool, a single managed `pg` client, or lower-level connection
12
- * acquirers. The resulting service can be provided as both `PgClient` and the
13
- * generic `SqlClient`, and is intended for application database access,
14
- * migrations, transactional workflows, row streaming, JSON parameters, and
15
- * PostgreSQL LISTEN/NOTIFY integration.
16
- *
17
- * Pool-backed clients acquire connections per operation and reserve dedicated
18
- * connections for transactions and cursor streams. Clients built from one
19
- * `pg.Client` serialize shared access; enable `acquireForStream` when streams
20
- * or listeners need their own client instead of sharing the query connection.
21
- * LISTEN uses a scoped long-lived client and automatically issues `UNLISTEN`
22
- * when the stream scope closes, so listeners should be scoped for as long as
23
- * notifications are needed.
24
- *
25
8
  * @since 4.0.0
26
9
  */
27
10
  export * as PgClient from "./PgClient.ts"
28
11
 
29
12
  /**
30
- * Utilities for applying Effect SQL migrations to PostgreSQL databases.
31
- *
32
- * This module re-exports the shared `Migrator` loaders and error types, then
33
- * provides `run` and `layer` helpers for applying ordered migrations through
34
- * the current PostgreSQL `SqlClient` and `PgClient`. It is typically used at
35
- * application startup, during deployment, in integration tests that provision a
36
- * temporary PostgreSQL database, or in layer graphs that must prepare the
37
- * schema before dependent services are acquired.
38
- *
39
- * Migrations are recorded in `effect_sql_migrations` by default and are loaded
40
- * using the shared `<id>_<name>` file or record-key convention. Only migrations
41
- * with an id greater than the latest recorded id are applied, so concurrent
42
- * application instances should coordinate startup against the same database and
43
- * avoid racing to install the same changes. When `schemaDirectory` is enabled,
44
- * this adapter shells out to `pg_dump` using the active `PgClient`
45
- * configuration, so `pg_dump` must be available on `PATH` and the layer must
46
- * provide child process, filesystem, and path services. The generated dumps
47
- * intentionally strip comments, session settings, ownership, and privilege
48
- * statements to keep schema snapshots portable across PostgreSQL environments.
49
- *
50
13
  * @since 4.0.0
51
14
  */
52
15
  export * as PgMigrator from "./PgMigrator.ts"