@cesteral/dbm-mcp 1.0.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 (227) hide show
  1. package/LICENSE.md +201 -0
  2. package/README.md +197 -0
  3. package/dist/config/index.d.ts +112 -0
  4. package/dist/config/index.d.ts.map +1 -0
  5. package/dist/config/index.js +55 -0
  6. package/dist/config/index.js.map +1 -0
  7. package/dist/generated/compatibility-rules.d.ts +26 -0
  8. package/dist/generated/compatibility-rules.d.ts.map +1 -0
  9. package/dist/generated/compatibility-rules.js +142 -0
  10. package/dist/generated/compatibility-rules.js.map +1 -0
  11. package/dist/generated/filters.d.ts +19 -0
  12. package/dist/generated/filters.d.ts.map +1 -0
  13. package/dist/generated/filters.js +2541 -0
  14. package/dist/generated/filters.js.map +1 -0
  15. package/dist/generated/index.d.ts +5 -0
  16. package/dist/generated/index.d.ts.map +1 -0
  17. package/dist/generated/index.js +5 -0
  18. package/dist/generated/index.js.map +1 -0
  19. package/dist/generated/metrics.d.ts +28 -0
  20. package/dist/generated/metrics.d.ts.map +1 -0
  21. package/dist/generated/metrics.js +961 -0
  22. package/dist/generated/metrics.js.map +1 -0
  23. package/dist/generated/report-types.d.ts +14 -0
  24. package/dist/generated/report-types.d.ts.map +1 -0
  25. package/dist/generated/report-types.js +94 -0
  26. package/dist/generated/report-types.js.map +1 -0
  27. package/dist/index.d.ts +3 -0
  28. package/dist/index.d.ts.map +1 -0
  29. package/dist/index.js +51 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts +4 -0
  32. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts.map +1 -0
  33. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js +299 -0
  34. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js.map +1 -0
  35. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts +4 -0
  36. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts.map +1 -0
  37. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js +170 -0
  38. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js.map +1 -0
  39. package/dist/mcp-server/prompts/definitions/custom-query-workflow.prompt.d.ts +4 -0
  40. package/dist/mcp-server/prompts/definitions/custom-query-workflow.prompt.d.ts.map +1 -0
  41. package/dist/mcp-server/prompts/definitions/custom-query-workflow.prompt.js +164 -0
  42. package/dist/mcp-server/prompts/definitions/custom-query-workflow.prompt.js.map +1 -0
  43. package/dist/mcp-server/prompts/definitions/pacing-performance-analysis.prompt.d.ts +4 -0
  44. package/dist/mcp-server/prompts/definitions/pacing-performance-analysis.prompt.d.ts.map +1 -0
  45. package/dist/mcp-server/prompts/definitions/pacing-performance-analysis.prompt.js +204 -0
  46. package/dist/mcp-server/prompts/definitions/pacing-performance-analysis.prompt.js.map +1 -0
  47. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts +4 -0
  48. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts.map +1 -0
  49. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js +66 -0
  50. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js.map +1 -0
  51. package/dist/mcp-server/prompts/definitions/troubleshoot-report.prompt.d.ts +4 -0
  52. package/dist/mcp-server/prompts/definitions/troubleshoot-report.prompt.d.ts.map +1 -0
  53. package/dist/mcp-server/prompts/definitions/troubleshoot-report.prompt.js +179 -0
  54. package/dist/mcp-server/prompts/definitions/troubleshoot-report.prompt.js.map +1 -0
  55. package/dist/mcp-server/prompts/definitions/types.d.ts +15 -0
  56. package/dist/mcp-server/prompts/definitions/types.d.ts.map +1 -0
  57. package/dist/mcp-server/prompts/definitions/types.js +2 -0
  58. package/dist/mcp-server/prompts/definitions/types.js.map +1 -0
  59. package/dist/mcp-server/prompts/index.d.ts +6 -0
  60. package/dist/mcp-server/prompts/index.d.ts.map +1 -0
  61. package/dist/mcp-server/prompts/index.js +57 -0
  62. package/dist/mcp-server/prompts/index.js.map +1 -0
  63. package/dist/mcp-server/resources/definitions/compatibility-rules.resource.d.ts +3 -0
  64. package/dist/mcp-server/resources/definitions/compatibility-rules.resource.d.ts.map +1 -0
  65. package/dist/mcp-server/resources/definitions/compatibility-rules.resource.js +130 -0
  66. package/dist/mcp-server/resources/definitions/compatibility-rules.resource.js.map +1 -0
  67. package/dist/mcp-server/resources/definitions/filter-types.resource.d.ts +4 -0
  68. package/dist/mcp-server/resources/definitions/filter-types.resource.d.ts.map +1 -0
  69. package/dist/mcp-server/resources/definitions/filter-types.resource.js +198 -0
  70. package/dist/mcp-server/resources/definitions/filter-types.resource.js.map +1 -0
  71. package/dist/mcp-server/resources/definitions/index.d.ts +8 -0
  72. package/dist/mcp-server/resources/definitions/index.d.ts.map +1 -0
  73. package/dist/mcp-server/resources/definitions/index.js +49 -0
  74. package/dist/mcp-server/resources/definitions/index.js.map +1 -0
  75. package/dist/mcp-server/resources/definitions/metric-types.resource.d.ts +4 -0
  76. package/dist/mcp-server/resources/definitions/metric-types.resource.d.ts.map +1 -0
  77. package/dist/mcp-server/resources/definitions/metric-types.resource.js +221 -0
  78. package/dist/mcp-server/resources/definitions/metric-types.resource.js.map +1 -0
  79. package/dist/mcp-server/resources/definitions/query-examples.resource.d.ts +169 -0
  80. package/dist/mcp-server/resources/definitions/query-examples.resource.d.ts.map +1 -0
  81. package/dist/mcp-server/resources/definitions/query-examples.resource.js +261 -0
  82. package/dist/mcp-server/resources/definitions/query-examples.resource.js.map +1 -0
  83. package/dist/mcp-server/resources/definitions/report-types.resource.d.ts +3 -0
  84. package/dist/mcp-server/resources/definitions/report-types.resource.d.ts.map +1 -0
  85. package/dist/mcp-server/resources/definitions/report-types.resource.js +198 -0
  86. package/dist/mcp-server/resources/definitions/report-types.resource.js.map +1 -0
  87. package/dist/mcp-server/resources/index.d.ts +3 -0
  88. package/dist/mcp-server/resources/index.d.ts.map +1 -0
  89. package/dist/mcp-server/resources/index.js +2 -0
  90. package/dist/mcp-server/resources/index.js.map +1 -0
  91. package/dist/mcp-server/resources/types.d.ts +16 -0
  92. package/dist/mcp-server/resources/types.d.ts.map +1 -0
  93. package/dist/mcp-server/resources/types.js +2 -0
  94. package/dist/mcp-server/resources/types.js.map +1 -0
  95. package/dist/mcp-server/server.d.ts +5 -0
  96. package/dist/mcp-server/server.d.ts.map +1 -0
  97. package/dist/mcp-server/server.js +115 -0
  98. package/dist/mcp-server/server.js.map +1 -0
  99. package/dist/mcp-server/tools/definitions/get-campaign-delivery.tool.d.ts +89 -0
  100. package/dist/mcp-server/tools/definitions/get-campaign-delivery.tool.d.ts.map +1 -0
  101. package/dist/mcp-server/tools/definitions/get-campaign-delivery.tool.js +128 -0
  102. package/dist/mcp-server/tools/definitions/get-campaign-delivery.tool.js.map +1 -0
  103. package/dist/mcp-server/tools/definitions/get-historical-metrics.tool.d.ts +155 -0
  104. package/dist/mcp-server/tools/definitions/get-historical-metrics.tool.d.ts.map +1 -0
  105. package/dist/mcp-server/tools/definitions/get-historical-metrics.tool.js +160 -0
  106. package/dist/mcp-server/tools/definitions/get-historical-metrics.tool.js.map +1 -0
  107. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.d.ts +138 -0
  108. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.d.ts.map +1 -0
  109. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.js +171 -0
  110. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.js.map +1 -0
  111. package/dist/mcp-server/tools/definitions/get-performance-metrics.tool.d.ts +122 -0
  112. package/dist/mcp-server/tools/definitions/get-performance-metrics.tool.d.ts.map +1 -0
  113. package/dist/mcp-server/tools/definitions/get-performance-metrics.tool.js +143 -0
  114. package/dist/mcp-server/tools/definitions/get-performance-metrics.tool.js.map +1 -0
  115. package/dist/mcp-server/tools/definitions/index.d.ts +8 -0
  116. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
  117. package/dist/mcp-server/tools/definitions/index.js +23 -0
  118. package/dist/mcp-server/tools/definitions/index.js.map +1 -0
  119. package/dist/mcp-server/tools/definitions/run-custom-query-async.tool.d.ts +4 -0
  120. package/dist/mcp-server/tools/definitions/run-custom-query-async.tool.d.ts.map +1 -0
  121. package/dist/mcp-server/tools/definitions/run-custom-query-async.tool.js +46 -0
  122. package/dist/mcp-server/tools/definitions/run-custom-query-async.tool.js.map +1 -0
  123. package/dist/mcp-server/tools/definitions/run-custom-query.tool.d.ts +186 -0
  124. package/dist/mcp-server/tools/definitions/run-custom-query.tool.d.ts.map +1 -0
  125. package/dist/mcp-server/tools/definitions/run-custom-query.tool.js +202 -0
  126. package/dist/mcp-server/tools/definitions/run-custom-query.tool.js.map +1 -0
  127. package/dist/mcp-server/tools/index.d.ts +2 -0
  128. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  129. package/dist/mcp-server/tools/index.js +2 -0
  130. package/dist/mcp-server/tools/index.js.map +1 -0
  131. package/dist/mcp-server/tools/utils/query-validation.d.ts +44 -0
  132. package/dist/mcp-server/tools/utils/query-validation.d.ts.map +1 -0
  133. package/dist/mcp-server/tools/utils/query-validation.js +107 -0
  134. package/dist/mcp-server/tools/utils/query-validation.js.map +1 -0
  135. package/dist/mcp-server/tools/utils/resolve-session.d.ts +4 -0
  136. package/dist/mcp-server/tools/utils/resolve-session.d.ts.map +1 -0
  137. package/dist/mcp-server/tools/utils/resolve-session.js +6 -0
  138. package/dist/mcp-server/tools/utils/resolve-session.js.map +1 -0
  139. package/dist/mcp-server/transports/streamable-http-transport.d.ts +55 -0
  140. package/dist/mcp-server/transports/streamable-http-transport.d.ts.map +1 -0
  141. package/dist/mcp-server/transports/streamable-http-transport.js +55 -0
  142. package/dist/mcp-server/transports/streamable-http-transport.js.map +1 -0
  143. package/dist/services/bid-manager/BidManagerService.d.ts +68 -0
  144. package/dist/services/bid-manager/BidManagerService.d.ts.map +1 -0
  145. package/dist/services/bid-manager/BidManagerService.js +464 -0
  146. package/dist/services/bid-manager/BidManagerService.js.map +1 -0
  147. package/dist/services/bid-manager/auth-bridge.d.ts +6 -0
  148. package/dist/services/bid-manager/auth-bridge.d.ts.map +1 -0
  149. package/dist/services/bid-manager/auth-bridge.js +13 -0
  150. package/dist/services/bid-manager/auth-bridge.js.map +1 -0
  151. package/dist/services/bid-manager/client.d.ts +4 -0
  152. package/dist/services/bid-manager/client.d.ts.map +1 -0
  153. package/dist/services/bid-manager/client.js +2 -0
  154. package/dist/services/bid-manager/client.js.map +1 -0
  155. package/dist/services/bid-manager/index.d.ts +6 -0
  156. package/dist/services/bid-manager/index.d.ts.map +1 -0
  157. package/dist/services/bid-manager/index.js +4 -0
  158. package/dist/services/bid-manager/index.js.map +1 -0
  159. package/dist/services/bid-manager/report-parser.d.ts +26 -0
  160. package/dist/services/bid-manager/report-parser.d.ts.map +1 -0
  161. package/dist/services/bid-manager/report-parser.js +141 -0
  162. package/dist/services/bid-manager/report-parser.js.map +1 -0
  163. package/dist/services/bid-manager/types.d.ts +668 -0
  164. package/dist/services/bid-manager/types.d.ts.map +1 -0
  165. package/dist/services/bid-manager/types.js +256 -0
  166. package/dist/services/bid-manager/types.js.map +1 -0
  167. package/dist/services/session-services.d.ts +12 -0
  168. package/dist/services/session-services.d.ts.map +1 -0
  169. package/dist/services/session-services.js +18 -0
  170. package/dist/services/session-services.js.map +1 -0
  171. package/dist/types-global/bid-manager.d.ts +76 -0
  172. package/dist/types-global/bid-manager.d.ts.map +1 -0
  173. package/dist/types-global/bid-manager.js +2 -0
  174. package/dist/types-global/bid-manager.js.map +1 -0
  175. package/dist/types-global/index.d.ts +2 -0
  176. package/dist/types-global/index.d.ts.map +1 -0
  177. package/dist/types-global/index.js +2 -0
  178. package/dist/types-global/index.js.map +1 -0
  179. package/dist/types-global/mcp.d.ts +2 -0
  180. package/dist/types-global/mcp.d.ts.map +1 -0
  181. package/dist/types-global/mcp.js +2 -0
  182. package/dist/types-global/mcp.js.map +1 -0
  183. package/dist/utils/date.d.ts +2 -0
  184. package/dist/utils/date.d.ts.map +1 -0
  185. package/dist/utils/date.js +7 -0
  186. package/dist/utils/date.js.map +1 -0
  187. package/dist/utils/errors/bid-manager-errors.d.ts +57 -0
  188. package/dist/utils/errors/bid-manager-errors.d.ts.map +1 -0
  189. package/dist/utils/errors/bid-manager-errors.js +119 -0
  190. package/dist/utils/errors/bid-manager-errors.js.map +1 -0
  191. package/dist/utils/errors/index.d.ts +3 -0
  192. package/dist/utils/errors/index.d.ts.map +1 -0
  193. package/dist/utils/errors/index.js +3 -0
  194. package/dist/utils/errors/index.js.map +1 -0
  195. package/dist/utils/index.d.ts +4 -0
  196. package/dist/utils/index.d.ts.map +1 -0
  197. package/dist/utils/index.js +4 -0
  198. package/dist/utils/index.js.map +1 -0
  199. package/dist/utils/math.d.ts +9 -0
  200. package/dist/utils/math.d.ts.map +1 -0
  201. package/dist/utils/math.js +38 -0
  202. package/dist/utils/math.js.map +1 -0
  203. package/dist/utils/metrics.d.ts +21 -0
  204. package/dist/utils/metrics.d.ts.map +1 -0
  205. package/dist/utils/metrics.js +92 -0
  206. package/dist/utils/metrics.js.map +1 -0
  207. package/dist/utils/platform.d.ts +3 -0
  208. package/dist/utils/platform.d.ts.map +1 -0
  209. package/dist/utils/platform.js +5 -0
  210. package/dist/utils/platform.js.map +1 -0
  211. package/dist/utils/security/index.d.ts +2 -0
  212. package/dist/utils/security/index.d.ts.map +1 -0
  213. package/dist/utils/security/index.js +2 -0
  214. package/dist/utils/security/index.js.map +1 -0
  215. package/dist/utils/security/rate-limiter.d.ts +3 -0
  216. package/dist/utils/security/rate-limiter.d.ts.map +1 -0
  217. package/dist/utils/security/rate-limiter.js +5 -0
  218. package/dist/utils/security/rate-limiter.js.map +1 -0
  219. package/dist/utils/telemetry/index.d.ts +2 -0
  220. package/dist/utils/telemetry/index.d.ts.map +1 -0
  221. package/dist/utils/telemetry/index.js +2 -0
  222. package/dist/utils/telemetry/index.js.map +1 -0
  223. package/dist/utils/telemetry/tracing.d.ts +3 -0
  224. package/dist/utils/telemetry/tracing.d.ts.map +1 -0
  225. package/dist/utils/telemetry/tracing.js +4 -0
  226. package/dist/utils/telemetry/tracing.js.map +1 -0
  227. package/package.json +60 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BidManagerService.js","sourceRoot":"","sources":["../../../src/services/bid-manager/BidManagerService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { google } from "googleapis";
