@vertebr/admin 0.4.0 → 0.5.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 (182) hide show
  1. package/dist/api/catalog.d.ts +59 -0
  2. package/dist/api/catalog.d.ts.map +1 -0
  3. package/dist/api/catalog.js +85 -0
  4. package/dist/api/catalog.js.map +1 -0
  5. package/dist/api/configs.d.ts +15 -0
  6. package/dist/api/configs.d.ts.map +1 -0
  7. package/dist/api/configs.js +43 -0
  8. package/dist/api/configs.js.map +1 -0
  9. package/dist/api/emails.d.ts +85 -0
  10. package/dist/api/emails.d.ts.map +1 -0
  11. package/dist/api/emails.js +520 -0
  12. package/dist/api/emails.js.map +1 -0
  13. package/dist/api/gallery.d.ts +28 -0
  14. package/dist/api/gallery.d.ts.map +1 -0
  15. package/dist/api/gallery.js +91 -0
  16. package/dist/api/gallery.js.map +1 -0
  17. package/dist/api/metrics.d.ts +22 -0
  18. package/dist/api/metrics.d.ts.map +1 -0
  19. package/dist/api/metrics.js +38 -0
  20. package/dist/api/metrics.js.map +1 -0
  21. package/dist/api/public.d.ts +22 -0
  22. package/dist/api/public.d.ts.map +1 -0
  23. package/dist/api/public.js +69 -0
  24. package/dist/api/public.js.map +1 -0
  25. package/dist/api/request.d.ts +26 -0
  26. package/dist/api/request.d.ts.map +1 -0
  27. package/dist/api/request.js +38 -0
  28. package/dist/api/request.js.map +1 -0
  29. package/dist/api/resources.d.ts +85 -0
  30. package/dist/api/resources.d.ts.map +1 -0
  31. package/dist/api/resources.js +263 -0
  32. package/dist/api/resources.js.map +1 -0
  33. package/dist/api/routes.d.ts +8 -0
  34. package/dist/api/routes.d.ts.map +1 -0
  35. package/dist/api/routes.js +202 -0
  36. package/dist/api/routes.js.map +1 -0
  37. package/dist/api/spa.d.ts +2 -0
  38. package/dist/api/spa.d.ts.map +1 -0
  39. package/dist/api/spa.js +34 -0
  40. package/dist/api/spa.js.map +1 -0
  41. package/dist/connectors/payments/connector.d.ts +30 -0
  42. package/dist/connectors/payments/connector.d.ts.map +1 -0
  43. package/dist/connectors/payments/connector.js +226 -0
  44. package/dist/connectors/payments/connector.js.map +1 -0
  45. package/dist/connectors/payments/index.d.ts +4 -0
  46. package/dist/connectors/payments/index.d.ts.map +1 -0
  47. package/dist/connectors/payments/index.js +10 -0
  48. package/dist/connectors/payments/index.js.map +1 -0
  49. package/dist/connectors/payments/stripe.d.ts +99 -0
  50. package/dist/connectors/payments/stripe.d.ts.map +1 -0
  51. package/dist/connectors/payments/stripe.js +189 -0
  52. package/dist/connectors/payments/stripe.js.map +1 -0
  53. package/dist/connectors/payments/types.d.ts +67 -0
  54. package/dist/connectors/payments/types.d.ts.map +1 -0
  55. package/dist/connectors/payments/types.js +16 -0
  56. package/dist/connectors/payments/types.js.map +1 -0
  57. package/dist/connectors/stripe.d.ts +19 -0
  58. package/dist/connectors/stripe.d.ts.map +1 -0
  59. package/dist/connectors/stripe.js +26 -0
  60. package/dist/connectors/stripe.js.map +1 -0
  61. package/dist/constants.d.ts +5 -0
  62. package/dist/constants.d.ts.map +1 -0
  63. package/dist/constants.js +8 -0
  64. package/dist/constants.js.map +1 -0
  65. package/dist/createAdmin.d.ts +3 -0
  66. package/dist/createAdmin.d.ts.map +1 -0
  67. package/dist/createAdmin.js +152 -0
  68. package/dist/createAdmin.js.map +1 -0
  69. package/dist/database/connector.d.ts +1 -1
  70. package/dist/database/connector.d.ts.map +1 -1
  71. package/dist/database/connector.js +42 -6
  72. package/dist/database/connector.js.map +1 -1
  73. package/dist/database/types.d.ts +20 -5
  74. package/dist/database/types.d.ts.map +1 -1
  75. package/dist/errors.d.ts +17 -0
  76. package/dist/errors.d.ts.map +1 -0
  77. package/dist/errors.js +36 -0
  78. package/dist/errors.js.map +1 -0
  79. package/dist/index.d.ts +9 -264
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +23 -957
  82. package/dist/index.js.map +1 -1
  83. package/dist/mail.d.ts +23 -0
  84. package/dist/mail.d.ts.map +1 -0
  85. package/dist/mail.js +248 -0
  86. package/dist/mail.js.map +1 -0
  87. package/dist/schema.d.ts +6 -0
  88. package/dist/schema.d.ts.map +1 -1
  89. package/dist/services/environment.d.ts +8 -0
  90. package/dist/services/environment.d.ts.map +1 -0
  91. package/dist/services/environment.js +78 -0
  92. package/dist/services/environment.js.map +1 -0
  93. package/dist/services/registry.d.ts +6 -0
  94. package/dist/services/registry.d.ts.map +1 -0
  95. package/dist/services/registry.js +32 -0
  96. package/dist/services/registry.js.map +1 -0
  97. package/dist/services/state.d.ts +25 -0
  98. package/dist/services/state.d.ts.map +1 -0
  99. package/dist/services/state.js +3 -0
  100. package/dist/services/state.js.map +1 -0
  101. package/dist/types/actions.d.ts +15 -0
  102. package/dist/types/actions.d.ts.map +1 -0
  103. package/dist/types/actions.js +3 -0
  104. package/dist/types/actions.js.map +1 -0
  105. package/dist/types/admin.d.ts +83 -0
  106. package/dist/types/admin.d.ts.map +1 -0
  107. package/dist/types/admin.js +3 -0
  108. package/dist/types/admin.js.map +1 -0
  109. package/dist/types/auth.d.ts +67 -0
  110. package/dist/types/auth.d.ts.map +1 -0
  111. package/dist/types/auth.js +3 -0
  112. package/dist/types/auth.js.map +1 -0
  113. package/dist/types/config.d.ts +39 -0
  114. package/dist/types/config.d.ts.map +1 -0
  115. package/dist/types/config.js +3 -0
  116. package/dist/types/config.js.map +1 -0
  117. package/dist/types/index.d.ts +15 -0
  118. package/dist/types/index.d.ts.map +1 -0
  119. package/dist/types/index.js +7 -0
  120. package/dist/types/index.js.map +1 -0
  121. package/dist/types/layout.d.ts +29 -0
  122. package/dist/types/layout.d.ts.map +1 -0
  123. package/dist/types/layout.js +3 -0
  124. package/dist/types/layout.js.map +1 -0
  125. package/dist/types/mail/catalog.d.ts +104 -0
  126. package/dist/types/mail/catalog.d.ts.map +1 -0
  127. package/dist/types/mail/catalog.js +3 -0
  128. package/dist/types/mail/catalog.js.map +1 -0
  129. package/dist/types/mail/definition.d.ts +68 -0
  130. package/dist/types/mail/definition.d.ts.map +1 -0
  131. package/dist/types/mail/definition.js +3 -0
  132. package/dist/types/mail/definition.js.map +1 -0
  133. package/dist/types/mail/index.d.ts +4 -0
  134. package/dist/types/mail/index.d.ts.map +1 -0
  135. package/dist/types/mail/index.js +3 -0
  136. package/dist/types/mail/index.js.map +1 -0
  137. package/dist/types/mail/message.d.ts +45 -0
  138. package/dist/types/mail/message.d.ts.map +1 -0
  139. package/dist/types/mail/message.js +3 -0
  140. package/dist/types/mail/message.js.map +1 -0
  141. package/dist/types/metrics.d.ts +46 -0
  142. package/dist/types/metrics.d.ts.map +1 -0
  143. package/dist/types/metrics.js +3 -0
  144. package/dist/types/metrics.js.map +1 -0
  145. package/dist/types/resource.d.ts +41 -0
  146. package/dist/types/resource.d.ts.map +1 -0
  147. package/dist/types/resource.js +3 -0
  148. package/dist/types/resource.js.map +1 -0
  149. package/dist/utils/auth.d.ts +4 -0
  150. package/dist/utils/auth.d.ts.map +1 -0
  151. package/dist/utils/auth.js +29 -0
  152. package/dist/utils/auth.js.map +1 -0
  153. package/dist/utils/config.d.ts +4 -0
  154. package/dist/utils/config.d.ts.map +1 -0
  155. package/dist/utils/config.js +14 -0
  156. package/dist/utils/config.js.map +1 -0
  157. package/dist/utils/http.d.ts +7 -0
  158. package/dist/utils/http.d.ts.map +1 -0
  159. package/dist/utils/http.js +61 -0
  160. package/dist/utils/http.js.map +1 -0
  161. package/dist/utils/metricsRange.d.ts +34 -0
  162. package/dist/utils/metricsRange.d.ts.map +1 -0
  163. package/dist/utils/metricsRange.js +121 -0
  164. package/dist/utils/metricsRange.js.map +1 -0
  165. package/dist/utils/sidebar.d.ts +2 -0
  166. package/dist/utils/sidebar.d.ts.map +1 -0
  167. package/dist/utils/sidebar.js +8 -0
  168. package/dist/utils/sidebar.js.map +1 -0
  169. package/dist/utils/staticDir.d.ts +2 -0
  170. package/dist/utils/staticDir.d.ts.map +1 -0
  171. package/dist/utils/staticDir.js +16 -0
  172. package/dist/utils/staticDir.js.map +1 -0
  173. package/dist/utils/uploads.d.ts +6 -0
  174. package/dist/utils/uploads.d.ts.map +1 -0
  175. package/dist/utils/uploads.js +66 -0
  176. package/dist/utils/uploads.js.map +1 -0
  177. package/package.json +1 -1
  178. package/static/assets/index-DKyVvFeT.js +332 -0
  179. package/static/assets/index-DUwFg1bw.css +1 -0
  180. package/static/index.html +2 -2
  181. package/static/assets/index-CZ7lykOe.css +0 -1
  182. package/static/assets/index-DvZiFDex.js +0 -329
