openship 0.1.1 → 0.1.7

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 (607) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +5786 -0
  3. package/dist/server/index.js +324319 -0
  4. package/dist/server/migrations/0000_init.sql +666 -0
  5. package/dist/server/migrations/0001_brief_tomorrow_man.sql +47 -0
  6. package/dist/server/migrations/0002_funny_dazzler.sql +2 -0
  7. package/dist/server/migrations/0003_third_killer_shrike.sql +1 -0
  8. package/dist/server/migrations/0004_session_active_org_not_null.sql +10 -0
  9. package/dist/server/migrations/0005_warm_amazoness.sql +3 -0
  10. package/dist/server/migrations/0006_lumpy_joystick.sql +1 -0
  11. package/dist/server/migrations/0007_outgoing_maginty.sql +2 -0
  12. package/dist/server/migrations/0008_frozen_cutover.sql +3 -0
  13. package/dist/server/migrations/0009_credits_billing.sql +142 -0
  14. package/dist/server/migrations/0010_credit_grant_dedupe.sql +14 -0
  15. package/dist/server/migrations/0011_remove_credit_ledger.sql +23 -0
  16. package/dist/server/migrations/0012_smart_deploys_and_git_rollback.sql +81 -0
  17. package/dist/server/migrations/0013_fix_check_run_rollup_unique.sql +38 -0
  18. package/dist/server/migrations/0014_default_rollback_git.sql +9 -0
  19. package/dist/server/migrations/0015_billing_idempotency_grants.sql +41 -0
  20. package/dist/server/migrations/0016_github_auth_high_findings.sql +30 -0
  21. package/dist/server/migrations/0017_spooky_rumiko_fujikawa.sql +6 -0
  22. package/dist/server/migrations/0018_calm_shatterstar.sql +1 -0
  23. package/dist/server/migrations/0019_rename_workspace_install_to_prepare.sql +1 -0
  24. package/dist/server/migrations/0020_uneven_the_renegades.sql +13 -0
  25. package/dist/server/migrations/0021_shiny_firestar.sql +2 -0
  26. package/dist/server/migrations/0022_version_on_success_backfill.sql +6 -0
  27. package/dist/server/migrations/0023_productive_gorilla_man.sql +17 -0
  28. package/dist/server/migrations/0024_sleepy_peter_quill.sql +2 -0
  29. package/dist/server/migrations/0025_smooth_blue_shield.sql +1 -0
  30. package/dist/server/migrations/0026_mail_backup_source.sql +11 -0
  31. package/dist/server/migrations/0027_opposite_anthem.sql +6 -0
  32. package/dist/server/migrations/0028_stale_rogue.sql +18 -0
  33. package/dist/server/migrations/0029_bouncy_loners.sql +16 -0
  34. package/dist/server/migrations/0030_bright_darkstar.sql +6 -0
  35. package/dist/server/migrations/0031_conscious_catseye.sql +13 -0
  36. package/dist/server/migrations/0032_wet_mimic.sql +51 -0
  37. package/dist/server/migrations/0033_eminent_molly_hayes.sql +2 -0
  38. package/dist/server/migrations/meta/0000_snapshot.json +5110 -0
  39. package/dist/server/migrations/meta/0001_snapshot.json +5257 -0
  40. package/dist/server/migrations/meta/0002_snapshot.json +5279 -0
  41. package/dist/server/migrations/meta/0003_snapshot.json +5286 -0
  42. package/dist/server/migrations/meta/0004_snapshot.json +5286 -0
  43. package/dist/server/migrations/meta/0005_snapshot.json +5305 -0
  44. package/dist/server/migrations/meta/0006_snapshot.json +5311 -0
  45. package/dist/server/migrations/meta/0007_snapshot.json +5323 -0
  46. package/dist/server/migrations/meta/0016_snapshot.json +6345 -0
  47. package/dist/server/migrations/meta/0017_snapshot.json +6383 -0
  48. package/dist/server/migrations/meta/0018_snapshot.json +6390 -0
  49. package/dist/server/migrations/meta/0019_snapshot.json +6390 -0
  50. package/dist/server/migrations/meta/0020_snapshot.json +6497 -0
  51. package/dist/server/migrations/meta/0021_snapshot.json +6509 -0
  52. package/dist/server/migrations/meta/0022_snapshot.json +6509 -0
  53. package/dist/server/migrations/meta/0023_snapshot.json +6629 -0
  54. package/dist/server/migrations/meta/0024_snapshot.json +6641 -0
  55. package/dist/server/migrations/meta/0025_snapshot.json +6648 -0
  56. package/dist/server/migrations/meta/0026_snapshot.json +6750 -0
  57. package/dist/server/migrations/meta/0027_snapshot.json +6757 -0
  58. package/dist/server/migrations/meta/0028_snapshot.json +6895 -0
  59. package/dist/server/migrations/meta/0029_snapshot.json +7028 -0
  60. package/dist/server/migrations/meta/0030_snapshot.json +7066 -0
  61. package/dist/server/migrations/meta/0031_snapshot.json +7181 -0
  62. package/dist/server/migrations/meta/0032_snapshot.json +7570 -0
  63. package/dist/server/migrations/meta/0033_snapshot.json +7597 -0
  64. package/dist/server/migrations/meta/_journal.json +244 -0
  65. package/dist/server/pglite/pglite.data +0 -0
  66. package/dist/server/pglite/pglite.wasm +0 -0
  67. package/package.json +31 -33
  68. package/.env.example +0 -38
  69. package/.nvmrc +0 -1
  70. package/.prettierrc +0 -7
  71. package/CONTRIBUTING.md +0 -90
  72. package/LICENSE +0 -661
  73. package/README.md +0 -360
  74. package/apps/api/.env.example +0 -30
  75. package/apps/api/Dockerfile +0 -22
  76. package/apps/api/package.json +0 -41
  77. package/apps/api/src/app.ts +0 -69
  78. package/apps/api/src/config/env.ts +0 -113
  79. package/apps/api/src/config/index.ts +0 -1
  80. package/apps/api/src/index.ts +0 -8
  81. package/apps/api/src/lib/auth-mode.ts +0 -42
  82. package/apps/api/src/lib/auth.ts +0 -105
  83. package/apps/api/src/lib/cache.ts +0 -128
  84. package/apps/api/src/lib/cloud-auth-proxy.ts +0 -310
  85. package/apps/api/src/lib/cloud-client.ts +0 -103
  86. package/apps/api/src/lib/compose-parser.ts +0 -138
  87. package/apps/api/src/lib/controller-helpers.ts +0 -90
  88. package/apps/api/src/lib/email-templates.ts +0 -94
  89. package/apps/api/src/lib/encryption.ts +0 -102
  90. package/apps/api/src/lib/local-user.ts +0 -65
  91. package/apps/api/src/lib/mail.ts +0 -48
  92. package/apps/api/src/lib/notifications.ts +0 -195
  93. package/apps/api/src/lib/openship-cloud.ts +0 -101
  94. package/apps/api/src/lib/resources.ts +0 -96
  95. package/apps/api/src/lib/screenshots.ts +0 -189
  96. package/apps/api/src/lib/ssh-manager.ts +0 -369
  97. package/apps/api/src/lib/ssl-scheduler.ts +0 -109
  98. package/apps/api/src/lib/stack-detector.ts +0 -708
  99. package/apps/api/src/lib/system-debug.ts +0 -10
  100. package/apps/api/src/middleware/auth.ts +0 -60
  101. package/apps/api/src/middleware/error-handler.ts +0 -41
  102. package/apps/api/src/middleware/index.ts +0 -5
  103. package/apps/api/src/middleware/internal-auth.ts +0 -40
  104. package/apps/api/src/middleware/local-only.ts +0 -20
  105. package/apps/api/src/middleware/rate-limiter.ts +0 -35
  106. package/apps/api/src/modules/analytics/analytics.controller.ts +0 -111
  107. package/apps/api/src/modules/analytics/analytics.routes.ts +0 -29
  108. package/apps/api/src/modules/analytics/analytics.schema.ts +0 -37
  109. package/apps/api/src/modules/analytics/analytics.service.ts +0 -264
  110. package/apps/api/src/modules/auth/auth.routes.ts +0 -237
  111. package/apps/api/src/modules/billing/billing.controller.ts +0 -60
  112. package/apps/api/src/modules/billing/billing.routes.ts +0 -34
  113. package/apps/api/src/modules/billing/billing.schema.ts +0 -9
  114. package/apps/api/src/modules/billing/billing.service.ts +0 -33
  115. package/apps/api/src/modules/cloud/cloud.controller.ts +0 -225
  116. package/apps/api/src/modules/cloud/cloud.routes.ts +0 -40
  117. package/apps/api/src/modules/deployments/build.service.ts +0 -791
  118. package/apps/api/src/modules/deployments/deployment-lifecycle.ts +0 -138
  119. package/apps/api/src/modules/deployments/deployment.controller.ts +0 -343
  120. package/apps/api/src/modules/deployments/deployment.routes.ts +0 -37
  121. package/apps/api/src/modules/deployments/deployment.schema.ts +0 -39
  122. package/apps/api/src/modules/deployments/deployment.service.ts +0 -190
  123. package/apps/api/src/modules/deployments/preflight.ts +0 -280
  124. package/apps/api/src/modules/deployments/prepare.service.ts +0 -252
  125. package/apps/api/src/modules/deployments/session-manager.ts +0 -283
  126. package/apps/api/src/modules/deployments/ssl.service.ts +0 -73
  127. package/apps/api/src/modules/domains/domain.controller.ts +0 -73
  128. package/apps/api/src/modules/domains/domain.routes.ts +0 -24
  129. package/apps/api/src/modules/domains/domain.schema.ts +0 -35
  130. package/apps/api/src/modules/domains/domain.service.ts +0 -385
  131. package/apps/api/src/modules/github/github.auth.ts +0 -397
  132. package/apps/api/src/modules/github/github.controller.ts +0 -387
  133. package/apps/api/src/modules/github/github.local-auth.ts +0 -251
  134. package/apps/api/src/modules/github/github.routes.ts +0 -50
  135. package/apps/api/src/modules/github/github.schema.ts +0 -52
  136. package/apps/api/src/modules/github/github.service.ts +0 -592
  137. package/apps/api/src/modules/github/github.types.ts +0 -158
  138. package/apps/api/src/modules/github/github.webhook.ts +0 -186
  139. package/apps/api/src/modules/github/index.ts +0 -16
  140. package/apps/api/src/modules/health/health.routes.ts +0 -45
  141. package/apps/api/src/modules/projects/project.controller.ts +0 -498
  142. package/apps/api/src/modules/projects/project.routes.ts +0 -67
  143. package/apps/api/src/modules/projects/project.schema.ts +0 -107
  144. package/apps/api/src/modules/projects/project.service.ts +0 -514
  145. package/apps/api/src/modules/settings/settings.controller.ts +0 -55
  146. package/apps/api/src/modules/settings/settings.routes.ts +0 -25
  147. package/apps/api/src/modules/settings/settings.service.ts +0 -49
  148. package/apps/api/src/modules/system/filesystem.controller.ts +0 -66
  149. package/apps/api/src/modules/system/index.ts +0 -1
  150. package/apps/api/src/modules/system/server-check.controller.ts +0 -475
  151. package/apps/api/src/modules/system/setup-session.ts +0 -255
  152. package/apps/api/src/modules/system/setup.controller.ts +0 -128
  153. package/apps/api/src/modules/system/system.routes.ts +0 -42
  154. package/apps/api/src/modules/webhooks/webhook.controller.ts +0 -64
  155. package/apps/api/src/modules/webhooks/webhook.routes.ts +0 -15
  156. package/apps/api/src/modules/webhooks/webhook.service.ts +0 -52
  157. package/apps/api/src/modules/webhooks/webhook.types.ts +0 -35
  158. package/apps/api/tsconfig.json +0 -14
  159. package/apps/cli/package.json +0 -26
  160. package/apps/cli/src/commands/deploy.ts +0 -11
  161. package/apps/cli/src/commands/init.ts +0 -8
  162. package/apps/cli/src/commands/login.ts +0 -8
  163. package/apps/cli/src/commands/logs.ts +0 -9
  164. package/apps/cli/src/index.ts +0 -21
  165. package/apps/cli/src/lib/api-client.ts +0 -35
  166. package/apps/cli/tsconfig.json +0 -13
  167. package/apps/dashboard/Dockerfile +0 -22
  168. package/apps/dashboard/components.json +0 -20
  169. package/apps/dashboard/next-env.d.ts +0 -6
  170. package/apps/dashboard/next.config.mjs +0 -16
  171. package/apps/dashboard/package.json +0 -40
  172. package/apps/dashboard/postcss.config.mjs +0 -5
  173. package/apps/dashboard/public/android-chrome-192x192.png +0 -0
  174. package/apps/dashboard/public/android-chrome-512x512.png +0 -0
  175. package/apps/dashboard/public/apple-touch-icon.png +0 -0
  176. package/apps/dashboard/public/favicon-16x16.png +0 -0
  177. package/apps/dashboard/public/favicon-32x32.png +0 -0
  178. package/apps/dashboard/public/favicon.ico +0 -0
  179. package/apps/dashboard/public/site.webmanifest +0 -19
  180. package/apps/dashboard/src/app/(auth)/forgot-password/page.tsx +0 -114
  181. package/apps/dashboard/src/app/(auth)/layout.tsx +0 -21
  182. package/apps/dashboard/src/app/(auth)/login/page.tsx +0 -220
  183. package/apps/dashboard/src/app/(auth)/providers.tsx +0 -34
  184. package/apps/dashboard/src/app/(auth)/register/page.tsx +0 -176
  185. package/apps/dashboard/src/app/(auth)/reset-password/page.tsx +0 -172
  186. package/apps/dashboard/src/app/(auth)/verify-email/page.tsx +0 -190
  187. package/apps/dashboard/src/app/(dashboard)/(deployment)/build/[id]/page.tsx +0 -162
  188. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/components/BuildSummary.tsx +0 -166
  189. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/components/DnsConfiguration.tsx +0 -119
  190. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/components/DomainSettings.tsx +0 -291
  191. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/components/Header.tsx +0 -71
  192. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/components/Sidebar.tsx +0 -270
  193. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/components/SkeletonLoader.tsx +0 -87
  194. package/apps/dashboard/src/app/(dashboard)/(deployment)/deploy/[slug]/page.tsx +0 -169
  195. package/apps/dashboard/src/app/(dashboard)/(deployment)/layout.tsx +0 -7
  196. package/apps/dashboard/src/app/(dashboard)/billing/page.tsx +0 -3
  197. package/apps/dashboard/src/app/(dashboard)/deployments/components/CommitDetailsModal.tsx +0 -240
  198. package/apps/dashboard/src/app/(dashboard)/deployments/components/DeploymentCard.tsx +0 -121
  199. package/apps/dashboard/src/app/(dashboard)/deployments/components/DeploymentHeader.tsx +0 -89
  200. package/apps/dashboard/src/app/(dashboard)/deployments/components/DeploymentMenu.tsx +0 -182
  201. package/apps/dashboard/src/app/(dashboard)/deployments/components/DeploymentsContent.tsx +0 -324
  202. package/apps/dashboard/src/app/(dashboard)/deployments/components/DeploymentsFilters.tsx +0 -99
  203. package/apps/dashboard/src/app/(dashboard)/deployments/components/DeploymentsList.tsx +0 -31
  204. package/apps/dashboard/src/app/(dashboard)/deployments/components/EmptyState.tsx +0 -101
  205. package/apps/dashboard/src/app/(dashboard)/deployments/components/LoadingSkeleton.tsx +0 -57
  206. package/apps/dashboard/src/app/(dashboard)/deployments/components/ProjectFilter.tsx +0 -109
  207. package/apps/dashboard/src/app/(dashboard)/deployments/components/index.ts +0 -9
  208. package/apps/dashboard/src/app/(dashboard)/deployments/page.tsx +0 -14
  209. package/apps/dashboard/src/app/(dashboard)/deployments/types.ts +0 -44
  210. package/apps/dashboard/src/app/(dashboard)/deployments/utils.ts +0 -176
  211. package/apps/dashboard/src/app/(dashboard)/domains/page.tsx +0 -3
  212. package/apps/dashboard/src/app/(dashboard)/integrations/page.tsx +0 -321
  213. package/apps/dashboard/src/app/(dashboard)/layout.tsx +0 -27
  214. package/apps/dashboard/src/app/(dashboard)/library/components/ConnectPrompt.tsx +0 -187
  215. package/apps/dashboard/src/app/(dashboard)/library/components/LibrarySidebar.tsx +0 -147
  216. package/apps/dashboard/src/app/(dashboard)/library/components/LoadingSkeleton.tsx +0 -39
  217. package/apps/dashboard/src/app/(dashboard)/library/components/LocalProjects.tsx +0 -548
  218. package/apps/dashboard/src/app/(dashboard)/library/components/RepositoryList.tsx +0 -292
  219. package/apps/dashboard/src/app/(dashboard)/library/components/TemplateGrid.tsx +0 -36
  220. package/apps/dashboard/src/app/(dashboard)/library/components/UrlImport.tsx +0 -74
  221. package/apps/dashboard/src/app/(dashboard)/library/page.tsx +0 -121
  222. package/apps/dashboard/src/app/(dashboard)/library/types.ts +0 -26
  223. package/apps/dashboard/src/app/(dashboard)/monitoring/page.tsx +0 -3
  224. package/apps/dashboard/src/app/(dashboard)/page.tsx +0 -485
  225. package/apps/dashboard/src/app/(dashboard)/projects/[id]/[[...slug]]/layout.tsx +0 -22
  226. package/apps/dashboard/src/app/(dashboard)/projects/[id]/[[...slug]]/page.tsx +0 -286
  227. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/AdvancedSettings.tsx +0 -235
  228. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/BuildSettings.tsx +0 -174
  229. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/DeleteConfirmationDialog.tsx +0 -45
  230. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/DeletionModal.tsx +0 -95
  231. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/Deployments.tsx +0 -11
  232. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/DomainSettings.tsx +0 -523
  233. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/EnvironmentSettings.tsx +0 -246
  234. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/GeneralSettings.tsx +0 -93
  235. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/GitInfo.tsx +0 -261
  236. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/GitSettings.tsx +0 -391
  237. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/LogsSettings.tsx +0 -133
  238. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/ProjectNotFound.tsx +0 -95
  239. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/ProjectsBottomNavigation.tsx +0 -62
  240. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/ResourceSettings.tsx +0 -333
  241. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/SettingSection.tsx +0 -66
  242. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/SettingsNavigation.tsx +0 -27
  243. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/SleepModeSettings.tsx +0 -134
  244. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/ProductionUrl.tsx +0 -25
  245. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/ProjectIdentity.tsx +0 -159
  246. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/ProjectInfo.tsx +0 -58
  247. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/SkeletonLoader.tsx +0 -170
  248. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/StatsCards.tsx +0 -33
  249. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/TopPaths.tsx +0 -56
  250. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/TrafficChart.tsx +0 -157
  251. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/general/index.ts +0 -14
  252. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/logs/LogsActions.tsx +0 -52
  253. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/logs/ServerLogs.tsx +0 -249
  254. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/logs/TerminalLogs.tsx +0 -682
  255. package/apps/dashboard/src/app/(dashboard)/projects/[id]/components/logs/logs.css +0 -127
  256. package/apps/dashboard/src/app/(dashboard)/projects/components/DeploymentCard.tsx +0 -73
  257. package/apps/dashboard/src/app/(dashboard)/projects/components/ProjectCard.tsx +0 -330
  258. package/apps/dashboard/src/app/(dashboard)/projects/page.tsx +0 -330
  259. package/apps/dashboard/src/app/(dashboard)/providers.tsx +0 -23
  260. package/apps/dashboard/src/app/(dashboard)/servers/[serverId]/_components/components-tab.tsx +0 -329
  261. package/apps/dashboard/src/app/(dashboard)/servers/[serverId]/_components/overview-tab.tsx +0 -229
  262. package/apps/dashboard/src/app/(dashboard)/servers/[serverId]/_components/terminal-tab.tsx +0 -38
  263. package/apps/dashboard/src/app/(dashboard)/servers/[serverId]/page.tsx +0 -437
  264. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/checking-state.tsx +0 -15
  265. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/choose-mode.tsx +0 -54
  266. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/component-row.tsx +0 -65
  267. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/error-banner.tsx +0 -13
  268. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/installing-panel.tsx +0 -227
  269. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/results-panel.tsx +0 -90
  270. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/setup-header.tsx +0 -56
  271. package/apps/dashboard/src/app/(dashboard)/servers/new/_components/types.ts +0 -13
  272. package/apps/dashboard/src/app/(dashboard)/servers/new/page.tsx +0 -666
  273. package/apps/dashboard/src/app/(dashboard)/servers/page.tsx +0 -283
  274. package/apps/dashboard/src/app/(dashboard)/settings/_components/BuildPreferences.tsx +0 -110
  275. package/apps/dashboard/src/app/(dashboard)/settings/_components/CloudConnection.tsx +0 -147
  276. package/apps/dashboard/src/app/(dashboard)/settings/_components/InstanceInfo.tsx +0 -54
  277. package/apps/dashboard/src/app/(dashboard)/settings/_components/ServerConnection.tsx +0 -407
  278. package/apps/dashboard/src/app/(dashboard)/settings/_components/SettingsSection.tsx +0 -32
  279. package/apps/dashboard/src/app/(dashboard)/settings/page.tsx +0 -67
  280. package/apps/dashboard/src/app/auth/callback/close/page.tsx +0 -23
  281. package/apps/dashboard/src/app/auth/callback/install/page.tsx +0 -40
  282. package/apps/dashboard/src/app/authorize/page.tsx +0 -137
  283. package/apps/dashboard/src/app/globals.css +0 -57
  284. package/apps/dashboard/src/app/layout.tsx +0 -55
  285. package/apps/dashboard/src/components/auth-shell.tsx +0 -66
  286. package/apps/dashboard/src/components/deployments/types.ts +0 -44
  287. package/apps/dashboard/src/components/global-deployments/index.ts +0 -17
  288. package/apps/dashboard/src/components/i18n-provider.tsx +0 -100
  289. package/apps/dashboard/src/components/import-project/BuildSettings.tsx +0 -376
  290. package/apps/dashboard/src/components/import-project/BuildSkeleton.tsx +0 -161
  291. package/apps/dashboard/src/components/import-project/BuildTerminal.tsx +0 -358
  292. package/apps/dashboard/src/components/import-project/ComposeServices.tsx +0 -455
  293. package/apps/dashboard/src/components/import-project/DeploymentProcessing.tsx +0 -510
  294. package/apps/dashboard/src/components/import-project/DockerSettings.tsx +0 -64
  295. package/apps/dashboard/src/components/import-project/EnvironmentVariables.tsx +0 -481
  296. package/apps/dashboard/src/components/import-project/Frameworks.tsx +0 -90
  297. package/apps/dashboard/src/components/import-project/ProjectSettings.tsx +0 -160
  298. package/apps/dashboard/src/components/import-project/types.ts +0 -82
  299. package/apps/dashboard/src/components/integrations/GithubPermissionModal.tsx +0 -173
  300. package/apps/dashboard/src/components/language-switcher.tsx +0 -36
  301. package/apps/dashboard/src/components/logo.tsx +0 -13
  302. package/apps/dashboard/src/components/network-error-handler.tsx +0 -27
  303. package/apps/dashboard/src/components/oauth-buttons.tsx +0 -81
  304. package/apps/dashboard/src/components/overview/ActivityChart.tsx +0 -247
  305. package/apps/dashboard/src/components/overview/ApiRequestsCard.tsx +0 -111
  306. package/apps/dashboard/src/components/overview/CreditsCard.tsx +0 -137
  307. package/apps/dashboard/src/components/overview/DeploymentsChart.tsx +0 -195
  308. package/apps/dashboard/src/components/overview/EmptyState.tsx +0 -126
  309. package/apps/dashboard/src/components/overview/LoadingSkeleton.tsx +0 -92
  310. package/apps/dashboard/src/components/overview/OverviewHeader.tsx +0 -74
  311. package/apps/dashboard/src/components/overview/OverviewHeroChart.tsx +0 -344
  312. package/apps/dashboard/src/components/overview/ProjectsCard.tsx +0 -134
  313. package/apps/dashboard/src/components/overview/QuickLinks.tsx +0 -119
  314. package/apps/dashboard/src/components/overview/SandboxesCard.tsx +0 -150
  315. package/apps/dashboard/src/components/overview/StatsGrid.tsx +0 -166
  316. package/apps/dashboard/src/components/overview/TokenUsageChart.tsx +0 -206
  317. package/apps/dashboard/src/components/overview/UsageStats.tsx +0 -79
  318. package/apps/dashboard/src/components/overview/index.ts +0 -30
  319. package/apps/dashboard/src/components/overview/types.ts +0 -116
  320. package/apps/dashboard/src/components/page-header.tsx +0 -25
  321. package/apps/dashboard/src/components/project-settings/ServerSideSwitch.jsx +0 -60
  322. package/apps/dashboard/src/components/shared/AlertBox.tsx +0 -39
  323. package/apps/dashboard/src/components/shared/CTASection.tsx +0 -45
  324. package/apps/dashboard/src/components/shared/ErrorState.tsx +0 -176
  325. package/apps/dashboard/src/components/shared/FeatureCard.tsx +0 -20
  326. package/apps/dashboard/src/components/shared/MDXComponents.tsx +0 -24
  327. package/apps/dashboard/src/components/shared/MachineSettingsModal.tsx +0 -286
  328. package/apps/dashboard/src/components/shared/Modal.tsx +0 -39
  329. package/apps/dashboard/src/components/shared/OTPInput.tsx +0 -122
  330. package/apps/dashboard/src/components/shared/PageHero.tsx +0 -21
  331. package/apps/dashboard/src/components/shared/PlatformFeatureCard.tsx +0 -27
  332. package/apps/dashboard/src/components/shared/StatCard.tsx +0 -14
  333. package/apps/dashboard/src/components/shared/ValueCard.tsx +0 -20
  334. package/apps/dashboard/src/components/shared/index.ts +0 -8
  335. package/apps/dashboard/src/components/sidebar.tsx +0 -282
  336. package/apps/dashboard/src/components/theme-provider.tsx +0 -96
  337. package/apps/dashboard/src/components/toast.tsx +0 -106
  338. package/apps/dashboard/src/components/ui/CustomCursor.tsx +0 -107
  339. package/apps/dashboard/src/components/ui/CustomSelect.tsx +0 -126
  340. package/apps/dashboard/src/components/ui/DropdownMenu.tsx +0 -174
  341. package/apps/dashboard/src/components/ui/FileIcon.jsx +0 -59
  342. package/apps/dashboard/src/components/ui/IconPickerModal.tsx +0 -273
  343. package/apps/dashboard/src/components/ui/InfoBanner.jsx +0 -39
  344. package/apps/dashboard/src/components/ui/Logo.tsx +0 -14
  345. package/apps/dashboard/src/components/ui/Modal.tsx +0 -117
  346. package/apps/dashboard/src/components/ui/PageContainer.tsx +0 -12
  347. package/apps/dashboard/src/components/ui/SectionContainer.jsx +0 -7
  348. package/apps/dashboard/src/components/ui/SlidingToggle.tsx +0 -128
  349. package/apps/dashboard/src/components/ui/Toast.tsx +0 -29
  350. package/apps/dashboard/src/components/ui/button.tsx +0 -58
  351. package/apps/dashboard/src/components/ui/card.tsx +0 -60
  352. package/apps/dashboard/src/components/ui/input.tsx +0 -20
  353. package/apps/dashboard/src/components/ui/label.tsx +0 -19
  354. package/apps/dashboard/src/components/ui/select.tsx +0 -10
  355. package/apps/dashboard/src/components/ui/textarea.tsx +0 -9
  356. package/apps/dashboard/src/constants/lang-colors.ts +0 -25
  357. package/apps/dashboard/src/constants/mock.ts +0 -38
  358. package/apps/dashboard/src/context/AuthContext.tsx +0 -91
  359. package/apps/dashboard/src/context/CloudContext.tsx +0 -275
  360. package/apps/dashboard/src/context/DeploymentContext.tsx +0 -71
  361. package/apps/dashboard/src/context/GitHubContext.tsx +0 -288
  362. package/apps/dashboard/src/context/ModalContext.tsx +0 -300
  363. package/apps/dashboard/src/context/NetworkContext.tsx +0 -32
  364. package/apps/dashboard/src/context/ProjectSettingsContext.tsx +0 -727
  365. package/apps/dashboard/src/context/ToastContext.tsx +0 -129
  366. package/apps/dashboard/src/context/deployment/index.ts +0 -3
  367. package/apps/dashboard/src/context/deployment/types.ts +0 -183
  368. package/apps/dashboard/src/context/deployment/useDeploymentBuild.ts +0 -547
  369. package/apps/dashboard/src/context/deployment/useDeploymentConfig.ts +0 -176
  370. package/apps/dashboard/src/hooks/useBuildConnection.ts +0 -334
  371. package/apps/dashboard/src/hooks/useMonitorStream.ts +0 -146
  372. package/apps/dashboard/src/hooks/useProjectData.ts +0 -110
  373. package/apps/dashboard/src/hooks/useSSEConnection.ts +0 -465
  374. package/apps/dashboard/src/hooks/useSSEStream.ts +0 -309
  375. package/apps/dashboard/src/hooks/useSessions.ts +0 -104
  376. package/apps/dashboard/src/hooks/useSetupStream.ts +0 -223
  377. package/apps/dashboard/src/i18n/dictionaries/ar.json +0 -218
  378. package/apps/dashboard/src/i18n/dictionaries/en.json +0 -218
  379. package/apps/dashboard/src/i18n/index.ts +0 -16
  380. package/apps/dashboard/src/lib/api/ai.ts +0 -22
  381. package/apps/dashboard/src/lib/api/auth.ts +0 -13
  382. package/apps/dashboard/src/lib/api/client.ts +0 -199
  383. package/apps/dashboard/src/lib/api/cloud.ts +0 -15
  384. package/apps/dashboard/src/lib/api/deploy.ts +0 -58
  385. package/apps/dashboard/src/lib/api/domains.ts +0 -13
  386. package/apps/dashboard/src/lib/api/endpoints.ts +0 -129
  387. package/apps/dashboard/src/lib/api/github.ts +0 -31
  388. package/apps/dashboard/src/lib/api/icons.ts +0 -12
  389. package/apps/dashboard/src/lib/api/index.ts +0 -41
  390. package/apps/dashboard/src/lib/api/projects.ts +0 -153
  391. package/apps/dashboard/src/lib/api/sandbox.ts +0 -14
  392. package/apps/dashboard/src/lib/api/settings.ts +0 -21
  393. package/apps/dashboard/src/lib/api/system.ts +0 -159
  394. package/apps/dashboard/src/lib/auth-client.ts +0 -54
  395. package/apps/dashboard/src/lib/country.ts +0 -25
  396. package/apps/dashboard/src/lib/server/api.ts +0 -140
  397. package/apps/dashboard/src/lib/server/session.ts +0 -103
  398. package/apps/dashboard/src/lib/sseClient.ts +0 -241
  399. package/apps/dashboard/src/lib/sseMessageProcessors.ts +0 -323
  400. package/apps/dashboard/src/lib/utils.ts +0 -6
  401. package/apps/dashboard/src/proxy.ts +0 -46
  402. package/apps/dashboard/src/styles/Toast.module.css +0 -92
  403. package/apps/dashboard/src/styles/fonts.css +0 -93
  404. package/apps/dashboard/src/styles/theme.css +0 -336
  405. package/apps/dashboard/src/types/research.ts +0 -42
  406. package/apps/dashboard/src/utils/SSEParser.js +0 -150
  407. package/apps/dashboard/src/utils/authWindow.ts +0 -143
  408. package/apps/dashboard/src/utils/codeTheme.ts +0 -127
  409. package/apps/dashboard/src/utils/colors.json +0 -2810
  410. package/apps/dashboard/src/utils/date.ts +0 -121
  411. package/apps/dashboard/src/utils/deployment.ts +0 -128
  412. package/apps/dashboard/src/utils/deploymentPhaseDetector.ts +0 -232
  413. package/apps/dashboard/src/utils/extToLang.js +0 -103
  414. package/apps/dashboard/src/utils/github.ts +0 -62
  415. package/apps/dashboard/src/utils/icons.js +0 -46
  416. package/apps/dashboard/src/utils/repoSlug.ts +0 -110
  417. package/apps/dashboard/src/utils/research-api.ts +0 -163
  418. package/apps/dashboard/src/utils/suggestions.ts +0 -84
  419. package/apps/dashboard/src/utils/theme.js +0 -1
  420. package/apps/dashboard/src/utils/ui-helpers.tsx +0 -30
  421. package/apps/dashboard/src/utils/upload.js +0 -12
  422. package/apps/dashboard/tsconfig.json +0 -33
  423. package/apps/desktop/forge.config.json +0 -36
  424. package/apps/desktop/package.json +0 -26
  425. package/apps/desktop/scripts/dev.mjs +0 -58
  426. package/apps/desktop/src/main/index.ts +0 -675
  427. package/apps/desktop/src/main/types/desktop.d.ts +0 -33
  428. package/apps/desktop/src/preload/index.ts +0 -88
  429. package/apps/desktop/src/renderer/index.html +0 -462
  430. package/apps/desktop/src/renderer/onboarding.js +0 -511
  431. package/apps/desktop/src/renderer/styles.css +0 -1139
  432. package/apps/desktop/tsconfig.json +0 -17
  433. package/apps/web/.source/browser.ts +0 -13
  434. package/apps/web/.source/dynamic.ts +0 -8
  435. package/apps/web/.source/server.ts +0 -22
  436. package/apps/web/.source/source.config.mjs +0 -20
  437. package/apps/web/Dockerfile +0 -22
  438. package/apps/web/content/blog/how-ai-builds-work.mdx +0 -55
  439. package/apps/web/content/blog/introducing-openship.mdx +0 -46
  440. package/apps/web/content/blog/self-hosting-cost-breakdown.mdx +0 -59
  441. package/apps/web/content/docs/_meta.json +0 -14
  442. package/apps/web/content/docs/api.mdx +0 -98
  443. package/apps/web/content/docs/cli.mdx +0 -80
  444. package/apps/web/content/docs/first-deployment.mdx +0 -56
  445. package/apps/web/content/docs/index.mdx +0 -27
  446. package/apps/web/content/docs/installation.mdx +0 -65
  447. package/apps/web/content/docs/quickstart.mdx +0 -45
  448. package/apps/web/next-env.d.ts +0 -6
  449. package/apps/web/next.config.mjs +0 -20
  450. package/apps/web/package.json +0 -33
  451. package/apps/web/postcss.config.mjs +0 -5
  452. package/apps/web/public/android-chrome-192x192.png +0 -0
  453. package/apps/web/public/android-chrome-512x512.png +0 -0
  454. package/apps/web/public/apple-touch-icon.png +0 -0
  455. package/apps/web/public/favicon-16x16.png +0 -0
  456. package/apps/web/public/favicon-32x32.png +0 -0
  457. package/apps/web/public/favicon.ico +0 -0
  458. package/apps/web/public/site.webmanifest +0 -1
  459. package/apps/web/source.config.ts +0 -17
  460. package/apps/web/src/app/(marketing)/layout.tsx +0 -9
  461. package/apps/web/src/app/(marketing)/page.tsx +0 -2
  462. package/apps/web/src/app/(marketing)/pricing/page.tsx +0 -10
  463. package/apps/web/src/app/blog/[...slug]/page.tsx +0 -247
  464. package/apps/web/src/app/blog/blog.css +0 -575
  465. package/apps/web/src/app/blog/layout.tsx +0 -50
  466. package/apps/web/src/app/blog/page.tsx +0 -235
  467. package/apps/web/src/app/docs/[[...slug]]/page.tsx +0 -67
  468. package/apps/web/src/app/docs/layout.tsx +0 -62
  469. package/apps/web/src/app/docs/toc-theme.css +0 -71
  470. package/apps/web/src/app/download/page.tsx +0 -396
  471. package/apps/web/src/app/globals.css +0 -20
  472. package/apps/web/src/app/layout.tsx +0 -70
  473. package/apps/web/src/app/page.tsx +0 -51
  474. package/apps/web/src/app/robots.ts +0 -15
  475. package/apps/web/src/app/sitemap.ts +0 -35
  476. package/apps/web/src/components/blog/share-sidebar.tsx +0 -81
  477. package/apps/web/src/components/blog/writer-sidebar.tsx +0 -81
  478. package/apps/web/src/components/landing/ai-native.tsx +0 -169
  479. package/apps/web/src/components/landing/backups.tsx +0 -139
  480. package/apps/web/src/components/landing/cdn.tsx +0 -109
  481. package/apps/web/src/components/landing/coming-soon.tsx +0 -180
  482. package/apps/web/src/components/landing/dark-section.tsx +0 -166
  483. package/apps/web/src/components/landing/dashboard.tsx +0 -407
  484. package/apps/web/src/components/landing/developer-experience.tsx +0 -224
  485. package/apps/web/src/components/landing/dns-domains.tsx +0 -146
  486. package/apps/web/src/components/landing/download-button.tsx +0 -151
  487. package/apps/web/src/components/landing/features/ai-visual.tsx +0 -48
  488. package/apps/web/src/components/landing/features/cloud-visual.tsx +0 -44
  489. package/apps/web/src/components/landing/features/git-visual.tsx +0 -61
  490. package/apps/web/src/components/landing/features/index.tsx +0 -642
  491. package/apps/web/src/components/landing/features/infra-visual.tsx +0 -69
  492. package/apps/web/src/components/landing/features/rollback-visual.tsx +0 -42
  493. package/apps/web/src/components/landing/features/ssl-visual.tsx +0 -41
  494. package/apps/web/src/components/landing/features/stacks-visual.tsx +0 -54
  495. package/apps/web/src/components/landing/final-cta.tsx +0 -116
  496. package/apps/web/src/components/landing/footer.tsx +0 -145
  497. package/apps/web/src/components/landing/hero.tsx +0 -110
  498. package/apps/web/src/components/landing/how-it-works.tsx +0 -210
  499. package/apps/web/src/components/landing/index.ts +0 -21
  500. package/apps/web/src/components/landing/mail-server.tsx +0 -122
  501. package/apps/web/src/components/landing/navbar.tsx +0 -199
  502. package/apps/web/src/components/landing/no-lockin.tsx +0 -185
  503. package/apps/web/src/components/landing/open-source-cta.tsx +0 -151
  504. package/apps/web/src/components/landing/portability.tsx +0 -190
  505. package/apps/web/src/components/landing/pricing.tsx +0 -263
  506. package/apps/web/src/components/landing/scaling.tsx +0 -209
  507. package/apps/web/src/components/landing/why-openship.tsx +0 -291
  508. package/apps/web/src/hooks/use-gsap-scroll.ts +0 -158
  509. package/apps/web/src/hooks/use-platform.ts +0 -86
  510. package/apps/web/src/lib/source.ts +0 -12
  511. package/apps/web/src/styles/fonts.css +0 -84
  512. package/apps/web/src/styles/landing.css +0 -951
  513. package/apps/web/src/styles/theme.css +0 -227
  514. package/apps/web/tsconfig.json +0 -16
  515. package/bun.lock +0 -3260
  516. package/docker-compose.yml +0 -90
  517. package/docs/screenshots/.gitkeep +0 -0
  518. package/docs/screenshots/screen.png +0 -0
  519. package/openship.code-workspace +0 -7
  520. package/packages/adapters/docs/ARCHITECTURE.md +0 -160
  521. package/packages/adapters/docs/BUILD-PIPELINE.md +0 -171
  522. package/packages/adapters/docs/CLOUD.md +0 -239
  523. package/packages/adapters/docs/EXECUTOR.md +0 -174
  524. package/packages/adapters/docs/LOG-STREAMING.md +0 -175
  525. package/packages/adapters/docs/SYSTEM.md +0 -191
  526. package/packages/adapters/package.json +0 -32
  527. package/packages/adapters/src/index.ts +0 -144
  528. package/packages/adapters/src/infra/cloud.ts +0 -42
  529. package/packages/adapters/src/infra/index.ts +0 -9
  530. package/packages/adapters/src/infra/noop.ts +0 -27
  531. package/packages/adapters/src/infra/traefik.ts +0 -297
  532. package/packages/adapters/src/infra/types.ts +0 -36
  533. package/packages/adapters/src/platform.ts +0 -255
  534. package/packages/adapters/src/runtime/bare.ts +0 -567
  535. package/packages/adapters/src/runtime/build-pipeline.ts +0 -237
  536. package/packages/adapters/src/runtime/cloud.ts +0 -791
  537. package/packages/adapters/src/runtime/deploy-pipeline.ts +0 -146
  538. package/packages/adapters/src/runtime/docker.ts +0 -443
  539. package/packages/adapters/src/runtime/index.ts +0 -69
  540. package/packages/adapters/src/runtime/local-build.ts +0 -112
  541. package/packages/adapters/src/runtime/transfer.ts +0 -82
  542. package/packages/adapters/src/runtime/types.ts +0 -138
  543. package/packages/adapters/src/system/catalog.ts +0 -188
  544. package/packages/adapters/src/system/checks.ts +0 -228
  545. package/packages/adapters/src/system/components.ts +0 -45
  546. package/packages/adapters/src/system/debug.ts +0 -18
  547. package/packages/adapters/src/system/environment.ts +0 -168
  548. package/packages/adapters/src/system/errors.ts +0 -34
  549. package/packages/adapters/src/system/executor.ts +0 -600
  550. package/packages/adapters/src/system/index.ts +0 -58
  551. package/packages/adapters/src/system/installer.ts +0 -310
  552. package/packages/adapters/src/system/setup.ts +0 -442
  553. package/packages/adapters/src/system/state.ts +0 -96
  554. package/packages/adapters/src/system/types.ts +0 -116
  555. package/packages/adapters/src/toolchain/catalog.ts +0 -439
  556. package/packages/adapters/src/toolchain/checks.ts +0 -181
  557. package/packages/adapters/src/toolchain/index.ts +0 -38
  558. package/packages/adapters/src/toolchain/installer.ts +0 -189
  559. package/packages/adapters/src/toolchain/types.ts +0 -84
  560. package/packages/adapters/src/types.ts +0 -277
  561. package/packages/adapters/tsconfig.json +0 -11
  562. package/packages/core/package.json +0 -27
  563. package/packages/core/src/constants.ts +0 -71
  564. package/packages/core/src/errors.ts +0 -49
  565. package/packages/core/src/index.ts +0 -6
  566. package/packages/core/src/stacks.ts +0 -778
  567. package/packages/core/src/system.ts +0 -111
  568. package/packages/core/src/types.ts +0 -68
  569. package/packages/core/src/utils.ts +0 -43
  570. package/packages/core/tsconfig.json +0 -11
  571. package/packages/db/drizzle/0000_init.sql +0 -231
  572. package/packages/db/drizzle/0001_add_server_name.sql +0 -1
  573. package/packages/db/drizzle/meta/_journal.json +0 -20
  574. package/packages/db/drizzle.config.ts +0 -10
  575. package/packages/db/package.json +0 -44
  576. package/packages/db/src/client.ts +0 -119
  577. package/packages/db/src/index.ts +0 -60
  578. package/packages/db/src/repos/account.repo.ts +0 -92
  579. package/packages/db/src/repos/deployment.repo.ts +0 -168
  580. package/packages/db/src/repos/domain.repo.ts +0 -102
  581. package/packages/db/src/repos/git-installation.repo.ts +0 -95
  582. package/packages/db/src/repos/index.ts +0 -43
  583. package/packages/db/src/repos/instance-settings.repo.ts +0 -43
  584. package/packages/db/src/repos/project.repo.ts +0 -159
  585. package/packages/db/src/repos/session.repo.ts +0 -82
  586. package/packages/db/src/repos/settings.repo.ts +0 -51
  587. package/packages/db/src/repos/user.repo.ts +0 -94
  588. package/packages/db/src/schema/auth.ts +0 -56
  589. package/packages/db/src/schema/deployment.ts +0 -87
  590. package/packages/db/src/schema/domain.ts +0 -46
  591. package/packages/db/src/schema/github.ts +0 -24
  592. package/packages/db/src/schema/index.ts +0 -6
  593. package/packages/db/src/schema/project.ts +0 -117
  594. package/packages/db/src/schema/settings.ts +0 -103
  595. package/packages/db/tsconfig.json +0 -11
  596. package/packages/ui/package.json +0 -38
  597. package/packages/ui/src/components/badge.tsx +0 -29
  598. package/packages/ui/src/components/button.tsx +0 -44
  599. package/packages/ui/src/components/card.tsx +0 -26
  600. package/packages/ui/src/components/status-dot.tsx +0 -25
  601. package/packages/ui/src/globals.css +0 -18
  602. package/packages/ui/src/index.tsx +0 -8
  603. package/packages/ui/src/lib/cn.ts +0 -7
  604. package/packages/ui/tsconfig.json +0 -14
  605. package/pnpm-workspace.yaml +0 -3
  606. package/tsconfig.base.json +0 -18
  607. package/turbo.json +0 -36
