0001_snapshot.json 26 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010
  1. {
  2. "id": "8f34f59b-cf3f-4192-8b67-e1c616de23b2",
  3. "prevId": "a831c227-d802-477d-b1a4-0ad96c9f225c",
  4. "version": "7",
  5. "dialect": "postgresql",
  6. "tables": {
  7. "public.accounts": {
  8. "name": "accounts",
  9. "schema": "",
  10. "columns": {
  11. "id": {
  12. "name": "id",
  13. "type": "text",
  14. "primaryKey": true,
  15. "notNull": true
  16. },
  17. "user_id": {
  18. "name": "user_id",
  19. "type": "text",
  20. "primaryKey": false,
  21. "notNull": true
  22. },
  23. "account_id": {
  24. "name": "account_id",
  25. "type": "text",
  26. "primaryKey": false,
  27. "notNull": true
  28. },
  29. "provider_id": {
  30. "name": "provider_id",
  31. "type": "text",
  32. "primaryKey": false,
  33. "notNull": true
  34. },
  35. "access_token": {
  36. "name": "access_token",
  37. "type": "text",
  38. "primaryKey": false,
  39. "notNull": false
  40. },
  41. "refresh_token": {
  42. "name": "refresh_token",
  43. "type": "text",
  44. "primaryKey": false,
  45. "notNull": false
  46. },
  47. "id_token": {
  48. "name": "id_token",
  49. "type": "text",
  50. "primaryKey": false,
  51. "notNull": false
  52. },
  53. "access_token_expires_at": {
  54. "name": "access_token_expires_at",
  55. "type": "timestamp with time zone",
  56. "primaryKey": false,
  57. "notNull": false
  58. },
  59. "refresh_token_expires_at": {
  60. "name": "refresh_token_expires_at",
  61. "type": "timestamp with time zone",
  62. "primaryKey": false,
  63. "notNull": false
  64. },
  65. "scope": {
  66. "name": "scope",
  67. "type": "text",
  68. "primaryKey": false,
  69. "notNull": false
  70. },
  71. "password": {
  72. "name": "password",
  73. "type": "text",
  74. "primaryKey": false,
  75. "notNull": false
  76. },
  77. "created_at": {
  78. "name": "created_at",
  79. "type": "timestamp with time zone",
  80. "primaryKey": false,
  81. "notNull": true,
  82. "default": "now()"
  83. },
  84. "updated_at": {
  85. "name": "updated_at",
  86. "type": "timestamp with time zone",
  87. "primaryKey": false,
  88. "notNull": true,
  89. "default": "now()"
  90. }
  91. },
  92. "indexes": {
  93. "accounts_user_id_idx": {
  94. "name": "accounts_user_id_idx",
  95. "columns": [
  96. {
  97. "expression": "user_id",
  98. "isExpression": false,
  99. "asc": true,
  100. "nulls": "last"
  101. }
  102. ],
  103. "isUnique": false,
  104. "concurrently": false,
  105. "method": "btree",
  106. "with": {}
  107. },
  108. "accounts_provider_account_idx": {
  109. "name": "accounts_provider_account_idx",
  110. "columns": [
  111. {
  112. "expression": "provider_id",
  113. "isExpression": false,
  114. "asc": true,
  115. "nulls": "last"
  116. },
  117. {
  118. "expression": "account_id",
  119. "isExpression": false,
  120. "asc": true,
  121. "nulls": "last"
  122. }
  123. ],
  124. "isUnique": true,
  125. "concurrently": false,
  126. "method": "btree",
  127. "with": {}
  128. }
  129. },
  130. "foreignKeys": {
  131. "accounts_user_id_users_id_fk": {
  132. "name": "accounts_user_id_users_id_fk",
  133. "tableFrom": "accounts",
  134. "tableTo": "users",
  135. "columnsFrom": ["user_id"],
  136. "columnsTo": ["id"],
  137. "onDelete": "cascade",
  138. "onUpdate": "no action"
  139. }
  140. },
  141. "compositePrimaryKeys": {},
  142. "uniqueConstraints": {},
  143. "policies": {},
  144. "checkConstraints": {},
  145. "isRLSEnabled": false
  146. },
  147. "public.api_keys": {
  148. "name": "api_keys",
  149. "schema": "",
  150. "columns": {
  151. "id": {
  152. "name": "id",
  153. "type": "text",
  154. "primaryKey": true,
  155. "notNull": true
  156. },
  157. "project_id": {
  158. "name": "project_id",
  159. "type": "text",
  160. "primaryKey": false,
  161. "notNull": true
  162. },
  163. "created_by": {
  164. "name": "created_by",
  165. "type": "text",
  166. "primaryKey": false,
  167. "notNull": true
  168. },
  169. "name": {
  170. "name": "name",
  171. "type": "text",
  172. "primaryKey": false,
  173. "notNull": true
  174. },
  175. "hash": {
  176. "name": "hash",
  177. "type": "text",
  178. "primaryKey": false,
  179. "notNull": true
  180. },
  181. "suffix": {
  182. "name": "suffix",
  183. "type": "varchar(4)",
  184. "primaryKey": false,
  185. "notNull": true
  186. },
  187. "last_used_at": {
  188. "name": "last_used_at",
  189. "type": "timestamp with time zone",
  190. "primaryKey": false,
  191. "notNull": false
  192. },
  193. "expires_at": {
  194. "name": "expires_at",
  195. "type": "timestamp with time zone",
  196. "primaryKey": false,
  197. "notNull": false
  198. },
  199. "created_at": {
  200. "name": "created_at",
  201. "type": "timestamp with time zone",
  202. "primaryKey": false,
  203. "notNull": true,
  204. "default": "now()"
  205. },
  206. "revoked_at": {
  207. "name": "revoked_at",
  208. "type": "timestamp with time zone",
  209. "primaryKey": false,
  210. "notNull": false
  211. }
  212. },
  213. "indexes": {
  214. "api_keys_hash_idx": {
  215. "name": "api_keys_hash_idx",
  216. "columns": [
  217. {
  218. "expression": "hash",
  219. "isExpression": false,
  220. "asc": true,
  221. "nulls": "last"
  222. }
  223. ],
  224. "isUnique": true,
  225. "concurrently": false,
  226. "method": "btree",
  227. "with": {}
  228. },
  229. "api_keys_project_idx": {
  230. "name": "api_keys_project_idx",
  231. "columns": [
  232. {
  233. "expression": "project_id",
  234. "isExpression": false,
  235. "asc": true,
  236. "nulls": "last"
  237. }
  238. ],
  239. "isUnique": false,
  240. "concurrently": false,
  241. "method": "btree",
  242. "with": {}
  243. }
  244. },
  245. "foreignKeys": {
  246. "api_keys_project_id_projects_id_fk": {
  247. "name": "api_keys_project_id_projects_id_fk",
  248. "tableFrom": "api_keys",
  249. "tableTo": "projects",
  250. "columnsFrom": ["project_id"],
  251. "columnsTo": ["id"],
  252. "onDelete": "cascade",
  253. "onUpdate": "no action"
  254. },
  255. "api_keys_created_by_users_id_fk": {
  256. "name": "api_keys_created_by_users_id_fk",
  257. "tableFrom": "api_keys",
  258. "tableTo": "users",
  259. "columnsFrom": ["created_by"],
  260. "columnsTo": ["id"],
  261. "onDelete": "no action",
  262. "onUpdate": "no action"
  263. }
  264. },
  265. "compositePrimaryKeys": {},
  266. "uniqueConstraints": {},
  267. "policies": {},
  268. "checkConstraints": {},
  269. "isRLSEnabled": false
  270. },
  271. "public.audit_logs": {
  272. "name": "audit_logs",
  273. "schema": "",
  274. "columns": {
  275. "id": {
  276. "name": "id",
  277. "type": "text",
  278. "primaryKey": true,
  279. "notNull": true
  280. },
  281. "actor_id": {
  282. "name": "actor_id",
  283. "type": "text",
  284. "primaryKey": false,
  285. "notNull": false
  286. },
  287. "project_id": {
  288. "name": "project_id",
  289. "type": "text",
  290. "primaryKey": false,
  291. "notNull": false
  292. },
  293. "action": {
  294. "name": "action",
  295. "type": "text",
  296. "primaryKey": false,
  297. "notNull": true
  298. },
  299. "ip_hash": {
  300. "name": "ip_hash",
  301. "type": "varchar(64)",
  302. "primaryKey": false,
  303. "notNull": false
  304. },
  305. "user_agent": {
  306. "name": "user_agent",
  307. "type": "text",
  308. "primaryKey": false,
  309. "notNull": false
  310. },
  311. "metadata": {
  312. "name": "metadata",
  313. "type": "jsonb",
  314. "primaryKey": false,
  315. "notNull": false
  316. },
  317. "created_at": {
  318. "name": "created_at",
  319. "type": "timestamp with time zone",
  320. "primaryKey": false,
  321. "notNull": true,
  322. "default": "now()"
  323. }
  324. },
  325. "indexes": {
  326. "audit_logs_project_created_idx": {
  327. "name": "audit_logs_project_created_idx",
  328. "columns": [
  329. {
  330. "expression": "project_id",
  331. "isExpression": false,
  332. "asc": true,
  333. "nulls": "last"
  334. },
  335. {
  336. "expression": "created_at",
  337. "isExpression": false,
  338. "asc": true,
  339. "nulls": "last"
  340. }
  341. ],
  342. "isUnique": false,
  343. "concurrently": false,
  344. "method": "btree",
  345. "with": {}
  346. },
  347. "audit_logs_actor_created_idx": {
  348. "name": "audit_logs_actor_created_idx",
  349. "columns": [
  350. {
  351. "expression": "actor_id",
  352. "isExpression": false,
  353. "asc": true,
  354. "nulls": "last"
  355. },
  356. {
  357. "expression": "created_at",
  358. "isExpression": false,
  359. "asc": true,
  360. "nulls": "last"
  361. }
  362. ],
  363. "isUnique": false,
  364. "concurrently": false,
  365. "method": "btree",
  366. "with": {}
  367. }
  368. },
  369. "foreignKeys": {
  370. "audit_logs_actor_id_users_id_fk": {
  371. "name": "audit_logs_actor_id_users_id_fk",
  372. "tableFrom": "audit_logs",
  373. "tableTo": "users",
  374. "columnsFrom": ["actor_id"],
  375. "columnsTo": ["id"],
  376. "onDelete": "no action",
  377. "onUpdate": "no action"
  378. },
  379. "audit_logs_project_id_projects_id_fk": {
  380. "name": "audit_logs_project_id_projects_id_fk",
  381. "tableFrom": "audit_logs",
  382. "tableTo": "projects",
  383. "columnsFrom": ["project_id"],
  384. "columnsTo": ["id"],
  385. "onDelete": "no action",
  386. "onUpdate": "no action"
  387. }
  388. },
  389. "compositePrimaryKeys": {},
  390. "uniqueConstraints": {},
  391. "policies": {},
  392. "checkConstraints": {},
  393. "isRLSEnabled": false
  394. },
  395. "public.deployments": {
  396. "name": "deployments",
  397. "schema": "",
  398. "columns": {
  399. "id": {
  400. "name": "id",
  401. "type": "text",
  402. "primaryKey": true,
  403. "notNull": true
  404. },
  405. "project_id": {
  406. "name": "project_id",
  407. "type": "text",
  408. "primaryKey": false,
  409. "notNull": true
  410. },
  411. "triggered_by": {
  412. "name": "triggered_by",
  413. "type": "text",
  414. "primaryKey": false,
  415. "notNull": false
  416. },
  417. "api_key_id": {
  418. "name": "api_key_id",
  419. "type": "text",
  420. "primaryKey": false,
  421. "notNull": false
  422. },
  423. "status": {
  424. "name": "status",
  425. "type": "text",
  426. "primaryKey": false,
  427. "notNull": true,
  428. "default": "'pending'"
  429. },
  430. "schema_diff_summary": {
  431. "name": "schema_diff_summary",
  432. "type": "jsonb",
  433. "primaryKey": false,
  434. "notNull": false
  435. },
  436. "schema_snapshot": {
  437. "name": "schema_snapshot",
  438. "type": "jsonb",
  439. "primaryKey": false,
  440. "notNull": false
  441. },
  442. "function_count": {
  443. "name": "function_count",
  444. "type": "varchar(12)",
  445. "primaryKey": false,
  446. "notNull": false
  447. },
  448. "function_names": {
  449. "name": "function_names",
  450. "type": "jsonb",
  451. "primaryKey": false,
  452. "notNull": false
  453. },
  454. "error_code": {
  455. "name": "error_code",
  456. "type": "text",
  457. "primaryKey": false,
  458. "notNull": false
  459. },
  460. "error_message": {
  461. "name": "error_message",
  462. "type": "text",
  463. "primaryKey": false,
  464. "notNull": false
  465. },
  466. "started_at": {
  467. "name": "started_at",
  468. "type": "timestamp with time zone",
  469. "primaryKey": false,
  470. "notNull": false
  471. },
  472. "finished_at": {
  473. "name": "finished_at",
  474. "type": "timestamp with time zone",
  475. "primaryKey": false,
  476. "notNull": false
  477. },
  478. "created_at": {
  479. "name": "created_at",
  480. "type": "timestamp with time zone",
  481. "primaryKey": false,
  482. "notNull": true,
  483. "default": "now()"
  484. }
  485. },
  486. "indexes": {
  487. "deployments_project_created_idx": {
  488. "name": "deployments_project_created_idx",
  489. "columns": [
  490. {
  491. "expression": "project_id",
  492. "isExpression": false,
  493. "asc": true,
  494. "nulls": "last"
  495. },
  496. {
  497. "expression": "created_at",
  498. "isExpression": false,
  499. "asc": true,
  500. "nulls": "last"
  501. }
  502. ],
  503. "isUnique": false,
  504. "concurrently": false,
  505. "method": "btree",
  506. "with": {}
  507. },
  508. "deployments_status_idx": {
  509. "name": "deployments_status_idx",
  510. "columns": [
  511. {
  512. "expression": "status",
  513. "isExpression": false,
  514. "asc": true,
  515. "nulls": "last"
  516. }
  517. ],
  518. "isUnique": false,
  519. "concurrently": false,
  520. "method": "btree",
  521. "with": {}
  522. }
  523. },
  524. "foreignKeys": {
  525. "deployments_project_id_projects_id_fk": {
  526. "name": "deployments_project_id_projects_id_fk",
  527. "tableFrom": "deployments",
  528. "tableTo": "projects",
  529. "columnsFrom": ["project_id"],
  530. "columnsTo": ["id"],
  531. "onDelete": "cascade",
  532. "onUpdate": "no action"
  533. },
  534. "deployments_triggered_by_users_id_fk": {
  535. "name": "deployments_triggered_by_users_id_fk",
  536. "tableFrom": "deployments",
  537. "tableTo": "users",
  538. "columnsFrom": ["triggered_by"],
  539. "columnsTo": ["id"],
  540. "onDelete": "no action",
  541. "onUpdate": "no action"
  542. },
  543. "deployments_api_key_id_api_keys_id_fk": {
  544. "name": "deployments_api_key_id_api_keys_id_fk",
  545. "tableFrom": "deployments",
  546. "tableTo": "api_keys",
  547. "columnsFrom": ["api_key_id"],
  548. "columnsTo": ["id"],
  549. "onDelete": "no action",
  550. "onUpdate": "no action"
  551. }
  552. },
  553. "compositePrimaryKeys": {},
  554. "uniqueConstraints": {},
  555. "policies": {},
  556. "checkConstraints": {},
  557. "isRLSEnabled": false
  558. },
  559. "public.project_members": {
  560. "name": "project_members",
  561. "schema": "",
  562. "columns": {
  563. "project_id": {
  564. "name": "project_id",
  565. "type": "text",
  566. "primaryKey": false,
  567. "notNull": true
  568. },
  569. "user_id": {
  570. "name": "user_id",
  571. "type": "text",
  572. "primaryKey": false,
  573. "notNull": true
  574. },
  575. "role": {
  576. "name": "role",
  577. "type": "text",
  578. "primaryKey": false,
  579. "notNull": true,
  580. "default": "'developer'"
  581. },
  582. "created_at": {
  583. "name": "created_at",
  584. "type": "timestamp with time zone",
  585. "primaryKey": false,
  586. "notNull": true,
  587. "default": "now()"
  588. },
  589. "updated_at": {
  590. "name": "updated_at",
  591. "type": "timestamp with time zone",
  592. "primaryKey": false,
  593. "notNull": true,
  594. "default": "now()"
  595. }
  596. },
  597. "indexes": {},
  598. "foreignKeys": {
  599. "project_members_project_id_projects_id_fk": {
  600. "name": "project_members_project_id_projects_id_fk",
  601. "tableFrom": "project_members",
  602. "tableTo": "projects",
  603. "columnsFrom": ["project_id"],
  604. "columnsTo": ["id"],
  605. "onDelete": "cascade",
  606. "onUpdate": "no action"
  607. },
  608. "project_members_user_id_users_id_fk": {
  609. "name": "project_members_user_id_users_id_fk",
  610. "tableFrom": "project_members",
  611. "tableTo": "users",
  612. "columnsFrom": ["user_id"],
  613. "columnsTo": ["id"],
  614. "onDelete": "cascade",
  615. "onUpdate": "no action"
  616. }
  617. },
  618. "compositePrimaryKeys": {
  619. "project_members_project_id_user_id_pk": {
  620. "name": "project_members_project_id_user_id_pk",
  621. "columns": ["project_id", "user_id"]
  622. }
  623. },
  624. "uniqueConstraints": {},
  625. "policies": {},
  626. "checkConstraints": {},
  627. "isRLSEnabled": false
  628. },
  629. "public.projects": {
  630. "name": "projects",
  631. "schema": "",
  632. "columns": {
  633. "id": {
  634. "name": "id",
  635. "type": "text",
  636. "primaryKey": true,
  637. "notNull": true
  638. },
  639. "slug": {
  640. "name": "slug",
  641. "type": "text",
  642. "primaryKey": false,
  643. "notNull": true
  644. },
  645. "name": {
  646. "name": "name",
  647. "type": "text",
  648. "primaryKey": false,
  649. "notNull": true
  650. },
  651. "owner_id": {
  652. "name": "owner_id",
  653. "type": "text",
  654. "primaryKey": false,
  655. "notNull": true
  656. },
  657. "region": {
  658. "name": "region",
  659. "type": "text",
  660. "primaryKey": false,
  661. "notNull": true,
  662. "default": "'eu-west-1'"
  663. },
  664. "tier": {
  665. "name": "tier",
  666. "type": "text",
  667. "primaryKey": false,
  668. "notNull": true,
  669. "default": "'free'"
  670. },
  671. "shard_id": {
  672. "name": "shard_id",
  673. "type": "text",
  674. "primaryKey": false,
  675. "notNull": false
  676. },
  677. "created_at": {
  678. "name": "created_at",
  679. "type": "timestamp with time zone",
  680. "primaryKey": false,
  681. "notNull": true,
  682. "default": "now()"
  683. },
  684. "updated_at": {
  685. "name": "updated_at",
  686. "type": "timestamp with time zone",
  687. "primaryKey": false,
  688. "notNull": true,
  689. "default": "now()"
  690. },
  691. "deleted_at": {
  692. "name": "deleted_at",
  693. "type": "timestamp with time zone",
  694. "primaryKey": false,
  695. "notNull": false
  696. }
  697. },
  698. "indexes": {
  699. "projects_slug_idx": {
  700. "name": "projects_slug_idx",
  701. "columns": [
  702. {
  703. "expression": "slug",
  704. "isExpression": false,
  705. "asc": true,
  706. "nulls": "last"
  707. }
  708. ],
  709. "isUnique": true,
  710. "concurrently": false,
  711. "method": "btree",
  712. "with": {}
  713. },
  714. "projects_owner_idx": {
  715. "name": "projects_owner_idx",
  716. "columns": [
  717. {
  718. "expression": "owner_id",
  719. "isExpression": false,
  720. "asc": true,
  721. "nulls": "last"
  722. }
  723. ],
  724. "isUnique": false,
  725. "concurrently": false,
  726. "method": "btree",
  727. "with": {}
  728. }
  729. },
  730. "foreignKeys": {
  731. "projects_owner_id_users_id_fk": {
  732. "name": "projects_owner_id_users_id_fk",
  733. "tableFrom": "projects",
  734. "tableTo": "users",
  735. "columnsFrom": ["owner_id"],
  736. "columnsTo": ["id"],
  737. "onDelete": "no action",
  738. "onUpdate": "no action"
  739. }
  740. },
  741. "compositePrimaryKeys": {},
  742. "uniqueConstraints": {},
  743. "policies": {},
  744. "checkConstraints": {},
  745. "isRLSEnabled": false
  746. },
  747. "public.sessions": {
  748. "name": "sessions",
  749. "schema": "",
  750. "columns": {
  751. "id": {
  752. "name": "id",
  753. "type": "text",
  754. "primaryKey": true,
  755. "notNull": true
  756. },
  757. "user_id": {
  758. "name": "user_id",
  759. "type": "text",
  760. "primaryKey": false,
  761. "notNull": true
  762. },
  763. "token": {
  764. "name": "token",
  765. "type": "text",
  766. "primaryKey": false,
  767. "notNull": true
  768. },
  769. "expires_at": {
  770. "name": "expires_at",
  771. "type": "timestamp with time zone",
  772. "primaryKey": false,
  773. "notNull": true
  774. },
  775. "ip_address": {
  776. "name": "ip_address",
  777. "type": "text",
  778. "primaryKey": false,
  779. "notNull": false
  780. },
  781. "user_agent": {
  782. "name": "user_agent",
  783. "type": "text",
  784. "primaryKey": false,
  785. "notNull": false
  786. },
  787. "created_at": {
  788. "name": "created_at",
  789. "type": "timestamp with time zone",
  790. "primaryKey": false,
  791. "notNull": true,
  792. "default": "now()"
  793. },
  794. "updated_at": {
  795. "name": "updated_at",
  796. "type": "timestamp with time zone",
  797. "primaryKey": false,
  798. "notNull": true,
  799. "default": "now()"
  800. }
  801. },
  802. "indexes": {
  803. "sessions_token_idx": {
  804. "name": "sessions_token_idx",
  805. "columns": [
  806. {
  807. "expression": "token",
  808. "isExpression": false,
  809. "asc": true,
  810. "nulls": "last"
  811. }
  812. ],
  813. "isUnique": true,
  814. "concurrently": false,
  815. "method": "btree",
  816. "with": {}
  817. },
  818. "sessions_user_id_idx": {
  819. "name": "sessions_user_id_idx",
  820. "columns": [
  821. {
  822. "expression": "user_id",
  823. "isExpression": false,
  824. "asc": true,
  825. "nulls": "last"
  826. }
  827. ],
  828. "isUnique": false,
  829. "concurrently": false,
  830. "method": "btree",
  831. "with": {}
  832. }
  833. },
  834. "foreignKeys": {
  835. "sessions_user_id_users_id_fk": {
  836. "name": "sessions_user_id_users_id_fk",
  837. "tableFrom": "sessions",
  838. "tableTo": "users",
  839. "columnsFrom": ["user_id"],
  840. "columnsTo": ["id"],
  841. "onDelete": "cascade",
  842. "onUpdate": "no action"
  843. }
  844. },
  845. "compositePrimaryKeys": {},
  846. "uniqueConstraints": {},
  847. "policies": {},
  848. "checkConstraints": {},
  849. "isRLSEnabled": false
  850. },
  851. "public.users": {
  852. "name": "users",
  853. "schema": "",
  854. "columns": {
  855. "id": {
  856. "name": "id",
  857. "type": "text",
  858. "primaryKey": true,
  859. "notNull": true
  860. },
  861. "email": {
  862. "name": "email",
  863. "type": "text",
  864. "primaryKey": false,
  865. "notNull": true
  866. },
  867. "email_verified": {
  868. "name": "email_verified",
  869. "type": "boolean",
  870. "primaryKey": false,
  871. "notNull": true,
  872. "default": false
  873. },
  874. "name": {
  875. "name": "name",
  876. "type": "text",
  877. "primaryKey": false,
  878. "notNull": false
  879. },
  880. "image": {
  881. "name": "image",
  882. "type": "text",
  883. "primaryKey": false,
  884. "notNull": false
  885. },
  886. "created_at": {
  887. "name": "created_at",
  888. "type": "timestamp with time zone",
  889. "primaryKey": false,
  890. "notNull": true,
  891. "default": "now()"
  892. },
  893. "updated_at": {
  894. "name": "updated_at",
  895. "type": "timestamp with time zone",
  896. "primaryKey": false,
  897. "notNull": true,
  898. "default": "now()"
  899. },
  900. "deleted_at": {
  901. "name": "deleted_at",
  902. "type": "timestamp with time zone",
  903. "primaryKey": false,
  904. "notNull": false
  905. }
  906. },
  907. "indexes": {
  908. "users_email_idx": {
  909. "name": "users_email_idx",
  910. "columns": [
  911. {
  912. "expression": "email",
  913. "isExpression": false,
  914. "asc": true,
  915. "nulls": "last"
  916. }
  917. ],
  918. "isUnique": true,
  919. "concurrently": false,
  920. "method": "btree",
  921. "with": {}
  922. }
  923. },
  924. "foreignKeys": {},
  925. "compositePrimaryKeys": {},
  926. "uniqueConstraints": {},
  927. "policies": {},
  928. "checkConstraints": {},
  929. "isRLSEnabled": false
  930. },
  931. "public.verifications": {
  932. "name": "verifications",
  933. "schema": "",
  934. "columns": {
  935. "id": {
  936. "name": "id",
  937. "type": "text",
  938. "primaryKey": true,
  939. "notNull": true
  940. },
  941. "identifier": {
  942. "name": "identifier",
  943. "type": "text",
  944. "primaryKey": false,
  945. "notNull": true
  946. },
  947. "value": {
  948. "name": "value",
  949. "type": "text",
  950. "primaryKey": false,
  951. "notNull": true
  952. },
  953. "expires_at": {
  954. "name": "expires_at",
  955. "type": "timestamp with time zone",
  956. "primaryKey": false,
  957. "notNull": true
  958. },
  959. "created_at": {
  960. "name": "created_at",
  961. "type": "timestamp with time zone",
  962. "primaryKey": false,
  963. "notNull": true,
  964. "default": "now()"
  965. },
  966. "updated_at": {
  967. "name": "updated_at",
  968. "type": "timestamp with time zone",
  969. "primaryKey": false,
  970. "notNull": true,
  971. "default": "now()"
  972. }
  973. },
  974. "indexes": {
  975. "verifications_identifier_idx": {
  976. "name": "verifications_identifier_idx",
  977. "columns": [
  978. {
  979. "expression": "identifier",
  980. "isExpression": false,
  981. "asc": true,
  982. "nulls": "last"
  983. }
  984. ],
  985. "isUnique": false,
  986. "concurrently": false,
  987. "method": "btree",
  988. "with": {}
  989. }
  990. },
  991. "foreignKeys": {},
  992. "compositePrimaryKeys": {},
  993. "uniqueConstraints": {},
  994. "policies": {},
  995. "checkConstraints": {},
  996. "isRLSEnabled": false
  997. }
  998. },
  999. "enums": {},
  1000. "schemas": {},
  1001. "sequences": {},
  1002. "roles": {},
  1003. "policies": {},
  1004. "views": {},
  1005. "_meta": {
  1006. "columns": {},
  1007. "schemas": {},
  1008. "tables": {}
  1009. }
  1010. }