2
+ import type { GoogleAuthAdapter } from "@cesteral/shared";
3
+ type OAuth2Client = InstanceType<typeof google.auth.OAuth2>;
4
+ export declare function createGoogleAuthFromAdapter(adapter: GoogleAuthAdapter): OAuth2Client;
5
+ export {};
6
+ //# sourceMappingURL=auth-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-bridge.d.ts","sourceRoot":"","sources":["../../../src/services/bid-manager/auth-bridge.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,KAAK,YAAY,GAAG,YAAY,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAO5D,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAkBpF"}
@@ -0,0 +1,13 @@
1
+ import { google } from "googleapis";
2
+ export function createGoogleAuthFromAdapter(adapter) {
3
+ const oauth2 = new google.auth.OAuth2();
4
+ oauth2.refreshHandler = async () => {
5
+ const token = await adapter.getAccessToken();
6
+ return {
7
+ access_token: token,
8
+ expiry_date: Date.now() + 55 * 60 * 1000,
9
+ };
10
+ };
11
+ return oauth2;
12
+ }
13
+ //# sourceMappingURL=auth-bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-bridge.js","sourceRoot":"","sources":["../../../src/services/bid-manager/auth-bridge.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAUpC,MAAM,UAAU,2BAA2B,CAAC,OAA0B;IACpE,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IAOxC,MAAM,CAAC,cAAc,GAAG,KAAK,IAAI,EAAE;QACjC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7C,OAAO;YACL,YAAY,EAAE,KAAK;YAEnB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;SACzC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { google } from "googleapis";
2
+ export type GoogleAuthClient = InstanceType<typeof google.auth.GoogleAuth>;
3
+ export type BidManagerClient = ReturnType<typeof google.doubleclickbidmanager>;
4
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/services/bid-manager/client.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAKpC,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAK3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,qBAAqB,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/services/bid-manager/client.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export { BidManagerService } from "./BidManagerService.js";
2
+ export { type BidManagerClient, type GoogleAuthClient } from "./client.js";
3
+ export { ReportTypeSchema, DataRangeSchema, ReportFormatSchema, FilterTypeSchema, MetricTypeSchema, ReportStatusSchema, DateObjectSchema, QueryFilterSchema, DataRangeConfigSchema, QueryMetadataSchema, QueryParamsSchema, QuerySpecSchema, ReportKeySchema, ReportStatusDetailsSchema, ReportMetadataSchema, DeliveryMetricsSchema, PerformanceMetricsSchema, HistoricalDataPointSchema, PacingStatusSchema, GetDeliveryMetricsInputSchema, GetHistoricalMetricsInputSchema, GetPacingStatusInputSchema, CSV_COLUMN_MAPPINGS, METRIC_TO_CSV_COLUMN, } from "./types.js";
4
+ export type { ReportType, DataRange, ReportFormat, FilterType, MetricType, ReportStatus, DateObject, QueryFilter, DataRangeConfig, QueryMetadata, QueryParams, QuerySpec, ReportKey, ReportStatusDetails, ReportMetadata, DeliveryMetrics, PerformanceMetrics, HistoricalDataPoint, PacingStatus, GetDeliveryMetricsInput, GetHistoricalMetricsInput, GetPacingStatusInput, } from "./types.js";
5
+ export { csvToJson, parseNumericValue, parseIntValue, parseDateValue, mapToBidManagerRow, parseCSVContent, aggregateToDeliveryMetrics, aggregateToHistoricalData, calculatePerformanceMetrics, parseCSVToDeliveryMetrics, parseCSVToHistoricalData, type ParsedRow, } from "./report-parser.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/bid-manager/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG3E,OAAO,EAEL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAElB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EAEpB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAElB,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,EAE1B,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,UAAU,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACb,WAAW,EACX,SAAS,EACT,SAAS,EACT,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAEL,SAAS,EAET,iBAAiB,EACjB,aAAa,EACb,cAAc,EAEd,kBAAkB,EAClB,eAAe,EAEf,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAE3B,yBAAyB,EACzB,wBAAwB,EACxB,KAAK,SAAS,GACf,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { BidManagerService } from "./BidManagerService.js";
2
+ export { ReportTypeSchema, DataRangeSchema, ReportFormatSchema, FilterTypeSchema, MetricTypeSchema, ReportStatusSchema, DateObjectSchema, QueryFilterSchema, DataRangeConfigSchema, QueryMetadataSchema, QueryParamsSchema, QuerySpecSchema, ReportKeySchema, ReportStatusDetailsSchema, ReportMetadataSchema, DeliveryMetricsSchema, PerformanceMetricsSchema, HistoricalDataPointSchema, PacingStatusSchema, GetDeliveryMetricsInputSchema, GetHistoricalMetricsInputSchema, GetPacingStatusInputSchema, CSV_COLUMN_MAPPINGS, METRIC_TO_CSV_COLUMN, } from "./types.js";
3
+ export { csvToJson, parseNumericValue, parseIntValue, parseDateValue, mapToBidManagerRow, parseCSVContent, aggregateToDeliveryMetrics, aggregateToHistoricalData, calculatePerformanceMetrics, parseCSVToDeliveryMetrics, parseCSVToHistoricalData, } from "./report-parser.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/bid-manager/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAM3D,OAAO,EAEL,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAElB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EAEpB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAElB,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,EAE1B,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AA6BpB,OAAO,EAEL,SAAS,EAET,iBAAiB,EACjB,aAAa,EACb,cAAc,EAEd,kBAAkB,EAClB,eAAe,EAEf,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAE3B,yBAAyB,EACzB,wBAAwB,GAEzB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { DeliveryMetrics, HistoricalDataPoint, PerformanceMetrics } from "./types.js";
2
+ export interface ParsedRow {
3
+ date?: string;
4
+ campaign?: string;
5
+ advertiserId?: string;
6
+ insertionOrder?: string;
7
+ lineItem?: string;
8
+ impressions: number;
9
+ clicks: number;
10
+ spend: number;
11
+ conversions: number;
12
+ revenue: number;
13
+ [key: string]: string | number | undefined;
14
+ }
15
+ export declare function csvToJson(csv: string, _delimiter?: string, nullableFields?: string[]): Record<string, string>[];
16
+ export declare function parseNumericValue(value: string | undefined): number;
17
+ export declare function parseIntValue(value: string | undefined): number;
18
+ export declare function parseDateValue(value: string | undefined): string | undefined;
19
+ export declare function mapToBidManagerRow(record: Record<string, string>): ParsedRow;
20
+ export declare function parseCSVContent(csv: string, skipZeroRows?: boolean): ParsedRow[];
21
+ export declare function aggregateToDeliveryMetrics(rows: ParsedRow[]): DeliveryMetrics;
22
+ export declare function aggregateToHistoricalData(rows: ParsedRow[]): HistoricalDataPoint[];
23
+ export declare function calculatePerformanceMetrics(delivery: DeliveryMetrics): PerformanceMetrics;
24
+ export declare function parseCSVToDeliveryMetrics(csv: string): DeliveryMetrics;
25
+ export declare function parseCSVToHistoricalData(csv: string): HistoricalDataPoint[];
26
+ //# sourceMappingURL=report-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-parser.d.ts","sourceRoot":"","sources":["../../../src/services/bid-manager/report-parser.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAW3F,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC5C;AAiBD,wBAAgB,SAAS,CACvB,GAAG,EAAE,MAAM,EACX,UAAU,GAAE,MAAY,EACxB,cAAc,GAAE,MAAM,EAAO,GAC5B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAoB1B;AASD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAUnE;AAKD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAM/D;AAKD,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAoB5E;AAsCD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAa5E;AAKD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,GAAE,OAAc,GAAG,SAAS,EAAE,CAStF;AASD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,eAAe,CAW7E;AAKD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,mBAAmB,EAAE,CAmBlF;AAKD,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,eAAe,GAAG,kBAAkB,CAEzF;AASD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAGtE;AAKD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAG3E"}
@@ -0,0 +1,141 @@
1
+ import { calculateAllMetrics } from "../../utils/metrics.js";
2
+ import { parseCSV as sharedParseCSV } from "@cesteral/shared";
3
+ export function csvToJson(csv, _delimiter = ",", nullableFields = []) {
4
+ const { headers, rows } = sharedParseCSV(csv);
5
+ if (headers.length === 0)
6
+ return [];
7
+ const nullable = new Set(nullableFields);
8
+ return rows
9
+ .map((record) => {
10
+ const cleaned = {};
11
+ let allFieldsHaveValues = true;
12
+ for (const header of headers) {
13
+ const value = (record[header] ?? "").trim();
14
+ if (value === "" && !nullable.has(header)) {
15
+ allFieldsHaveValues = false;
16
+ }
17
+ else {
18
+ cleaned[header] = value;
19
+ }
20
+ }
21
+ return allFieldsHaveValues ? cleaned : null;
22
+ })
23
+ .filter((row) => row !== null);
24
+ }
25
+ export function parseNumericValue(value) {
26
+ if (!value || value === "" || value === "-")
27
+ return 0;
28
+ const cleaned = value.replace(/[$,\s'"]/g, "");
29
+ if (cleaned.endsWith("%")) {
30
+ return parseFloat(cleaned.slice(0, -1)) / 100;
31
+ }
32
+ const num = parseFloat(cleaned);
33
+ return isNaN(num) ? 0 : num;
34
+ }
35
+ export function parseIntValue(value) {
36
+ if (!value || value === "" || value === "-")
37
+ return 0;
38
+ const cleaned = value.replace(/[,\s'"]/g, "");
39
+ const num = parseInt(cleaned, 10);
40
+ return isNaN(num) ? 0 : num;
41
+ }
42
+ export function parseDateValue(value) {
43
+ if (!value || value === "" || value === "-")
44
+ return undefined;
45
+ const cleaned = value.trim().replace(/^"|"$/g, "");
46
+ if (/^\d{4}-\d{2}-\d{2}$/.test(cleaned))
47
+ return cleaned;
48
+ if (/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(cleaned)) {
49
+ const [month, day, year] = cleaned.split("/");
50
+ return `${year}-${month.padStart(2, "0")}-${day.padStart(2, "0")}`;
51
+ }
52
+ if (/^\d{8}$/.test(cleaned)) {
53
+ return `${cleaned.slice(0, 4)}-${cleaned.slice(4, 6)}-${cleaned.slice(6, 8)}`;
54
+ }
55
+ return cleaned;
56
+ }
57
+ const COLUMN_MAPPINGS = {
58
+ date: ["Date", "date", "Day"],
59
+ campaign: ["Campaign", "Campaign ID", "campaign"],
60
+ advertiserId: ["Advertiser", "Advertiser ID", "advertiserId"],
61
+ insertionOrder: ["Insertion Order", "IO", "insertionOrder"],
62
+ lineItem: ["Line Item", "Line Item ID", "lineItem"],
63
+ impressions: ["Impressions", "impressions"],
64
+ clicks: ["Clicks", "clicks"],
65
+ spend: [
66
+ "Media Cost (Advertiser Currency)",
67
+ "Total Media Cost (Advertiser Currency)",
68
+ "Spend",
69
+ "Media Cost",
70
+ ],
71
+ conversions: ["Total Conversions", "Conversions", "Post-Click Conversions"],
72
+ revenue: ["Revenue (Advertiser Currency)", "Revenue", "Total Revenue"],
73
+ };
74
+ function getField(record, variations) {
75
+ for (const name of variations) {
76
+ if (record[name] !== undefined)
77
+ return record[name];
78
+ }
79
+ return undefined;
80
+ }
81
+ export function mapToBidManagerRow(record) {
82
+ return {
83
+ date: parseDateValue(getField(record, COLUMN_MAPPINGS.date)),
84
+ campaign: getField(record, COLUMN_MAPPINGS.campaign),
85
+ advertiserId: getField(record, COLUMN_MAPPINGS.advertiserId),
86
+ insertionOrder: getField(record, COLUMN_MAPPINGS.insertionOrder),
87
+ lineItem: getField(record, COLUMN_MAPPINGS.lineItem),
88
+ impressions: parseIntValue(getField(record, COLUMN_MAPPINGS.impressions)),
89
+ clicks: parseIntValue(getField(record, COLUMN_MAPPINGS.clicks)),
90
+ spend: parseNumericValue(getField(record, COLUMN_MAPPINGS.spend)),
91
+ conversions: parseIntValue(getField(record, COLUMN_MAPPINGS.conversions)),
92
+ revenue: parseNumericValue(getField(record, COLUMN_MAPPINGS.revenue)),
93
+ };
94
+ }
95
+ export function parseCSVContent(csv, skipZeroRows = true) {
96
+ const records = csvToJson(csv);
97
+ const rows = records.map(mapToBidManagerRow);
98
+ if (skipZeroRows) {
99
+ return rows.filter((row) => row.impressions > 0 || row.clicks > 0 || row.spend > 0);
100
+ }
101
+ return rows;
102
+ }
103
+ export function aggregateToDeliveryMetrics(rows) {
104
+ return rows.reduce((acc, row) => ({
105
+ impressions: acc.impressions + row.impressions,
106
+ clicks: acc.clicks + row.clicks,
107
+ spend: acc.spend + row.spend,
108
+ conversions: acc.conversions + row.conversions,
109
+ revenue: acc.revenue + row.revenue,
110
+ }), { impressions: 0, clicks: 0, spend: 0, conversions: 0, revenue: 0 });
111
+ }
112
+ export function aggregateToHistoricalData(rows) {
113
+ const byDate = new Map();
114
+ for (const row of rows) {
115
+ if (!row.date)
116
+ continue;
117
+ const existing = byDate.get(row.date) || [];
118
+ existing.push(row);
119
+ byDate.set(row.date, existing);
120
+ }
121
+ const result = [];
122
+ for (const [date, dateRows] of byDate) {
123
+ result.push({
124
+ date,
125
+ metrics: aggregateToDeliveryMetrics(dateRows),
126
+ });
127
+ }
128
+ return result.sort((a, b) => a.date.localeCompare(b.date));
129
+ }
130
+ export function calculatePerformanceMetrics(delivery) {
131
+ return calculateAllMetrics(delivery);
132
+ }
133
+ export function parseCSVToDeliveryMetrics(csv) {
134
+ const rows = parseCSVContent(csv);
135
+ return aggregateToDeliveryMetrics(rows);
136
+ }
137
+ export function parseCSVToHistoricalData(csv) {
138
+ const rows = parseCSVContent(csv);
139
+ return aggregateToHistoricalData(rows);
140
+ }
141
+ //# sourceMappingURL=report-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-parser.js","sourceRoot":"","sources":["../../../src/services/bid-manager/report-parser.ts"],"names":[],"mappings":"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"}