@@ -0,0 +1,59 @@
1
+ import type { AdminState } from "../services/state";
2
+ export declare function bootstrapHandler(state: AdminState): Promise<{
3
+ ok: boolean;
4
+ brand: string;
5
+ defaultEnvironment: string;
6
+ environments: {
7
+ id: string;
8
+ label: string;
9
+ tone: "neutral" | "warn" | "danger";
10
+ auth: import("..").EnvironmentAuthPublic;
11
+ }[];
12
+ }>;
13
+ export declare function catalogHandler(state: AdminState, request: unknown): Promise<{
14
+ ok: boolean;
15
+ brand: string;
16
+ environment: string;
17
+ environments: {
18
+ id: string;
19
+ label: string;
20
+ tone: "neutral" | "warn" | "danger";
21
+ auth: import("..").EnvironmentAuthPublic;
22
+ }[];
23
+ defaultEnvironment: string;
24
+ resources: {
25
+ id: string;
26
+ label: string;
27
+ group: string;
28
+ schema: Record<string, import("../schema").FieldSchema>;
29
+ permissions: import("../types").ResourcePermissions;
30
+ uploads: Record<string, import("../schema").ResourceUploadMeta> | undefined;
31
+ }[];
32
+ configs: {
33
+ id: string;
34
+ label: string;
35
+ schema: Record<string, import("../schema").FieldSchema>;
36
+ section: string;
37
+ group: string;
38
+ }[];
39
+ metrics: {
40
+ id: string;
41
+ label: string;
42
+ group: string;
43
+ } | null;
44
+ gallery: {
45
+ id: string;
46
+ label: string;
47
+ group: string;
48
+ accept: string[];
49
+ maxBytes: number;
50
+ canDelete: boolean;
51
+ } | null;
52
+ emails: {
53
+ id: string;
54
+ label: string;
55
+ group: string;
56
+ canSchedule: boolean;
57
+ } | null;
58
+ }>;
59
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/api/catalog.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAKpD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,UAAU;;;;;;;;;;GAYvD;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEvE"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.bootstrapHandler = bootstrapHandler;
4
+ exports.catalogHandler = catalogHandler;
5
+ const constants_1 = require("../constants");
6
+ const environment_1 = require("../services/environment");
7
+ const auth_1 = require("../utils/auth");
8
+ const uploads_1 = require("../utils/uploads");
9
+ const sidebar_1 = require("../utils/sidebar");
10
+ async function bootstrapHandler(state) {
11
+ return {
12
+ ok: true,
13
+ brand: "Vertebr",
14
+ defaultEnvironment: state.defaultEnvironment,
15
+ environments: state.environments.map((env) => ({
16
+ id: env.id,
17
+ label: env.label,
18
+ tone: env.tone ?? "neutral",
19
+ auth: (0, auth_1.publicAuth)(env),
20
+ })),
21
+ };
22
+ }
23
+ async function catalogHandler(state, request) {
24
+ return (0, environment_1.withEnvContext)(state, request, async (ctx) => ({
25
+ ok: true,
26
+ brand: "Vertebr",
27
+ environment: ctx.env,
28
+ environments: state.environments.map((env) => ({
29
+ id: env.id,
30
+ label: env.label,
31
+ tone: env.tone ?? "neutral",
32
+ auth: (0, auth_1.publicAuth)(env),
33
+ })),
34
+ defaultEnvironment: state.defaultEnvironment,
35
+ resources: await Promise.all(state.resources.map(async (resource) => ({
36
+ id: resource.id,
37
+ label: resource.label,
38
+ group: (0, sidebar_1.sidebarGroup)(resource.group, "Resources"),
39
+ schema: resource.schema,
40
+ permissions: resource.resolvePermissions
41
+ ? await resource.resolvePermissions(ctx)
42
+ : {
43
+ create: resource.permissions?.create ?? Boolean(resource.create),
44
+ update: resource.permissions?.update ?? Boolean(resource.update),
45
+ delete: resource.permissions?.delete ?? Boolean(resource.remove),
46
+ },
47
+ uploads: (0, uploads_1.publicUploads)(resource),
48
+ }))),
49
+ configs: state.configs.map((config) => ({
50
+ id: config.id,
51
+ label: config.label,
52
+ schema: config.schema,
53
+ section: config.section === "page" ? "page" : "config",
54
+ group: (0, sidebar_1.sidebarGroup)(config.group, config.section === "page" ? "Pages" : "Config"),
55
+ })),
56
+ metrics: state.metricsDef
57
+ ? {
58
+ id: state.metricsDef.id ?? "overview",
59
+ label: state.metricsDef.label ?? "Overview",
60
+ group: (0, sidebar_1.sidebarGroup)(state.metricsDef.group, "Analytics"),
61
+ }
62
+ : null,
63
+ gallery: state.galleryDef
64
+ ? {
65
+ id: state.galleryDef.id ?? "gallery",
66
+ label: state.galleryDef.label ?? "Gallery",
67
+ group: (0, sidebar_1.sidebarGroup)(state.galleryDef.group, "Resources"),
68
+ accept: state.galleryDef.accept?.length
69
+ ? state.galleryDef.accept
70
+ : constants_1.DEFAULT_UPLOAD_ACCEPT,
71
+ maxBytes: state.galleryDef.maxBytes ?? constants_1.DEFAULT_UPLOAD_MAX_BYTES,
72
+ canDelete: Boolean(state.galleryDef.remove),
73
+ }
74
+ : null,
75
+ emails: state.mailDef
76
+ ? {
77
+ id: "emails",
78
+ label: state.mailDef.label ?? "Emails",
79
+ group: (0, sidebar_1.sidebarGroup)(state.mailDef.group, "Growth"),
80
+ canSchedule: Boolean(state.mailDef.campaigns?.schedule),
81
+ }
82
+ : null,
83
+ }));
84
+ }
85
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/api/catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { AdminState } from "../services/state";
2
+ export declare function getConfigHandler(state: AdminState, request: unknown): Promise<{
3
+ id: string;
4
+ label: string;
5
+ schema: Record<string, import("..").FieldSchema>;
6
+ environment: string;
7
+ value: Record<string, unknown>;
8
+ }>;
9
+ export declare function setConfigHandler(state: AdminState, request: unknown): Promise<{
10
+ ok: boolean;
11
+ id: string;
12
+ environment: string;
13
+ value: Record<string, unknown>;
14
+ }>;
15
+ //# sourceMappingURL=configs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../src/api/configs.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;;;;;;GAgBzE;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;;;;;GAgBzE"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getConfigHandler = getConfigHandler;
4
+ exports.setConfigHandler = setConfigHandler;
5
+ const errors_1 = require("../errors");
6
+ const environment_1 = require("../services/environment");
7
+ const registry_1 = require("../services/registry");
8
+ const request_1 = require("./request");
9
+ async function getConfigHandler(state, request) {
10
+ return (0, environment_1.withEnvContext)(state, request, async (ctx) => {
11
+ const id = (0, request_1.requestParam)(request, "id");
12
+ if (!id) {
13
+ throw new errors_1.VertebrNotFoundError("Missing config id");
14
+ }
15
+ const config = (0, registry_1.findConfig)(state, id);
16
+ const value = await config.get(ctx);
17
+ return {
18
+ id: config.id,
19
+ label: config.label,
20
+ schema: config.schema,
21
+ environment: ctx.env,
22
+ value,
23
+ };
24
+ });
25
+ }
26
+ async function setConfigHandler(state, request) {
27
+ return (0, environment_1.withEnvContext)(state, request, async (ctx) => {
28
+ const id = (0, request_1.requestParam)(request, "id");
29
+ if (!id) {
30
+ throw new errors_1.VertebrNotFoundError("Missing config id");
31
+ }
32
+ const config = (0, registry_1.findConfig)(state, id);
33
+ const value = (0, request_1.requestObjectPayload)(request);
34
+ await config.set(value, ctx);
35
+ return {
36
+ ok: true,
37
+ id: config.id,
38
+ environment: ctx.env,
39
+ value: await config.get(ctx),
40
+ };
41
+ });
42
+ }
43
+ //# sourceMappingURL=configs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configs.js","sourceRoot":"","sources":["../../src/api/configs.ts"],"names":[],"mappings":";;AAMA,4CAgBC;AAED,4CAgBC;AAxCD,sCAAiD;AACjD,yDAAyD;AACzD,mDAAkD;AAElD,uCAA+D;AAExD,KAAK,UAAU,gBAAgB,CAAC,KAAiB,EAAE,OAAgB;IACxE,OAAO,IAAA,4BAAc,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAClD,MAAM,EAAE,GAAG,IAAA,sBAAY,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,6BAAoB,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,qBAAU,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,GAAG,CAAC,GAAG;YACpB,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAAC,KAAiB,EAAE,OAAgB;IACxE,OAAO,IAAA,4BAAc,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAClD,MAAM,EAAE,GAAG,IAAA,sBAAY,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,6BAAoB,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,qBAAU,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7B,OAAO;YACL,EAAE,EAAE,IAAI;YACR,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW,EAAE,GAAG,CAAC,GAAG;YACpB,KAAK,EAAE,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;SAC7B,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,85 @@
1
+ import type { AdminState } from "../services/state";
2
+ import type { MailCampaignAudience, MailLibraryTemplate } from "../types";
3
+ export declare function emailsBoardHandler(state: AdminState, request: unknown): Promise<{
4
+ ok: boolean;
5
+ id: string;
6
+ label: string;
7
+ group: string;
8
+ canSchedule: boolean;
9
+ canHistory: boolean;
10
+ canLibrary: boolean;
11
+ templates: {
12
+ id: string;
13
+ label: string;
14
+ input: Record<string, import("../schema").FieldSchema>;
15
+ }[];
16
+ audiences: {
17
+ id: string;
18
+ label: string;
19
+ templates: string[];
20
+ }[];
21
+ campaigns: import("../types").MailCampaign[];
22
+ history: import("../types").MailHistoryEntry[];
23
+ library: MailLibraryTemplate[];
24
+ products: import("../types").MailProductOption[];
25
+ discounts: import("../types").MailDiscountOption[];
26
+ environment: string;
27
+ }>;
28
+ export declare function emailsPreviewHandler(state: AdminState, request: unknown): Promise<{
29
+ sampleRowId: string | undefined;
30
+ to: string | string[];
31
+ subject: string;
32
+ html: string | undefined;
33
+ text: string | undefined;
34
+ ok: boolean;
35
+ }>;
36
+ export declare function emailsSendHandler(state: AdminState, request: unknown): Promise<{
37
+ ok: boolean;
38
+ resourceId: string;
39
+ templateId: string;
40
+ sent: number;
41
+ failed: number;
42
+ results: {
43
+ rowId: string;
44
+ ok: boolean;
45
+ id?: string;
46
+ error?: string;
47
+ subject?: string;
48
+ reference?: string;
49
+ }[];
50
+ environment: string;
51
+ }>;
52
+ export declare function emailsScheduleHandler(state: AdminState, request: unknown): Promise<{
53
+ ok: boolean;
54
+ campaign: {
55
+ resourceLabel: string;
56
+ templateLabel: string | undefined;
57
+ recipientCount: number;
58
+ id: string;
59
+ resourceId: string;
60
+ templateId: string;
61
+ audience: MailCampaignAudience;
62
+ sendAt: string;
63
+ status: import("../types").MailCampaignStatus;
64
+ createdAt?: string;
65
+ subject?: string;
66
+ error?: string;
67
+ };
68
+ environment: string;
69
+ }>;
70
+ export declare function emailsCancelHandler(state: AdminState, request: unknown): Promise<{
71
+ ok: boolean;
72
+ id: string;
73
+ environment: string;
74
+ }>;
75
+ export declare function emailsLibrarySaveHandler(state: AdminState, request: unknown): Promise<{
76
+ ok: boolean;
77
+ template: MailLibraryTemplate;
78
+ environment: string;
79
+ }>;
80
+ export declare function emailsLibraryDeleteHandler(state: AdminState, request: unknown): Promise<{
81
+ ok: boolean;
82
+ id: string;
83
+ environment: string;
84
+ }>;
85
+ //# sourceMappingURL=emails.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/api/emails.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EACV,oBAAoB,EAIpB,mBAAmB,EAGpB,MAAM,UAAU,CAAC;AAmJlB,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;;;;;;;;;;;;;;YANpE,MAAM;eACH,MAAM;mBACF,MAAM,EAAE;;;;;;;;GAwCtB;AAkED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO;;;;;;;GA6CjB;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;;;;;;;eAgC9D,MAAM;YACT,OAAO;aACN,MAAM;gBACH,MAAM;kBACJ,MAAM;oBACJ,MAAM;;;GAyFvB;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO;;;;;;;;;;;;;;;;;GAwGjB;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO;;;;GAYjB;AA2DD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO;;;;GAYjB;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,OAAO;;;;GAYjB"}