drizzle-orm 0.35.3-4cb1bdb → 0.35.3-53e089b

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/neon/rls.cjs CHANGED
@@ -26,6 +26,7 @@ __export(rls_exports, {
26
26
  module.exports = __toCommonJS(rls_exports);
27
27
  var import_entity = require("../entity.cjs");
28
28
  var import_pg_core = require("../pg-core/index.cjs");
29
+ var import_roles = require("../pg-core/roles.cjs");
29
30
  var import_sql = require("../sql/sql.cjs");
30
31
  const crudPolicy = (options) => {
31
32
  const read = options.read === true ? import_sql.sql`true` : options.read === false || options.read === void 0 ? import_sql.sql`false` : options.read;
@@ -33,10 +34,10 @@ const crudPolicy = (options) => {
33
34
  let rolesName = "";
34
35
  if (Array.isArray(options.role)) {
35
36
  rolesName = options.role.map((it) => {
36
- return (0, import_entity.is)(it, import_pg_core.PgRole) ? it.name : it;
37
+ return (0, import_entity.is)(it, import_roles.PgRole) ? it.name : it;
37
38
  }).join("-");
38
39
  } else {
39
- rolesName = (0, import_entity.is)(options.role, import_pg_core.PgRole) ? options.role.name : options.role;
40
+ rolesName = (0, import_entity.is)(options.role, import_roles.PgRole) ? options.role.name : options.role;
40
41
  }
41
42
  return [
42
43
  (0, import_pg_core.pgPolicy)(`crud-${rolesName}-policy-insert`, {
@@ -62,8 +63,8 @@ const crudPolicy = (options) => {
62
63
  })
63
64
  ];
64
65
  };
65
- const authenticatedRole = (0, import_pg_core.pgRole)("authenticated").existing();
66
- const anonymousRole = (0, import_pg_core.pgRole)("anonymous").existing();
66
+ const authenticatedRole = (0, import_roles.pgRole)("authenticated").existing();
67
+ const anonymousRole = (0, import_roles.pgRole)("anonymous").existing();
67
68
  const authUid = (userIdColumn) => import_sql.sql`(select auth.user_id() = ${userIdColumn})`;
68
69
  // Annotate the CommonJS export names for ESM import in node:
69
70
  0 && (module.exports = {
package/neon/rls.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/neon/rls.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport { pgPolicy, PgRole, pgRole } from '~/pg-core/index.ts';\nimport type { AnyPgColumn, PgPolicyToOption } from '~/pg-core/index.ts';\nimport { type SQL, sql } from '~/sql/sql.ts';\n\nexport const crudPolicy = (options: {\n\trole: PgPolicyToOption;\n\tread?: SQL | boolean;\n\tmodify?: SQL | boolean;\n}) => {\n\tconst read: SQL = options.read === true\n\t\t? sql`true`\n\t\t: options.read === false || options.read === undefined\n\t\t? sql`false`\n\t\t: options.read;\n\n\tconst modify: SQL = options.modify === true\n\t\t? sql`true`\n\t\t: options.modify === false || options.modify === undefined\n\t\t? sql`false`\n\t\t: options.modify;\n\n\tlet rolesName = '';\n\tif (Array.isArray(options.role)) {\n\t\trolesName = options.role\n\t\t\t.map((it) => {\n\t\t\t\treturn is(it, PgRole) ? it.name : (it as string);\n\t\t\t})\n\t\t\t.join('-');\n\t} else {\n\t\trolesName = is(options.role, PgRole)\n\t\t\t? options.role.name\n\t\t\t: (options.role as string);\n\t}\n\n\treturn [\n\t\tpgPolicy(`crud-${rolesName}-policy-insert`, {\n\t\t\tfor: 'insert',\n\t\t\tto: options.role,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-update`, {\n\t\t\tfor: 'update',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-delete`, {\n\t\t\tfor: 'delete',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-select`, {\n\t\t\tfor: 'select',\n\t\t\tto: options.role,\n\t\t\tusing: read,\n\t\t}),\n\t];\n};\n\n// These are default roles that Neon will set up.\nexport const authenticatedRole = pgRole('authenticated').existing();\nexport const anonymousRole = pgRole('anonymous').existing();\n\nexport const authUid = (userIdColumn: AnyPgColumn) => sql`(select auth.user_id() = ${userIdColumn})`;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;AACnB,qBAAyC;AAEzC,iBAA8B;AAEvB,MAAM,aAAa,CAAC,YAIrB;AACL,QAAM,OAAY,QAAQ,SAAS,OAChC,uBACA,QAAQ,SAAS,SAAS,QAAQ,SAAS,SAC3C,wBACA,QAAQ;AAEX,QAAM,SAAc,QAAQ,WAAW,OACpC,uBACA,QAAQ,WAAW,SAAS,QAAQ,WAAW,SAC/C,wBACA,QAAQ;AAEX,MAAI,YAAY;AAChB,MAAI,MAAM,QAAQ,QAAQ,IAAI,GAAG;AAChC,gBAAY,QAAQ,KAClB,IAAI,CAAC,OAAO;AACZ,iBAAO,kBAAG,IAAI,qBAAM,IAAI,GAAG,OAAQ;AAAA,IACpC,CAAC,EACA,KAAK,GAAG;AAAA,EACX,OAAO;AACN,oBAAY,kBAAG,QAAQ,MAAM,qBAAM,IAChC,QAAQ,KAAK,OACZ,QAAQ;AAAA,EACb;AAEA,SAAO;AAAA,QACN,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,WAAW;AAAA,IACZ,CAAC;AAAA,QACD,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,MACP,WAAW;AAAA,IACZ,CAAC;AAAA,QACD,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,QACD,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,EACF;AACD;AAGO,MAAM,wBAAoB,uBAAO,eAAe,EAAE,SAAS;AAC3D,MAAM,oBAAgB,uBAAO,WAAW,EAAE,SAAS;AAEnD,MAAM,UAAU,CAAC,iBAA8B,0CAA+B,YAAY;","names":[]}
1
+ {"version":3,"sources":["../../src/neon/rls.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport { type AnyPgColumn, pgPolicy, type PgPolicyToOption } from '~/pg-core/index.ts';\nimport { PgRole, pgRole } from '~/pg-core/roles.ts';\nimport { type SQL, sql } from '~/sql/sql.ts';\n\nexport const crudPolicy = (options: {\n\trole: PgPolicyToOption;\n\tread?: SQL | boolean;\n\tmodify?: SQL | boolean;\n}) => {\n\tconst read: SQL = options.read === true\n\t\t? sql`true`\n\t\t: options.read === false || options.read === undefined\n\t\t? sql`false`\n\t\t: options.read;\n\n\tconst modify: SQL = options.modify === true\n\t\t? sql`true`\n\t\t: options.modify === false || options.modify === undefined\n\t\t? sql`false`\n\t\t: options.modify;\n\n\tlet rolesName = '';\n\tif (Array.isArray(options.role)) {\n\t\trolesName = options.role\n\t\t\t.map((it) => {\n\t\t\t\treturn is(it, PgRole) ? it.name : (it as string);\n\t\t\t})\n\t\t\t.join('-');\n\t} else {\n\t\trolesName = is(options.role, PgRole)\n\t\t\t? options.role.name\n\t\t\t: (options.role as string);\n\t}\n\n\treturn [\n\t\tpgPolicy(`crud-${rolesName}-policy-insert`, {\n\t\t\tfor: 'insert',\n\t\t\tto: options.role,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-update`, {\n\t\t\tfor: 'update',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-delete`, {\n\t\t\tfor: 'delete',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-select`, {\n\t\t\tfor: 'select',\n\t\t\tto: options.role,\n\t\t\tusing: read,\n\t\t}),\n\t];\n};\n\n// These are default roles that Neon will set up.\nexport const authenticatedRole = pgRole('authenticated').existing();\nexport const anonymousRole = pgRole('anonymous').existing();\n\nexport const authUid = (userIdColumn: AnyPgColumn) => sql`(select auth.user_id() = ${userIdColumn})`;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;AACnB,qBAAkE;AAClE,mBAA+B;AAC/B,iBAA8B;AAEvB,MAAM,aAAa,CAAC,YAIrB;AACL,QAAM,OAAY,QAAQ,SAAS,OAChC,uBACA,QAAQ,SAAS,SAAS,QAAQ,SAAS,SAC3C,wBACA,QAAQ;AAEX,QAAM,SAAc,QAAQ,WAAW,OACpC,uBACA,QAAQ,WAAW,SAAS,QAAQ,WAAW,SAC/C,wBACA,QAAQ;AAEX,MAAI,YAAY;AAChB,MAAI,MAAM,QAAQ,QAAQ,IAAI,GAAG;AAChC,gBAAY,QAAQ,KAClB,IAAI,CAAC,OAAO;AACZ,iBAAO,kBAAG,IAAI,mBAAM,IAAI,GAAG,OAAQ;AAAA,IACpC,CAAC,EACA,KAAK,GAAG;AAAA,EACX,OAAO;AACN,oBAAY,kBAAG,QAAQ,MAAM,mBAAM,IAChC,QAAQ,KAAK,OACZ,QAAQ;AAAA,EACb;AAEA,SAAO;AAAA,QACN,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,WAAW;AAAA,IACZ,CAAC;AAAA,QACD,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,MACP,WAAW;AAAA,IACZ,CAAC;AAAA,QACD,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,QACD,yBAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,EACF;AACD;AAGO,MAAM,wBAAoB,qBAAO,eAAe,EAAE,SAAS;AAC3D,MAAM,oBAAgB,qBAAO,WAAW,EAAE,SAAS;AAEnD,MAAM,UAAU,CAAC,iBAA8B,0CAA+B,YAAY;","names":[]}
package/neon/rls.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { PgRole } from "../pg-core/index.cjs";
2
- import type { AnyPgColumn, PgPolicyToOption } from "../pg-core/index.cjs";
1
+ import { type AnyPgColumn, type PgPolicyToOption } from "../pg-core/index.cjs";
2
+ import { PgRole } from "../pg-core/roles.cjs";
3
3
  import { type SQL } from "../sql/sql.cjs";
4
4
  export declare const crudPolicy: (options: {
5
5
  role: PgPolicyToOption;
package/neon/rls.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { PgRole } from "../pg-core/index.js";
2
- import type { AnyPgColumn, PgPolicyToOption } from "../pg-core/index.js";
1
+ import { type AnyPgColumn, type PgPolicyToOption } from "../pg-core/index.js";
2
+ import { PgRole } from "../pg-core/roles.js";
3
3
  import { type SQL } from "../sql/sql.js";
4
4
  export declare const crudPolicy: (options: {
5
5
  role: PgPolicyToOption;
package/neon/rls.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { is } from "../entity.js";
2
- import { pgPolicy, PgRole, pgRole } from "../pg-core/index.js";
2
+ import { pgPolicy } from "../pg-core/index.js";
3
+ import { PgRole, pgRole } from "../pg-core/roles.js";
3
4
  import { sql } from "../sql/sql.js";
4
5
  const crudPolicy = (options) => {
5
6
  const read = options.read === true ? sql`true` : options.read === false || options.read === void 0 ? sql`false` : options.read;
package/neon/rls.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/neon/rls.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport { pgPolicy, PgRole, pgRole } from '~/pg-core/index.ts';\nimport type { AnyPgColumn, PgPolicyToOption } from '~/pg-core/index.ts';\nimport { type SQL, sql } from '~/sql/sql.ts';\n\nexport const crudPolicy = (options: {\n\trole: PgPolicyToOption;\n\tread?: SQL | boolean;\n\tmodify?: SQL | boolean;\n}) => {\n\tconst read: SQL = options.read === true\n\t\t? sql`true`\n\t\t: options.read === false || options.read === undefined\n\t\t? sql`false`\n\t\t: options.read;\n\n\tconst modify: SQL = options.modify === true\n\t\t? sql`true`\n\t\t: options.modify === false || options.modify === undefined\n\t\t? sql`false`\n\t\t: options.modify;\n\n\tlet rolesName = '';\n\tif (Array.isArray(options.role)) {\n\t\trolesName = options.role\n\t\t\t.map((it) => {\n\t\t\t\treturn is(it, PgRole) ? it.name : (it as string);\n\t\t\t})\n\t\t\t.join('-');\n\t} else {\n\t\trolesName = is(options.role, PgRole)\n\t\t\t? options.role.name\n\t\t\t: (options.role as string);\n\t}\n\n\treturn [\n\t\tpgPolicy(`crud-${rolesName}-policy-insert`, {\n\t\t\tfor: 'insert',\n\t\t\tto: options.role,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-update`, {\n\t\t\tfor: 'update',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-delete`, {\n\t\t\tfor: 'delete',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-select`, {\n\t\t\tfor: 'select',\n\t\t\tto: options.role,\n\t\t\tusing: read,\n\t\t}),\n\t];\n};\n\n// These are default roles that Neon will set up.\nexport const authenticatedRole = pgRole('authenticated').existing();\nexport const anonymousRole = pgRole('anonymous').existing();\n\nexport const authUid = (userIdColumn: AnyPgColumn) => sql`(select auth.user_id() = ${userIdColumn})`;\n"],"mappings":"AAAA,SAAS,UAAU;AACnB,SAAS,UAAU,QAAQ,cAAc;AAEzC,SAAmB,WAAW;AAEvB,MAAM,aAAa,CAAC,YAIrB;AACL,QAAM,OAAY,QAAQ,SAAS,OAChC,YACA,QAAQ,SAAS,SAAS,QAAQ,SAAS,SAC3C,aACA,QAAQ;AAEX,QAAM,SAAc,QAAQ,WAAW,OACpC,YACA,QAAQ,WAAW,SAAS,QAAQ,WAAW,SAC/C,aACA,QAAQ;AAEX,MAAI,YAAY;AAChB,MAAI,MAAM,QAAQ,QAAQ,IAAI,GAAG;AAChC,gBAAY,QAAQ,KAClB,IAAI,CAAC,OAAO;AACZ,aAAO,GAAG,IAAI,MAAM,IAAI,GAAG,OAAQ;AAAA,IACpC,CAAC,EACA,KAAK,GAAG;AAAA,EACX,OAAO;AACN,gBAAY,GAAG,QAAQ,MAAM,MAAM,IAChC,QAAQ,KAAK,OACZ,QAAQ;AAAA,EACb;AAEA,SAAO;AAAA,IACN,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,WAAW;AAAA,IACZ,CAAC;AAAA,IACD,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,MACP,WAAW;AAAA,IACZ,CAAC;AAAA,IACD,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,IACD,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,EACF;AACD;AAGO,MAAM,oBAAoB,OAAO,eAAe,EAAE,SAAS;AAC3D,MAAM,gBAAgB,OAAO,WAAW,EAAE,SAAS;AAEnD,MAAM,UAAU,CAAC,iBAA8B,+BAA+B,YAAY;","names":[]}
1
+ {"version":3,"sources":["../../src/neon/rls.ts"],"sourcesContent":["import { is } from '~/entity.ts';\nimport { type AnyPgColumn, pgPolicy, type PgPolicyToOption } from '~/pg-core/index.ts';\nimport { PgRole, pgRole } from '~/pg-core/roles.ts';\nimport { type SQL, sql } from '~/sql/sql.ts';\n\nexport const crudPolicy = (options: {\n\trole: PgPolicyToOption;\n\tread?: SQL | boolean;\n\tmodify?: SQL | boolean;\n}) => {\n\tconst read: SQL = options.read === true\n\t\t? sql`true`\n\t\t: options.read === false || options.read === undefined\n\t\t? sql`false`\n\t\t: options.read;\n\n\tconst modify: SQL = options.modify === true\n\t\t? sql`true`\n\t\t: options.modify === false || options.modify === undefined\n\t\t? sql`false`\n\t\t: options.modify;\n\n\tlet rolesName = '';\n\tif (Array.isArray(options.role)) {\n\t\trolesName = options.role\n\t\t\t.map((it) => {\n\t\t\t\treturn is(it, PgRole) ? it.name : (it as string);\n\t\t\t})\n\t\t\t.join('-');\n\t} else {\n\t\trolesName = is(options.role, PgRole)\n\t\t\t? options.role.name\n\t\t\t: (options.role as string);\n\t}\n\n\treturn [\n\t\tpgPolicy(`crud-${rolesName}-policy-insert`, {\n\t\t\tfor: 'insert',\n\t\t\tto: options.role,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-update`, {\n\t\t\tfor: 'update',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t\twithCheck: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-delete`, {\n\t\t\tfor: 'delete',\n\t\t\tto: options.role,\n\t\t\tusing: modify,\n\t\t}),\n\t\tpgPolicy(`crud-${rolesName}-policy-select`, {\n\t\t\tfor: 'select',\n\t\t\tto: options.role,\n\t\t\tusing: read,\n\t\t}),\n\t];\n};\n\n// These are default roles that Neon will set up.\nexport const authenticatedRole = pgRole('authenticated').existing();\nexport const anonymousRole = pgRole('anonymous').existing();\n\nexport const authUid = (userIdColumn: AnyPgColumn) => sql`(select auth.user_id() = ${userIdColumn})`;\n"],"mappings":"AAAA,SAAS,UAAU;AACnB,SAA2B,gBAAuC;AAClE,SAAS,QAAQ,cAAc;AAC/B,SAAmB,WAAW;AAEvB,MAAM,aAAa,CAAC,YAIrB;AACL,QAAM,OAAY,QAAQ,SAAS,OAChC,YACA,QAAQ,SAAS,SAAS,QAAQ,SAAS,SAC3C,aACA,QAAQ;AAEX,QAAM,SAAc,QAAQ,WAAW,OACpC,YACA,QAAQ,WAAW,SAAS,QAAQ,WAAW,SAC/C,aACA,QAAQ;AAEX,MAAI,YAAY;AAChB,MAAI,MAAM,QAAQ,QAAQ,IAAI,GAAG;AAChC,gBAAY,QAAQ,KAClB,IAAI,CAAC,OAAO;AACZ,aAAO,GAAG,IAAI,MAAM,IAAI,GAAG,OAAQ;AAAA,IACpC,CAAC,EACA,KAAK,GAAG;AAAA,EACX,OAAO;AACN,gBAAY,GAAG,QAAQ,MAAM,MAAM,IAChC,QAAQ,KAAK,OACZ,QAAQ;AAAA,EACb;AAEA,SAAO;AAAA,IACN,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,WAAW;AAAA,IACZ,CAAC;AAAA,IACD,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,MACP,WAAW;AAAA,IACZ,CAAC;AAAA,IACD,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,IACD,SAAS,QAAQ,SAAS,kBAAkB;AAAA,MAC3C,KAAK;AAAA,MACL,IAAI,QAAQ;AAAA,MACZ,OAAO;AAAA,IACR,CAAC;AAAA,EACF;AACD;AAGO,MAAM,oBAAoB,OAAO,eAAe,EAAE,SAAS;AAC3D,MAAM,gBAAgB,OAAO,WAAW,EAAE,SAAS;AAEnD,MAAM,UAAU,CAAC,iBAA8B,+BAA+B,YAAY;","names":[]}
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "drizzle-orm",
3
- "version": "0.35.3-4cb1bdb",
3
+ "version": "0.35.3-53e089b",
4
4
  "description": "Drizzle ORM package for SQL databases",
5
5
  "type": "module",
6
6
  "scripts": {
7
- "build": "scripts/build.ts",
7
+ "p": "prisma generate --schema src/prisma/schema.prisma",
8
+ "build": "pnpm p && scripts/build.ts",
8
9
  "b": "pnpm build",
9
10
  "test:types": "cd type-tests && tsc",
10
11
  "test": "vitest run",
@@ -130,6 +131,9 @@
130
131
  "@libsql/client": {
131
132
  "optional": true
132
133
  },
134
+ "@libsql/client-wasm": {
135
+ "optional": true
136
+ },
133
137
  "@opentelemetry/api": {
134
138
  "optional": true
135
139
  },
@@ -2120,6 +2124,30 @@
2120
2124
  "types": "./sqlite-proxy/session.d.ts",
2121
2125
  "default": "./sqlite-proxy/session.js"
2122
2126
  },
2127
+ "./supabase": {
2128
+ "import": {
2129
+ "types": "./supabase/index.d.ts",
2130
+ "default": "./supabase/index.js"
2131
+ },
2132
+ "require": {
2133
+ "types": "./supabase/index.d.cts",
2134
+ "default": "./supabase/index.cjs"
2135
+ },
2136
+ "types": "./supabase/index.d.ts",
2137
+ "default": "./supabase/index.js"
2138
+ },
2139
+ "./supabase/rls": {
2140
+ "import": {
2141
+ "types": "./supabase/rls.d.ts",
2142
+ "default": "./supabase/rls.js"
2143
+ },
2144
+ "require": {
2145
+ "types": "./supabase/rls.d.cts",
2146
+ "default": "./supabase/rls.cjs"
2147
+ },
2148
+ "types": "./supabase/rls.d.ts",
2149
+ "default": "./supabase/rls.js"
2150
+ },
2123
2151
  "./tidb-serverless/driver": {
2124
2152
  "import": {
2125
2153
  "types": "./tidb-serverless/driver.d.ts",
@@ -40,6 +40,12 @@ class PgPolicy {
40
40
  to;
41
41
  using;
42
42
  withCheck;
43
+ /** @internal */
44
+ _linkedTable;
45
+ link(table) {
46
+ this._linkedTable = table;
47
+ return this;
48
+ }
43
49
  }
44
50
  function pgPolicy(name, config) {
45
51
  return new PgPolicy(name, config);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/policies.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { PgRole } from './roles.ts';\n\nexport type PgPolicyToOption =\n\t| 'public'\n\t| 'current_role'\n\t| 'current_user'\n\t| 'session_user'\n\t| (string & {})\n\t| PgPolicyToOption[]\n\t| PgRole;\n\nexport interface PgPolicyConfig {\n\tas?: 'permissive' | 'restrictive';\n\tfor?: 'all' | 'select' | 'insert' | 'update' | 'delete';\n\tto?: PgPolicyToOption;\n\tusing?: SQL;\n\twithCheck?: SQL;\n}\n\nexport class PgPolicy implements PgPolicyConfig {\n\tstatic readonly [entityKind]: string = 'PgPolicy';\n\n\treadonly as: PgPolicyConfig['as'];\n\treadonly for: PgPolicyConfig['for'];\n\treadonly to: PgPolicyConfig['to'];\n\treadonly using: PgPolicyConfig['using'];\n\treadonly withCheck: PgPolicyConfig['withCheck'];\n\n\tconstructor(\n\t\treadonly name: string,\n\t\tconfig?: PgPolicyConfig,\n\t) {\n\t\tif (config) {\n\t\t\tthis.as = config.as;\n\t\t\tthis.for = config.for;\n\t\t\tthis.to = config.to;\n\t\t\tthis.using = config.using;\n\t\t\tthis.withCheck = config.withCheck;\n\t\t}\n\t}\n}\n\nexport function pgPolicy(name: string, config?: PgPolicyConfig) {\n\treturn new PgPolicy(name, config);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAqBpB,MAAM,SAAmC;AAAA,EAS/C,YACU,MACT,QACC;AAFQ;AAGT,QAAI,QAAQ;AACX,WAAK,KAAK,OAAO;AACjB,WAAK,MAAM,OAAO;AAClB,WAAK,KAAK,OAAO;AACjB,WAAK,QAAQ,OAAO;AACpB,WAAK,YAAY,OAAO;AAAA,IACzB;AAAA,EACD;AAAA,EAnBA,QAAiB,wBAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAcV;AAEO,SAAS,SAAS,MAAc,QAAyB;AAC/D,SAAO,IAAI,SAAS,MAAM,MAAM;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/policies.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { PgRole } from './roles.ts';\nimport type { PgTable } from './table.ts';\n\nexport type PgPolicyToOption =\n\t| 'public'\n\t| 'current_role'\n\t| 'current_user'\n\t| 'session_user'\n\t| (string & {})\n\t| PgPolicyToOption[]\n\t| PgRole;\n\nexport interface PgPolicyConfig {\n\tas?: 'permissive' | 'restrictive';\n\tfor?: 'all' | 'select' | 'insert' | 'update' | 'delete';\n\tto?: PgPolicyToOption;\n\tusing?: SQL;\n\twithCheck?: SQL;\n}\n\nexport class PgPolicy implements PgPolicyConfig {\n\tstatic readonly [entityKind]: string = 'PgPolicy';\n\n\treadonly as: PgPolicyConfig['as'];\n\treadonly for: PgPolicyConfig['for'];\n\treadonly to: PgPolicyConfig['to'];\n\treadonly using: PgPolicyConfig['using'];\n\treadonly withCheck: PgPolicyConfig['withCheck'];\n\n\t/** @internal */\n\t_linkedTable?: PgTable;\n\n\tconstructor(\n\t\treadonly name: string,\n\t\tconfig?: PgPolicyConfig,\n\t) {\n\t\tif (config) {\n\t\t\tthis.as = config.as;\n\t\t\tthis.for = config.for;\n\t\t\tthis.to = config.to;\n\t\t\tthis.using = config.using;\n\t\t\tthis.withCheck = config.withCheck;\n\t\t}\n\t}\n\n\tlink(table: PgTable): this {\n\t\tthis._linkedTable = table;\n\t\treturn this;\n\t}\n}\n\nexport function pgPolicy(name: string, config?: PgPolicyConfig) {\n\treturn new PgPolicy(name, config);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAsBpB,MAAM,SAAmC;AAAA,EAY/C,YACU,MACT,QACC;AAFQ;AAGT,QAAI,QAAQ;AACX,WAAK,KAAK,OAAO;AACjB,WAAK,MAAM,OAAO;AAClB,WAAK,KAAK,OAAO;AACjB,WAAK,QAAQ,OAAO;AACpB,WAAK,YAAY,OAAO;AAAA,IACzB;AAAA,EACD;AAAA,EAtBA,QAAiB,wBAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGT;AAAA,EAeA,KAAK,OAAsB;AAC1B,SAAK,eAAe;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,SAAS,MAAc,QAAyB;AAC/D,SAAO,IAAI,SAAS,MAAM,MAAM;AACjC;","names":[]}
@@ -1,6 +1,7 @@
1
1
  import { entityKind } from "../entity.cjs";
2
2
  import type { SQL } from "../sql/sql.cjs";
3
3
  import type { PgRole } from "./roles.cjs";
4
+ import type { PgTable } from "./table.cjs";
4
5
  export type PgPolicyToOption = 'public' | 'current_role' | 'current_user' | 'session_user' | (string & {}) | PgPolicyToOption[] | PgRole;
5
6
  export interface PgPolicyConfig {
6
7
  as?: 'permissive' | 'restrictive';
@@ -18,5 +19,6 @@ export declare class PgPolicy implements PgPolicyConfig {
18
19
  readonly using: PgPolicyConfig['using'];
19
20
  readonly withCheck: PgPolicyConfig['withCheck'];
20
21
  constructor(name: string, config?: PgPolicyConfig);
22
+ link(table: PgTable): this;
21
23
  }
22
24
  export declare function pgPolicy(name: string, config?: PgPolicyConfig): PgPolicy;
@@ -1,6 +1,7 @@
1
1
  import { entityKind } from "../entity.js";
2
2
  import type { SQL } from "../sql/sql.js";
3
3
  import type { PgRole } from "./roles.js";
4
+ import type { PgTable } from "./table.js";
4
5
  export type PgPolicyToOption = 'public' | 'current_role' | 'current_user' | 'session_user' | (string & {}) | PgPolicyToOption[] | PgRole;
5
6
  export interface PgPolicyConfig {
6
7
  as?: 'permissive' | 'restrictive';
@@ -18,5 +19,6 @@ export declare class PgPolicy implements PgPolicyConfig {
18
19
  readonly using: PgPolicyConfig['using'];
19
20
  readonly withCheck: PgPolicyConfig['withCheck'];
20
21
  constructor(name: string, config?: PgPolicyConfig);
22
+ link(table: PgTable): this;
21
23
  }
22
24
  export declare function pgPolicy(name: string, config?: PgPolicyConfig): PgPolicy;
@@ -16,6 +16,12 @@ class PgPolicy {
16
16
  to;
17
17
  using;
18
18
  withCheck;
19
+ /** @internal */
20
+ _linkedTable;
21
+ link(table) {
22
+ this._linkedTable = table;
23
+ return this;
24
+ }
19
25
  }
20
26
  function pgPolicy(name, config) {
21
27
  return new PgPolicy(name, config);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/policies.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { PgRole } from './roles.ts';\n\nexport type PgPolicyToOption =\n\t| 'public'\n\t| 'current_role'\n\t| 'current_user'\n\t| 'session_user'\n\t| (string & {})\n\t| PgPolicyToOption[]\n\t| PgRole;\n\nexport interface PgPolicyConfig {\n\tas?: 'permissive' | 'restrictive';\n\tfor?: 'all' | 'select' | 'insert' | 'update' | 'delete';\n\tto?: PgPolicyToOption;\n\tusing?: SQL;\n\twithCheck?: SQL;\n}\n\nexport class PgPolicy implements PgPolicyConfig {\n\tstatic readonly [entityKind]: string = 'PgPolicy';\n\n\treadonly as: PgPolicyConfig['as'];\n\treadonly for: PgPolicyConfig['for'];\n\treadonly to: PgPolicyConfig['to'];\n\treadonly using: PgPolicyConfig['using'];\n\treadonly withCheck: PgPolicyConfig['withCheck'];\n\n\tconstructor(\n\t\treadonly name: string,\n\t\tconfig?: PgPolicyConfig,\n\t) {\n\t\tif (config) {\n\t\t\tthis.as = config.as;\n\t\t\tthis.for = config.for;\n\t\t\tthis.to = config.to;\n\t\t\tthis.using = config.using;\n\t\t\tthis.withCheck = config.withCheck;\n\t\t}\n\t}\n}\n\nexport function pgPolicy(name: string, config?: PgPolicyConfig) {\n\treturn new PgPolicy(name, config);\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAqBpB,MAAM,SAAmC;AAAA,EAS/C,YACU,MACT,QACC;AAFQ;AAGT,QAAI,QAAQ;AACX,WAAK,KAAK,OAAO;AACjB,WAAK,MAAM,OAAO;AAClB,WAAK,KAAK,OAAO;AACjB,WAAK,QAAQ,OAAO;AACpB,WAAK,YAAY,OAAO;AAAA,IACzB;AAAA,EACD;AAAA,EAnBA,QAAiB,UAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAcV;AAEO,SAAS,SAAS,MAAc,QAAyB;AAC/D,SAAO,IAAI,SAAS,MAAM,MAAM;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/policies.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { PgRole } from './roles.ts';\nimport type { PgTable } from './table.ts';\n\nexport type PgPolicyToOption =\n\t| 'public'\n\t| 'current_role'\n\t| 'current_user'\n\t| 'session_user'\n\t| (string & {})\n\t| PgPolicyToOption[]\n\t| PgRole;\n\nexport interface PgPolicyConfig {\n\tas?: 'permissive' | 'restrictive';\n\tfor?: 'all' | 'select' | 'insert' | 'update' | 'delete';\n\tto?: PgPolicyToOption;\n\tusing?: SQL;\n\twithCheck?: SQL;\n}\n\nexport class PgPolicy implements PgPolicyConfig {\n\tstatic readonly [entityKind]: string = 'PgPolicy';\n\n\treadonly as: PgPolicyConfig['as'];\n\treadonly for: PgPolicyConfig['for'];\n\treadonly to: PgPolicyConfig['to'];\n\treadonly using: PgPolicyConfig['using'];\n\treadonly withCheck: PgPolicyConfig['withCheck'];\n\n\t/** @internal */\n\t_linkedTable?: PgTable;\n\n\tconstructor(\n\t\treadonly name: string,\n\t\tconfig?: PgPolicyConfig,\n\t) {\n\t\tif (config) {\n\t\t\tthis.as = config.as;\n\t\t\tthis.for = config.for;\n\t\t\tthis.to = config.to;\n\t\t\tthis.using = config.using;\n\t\t\tthis.withCheck = config.withCheck;\n\t\t}\n\t}\n\n\tlink(table: PgTable): this {\n\t\tthis._linkedTable = table;\n\t\treturn this;\n\t}\n}\n\nexport function pgPolicy(name: string, config?: PgPolicyConfig) {\n\treturn new PgPolicy(name, config);\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAsBpB,MAAM,SAAmC;AAAA,EAY/C,YACU,MACT,QACC;AAFQ;AAGT,QAAI,QAAQ;AACX,WAAK,KAAK,OAAO;AACjB,WAAK,MAAM,OAAO;AAClB,WAAK,KAAK,OAAO;AACjB,WAAK,QAAQ,OAAO;AACpB,WAAK,YAAY,OAAO;AAAA,IACzB;AAAA,EACD;AAAA,EAtBA,QAAiB,UAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGT;AAAA,EAeA,KAAK,OAAsB;AAC1B,SAAK,eAAe;AACpB,WAAO;AAAA,EACR;AACD;AAEO,SAAS,SAAS,MAAc,QAAyB;AAC/D,SAAO,IAAI,SAAS,MAAM,MAAM;AACjC;","names":[]}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var supabase_exports = {};
17
+ module.exports = __toCommonJS(supabase_exports);
18
+ __reExport(supabase_exports, require("./rls.cjs"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("./rls.cjs")
22
+ });
23
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/supabase/index.ts"],"sourcesContent":["export * from './rls.ts';\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,6BAAc,qBAAd;","names":[]}
@@ -0,0 +1 @@
1
+ export * from "./rls.cjs";
@@ -0,0 +1 @@
1
+ export * from "./rls.js";
@@ -0,0 +1,2 @@
1
+ export * from "./rls.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/supabase/index.ts"],"sourcesContent":["export * from './rls.ts';\n"],"mappings":"AAAA,cAAc;","names":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var rls_exports = {};
20
+ __export(rls_exports, {
21
+ anonRole: () => anonRole,
22
+ authUid: () => authUid,
23
+ authUsers: () => authUsers,
24
+ authenticatedRole: () => authenticatedRole,
25
+ postgresRole: () => postgresRole,
26
+ realtimeMessages: () => realtimeMessages,
27
+ realtimeTopic: () => realtimeTopic,
28
+ serviceRole: () => serviceRole,
29
+ supabaseAuthAdminRole: () => supabaseAuthAdminRole
30
+ });
31
+ module.exports = __toCommonJS(rls_exports);
32
+ var import_pg_core = require("../pg-core/index.cjs");
33
+ var import_roles = require("../pg-core/roles.cjs");
34
+ var import_sql = require("../sql/sql.cjs");
35
+ const anonRole = (0, import_roles.pgRole)("anon").existing();
36
+ const authenticatedRole = (0, import_roles.pgRole)("authenticated").existing();
37
+ const serviceRole = (0, import_roles.pgRole)("service_role").existing();
38
+ const postgresRole = (0, import_roles.pgRole)("postgres_role").existing();
39
+ const supabaseAuthAdminRole = (0, import_roles.pgRole)("supabase_auth_admin").existing();
40
+ const auth = (0, import_pg_core.pgSchema)("auth");
41
+ const authUsers = auth.table("users", {
42
+ id: (0, import_pg_core.uuid)().primaryKey().notNull()
43
+ });
44
+ const realtime = (0, import_pg_core.pgSchema)("realtime");
45
+ const realtimeMessages = realtime.table(
46
+ "messages",
47
+ {
48
+ id: (0, import_pg_core.bigserial)({ mode: "bigint" }).primaryKey(),
49
+ topic: (0, import_pg_core.text)().notNull(),
50
+ extension: (0, import_pg_core.text)({
51
+ enum: ["presence", "broadcast", "postgres_changes"]
52
+ }).notNull()
53
+ }
54
+ );
55
+ const authUid = import_sql.sql`(select ${authUsers.id})`;
56
+ const realtimeTopic = import_sql.sql`${realtimeMessages.topic}`;
57
+ // Annotate the CommonJS export names for ESM import in node:
58
+ 0 && (module.exports = {
59
+ anonRole,
60
+ authUid,
61
+ authUsers,
62
+ authenticatedRole,
63
+ postgresRole,
64
+ realtimeMessages,
65
+ realtimeTopic,
66
+ serviceRole,
67
+ supabaseAuthAdminRole
68
+ });
69
+ //# sourceMappingURL=rls.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/supabase/rls.ts"],"sourcesContent":["import { bigserial, pgSchema, text, uuid } from '~/pg-core/index.ts';\nimport { pgRole } from '~/pg-core/roles.ts';\nimport { sql } from '~/sql/sql.ts';\n\nexport const anonRole = pgRole('anon').existing();\nexport const authenticatedRole = pgRole('authenticated').existing();\nexport const serviceRole = pgRole('service_role').existing();\nexport const postgresRole = pgRole('postgres_role').existing();\nexport const supabaseAuthAdminRole = pgRole('supabase_auth_admin').existing();\n\n/* ------------------------------ auth schema; ------------------------------ */\nconst auth = pgSchema('auth');\n\nexport const authUsers = auth.table('users', {\n\tid: uuid().primaryKey().notNull(),\n});\n\n/* ------------------------------ realtime schema; ------------------------------ */\nconst realtime = pgSchema('realtime');\n\nexport const realtimeMessages = realtime.table(\n\t'messages',\n\t{\n\t\tid: bigserial({ mode: 'bigint' }).primaryKey(),\n\t\ttopic: text().notNull(),\n\t\textension: text({\n\t\t\tenum: ['presence', 'broadcast', 'postgres_changes'],\n\t\t}).notNull(),\n\t},\n);\n\nexport const authUid = sql`(select ${authUsers.id})`;\nexport const realtimeTopic = sql`${realtimeMessages.topic}`;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAgD;AAChD,mBAAuB;AACvB,iBAAoB;AAEb,MAAM,eAAW,qBAAO,MAAM,EAAE,SAAS;AACzC,MAAM,wBAAoB,qBAAO,eAAe,EAAE,SAAS;AAC3D,MAAM,kBAAc,qBAAO,cAAc,EAAE,SAAS;AACpD,MAAM,mBAAe,qBAAO,eAAe,EAAE,SAAS;AACtD,MAAM,4BAAwB,qBAAO,qBAAqB,EAAE,SAAS;AAG5E,MAAM,WAAO,yBAAS,MAAM;AAErB,MAAM,YAAY,KAAK,MAAM,SAAS;AAAA,EAC5C,QAAI,qBAAK,EAAE,WAAW,EAAE,QAAQ;AACjC,CAAC;AAGD,MAAM,eAAW,yBAAS,UAAU;AAE7B,MAAM,mBAAmB,SAAS;AAAA,EACxC;AAAA,EACA;AAAA,IACC,QAAI,0BAAU,EAAE,MAAM,SAAS,CAAC,EAAE,WAAW;AAAA,IAC7C,WAAO,qBAAK,EAAE,QAAQ;AAAA,IACtB,eAAW,qBAAK;AAAA,MACf,MAAM,CAAC,YAAY,aAAa,kBAAkB;AAAA,IACnD,CAAC,EAAE,QAAQ;AAAA,EACZ;AACD;AAEO,MAAM,UAAU,yBAAc,UAAU,EAAE;AAC1C,MAAM,gBAAgB,iBAAM,iBAAiB,KAAK;","names":[]}
@@ -0,0 +1,85 @@
1
+ export declare const anonRole: import("../pg-core/roles.ts").PgRole;
2
+ export declare const authenticatedRole: import("../pg-core/roles.ts").PgRole;
3
+ export declare const serviceRole: import("../pg-core/roles.ts").PgRole;
4
+ export declare const postgresRole: import("../pg-core/roles.ts").PgRole;
5
+ export declare const supabaseAuthAdminRole: import("../pg-core/roles.ts").PgRole;
6
+ export declare const authUsers: import("../pg-core/index.ts").PgTableWithColumns<{
7
+ name: "users";
8
+ schema: "auth";
9
+ columns: {
10
+ id: import("../pg-core/index.ts").PgColumn<{
11
+ name: "id";
12
+ tableName: "users";
13
+ dataType: "string";
14
+ columnType: "PgUUID";
15
+ data: string;
16
+ driverParam: string;
17
+ notNull: true;
18
+ hasDefault: false;
19
+ isPrimaryKey: true;
20
+ isAutoincrement: false;
21
+ hasRuntimeDefault: false;
22
+ enumValues: undefined;
23
+ baseColumn: never;
24
+ generated: undefined;
25
+ }, {}, {}>;
26
+ };
27
+ dialect: "pg";
28
+ }>;
29
+ export declare const realtimeMessages: import("../pg-core/index.ts").PgTableWithColumns<{
30
+ name: "messages";
31
+ schema: "realtime";
32
+ columns: {
33
+ id: import("../pg-core/index.ts").PgColumn<{
34
+ name: "id";
35
+ tableName: "messages";
36
+ dataType: "bigint";
37
+ columnType: "PgBigSerial64";
38
+ data: bigint;
39
+ driverParam: string;
40
+ notNull: true;
41
+ hasDefault: true;
42
+ isPrimaryKey: true;
43
+ isAutoincrement: false;
44
+ hasRuntimeDefault: false;
45
+ enumValues: undefined;
46
+ baseColumn: never;
47
+ generated: undefined;
48
+ }, {}, {}>;
49
+ topic: import("../pg-core/index.ts").PgColumn<{
50
+ name: "topic";
51
+ tableName: "messages";
52
+ dataType: "string";
53
+ columnType: "PgText";
54
+ data: string;
55
+ driverParam: string;
56
+ notNull: true;
57
+ hasDefault: false;
58
+ isPrimaryKey: false;
59
+ isAutoincrement: false;
60
+ hasRuntimeDefault: false;
61
+ enumValues: [string, ...string[]];
62
+ baseColumn: never;
63
+ generated: undefined;
64
+ }, {}, {}>;
65
+ extension: import("../pg-core/index.ts").PgColumn<{
66
+ name: "extension";
67
+ tableName: "messages";
68
+ dataType: "string";
69
+ columnType: "PgText";
70
+ data: "presence" | "broadcast" | "postgres_changes";
71
+ driverParam: string;
72
+ notNull: true;
73
+ hasDefault: false;
74
+ isPrimaryKey: false;
75
+ isAutoincrement: false;
76
+ hasRuntimeDefault: false;
77
+ enumValues: ["presence", "broadcast", "postgres_changes"];
78
+ baseColumn: never;
79
+ generated: undefined;
80
+ }, {}, {}>;
81
+ };
82
+ dialect: "pg";
83
+ }>;
84
+ export declare const authUid: import("../sql/sql.ts").SQL<unknown>;
85
+ export declare const realtimeTopic: import("../sql/sql.ts").SQL<unknown>;
@@ -0,0 +1,85 @@
1
+ export declare const anonRole: import("../pg-core/roles.js").PgRole;
2
+ export declare const authenticatedRole: import("../pg-core/roles.js").PgRole;
3
+ export declare const serviceRole: import("../pg-core/roles.js").PgRole;
4
+ export declare const postgresRole: import("../pg-core/roles.js").PgRole;
5
+ export declare const supabaseAuthAdminRole: import("../pg-core/roles.js").PgRole;
6
+ export declare const authUsers: import("../pg-core/index.js").PgTableWithColumns<{
7
+ name: "users";
8
+ schema: "auth";
9
+ columns: {
10
+ id: import("../pg-core/index.js").PgColumn<{
11
+ name: "id";
12
+ tableName: "users";
13
+ dataType: "string";
14
+ columnType: "PgUUID";
15
+ data: string;
16
+ driverParam: string;
17
+ notNull: true;
18
+ hasDefault: false;
19
+ isPrimaryKey: true;
20
+ isAutoincrement: false;
21
+ hasRuntimeDefault: false;
22
+ enumValues: undefined;
23
+ baseColumn: never;
24
+ generated: undefined;
25
+ }, {}, {}>;
26
+ };
27
+ dialect: "pg";
28
+ }>;
29
+ export declare const realtimeMessages: import("../pg-core/index.js").PgTableWithColumns<{
30
+ name: "messages";
31
+ schema: "realtime";
32
+ columns: {
33
+ id: import("../pg-core/index.js").PgColumn<{
34
+ name: "id";
35
+ tableName: "messages";
36
+ dataType: "bigint";
37
+ columnType: "PgBigSerial64";
38
+ data: bigint;
39
+ driverParam: string;
40
+ notNull: true;
41
+ hasDefault: true;
42
+ isPrimaryKey: true;
43
+ isAutoincrement: false;
44
+ hasRuntimeDefault: false;
45
+ enumValues: undefined;
46
+ baseColumn: never;
47
+ generated: undefined;
48
+ }, {}, {}>;
49
+ topic: import("../pg-core/index.js").PgColumn<{
50
+ name: "topic";
51
+ tableName: "messages";
52
+ dataType: "string";
53
+ columnType: "PgText";
54
+ data: string;
55
+ driverParam: string;
56
+ notNull: true;
57
+ hasDefault: false;
58
+ isPrimaryKey: false;
59
+ isAutoincrement: false;
60
+ hasRuntimeDefault: false;
61
+ enumValues: [string, ...string[]];
62
+ baseColumn: never;
63
+ generated: undefined;
64
+ }, {}, {}>;
65
+ extension: import("../pg-core/index.js").PgColumn<{
66
+ name: "extension";
67
+ tableName: "messages";
68
+ dataType: "string";
69
+ columnType: "PgText";
70
+ data: "presence" | "broadcast" | "postgres_changes";
71
+ driverParam: string;
72
+ notNull: true;
73
+ hasDefault: false;
74
+ isPrimaryKey: false;
75
+ isAutoincrement: false;
76
+ hasRuntimeDefault: false;
77
+ enumValues: ["presence", "broadcast", "postgres_changes"];
78
+ baseColumn: never;
79
+ generated: undefined;
80
+ }, {}, {}>;
81
+ };
82
+ dialect: "pg";
83
+ }>;
84
+ export declare const authUid: import("../sql/sql.js").SQL<unknown>;
85
+ export declare const realtimeTopic: import("../sql/sql.js").SQL<unknown>;
@@ -0,0 +1,37 @@
1
+ import { bigserial, pgSchema, text, uuid } from "../pg-core/index.js";
2
+ import { pgRole } from "../pg-core/roles.js";
3
+ import { sql } from "../sql/sql.js";
4
+ const anonRole = pgRole("anon").existing();
5
+ const authenticatedRole = pgRole("authenticated").existing();
6
+ const serviceRole = pgRole("service_role").existing();
7
+ const postgresRole = pgRole("postgres_role").existing();
8
+ const supabaseAuthAdminRole = pgRole("supabase_auth_admin").existing();
9
+ const auth = pgSchema("auth");
10
+ const authUsers = auth.table("users", {
11
+ id: uuid().primaryKey().notNull()
12
+ });
13
+ const realtime = pgSchema("realtime");
14
+ const realtimeMessages = realtime.table(
15
+ "messages",
16
+ {
17
+ id: bigserial({ mode: "bigint" }).primaryKey(),
18
+ topic: text().notNull(),
19
+ extension: text({
20
+ enum: ["presence", "broadcast", "postgres_changes"]
21
+ }).notNull()
22
+ }
23
+ );
24
+ const authUid = sql`(select ${authUsers.id})`;
25
+ const realtimeTopic = sql`${realtimeMessages.topic}`;
26
+ export {
27
+ anonRole,
28
+ authUid,
29
+ authUsers,
30
+ authenticatedRole,
31
+ postgresRole,
32
+ realtimeMessages,
33
+ realtimeTopic,
34
+ serviceRole,
35
+ supabaseAuthAdminRole
36
+ };
37
+ //# sourceMappingURL=rls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/supabase/rls.ts"],"sourcesContent":["import { bigserial, pgSchema, text, uuid } from '~/pg-core/index.ts';\nimport { pgRole } from '~/pg-core/roles.ts';\nimport { sql } from '~/sql/sql.ts';\n\nexport const anonRole = pgRole('anon').existing();\nexport const authenticatedRole = pgRole('authenticated').existing();\nexport const serviceRole = pgRole('service_role').existing();\nexport const postgresRole = pgRole('postgres_role').existing();\nexport const supabaseAuthAdminRole = pgRole('supabase_auth_admin').existing();\n\n/* ------------------------------ auth schema; ------------------------------ */\nconst auth = pgSchema('auth');\n\nexport const authUsers = auth.table('users', {\n\tid: uuid().primaryKey().notNull(),\n});\n\n/* ------------------------------ realtime schema; ------------------------------ */\nconst realtime = pgSchema('realtime');\n\nexport const realtimeMessages = realtime.table(\n\t'messages',\n\t{\n\t\tid: bigserial({ mode: 'bigint' }).primaryKey(),\n\t\ttopic: text().notNull(),\n\t\textension: text({\n\t\t\tenum: ['presence', 'broadcast', 'postgres_changes'],\n\t\t}).notNull(),\n\t},\n);\n\nexport const authUid = sql`(select ${authUsers.id})`;\nexport const realtimeTopic = sql`${realtimeMessages.topic}`;\n"],"mappings":"AAAA,SAAS,WAAW,UAAU,MAAM,YAAY;AAChD,SAAS,cAAc;AACvB,SAAS,WAAW;AAEb,MAAM,WAAW,OAAO,MAAM,EAAE,SAAS;AACzC,MAAM,oBAAoB,OAAO,eAAe,EAAE,SAAS;AAC3D,MAAM,cAAc,OAAO,cAAc,EAAE,SAAS;AACpD,MAAM,eAAe,OAAO,eAAe,EAAE,SAAS;AACtD,MAAM,wBAAwB,OAAO,qBAAqB,EAAE,SAAS;AAG5E,MAAM,OAAO,SAAS,MAAM;AAErB,MAAM,YAAY,KAAK,MAAM,SAAS;AAAA,EAC5C,IAAI,KAAK,EAAE,WAAW,EAAE,QAAQ;AACjC,CAAC;AAGD,MAAM,WAAW,SAAS,UAAU;AAE7B,MAAM,mBAAmB,SAAS;AAAA,EACxC;AAAA,EACA;AAAA,IACC,IAAI,UAAU,EAAE,MAAM,SAAS,CAAC,EAAE,WAAW;AAAA,IAC7C,OAAO,KAAK,EAAE,QAAQ;AAAA,IACtB,WAAW,KAAK;AAAA,MACf,MAAM,CAAC,YAAY,aAAa,kBAAkB;AAAA,IACnD,CAAC,EAAE,QAAQ;AAAA,EACZ;AACD;AAEO,MAAM,UAAU,cAAc,UAAU,EAAE;AAC1C,MAAM,gBAAgB,MAAM,iBAAiB,KAAK;","names":[]}
package/version.cjs CHANGED
@@ -26,7 +26,7 @@ __export(version_exports, {
26
26
  module.exports = __toCommonJS(version_exports);
27
27
 
28
28
  // package.json
29
- var version = "0.35.3-4cb1bdb";
29
+ var version = "0.35.3-53e089b";
30
30
 
31
31
  // src/version.ts
32
32
  var compatibilityVersion = 9;
package/version.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- var version = "0.35.3-4cb1bdb";
1
+ var version = "0.35.3-53e089b";
2
2
 
3
3
  declare const compatibilityVersion = 9;
4
4
 
package/version.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- var version = "0.35.3-4cb1bdb";
1
+ var version = "0.35.3-53e089b";
2
2
 
3
3
  declare const compatibilityVersion = 9;
4
4
 
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // package.json
2
- var version = "0.35.3-4cb1bdb";
2
+ var version = "0.35.3-53e089b";
3
3
 
4
4
  // src/version.ts
5
5
  var compatibilityVersion = 9;