@vertebr/admin 0.14.0 → 0.16.0

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 (342) hide show
  1. package/dist/index.d.ts +2 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/runtime/api/catalog.d.ts +17 -9
  6. package/dist/runtime/api/catalog.d.ts.map +1 -1
  7. package/dist/runtime/api/catalog.js +10 -0
  8. package/dist/runtime/api/catalog.js.map +1 -1
  9. package/dist/runtime/connectors/payments/connector.d.ts.map +1 -1
  10. package/dist/runtime/connectors/payments/connector.js +3 -0
  11. package/dist/runtime/connectors/payments/connector.js.map +1 -1
  12. package/dist/runtime/createAdmin.d.ts.map +1 -1
  13. package/dist/runtime/createAdmin.js +3 -0
  14. package/dist/runtime/createAdmin.js.map +1 -1
  15. package/dist/runtime/types/addon.d.ts +3 -0
  16. package/dist/runtime/types/addon.d.ts.map +1 -1
  17. package/dist/runtime/types/addon.js.map +1 -1
  18. package/dist/runtime/types/audit.d.ts +3 -0
  19. package/dist/runtime/types/audit.d.ts.map +1 -1
  20. package/dist/runtime/types/config.d.ts +5 -0
  21. package/dist/runtime/types/config.d.ts.map +1 -1
  22. package/dist/runtime/types/index.d.ts +2 -0
  23. package/dist/runtime/types/index.d.ts.map +1 -1
  24. package/dist/runtime/types/index.js +4 -0
  25. package/dist/runtime/types/index.js.map +1 -1
  26. package/dist/runtime/types/layout.d.ts +3 -0
  27. package/dist/runtime/types/layout.d.ts.map +1 -1
  28. package/dist/runtime/types/mail/definition.d.ts +3 -0
  29. package/dist/runtime/types/mail/definition.d.ts.map +1 -1
  30. package/dist/runtime/types/metrics.d.ts +3 -0
  31. package/dist/runtime/types/metrics.d.ts.map +1 -1
  32. package/dist/runtime/types/navIcon.d.ts +8 -0
  33. package/dist/runtime/types/navIcon.d.ts.map +1 -0
  34. package/dist/runtime/types/navIcon.js +37 -0
  35. package/dist/runtime/types/navIcon.js.map +1 -0
  36. package/dist/runtime/types/resource.d.ts +3 -0
  37. package/dist/runtime/types/resource.d.ts.map +1 -1
  38. package/dist/schema.d.ts +9 -0
  39. package/dist/schema.d.ts.map +1 -1
  40. package/package.json +1 -1
  41. package/static/assets/index-6EkB-KyS.js +340 -0
  42. package/static/assets/index-BOeFzdnv.css +1 -0
  43. package/static/brand/apple-touch-icon.png +0 -0
  44. package/static/brand/favicon-192.png +0 -0
  45. package/static/brand/favicon-32.png +0 -0
  46. package/static/brand/vertebr-mark-light.svg +10 -0
  47. package/static/brand/vertebr-mark.svg +10 -0
  48. package/static/index.html +21 -2
  49. package/dist/api/catalog.d.ts +0 -59
  50. package/dist/api/catalog.d.ts.map +0 -1
  51. package/dist/api/catalog.js +0 -85
  52. package/dist/api/catalog.js.map +0 -1
  53. package/dist/api/configs.d.ts +0 -15
  54. package/dist/api/configs.d.ts.map +0 -1
  55. package/dist/api/configs.js +0 -43
  56. package/dist/api/configs.js.map +0 -1
  57. package/dist/api/emails.d.ts +0 -85
  58. package/dist/api/emails.d.ts.map +0 -1
  59. package/dist/api/emails.js +0 -520
  60. package/dist/api/emails.js.map +0 -1
  61. package/dist/api/gallery.d.ts +0 -28
  62. package/dist/api/gallery.d.ts.map +0 -1
  63. package/dist/api/gallery.js +0 -91
  64. package/dist/api/gallery.js.map +0 -1
  65. package/dist/api/metrics.d.ts +0 -22
  66. package/dist/api/metrics.d.ts.map +0 -1
  67. package/dist/api/metrics.js +0 -38
  68. package/dist/api/metrics.js.map +0 -1
  69. package/dist/api/public.d.ts +0 -22
  70. package/dist/api/public.d.ts.map +0 -1
  71. package/dist/api/public.js +0 -69
  72. package/dist/api/public.js.map +0 -1
  73. package/dist/api/request.d.ts +0 -26
  74. package/dist/api/request.d.ts.map +0 -1
  75. package/dist/api/request.js +0 -38
  76. package/dist/api/request.js.map +0 -1
  77. package/dist/api/resources.d.ts +0 -85
  78. package/dist/api/resources.d.ts.map +0 -1
  79. package/dist/api/resources.js +0 -263
  80. package/dist/api/resources.js.map +0 -1
  81. package/dist/api/routes.d.ts +0 -8
  82. package/dist/api/routes.d.ts.map +0 -1
  83. package/dist/api/routes.js +0 -202
  84. package/dist/api/routes.js.map +0 -1
  85. package/dist/api/spa.d.ts +0 -2
  86. package/dist/api/spa.d.ts.map +0 -1
  87. package/dist/api/spa.js +0 -34
  88. package/dist/api/spa.js.map +0 -1
  89. package/dist/connectors/payments/connector.d.ts +0 -30
  90. package/dist/connectors/payments/connector.d.ts.map +0 -1
  91. package/dist/connectors/payments/connector.js +0 -226
  92. package/dist/connectors/payments/connector.js.map +0 -1
  93. package/dist/connectors/payments/index.d.ts +0 -4
  94. package/dist/connectors/payments/index.d.ts.map +0 -1
  95. package/dist/connectors/payments/index.js +0 -10
  96. package/dist/connectors/payments/index.js.map +0 -1
  97. package/dist/connectors/payments/stripe.d.ts +0 -99
  98. package/dist/connectors/payments/stripe.d.ts.map +0 -1
  99. package/dist/connectors/payments/stripe.js +0 -189
  100. package/dist/connectors/payments/stripe.js.map +0 -1
  101. package/dist/connectors/payments/types.d.ts +0 -67
  102. package/dist/connectors/payments/types.d.ts.map +0 -1
  103. package/dist/connectors/payments/types.js +0 -16
  104. package/dist/connectors/payments/types.js.map +0 -1
  105. package/dist/connectors/stripe.d.ts +0 -19
  106. package/dist/connectors/stripe.d.ts.map +0 -1
  107. package/dist/connectors/stripe.js +0 -26
  108. package/dist/connectors/stripe.js.map +0 -1
  109. package/dist/constants.d.ts +0 -5
  110. package/dist/constants.d.ts.map +0 -1
  111. package/dist/constants.js +0 -8
  112. package/dist/constants.js.map +0 -1
  113. package/dist/createAdmin.d.ts +0 -3
  114. package/dist/createAdmin.d.ts.map +0 -1
  115. package/dist/createAdmin.js +0 -152
  116. package/dist/createAdmin.js.map +0 -1
  117. package/dist/database/firestore.d.ts +0 -71
  118. package/dist/database/firestore.d.ts.map +0 -1
  119. package/dist/database/firestore.js +0 -115
  120. package/dist/database/firestore.js.map +0 -1
  121. package/dist/database/memory.d.ts +0 -12
  122. package/dist/database/memory.d.ts.map +0 -1
  123. package/dist/database/memory.js +0 -116
  124. package/dist/database/memory.js.map +0 -1
  125. package/dist/database/mongo.d.ts +0 -41
  126. package/dist/database/mongo.d.ts.map +0 -1
  127. package/dist/database/mongo.js +0 -151
  128. package/dist/database/mongo.js.map +0 -1
  129. package/dist/database/postgres.d.ts +0 -46
  130. package/dist/database/postgres.d.ts.map +0 -1
  131. package/dist/database/postgres.js +0 -262
  132. package/dist/database/postgres.js.map +0 -1
  133. package/dist/errors.d.ts +0 -17
  134. package/dist/errors.d.ts.map +0 -1
  135. package/dist/errors.js +0 -36
  136. package/dist/errors.js.map +0 -1
  137. package/dist/index/api/catalog.d.ts +0 -53
  138. package/dist/index/api/catalog.d.ts.map +0 -1
  139. package/dist/index/api/catalog.js +0 -70
  140. package/dist/index/api/catalog.js.map +0 -1
  141. package/dist/index/api/configs.d.ts +0 -15
  142. package/dist/index/api/configs.d.ts.map +0 -1
  143. package/dist/index/api/configs.js +0 -43
  144. package/dist/index/api/configs.js.map +0 -1
  145. package/dist/index/api/gallery.d.ts +0 -28
  146. package/dist/index/api/gallery.d.ts.map +0 -1
  147. package/dist/index/api/gallery.js +0 -89
  148. package/dist/index/api/gallery.js.map +0 -1
  149. package/dist/index/api/metrics.d.ts +0 -9
  150. package/dist/index/api/metrics.d.ts.map +0 -1
  151. package/dist/index/api/metrics.js +0 -26
  152. package/dist/index/api/metrics.js.map +0 -1
  153. package/dist/index/api/public.d.ts +0 -22
  154. package/dist/index/api/public.d.ts.map +0 -1
  155. package/dist/index/api/public.js +0 -69
  156. package/dist/index/api/public.js.map +0 -1
  157. package/dist/index/api/request.d.ts +0 -25
  158. package/dist/index/api/request.d.ts.map +0 -1
  159. package/dist/index/api/request.js +0 -38
  160. package/dist/index/api/request.js.map +0 -1
  161. package/dist/index/api/resources.d.ts +0 -64
  162. package/dist/index/api/resources.d.ts.map +0 -1
  163. package/dist/index/api/resources.js +0 -173
  164. package/dist/index/api/resources.js.map +0 -1
  165. package/dist/index/api/routes.d.ts +0 -8
  166. package/dist/index/api/routes.d.ts.map +0 -1
  167. package/dist/index/api/routes.js +0 -156
  168. package/dist/index/api/routes.js.map +0 -1
  169. package/dist/index/api/spa.d.ts +0 -2
  170. package/dist/index/api/spa.d.ts.map +0 -1
  171. package/dist/index/api/spa.js +0 -33
  172. package/dist/index/api/spa.js.map +0 -1
  173. package/dist/index/connectors/stripe.d.ts +0 -9
  174. package/dist/index/connectors/stripe.d.ts.map +0 -1
  175. package/dist/index/connectors/stripe.js +0 -23
  176. package/dist/index/connectors/stripe.js.map +0 -1
  177. package/dist/index/constants.d.ts +0 -5
  178. package/dist/index/constants.d.ts.map +0 -1
  179. package/dist/index/constants.js +0 -8
  180. package/dist/index/constants.js.map +0 -1
  181. package/dist/index/createAdmin.d.ts +0 -3
  182. package/dist/index/createAdmin.d.ts.map +0 -1
  183. package/dist/index/createAdmin.js +0 -145
  184. package/dist/index/createAdmin.js.map +0 -1
  185. package/dist/index/errors.d.ts +0 -17
  186. package/dist/index/errors.d.ts.map +0 -1
  187. package/dist/index/errors.js +0 -36
  188. package/dist/index/errors.js.map +0 -1
  189. package/dist/index/services/environment.d.ts +0 -8
  190. package/dist/index/services/environment.d.ts.map +0 -1
  191. package/dist/index/services/environment.js +0 -78
  192. package/dist/index/services/environment.js.map +0 -1
  193. package/dist/index/services/registry.d.ts +0 -6
  194. package/dist/index/services/registry.d.ts.map +0 -1
  195. package/dist/index/services/registry.js +0 -32
  196. package/dist/index/services/registry.js.map +0 -1
  197. package/dist/index/services/state.d.ts +0 -24
  198. package/dist/index/services/state.d.ts.map +0 -1
  199. package/dist/index/services/state.js +0 -3
  200. package/dist/index/services/state.js.map +0 -1
  201. package/dist/index/types/admin.d.ts +0 -77
  202. package/dist/index/types/admin.d.ts.map +0 -1
  203. package/dist/index/types/admin.js +0 -3
  204. package/dist/index/types/admin.js.map +0 -1
  205. package/dist/index/types/auth.d.ts +0 -67
  206. package/dist/index/types/auth.d.ts.map +0 -1
  207. package/dist/index/types/auth.js +0 -3
  208. package/dist/index/types/auth.js.map +0 -1
  209. package/dist/index/types/config.d.ts +0 -35
  210. package/dist/index/types/config.d.ts.map +0 -1
  211. package/dist/index/types/config.js +0 -3
  212. package/dist/index/types/config.js.map +0 -1
  213. package/dist/index/types/index.d.ts +0 -7
  214. package/dist/index/types/index.d.ts.map +0 -1
  215. package/dist/index/types/index.js +0 -3
  216. package/dist/index/types/index.js.map +0 -1
  217. package/dist/index/types/layout.d.ts +0 -27
  218. package/dist/index/types/layout.d.ts.map +0 -1
  219. package/dist/index/types/layout.js +0 -3
  220. package/dist/index/types/layout.js.map +0 -1
  221. package/dist/index/types/metrics.d.ts +0 -15
  222. package/dist/index/types/metrics.d.ts.map +0 -1
  223. package/dist/index/types/metrics.js +0 -3
  224. package/dist/index/types/metrics.js.map +0 -1
  225. package/dist/index/types/resource.d.ts +0 -34
  226. package/dist/index/types/resource.d.ts.map +0 -1
  227. package/dist/index/types/resource.js +0 -3
  228. package/dist/index/types/resource.js.map +0 -1
  229. package/dist/index/utils/auth.d.ts +0 -4
  230. package/dist/index/utils/auth.d.ts.map +0 -1
  231. package/dist/index/utils/auth.js +0 -29
  232. package/dist/index/utils/auth.js.map +0 -1
  233. package/dist/index/utils/config.d.ts +0 -4
  234. package/dist/index/utils/config.d.ts.map +0 -1
  235. package/dist/index/utils/config.js +0 -14
  236. package/dist/index/utils/config.js.map +0 -1
  237. package/dist/index/utils/http.d.ts +0 -5
  238. package/dist/index/utils/http.d.ts.map +0 -1
  239. package/dist/index/utils/http.js +0 -38
  240. package/dist/index/utils/http.js.map +0 -1
  241. package/dist/index/utils/staticDir.d.ts +0 -2
  242. package/dist/index/utils/staticDir.d.ts.map +0 -1
  243. package/dist/index/utils/staticDir.js +0 -16
  244. package/dist/index/utils/staticDir.js.map +0 -1
  245. package/dist/index/utils/uploads.d.ts +0 -6
  246. package/dist/index/utils/uploads.d.ts.map +0 -1
  247. package/dist/index/utils/uploads.js +0 -66
  248. package/dist/index/utils/uploads.js.map +0 -1
  249. package/dist/mail.d.ts +0 -22
  250. package/dist/mail.d.ts.map +0 -1
  251. package/dist/mail.js +0 -248
  252. package/dist/mail.js.map +0 -1
  253. package/dist/services/environment.d.ts +0 -8
  254. package/dist/services/environment.d.ts.map +0 -1
  255. package/dist/services/environment.js +0 -78
  256. package/dist/services/environment.js.map +0 -1
  257. package/dist/services/registry.d.ts +0 -6
  258. package/dist/services/registry.d.ts.map +0 -1
  259. package/dist/services/registry.js +0 -32
  260. package/dist/services/registry.js.map +0 -1
  261. package/dist/services/state.d.ts +0 -25
  262. package/dist/services/state.d.ts.map +0 -1
  263. package/dist/services/state.js +0 -3
  264. package/dist/services/state.js.map +0 -1
  265. package/dist/types/actions.d.ts +0 -15
  266. package/dist/types/actions.d.ts.map +0 -1
  267. package/dist/types/actions.js +0 -3
  268. package/dist/types/actions.js.map +0 -1
  269. package/dist/types/admin.d.ts +0 -83
  270. package/dist/types/admin.d.ts.map +0 -1
  271. package/dist/types/admin.js +0 -3
  272. package/dist/types/admin.js.map +0 -1
  273. package/dist/types/auth.d.ts +0 -67
  274. package/dist/types/auth.d.ts.map +0 -1
  275. package/dist/types/auth.js +0 -3
  276. package/dist/types/auth.js.map +0 -1
  277. package/dist/types/config.d.ts +0 -39
  278. package/dist/types/config.d.ts.map +0 -1
  279. package/dist/types/config.js +0 -3
  280. package/dist/types/config.js.map +0 -1
  281. package/dist/types/index.d.ts +0 -13
  282. package/dist/types/index.d.ts.map +0 -1
  283. package/dist/types/index.js +0 -7
  284. package/dist/types/index.js.map +0 -1
  285. package/dist/types/layout.d.ts +0 -29
  286. package/dist/types/layout.d.ts.map +0 -1
  287. package/dist/types/layout.js +0 -3
  288. package/dist/types/layout.js.map +0 -1
  289. package/dist/types/mail/catalog.d.ts +0 -104
  290. package/dist/types/mail/catalog.d.ts.map +0 -1
  291. package/dist/types/mail/catalog.js +0 -3
  292. package/dist/types/mail/catalog.js.map +0 -1
  293. package/dist/types/mail/definition.d.ts +0 -68
  294. package/dist/types/mail/definition.d.ts.map +0 -1
  295. package/dist/types/mail/definition.js +0 -3
  296. package/dist/types/mail/definition.js.map +0 -1
  297. package/dist/types/mail/index.d.ts +0 -4
  298. package/dist/types/mail/index.d.ts.map +0 -1
  299. package/dist/types/mail/index.js +0 -3
  300. package/dist/types/mail/index.js.map +0 -1
  301. package/dist/types/mail/message.d.ts +0 -45
  302. package/dist/types/mail/message.d.ts.map +0 -1
  303. package/dist/types/mail/message.js +0 -3
  304. package/dist/types/mail/message.js.map +0 -1
  305. package/dist/types/metrics.d.ts +0 -46
  306. package/dist/types/metrics.d.ts.map +0 -1
  307. package/dist/types/metrics.js +0 -3
  308. package/dist/types/metrics.js.map +0 -1
  309. package/dist/types/resource.d.ts +0 -41
  310. package/dist/types/resource.d.ts.map +0 -1
  311. package/dist/types/resource.js +0 -3
  312. package/dist/types/resource.js.map +0 -1
  313. package/dist/utils/auth.d.ts +0 -4
  314. package/dist/utils/auth.d.ts.map +0 -1
  315. package/dist/utils/auth.js +0 -29
  316. package/dist/utils/auth.js.map +0 -1
  317. package/dist/utils/config.d.ts +0 -4
  318. package/dist/utils/config.d.ts.map +0 -1
  319. package/dist/utils/config.js +0 -14
  320. package/dist/utils/config.js.map +0 -1
  321. package/dist/utils/http.d.ts +0 -7
  322. package/dist/utils/http.d.ts.map +0 -1
  323. package/dist/utils/http.js +0 -61
  324. package/dist/utils/http.js.map +0 -1
  325. package/dist/utils/metricsRange.d.ts +0 -34
  326. package/dist/utils/metricsRange.d.ts.map +0 -1
  327. package/dist/utils/metricsRange.js +0 -121
  328. package/dist/utils/metricsRange.js.map +0 -1
  329. package/dist/utils/sidebar.d.ts +0 -2
  330. package/dist/utils/sidebar.d.ts.map +0 -1
  331. package/dist/utils/sidebar.js +0 -8
  332. package/dist/utils/sidebar.js.map +0 -1
  333. package/dist/utils/staticDir.d.ts +0 -2
  334. package/dist/utils/staticDir.d.ts.map +0 -1
  335. package/dist/utils/staticDir.js +0 -16
  336. package/dist/utils/staticDir.js.map +0 -1
  337. package/dist/utils/uploads.d.ts +0 -6
  338. package/dist/utils/uploads.d.ts.map +0 -1
  339. package/dist/utils/uploads.js +0 -66
  340. package/dist/utils/uploads.js.map +0 -1
  341. package/static/assets/index-DqDnCvHx.js +0 -340
  342. package/static/assets/index-bykX16vc.css +0 -1
