@m5kdev/backend 0.8.7 → 0.8.9

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.
Files changed (385) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +33 -0
  2. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/api/index.d.cts +1 -0
  3. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/adapter/factory.d.cts +1 -0
  4. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/adapter/get-field-attributes.d.cts +1 -0
  5. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/adapter/get-id-field.d.cts +1 -0
  6. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/adapter/index.d.cts +1 -0
  7. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/adapter/types.d.cts +1 -0
  8. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/get-tables.d.cts +1 -0
  9. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/index.d.cts +1 -0
  10. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/schema/account.d.cts +1 -0
  11. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/schema/rate-limit.d.cts +1 -0
  12. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/schema/session.d.cts +1 -0
  13. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/schema/shared.d.cts +1 -0
  14. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/schema/user.d.cts +1 -0
  15. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/db/schema/verification.d.cts +1 -0
  16. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/index.d.cts +1 -0
  17. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/social-providers/index.d.cts +1 -0
  18. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/types/context.d.cts +1 -0
  19. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/types/helper.d.cts +7 -0
  20. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/types/init-options.d.cts +1 -0
  21. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/types/plugin-client.d.cts +1 -0
  22. package/dist/node_modules/.pnpm/@better-auth_core@1.4.18_@better-auth_utils@0.3.0_@better-fetch_fetch@1.1.21_better-cal_347838d331444e5371f256b914727290/node_modules/@better-auth/core/dist/types/plugin.d.cts +1 -0
  23. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.d.cts +1 -0
  24. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/dialect-adapter.d.cts +1 -0
  25. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/dialect.d.cts +1 -0
  26. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/mssql/mssql-adapter.d.cts +1 -0
  27. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/mssql/mssql-dialect.d.cts +1 -0
  28. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/mssql/mssql-introspector.d.cts +1 -0
  29. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/mysql/mysql-adapter.d.cts +1 -0
  30. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/mysql/mysql-dialect.d.cts +1 -0
  31. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/mysql/mysql-introspector.d.cts +1 -0
  32. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/postgres/postgres-adapter.d.cts +1 -0
  33. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/postgres/postgres-dialect.d.cts +1 -0
  34. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/postgres/postgres-introspector.d.cts +1 -0
  35. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.d.cts +1 -0
  36. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect.d.cts +1 -0
  37. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-introspector.d.cts +1 -0
  38. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/expression/expression-builder.d.cts +1 -0
  39. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/index.d.cts +1 -0
  40. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/kysely.d.cts +38 -0
  41. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/migration/file-migration-provider.d.cts +1 -0
  42. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/migration/migrator.d.cts +1 -0
  43. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/binary-operation-parser.d.cts +1 -0
  44. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/delete-from-parser.d.cts +1 -0
  45. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/expression-parser.d.cts +1 -0
  46. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/group-by-parser.d.cts +1 -0
  47. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/insert-values-parser.d.cts +1 -0
  48. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/join-parser.d.cts +1 -0
  49. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/merge-into-parser.d.cts +1 -0
  50. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/reference-parser.d.cts +1 -0
  51. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/returning-parser.d.cts +1 -0
  52. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/select-from-parser.d.cts +1 -0
  53. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/select-parser.d.cts +1 -0
  54. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/set-operation-parser.d.cts +1 -0
  55. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/tuple-parser.d.cts +1 -0
  56. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/unary-operation-parser.d.cts +1 -0
  57. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/update-parser.d.cts +1 -0
  58. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/update-set-parser.d.cts +1 -0
  59. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/value-parser.d.cts +1 -0
  60. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/parser/with-parser.d.cts +1 -0
  61. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/case-builder.d.cts +1 -0
  62. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/delete-query-builder.d.cts +1 -0
  63. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/having-interface.d.cts +1 -0
  64. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/insert-query-builder.d.cts +1 -0
  65. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/join-builder.d.cts +1 -0
  66. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/merge-query-builder.d.cts +1 -0
  67. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.d.cts +1 -0
  68. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/output-interface.d.cts +1 -0
  69. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/returning-interface.d.cts +1 -0
  70. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/select-query-builder.d.cts +1 -0
  71. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/update-query-builder.d.cts +1 -0
  72. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-builder/where-interface.d.cts +1 -0
  73. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-creator.d.cts +1 -0
  74. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-executor/default-query-executor.d.cts +1 -0
  75. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-executor/noop-query-executor.d.cts +1 -0
  76. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-executor/query-executor-base.d.cts +1 -0
  77. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-executor/query-executor-provider.d.cts +1 -0
  78. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/query-executor/query-executor.d.cts +1 -0
  79. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/raw-builder/raw-builder.d.cts +1 -0
  80. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/raw-builder/sql.d.cts +1 -0
  81. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.d.cts +1 -0
  82. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.d.cts +1 -0
  83. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/alter-table-builder.d.cts +1 -0
  84. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/alter-table-drop-constraint-builder.d.cts +1 -0
  85. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/alter-table-executor.d.cts +1 -0
  86. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/create-index-builder.d.cts +1 -0
  87. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/create-schema-builder.d.cts +1 -0
  88. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/create-table-builder.d.cts +1 -0
  89. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/create-type-builder.d.cts +1 -0
  90. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/create-view-builder.d.cts +1 -0
  91. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/drop-index-builder.d.cts +1 -0
  92. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/drop-schema-builder.d.cts +1 -0
  93. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/drop-table-builder.d.cts +1 -0
  94. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/drop-type-builder.d.cts +1 -0
  95. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/drop-view-builder.d.cts +1 -0
  96. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/refresh-materialized-view-builder.d.cts +1 -0
  97. package/dist/node_modules/.pnpm/kysely@0.28.5/node_modules/kysely/dist/esm/schema/schema.d.cts +1 -0
  98. package/dist/src/lib/posthog.cjs +8 -0
  99. package/dist/src/lib/posthog.cjs.map +1 -0
  100. package/dist/src/lib/posthog.d.cts +7 -0
  101. package/dist/src/lib/sentry.cjs +11 -0
  102. package/dist/src/lib/sentry.cjs.map +1 -0
  103. package/dist/src/lib/sentry.d.cts +1 -0
  104. package/dist/src/modules/access/access.repository.cjs +26 -0
  105. package/dist/src/modules/access/access.repository.cjs.map +1 -0
  106. package/dist/src/modules/access/access.repository.d.cts +2352 -0
  107. package/dist/src/modules/access/access.service.cjs +42 -0
  108. package/dist/src/modules/access/access.service.cjs.map +1 -0
  109. package/dist/src/modules/access/access.service.d.cts +25 -0
  110. package/dist/src/modules/access/access.utils.cjs +23 -0
  111. package/dist/src/modules/access/access.utils.cjs.map +1 -0
  112. package/dist/src/modules/access/access.utils.d.cts +19 -0
  113. package/dist/src/modules/ai/ai.db.cjs +46 -0
  114. package/dist/src/modules/ai/ai.db.cjs.map +1 -0
  115. package/dist/src/modules/ai/ai.db.d.cts +401 -0
  116. package/dist/src/modules/ai/ai.prompt.cjs +33 -0
  117. package/dist/src/modules/ai/ai.prompt.cjs.map +1 -0
  118. package/dist/src/modules/ai/ai.prompt.d.cts +30 -0
  119. package/dist/src/modules/ai/ai.prompts.cjs +18 -0
  120. package/dist/src/modules/ai/ai.prompts.cjs.map +1 -0
  121. package/dist/src/modules/ai/ai.prompts.d.cts +10 -0
  122. package/dist/src/modules/ai/ai.repository.cjs +25 -0
  123. package/dist/src/modules/ai/ai.repository.cjs.map +1 -0
  124. package/dist/src/modules/ai/ai.repository.d.cts +428 -0
  125. package/dist/src/modules/ai/ai.router.cjs +0 -0
  126. package/dist/src/modules/ai/ai.router.d.cts +1 -0
  127. package/dist/src/modules/ai/ai.service.cjs +312 -0
  128. package/dist/src/modules/ai/ai.service.cjs.map +1 -0
  129. package/dist/src/modules/ai/ai.service.d.cts +141 -0
  130. package/dist/src/modules/ai/ai.trpc.cjs +19 -0
  131. package/dist/src/modules/ai/ai.trpc.cjs.map +1 -0
  132. package/dist/src/modules/ai/ai.trpc.d.cts +31 -0
  133. package/dist/src/modules/ai/ideogram/ideogram.constants.cjs +191 -0
  134. package/dist/src/modules/ai/ideogram/ideogram.constants.cjs.map +1 -0
  135. package/dist/src/modules/ai/ideogram/ideogram.constants.d.cts +11 -0
  136. package/dist/src/modules/ai/ideogram/ideogram.dto.cjs +49 -0
  137. package/dist/src/modules/ai/ideogram/ideogram.dto.cjs.map +1 -0
  138. package/dist/src/modules/ai/ideogram/ideogram.dto.d.cts +234 -0
  139. package/dist/src/modules/ai/ideogram/ideogram.prompt.cjs +862 -0
  140. package/dist/src/modules/ai/ideogram/ideogram.prompt.cjs.map +1 -0
  141. package/dist/src/modules/ai/ideogram/ideogram.prompt.d.cts +7 -0
  142. package/dist/src/modules/ai/ideogram/ideogram.repository.cjs +34 -0
  143. package/dist/src/modules/ai/ideogram/ideogram.repository.cjs.map +1 -0
  144. package/dist/src/modules/ai/ideogram/ideogram.repository.d.cts +11 -0
  145. package/dist/src/modules/ai/ideogram/ideogram.service.cjs +12 -0
  146. package/dist/src/modules/ai/ideogram/ideogram.service.cjs.map +1 -0
  147. package/dist/src/modules/ai/ideogram/ideogram.service.d.cts +14 -0
  148. package/dist/src/modules/auth/auth.db.cjs +187 -0
  149. package/dist/src/modules/auth/auth.db.cjs.map +1 -0
  150. package/dist/src/modules/auth/auth.db.d.cts +2341 -0
  151. package/dist/src/modules/auth/auth.dto.cjs +50 -0
  152. package/dist/src/modules/auth/auth.dto.cjs.map +1 -0
  153. package/dist/src/modules/auth/auth.dto.d.cts +70 -0
  154. package/dist/src/modules/auth/auth.lib.cjs +234 -0
  155. package/dist/src/modules/auth/auth.lib.cjs.map +1 -0
  156. package/dist/src/modules/auth/auth.lib.d.cts +4894 -0
  157. package/dist/src/modules/auth/auth.middleware.cjs +41 -0
  158. package/dist/src/modules/auth/auth.middleware.cjs.map +1 -0
  159. package/dist/src/modules/auth/auth.middleware.d.cts +619 -0
  160. package/dist/src/modules/auth/auth.repository.cjs +403 -0
  161. package/dist/src/modules/auth/auth.repository.cjs.map +1 -0
  162. package/dist/src/modules/auth/auth.repository.d.cts +2453 -0
  163. package/dist/src/modules/auth/auth.service.cjs +229 -0
  164. package/dist/src/modules/auth/auth.service.cjs.map +1 -0
  165. package/dist/src/modules/auth/auth.service.d.cts +105 -0
  166. package/dist/src/modules/auth/auth.trpc.cjs +110 -0
  167. package/dist/src/modules/auth/auth.trpc.cjs.map +1 -0
  168. package/dist/src/modules/auth/auth.trpc.d.cts +303 -0
  169. package/dist/src/modules/auth/auth.utils.cjs +80 -0
  170. package/dist/src/modules/auth/auth.utils.cjs.map +1 -0
  171. package/dist/src/modules/auth/auth.utils.d.cts +2356 -0
  172. package/dist/src/modules/base/base.abstract.cjs +62 -0
  173. package/dist/src/modules/base/base.abstract.cjs.map +1 -0
  174. package/dist/src/modules/base/base.abstract.d.cts +29 -0
  175. package/dist/src/modules/base/base.actor.cjs +83 -0
  176. package/dist/src/modules/base/base.actor.cjs.map +1 -0
  177. package/dist/src/modules/base/base.actor.d.cts +73 -0
  178. package/dist/src/modules/base/base.dto.cjs +98 -0
  179. package/dist/src/modules/base/base.dto.cjs.map +1 -0
  180. package/dist/src/modules/base/base.dto.d.cts +67 -0
  181. package/dist/src/modules/base/base.grants.cjs +107 -0
  182. package/dist/src/modules/base/base.grants.cjs.map +1 -0
  183. package/dist/src/modules/base/base.grants.d.cts +28 -0
  184. package/dist/src/modules/base/base.procedure.cjs +255 -0
  185. package/dist/src/modules/base/base.procedure.cjs.map +1 -0
  186. package/dist/src/modules/base/base.procedure.d.cts +111 -0
  187. package/dist/src/modules/base/base.repository.cjs +269 -0
  188. package/dist/src/modules/base/base.repository.cjs.map +1 -0
  189. package/dist/src/modules/base/base.repository.d.cts +125 -0
  190. package/dist/src/modules/base/base.repository.d.mts +2 -0
  191. package/dist/src/modules/base/base.repository.mjs +12 -0
  192. package/dist/src/modules/base/base.repository.mjs.map +1 -1
  193. package/dist/src/modules/base/base.service.cjs +119 -0
  194. package/dist/src/modules/base/base.service.cjs.map +1 -0
  195. package/dist/src/modules/base/base.service.d.cts +44 -0
  196. package/dist/src/modules/base/base.types.cjs +0 -0
  197. package/dist/src/modules/base/base.types.d.cts +5 -0
  198. package/dist/src/modules/billing/billing.db.cjs +38 -0
  199. package/dist/src/modules/billing/billing.db.cjs.map +1 -0
  200. package/dist/src/modules/billing/billing.db.d.cts +371 -0
  201. package/dist/src/modules/billing/billing.repository.cjs +190 -0
  202. package/dist/src/modules/billing/billing.repository.cjs.map +1 -0
  203. package/dist/src/modules/billing/billing.repository.d.cts +2787 -0
  204. package/dist/src/modules/billing/billing.router.cjs +43 -0
  205. package/dist/src/modules/billing/billing.router.cjs.map +1 -0
  206. package/dist/src/modules/billing/billing.router.d.cts +9 -0
  207. package/dist/src/modules/billing/billing.service.cjs +127 -0
  208. package/dist/src/modules/billing/billing.service.cjs.map +1 -0
  209. package/dist/src/modules/billing/billing.service.d.cts +53 -0
  210. package/dist/src/modules/billing/billing.trpc.cjs +19 -0
  211. package/dist/src/modules/billing/billing.trpc.cjs.map +1 -0
  212. package/dist/src/modules/billing/billing.trpc.d.cts +48 -0
  213. package/dist/src/modules/clay/clay.repository.cjs +29 -0
  214. package/dist/src/modules/clay/clay.repository.cjs.map +1 -0
  215. package/dist/src/modules/clay/clay.repository.d.cts +10 -0
  216. package/dist/src/modules/clay/clay.service.cjs +24 -0
  217. package/dist/src/modules/clay/clay.service.cjs.map +1 -0
  218. package/dist/src/modules/clay/clay.service.d.cts +32 -0
  219. package/dist/src/modules/connect/connect.db.cjs +37 -0
  220. package/dist/src/modules/connect/connect.db.cjs.map +1 -0
  221. package/dist/src/modules/connect/connect.db.d.cts +362 -0
  222. package/dist/src/modules/connect/connect.dto.cjs +45 -0
  223. package/dist/src/modules/connect/connect.dto.cjs.map +1 -0
  224. package/dist/src/modules/connect/connect.dto.d.cts +79 -0
  225. package/dist/src/modules/connect/connect.dto.d.mts +2 -2
  226. package/dist/src/modules/connect/connect.linkedin.cjs +48 -0
  227. package/dist/src/modules/connect/connect.linkedin.cjs.map +1 -0
  228. package/dist/src/modules/connect/connect.linkedin.d.cts +7 -0
  229. package/dist/src/modules/connect/connect.oauth.cjs +153 -0
  230. package/dist/src/modules/connect/connect.oauth.cjs.map +1 -0
  231. package/dist/src/modules/connect/connect.oauth.d.cts +32 -0
  232. package/dist/src/modules/connect/connect.repository.cjs +42 -0
  233. package/dist/src/modules/connect/connect.repository.cjs.map +1 -0
  234. package/dist/src/modules/connect/connect.repository.d.cts +419 -0
  235. package/dist/src/modules/connect/connect.repository.d.mts +1 -1
  236. package/dist/src/modules/connect/connect.router.cjs +48 -0
  237. package/dist/src/modules/connect/connect.router.cjs.map +1 -0
  238. package/dist/src/modules/connect/connect.router.d.cts +9 -0
  239. package/dist/src/modules/connect/connect.service.cjs +90 -0
  240. package/dist/src/modules/connect/connect.service.cjs.map +1 -0
  241. package/dist/src/modules/connect/connect.service.d.cts +103 -0
  242. package/dist/src/modules/connect/connect.service.d.mts +2 -2
  243. package/dist/src/modules/connect/connect.trpc.cjs +18 -0
  244. package/dist/src/modules/connect/connect.trpc.cjs.map +1 -0
  245. package/dist/src/modules/connect/connect.trpc.d.cts +53 -0
  246. package/dist/src/modules/connect/connect.trpc.d.mts +1 -1
  247. package/dist/src/modules/connect/connect.types.cjs +0 -0
  248. package/dist/src/modules/connect/connect.types.d.cts +29 -0
  249. package/dist/src/modules/crypto/crypto.db.cjs +26 -0
  250. package/dist/src/modules/crypto/crypto.db.cjs.map +1 -0
  251. package/dist/src/modules/crypto/crypto.db.d.cts +157 -0
  252. package/dist/src/modules/crypto/crypto.repository.cjs +9 -0
  253. package/dist/src/modules/crypto/crypto.repository.cjs.map +1 -0
  254. package/dist/src/modules/crypto/crypto.repository.d.cts +163 -0
  255. package/dist/src/modules/crypto/crypto.service.cjs +46 -0
  256. package/dist/src/modules/crypto/crypto.service.cjs.map +1 -0
  257. package/dist/src/modules/crypto/crypto.service.d.cts +15 -0
  258. package/dist/src/modules/email/email.service.cjs +107 -0
  259. package/dist/src/modules/email/email.service.cjs.map +1 -0
  260. package/dist/src/modules/email/email.service.d.cts +62 -0
  261. package/dist/src/modules/file/file.repository.cjs +74 -0
  262. package/dist/src/modules/file/file.repository.cjs.map +1 -0
  263. package/dist/src/modules/file/file.repository.d.cts +17 -0
  264. package/dist/src/modules/file/file.router.cjs +94 -0
  265. package/dist/src/modules/file/file.router.cjs.map +1 -0
  266. package/dist/src/modules/file/file.router.d.cts +7 -0
  267. package/dist/src/modules/file/file.service.cjs +120 -0
  268. package/dist/src/modules/file/file.service.cjs.map +1 -0
  269. package/dist/src/modules/file/file.service.d.cts +30 -0
  270. package/dist/src/modules/recurrence/recurrence.db.cjs +55 -0
  271. package/dist/src/modules/recurrence/recurrence.db.cjs.map +1 -0
  272. package/dist/src/modules/recurrence/recurrence.db.d.cts +568 -0
  273. package/dist/src/modules/recurrence/recurrence.repository.cjs +31 -0
  274. package/dist/src/modules/recurrence/recurrence.repository.cjs.map +1 -0
  275. package/dist/src/modules/recurrence/recurrence.repository.d.cts +588 -0
  276. package/dist/src/modules/recurrence/recurrence.service.cjs +66 -0
  277. package/dist/src/modules/recurrence/recurrence.service.cjs.map +1 -0
  278. package/dist/src/modules/recurrence/recurrence.service.d.cts +88 -0
  279. package/dist/src/modules/recurrence/recurrence.service.d.mts +2 -1
  280. package/dist/src/modules/recurrence/recurrence.service.mjs +1 -1
  281. package/dist/src/modules/recurrence/recurrence.service.mjs.map +1 -1
  282. package/dist/src/modules/recurrence/recurrence.trpc.cjs +46 -0
  283. package/dist/src/modules/recurrence/recurrence.trpc.cjs.map +1 -0
  284. package/dist/src/modules/recurrence/recurrence.trpc.d.cts +216 -0
  285. package/dist/src/modules/recurrence/recurrence.trpc.d.mts +2 -1
  286. package/dist/src/modules/social/social.dto.cjs +26 -0
  287. package/dist/src/modules/social/social.dto.cjs.map +1 -0
  288. package/dist/src/modules/social/social.dto.d.cts +39 -0
  289. package/dist/src/modules/social/social.linkedin.cjs +349 -0
  290. package/dist/src/modules/social/social.linkedin.cjs.map +1 -0
  291. package/dist/src/modules/social/social.linkedin.d.cts +15 -0
  292. package/dist/src/modules/social/social.service.cjs +57 -0
  293. package/dist/src/modules/social/social.service.cjs.map +1 -0
  294. package/dist/src/modules/social/social.service.d.cts +34 -0
  295. package/dist/src/modules/social/social.types.cjs +0 -0
  296. package/dist/src/modules/social/social.types.d.cts +40 -0
  297. package/dist/src/modules/tag/tag.db.cjs +43 -0
  298. package/dist/src/modules/tag/tag.db.cjs.map +1 -0
  299. package/dist/src/modules/tag/tag.db.d.cts +352 -0
  300. package/dist/src/modules/tag/tag.dto.cjs +15 -0
  301. package/dist/src/modules/tag/tag.dto.cjs.map +1 -0
  302. package/dist/src/modules/tag/tag.dto.d.cts +1025 -0
  303. package/dist/src/modules/tag/tag.repository.cjs +116 -0
  304. package/dist/src/modules/tag/tag.repository.cjs.map +1 -0
  305. package/dist/src/modules/tag/tag.repository.d.cts +394 -0
  306. package/dist/src/modules/tag/tag.service.cjs +48 -0
  307. package/dist/src/modules/tag/tag.service.cjs.map +1 -0
  308. package/dist/src/modules/tag/tag.service.d.cts +120 -0
  309. package/dist/src/modules/tag/tag.trpc.cjs +32 -0
  310. package/dist/src/modules/tag/tag.trpc.cjs.map +1 -0
  311. package/dist/src/modules/tag/tag.trpc.d.cts +174 -0
  312. package/dist/src/modules/tag/tag.trpc.d.mts +3 -2
  313. package/dist/src/modules/utils/applyPagination.cjs +16 -0
  314. package/dist/src/modules/utils/applyPagination.cjs.map +1 -0
  315. package/dist/src/modules/utils/applyPagination.d.cts +10 -0
  316. package/dist/src/modules/utils/applySorting.cjs +20 -0
  317. package/dist/src/modules/utils/applySorting.cjs.map +1 -0
  318. package/dist/src/modules/utils/applySorting.d.cts +13 -0
  319. package/dist/src/modules/utils/getConditionsFromFilters.cjs +152 -0
  320. package/dist/src/modules/utils/getConditionsFromFilters.cjs.map +1 -0
  321. package/dist/src/modules/utils/getConditionsFromFilters.d.cts +9 -0
  322. package/dist/src/modules/utils/getGlobalSearchCondition.cjs +30 -0
  323. package/dist/src/modules/utils/getGlobalSearchCondition.cjs.map +1 -0
  324. package/dist/src/modules/utils/getGlobalSearchCondition.d.cts +18 -0
  325. package/dist/src/modules/utils/getGlobalSearchCondition.d.mts +18 -0
  326. package/dist/src/modules/utils/getGlobalSearchCondition.mjs +26 -0
  327. package/dist/src/modules/utils/getGlobalSearchCondition.mjs.map +1 -0
  328. package/dist/src/modules/video/video.service.cjs +114 -0
  329. package/dist/src/modules/video/video.service.cjs.map +1 -0
  330. package/dist/src/modules/video/video.service.d.cts +12 -0
  331. package/dist/src/modules/video/video.service.mjs.map +1 -1
  332. package/dist/src/modules/webhook/webhook.constants.cjs +13 -0
  333. package/dist/src/modules/webhook/webhook.constants.cjs.map +1 -0
  334. package/dist/src/modules/webhook/webhook.constants.d.cts +12 -0
  335. package/dist/src/modules/webhook/webhook.db.cjs +19 -0
  336. package/dist/src/modules/webhook/webhook.db.cjs.map +1 -0
  337. package/dist/src/modules/webhook/webhook.db.d.cts +142 -0
  338. package/dist/src/modules/webhook/webhook.dto.cjs +11 -0
  339. package/dist/src/modules/webhook/webhook.dto.cjs.map +1 -0
  340. package/dist/src/modules/webhook/webhook.dto.d.cts +402 -0
  341. package/dist/src/modules/webhook/webhook.repository.cjs +52 -0
  342. package/dist/src/modules/webhook/webhook.repository.cjs.map +1 -0
  343. package/dist/src/modules/webhook/webhook.repository.d.cts +154 -0
  344. package/dist/src/modules/webhook/webhook.router.cjs +26 -0
  345. package/dist/src/modules/webhook/webhook.router.cjs.map +1 -0
  346. package/dist/src/modules/webhook/webhook.router.d.cts +8 -0
  347. package/dist/src/modules/webhook/webhook.service.cjs +61 -0
  348. package/dist/src/modules/webhook/webhook.service.cjs.map +1 -0
  349. package/dist/src/modules/webhook/webhook.service.d.cts +14 -0
  350. package/dist/src/modules/workflow/workflow.db.cjs +35 -0
  351. package/dist/src/modules/workflow/workflow.db.cjs.map +1 -0
  352. package/dist/src/modules/workflow/workflow.db.d.cts +302 -0
  353. package/dist/src/modules/workflow/workflow.repository.cjs +95 -0
  354. package/dist/src/modules/workflow/workflow.repository.cjs.map +1 -0
  355. package/dist/src/modules/workflow/workflow.repository.d.cts +371 -0
  356. package/dist/src/modules/workflow/workflow.service.cjs +41 -0
  357. package/dist/src/modules/workflow/workflow.service.cjs.map +1 -0
  358. package/dist/src/modules/workflow/workflow.service.d.cts +68 -0
  359. package/dist/src/modules/workflow/workflow.trpc.cjs +19 -0
  360. package/dist/src/modules/workflow/workflow.trpc.cjs.map +1 -0
  361. package/dist/src/modules/workflow/workflow.trpc.d.cts +65 -0
  362. package/dist/src/modules/workflow/workflow.types.cjs +0 -0
  363. package/dist/src/modules/workflow/workflow.types.d.cts +25 -0
  364. package/dist/src/modules/workflow/workflow.utils.cjs +185 -0
  365. package/dist/src/modules/workflow/workflow.utils.cjs.map +1 -0
  366. package/dist/src/modules/workflow/workflow.utils.d.cts +36 -0
  367. package/dist/src/types.cjs +12 -0
  368. package/dist/src/types.cjs.map +1 -0
  369. package/dist/src/types.d.cts +344 -0
  370. package/dist/src/types.d.mts +6 -6
  371. package/dist/src/utils/errors.cjs +101 -0
  372. package/dist/src/utils/errors.cjs.map +1 -0
  373. package/dist/src/utils/errors.d.cts +62 -0
  374. package/dist/src/utils/logger.cjs +13 -0
  375. package/dist/src/utils/logger.cjs.map +1 -0
  376. package/dist/src/utils/logger.d.cts +7 -0
  377. package/dist/src/utils/posthog.cjs +31 -0
  378. package/dist/src/utils/posthog.cjs.map +1 -0
  379. package/dist/src/utils/posthog.d.cts +17 -0
  380. package/dist/src/utils/trpc.cjs +156 -0
  381. package/dist/src/utils/trpc.cjs.map +1 -0
  382. package/dist/src/utils/trpc.d.cts +54 -0
  383. package/dist/src/utils/types.cjs +0 -0
  384. package/dist/src/utils/types.d.cts +9 -0
  385. package/package.json +171 -45