@@ -1,93 +0,0 @@
1
- /*
2
- * ─────────────────────────────────────────────────────────────────
3
- * OPENSHIP FONTS
4
- * Gellix (Latin) + SF Arabic (RTL fallback)
5
- * Imported once in globals.css
6
- * ─────────────────────────────────────────────────────────────────
7
- */
8
-
9
- /* ── Gellix ───────────────────────────────────────────────────── */
10
-
11
- @font-face {
12
- font-family: 'Gellix';
13
- src: url('https://cdn.oblien.com/fonts/Gellix-Thin.woff2') format('woff2');
14
- font-weight: 100;
15
- font-style: normal;
16
- font-display: swap;
17
- }
18
-
19
- @font-face {
20
- font-family: 'Gellix';
21
- src: url('https://cdn.oblien.com/fonts/Gellix-Light.woff2') format('woff2');
22
- font-weight: 300;
23
- font-style: normal;
24
- font-display: swap;
25
- }
26
-
27
- @font-face {
28
- font-family: 'Gellix';
29
- src: url('https://cdn.oblien.com/fonts/Gellix-Regular.woff2') format('woff2');
30
- font-weight: 400;
31
- font-style: normal;
32
- font-display: swap;
33
- }
34
-
35
- @font-face {
36
- font-family: 'Gellix';
37
- src: url('https://cdn.oblien.com/fonts/Gellix-Medium.woff2') format('woff2');
38
- font-weight: 500;
39
- font-style: normal;
40
- font-display: swap;
41
- }
42
-
43
- @font-face {
44
- font-family: 'Gellix';
45
- src: url('https://cdn.oblien.com/fonts/Gellix-SemiBold.woff2') format('woff2');
46
- font-weight: 600;
47
- font-style: normal;
48
- font-display: swap;
49
- }
50
-
51
- @font-face {
52
- font-family: 'Gellix';
53
- src: url('https://cdn.oblien.com/fonts/Gellix-Bold.woff2') format('woff2');
54
- font-weight: 700;
55
- font-style: normal;
56
- font-display: swap;
57
- }
58
-
59
- @font-face {
60
- font-family: 'Gellix';
61
- src: url('https://cdn.oblien.com/fonts/Gellix-ExtraBold.woff2') format('woff2');
62
- font-weight: 800;
63
- font-style: normal;
64
- font-display: swap;
65
- }
66
-
67
- @font-face {
68
- font-family: 'Gellix';
69
- src: url('https://cdn.oblien.com/fonts/Gellix-Black.woff2') format('woff2');
70
- font-weight: 900;
71
- font-style: normal;
72
- font-display: swap;
73
- }
74
-
75
- /* ── SF Arabic ────────────────────────────────────────────────── */
76
-
77
- @font-face {
78
- font-family: 'SF Arabic';
79
- src: local('SF Arabic'), local('SFArabic-Regular'),
80
- url('https://cdn.oblien.com/fonts/SFArabic-Regular.ttf') format('truetype');
81
- font-weight: normal;
82
- font-style: normal;
83
- font-display: swap;
84
- }
85
-
86
- @font-face {
87
- font-family: 'SF Arabic Rounded';
88
- src: local('SF Arabic Rounded'), local('SFArabicRounded-Regular'),
89
- url('https://cdn.oblien.com/fonts/SFArabicRounded-Regular.ttf') format('truetype');
90
- font-weight: normal;
91
- font-style: normal;
92
- font-display: swap;
93
- }
@@ -1,336 +0,0 @@
1
- /*
2
- * ─────────────────────────────────────────────────────────────────
3
- * OPENSHIP THEME TOKENS
4
- * Single source of truth for all colors across the dashboard.
5
- *
6
- * System:
7
- * data-theme="light"|"dark" on <html> (set by ThemeProvider)
8
- *
9
- * Scale primitives:
10
- * --th-on-{N} Foreground at N% opacity (text, icons, borders)
11
- * --th-sf-{N} Surface fill at N% opacity (backgrounds)
12
- *
13
- * Semantic aliases:
14
- * --th-text-* Text colors
15
- * --th-bg-* Background fills
16
- * --th-bd-* Border colors
17
- * Component-level: input, button, card, dropdown…
18
- *
19
- * Usage:
20
- * className="th-text-body"
21
- * className="th-card"
22
- * style={{ color: "var(--th-text-muted)" }}
23
- *
24
- * Semantic colors (status, accent) stay as Tailwind utilities —
25
- * they are not gray-scale and need per-context tuning.
26
- * ─────────────────────────────────────────────────────────────────
27
- */
28
-
29
- /* ── Light (default) ──────────────────────────────────────────── */
30
- :root,
31
- [data-theme="light"] {
32
-
33
- /* Foreground scale — black on white */
34
- --th-on-05: rgba(0,0,0,.05);
35
- --th-on-08: rgba(0,0,0,.08);
36
- --th-on-10: rgba(0,0,0,.10);
37
- --th-on-12: rgba(0,0,0,.12);
38
- --th-on-16: rgba(0,0,0,.16);
39
- --th-on-20: rgba(0,0,0,.20);
40
- --th-on-30: rgba(0,0,0,.30);
41
- --th-on-40: rgba(0,0,0,.40);
42
- --th-on-50: rgba(0,0,0,.50);
43
- --th-on-60: rgba(0,0,0,.60);
44
- --th-on-70: rgba(0,0,0,.70);
45
- --th-on-80: rgba(0,0,0,.80);
46
- --th-on-90: rgba(0,0,0,.90);
47
- --th-on-95: rgba(0,0,0,.95);
48
-
49
- /* Surface fill scale — tinted backgrounds */
50
- --th-sf-01: rgba(0,0,0,.01);
51
- --th-sf-02: rgba(0,0,0,.02);
52
- --th-sf-03: rgba(0,0,0,.03);
53
- --th-sf-04: rgba(0,0,0,.04);
54
- --th-sf-05: rgba(0,0,0,.05);
55
- --th-sf-06: rgba(0,0,0,.06);
56
- --th-sf-08: rgba(0,0,0,.08);
57
-
58
- /* ─ Text ─ */
59
- --th-text-heading: rgba(0,0,0,1);
60
- --th-text-title: rgba(0,0,0,.92);
61
- --th-text-strong: rgba(0,0,0,.82);
62
- --th-text-body: rgba(0,0,0,.60);
63
- --th-text-secondary: rgba(0,0,0,.50);
64
- --th-text-muted: rgba(0,0,0,.42);
65
- --th-text-label: rgba(0,0,0,.44);
66
- --th-text-hint: rgba(0,0,0,.38);
67
- --th-text-ghost: rgba(0,0,0,.18);
68
-
69
- /* ─ Page / layout ─ */
70
- --th-bg-page: #ffffff;
71
- --th-bg-card: #fafafa;
72
- --th-bg-subtle: rgba(0,0,0,.02);
73
- --th-bg-hover: rgba(0,0,0,.025);
74
- --th-bg-inset: rgba(0,0,0,.015);
75
-
76
- /* ─ Borders ─ */
77
- --th-bd-default: #e8e8e8;
78
- --th-bd-subtle: #f0f0f0;
79
- --th-bd-strong: #d0d0d0;
80
- --th-bd-card: #f0f0f0;
81
-
82
- /* ─ Input ─ */
83
- --th-input-bg: #ffffff;
84
- --th-input-bd: #e0e0e0;
85
- --th-input-text: rgba(0,0,0,.80);
86
- --th-input-placeholder: rgba(0,0,0,.28);
87
- --th-input-bg-focus: #ffffff;
88
- --th-input-bd-focus: #b0b0b0;
89
-
90
- /* ─ Button — primary (filled) ─ */
91
- --th-btn-bg: rgba(0,0,0,.92);
92
- --th-btn-text: #ffffff;
93
- --th-btn-bg-hover: rgba(0,0,0,.80);
94
-
95
- /* ─ Button — ghost / outline ─ */
96
- --th-btn-ghost-bd: #e0e0e0;
97
- --th-btn-ghost-text: rgba(0,0,0,.52);
98
- --th-btn-ghost-bd-hover: #c8c8c8;
99
- --th-btn-ghost-text-hover: rgba(0,0,0,.72);
100
- --th-btn-ghost-bg-hover: rgba(0,0,0,.025);
101
-
102
- /* ─ Card ─ */
103
- --th-card-bg: #ffffff;
104
- --th-card-bg-solid: #ffffff;
105
- --th-card-bd: #efefef;
106
- --th-card-bd-hover: #e0e0e0;
107
- --th-card-shadow: none;
108
-
109
- /* ─ Divider ─ */
110
- --th-divider: #f0f0f0;
111
-
112
- /* ─ Overlay ─ */
113
- --th-overlay: rgba(0,0,0,.45);
114
-
115
- /* ─ Dropdown ─ */
116
- --th-dropdown-bg: #ffffff;
117
- --th-dropdown-bd: #e8e8e8;
118
- --th-dropdown-shadow: 0 16px 40px rgba(0,0,0,.10), 0 4px 8px rgba(0,0,0,.06);
119
-
120
- /* ─ Spinner ─ */
121
- --th-spinner-track: rgba(0,0,0,.08);
122
- --th-spinner-fill: rgba(0,0,0,.92);
123
- }
124
-
125
-
126
- /* ── Dark ─────────────────────────────────────────────────────── */
127
- [data-theme="dark"] {
128
-
129
- /* Foreground scale — white on black */
130
- --th-on-05: rgba(255,255,255,.05);
131
- --th-on-08: rgba(255,255,255,.08);
132
- --th-on-10: rgba(255,255,255,.10);
133
- --th-on-12: rgba(255,255,255,.12);
134
- --th-on-16: rgba(255,255,255,.16);
135
- --th-on-20: rgba(255,255,255,.20);
136
- --th-on-30: rgba(255,255,255,.30);
137
- --th-on-40: rgba(255,255,255,.40);
138
- --th-on-50: rgba(255,255,255,.50);
139
- --th-on-60: rgba(255,255,255,.60);
140
- --th-on-70: rgba(255,255,255,.70);
141
- --th-on-80: rgba(255,255,255,.80);
142
- --th-on-90: rgba(255,255,255,.90);
143
- --th-on-95: rgba(255,255,255,.95);
144
-
145
- /* Surface fill scale */
146
- --th-sf-01: rgba(255,255,255,.01);
147
- --th-sf-02: rgba(255,255,255,.02);
148
- --th-sf-03: rgba(255,255,255,.03);
149
- --th-sf-04: rgba(255,255,255,.04);
150
- --th-sf-05: rgba(255,255,255,.05);
151
- --th-sf-06: rgba(255,255,255,.06);
152
- --th-sf-08: rgba(255,255,255,.08);
153
-
154
- /* ─ Text ─ */
155
- --th-text-heading: #ffffff;
156
- --th-text-title: rgba(255,255,255,.95);
157
- --th-text-strong: rgba(255,255,255,.85);
158
- --th-text-body: rgba(255,255,255,.58);
159
- --th-text-secondary: rgba(255,255,255,.48);
160
- --th-text-muted: rgba(255,255,255,.38);
161
- --th-text-label: rgba(255,255,255,.40);
162
- --th-text-hint: rgba(255,255,255,.22);
163
- --th-text-ghost: rgba(255,255,255,.14);
164
-
165
- /* ─ Page / layout ─ */
166
- --th-bg-page: #000000;
167
- --th-bg-card: #0a0a0a;
168
- --th-bg-subtle: rgba(255,255,255,.025);
169
- --th-bg-hover: rgba(255,255,255,.04);
170
- --th-bg-inset: rgba(255,255,255,.015);
171
-
172
- /* ─ Borders ─ */
173
- --th-bd-default: rgba(255,255,255,.08);
174
- --th-bd-subtle: rgba(255,255,255,.05);
175
- --th-bd-strong: rgba(255,255,255,.14);
176
- --th-bd-card: rgba(255,255,255,.07);
177
-
178
- /* ─ Input ─ */
179
- --th-input-bg: rgba(255,255,255,.03);
180
- --th-input-bd: rgba(255,255,255,.08);
181
- --th-input-text: rgba(255,255,255,.80);
182
- --th-input-placeholder: rgba(255,255,255,.22);
183
- --th-input-bg-focus: rgba(255,255,255,.05);
184
- --th-input-bd-focus: rgba(255,255,255,.18);
185
-
186
- /* ─ Button — primary ─ */
187
- --th-btn-bg: #ffffff;
188
- --th-btn-text: #000000;
189
- --th-btn-bg-hover: rgba(255,255,255,.90);
190
-
191
- /* ─ Button — ghost / outline ─ */
192
- --th-btn-ghost-bd: rgba(255,255,255,.10);
193
- --th-btn-ghost-text: rgba(255,255,255,.48);
194
- --th-btn-ghost-bd-hover: rgba(255,255,255,.18);
195
- --th-btn-ghost-text-hover: rgba(255,255,255,.72);
196
- --th-btn-ghost-bg-hover: rgba(255,255,255,.04);
197
-
198
- /* ─ Card ─ */
199
- --th-card-bg: rgba(255,255,255,.025);
200
- --th-card-bg-solid: #060606;
201
- --th-card-bd: rgba(255,255,255,.06);
202
- --th-card-bd-hover: rgba(255,255,255,.12);
203
- --th-card-shadow: none;
204
-
205
- /* ─ Divider ─ */
206
- --th-divider: rgba(255,255,255,.06);
207
-
208
- /* ─ Overlay ─ */
209
- --th-overlay: rgba(0,0,0,.6);
210
-
211
- /* ─ Dropdown ─ */
212
- --th-dropdown-bg: #161616;
213
- --th-dropdown-bd: rgba(255,255,255,.08);
214
- --th-dropdown-shadow: 0 20px 48px rgba(0,0,0,.5), 0 4px 12px rgba(0,0,0,.32);
215
-
216
- /* ─ Spinner ─ */
217
- --th-spinner-track: rgba(255,255,255,.06);
218
- --th-spinner-fill: #ffffff;
219
- }
220
-
221
-
222
- /* ══════════════════════════════════════════════════════════════
223
- UTILITY CLASSES — .th-*
224
- Each class is a single-purpose semantic token.
225
- ══════════════════════════════════════════════════════════════ */
226
-
227
- /* Text */
228
- .th-text-heading { color: var(--th-text-heading); }
229
- .th-text-title { color: var(--th-text-title); }
230
- .th-text-strong { color: var(--th-text-strong); }
231
- .th-text-body { color: var(--th-text-body); }
232
- .th-text-secondary { color: var(--th-text-secondary); }
233
- .th-text-muted { color: var(--th-text-muted); }
234
- .th-text-label { color: var(--th-text-label); }
235
- .th-text-hint { color: var(--th-text-hint); }
236
- .th-text-ghost { color: var(--th-text-ghost); }
237
-
238
- /* Page / layout */
239
- .th-page { background-color: var(--th-bg-page); min-height: 100dvh; }
240
- .th-bg-card { background-color: var(--th-bg-card); }
241
- .th-bg-subtle { background-color: var(--th-bg-subtle); }
242
-
243
- /* Card */
244
- .th-card {
245
- background-color: var(--th-card-bg);
246
- border: 1px solid var(--th-card-bd);
247
- border-radius: 1rem;
248
- box-shadow: var(--th-card-shadow);
249
- transition: border-color .2s;
250
- }
251
- .th-card:has(a:hover) { border-color: var(--th-card-bd-hover); }
252
-
253
- /* Borders */
254
- .th-bd-default { border-color: var(--th-bd-default); }
255
- .th-bd-subtle { border-color: var(--th-bd-subtle); }
256
- .th-divider { border-color: var(--th-divider); }
257
-
258
- /* Input */
259
- .th-input {
260
- background-color: var(--th-input-bg);
261
- border: 1px solid var(--th-input-bd);
262
- color: var(--th-input-text);
263
- outline: none;
264
- transition: border-color .15s, background-color .15s;
265
- }
266
- .th-input::placeholder { color: var(--th-input-placeholder); }
267
- .th-input:focus {
268
- border-color: var(--th-input-bd-focus);
269
- background-color: var(--th-input-bg-focus);
270
- }
271
-
272
- /* Button — primary */
273
- .th-btn {
274
- background-color: var(--th-btn-bg);
275
- color: var(--th-btn-text);
276
- transition: background-color .15s;
277
- }
278
- .th-btn:hover { background-color: var(--th-btn-bg-hover); }
279
- .th-btn:disabled { opacity: .42; cursor: not-allowed; }
280
-
281
- /* Button — ghost/outline */
282
- .th-btn-ghost {
283
- border: 1px solid var(--th-btn-ghost-bd);
284
- color: var(--th-btn-ghost-text);
285
- background-color: transparent;
286
- transition: border-color .15s, color .15s, background-color .15s;
287
- }
288
- .th-btn-ghost:hover {
289
- border-color: var(--th-btn-ghost-bd-hover);
290
- color: var(--th-btn-ghost-text-hover);
291
- background-color: var(--th-btn-ghost-bg-hover);
292
- }
293
- .th-btn-ghost:disabled { opacity: .42; cursor: not-allowed; }
294
-
295
- /* Dropdown */
296
- .th-dropdown {
297
- background-color: var(--th-dropdown-bg);
298
- border: 1px solid var(--th-dropdown-bd);
299
- box-shadow: var(--th-dropdown-shadow);
300
- }
301
-
302
- /* Spinner */
303
- .th-spinner-track { stroke: var(--th-spinner-track); }
304
- .th-spinner-fill { stroke: var(--th-spinner-fill); }
305
-
306
-
307
- /* ══════════════════════════════════════════════════════════════
308
- SHADCN/UI BRIDGE
309
- Maps --th-* tokens → standard shadcn variable names.
310
- The @theme inline block in globals.css exposes these to Tailwind
311
- so utilities like bg-primary, text-foreground, border-input work.
312
- Values auto-switch between light/dark because --th-* already does.
313
- ══════════════════════════════════════════════════════════════ */
314
-
315
- :root {
316
- --background: var(--th-bg-page);
317
- --foreground: var(--th-text-title);
318
- --card: var(--th-card-bg);
319
- --card-foreground: var(--th-text-title);
320
- --popover: var(--th-dropdown-bg);
321
- --popover-foreground: var(--th-text-title);
322
- --primary: var(--th-btn-bg);
323
- --primary-foreground: var(--th-btn-text);
324
- --secondary: var(--th-sf-05);
325
- --secondary-foreground: var(--th-text-strong);
326
- --muted: var(--th-sf-04);
327
- --muted-foreground: var(--th-text-muted);
328
- --accent: var(--th-sf-04);
329
- --accent-foreground: var(--th-text-title);
330
- --destructive: #ef4444;
331
- --destructive-foreground: #fafafa;
332
- --border: var(--th-bd-default);
333
- --input: var(--th-input-bd);
334
- --ring: var(--th-on-20);
335
- --radius: 0.75rem;
336
- }
@@ -1,42 +0,0 @@
1
- /**
2
- * Type definitions for the Tavily Research API integration.
3
- */
4
-
5
- export interface SearchRequest {
6
- query: string;
7
- search_depth?: "basic" | "advanced";
8
- include_answer?: boolean;
9
- include_images?: boolean;
10
- include_raw_content?: boolean;
11
- max_results?: number;
12
- include_domains?: string[];
13
- exclude_domains?: string[];
14
- }
15
-
16
- export interface ExtractRequest {
17
- urls: string[];
18
- include_images?: boolean;
19
- }
20
-
21
- export interface CrawlRequest {
22
- url: string;
23
- max_depth?: number;
24
- max_pages?: number;
25
- include_images?: boolean;
26
- }
27
-
28
- export interface ResearchResultItem {
29
- url: string;
30
- title?: string;
31
- raw_content?: string;
32
- content?: string;
33
- score?: number;
34
- }
35
-
36
- export interface ResearchResult {
37
- results: ResearchResultItem[];
38
- base_url?: string;
39
- answer?: string;
40
- images?: string[];
41
- query?: string;
42
- }
@@ -1,150 +0,0 @@
1
-
2
- export const parseJsonStream = (text) => {
3
- if (!text || typeof text !== 'string') return [];
4
-
5
- // Brute force fallback - look for JSON objects surrounded by {} in the text
6
- // This helps catch chunks that might be missed by the parser
7
- if (text.includes('{') && text.includes('}')) {
8
- const potentialJson = text.substring(
9
- text.indexOf('{'),
10
- text.lastIndexOf('}') + 1
11
- );
12
-
13
- try {
14
- const forceParsed = JSON.parse(potentialJson);
15
- // Verify this is a valid message (either a chunk or status update)
16
- if (forceParsed &&
17
- forceParsed.messageId &&
18
- (forceParsed.text || forceParsed.status) &&
19
- typeof forceParsed.messageId !== 'undefined') {
20
-
21
- return forceParsed;
22
- }
23
- } catch (e) { }
24
- }
25
-
26
- const results = [];
27
-
28
- // Strategy 1: Direct JSON parse if it's a clean JSON object
29
- try {
30
- const directParsed = JSON.parse(text);
31
- if (directParsed && typeof directParsed === 'object' && directParsed.messageId &&
32
- (directParsed.text || directParsed.status)) {
33
- results.push(directParsed);
34
- return results;
35
- }
36
- } catch (e) {
37
- console.log('Error:', e);
38
- }
39
-
40
- // Strategy 2: Handle quoted strings that contain JSON
41
- if (text.startsWith('"') && text.endsWith('"')) {
42
- try {
43
- // This will handle escaped quotes within the string
44
- const unquoted = JSON.parse(text);
45
- if (typeof unquoted === 'string') {
46
- // Try parsing the unquoted content
47
- try {
48
- const parsed = JSON.parse(unquoted);
49
- if (parsed && typeof parsed === 'object' && parsed.messageId &&
50
- (parsed.text || parsed.status)) {
51
- results.push(parsed);
52
- return results;
53
- }
54
- } catch (innerErr) { }
55
-
56
- // If that failed, use the unquoted content for the next strategies
57
- text = unquoted;
58
- }
59
- } catch (e) {
60
- console.log('Error:', e);
61
- }
62
- }
63
-
64
- // Strategy 3: Handle SSE format with data: prefix
65
- if (text.includes('data:')) {
66
- const dataLines = text.split('\n')
67
- .filter(line => line.trim().startsWith('data:'));
68
-
69
- for (const line of dataLines) {
70
- try {
71
- const jsonPart = line.substring(line.indexOf(':') + 1).trim();
72
- const parsed = JSON.parse(jsonPart);
73
- if (parsed && typeof parsed === 'object' && parsed.messageId &&
74
- (parsed.text || parsed.status)) {
75
- results.push(parsed);
76
- }
77
- } catch (e) { }
78
- }
79
- }
80
-
81
- // Strategy 4: Extract any JSON-like structures in the string
82
- // Look specifically for chunk message JSON patterns to avoid parsing code blocks
83
- const possibleJsons = [];
84
- let startIdx = text.indexOf('{');
85
-
86
- while (startIdx !== -1) {
87
- let openBraces = 1;
88
- let endIdx = startIdx + 1;
89
- let inString = false;
90
- let escaped = false;
91
-
92
- // Find matching closing brace
93
- while (endIdx < text.length && openBraces > 0) {
94
- const char = text[endIdx];
95
-
96
- if (escaped) {
97
- escaped = false;
98
- } else if (char === '\\') {
99
- escaped = true;
100
- } else if (char === '"') {
101
- inString = !inString;
102
- } else if (!inString) {
103
- if (char === '{') openBraces++;
104
- else if (char === '}') openBraces--;
105
- }
106
-
107
- endIdx++;
108
- }
109
-
110
- if (openBraces === 0) {
111
- const jsonCandidate = text.substring(startIdx, endIdx);
112
- possibleJsons.push(jsonCandidate);
113
- }
114
-
115
- startIdx = text.indexOf('{', startIdx + 1);
116
- }
117
-
118
- for (const jsonStr of possibleJsons) {
119
- try {
120
- const parsed = JSON.parse(jsonStr);
121
- // Consider it valid if it has messageId and either text or status
122
- if (parsed && typeof parsed === 'object' && parsed.messageId &&
123
- (parsed.text || parsed.status)) {
124
- results.push(parsed);
125
- }
126
- } catch (e) {
127
- console.log('Error:', e);
128
- }
129
- }
130
-
131
- if (results.length === 0 && text.includes('data:')) {
132
- // Extract data from malformed JSON as a last resort
133
- const statusMatch = text.match(/status":"([^"]+)"/);
134
- const idMatch = text.match(/messageId":(\d+)/);
135
- const typeMatch = text.match(/type":"([^"]+)"/);
136
- const textMatch = text.match(/text":"([^"]+)"/);
137
-
138
- // Generate a fallback message ID if needed
139
- const messageId = idMatch ? parseInt(idMatch[1]) : Date.now();
140
-
141
- if (statusMatch && statusMatch[1] && typeMatch && typeMatch[1] === 'status') {
142
- results.push({ messageId, type: 'status', status: JSON.parse(statusMatch[1]) });
143
- } else if (textMatch && textMatch[1]) {
144
- // Handle text chunk
145
- results.push({ messageId, type: 'text', text: textMatch[1] });
146
- }
147
- }
148
-
149
- return results;
150
- };