@@ -1,17 +0,0 @@
1
- export declare class VertebrAuthError extends Error {
2
- readonly statusCode = 401;
3
- constructor(message?: string);
4
- }
5
- export declare class VertebrNotFoundError extends Error {
6
- readonly statusCode = 404;
7
- constructor(message?: string);
8
- }
9
- export declare class VertebrEnvError extends Error {
10
- readonly statusCode = 400;
11
- constructor(message?: string);
12
- }
13
- export declare class VertebrBadRequestError extends Error {
14
- readonly statusCode = 400;
15
- constructor(message?: string);
16
- }
17
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/index/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,UAAU,OAAO;gBACd,OAAO,SAAiB;CAIrC;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,UAAU,OAAO;gBACd,OAAO,SAAc;CAIlC;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,UAAU,OAAO;gBACd,OAAO,SAAwB;CAI5C;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,UAAU,OAAO;gBACd,OAAO,SAAgB;CAIpC"}
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VertebrBadRequestError = exports.VertebrEnvError = exports.VertebrNotFoundError = exports.VertebrAuthError = void 0;
4
- class VertebrAuthError extends Error {
5
- statusCode = 401;
6
- constructor(message = "Unauthorized") {
7
- super(message);
8
- this.name = "VertebrAuthError";
9
- }
10
- }
11
- exports.VertebrAuthError = VertebrAuthError;
12
- class VertebrNotFoundError extends Error {
13
- statusCode = 404;
14
- constructor(message = "Not found") {
15
- super(message);
16
- this.name = "VertebrNotFoundError";
17
- }
18
- }
19
- exports.VertebrNotFoundError = VertebrNotFoundError;
20
- class VertebrEnvError extends Error {
21
- statusCode = 400;
22
- constructor(message = "Invalid environment") {
23
- super(message);
24
- this.name = "VertebrEnvError";
25
- }
26
- }
27
- exports.VertebrEnvError = VertebrEnvError;
28
- class VertebrBadRequestError extends Error {
29
- statusCode = 400;
30
- constructor(message = "Bad request") {
31
- super(message);
32
- this.name = "VertebrBadRequestError";
33
- }
34
- }
35
- exports.VertebrBadRequestError = VertebrBadRequestError;
36
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/index/errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAiB,SAAQ,KAAK;IAChC,UAAU,GAAG,GAAG,CAAC;IAC1B,YAAY,OAAO,GAAG,cAAc;QAClC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAND,4CAMC;AAED,MAAa,oBAAqB,SAAQ,KAAK;IACpC,UAAU,GAAG,GAAG,CAAC;IAC1B,YAAY,OAAO,GAAG,WAAW;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAND,oDAMC;AAED,MAAa,eAAgB,SAAQ,KAAK;IAC/B,UAAU,GAAG,GAAG,CAAC;IAC1B,YAAY,OAAO,GAAG,qBAAqB;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAND,0CAMC;AAED,MAAa,sBAAuB,SAAQ,KAAK;IACtC,UAAU,GAAG,GAAG,CAAC;IAC1B,YAAY,OAAO,GAAG,aAAa;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAND,wDAMC"}
@@ -1,8 +0,0 @@
1
- import type { HandlerContext } from "../../schema";
2
- import type { AdminState } from "./state";
3
- export declare function resolveEnv(state: AdminState, request: unknown): string;
4
- export declare function assertAuth(state: AdminState, request: unknown, envId: string): Promise<void>;
5
- export declare function withEnvContext<T>(state: AdminState, request: unknown, run: (ctx: HandlerContext) => Promise<T> | T): Promise<T>;
6
- /** Public storefront reads — resolve env, no auth. */
7
- export declare function withPublicEnvContext<T>(state: AdminState, request: unknown, run: (ctx: HandlerContext) => Promise<T> | T): Promise<T>;
8
- //# sourceMappingURL=environment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../../src/index/services/environment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CActE;AAED,wBAAsB,UAAU,CAC9B,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAED,wBAAsB,cAAc,CAAC,CAAC,EACpC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3C,OAAO,CAAC,CAAC,CAAC,CASZ;AAED,sDAAsD;AACtD,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3C,OAAO,CAAC,CAAC,CAAC,CAQZ"}
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveEnv = resolveEnv;
4
- exports.assertAuth = assertAuth;
5
- exports.withEnvContext = withEnvContext;
6
- exports.withPublicEnvContext = withPublicEnvContext;
7
- const constants_1 = require("../constants");
8
- const errors_1 = require("../errors");
9
- const auth_1 = require("../utils/auth");
10
- const http_1 = require("../utils/http");
11
- function resolveEnv(state, request) {
12
- const headers = request.headers;
13
- const header = (0, http_1.headerValue)(headers, constants_1.VERTEBR_ENV_HEADER);
14
- const env = (header ?? state.defaultEnvironment).trim();
15
- if (!state.environments.some((item) => item.id === env)) {
16
- throw new errors_1.VertebrEnvError(`Unknown environment "${env}". Expected one of: ${state.environments
17
- .map((item) => item.id)
18
- .join(", ")}`);
19
- }
20
- return env;
21
- }
22
- async function assertAuth(state, request, envId) {
23
- const environment = state.environments.find((item) => item.id === envId);
24
- if (!environment) {
25
- throw new errors_1.VertebrEnvError(`Unknown environment "${envId}"`);
26
- }
27
- const user = state.options.auth.getUser
28
- ? await state.options.auth.getUser(request)
29
- : null;
30
- const envAuth = environment.auth;
31
- if (envAuth?.required) {
32
- if (!user) {
33
- throw new errors_1.VertebrAuthError("Sign in required for this environment");
34
- }
35
- if (envAuth.claimKey) {
36
- const expected = envAuth.claimIncludes ?? environment.id;
37
- if (!(0, auth_1.claimSatisfied)(user.claims, envAuth.claimKey, expected)) {
38
- throw new errors_1.VertebrAuthError(`Missing claim ${envAuth.claimKey}=${expected} for environment "${environment.id}"`);
39
- }
40
- }
41
- if (envAuth.roles?.length) {
42
- const roles = user.roles ?? [];
43
- const ok = envAuth.roles.some((role) => roles.includes(role));
44
- if (!ok) {
45
- throw new errors_1.VertebrAuthError(`Requires one of roles: ${envAuth.roles.join(", ")}`);
46
- }
47
- }
48
- }
49
- const allowed = await state.options.auth.check(request, {
50
- env: envId,
51
- user,
52
- environment,
53
- });
54
- if (!allowed) {
55
- throw new errors_1.VertebrAuthError();
56
- }
57
- }
58
- async function withEnvContext(state, request, run) {
59
- const env = resolveEnv(state, request);
60
- await assertAuth(state, request, env);
61
- const ctx = { env, request };
62
- const execute = () => Promise.resolve(run(ctx));
63
- if (state.options.onEnvironment) {
64
- return state.options.onEnvironment(env, execute);
65
- }
66
- return execute();
67
- }
68
- /** Public storefront reads — resolve env, no auth. */
69
- async function withPublicEnvContext(state, request, run) {
70
- const env = resolveEnv(state, request);
71
- const ctx = { env, request };
72
- const execute = () => Promise.resolve(run(ctx));
73
- if (state.options.onEnvironment) {
74
- return state.options.onEnvironment(env, execute);
75
- }
76
- return execute();
77
- }
78
- //# sourceMappingURL=environment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../src/index/services/environment.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { ConfigDefinition, ResourceDefinition } from "../types";
2
- import type { AdminState } from "./state";
3
- export declare function findResource(state: AdminState, id: string): ResourceDefinition;
4
- export declare function findConfig(state: AdminState, id: string): ConfigDefinition;
5
- export declare function readConfigValue(state: AdminState, id: string, env: string): Promise<Record<string, unknown>>;
6
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/index/services/registry.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAErE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,EAAE,EAAE,MAAM,GACT,kBAAkB,CAMpB;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,gBAAgB,CAM1E;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,UAAU,EACjB,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAWlC"}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.findResource = findResource;
4
- exports.findConfig = findConfig;
5
- exports.readConfigValue = readConfigValue;
6
- const store_1 = require("../../store");
7
- const errors_1 = require("../errors");
8
- const config_1 = require("../utils/config");
9
- function findResource(state, id) {
10
- const resource = state.resources.find((item) => item.id === id);
11
- if (!resource) {
12
- throw new errors_1.VertebrNotFoundError(`Resource "${id}" not found`);
13
- }
14
- return resource;
15
- }
16
- function findConfig(state, id) {
17
- const config = state.configs.find((item) => item.id === id);
18
- if (!config) {
19
- throw new errors_1.VertebrNotFoundError(`Config "${id}" not found`);
20
- }
21
- return config;
22
- }
23
- async function readConfigValue(state, id, env) {
24
- const meta = state.controlMeta.get(id);
25
- if (meta) {
26
- const stored = await meta.store.get(id, env);
27
- return (0, store_1.mergeConfigValue)((0, config_1.resolveDefaults)(meta.schema, meta.defaults, env), stored);
28
- }
29
- const config = findConfig(state, id);
30
- return config.get({ env, request: null });
31
- }
32
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/index/services/registry.ts"],"names":[],"mappings":";;AAMA,oCASC;AAED,gCAMC;AAED,0CAeC;AAxCD,uCAA+C;AAC/C,sCAAiD;AAEjD,4CAAkD;AAGlD,SAAgB,YAAY,CAC1B,KAAiB,EACjB,EAAU;IAEV,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,6BAAoB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAgB,UAAU,CAAC,KAAiB,EAAE,EAAU;IACtD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,6BAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,eAAe,CACnC,KAAiB,EACjB,EAAU,EACV,GAAW;IAEX,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC7C,OAAO,IAAA,wBAAgB,EACrB,IAAA,wBAAe,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAChD,MAAM,CACP,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrC,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC"}
@@ -1,24 +0,0 @@
1
- import type { ConfigStore } from "../../store";
2
- import type { FieldSchema, GalleryDefinition } from "../../schema";
3
- import type { AdminEnvironment, ConfigDefinition, ControlDefinition, CreateAdminOptions, MetricsDefinition, ResourceDefinition } from "../types";
4
- export type ControlMeta = {
5
- public: boolean;
6
- store: ConfigStore;
7
- defaults?: ControlDefinition["defaults"];
8
- schema: Record<string, FieldSchema>;
9
- };
10
- /** Mutable registry used by handlers after `createAdmin()`. */
11
- export type AdminState = {
12
- options: CreateAdminOptions;
13
- basePath: string;
14
- apiBase: string;
15
- resources: ResourceDefinition[];
16
- configs: ConfigDefinition[];
17
- environments: AdminEnvironment[];
18
- defaultEnvironment: string;
19
- staticDir: string | undefined;
20
- controlMeta: Map<string, ControlMeta>;
21
- metricsDef: MetricsDefinition | null;
22
- galleryDef: GalleryDefinition | null;
23
- };
24
- //# sourceMappingURL=state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/index/services/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACrC,CAAC;AAEF,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACtC,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACrC,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACtC,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/index/services/state.ts"],"names":[],"mappings":""}
@@ -1,77 +0,0 @@
1
- import type { GalleryDefinition } from "../../schema";
2
- import type { AdminAuth, AdminEnvironment } from "./auth";
3
- import type { ConfigDefinition, ControlDefinition, PageDefinition } from "./config";
4
- import type { LayoutDefinition } from "./layout";
5
- import type { MetricsDefinition } from "./metrics";
6
- import type { ResourceDefinition } from "./resource";
7
- export type Connector = {
8
- id: string;
9
- register: (admin: Admin) => void;
10
- };
11
- export type CreateAdminOptions = {
12
- auth: AdminAuth;
13
- basePath?: string;
14
- /** Directory of built dashboard SPA (index.html + assets). */
15
- staticDir?: string;
16
- /**
17
- * Environments the owner can switch between.
18
- * Omit or pass one entry for single-env apps.
19
- */
20
- environments?: AdminEnvironment[];
21
- /** Fallback when the client sends no env header. */
22
- defaultEnvironment?: string;
23
- /**
24
- * Run resource/config handlers inside host env scope
25
- * (Firestore ALS, tenant context, etc.).
26
- */
27
- onEnvironment?: <T>(env: string, run: () => Promise<T> | T) => Promise<T> | T;
28
- };
29
- export type Admin = {
30
- resource: <T = unknown>(def: ResourceDefinition<T>) => Admin;
31
- config: (def: ConfigDefinition) => Admin;
32
- /**
33
- * Register a store-backed control (dashboard form + optional public read).
34
- * Prefer this over raw `config()` for site flags and copy.
35
- */
36
- control: (def: ControlDefinition) => Admin;
37
- /**
38
- * Register page-specific content (appears under Pages in the sidebar).
39
- * Equivalent to `control({ ...def, section: "page" })`.
40
- */
41
- page: (def: PageDefinition) => Admin;
42
- /**
43
- * Register an owner-reorderable layout (preset + ordered blocks).
44
- * Appears under Pages by default; expose with `public: true` for the storefront.
45
- */
46
- layout: (def: LayoutDefinition) => Admin;
47
- /** Register the overview metrics board. */
48
- metrics: (def: MetricsDefinition) => Admin;
49
- /**
50
- * Register a media gallery (sidebar under Resources).
51
- * Host lists/uploads/deletes assets; Vertebr renders the UI.
52
- */
53
- gallery: (def: GalleryDefinition) => Admin;
54
- /** Server-side read of a registered config/control (auth not applied). */
55
- readConfig: (id: string, env: string) => Promise<Record<string, unknown>>;
56
- use: (connector: Connector) => Admin;
57
- routes: () => AdminRoute[];
58
- hapiRoutes: () => HapiCompatibleRoute[];
59
- resources: () => ResourceDefinition[];
60
- configs: () => ConfigDefinition[];
61
- environments: () => AdminEnvironment[];
62
- };
63
- export type AdminRoute = {
64
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
65
- path: string;
66
- handler: (request: unknown) => Promise<unknown> | unknown;
67
- };
68
- export type HapiCompatibleRoute = {
69
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
70
- path: string;
71
- options?: {
72
- auth?: false | string;
73
- [key: string]: any;
74
- };
75
- handler: (request: unknown, h: unknown) => Promise<unknown> | unknown;
76
- };
77
- //# sourceMappingURL=admin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../src/index/types/admin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAClC,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,CAAC,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KACtB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;IAC7D,MAAM,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC;IACzC;;;OAGG;IACH,OAAO,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,KAAK,CAAC;IAC3C;;;OAGG;IACH,IAAI,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,KAAK,CAAC;IACrC;;;OAGG;IACH,MAAM,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC;IACzC,2CAA2C;IAC3C,OAAO,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,KAAK,CAAC;IAC3C;;;OAGG;IACH,OAAO,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,KAAK,CAAC;IAC3C,0EAA0E;IAC1E,UAAU,EAAE,CACV,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,KACR,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtC,GAAG,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,KAAK,CAAC;IACrC,MAAM,EAAE,MAAM,UAAU,EAAE,CAAC;IAC3B,UAAU,EAAE,MAAM,mBAAmB,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,kBAAkB,EAAE,CAAC;IACtC,OAAO,EAAE,MAAM,gBAAgB,EAAE,CAAC;IAClC,YAAY,EAAE,MAAM,gBAAgB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;QAEtB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;IACF,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CACvE,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=admin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../../src/index/types/admin.ts"],"names":[],"mappings":""}
@@ -1,67 +0,0 @@
1
- /**
2
- * Per-environment auth — adjusted by the host app developer.
3
- * Vertebr enforces these after resolving the user via `auth.getUser`.
4
- */
5
- export type EnvironmentAuthConfig = {
6
- /** Require a signed-in user for this environment. @default false */
7
- required?: boolean;
8
- /**
9
- * Custom claim key (e.g. `allowedEnvs`).
10
- * Array/string claims must include `claimIncludes` (defaults to env id).
11
- */
12
- claimKey?: string;
13
- /** Value required in the claim. Defaults to this environment's id. */
14
- claimIncludes?: string;
15
- /** If set, user.roles must include at least one of these. */
16
- roles?: string[];
17
- /**
18
- * Public browser auth configuration. Safe Firebase web config only;
19
- * never put service-account credentials or secrets here.
20
- */
21
- client?: {
22
- provider: "firebase";
23
- config: {
24
- apiKey: string;
25
- authDomain: string;
26
- projectId: string;
27
- appId: string;
28
- messagingSenderId?: string;
29
- };
30
- methods?: Array<"email" | "google">;
31
- };
32
- };
33
- export type AdminEnvironment = {
34
- id: string;
35
- label: string;
36
- /** Optional UI hint — e.g. production = danger. */
37
- tone?: "neutral" | "warn" | "danger";
38
- /** Auth rules for this environment (developer-configurable). */
39
- auth?: EnvironmentAuthConfig;
40
- };
41
- /** Public auth summary returned to the dashboard (no secrets). */
42
- export type EnvironmentAuthPublic = {
43
- required: boolean;
44
- claimKey?: string;
45
- roles?: string[];
46
- client?: EnvironmentAuthConfig["client"];
47
- };
48
- export type VertebrUser = {
49
- uid: string;
50
- claims?: Record<string, unknown>;
51
- roles?: string[];
52
- };
53
- export type AuthContext = {
54
- env: string;
55
- user: VertebrUser | null;
56
- environment: AdminEnvironment;
57
- };
58
- export type AdminAuth = {
59
- /** Resolve the current user (Firebase token, session, etc.). */
60
- getUser?: (request: unknown) => Promise<VertebrUser | null> | VertebrUser | null;
61
- /**
62
- * Global gate after per-env auth rules.
63
- * Return false to deny even when env auth passed.
64
- */
65
- check: (request: unknown, ctx: AuthContext) => Promise<boolean> | boolean;
66
- };
67
- //# sourceMappingURL=auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/index/types/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,oEAAoE;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;OAGG;IACH,MAAM,CAAC,EAAE;QACP,QAAQ,EAAE,UAAU,CAAC;QACrB,MAAM,EAAE;YACN,MAAM,EAAE,MAAM,CAAC;YACf,UAAU,EAAE,MAAM,CAAC;YACnB,SAAS,EAAE,MAAM,CAAC;YAClB,KAAK,EAAE,MAAM,CAAC;YACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC5B,CAAC;QACF,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;IACrC,gEAAgE;IAChE,IAAI,CAAC,EAAE,qBAAqB,CAAC;CAC9B,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,gBAAgB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,gEAAgE;IAChE,OAAO,CAAC,EAAE,CACR,OAAO,EAAE,OAAO,KACb,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC;IACtD;;;OAGG;IACH,KAAK,EAAE,CACL,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,WAAW,KACb,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CACjC,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/index/types/auth.ts"],"names":[],"mappings":""}
@@ -1,35 +0,0 @@
1
- import type { FieldSchema, HandlerContext } from "../../schema";
2
- import type { ConfigStore } from "../../store";
3
- /** Sidebar group for configs / controls in the dashboard. */
4
- export type ConfigSection = "config" | "page";
5
- export type ConfigDefinition = {
6
- id: string;
7
- label: string;
8
- schema: Record<string, FieldSchema>;
9
- /** Sidebar group — use `"page"` for page-specific content. @default "config" */
10
- section?: ConfigSection;
11
- get: (ctx: HandlerContext) => Promise<Record<string, unknown>> | Record<string, unknown>;
12
- set: (value: Record<string, unknown>, ctx: HandlerContext) => Promise<void> | void;
13
- };
14
- /**
15
- * High-level control registration — store-backed config with optional
16
- * public storefront read.
17
- */
18
- export type ControlDefinition = {
19
- id: string;
20
- label: string;
21
- schema: Record<string, FieldSchema>;
22
- store: ConfigStore;
23
- /** Sidebar group — use `"page"` for page-specific content. @default "config" */
24
- section?: ConfigSection;
25
- /** When true, exposed via `/api/public/controls` (no auth). */
26
- public?: boolean;
27
- /**
28
- * Defaults merged under stored values.
29
- * Schema `default` values are applied first, then this.
30
- */
31
- defaults?: Record<string, unknown> | ((env: string) => Record<string, unknown>);
32
- };
33
- /** Store-backed page content — same as `control()` with `section: "page"`. */
34
- export type PageDefinition = Omit<ControlDefinition, "section">;
35
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/index/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,6DAA6D;AAC7D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC,gFAAgF;IAChF,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,GAAG,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzF,GAAG,EAAE,CACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,GAAG,EAAE,cAAc,KAChB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC,KAAK,EAAE,WAAW,CAAC;IACnB,gFAAgF;IAChF,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EACL,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,CAAC;AAEF,8EAA8E;AAC9E,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/index/types/config.ts"],"names":[],"mappings":""}
@@ -1,7 +0,0 @@
1
- export type { Admin, AdminRoute, Connector, CreateAdminOptions, HapiCompatibleRoute, } from "./admin";
2
- export type { AdminAuth, AdminEnvironment, AuthContext, EnvironmentAuthConfig, EnvironmentAuthPublic, VertebrUser, } from "./auth";
3
- export type { ConfigDefinition, ConfigSection, ControlDefinition, PageDefinition, } from "./config";
4
- export type { LayoutDefinition, LayoutPreset, LayoutSlot, } from "./layout";
5
- export type { MetricCard, MetricsDefinition } from "./metrics";
6
- export type { ResourceAction, ResourceDefinition } from "./resource";
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,KAAK,EACL,UAAU,EACV,SAAS,EACT,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,WAAW,GACZ,MAAM,QAAQ,CAAC;AAChB,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,cAAc,GACf,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,UAAU,GACX,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index/types/index.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- import type { ConfigStore } from "../../store";
2
- import type { ConfigSection } from "./config";
3
- /** Named slot in a host-rendered page layout. */
4
- export type LayoutSlot = {
5
- id: string;
6
- label: string;
7
- };
8
- export type LayoutPreset = {
9
- id: string;
10
- label: string;
11
- };
12
- /**
13
- * Owner-reorderable page layout. Vertebr stores the recipe; the host
14
- * still owns CSS and rendering.
15
- */
16
- export type LayoutDefinition = {
17
- id: string;
18
- label: string;
19
- slots: LayoutSlot[];
20
- /** @default slot ids in declaration order */
21
- defaultOrder?: string[];
22
- presets?: LayoutPreset[];
23
- store: ConfigStore;
24
- public?: boolean;
25
- section?: ConfigSection;
26
- };
27
- //# sourceMappingURL=layout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/index/types/layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,iDAAiD;AACjD,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=layout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/index/types/layout.ts"],"names":[],"mappings":""}
@@ -1,15 +0,0 @@
1
- import type { HandlerContext } from "../../schema";
2
- /** Dashboard KPI card returned by `metrics()`. */
3
- export type MetricCard = {
4
- id: string;
5
- label: string;
6
- value: string | number;
7
- hint?: string;
8
- tone?: "neutral" | "ok" | "warn" | "danger";
9
- };
10
- export type MetricsDefinition = {
11
- id?: string;
12
- label?: string;
13
- load: (ctx: HandlerContext) => Promise<MetricCard[]> | MetricCard[];
14
- };
15
- //# sourceMappingURL=metrics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/index/types/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC;CACrE,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=metrics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/index/types/metrics.ts"],"names":[],"mappings":""}
@@ -1,34 +0,0 @@
1
- import type { FieldSchema, FieldType, HandlerContext, ResourceUploadDefinition } from "../../schema";
2
- export type ResourceAction<T = unknown> = {
3
- label: string;
4
- input?: Record<string, FieldType>;
5
- run: (row: T, input: Record<string, unknown> | undefined, ctx: HandlerContext) => Promise<unknown> | unknown;
6
- };
7
- export type ResourceDefinition<T = unknown> = {
8
- id: string;
9
- label: string;
10
- schema: Record<string, FieldSchema>;
11
- list?: (ctx: HandlerContext) => Promise<T[]> | T[];
12
- get?: (id: string, ctx: HandlerContext) => Promise<T | undefined> | T | undefined;
13
- create?: (input: Partial<T>, ctx: HandlerContext) => Promise<T> | T;
14
- update?: (id: string, input: Partial<T>, ctx: HandlerContext) => Promise<T> | T;
15
- remove?: (id: string, ctx: HandlerContext) => Promise<void> | void;
16
- actions?: Record<string, ResourceAction<T>>;
17
- /**
18
- * Field-keyed upload handlers. Keys must match schema fields
19
- * (typically image URL strings).
20
- */
21
- uploads?: Record<string, ResourceUploadDefinition>;
22
- permissions?: {
23
- create?: boolean;
24
- update?: boolean;
25
- delete?: boolean;
26
- };
27
- /**
28
- * When true, storefront can list this resource via
29
- * `/api/public/resources/{id}` (no auth). Rows with `active: false`
30
- * are omitted.
31
- */
32
- public?: boolean;
33
- };
34
- //# sourceMappingURL=resource.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../../src/index/types/resource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,cAAc,EACd,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClC,GAAG,EAAE,CACH,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC1C,GAAG,EAAE,cAAc,KAChB,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,GAAG,OAAO,IAAI;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACnD,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAClF,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACpE,MAAM,CAAC,EAAE,CACP,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,GAAG,EAAE,cAAc,KAChB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACnD,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;IACF;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=resource.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../../src/index/types/resource.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- import type { AdminEnvironment, EnvironmentAuthPublic } from "../types";
2
- export declare function publicAuth(env: AdminEnvironment): EnvironmentAuthPublic;
3
- export declare function claimSatisfied(claims: Record<string, unknown> | undefined, key: string, expected: string): boolean;
4
- //# sourceMappingURL=auth.d.ts.map