@@ -0,0 +1,119 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ require("../../../_virtual/_rolldown/runtime.cjs");
3
+ const require_src_modules_base_base_actor = require("./base.actor.cjs");
4
+ const require_src_modules_base_base_abstract = require("./base.abstract.cjs");
5
+ const require_src_modules_base_base_grants = require("./base.grants.cjs");
6
+ const require_src_modules_base_base_procedure = require("./base.procedure.cjs");
7
+ let neverthrow = require("neverthrow");
8
+ //#region src/modules/base/base.service.ts
9
+ var BaseService = class extends require_src_modules_base_base_abstract.Base {
10
+ constructor(repository = {}, service = {}) {
11
+ super("service");
12
+ this.repository = repository;
13
+ this.service = service;
14
+ this.repository = repository;
15
+ this.service = service;
16
+ }
17
+ addUserFilter(value, query, columnId = "userId", method = "equals") {
18
+ const userFilter = {
19
+ columnId,
20
+ type: "string",
21
+ method,
22
+ value
23
+ };
24
+ return query ? {
25
+ ...query,
26
+ filters: [...query?.filters ?? [], userFilter]
27
+ } : { filters: [userFilter] };
28
+ }
29
+ procedure(name) {
30
+ return require_src_modules_base_base_procedure.createServiceProcedureBuilder(this, {
31
+ name,
32
+ steps: []
33
+ });
34
+ }
35
+ addContextFilter(actor, include = {
36
+ user: true,
37
+ organization: false,
38
+ team: false
39
+ }, query, map = {
40
+ userId: {
41
+ columnId: "userId",
42
+ method: "equals"
43
+ },
44
+ organizationId: {
45
+ columnId: "organizationId",
46
+ method: "equals"
47
+ },
48
+ teamId: {
49
+ columnId: "teamId",
50
+ method: "equals"
51
+ }
52
+ }) {
53
+ const filters = [];
54
+ if (include.user) filters.push({
55
+ columnId: map.userId.columnId,
56
+ type: "string",
57
+ method: map.userId.method,
58
+ value: actor.userId
59
+ });
60
+ if (include.organization) {
61
+ if (!require_src_modules_base_base_actor.validateActor(actor, "organization")) throw new Error("Organization-scoped context filter requires an organization actor");
62
+ filters.push({
63
+ columnId: map.organizationId.columnId,
64
+ type: "string",
65
+ method: map.organizationId.method,
66
+ value: actor.organizationId
67
+ });
68
+ }
69
+ if (include.team) {
70
+ if (!require_src_modules_base_base_actor.validateActor(actor, "team")) throw new Error("Team-scoped context filter requires a team actor");
71
+ filters.push({
72
+ columnId: map.teamId.columnId,
73
+ type: "string",
74
+ method: map.teamId.method,
75
+ value: actor.teamId
76
+ });
77
+ }
78
+ return query ? {
79
+ ...query,
80
+ filters: [...query?.filters ?? [], ...filters]
81
+ } : { filters };
82
+ }
83
+ };
84
+ var BasePermissionService = class extends BaseService {
85
+ grants;
86
+ constructor(repository, service, grants = []) {
87
+ super(repository, service);
88
+ this.grants = grants;
89
+ }
90
+ accessGuard(actor, action, entities, grants) {
91
+ if (!this.checkPermission(actor, action, entities, grants)) return this.error("FORBIDDEN");
92
+ return (0, neverthrow.ok)(true);
93
+ }
94
+ async accessGuardAsync(actor, action, getEntities, grants) {
95
+ const hasPermission = await this.checkPermissionAsync(actor, action, getEntities, grants);
96
+ if (hasPermission.isErr()) return (0, neverthrow.err)(hasPermission.error);
97
+ if (!hasPermission.value) return this.error("FORBIDDEN");
98
+ return (0, neverthrow.ok)(true);
99
+ }
100
+ procedure(name) {
101
+ return require_src_modules_base_base_procedure.createPermissionServiceProcedureBuilder(this, {
102
+ name,
103
+ steps: []
104
+ });
105
+ }
106
+ checkPermission(actor, action, entities, grants) {
107
+ return require_src_modules_base_base_grants.checkPermissionSync(actor, grants ?? this.grants.filter((grant) => grant.action === action), entities);
108
+ }
109
+ async checkPermissionAsync(actor, action, getEntities, grants) {
110
+ const permission = await require_src_modules_base_base_grants.checkPermissionAsync(actor, grants ?? this.grants.filter((grant) => grant.action === action), getEntities);
111
+ if (permission.isErr()) return this.error("INTERNAL_SERVER_ERROR", "Failed to check permission", { cause: permission.error });
112
+ return (0, neverthrow.ok)(permission.value);
113
+ }
114
+ };
115
+ //#endregion
116
+ exports.BasePermissionService = BasePermissionService;
117
+ exports.BaseService = BaseService;
118
+
119
+ //# sourceMappingURL=base.service.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.service.cjs","names":["Base","createServiceProcedureBuilder","validateActor","createPermissionServiceProcedureBuilder","checkPermissionSync","checkPermissionAsync"],"sources":["../../../../src/modules/base/base.service.ts"],"sourcesContent":["import type { QueryFilter, QueryInput } from \"@m5kdev/commons/modules/schemas/query.schema\";\r\nimport { err, ok } from \"neverthrow\";\r\nimport { Base } from \"./base.abstract\";\r\nimport { type AuthenticatedActor, validateActor } from \"./base.actor\";\r\nimport type { ServerResult, ServerResultAsync } from \"./base.dto\";\r\nimport {\r\n checkPermissionAsync,\r\n checkPermissionSync,\r\n type Entity,\r\n type ResourceActionGrant,\r\n type ResourceGrant,\r\n} from \"./base.grants\";\r\nimport {\r\n createPermissionServiceProcedureBuilder,\r\n createServiceProcedureBuilder,\r\n type PermissionServiceProcedureBuilder,\r\n type ServiceProcedureBuilder,\r\n type ServiceProcedureContext,\r\n} from \"./base.procedure\";\r\n\r\nexport type {\r\n PermissionServiceProcedureBuilder,\r\n ServiceProcedure,\r\n ServiceProcedureAccessConfig,\r\n ServiceProcedureAccessEntitiesConfig,\r\n ServiceProcedureAccessStateConfig,\r\n ServiceProcedureArgs,\r\n ServiceProcedureBuilder,\r\n ServiceProcedureContext,\r\n ServiceProcedureContextFilteredInput,\r\n ServiceProcedureContextFilterScope,\r\n ServiceProcedureEntityStepName,\r\n ServiceProcedureInputMapper,\r\n} from \"./base.procedure\";\r\n\r\nexport class BaseService<\r\n Repositories extends Record<string, Base>,\r\n Services extends Record<string, Base>,\r\n DefaultContext extends ServiceProcedureContext = ServiceProcedureContext,\r\n> extends Base {\r\n constructor(\r\n public repository: Repositories = {} as Repositories,\r\n public service: Services = {} as Services\r\n ) {\r\n super(\"service\");\r\n this.repository = repository;\r\n this.service = service;\r\n }\r\n\r\n addUserFilter(\r\n value: string,\r\n query?: undefined,\r\n columnId?: string,\r\n method?: QueryFilter[\"method\"]\r\n ): QueryInput;\r\n addUserFilter<TQuery extends QueryInput>(\r\n value: string,\r\n query: TQuery,\r\n columnId?: string,\r\n method?: QueryFilter[\"method\"]\r\n ): TQuery;\r\n addUserFilter(\r\n value: string,\r\n query?: QueryInput,\r\n columnId = \"userId\",\r\n method: QueryFilter[\"method\"] = \"equals\"\r\n ): QueryInput {\r\n const userFilter: QueryFilter = {\r\n columnId,\r\n type: \"string\",\r\n method,\r\n value,\r\n };\r\n return query\r\n ? { ...query, filters: [...(query?.filters ?? []), userFilter] }\r\n : { filters: [userFilter] };\r\n }\r\n\r\n protected procedure<TInput, TCtx extends ServiceProcedureContext = DefaultContext>(\r\n name: string\r\n ): ServiceProcedureBuilder<TInput, TCtx, Repositories, Services> {\r\n return createServiceProcedureBuilder(this, { name, steps: [] });\r\n }\r\n\r\n addContextFilter(\r\n actor: AuthenticatedActor,\r\n include?: { user?: boolean; organization?: boolean; team?: boolean },\r\n query?: undefined,\r\n map?: Record<string, { columnId: string; method: QueryFilter[\"method\"] }>\r\n ): QueryInput;\r\n addContextFilter<TQuery extends QueryInput>(\r\n actor: AuthenticatedActor,\r\n include: { user?: boolean; organization?: boolean; team?: boolean } | undefined,\r\n query: TQuery,\r\n map?: Record<string, { columnId: string; method: QueryFilter[\"method\"] }>\r\n ): TQuery;\r\n addContextFilter(\r\n actor: AuthenticatedActor,\r\n include: { user?: boolean; organization?: boolean; team?: boolean } = {\r\n user: true,\r\n organization: false,\r\n team: false,\r\n },\r\n query?: QueryInput,\r\n map: Record<string, { columnId: string; method: QueryFilter[\"method\"] }> = {\r\n userId: {\r\n columnId: \"userId\",\r\n method: \"equals\",\r\n },\r\n organizationId: {\r\n columnId: \"organizationId\",\r\n method: \"equals\",\r\n },\r\n teamId: {\r\n columnId: \"teamId\",\r\n method: \"equals\",\r\n },\r\n }\r\n ): QueryInput {\r\n const filters: QueryFilter[] = [];\r\n\r\n if (include.user) {\r\n filters.push({\r\n columnId: map.userId.columnId,\r\n type: \"string\",\r\n method: map.userId.method,\r\n value: actor.userId,\r\n });\r\n }\r\n if (include.organization) {\r\n if (!validateActor(actor, \"organization\")) {\r\n throw new Error(\"Organization-scoped context filter requires an organization actor\");\r\n }\r\n filters.push({\r\n columnId: map.organizationId.columnId,\r\n type: \"string\",\r\n method: map.organizationId.method,\r\n value: actor.organizationId!,\r\n });\r\n }\r\n if (include.team) {\r\n if (!validateActor(actor, \"team\")) {\r\n throw new Error(\"Team-scoped context filter requires a team actor\");\r\n }\r\n filters.push({\r\n columnId: map.teamId.columnId,\r\n type: \"string\",\r\n method: map.teamId.method,\r\n value: actor.teamId!,\r\n });\r\n }\r\n return query ? { ...query, filters: [...(query?.filters ?? []), ...filters] } : { filters };\r\n }\r\n}\r\n\r\nexport class BasePermissionService<\r\n Repositories extends Record<string, Base>,\r\n Services extends Record<string, Base>,\r\n DefaultContext extends ServiceProcedureContext = ServiceProcedureContext,\r\n> extends BaseService<Repositories, Services, DefaultContext> {\r\n grants: ResourceGrant[];\r\n constructor(repository: Repositories, service: Services, grants: ResourceGrant[] = []) {\r\n super(repository, service);\r\n this.grants = grants;\r\n }\r\n\r\n accessGuard<T extends Entity>(\r\n actor: AuthenticatedActor,\r\n action: string,\r\n entities?: T | T[],\r\n grants?: ResourceActionGrant[]\r\n ): ServerResult<true> {\r\n const hasPermission = this.checkPermission(actor, action, entities, grants);\r\n if (!hasPermission) return this.error(\"FORBIDDEN\");\r\n return ok(true);\r\n }\r\n\r\n async accessGuardAsync<T extends Entity>(\r\n actor: AuthenticatedActor,\r\n action: string,\r\n getEntities: () => ServerResultAsync<T | T[] | undefined>,\r\n grants?: ResourceActionGrant[]\r\n ): ServerResultAsync<true> {\r\n const hasPermission = await this.checkPermissionAsync(actor, action, getEntities, grants);\r\n if (hasPermission.isErr()) return err(hasPermission.error);\r\n if (!hasPermission.value) return this.error(\"FORBIDDEN\");\r\n return ok(true);\r\n }\r\n\r\n protected override procedure<TInput, TCtx extends ServiceProcedureContext = DefaultContext>(\r\n name: string\r\n ): PermissionServiceProcedureBuilder<TInput, TCtx, Repositories, Services> {\r\n return createPermissionServiceProcedureBuilder(this, { name, steps: [] });\r\n }\r\n\r\n checkPermission<T extends Entity>(\r\n actor: AuthenticatedActor,\r\n action: string,\r\n entities?: T | T[],\r\n grants?: ResourceActionGrant[]\r\n ): boolean {\r\n const actionGrants = grants ?? this.grants.filter((grant) => grant.action === action);\r\n return checkPermissionSync(actor, actionGrants, entities);\r\n }\r\n\r\n async checkPermissionAsync<T extends Entity>(\r\n actor: AuthenticatedActor,\r\n action: string,\r\n getEntities: () => ServerResultAsync<T | T[] | undefined>,\r\n grants?: ResourceActionGrant[]\r\n ): ServerResultAsync<boolean> {\r\n const actionGrants = grants ?? this.grants.filter((grant) => grant.action === action);\r\n const permission = await checkPermissionAsync(actor, actionGrants, getEntities);\r\n if (permission.isErr())\r\n return this.error(\"INTERNAL_SERVER_ERROR\", \"Failed to check permission\", {\r\n cause: permission.error,\r\n });\r\n return ok(permission.value);\r\n }\r\n}\r\n"],"mappings":";;;;;;;;AAmCA,IAAa,cAAb,cAIUA,uCAAAA,KAAK;CACb,YACE,aAAkC,EAAE,EACpC,UAA2B,EAAE,EAC7B;AACA,QAAM,UAAU;AAHT,OAAA,aAAA;AACA,OAAA,UAAA;AAGP,OAAK,aAAa;AAClB,OAAK,UAAU;;CAejB,cACE,OACA,OACA,WAAW,UACX,SAAgC,UACpB;EACZ,MAAM,aAA0B;GAC9B;GACA,MAAM;GACN;GACA;GACD;AACD,SAAO,QACH;GAAE,GAAG;GAAO,SAAS,CAAC,GAAI,OAAO,WAAW,EAAE,EAAG,WAAW;GAAE,GAC9D,EAAE,SAAS,CAAC,WAAW,EAAE;;CAG/B,UACE,MAC+D;AAC/D,SAAOC,wCAAAA,8BAA8B,MAAM;GAAE;GAAM,OAAO,EAAE;GAAE,CAAC;;CAejE,iBACE,OACA,UAAsE;EACpE,MAAM;EACN,cAAc;EACd,MAAM;EACP,EACD,OACA,MAA2E;EACzE,QAAQ;GACN,UAAU;GACV,QAAQ;GACT;EACD,gBAAgB;GACd,UAAU;GACV,QAAQ;GACT;EACD,QAAQ;GACN,UAAU;GACV,QAAQ;GACT;EACF,EACW;EACZ,MAAM,UAAyB,EAAE;AAEjC,MAAI,QAAQ,KACV,SAAQ,KAAK;GACX,UAAU,IAAI,OAAO;GACrB,MAAM;GACN,QAAQ,IAAI,OAAO;GACnB,OAAO,MAAM;GACd,CAAC;AAEJ,MAAI,QAAQ,cAAc;AACxB,OAAI,CAACC,oCAAAA,cAAc,OAAO,eAAe,CACvC,OAAM,IAAI,MAAM,oEAAoE;AAEtF,WAAQ,KAAK;IACX,UAAU,IAAI,eAAe;IAC7B,MAAM;IACN,QAAQ,IAAI,eAAe;IAC3B,OAAO,MAAM;IACd,CAAC;;AAEJ,MAAI,QAAQ,MAAM;AAChB,OAAI,CAACA,oCAAAA,cAAc,OAAO,OAAO,CAC/B,OAAM,IAAI,MAAM,mDAAmD;AAErE,WAAQ,KAAK;IACX,UAAU,IAAI,OAAO;IACrB,MAAM;IACN,QAAQ,IAAI,OAAO;IACnB,OAAO,MAAM;IACd,CAAC;;AAEJ,SAAO,QAAQ;GAAE,GAAG;GAAO,SAAS,CAAC,GAAI,OAAO,WAAW,EAAE,EAAG,GAAG,QAAQ;GAAE,GAAG,EAAE,SAAS;;;AAI/F,IAAa,wBAAb,cAIU,YAAoD;CAC5D;CACA,YAAY,YAA0B,SAAmB,SAA0B,EAAE,EAAE;AACrF,QAAM,YAAY,QAAQ;AAC1B,OAAK,SAAS;;CAGhB,YACE,OACA,QACA,UACA,QACoB;AAEpB,MAAI,CADkB,KAAK,gBAAgB,OAAO,QAAQ,UAAU,OAAO,CACvD,QAAO,KAAK,MAAM,YAAY;AAClD,UAAA,GAAA,WAAA,IAAU,KAAK;;CAGjB,MAAM,iBACJ,OACA,QACA,aACA,QACyB;EACzB,MAAM,gBAAgB,MAAM,KAAK,qBAAqB,OAAO,QAAQ,aAAa,OAAO;AACzF,MAAI,cAAc,OAAO,CAAE,SAAA,GAAA,WAAA,KAAW,cAAc,MAAM;AAC1D,MAAI,CAAC,cAAc,MAAO,QAAO,KAAK,MAAM,YAAY;AACxD,UAAA,GAAA,WAAA,IAAU,KAAK;;CAGjB,UACE,MACyE;AACzE,SAAOC,wCAAAA,wCAAwC,MAAM;GAAE;GAAM,OAAO,EAAE;GAAE,CAAC;;CAG3E,gBACE,OACA,QACA,UACA,QACS;AAET,SAAOC,qCAAAA,oBAAoB,OADN,UAAU,KAAK,OAAO,QAAQ,UAAU,MAAM,WAAW,OAAO,EACrC,SAAS;;CAG3D,MAAM,qBACJ,OACA,QACA,aACA,QAC4B;EAE5B,MAAM,aAAa,MAAMC,qCAAAA,qBAAqB,OADzB,UAAU,KAAK,OAAO,QAAQ,UAAU,MAAM,WAAW,OAAO,EAClB,YAAY;AAC/E,MAAI,WAAW,OAAO,CACpB,QAAO,KAAK,MAAM,yBAAyB,8BAA8B,EACvE,OAAO,WAAW,OACnB,CAAC;AACJ,UAAA,GAAA,WAAA,IAAU,WAAW,MAAM"}
@@ -0,0 +1,44 @@
1
+ import { ServerResult, ServerResultAsync } from "./base.dto.cjs";
2
+ import { Base } from "./base.abstract.cjs";
3
+ import { AuthenticatedActor } from "./base.actor.cjs";
4
+ import { Entity, ResourceActionGrant, ResourceGrant } from "./base.grants.cjs";
5
+ import { PermissionServiceProcedureBuilder, ServiceProcedure, ServiceProcedureAccessConfig, ServiceProcedureAccessEntitiesConfig, ServiceProcedureAccessStateConfig, ServiceProcedureArgs, ServiceProcedureBuilder, ServiceProcedureContext, ServiceProcedureContextFilterScope, ServiceProcedureContextFilteredInput, ServiceProcedureEntityStepName, ServiceProcedureInputMapper } from "./base.procedure.cjs";
6
+ import { QueryFilter, QueryInput } from "@m5kdev/commons/modules/schemas/query.schema";
7
+
8
+ //#region src/modules/base/base.service.d.ts
9
+ declare class BaseService<Repositories extends Record<string, Base>, Services extends Record<string, Base>, DefaultContext extends ServiceProcedureContext = ServiceProcedureContext> extends Base {
10
+ repository: Repositories;
11
+ service: Services;
12
+ constructor(repository?: Repositories, service?: Services);
13
+ addUserFilter(value: string, query?: undefined, columnId?: string, method?: QueryFilter["method"]): QueryInput;
14
+ addUserFilter<TQuery extends QueryInput>(value: string, query: TQuery, columnId?: string, method?: QueryFilter["method"]): TQuery;
15
+ protected procedure<TInput, TCtx extends ServiceProcedureContext = DefaultContext>(name: string): ServiceProcedureBuilder<TInput, TCtx, Repositories, Services>;
16
+ addContextFilter(actor: AuthenticatedActor, include?: {
17
+ user?: boolean;
18
+ organization?: boolean;
19
+ team?: boolean;
20
+ }, query?: undefined, map?: Record<string, {
21
+ columnId: string;
22
+ method: QueryFilter["method"];
23
+ }>): QueryInput;
24
+ addContextFilter<TQuery extends QueryInput>(actor: AuthenticatedActor, include: {
25
+ user?: boolean;
26
+ organization?: boolean;
27
+ team?: boolean;
28
+ } | undefined, query: TQuery, map?: Record<string, {
29
+ columnId: string;
30
+ method: QueryFilter["method"];
31
+ }>): TQuery;
32
+ }
33
+ declare class BasePermissionService<Repositories extends Record<string, Base>, Services extends Record<string, Base>, DefaultContext extends ServiceProcedureContext = ServiceProcedureContext> extends BaseService<Repositories, Services, DefaultContext> {
34
+ grants: ResourceGrant[];
35
+ constructor(repository: Repositories, service: Services, grants?: ResourceGrant[]);
36
+ accessGuard<T extends Entity>(actor: AuthenticatedActor, action: string, entities?: T | T[], grants?: ResourceActionGrant[]): ServerResult<true>;
37
+ accessGuardAsync<T extends Entity>(actor: AuthenticatedActor, action: string, getEntities: () => ServerResultAsync<T | T[] | undefined>, grants?: ResourceActionGrant[]): ServerResultAsync<true>;
38
+ protected procedure<TInput, TCtx extends ServiceProcedureContext = DefaultContext>(name: string): PermissionServiceProcedureBuilder<TInput, TCtx, Repositories, Services>;
39
+ checkPermission<T extends Entity>(actor: AuthenticatedActor, action: string, entities?: T | T[], grants?: ResourceActionGrant[]): boolean;
40
+ checkPermissionAsync<T extends Entity>(actor: AuthenticatedActor, action: string, getEntities: () => ServerResultAsync<T | T[] | undefined>, grants?: ResourceActionGrant[]): ServerResultAsync<boolean>;
41
+ }
42
+ //#endregion
43
+ export { BasePermissionService, BaseService, type PermissionServiceProcedureBuilder, type ServiceProcedure, type ServiceProcedureAccessConfig, type ServiceProcedureAccessEntitiesConfig, type ServiceProcedureAccessStateConfig, type ServiceProcedureArgs, type ServiceProcedureBuilder, type ServiceProcedureContext, type ServiceProcedureContextFilterScope, type ServiceProcedureContextFilteredInput, type ServiceProcedureEntityStepName, type ServiceProcedureInputMapper };
44
+ //# sourceMappingURL=base.service.d.cts.map
File without changes
@@ -0,0 +1,5 @@
1
+ //#region src/modules/base/base.types.d.ts
2
+ type ServerErrorLayer = "unknown" | "repository" | "service" | "controller" | "auth" | "workflow";
3
+ //#endregion
4
+ export { ServerErrorLayer };
5
+ //# sourceMappingURL=base.types.d.cts.map
@@ -0,0 +1,38 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_runtime = require("../../../_virtual/_rolldown/runtime.cjs");
3
+ let drizzle_orm_sqlite_core = require("drizzle-orm/sqlite-core");
4
+ let uuid = require("uuid");
5
+ //#region src/modules/billing/billing.db.ts
6
+ var billing_db_exports = /* @__PURE__ */ require_runtime.__exportAll({ subscriptions: () => subscriptions });
7
+ const subscriptions = (0, drizzle_orm_sqlite_core.sqliteTable)("subscriptions", {
8
+ id: (0, drizzle_orm_sqlite_core.text)("id").primaryKey().$default(uuid.v4),
9
+ createdAt: (0, drizzle_orm_sqlite_core.integer)("created_at", { mode: "timestamp" }).notNull().$default(() => /* @__PURE__ */ new Date()),
10
+ updatedAt: (0, drizzle_orm_sqlite_core.integer)("updated_at", { mode: "timestamp" }),
11
+ plan: (0, drizzle_orm_sqlite_core.text)("plan").notNull(),
12
+ referenceId: (0, drizzle_orm_sqlite_core.text)("reference_id").notNull(),
13
+ stripeCustomerId: (0, drizzle_orm_sqlite_core.text)("stripe_customer_id"),
14
+ stripeSubscriptionId: (0, drizzle_orm_sqlite_core.text)("stripe_subscription_id"),
15
+ status: (0, drizzle_orm_sqlite_core.text)("status").notNull(),
16
+ periodStart: (0, drizzle_orm_sqlite_core.integer)("period_start", { mode: "timestamp" }),
17
+ periodEnd: (0, drizzle_orm_sqlite_core.integer)("period_end", { mode: "timestamp" }),
18
+ priceId: (0, drizzle_orm_sqlite_core.text)("price_id"),
19
+ interval: (0, drizzle_orm_sqlite_core.text)("interval"),
20
+ unitAmount: (0, drizzle_orm_sqlite_core.integer)("unit_amount", { mode: "number" }),
21
+ discounts: (0, drizzle_orm_sqlite_core.text)("discounts", { mode: "json" }).$type(),
22
+ cancelAtPeriodEnd: (0, drizzle_orm_sqlite_core.integer)("cancel_at_period_end", { mode: "boolean" }),
23
+ cancelAt: (0, drizzle_orm_sqlite_core.integer)("cancel_at", { mode: "timestamp" }),
24
+ canceledAt: (0, drizzle_orm_sqlite_core.integer)("canceled_at", { mode: "timestamp" }),
25
+ seats: (0, drizzle_orm_sqlite_core.integer)("seats", { mode: "number" }),
26
+ trialStart: (0, drizzle_orm_sqlite_core.integer)("trial_start", { mode: "timestamp" }),
27
+ trialEnd: (0, drizzle_orm_sqlite_core.integer)("trial_end", { mode: "timestamp" })
28
+ });
29
+ //#endregion
30
+ Object.defineProperty(exports, "billing_db_exports", {
31
+ enumerable: true,
32
+ get: function() {
33
+ return billing_db_exports;
34
+ }
35
+ });
36
+ exports.subscriptions = subscriptions;
37
+
38
+ //# sourceMappingURL=billing.db.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.db.cjs","names":["uuidv4"],"sources":["../../../../src/modules/billing/billing.db.ts"],"sourcesContent":["import { integer, sqliteTable, text } from \"drizzle-orm/sqlite-core\";\r\nimport { v4 as uuidv4 } from \"uuid\";\r\n\r\nexport const subscriptions = sqliteTable(\"subscriptions\", {\r\n id: text(\"id\").primaryKey().$default(uuidv4),\r\n createdAt: integer(\"created_at\", { mode: \"timestamp\" })\r\n .notNull()\r\n .$default(() => new Date()),\r\n updatedAt: integer(\"updated_at\", { mode: \"timestamp\" }),\r\n plan: text(\"plan\").notNull(),\r\n referenceId: text(\"reference_id\").notNull(),\r\n stripeCustomerId: text(\"stripe_customer_id\"),\r\n stripeSubscriptionId: text(\"stripe_subscription_id\"),\r\n status: text(\"status\").notNull(),\r\n periodStart: integer(\"period_start\", { mode: \"timestamp\" }),\r\n periodEnd: integer(\"period_end\", { mode: \"timestamp\" }),\r\n priceId: text(\"price_id\"),\r\n interval: text(\"interval\"),\r\n unitAmount: integer(\"unit_amount\", { mode: \"number\" }),\r\n discounts: text(\"discounts\", { mode: \"json\" }).$type<string[]>(),\r\n cancelAtPeriodEnd: integer(\"cancel_at_period_end\", { mode: \"boolean\" }),\r\n cancelAt: integer(\"cancel_at\", { mode: \"timestamp\" }),\r\n canceledAt: integer(\"canceled_at\", { mode: \"timestamp\" }),\r\n seats: integer(\"seats\", { mode: \"number\" }),\r\n trialStart: integer(\"trial_start\", { mode: \"timestamp\" }),\r\n trialEnd: integer(\"trial_end\", { mode: \"timestamp\" }),\r\n});\r\n"],"mappings":";;;;;;AAGA,MAAa,iBAAA,GAAA,wBAAA,aAA4B,iBAAiB;CACxD,KAAA,GAAA,wBAAA,MAAS,KAAK,CAAC,YAAY,CAAC,SAASA,KAAAA,GAAO;CAC5C,YAAA,GAAA,wBAAA,SAAmB,cAAc,EAAE,MAAM,aAAa,CAAC,CACpD,SAAS,CACT,+BAAe,IAAI,MAAM,CAAC;CAC7B,YAAA,GAAA,wBAAA,SAAmB,cAAc,EAAE,MAAM,aAAa,CAAC;CACvD,OAAA,GAAA,wBAAA,MAAW,OAAO,CAAC,SAAS;CAC5B,cAAA,GAAA,wBAAA,MAAkB,eAAe,CAAC,SAAS;CAC3C,mBAAA,GAAA,wBAAA,MAAuB,qBAAqB;CAC5C,uBAAA,GAAA,wBAAA,MAA2B,yBAAyB;CACpD,SAAA,GAAA,wBAAA,MAAa,SAAS,CAAC,SAAS;CAChC,cAAA,GAAA,wBAAA,SAAqB,gBAAgB,EAAE,MAAM,aAAa,CAAC;CAC3D,YAAA,GAAA,wBAAA,SAAmB,cAAc,EAAE,MAAM,aAAa,CAAC;CACvD,UAAA,GAAA,wBAAA,MAAc,WAAW;CACzB,WAAA,GAAA,wBAAA,MAAe,WAAW;CAC1B,aAAA,GAAA,wBAAA,SAAoB,eAAe,EAAE,MAAM,UAAU,CAAC;CACtD,YAAA,GAAA,wBAAA,MAAgB,aAAa,EAAE,MAAM,QAAQ,CAAC,CAAC,OAAiB;CAChE,oBAAA,GAAA,wBAAA,SAA2B,wBAAwB,EAAE,MAAM,WAAW,CAAC;CACvE,WAAA,GAAA,wBAAA,SAAkB,aAAa,EAAE,MAAM,aAAa,CAAC;CACrD,aAAA,GAAA,wBAAA,SAAoB,eAAe,EAAE,MAAM,aAAa,CAAC;CACzD,QAAA,GAAA,wBAAA,SAAe,SAAS,EAAE,MAAM,UAAU,CAAC;CAC3C,aAAA,GAAA,wBAAA,SAAoB,eAAe,EAAE,MAAM,aAAa,CAAC;CACzD,WAAA,GAAA,wBAAA,SAAkB,aAAa,EAAE,MAAM,aAAa,CAAC;CACtD,CAAC"}
@@ -0,0 +1,371 @@
1
+ import * as _$drizzle_orm_sqlite_core0 from "drizzle-orm/sqlite-core";
2
+
3
+ //#region src/modules/billing/billing.db.d.ts
4
+ declare const subscriptions: _$drizzle_orm_sqlite_core0.SQLiteTableWithColumns<{
5
+ name: "subscriptions";
6
+ schema: undefined;
7
+ columns: {
8
+ id: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
9
+ name: "id";
10
+ tableName: "subscriptions";
11
+ dataType: "string";
12
+ columnType: "SQLiteText";
13
+ data: string;
14
+ driverParam: string;
15
+ notNull: true;
16
+ hasDefault: true;
17
+ isPrimaryKey: true;
18
+ isAutoincrement: false;
19
+ hasRuntimeDefault: true;
20
+ enumValues: [string, ...string[]];
21
+ baseColumn: never;
22
+ identity: undefined;
23
+ generated: undefined;
24
+ }, {}, {
25
+ length: number | undefined;
26
+ }>;
27
+ createdAt: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
28
+ name: "created_at";
29
+ tableName: "subscriptions";
30
+ dataType: "date";
31
+ columnType: "SQLiteTimestamp";
32
+ data: Date;
33
+ driverParam: number;
34
+ notNull: true;
35
+ hasDefault: true;
36
+ isPrimaryKey: false;
37
+ isAutoincrement: false;
38
+ hasRuntimeDefault: true;
39
+ enumValues: undefined;
40
+ baseColumn: never;
41
+ identity: undefined;
42
+ generated: undefined;
43
+ }, {}, {}>;
44
+ updatedAt: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
45
+ name: "updated_at";
46
+ tableName: "subscriptions";
47
+ dataType: "date";
48
+ columnType: "SQLiteTimestamp";
49
+ data: Date;
50
+ driverParam: number;
51
+ notNull: false;
52
+ hasDefault: false;
53
+ isPrimaryKey: false;
54
+ isAutoincrement: false;
55
+ hasRuntimeDefault: false;
56
+ enumValues: undefined;
57
+ baseColumn: never;
58
+ identity: undefined;
59
+ generated: undefined;
60
+ }, {}, {}>;
61
+ plan: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
62
+ name: "plan";
63
+ tableName: "subscriptions";
64
+ dataType: "string";
65
+ columnType: "SQLiteText";
66
+ data: string;
67
+ driverParam: string;
68
+ notNull: true;
69
+ hasDefault: false;
70
+ isPrimaryKey: false;
71
+ isAutoincrement: false;
72
+ hasRuntimeDefault: false;
73
+ enumValues: [string, ...string[]];
74
+ baseColumn: never;
75
+ identity: undefined;
76
+ generated: undefined;
77
+ }, {}, {
78
+ length: number | undefined;
79
+ }>;
80
+ referenceId: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
81
+ name: "reference_id";
82
+ tableName: "subscriptions";
83
+ dataType: "string";
84
+ columnType: "SQLiteText";
85
+ data: string;
86
+ driverParam: string;
87
+ notNull: true;
88
+ hasDefault: false;
89
+ isPrimaryKey: false;
90
+ isAutoincrement: false;
91
+ hasRuntimeDefault: false;
92
+ enumValues: [string, ...string[]];
93
+ baseColumn: never;
94
+ identity: undefined;
95
+ generated: undefined;
96
+ }, {}, {
97
+ length: number | undefined;
98
+ }>;
99
+ stripeCustomerId: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
100
+ name: "stripe_customer_id";
101
+ tableName: "subscriptions";
102
+ dataType: "string";
103
+ columnType: "SQLiteText";
104
+ data: string;
105
+ driverParam: string;
106
+ notNull: false;
107
+ hasDefault: false;
108
+ isPrimaryKey: false;
109
+ isAutoincrement: false;
110
+ hasRuntimeDefault: false;
111
+ enumValues: [string, ...string[]];
112
+ baseColumn: never;
113
+ identity: undefined;
114
+ generated: undefined;
115
+ }, {}, {
116
+ length: number | undefined;
117
+ }>;
118
+ stripeSubscriptionId: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
119
+ name: "stripe_subscription_id";
120
+ tableName: "subscriptions";
121
+ dataType: "string";
122
+ columnType: "SQLiteText";
123
+ data: string;
124
+ driverParam: string;
125
+ notNull: false;
126
+ hasDefault: false;
127
+ isPrimaryKey: false;
128
+ isAutoincrement: false;
129
+ hasRuntimeDefault: false;
130
+ enumValues: [string, ...string[]];
131
+ baseColumn: never;
132
+ identity: undefined;
133
+ generated: undefined;
134
+ }, {}, {
135
+ length: number | undefined;
136
+ }>;
137
+ status: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
138
+ name: "status";
139
+ tableName: "subscriptions";
140
+ dataType: "string";
141
+ columnType: "SQLiteText";
142
+ data: string;
143
+ driverParam: string;
144
+ notNull: true;
145
+ hasDefault: false;
146
+ isPrimaryKey: false;
147
+ isAutoincrement: false;
148
+ hasRuntimeDefault: false;
149
+ enumValues: [string, ...string[]];
150
+ baseColumn: never;
151
+ identity: undefined;
152
+ generated: undefined;
153
+ }, {}, {
154
+ length: number | undefined;
155
+ }>;
156
+ periodStart: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
157
+ name: "period_start";
158
+ tableName: "subscriptions";
159
+ dataType: "date";
160
+ columnType: "SQLiteTimestamp";
161
+ data: Date;
162
+ driverParam: number;
163
+ notNull: false;
164
+ hasDefault: false;
165
+ isPrimaryKey: false;
166
+ isAutoincrement: false;
167
+ hasRuntimeDefault: false;
168
+ enumValues: undefined;
169
+ baseColumn: never;
170
+ identity: undefined;
171
+ generated: undefined;
172
+ }, {}, {}>;
173
+ periodEnd: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
174
+ name: "period_end";
175
+ tableName: "subscriptions";
176
+ dataType: "date";
177
+ columnType: "SQLiteTimestamp";
178
+ data: Date;
179
+ driverParam: number;
180
+ notNull: false;
181
+ hasDefault: false;
182
+ isPrimaryKey: false;
183
+ isAutoincrement: false;
184
+ hasRuntimeDefault: false;
185
+ enumValues: undefined;
186
+ baseColumn: never;
187
+ identity: undefined;
188
+ generated: undefined;
189
+ }, {}, {}>;
190
+ priceId: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
191
+ name: "price_id";
192
+ tableName: "subscriptions";
193
+ dataType: "string";
194
+ columnType: "SQLiteText";
195
+ data: string;
196
+ driverParam: string;
197
+ notNull: false;
198
+ hasDefault: false;
199
+ isPrimaryKey: false;
200
+ isAutoincrement: false;
201
+ hasRuntimeDefault: false;
202
+ enumValues: [string, ...string[]];
203
+ baseColumn: never;
204
+ identity: undefined;
205
+ generated: undefined;
206
+ }, {}, {
207
+ length: number | undefined;
208
+ }>;
209
+ interval: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
210
+ name: "interval";
211
+ tableName: "subscriptions";
212
+ dataType: "string";
213
+ columnType: "SQLiteText";
214
+ data: string;
215
+ driverParam: string;
216
+ notNull: false;
217
+ hasDefault: false;
218
+ isPrimaryKey: false;
219
+ isAutoincrement: false;
220
+ hasRuntimeDefault: false;
221
+ enumValues: [string, ...string[]];
222
+ baseColumn: never;
223
+ identity: undefined;
224
+ generated: undefined;
225
+ }, {}, {
226
+ length: number | undefined;
227
+ }>;
228
+ unitAmount: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
229
+ name: "unit_amount";
230
+ tableName: "subscriptions";
231
+ dataType: "number";
232
+ columnType: "SQLiteInteger";
233
+ data: number;
234
+ driverParam: number;
235
+ notNull: false;
236
+ hasDefault: false;
237
+ isPrimaryKey: false;
238
+ isAutoincrement: false;
239
+ hasRuntimeDefault: false;
240
+ enumValues: undefined;
241
+ baseColumn: never;
242
+ identity: undefined;
243
+ generated: undefined;
244
+ }, {}, {}>;
245
+ discounts: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
246
+ name: "discounts";
247
+ tableName: "subscriptions";
248
+ dataType: "json";
249
+ columnType: "SQLiteTextJson";
250
+ data: string[];
251
+ driverParam: string;
252
+ notNull: false;
253
+ hasDefault: false;
254
+ isPrimaryKey: false;
255
+ isAutoincrement: false;
256
+ hasRuntimeDefault: false;
257
+ enumValues: undefined;
258
+ baseColumn: never;
259
+ identity: undefined;
260
+ generated: undefined;
261
+ }, {}, {
262
+ $type: string[];
263
+ }>;
264
+ cancelAtPeriodEnd: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
265
+ name: "cancel_at_period_end";
266
+ tableName: "subscriptions";
267
+ dataType: "boolean";
268
+ columnType: "SQLiteBoolean";
269
+ data: boolean;
270
+ driverParam: number;
271
+ notNull: false;
272
+ hasDefault: false;
273
+ isPrimaryKey: false;
274
+ isAutoincrement: false;
275
+ hasRuntimeDefault: false;
276
+ enumValues: undefined;
277
+ baseColumn: never;
278
+ identity: undefined;
279
+ generated: undefined;
280
+ }, {}, {}>;
281
+ cancelAt: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
282
+ name: "cancel_at";
283
+ tableName: "subscriptions";
284
+ dataType: "date";
285
+ columnType: "SQLiteTimestamp";
286
+ data: Date;
287
+ driverParam: number;
288
+ notNull: false;
289
+ hasDefault: false;
290
+ isPrimaryKey: false;
291
+ isAutoincrement: false;
292
+ hasRuntimeDefault: false;
293
+ enumValues: undefined;
294
+ baseColumn: never;
295
+ identity: undefined;
296
+ generated: undefined;
297
+ }, {}, {}>;
298
+ canceledAt: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
299
+ name: "canceled_at";
300
+ tableName: "subscriptions";
301
+ dataType: "date";
302
+ columnType: "SQLiteTimestamp";
303
+ data: Date;
304
+ driverParam: number;
305
+ notNull: false;
306
+ hasDefault: false;
307
+ isPrimaryKey: false;
308
+ isAutoincrement: false;
309
+ hasRuntimeDefault: false;
310
+ enumValues: undefined;
311
+ baseColumn: never;
312
+ identity: undefined;
313
+ generated: undefined;
314
+ }, {}, {}>;
315
+ seats: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
316
+ name: "seats";
317
+ tableName: "subscriptions";
318
+ dataType: "number";
319
+ columnType: "SQLiteInteger";
320
+ data: number;
321
+ driverParam: number;
322
+ notNull: false;
323
+ hasDefault: false;
324
+ isPrimaryKey: false;
325
+ isAutoincrement: false;
326
+ hasRuntimeDefault: false;
327
+ enumValues: undefined;
328
+ baseColumn: never;
329
+ identity: undefined;
330
+ generated: undefined;
331
+ }, {}, {}>;
332
+ trialStart: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
333
+ name: "trial_start";
334
+ tableName: "subscriptions";
335
+ dataType: "date";
336
+ columnType: "SQLiteTimestamp";
337
+ data: Date;
338
+ driverParam: number;
339
+ notNull: false;
340
+ hasDefault: false;
341
+ isPrimaryKey: false;
342
+ isAutoincrement: false;
343
+ hasRuntimeDefault: false;
344
+ enumValues: undefined;
345
+ baseColumn: never;
346
+ identity: undefined;
347
+ generated: undefined;
348
+ }, {}, {}>;
349
+ trialEnd: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
350
+ name: "trial_end";
351
+ tableName: "subscriptions";
352
+ dataType: "date";
353
+ columnType: "SQLiteTimestamp";
354
+ data: Date;
355
+ driverParam: number;
356
+ notNull: false;
357
+ hasDefault: false;
358
+ isPrimaryKey: false;
359
+ isAutoincrement: false;
360
+ hasRuntimeDefault: false;
361
+ enumValues: undefined;
362
+ baseColumn: never;
363
+ identity: undefined;
364
+ generated: undefined;
365
+ }, {}, {}>;
366
+ };
367
+ dialect: "sqlite";
368
+ }>;
369
+ //#endregion
370
+ export { subscriptions };
371
+ //# sourceMappingURL=billing.db.d.cts.map