@transcend-io/cli 8.36.1 → 8.37.1

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 (203) hide show
  1. package/README.md +68 -19
  2. package/dist/{api-keys-DB0BZSh5.cjs → api-keys-Bb2BbZQe.cjs} +2 -2
  3. package/dist/{api-keys-DB0BZSh5.cjs.map → api-keys-Bb2BbZQe.cjs.map} +1 -1
  4. package/dist/app-C9jD-f87.cjs +131 -0
  5. package/dist/app-C9jD-f87.cjs.map +1 -0
  6. package/dist/bin/bash-complete.cjs +1 -1
  7. package/dist/bin/bash-complete.cjs.map +1 -1
  8. package/dist/bin/cli.cjs +1 -1
  9. package/dist/bin/cli.cjs.map +1 -1
  10. package/dist/bin/deprecated-command.cjs +1 -1
  11. package/dist/bin/deprecated-command.cjs.map +1 -1
  12. package/dist/buildAIIntegrationType-BwuCYR-o.cjs +2 -0
  13. package/dist/{buildAIIntegrationType-n_Qlv8wG.cjs.map → buildAIIntegrationType-BwuCYR-o.cjs.map} +1 -1
  14. package/dist/chunk-Bmb41Sf3.cjs +1 -0
  15. package/dist/{code-scanning-Yc7rgoTY.cjs → code-scanning-4d0zlFxk.cjs} +2 -2
  16. package/dist/{code-scanning-Yc7rgoTY.cjs.map → code-scanning-4d0zlFxk.cjs.map} +1 -1
  17. package/dist/codecs-Bvmb8o9R.cjs +2 -0
  18. package/dist/{codecs-JSDJgtyL.cjs.map → codecs-Bvmb8o9R.cjs.map} +1 -1
  19. package/dist/command-XJ7XPQ04.cjs +9 -0
  20. package/dist/{command-41dUPvEa.cjs.map → command-XJ7XPQ04.cjs.map} +1 -1
  21. package/dist/{consent-manager-BNMaKHId.cjs → consent-manager-CCyvzvY5.cjs} +2 -2
  22. package/dist/{consent-manager-BNMaKHId.cjs.map → consent-manager-CCyvzvY5.cjs.map} +1 -1
  23. package/dist/constants-wkuhlP8d.cjs +2 -0
  24. package/dist/{constants-JoCDv9ym.cjs.map → constants-wkuhlP8d.cjs.map} +1 -1
  25. package/dist/context-_8xfl0dt.cjs +2 -0
  26. package/dist/{context-Bw1xk9Q_.cjs.map → context-_8xfl0dt.cjs.map} +1 -1
  27. package/dist/{cron-ClvgH2uD.cjs → cron-DfEGA7Rf.cjs} +2 -2
  28. package/dist/{cron-ClvgH2uD.cjs.map → cron-DfEGA7Rf.cjs.map} +1 -1
  29. package/dist/{data-inventory-BzEYoxaa.cjs → data-inventory-C1eqZk1M.cjs} +2 -2
  30. package/dist/{data-inventory-BzEYoxaa.cjs.map → data-inventory-C1eqZk1M.cjs.map} +1 -1
  31. package/dist/{dataFlowsToDataSilos-daBgPi7V.cjs → dataFlowsToDataSilos-DXlFFHMV.cjs} +2 -2
  32. package/dist/{dataFlowsToDataSilos-daBgPi7V.cjs.map → dataFlowsToDataSilos-DXlFFHMV.cjs.map} +1 -1
  33. package/dist/{done-input-validation-Cgk5kNBs.cjs → done-input-validation-DGckEJ5a.cjs} +1 -1
  34. package/dist/{done-input-validation-Cgk5kNBs.cjs.map → done-input-validation-DGckEJ5a.cjs.map} +1 -1
  35. package/dist/enums-BZulhPFa.cjs +2 -0
  36. package/dist/{enums-CBXlBJii.cjs.map → enums-BZulhPFa.cjs.map} +1 -1
  37. package/dist/impl-6TmoWv0o.cjs +2 -0
  38. package/dist/{impl-ClDXxODZ.cjs.map → impl-6TmoWv0o.cjs.map} +1 -1
  39. package/dist/impl-73q3K0b_.cjs +2 -0
  40. package/dist/{impl-BN61r-PG.cjs.map → impl-73q3K0b_.cjs.map} +1 -1
  41. package/dist/{impl-DjVmOb9T.cjs → impl-7LAuV25D.cjs} +2 -2
  42. package/dist/{impl-DjVmOb9T.cjs.map → impl-7LAuV25D.cjs.map} +1 -1
  43. package/dist/impl-B04CctrY.cjs +12 -0
  44. package/dist/{impl-BMxxKrNz.cjs.map → impl-B04CctrY.cjs.map} +1 -1
  45. package/dist/impl-BGoAnVJu.cjs +4 -0
  46. package/dist/{impl-FlZPR0yd.cjs.map → impl-BGoAnVJu.cjs.map} +1 -1
  47. package/dist/impl-BOEjB3fo.cjs +2 -0
  48. package/dist/impl-BOEjB3fo.cjs.map +1 -0
  49. package/dist/impl-BOEoFzcB.cjs +4 -0
  50. package/dist/{impl-8bci0gd2.cjs.map → impl-BOEoFzcB.cjs.map} +1 -1
  51. package/dist/impl-B_2CdctV.cjs +2 -0
  52. package/dist/{impl-CCOEjRnr.cjs.map → impl-B_2CdctV.cjs.map} +1 -1
  53. package/dist/impl-BfC5CRRX.cjs +2 -0
  54. package/dist/{impl-hGu8uCC4.cjs.map → impl-BfC5CRRX.cjs.map} +1 -1
  55. package/dist/impl-C-aKX3zu.cjs +2 -0
  56. package/dist/{impl-DU-WTXTY.cjs.map → impl-C-aKX3zu.cjs.map} +1 -1
  57. package/dist/impl-C4q9xHFr.cjs +2 -0
  58. package/dist/{impl-BIqdEXRo.cjs.map → impl-C4q9xHFr.cjs.map} +1 -1
  59. package/dist/impl-C6JjApDI.cjs +2 -0
  60. package/dist/{impl-Bv4gPikD.cjs.map → impl-C6JjApDI.cjs.map} +1 -1
  61. package/dist/impl-CKYwKeLz.cjs +2 -0
  62. package/dist/{impl-4pmSDQvA.cjs.map → impl-CKYwKeLz.cjs.map} +1 -1
  63. package/dist/impl-CLcnbVfj.cjs +2 -0
  64. package/dist/impl-CLcnbVfj.cjs.map +1 -0
  65. package/dist/impl-CR-wyJSg.cjs +2 -0
  66. package/dist/impl-CR-wyJSg.cjs.map +1 -0
  67. package/dist/impl-CV3axMeT.cjs +2 -0
  68. package/dist/{impl-cfDtPbS9.cjs.map → impl-CV3axMeT.cjs.map} +1 -1
  69. package/dist/impl-CgKn47V9.cjs +2 -0
  70. package/dist/{impl-DpdGWdrr.cjs.map → impl-CgKn47V9.cjs.map} +1 -1
  71. package/dist/impl-CmEsmnYZ.cjs +2 -0
  72. package/dist/{impl-Cp12F9tr.cjs.map → impl-CmEsmnYZ.cjs.map} +1 -1
  73. package/dist/impl-CnRqR4kw.cjs +2 -0
  74. package/dist/{impl-C4D1tHjp.cjs.map → impl-CnRqR4kw.cjs.map} +1 -1
  75. package/dist/impl-Cp7-Tctr.cjs +2 -0
  76. package/dist/{impl-_dGu54cO.cjs.map → impl-Cp7-Tctr.cjs.map} +1 -1
  77. package/dist/impl-CqadSQOh.cjs +2 -0
  78. package/dist/impl-CqadSQOh.cjs.map +1 -0
  79. package/dist/impl-Cru4riTc.cjs +5 -0
  80. package/dist/impl-Cru4riTc.cjs.map +1 -0
  81. package/dist/impl-CsKfLxov.cjs +2 -0
  82. package/dist/impl-CsKfLxov.cjs.map +1 -0
  83. package/dist/impl-CyzGdwB1.cjs +2 -0
  84. package/dist/impl-CyzGdwB1.cjs.map +1 -0
  85. package/dist/impl-DC_YquN8.cjs +2 -0
  86. package/dist/{impl-BwAnSxkP.cjs.map → impl-DC_YquN8.cjs.map} +1 -1
  87. package/dist/impl-DHuguAlW.cjs +2 -0
  88. package/dist/{impl-BRuqPhJU.cjs.map → impl-DHuguAlW.cjs.map} +1 -1
  89. package/dist/impl-DNRsFfbU.cjs +2 -0
  90. package/dist/{impl-8zottXEQ.cjs.map → impl-DNRsFfbU.cjs.map} +1 -1
  91. package/dist/impl-DQ8rr7Fv.cjs +2 -0
  92. package/dist/{impl-ay7i0K_5.cjs.map → impl-DQ8rr7Fv.cjs.map} +1 -1
  93. package/dist/impl-DetfC7CT.cjs +2 -0
  94. package/dist/impl-DetfC7CT.cjs.map +1 -0
  95. package/dist/impl-DhbV3bBZ.cjs +2 -0
  96. package/dist/impl-DhbV3bBZ.cjs.map +1 -0
  97. package/dist/impl-DjP2MJNK.cjs +2 -0
  98. package/dist/{impl-CSZwdpH-.cjs.map → impl-DjP2MJNK.cjs.map} +1 -1
  99. package/dist/impl-DmXYpp-M.cjs +2 -0
  100. package/dist/{impl-J5fV8gbh.cjs.map → impl-DmXYpp-M.cjs.map} +1 -1
  101. package/dist/impl-Dp3-sA6b.cjs +2 -0
  102. package/dist/{impl-yHutqfbd.cjs.map → impl-Dp3-sA6b.cjs.map} +1 -1
  103. package/dist/{impl-KgEJvOhE.cjs → impl-DqfyWyoV.cjs} +2 -2
  104. package/dist/{impl-KgEJvOhE.cjs.map → impl-DqfyWyoV.cjs.map} +1 -1
  105. package/dist/impl-DrJj-l3s.cjs +2 -0
  106. package/dist/{impl-BXMfTm4K.cjs.map → impl-DrJj-l3s.cjs.map} +1 -1
  107. package/dist/impl-Dvoj_snk.cjs +2 -0
  108. package/dist/{impl-BouHRicT.cjs.map → impl-Dvoj_snk.cjs.map} +1 -1
  109. package/dist/impl-DwWoAbT_.cjs +2 -0
  110. package/dist/{impl-DhdY6lbj.cjs.map → impl-DwWoAbT_.cjs.map} +1 -1
  111. package/dist/impl-DxhyqjcY.cjs +2 -0
  112. package/dist/{impl-CFmFCVt8.cjs.map → impl-DxhyqjcY.cjs.map} +1 -1
  113. package/dist/impl-Dzq0t6mX.cjs +2 -0
  114. package/dist/{impl-BH0HWnIY.cjs.map → impl-Dzq0t6mX.cjs.map} +1 -1
  115. package/dist/impl-LgUGDTQK.cjs +2 -0
  116. package/dist/{impl-BS8t24Z7.cjs.map → impl-LgUGDTQK.cjs.map} +1 -1
  117. package/dist/impl-XyWPUpvw.cjs +2 -0
  118. package/dist/{impl-BWiNjS6v.cjs.map → impl-XyWPUpvw.cjs.map} +1 -1
  119. package/dist/impl-_QrpPIPw.cjs +2 -0
  120. package/dist/{impl-D3sI4I1g.cjs.map → impl-_QrpPIPw.cjs.map} +1 -1
  121. package/dist/impl-kxwq3OMk.cjs +2 -0
  122. package/dist/{impl-CoxOrlXu.cjs.map → impl-kxwq3OMk.cjs.map} +1 -1
  123. package/dist/impl-u8o3S8w2.cjs +2 -0
  124. package/dist/{impl-SkiG9sWb.cjs.map → impl-u8o3S8w2.cjs.map} +1 -1
  125. package/dist/index.cjs +4 -4
  126. package/dist/index.cjs.map +1 -1
  127. package/dist/index.d.cts +65 -2
  128. package/dist/{logger-BaHHbWVd.cjs → logger-DQwEYtSS.cjs} +2 -2
  129. package/dist/{logger-BaHHbWVd.cjs.map → logger-DQwEYtSS.cjs.map} +1 -1
  130. package/dist/{manual-enrichment-D-0rM9KN.cjs → manual-enrichment-CzTpv-mM.cjs} +2 -2
  131. package/dist/{manual-enrichment-D-0rM9KN.cjs.map → manual-enrichment-CzTpv-mM.cjs.map} +1 -1
  132. package/dist/{mergeTranscendInputs-PPpGbYgG.cjs → mergeTranscendInputs-BIBCYbug.cjs} +2 -2
  133. package/dist/{mergeTranscendInputs-PPpGbYgG.cjs.map → mergeTranscendInputs-BIBCYbug.cjs.map} +1 -1
  134. package/dist/{pooling-DbIx6-i7.cjs → pooling-DA_LwUEp.cjs} +2 -2
  135. package/dist/{pooling-DbIx6-i7.cjs.map → pooling-DA_LwUEp.cjs.map} +1 -1
  136. package/dist/{preference-management-Dapt3Li3.cjs → preference-management-aOhuZCuE.cjs} +2 -2
  137. package/dist/{preference-management-Dapt3Li3.cjs.map → preference-management-aOhuZCuE.cjs.map} +1 -1
  138. package/dist/{readTranscendYaml-CL9nujUr.cjs → readTranscendYaml-Cycz6RxW.cjs} +2 -2
  139. package/dist/{readTranscendYaml-CL9nujUr.cjs.map → readTranscendYaml-Cycz6RxW.cjs.map} +1 -1
  140. package/dist/syncConfigurationToTranscend-DuTZKIG8.cjs +3000 -0
  141. package/dist/syncConfigurationToTranscend-DuTZKIG8.cjs.map +1 -0
  142. package/dist/{uploadConsents-CN1JucL3.cjs → uploadConsents-C9Pv8Awr.cjs} +2 -2
  143. package/dist/{uploadConsents-CN1JucL3.cjs.map → uploadConsents-C9Pv8Awr.cjs.map} +1 -1
  144. package/package.json +1 -1
  145. package/dist/app-BOlZhpYh.cjs +0 -118
  146. package/dist/app-BOlZhpYh.cjs.map +0 -1
  147. package/dist/buildAIIntegrationType-n_Qlv8wG.cjs +0 -2
  148. package/dist/codecs-JSDJgtyL.cjs +0 -2
  149. package/dist/command-41dUPvEa.cjs +0 -9
  150. package/dist/constants-JoCDv9ym.cjs +0 -2
  151. package/dist/context-Bw1xk9Q_.cjs +0 -2
  152. package/dist/enums-CBXlBJii.cjs +0 -2
  153. package/dist/impl-4pmSDQvA.cjs +0 -2
  154. package/dist/impl-8bci0gd2.cjs +0 -4
  155. package/dist/impl-8zottXEQ.cjs +0 -2
  156. package/dist/impl-BFOghVmx.cjs +0 -2
  157. package/dist/impl-BFOghVmx.cjs.map +0 -1
  158. package/dist/impl-BH0HWnIY.cjs +0 -2
  159. package/dist/impl-BIqdEXRo.cjs +0 -2
  160. package/dist/impl-BMxxKrNz.cjs +0 -12
  161. package/dist/impl-BN61r-PG.cjs +0 -2
  162. package/dist/impl-BRuqPhJU.cjs +0 -2
  163. package/dist/impl-BS8t24Z7.cjs +0 -2
  164. package/dist/impl-BWiNjS6v.cjs +0 -2
  165. package/dist/impl-BXMfTm4K.cjs +0 -2
  166. package/dist/impl-BYK9pQs0.cjs +0 -2
  167. package/dist/impl-BYK9pQs0.cjs.map +0 -1
  168. package/dist/impl-BjOFvm4E.cjs +0 -2
  169. package/dist/impl-BjOFvm4E.cjs.map +0 -1
  170. package/dist/impl-BouHRicT.cjs +0 -2
  171. package/dist/impl-Bv4gPikD.cjs +0 -2
  172. package/dist/impl-BwAnSxkP.cjs +0 -2
  173. package/dist/impl-C-_9uRms.cjs +0 -2
  174. package/dist/impl-C-_9uRms.cjs.map +0 -1
  175. package/dist/impl-C4D1tHjp.cjs +0 -2
  176. package/dist/impl-CA_CO88W.cjs +0 -2
  177. package/dist/impl-CA_CO88W.cjs.map +0 -1
  178. package/dist/impl-CCOEjRnr.cjs +0 -2
  179. package/dist/impl-CFmFCVt8.cjs +0 -2
  180. package/dist/impl-CSZwdpH-.cjs +0 -2
  181. package/dist/impl-ChNLuyNq.cjs +0 -2
  182. package/dist/impl-ChNLuyNq.cjs.map +0 -1
  183. package/dist/impl-ClDXxODZ.cjs +0 -2
  184. package/dist/impl-CoxOrlXu.cjs +0 -2
  185. package/dist/impl-Cp12F9tr.cjs +0 -2
  186. package/dist/impl-D3sI4I1g.cjs +0 -2
  187. package/dist/impl-D7WBmmHb.cjs +0 -2
  188. package/dist/impl-D7WBmmHb.cjs.map +0 -1
  189. package/dist/impl-DU-WTXTY.cjs +0 -2
  190. package/dist/impl-DhdY6lbj.cjs +0 -2
  191. package/dist/impl-DpdGWdrr.cjs +0 -2
  192. package/dist/impl-FlZPR0yd.cjs +0 -4
  193. package/dist/impl-J5fV8gbh.cjs +0 -2
  194. package/dist/impl-NLEQuKnT.cjs +0 -2
  195. package/dist/impl-NLEQuKnT.cjs.map +0 -1
  196. package/dist/impl-SkiG9sWb.cjs +0 -2
  197. package/dist/impl-_dGu54cO.cjs +0 -2
  198. package/dist/impl-ay7i0K_5.cjs +0 -2
  199. package/dist/impl-cfDtPbS9.cjs +0 -2
  200. package/dist/impl-hGu8uCC4.cjs +0 -2
  201. package/dist/impl-yHutqfbd.cjs +0 -2
  202. package/dist/syncConfigurationToTranscend-D4PLA70C.cjs +0 -2994
  203. package/dist/syncConfigurationToTranscend-D4PLA70C.cjs.map +0 -1
@@ -1,12 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./done-input-validation-Cgk5kNBs.cjs`),i=require(`./preference-management-Dapt3Li3.cjs`);let a=require(`node:fs`),o=require(`node:path`),s=require(`colors`);s=e.s(s);let c=require(`cli-progress`);c=e.s(c);async function l({auth:e,partition:l,sombraAuth:u,file:d=``,directory:f,transcendUrl:p,timestamp:m,maxConcurrency:h,maxItemsInChunk:g,receiptDirectory:_,fileConcurrency:v}){f&&d&&(n.t.error(s.default.red(`Cannot provide both a directory and a file. Please provide only one.`)),this.process.exit(1)),!d&&!f&&(n.t.error(s.default.red(`A file or directory must be provided. Please provide one using --file=./preferences.csv or --directory=./preferences`)),this.process.exit(1)),r.t(this.process.exit);let y=[];if(f)try{let e=(0,a.readdirSync)(f).filter(e=>e.endsWith(`.csv`));e.length===0&&(n.t.error(s.default.red(`No CSV files found in directory: ${f}`)),this.process.exit(1)),y.push(...e.map(e=>(0,o.join)(f,e)))}catch(e){n.t.error(s.default.red(`Failed to read directory: ${f}`)),n.t.error(s.default.red(e.message)),this.process.exit(1)}else try{d.endsWith(`.csv`)||(n.t.error(s.default.red(`File must be a CSV file`)),this.process.exit(1)),y.push(d)}catch(e){n.t.error(s.default.red(`Failed to access file: ${d}`)),n.t.error(s.default.red(e.message)),this.process.exit(1)}n.t.debug(s.default.green(`Processing ${y.length} consent preferences files for partition: ${l}`)),n.t.debug(`\nFiles to process: ${y.join(`, `)}\n`);let b=await t.ei(p,e,u),x=new c.default.SingleBar({format:`Deletion Progress |${s.default.cyan(`[{bar}]`)}| Duration: ${s.default.red(`{duration_formatted}`)} | {value}/{total} Files Processed `},c.default.Presets.shades_classic);x.start(y.length,0);let S=await t.Ts(y,async e=>{let t=await i.t(b,{partition:l,filePath:e,timestamp:m,maxItemsInChunk:g,maxConcurrency:h});return x.increment(),t},{concurrency:v});x.stop();let C=S.flat(),w=``;C.length>0&&(w=(0,o.join)(_,`deletion-failures-${Date.now()}.csv`),t.l(w,C,!0)),n.t.info(s.default.green(`
2
-
3
- ==================================
4
-
5
- `)),n.t.info(s.default.green(`
6
- #### Deletion Summary Report #####
7
- `)),n.t.info(s.default.green(`📁 Total Files Processed: ${y.length} \n❌ Errors: ${C.length} \n📝 Receipt Path: ${w||`N/A`}`)),n.t.info(s.default.green(`
8
-
9
- ==================================
10
-
11
- `))}exports.deletePreferenceRecords=l;
12
- //# sourceMappingURL=impl-BMxxKrNz.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const n=require(`./codecs-JSDJgtyL.cjs`),r=require(`./readTranscendYaml-CL9nujUr.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`@transcend-io/privacy-types`),o=require(`@transcend-io/type-utils`),s=require(`node:fs`),c=require(`colors`);c=e.s(c);let l=require(`io-ts`);l=e.s(l);function u({file:e,output:u}){i.t(this.process.exit),(0,s.existsSync)(e)||(t.t.error(c.default.red(`File does not exist: --file="${e}"`)),this.process.exit(1));let d=(0,o.decodeCodec)(l.array(n.E),(0,s.readFileSync)(e,`utf-8`)),f=[],p=[];d.forEach(e=>{e.dataFlows.filter(({type:e})=>e!==a.DataFlowScope.CSP).forEach(e=>{f.push({value:e.value,type:e.type,status:a.ConsentTrackerStatus.Live,trackingPurposes:e.trackingPurposes})}),e.cookies.forEach(e=>{p.push({name:e.name,status:a.ConsentTrackerStatus.Live,trackingPurposes:e.trackingPurposes})})}),r.a(u,{"data-flows":f,cookies:p}),t.t.info(c.default.green(`Successfully wrote ${f.length} data flows and ${p.length} cookies to file "${u}"`))}exports.consentManagerServiceJsonToYml=u;
2
- //# sourceMappingURL=impl-BN61r-PG.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./constants-JoCDv9ym.cjs`),n=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),r=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const i=require(`./data-inventory-BzEYoxaa.cjs`),a=require(`./done-input-validation-Cgk5kNBs.cjs`);let o=require(`colors`);o=e.s(o);async function s({auth:e,file:s,transcendUrl:c,dataSiloIds:l,includeAttributes:u,includeGuessedCategories:d,parentCategories:f,subCategories:p=[]}){a.t(this.process.exit);try{let t=await i.n(n.ti(c,e),{dataSiloIds:l,includeGuessedCategories:d,parentCategories:f,includeAttributes:u,subCategories:p});r.t.info(o.default.magenta(`Writing datapoints to file "${s}"...`));let a=[];await n.d(s,t.map(e=>{let t={"Property ID":e.id,"Data Silo":e.dataSilo.title,Object:e.dataPoint.name,"Object Path":e.dataPoint.path.join(`.`),Property:e.name,"Property Description":e.description,"Data Categories":e.categories.map(e=>`${e.category}:${e.name}`).join(`, `),"Guessed Category":e.pendingCategoryGuesses?.[0]?`${e.pendingCategoryGuesses[0].category.category}:${e.pendingCategoryGuesses[0].category.name}`:``,"Processing Purposes":e.purposes.map(e=>`${e.purpose}:${e.name}`).join(`, `),...Object.entries(n.As(e.attributeValues||[],({attributeKey:e})=>e.name)).reduce((e,[t,n])=>(e[t]=n.map(e=>e.name).join(`,`),e),{})};return a=n.Ds([...a,...Object.keys(t)]),t}),a)}catch(e){r.t.error(o.default.red(`An error occurred syncing the datapoints: ${e.message}`)),this.process.exit(1)}r.t.info(o.default.green(`Successfully synced datapoints to disk at ${s}! View at ${t.n}`))}exports.pullDatapoints=s;
2
- //# sourceMappingURL=impl-BRuqPhJU.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,transcendUrl:r,identifierNames:i,actions:a=[]}){t.t(this.process.exit),await e.P({requestActions:a,transcendUrl:r,auth:n,identifierNames:i})}exports.rejectUnverifiedIdentifiers=n;
2
- //# sourceMappingURL=impl-BS8t24Z7.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`),require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);const t=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const n=require(`./readTranscendYaml-CL9nujUr.cjs`),r=require(`./consent-manager-BNMaKHId.cjs`);require(`./uploadConsents-CN1JucL3.cjs`);const i=require(`./api-keys-DB0BZSh5.cjs`),a=require(`./done-input-validation-Cgk5kNBs.cjs`);let o=require(`node:fs`),s=require(`node:path`),c=require(`colors`);c=e.s(c);function l({consentManagerYmlFolder:e,output:l}){a.t(this.process.exit),(!(0,o.existsSync)(e)||!(0,o.lstatSync)(e).isDirectory())&&(t.t.error(c.default.red(`Folder does not exist: "${e}"`)),this.process.exit(1));let u=r.t(i.n(e).map(t=>{let{"consent-manager":r}=n.r((0,s.join)(e,t));return{name:t,input:r}}));n.a(l,{"business-entities":u}),t.t.info(c.default.green(`Successfully wrote ${u.length} business entities to file "${l}"`))}exports.consentManagersToBusinessEntities=l;
2
- //# sourceMappingURL=impl-BWiNjS6v.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`),require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const e=require(`./manual-enrichment-D-0rM9KN.cjs`),t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,transcendUrl:r,file:i,concurrency:a,actions:o,sombraAuth:s}){t.t(this.process.exit),await e.i({file:i,transcendUrl:r,concurrency:a,requestActions:o,auth:n,sombraAuth:s})}exports.pullIdentifiers=n;
2
- //# sourceMappingURL=impl-BXMfTm4K.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./done-input-validation-Cgk5kNBs.cjs`);let i=require(`colors`);i=e.s(i);async function a({auth:e,transcendUrl:a,file:o,pageLimit:s,actions:c,sombraAuth:l,skipRequestIdentifiers:u,statuses:d,createdAtBefore:f,createdAtAfter:p,showTests:m}){r.t(this.process.exit);let{requestsFormattedForCsv:h}=await t.I({transcendUrl:a,pageLimit:s,actions:c,skipRequestIdentifiers:u,statuses:d,auth:e,sombraAuth:l,createdAtBefore:f,createdAtAfter:p,isTest:m});await t.d(o,h,t.Ds(h.map(e=>Object.keys(e)).flat())),n.t.info(i.default.green(`Successfully wrote ${h.length} requests to file "${o}"`))}exports._export=a;
2
- //# sourceMappingURL=impl-BYK9pQs0.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-BYK9pQs0.cjs","names":["pullPrivacyRequests","writeLargeCsv","uniq"],"sources":["../src/commands/request/export/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\nimport colors from 'colors';\n\nimport { logger } from '../../../logger';\nimport { uniq } from 'lodash-es';\nimport { pullPrivacyRequests } from '../../../lib/requests';\nimport { writeLargeCsv } from '../../../lib/helpers';\nimport type { RequestAction, RequestStatus } from '@transcend-io/privacy-types';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface ExportCommandFlags {\n auth: string;\n sombraAuth?: string;\n actions?: RequestAction[];\n statuses?: RequestStatus[];\n transcendUrl: string;\n file: string;\n concurrency: number;\n createdAtBefore?: Date;\n createdAtAfter?: Date;\n showTests?: boolean;\n skipRequestIdentifiers?: boolean;\n pageLimit: number;\n}\n\n// `export` is a reserved keyword, so we need to prefix it with an underscore\n// eslint-disable-next-line no-underscore-dangle\nexport async function _export(\n this: LocalContext,\n {\n auth,\n transcendUrl,\n file,\n pageLimit,\n actions,\n sombraAuth,\n skipRequestIdentifiers,\n statuses,\n createdAtBefore,\n createdAtAfter,\n showTests,\n }: ExportCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n const { requestsFormattedForCsv } = await pullPrivacyRequests({\n transcendUrl,\n pageLimit,\n actions,\n skipRequestIdentifiers,\n statuses,\n auth,\n sombraAuth,\n createdAtBefore,\n createdAtAfter,\n isTest: showTests,\n });\n\n // Write to CSV\n const headers = uniq(\n requestsFormattedForCsv.map((d) => Object.keys(d)).flat(),\n );\n await writeLargeCsv(file, requestsFormattedForCsv, headers);\n logger.info(\n colors.green(\n `Successfully wrote ${requestsFormattedForCsv.length} requests to file \"${file}\"`,\n ),\n );\n}\n"],"mappings":"wTA2BA,eAAsB,EAEpB,CACE,OACA,eACA,OACA,YACA,UACA,aACA,yBACA,WACA,kBACA,iBACA,aAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,GAAM,CAAE,2BAA4B,MAAMA,EAAAA,EAAoB,CAC5D,eACA,YACA,UACA,yBACA,WACA,OACA,aACA,kBACA,iBACA,OAAQ,EACT,CAAC,CAMF,MAAMC,EAAAA,EAAc,EAAM,EAHVC,EAAAA,GACd,EAAwB,IAAK,GAAM,OAAO,KAAK,EAAE,CAAC,CAAC,MAAM,CAC1D,CAC0D,CAC3D,EAAA,EAAO,KACL,EAAA,QAAO,MACL,sBAAsB,EAAwB,OAAO,qBAAqB,EAAK,GAChF,CACF"}
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,transcendUrl:r,createdAtBefore:i,createdAtAfter:a,actions:o,daysLeft:s,days:c,requestIds:l,emailTemplate:u,concurrency:d}){t.t(this.process.exit),await e.q({transcendUrl:r,requestActions:o,auth:n,emailTemplate:u,days:c,daysLeft:s,requestIds:l,concurrency:d,createdAtBefore:i,createdAtAfter:a})}exports.notifyAdditionalTime=n;
2
- //# sourceMappingURL=impl-BjOFvm4E.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-BjOFvm4E.cjs","names":["notifyPrivacyRequestsAdditionalTime"],"sources":["../src/commands/request/notify-additional-time/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\nimport { notifyPrivacyRequestsAdditionalTime } from '../../../lib/requests';\nimport type { RequestAction } from '@transcend-io/privacy-types';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface NotifyAdditionalTimeCommandFlags {\n auth: string;\n createdAtBefore: Date;\n createdAtAfter?: Date;\n actions?: RequestAction[];\n daysLeft: number;\n days: number;\n requestIds?: string[];\n emailTemplate: string;\n transcendUrl: string;\n concurrency: number;\n}\n\nexport async function notifyAdditionalTime(\n this: LocalContext,\n {\n auth,\n transcendUrl,\n createdAtBefore,\n createdAtAfter,\n actions,\n daysLeft,\n days,\n requestIds,\n emailTemplate,\n concurrency,\n }: NotifyAdditionalTimeCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n await notifyPrivacyRequestsAdditionalTime({\n transcendUrl,\n requestActions: actions,\n auth,\n emailTemplate,\n days,\n daysLeft,\n requestIds,\n concurrency,\n createdAtBefore,\n createdAtAfter,\n });\n}\n"],"mappings":"6QAkBA,eAAsB,EAEpB,CACE,OACA,eACA,kBACA,iBACA,UACA,WACA,OACA,aACA,gBACA,eAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,MAAMA,EAAAA,EAAoC,CACxC,eACA,eAAgB,EAChB,OACA,gBACA,OACA,WACA,aACA,cACA,kBACA,iBACD,CAAC"}
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./dataFlowsToDataSilos-daBgPi7V.cjs`),r=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const i=require(`./readTranscendYaml-CL9nujUr.cjs`),a=require(`./api-keys-DB0BZSh5.cjs`),o=require(`./done-input-validation-Cgk5kNBs.cjs`);let s=require(`node:fs`),c=require(`node:path`),l=require(`colors`);l=e.s(l);async function u({auth:e,dataFlowsYmlFolder:u,output:d,ignoreYmls:f=[],transcendUrl:p}){o.t(this.process.exit),(!(0,s.existsSync)(u)||!(0,s.lstatSync)(u).isDirectory())&&(r.t.error(l.default.red(`Folder does not exist: "${u}"`)),this.process.exit(1));let m=f.map(e=>e.split(`.`)[0]),h=a.n(u).map(e=>{let{"data-flows":t=[]}=i.r((0,c.join)(u,e)),{adTechDataSilos:r,siteTechDataSilos:a}=n.t(t,{serviceToSupportedIntegration:x,serviceToTitle:b});return{adTechDataSilos:r,siteTechDataSilos:a,organizationName:e.split(`.`)[0]}}),g={};h.forEach(({adTechDataSilos:e,siteTechDataSilos:t,organizationName:n})=>{[...e,...t].forEach(e=>{let t=e[`outer-type`]||e.integrationName;g[t]||(g[t]=[]),g[t].push(n),g[t]=[...new Set(g[t])]})});let _=[...new Set(h.map(({adTechDataSilos:e})=>e.map(e=>e[`outer-type`]||e.integrationName)).flat())],v=t.js([...new Set(h.map(({siteTechDataSilos:e})=>e.map(e=>e[`outer-type`]||e.integrationName)).flat())],_),y={};h.forEach(({adTechDataSilos:e,siteTechDataSilos:t})=>{[...e,...t].forEach(e=>{let t=e[`outer-type`]||e.integrationName,n=e.attributes?.find(e=>e.key===`Found On Domain`);y[t]||(y[t]=[]),y[t].push(...n?.values||[]),y[t]=[...new Set(y[t])]})});let{serviceToTitle:b,serviceToSupportedIntegration:x}=await t.ir(t.ti(p,e)),S=[..._,...v].map(e=>({title:b[e],...x[e]?{integrationName:e}:{integrationName:`promptAPerson`,"outer-type":e},attributes:[{key:`Tech Type`,values:[`Ad Tech`]},{key:`Business Units`,values:t.js(g[e]||[],m)},{key:`Found On Domain`,values:y[e]||[]}]}));r.t.log(`Total Services: ${S.length}`),r.t.log(`Ad Tech Services: ${_.length}`),r.t.log(`Site Tech Services: ${v.length}`),i.a(d,{"data-silos":S})}exports.deriveDataSilosFromDataFlowsCrossInstance=u;
2
- //# sourceMappingURL=impl-BouHRicT.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`),require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const e=require(`./consent-manager-BNMaKHId.cjs`);require(`./uploadConsents-CN1JucL3.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,trackerStatus:r,file:i,transcendUrl:a}){t.t(this.process.exit),await e.o({auth:n,trackerStatus:r,file:i,transcendUrl:a})}exports.uploadCookiesFromCsv=n;
2
- //# sourceMappingURL=impl-Bv4gPikD.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`),require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);const t=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const n=require(`./consent-manager-BNMaKHId.cjs`);require(`./uploadConsents-CN1JucL3.cjs`);const r=require(`./api-keys-DB0BZSh5.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`node:fs`),o=require(`colors`);o=e.s(o);async function s({auth:e,xdiLocation:s,file:c,removeIpAddresses:l,domainBlockList:u,xdiAllowedCommands:d,transcendUrl:f}){i.t(this.process.exit);let{syncGroups:p,html:m}=await n.r(await r.r(e),{xdiLocation:s,transcendUrl:f,removeIpAddresses:l,domainBlockList:u.length>0?u:void 0,xdiAllowedCommands:d});t.t.info(o.default.green(`Successfully constructed sync endpoint for sync groups: ${JSON.stringify(p,null,2)}`)),(0,a.writeFileSync)(c,m),t.t.info(o.default.green(`Wrote configuration to file "${c}"!`))}exports.buildXdiSyncEndpoint=s;
2
- //# sourceMappingURL=impl-BwAnSxkP.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,requestReceiptFolder:r,sombraAuth:i,actions:a,statuses:o,requestIds:s,createdAt:c,emailIsVerified:l,silentModeBefore:u,sendEmailReceipt:d,copyIdentifiers:f,skipWaitingPeriod:p,createdAtBefore:m,createdAtAfter:h,concurrency:g,transcendUrl:_}){t.t(this.process.exit),await e.B({requestReceiptFolder:r,auth:n,sombraAuth:i,requestActions:a,requestStatuses:o,requestIds:s,createdAt:c,emailIsVerified:l,silentModeBefore:u,sendEmailReceipt:d,copyIdentifiers:f,skipWaitingPeriod:p,createdAtBefore:m,createdAtAfter:h,concurrency:g,transcendUrl:_})}exports.restart=n;
2
- //# sourceMappingURL=impl-C-_9uRms.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-C-_9uRms.cjs","names":["bulkRestartRequests"],"sources":["../src/commands/request/restart/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\nimport { bulkRestartRequests } from '../../../lib/requests';\nimport type { RequestAction, RequestStatus } from '@transcend-io/privacy-types';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface RestartCommandFlags {\n auth: string;\n actions: RequestAction[];\n statuses: RequestStatus[];\n transcendUrl: string;\n requestReceiptFolder: string;\n sombraAuth?: string;\n concurrency: number;\n requestIds?: string[];\n emailIsVerified: boolean;\n createdAt?: Date;\n silentModeBefore?: Date;\n createdAtBefore?: Date;\n createdAtAfter?: Date;\n sendEmailReceipt: boolean;\n copyIdentifiers: boolean;\n skipWaitingPeriod: boolean;\n}\n\nexport async function restart(\n this: LocalContext,\n {\n auth,\n requestReceiptFolder,\n sombraAuth,\n actions,\n statuses,\n requestIds,\n createdAt,\n emailIsVerified,\n silentModeBefore,\n sendEmailReceipt,\n copyIdentifiers,\n skipWaitingPeriod,\n createdAtBefore,\n createdAtAfter,\n concurrency,\n transcendUrl,\n }: RestartCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n await bulkRestartRequests({\n requestReceiptFolder,\n auth,\n sombraAuth,\n requestActions: actions,\n requestStatuses: statuses,\n requestIds,\n createdAt,\n emailIsVerified,\n silentModeBefore,\n sendEmailReceipt,\n copyIdentifiers,\n skipWaitingPeriod,\n createdAtBefore,\n createdAtAfter,\n concurrency,\n transcendUrl,\n });\n}\n"],"mappings":"6QAwBA,eAAsB,EAEpB,CACE,OACA,uBACA,aACA,UACA,WACA,aACA,YACA,kBACA,mBACA,mBACA,kBACA,oBACA,kBACA,iBACA,cACA,gBAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,MAAMA,EAAAA,EAAoB,CACxB,uBACA,OACA,aACA,eAAgB,EAChB,gBAAiB,EACjB,aACA,YACA,kBACA,mBACA,mBACA,kBACA,oBACA,kBACA,iBACA,cACA,eACD,CAAC"}
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const r=require(`./consent-manager-BNMaKHId.cjs`);require(`./uploadConsents-CN1JucL3.cjs`);const i=require(`./api-keys-DB0BZSh5.cjs`),a=require(`./done-input-validation-Cgk5kNBs.cjs`);let o=require(`@transcend-io/privacy-types`),s=require(`colors`);s=e.s(s);async function c({auth:e,bundleTypes:c=[o.ConsentBundleType.Production,o.ConsentBundleType.Test],deploy:l,transcendUrl:u}){a.t(this.process.exit);let d=await i.r(e);typeof d==`string`?(await r.c({deploy:l,transcendUrl:u,auth:d,bundleTypes:c}),n.t.info(s.default.green(`Successfully updated Consent Manager!`))):(await t.Es(d,async e=>{n.t.info(s.default.magenta(`Updating Consent Manager for organization "${e.organizationName}"...`)),await r.c({deploy:l,transcendUrl:u,auth:e.apiKey,bundleTypes:c}),n.t.info(s.default.green(`Successfully updated Consent Manager for organization "${e.organizationName}"!`))}),n.t.info(s.default.green(`Successfully updated Consent Managers!`)))}exports.updateConsentManager=c;
2
- //# sourceMappingURL=impl-C4D1tHjp.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const n=require(`./done-input-validation-Cgk5kNBs.cjs`);let r=require(`@transcend-io/privacy-types`);async function i({auth:e,transcendUrl:i,folderPath:a,requestIds:o,statuses:s=[r.RequestStatus.Approving,r.RequestStatus.Downloadable],concurrency:c,createdAtBefore:l,createdAtAfter:u,approveAfterDownload:d}){n.t(this.process.exit),await t.Z({transcendUrl:i,auth:e,folderPath:a,requestIds:o,statuses:s,concurrency:c,createdAtBefore:l,createdAtAfter:u,approveAfterDownload:d})}exports.downloadFiles=i;
2
- //# sourceMappingURL=impl-CA_CO88W.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-CA_CO88W.cjs","names":["RequestStatus","downloadPrivacyRequestFiles"],"sources":["../src/commands/request/download-files/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\nimport { downloadPrivacyRequestFiles } from '../../../lib/requests';\nimport { RequestStatus } from '@transcend-io/privacy-types';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface DownloadFilesCommandFlags {\n auth: string;\n sombraAuth?: string;\n concurrency: number;\n requestIds?: string[];\n statuses?: RequestStatus[];\n folderPath: string;\n createdAtBefore?: Date;\n createdAtAfter?: Date;\n approveAfterDownload: boolean;\n transcendUrl: string;\n}\n\nexport async function downloadFiles(\n this: LocalContext,\n {\n auth,\n transcendUrl,\n folderPath,\n requestIds,\n statuses = [RequestStatus.Approving, RequestStatus.Downloadable],\n concurrency,\n createdAtBefore,\n createdAtAfter,\n approveAfterDownload,\n }: DownloadFilesCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n await downloadPrivacyRequestFiles({\n transcendUrl,\n auth,\n folderPath,\n requestIds,\n statuses,\n concurrency,\n createdAtBefore,\n createdAtAfter,\n approveAfterDownload,\n });\n}\n"],"mappings":"kUAkBA,eAAsB,EAEpB,CACE,OACA,eACA,aACA,aACA,WAAW,CAACA,EAAAA,cAAc,UAAWA,EAAAA,cAAc,aAAa,CAChE,cACA,kBACA,iBACA,wBAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,MAAMC,EAAAA,EAA4B,CAChC,eACA,OACA,aACA,aACA,WACA,cACA,kBACA,iBACA,uBACD,CAAC"}
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./dataFlowsToDataSilos-daBgPi7V.cjs`),r=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const i=require(`./readTranscendYaml-CL9nujUr.cjs`),a=require(`./api-keys-DB0BZSh5.cjs`),o=require(`./done-input-validation-Cgk5kNBs.cjs`);let s=require(`node:fs`),c=require(`node:path`),l=require(`colors`);l=e.s(l);async function u({auth:e,dataFlowsYmlFolder:u,dataSilosYmlFolder:d,ignoreYmls:f=[],transcendUrl:p}){o.t(this.process.exit),(!(0,s.existsSync)(u)||!(0,s.lstatSync)(u).isDirectory())&&(r.t.error(l.default.red(`Folder does not exist: "${u}"`)),this.process.exit(1)),(!(0,s.existsSync)(d)||!(0,s.lstatSync)(d).isDirectory())&&(r.t.error(l.default.red(`Folder does not exist: "${d}"`)),this.process.exit(1));let{serviceToTitle:m,serviceToSupportedIntegration:h}=await t.ir(t.ti(p,e));a.n(u).forEach(e=>{let{"data-flows":t=[]}=i.r((0,c.join)(u,e)),{adTechDataSilos:a,siteTechDataSilos:o}=n.t(t,{serviceToSupportedIntegration:h,serviceToTitle:m}),s=[...a,...o];r.t.log(`Total Services: ${s.length}`),r.t.log(`Ad Tech Services: ${a.length}`),r.t.log(`Site Tech Services: ${o.length}`),i.a((0,c.join)(d,e),{"data-silos":f.includes(e)?[]:s})})}exports.deriveDataSilosFromDataFlows=u;
2
- //# sourceMappingURL=impl-CCOEjRnr.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const n=require(`./uploadConsents-CN1JucL3.cjs`),r=require(`./done-input-validation-Cgk5kNBs.cjs`);let i=require(`io-ts`);i=e.s(i);const a=i.intersection([i.type({userId:i.string,timestamp:i.string}),i.partial({confirmed:i.union([i.literal(`true`),i.literal(`false`)]),updated:i.union([i.literal(`true`),i.literal(`false`)]),prompted:i.union([i.literal(`true`),i.literal(`false`)]),metadata:i.string,usp:i.union([i.string,i.null]),gpp:i.union([i.string,i.null]),purposes:i.string})]);async function o({base64EncryptionKey:e,base64SigningKey:i,partition:o,file:s,consentUrl:c,concurrency:l}){r.t(this.process.exit),await n.r({base64EncryptionKey:e,base64SigningKey:i,preferences:t.oi(s,a),partition:o,concurrency:l,transcendUrl:c})}exports.uploadConsentPreferences=o;
2
- //# sourceMappingURL=impl-CFmFCVt8.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./done-input-validation-Cgk5kNBs.cjs`),i=require(`./preference-management-Dapt3Li3.cjs`);let a=require(`node:fs`),o=require(`node:path`),s=require(`colors`);s=e.s(s);async function c({auth:e,partition:c,sombraAuth:l,transcendUrl:u,file:d=``,directory:f,dryRun:p,skipExistingRecordCheck:m,receiptFileDir:h,skipWorkflowTriggers:g,forceTriggerWorkflows:_,skipConflictUpdates:v,isSilent:y,attributes:b,concurrency:x}){f&&d&&(n.t.error(s.default.red(`Cannot provide both a directory and a file. Please provide only one.`)),this.process.exit(1)),!d&&!f&&(n.t.error(s.default.red(`A file or directory must be provided. Please provide one using --file=./preferences.csv or --directory=./preferences`)),this.process.exit(1)),r.t(this.process.exit);let S=[];if(f)try{let e=(0,a.readdirSync)(f).filter(e=>e.endsWith(`.csv`));e.length===0&&(n.t.error(s.default.red(`No CSV files found in directory: ${f}`)),this.process.exit(1)),S.push(...e.map(e=>(0,o.join)(f,e)))}catch(e){n.t.error(s.default.red(`Failed to read directory: ${f}`)),n.t.error(s.default.red(e.message)),this.process.exit(1)}else try{d.endsWith(`.csv`)||(n.t.error(s.default.red(`File must be a CSV file`)),this.process.exit(1)),S.push(d)}catch(e){n.t.error(s.default.red(`Failed to access file: ${d}`)),n.t.error(s.default.red(e.message)),this.process.exit(1)}n.t.info(s.default.green(`Processing ${S.length} consent preferences files for partition: ${c}`)),n.t.debug(`Files to process: ${S.join(`, `)}`),m&&n.t.info(s.default.bgYellow(`Skipping existing record check: ${m}`)),await t.Ts(S,async n=>{await i.a({receiptFilepath:(0,o.join)(h,`${(0,o.basename)(n).replace(`.csv`,``)}-receipts.json`),auth:e,sombraAuth:l,file:n,partition:c,transcendUrl:u,skipConflictUpdates:v,skipWorkflowTriggers:g,skipExistingRecordCheck:m,isSilent:y,dryRun:p,attributes:t.li(b),forceTriggerWorkflows:_})},{concurrency:x})}exports.uploadPreferences=c;
2
- //# sourceMappingURL=impl-CSZwdpH-.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,actions:r,statuses:i=[],requestIds:a,silentModeBefore:o,createdAtBefore:s,createdAtAfter:c,cancellationTitle:l,transcendUrl:u,concurrency:d}){t.t(this.process.exit),await e.G({transcendUrl:u,requestActions:r,auth:n,cancellationTitle:l,requestIds:a,statuses:i,concurrency:d,silentModeBefore:o?new Date(o):void 0,createdAtBefore:s?new Date(s):void 0,createdAtAfter:c?new Date(c):void 0})}exports.cancel=n;
2
- //# sourceMappingURL=impl-ChNLuyNq.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-ChNLuyNq.cjs","names":["cancelPrivacyRequests"],"sources":["../src/commands/request/cancel/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\nimport { RequestAction, RequestStatus } from '@transcend-io/privacy-types';\nimport { cancelPrivacyRequests } from '../../../lib/requests';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface CancelCommandFlags {\n auth: string;\n actions: RequestAction[];\n statuses?: RequestStatus[];\n requestIds?: string[];\n silentModeBefore?: Date;\n createdAtBefore?: Date;\n createdAtAfter?: Date;\n cancellationTitle: string;\n transcendUrl: string;\n concurrency: number;\n}\n\nexport async function cancel(\n this: LocalContext,\n {\n auth,\n actions,\n statuses = [],\n requestIds,\n silentModeBefore,\n createdAtBefore,\n createdAtAfter,\n cancellationTitle,\n transcendUrl,\n concurrency,\n }: CancelCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n await cancelPrivacyRequests({\n transcendUrl,\n requestActions: actions,\n auth,\n cancellationTitle,\n requestIds,\n statuses,\n concurrency,\n silentModeBefore: silentModeBefore ? new Date(silentModeBefore) : undefined,\n createdAtBefore: createdAtBefore ? new Date(createdAtBefore) : undefined,\n createdAtAfter: createdAtAfter ? new Date(createdAtAfter) : undefined,\n });\n}\n"],"mappings":"6QAkBA,eAAsB,EAEpB,CACE,OACA,UACA,WAAW,EAAE,CACb,aACA,mBACA,kBACA,iBACA,oBACA,eACA,eAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,MAAMA,EAAAA,EAAsB,CAC1B,eACA,eAAgB,EAChB,OACA,oBACA,aACA,WACA,cACA,iBAAkB,EAAmB,IAAI,KAAK,EAAiB,CAAG,IAAA,GAClE,gBAAiB,EAAkB,IAAI,KAAK,EAAgB,CAAG,IAAA,GAC/D,eAAgB,EAAiB,IAAI,KAAK,EAAe,CAAG,IAAA,GAC7D,CAAC"}
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./pooling-DbIx6-i7.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`colors`);a=e.s(a);async function o(){let e=Number(process.env.WORKER_ID||`0`);n.t.info(`[w${e}] ready pid=${process.pid}`),process.send?.({type:`ready`}),process.on(`message`,async r=>{if(!r||typeof r!=`object`||(r.type===`shutdown`&&process.exit(0),r.type!==`task`))return;let{filePath:i,options:a}=r.payload,{outputDir:o,clearOutputDir:s}=a;try{n.t.info(`[w${e}] processing ${i}`);let{DuckDBInstance:r}=await import(`@duckdb/node-api`);await t.b({filePath:i,outputDir:o,clearOutputDir:s,onProgress:(e,t)=>process.send?.({type:`progress`,payload:{filePath:i,processed:e,total:t}})},r),process.send?.({type:`result`,payload:{ok:!0,filePath:i}})}catch(r){let a=t.O(r);n.t.error(`[w${e}] ERROR ${i}: ${r.stack||a}`),process.send?.({type:`result`,payload:{ok:!1,filePath:i,error:a}})}}),await new Promise(()=>{})}function s(e){return r.r(e)}function c(e){return r.i(e)}const l={renderHeader:s,renderWorkers:c};function u(){return typeof __filename<`u`?__filename:process.argv[1]}async function d(e){i.t(this.process.exit);let{directory:o,outputDir:s,clearOutputDir:c,concurrency:d,viewerMode:f}=e,p=t.x(o,this),{poolSize:m,cpuCount:h}=r.s(d,p.length);n.t.info(a.default.green(`Converting ${p.length} Parquet file(s) → CSV with pool size ${m} (CPU=${h})`));let g=p.map(e=>({filePath:e,options:{outputDir:s,clearOutputDir:c}}));await r.n({title:`Parquet → CSV - ${o}`,baseDir:o||s||process.cwd(),childFlag:r.o,childModulePath:u(),poolSize:m,cpuCount:h,filesTotal:p.length,hooks:{nextTask:()=>g.shift(),taskLabel:e=>e.filePath,initTotals:()=>({}),initSlotProgress:()=>void 0,onProgress:e=>e,onResult:(e,t)=>({totals:e,ok:!!t.ok}),postProcess:async()=>{}},viewerMode:f,render:e=>r.a(e,l,f),extraKeyHandler:({logsBySlot:e,repaint:t,setPaused:n})=>r.t({logsBySlot:e,repaint:t,setPaused:n})})}process.argv.includes(r.o)&&o().catch(e=>{n.t.error(e),process.exit(1)}),exports.parquetToCsv=d;
2
- //# sourceMappingURL=impl-ClDXxODZ.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`),require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const e=require(`./consent-manager-BNMaKHId.cjs`);require(`./uploadConsents-CN1JucL3.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,trackerStatus:r,file:i,classifyService:a,transcendUrl:o}){t.t(this.process.exit),await e.s({auth:n,trackerStatus:r,file:i,classifyService:a,transcendUrl:o})}exports.uploadDataFlowsFromCsv=n;
2
- //# sourceMappingURL=impl-CoxOrlXu.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./command-41dUPvEa.cjs`),n=require(`./constants-JoCDv9ym.cjs`),r=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),i=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const a=require(`./readTranscendYaml-CL9nujUr.cjs`),o=require(`./api-keys-DB0BZSh5.cjs`),s=require(`./done-input-validation-Cgk5kNBs.cjs`);let c=require(`node:fs`);c=e.s(c);let l=require(`node:path`),u=require(`colors`);u=e.s(u);async function d({auth:d,resources:f=t.n,file:p,transcendUrl:m,dataSiloIds:h=[],integrationNames:g=[],trackerStatuses:_=t.t,pageSize:v,skipDatapoints:y,skipSubDatapoints:b,includeGuessedCategories:x,debug:S}){s.t(this.process.exit);let C=await o.r(d),w=f.includes(`all`)?Object.values(e.o):f;if(typeof C==`string`){try{let e=await r._n(r.ti(m,C),{dataSiloIds:h,integrationNames:g,resources:w,pageSize:v,debug:S,skipDatapoints:y,skipSubDatapoints:b,includeGuessedCategories:x,trackerStatuses:_});i.t.info(u.default.magenta(`Writing configuration to file "${p}"...`)),a.a(p,e)}catch(e){i.t.error(u.default.red(`An error occurred syncing the schema: ${S?e.stack:e.message}`)),this.process.exit(1)}i.t.info(u.default.green(`Successfully synced yaml file to disk at ${p}! View at ${n.r}`))}else{if(!c.default.lstatSync(p).isDirectory())throw Error(`File is expected to be a folder when passing in a list of API keys to pull from. e.g. --file=./working/`);let e=[];await r.Es(C,async(t,n)=>{let o=`[${n+1}/${C.length}][${t.organizationName}] `;i.t.info(u.default.magenta(`~~~\n\n${o}Attempting to pull configuration...\n\n~~~`));let s=r.ti(m,t.apiKey);try{let e=await r._n(s,{dataSiloIds:h,integrationNames:g,resources:w,pageSize:v,debug:S,skipDatapoints:y,skipSubDatapoints:b,includeGuessedCategories:x,trackerStatuses:_}),n=(0,l.join)(p,`${t.organizationName}.yml`);i.t.info(u.default.magenta(`Writing configuration to file "${n}"...`)),a.a(n,e),i.t.info(u.default.green(`${o}Successfully pulled configuration!`))}catch(n){i.t.error(u.default.red(`${o}Failed to sync configuration. - ${n.message}`)),e.push(t.organizationName)}}),e.length>0&&(i.t.info(u.default.red(`Sync encountered errors for "${e.join(`,`)}". View output above for more information, or check out ${n.r}`)),this.process.exit(1))}}exports.pull=d;
2
- //# sourceMappingURL=impl-Cp12F9tr.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./constants-JoCDv9ym.cjs`);require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const n=require(`./api-keys-DB0BZSh5.cjs`),r=require(`./done-input-validation-Cgk5kNBs.cjs`);let i=require(`node:fs`);async function a({email:e,password:a,apiKeyTitle:o,file:s,scopes:c,deleteExistingApiKey:l,createNewApiKey:u,parentOrganizationId:d,transcendUrl:f}){r.t(this.process.exit);let{errors:p,apiKeys:m}=await n.i({transcendUrl:f,password:a,email:e,parentOrganizationId:d,deleteExistingApiKey:l,createNewApiKey:u,apiKeyTitle:o,scopes:c.map(e=>t.c[e].name)});(0,i.writeFileSync)(s,`${JSON.stringify(m,null,2)}\n`),p.length>0&&this.process.exit(1)}exports.generateApiKeys=a;
2
- //# sourceMappingURL=impl-D3sI4I1g.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,enricherId:r,actions:i,requestEnricherStatuses:a,requestIds:o,createdAtBefore:s,createdAtAfter:c,concurrency:l,transcendUrl:u}){t.t(this.process.exit),await e.R({auth:n,enricherId:r,requestActions:i,requestEnricherStatuses:a,requestIds:o,createdAtBefore:s?new Date(s):void 0,createdAtAfter:c?new Date(c):void 0,concurrency:l,transcendUrl:u})}exports.enricherRestart=n;
2
- //# sourceMappingURL=impl-D7WBmmHb.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-D7WBmmHb.cjs","names":["bulkRetryEnrichers"],"sources":["../src/commands/request/enricher-restart/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\nimport { bulkRetryEnrichers } from '../../../lib/requests';\nimport type {\n RequestAction,\n RequestEnricherStatus,\n} from '@transcend-io/privacy-types';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface EnricherRestartCommandFlags {\n auth: string;\n enricherId: string;\n actions?: RequestAction[];\n requestEnricherStatuses?: RequestEnricherStatus[];\n transcendUrl: string;\n concurrency: number;\n requestIds?: string[];\n createdAtBefore?: Date;\n createdAtAfter?: Date;\n}\n\nexport async function enricherRestart(\n this: LocalContext,\n {\n auth,\n enricherId,\n actions,\n requestEnricherStatuses,\n requestIds,\n createdAtBefore,\n createdAtAfter,\n concurrency,\n transcendUrl,\n }: EnricherRestartCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n await bulkRetryEnrichers({\n auth,\n enricherId,\n requestActions: actions,\n requestEnricherStatuses,\n requestIds,\n createdAtBefore: createdAtBefore ? new Date(createdAtBefore) : undefined,\n createdAtAfter: createdAtAfter ? new Date(createdAtAfter) : undefined,\n concurrency,\n transcendUrl,\n });\n}\n"],"mappings":"6QAoBA,eAAsB,EAEpB,CACE,OACA,aACA,UACA,0BACA,aACA,kBACA,iBACA,cACA,gBAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,MAAMA,EAAAA,EAAmB,CACvB,OACA,aACA,eAAgB,EAChB,0BACA,aACA,gBAAiB,EAAkB,IAAI,KAAK,EAAgB,CAAG,IAAA,GAC/D,eAAgB,EAAiB,IAAI,KAAK,EAAe,CAAG,IAAA,GAC5D,cACA,eACD,CAAC"}
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./constants-JoCDv9ym.cjs`),n=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),r=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`),require(`./api-keys-DB0BZSh5.cjs`);const i=require(`./done-input-validation-Cgk5kNBs.cjs`),a=require(`./code-scanning-Yc7rgoTY.cjs`);let o=require(`colors`);o=e.s(o);let s=require(`child_process`);const c=`A repository name must be provided. You can specify using --repositoryName=$REPO_NAME or by ensuring the command "git config --get remote.origin.url" returns the name of the repository`;async function l({auth:e,scanPath:l,ignoreDirs:u,repositoryName:d,transcendUrl:f}){i.t(this.process.exit);let p=d;if(!p)try{let e=(0,s.execSync)(`cd ${l} && git config --get remote.origin.url`).toString(`utf-8`).trim();[p]=e.includes(`https:`)?e.split(`/`).slice(3).join(`/`).split(`.`):(e.split(`:`).pop()||``).split(`.`),p||(r.t.error(o.default.red(c)),this.process.exit(1))}catch(e){r.t.error(o.default.red(`${c} - Got error: ${e.message}`)),this.process.exit(1)}let m=n.ti(f,e),h=await a.t({scanPath:l,ignoreDirs:u,repositoryName:p});await n.zt(m,h);let g=new URL(t.t);g.pathname=`/code-scanning/code-packages`,r.t.info(o.default.green(`Scan found ${h.length} packages at ${l}! View results at '${g.href}'`))}exports.scanPackages=l;
2
- //# sourceMappingURL=impl-DU-WTXTY.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./cron-ClvgH2uD.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`colors`);a=e.s(a);async function o({file:e,fileTarget:o,transcendUrl:s,auth:c,sombraAuth:l,cronDataSiloId:u,targetDataSiloId:d,actions:f,skipRequestCount:p,pageLimit:m,chunkSize:h}){p&&n.t.info(a.default.yellow(`Skipping request count as requested. This may help speed up the call.`)),(Number.isNaN(h)||h<=0||h%m!==0)&&(n.t.error(a.default.red(`Invalid chunk size: "${h}". Must be a positive integer that is a multiple of ${m}.`)),this.process.exit(1)),i.t(this.process.exit);let g=t.ti(s,c),{baseName:_,extension:v}=t.c(e),{baseName:y,extension:b}=t.c(o),x=0,S=0,C=0;await r.t({dataSiloId:u,auth:c,sombraAuth:l,actions:f,apiPageSize:m,savePageSize:h,onSave:async r=>{x+=r.length;let i=await t.Ts(t.Ns(t.Ds(r.map(e=>e.requestId)),m),async e=>(n.t.info(a.default.magenta(`Fetching target identifiers for ${e.length} requests`)),(await t.Un(g,m*2,{requestIds:e,dataSiloIds:[d]})).map(({fileName:e,remoteId:t})=>{if(!t)throw Error(`Failed to find remoteId for ${e}`);return{RecordId:t,Object:e.replace(`.json`,``).split(`/`).pop()?.replace(` Information`,``),Comment:`Customer data deletion request submitted via transcend.io`}})),{concurrency:1});S+=i.flat().length;let s=t.Ds(r.map(e=>Object.keys(e)).flat()),c=`${_}-${C}${v}`,l=`${y}-${C}${b}`;await t.d(c,r,s),n.t.info(a.default.green(`Successfully wrote ${r.length} identifiers to file "${e}"`));let u=i.flat();await t.d(l,u,t.Ds(u.map(e=>Object.keys(e)).flat())),n.t.info(a.default.green(`Successfully wrote ${u.length} identifiers to file "${o}"`)),n.t.info(a.default.blue(`Processed chunk of ${t.Ns.length} identifiers, found ${u.length} target identifiers`)),C+=1},transcendUrl:s,skipRequestCount:p}),n.t.info(a.default.green(`Successfully wrote ${x} identifiers to file "${e}"`)),n.t.info(a.default.green(`Successfully wrote ${S} identifiers to file "${o}"`))}exports.pullProfiles=o;
2
- //# sourceMappingURL=impl-DhdY6lbj.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./constants-JoCDv9ym.cjs`),n=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),r=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`);const i=require(`./readTranscendYaml-CL9nujUr.cjs`),a=require(`./mergeTranscendInputs-PPpGbYgG.cjs`),o=require(`./api-keys-DB0BZSh5.cjs`),s=require(`./done-input-validation-Cgk5kNBs.cjs`);let c=require(`node:fs`),l=require(`node:path`),u=require(`colors`);u=e.s(u);async function d({transcendUrl:e,auth:t,pageSize:i,publishToPrivacyCenter:a,contents:o,deleteExtraAttributeValues:s=!1,classifyService:c=!1}){let l=n.ti(e,t);try{return!await n.t(o,l,{pageSize:i,publishToPrivacyCenter:a,classifyService:c,deleteExtraAttributeValues:s})}catch(e){return r.t.error(u.default.red(`An unexpected error occurred syncing the schema: ${e.message}`)),!1}}async function f({file:e=`./transcend.yml`,transcendUrl:f,auth:p,variables:m,pageSize:h,publishToPrivacyCenter:g,classifyService:_,deleteExtraAttributeValues:v}){s.t(this.process.exit);let y=await o.r(p),b=n.A(m),x;if(x=Array.isArray(y)&&(0,c.lstatSync)(e).isDirectory()?o.n(e).map(t=>(0,l.join)(e,t)):e.split(`,`),x.length<1)throw Error(`No file specified!`);let S=x.map(e=>{(0,c.existsSync)(e)?r.t.info(u.default.magenta(`Reading file "${e}"...`)):(r.t.error(u.default.red(`The file path does not exist on disk: ${e}. You can specify the filepath using --file=./examples/transcend.yml`)),this.process.exit(1));try{let t=i.r(e,b);return r.t.info(u.default.green(`Successfully read in "${e}"`)),{content:t,name:e.split(`/`).pop().replace(`.yml`,``)}}catch(e){r.t.error(u.default.red(`The shape of your yaml file is invalid with the following errors: ${e.message}`)),this.process.exit(1)}});if(typeof y==`string`){let[e,...n]=S.map(({content:e})=>e);await d({transcendUrl:f,auth:y,contents:a.t(e,...n),publishToPrivacyCenter:g,deleteExtraAttributeValues:v,pageSize:h,classifyService:!!_})||(r.t.info(u.default.red(`Sync encountered errors. View output above for more information, or check out ${t.r}`)),this.process.exit(1))}else{if(S.length!==1&&S.length!==y.length)throw Error(`Expected list of yml files to be equal to the list of API keys.Got ${S.length} YML file${S.length===1?``:`s`} and ${y.length} API key${y.length===1?``:`s`}`);let e=[];await n.Es(y,async(t,n)=>{let i=`[${n+1}/${y.length}][${t.organizationName}] `;r.t.info(u.default.magenta(`~~~\n\n${i}Attempting to push configuration...\n\n~~~`));let a=S.length===1?S[0].content:S.find(e=>e.name===t.organizationName)?.content;if(!a){r.t.error(u.default.red(`${i}Failed to find transcend.yml file for organization: "${t.organizationName}".`)),e.push(t.organizationName);return}await d({transcendUrl:f,auth:t.apiKey,contents:a,pageSize:h,publishToPrivacyCenter:g,deleteExtraAttributeValues:v,classifyService:_})?r.t.info(u.default.green(`${i}Successfully pushed configuration!`)):(r.t.error(u.default.red(`${i}Failed to sync configuration.`)),e.push(t.organizationName))}),e.length>0&&(r.t.info(u.default.red(`Sync encountered errors for "${e.join(`,`)}". View output above for more information, or check out ${t.r}`)),this.process.exit(1))}r.t.info(u.default.green(`Successfully synced yaml file to Transcend! View at ${t.r}`))}exports.push=f;
2
- //# sourceMappingURL=impl-DpdGWdrr.cjs.map
@@ -1,4 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`),t=require(`./constants-JoCDv9ym.cjs`),n=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),r=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`),require(`./codecs-JSDJgtyL.cjs`),require(`./api-keys-DB0BZSh5.cjs`);const i=require(`./done-input-validation-Cgk5kNBs.cjs`),a=require(`./code-scanning-Yc7rgoTY.cjs`);let o=require(`colors`);o=e.s(o);let s=require(`fast-glob`);s=e.s(s);let c=require(`query-string`);async function l({scanPath:e,fileGlobs:t,ignoreDirs:n,config:i}){let{ignoreDirs:a,supportedFiles:o,scanFunction:c}=i,u=t===``?o:o.concat(t.split(`,`)),d=[...n.split(`,`),...a].filter(e=>e.length>0);try{let t=await(0,s.default)(`${e}/**/${u.join(`|`)}`,{ignore:d.map(t=>`${e}/**/${t}`),unique:!0,onlyFiles:!0});r.t.info(`Scanning: ${t.length} files`);let n=t.map(e=>c(e)).flat().map(e=>e.softwareDevelopmentKits||[]).flat(),i=[...new Set(n.map(e=>e.name))];return r.t.info(`Found: ${i.length} unique dependencies`),i.map(t=>({name:t,resourceId:`${e}/**/${t}`,useStrictClassifier:!0}))}catch(e){throw Error(`Error scanning globs ${l} with error: ${e}`)}}async function u({scanPath:e,dataSiloId:s,auth:u,fileGlobs:d,ignoreDirs:f,transcendUrl:p}){i.t(this.process.exit);let m=n.ti(p,u),h=await n.Xr(m,s),g=a.n[h.dataSilo.type];g||(r.t.error(o.default.red(`This plugin "${h.dataSilo.type}" is not supported for offline silo discovery.`)),this.process.exit(1));let _=await l({scanPath:e,fileGlobs:d,ignoreDirs:f,config:g});await n.ut(m,h.id,_);let v=new URL(t.t);v.pathname=`/data-map/data-inventory/silo-discovery/triage`,v.search=(0,c.stringify)({filters:JSON.stringify({pluginIds:[h.id]})}),r.t.info(o.default.green(`Scan found ${_.length} potential data silos at ${e}! View at '${v.href}'
2
-
3
- NOTE: it may take 2-3 minutes for scan results to appear in the UI.`))}exports.discoverSilos=u;
4
- //# sourceMappingURL=impl-FlZPR0yd.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./done-input-validation-Cgk5kNBs.cjs`);let i=require(`@transcend-io/privacy-types`),a=require(`node:fs`),o=require(`colors`);o=e.s(o);let s=require(`io-ts`);s=e.s(s);let c=require(`cli-progress`);c=e.s(c);async function l({auth:e,file:l,transcendUrl:u,duration:d,subjectType:f,emailColumnName:p,coreIdentifierColumnName:m}){r.t(this.process.exit),(0,a.existsSync)(l)||(n.t.error(o.default.red(`File does not exist: "${l}". Please provide a valid path to a CSV file.`)),this.process.exit(1));try{let r=t.ti(u,e),a=t.oi(l,s.type({[p]:s.string,...m?{[m]:s.string}:{}}));if(!a.length)throw Error(`Input CSV is empty.`);let h=a.map((e,t)=>[e,t]).filter(([e])=>!e[p]?.trim());if(h.length){let e=h.map(([,e])=>e+2).join(`, `);throw Error(`The following rows are missing the required "${p}" column: ${e}`)}if(m){let e=a.map((e,t)=>[e,t]).filter(([e])=>!e[m]?.trim());if(e.length){let t=e.map(([,e])=>e+2).join(`, `);throw Error(`The following rows are missing the required "${m}" column: ${t}`)}}let g=Math.max(1,Math.floor(d/1e3)),_=a.map((e,t)=>{let n=e[p].trim(),r=m?e[m]?.trim():void 0;return{subjectType:f,scopes:[i.SombraStandardScope.PreferenceManagement],expiresIn:g,email:n,...r?{coreIdentifier:r}:{},index:t}}),v=new c.default.SingleBar({},c.default.Presets.shades_classic);v.start(_.length,0);let y=Date.now(),b=await t.Hr(r,_,e=>{v.update(e)});v.update(_.length),v.stop();let x=b.map(({accessToken:e,input:t})=>{if(typeof t.index!=`number`)throw Error(`Internal error: missing input index.`);return{...a[t.index],token:e}});n.t.info(o.default.magenta(`Writing access tokens to file "${l}"...`)),await t.l(l,x,!0);let S=Math.round((Date.now()-y)/1e3);n.t.info(o.default.green(`Successfully generated ${b.length} access tokens to "${l}" in ${S}s!`))}catch(e){n.t.error(o.default.red(`An error occurred while generating access tokens: ${e?.message||String(e)}`)),this.process.exit(1)}}exports.generateAccessTokens=l;
2
- //# sourceMappingURL=impl-J5fV8gbh.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,actions:r,origins:i,silentModeBefore:a,createdAtBefore:o,createdAtAfter:s,transcendUrl:c,concurrency:l}){t.t(this.process.exit),await e.J({transcendUrl:c,requestActions:r,auth:n,requestOrigins:i,concurrency:l,silentModeBefore:a,createdAtBefore:o,createdAtAfter:s})}exports.approve=n;
2
- //# sourceMappingURL=impl-NLEQuKnT.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"impl-NLEQuKnT.cjs","names":["approvePrivacyRequests"],"sources":["../src/commands/request/approve/impl.ts"],"sourcesContent":["import type { LocalContext } from '../../../context';\n\nimport { RequestAction, RequestOrigin } from '@transcend-io/privacy-types';\nimport { approvePrivacyRequests } from '../../../lib/requests';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation';\n\nexport interface ApproveCommandFlags {\n auth: string;\n actions: RequestAction[];\n origins?: RequestOrigin[];\n silentModeBefore?: Date;\n createdAtBefore?: Date;\n createdAtAfter?: Date;\n transcendUrl: string;\n concurrency: number;\n}\n\nexport async function approve(\n this: LocalContext,\n {\n auth,\n actions,\n origins,\n silentModeBefore,\n createdAtBefore,\n createdAtAfter,\n transcendUrl,\n concurrency,\n }: ApproveCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process.exit);\n\n await approvePrivacyRequests({\n transcendUrl,\n requestActions: actions,\n auth,\n requestOrigins: origins,\n concurrency,\n silentModeBefore,\n createdAtBefore,\n createdAtAfter,\n });\n}\n"],"mappings":"6QAiBA,eAAsB,EAEpB,CACE,OACA,UACA,UACA,mBACA,kBACA,iBACA,eACA,eAEa,CACf,EAAA,EAAoB,KAAK,QAAQ,KAAK,CAEtC,MAAMA,EAAAA,EAAuB,CAC3B,eACA,eAAgB,EAChB,OACA,eAAgB,EAChB,cACA,mBACA,kBACA,iBACD,CAAC"}
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./pooling-DbIx6-i7.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`node:fs`),o=require(`node:path`),s=require(`colors`);s=e.s(s);let c=require(`fast-csv`);c=e.s(c);let l=require(`node:events`),u=require(`node:fs/promises`),d=require(`node:stream/promises`),f=require(`node:stream`),p=require(`csv-parse`);function m(e,t){e||(n.t.error(s.default.red(`A --directory must be provided.`)),t.process.exit(1));let r=[];try{r=(0,a.readdirSync)(e).filter(e=>e.endsWith(`.csv`)).map(t=>(0,o.join)(e,t)).filter(e=>{try{return(0,a.statSync)(e).isFile()}catch{return!1}})}catch(r){n.t.error(s.default.red(`Failed to read directory: ${e}`)),n.t.error(s.default.red(r.message)),t.process.exit(1)}return r.length===0&&(n.t.error(s.default.red(`No CSV files found in directory: ${e}`)),t.process.exit(1)),n.t.info(s.default.green(`Found: ${r.join(`, `)} CSV files`)),r}function h(e,t){let n=(0,a.createWriteStream)(e),r=c.format({headers:t,writeHeaders:!0,objectMode:!0});return r.pipe(n),{async write(e){r.write(e)||await(0,l.once)(r,`drain`)},async end(){let e=Promise.all([(0,l.once)(n,`finish`)]);r.end(),await e}}}function g(e){return String(e).padStart(4,`0`)}function _(e){return Buffer.byteLength(Object.values(e).map(e=>e==null?``:String(e)).join(`,`),`utf8`)}async function v(e){let{filePath:t,outputDir:r,clearOutputDir:i,chunkSizeMB:c,onProgress:l,reportEveryMs:m=500}=e,{size:v}=await(0,u.stat)(t),y=0;n.t.info(s.default.magenta(`Chunking ${t} into ~${c}MB files...`));let b=Math.floor(c*1024*1024),x=(0,o.basename)(t,`.csv`),S=r||(0,o.dirname)(t);if(n.t.info(s.default.magenta(`Output directory: ${S}`)),await(0,u.mkdir)(S,{recursive:!0}),i){n.t.warn(s.default.yellow(`Clearing output directory: ${S}`));let e=await(0,u.readdir)(S);await Promise.all(e.filter(e=>e.startsWith(`${x}_chunk_`)&&e.endsWith(`.csv`)).map(e=>(0,u.unlink)((0,o.join)(S,e))))}let C=null,w=null,T=0,E=1,D=0,O=new p.Parser({columns:!1,skip_empty_lines:!0}),k=0,A=0,j=()=>{let e=A>0?k/A:0,t=e>0?Math.max(T,Math.ceil(v/e)):void 0;l(T,t),y=Date.now()};j();let M=null,N=()=>(0,o.join)(S,`${x}_chunk_${g(E)}.csv`),P=new f.Transform({objectMode:!0,async transform(e,t,r){try{if(!C){C=e.slice(0),w=C.length,M=h(N(),C),r();return}w!==null&&e.length!==w&&n.t.warn(s.default.yellow(`Row has ${e.length} cols; expected ${w}`)),T+=1,T%25e4==0&&l(T);let t=Object.fromEntries(C.map((t,n)=>[t,e[n]])),i=_(t);k+=i,A+=1,Date.now()-y>=m&&j(),M&&D>0&&D+i>b&&(await M.end(),E+=1,D=0,n.t.info(s.default.green(`Rolling to chunk ${E} after ${T.toLocaleString()} rows.`)),M=h(N(),C)),M||=h(N(),C),await M.write(t),D+=i,r()}catch(e){r(e)}},async flush(e){try{M&&=(await M.end(),null),j(),e()}catch(t){e(t)}}});await(0,d.pipeline)((0,a.createReadStream)(t),O,P),l(T),n.t.info(s.default.green(`Chunked ${t} into ${E} file(s); processed ${T.toLocaleString()} rows.`))}async function y(){let e=Number(process.env.WORKER_ID||`0`);n.t.info(`[w${e}] ready pid=${process.pid}`),process.send?.({type:`ready`}),process.on(`message`,async r=>{if(!r||typeof r!=`object`||(r.type===`shutdown`&&process.exit(0),r.type!==`task`))return;let{filePath:i,options:a}=r.payload,{outputDir:o,clearOutputDir:s,chunkSizeMB:c}=a;try{await v({filePath:i,outputDir:o,clearOutputDir:s,chunkSizeMB:c,onProgress:(e,t)=>process.send?.({type:`progress`,payload:{filePath:i,processed:e,total:t}})}),process.send?.({type:`result`,payload:{ok:!0,filePath:i}})}catch(r){let a=t.O(r);n.t.error(`[w${e}] ERROR ${i}: ${a}`),process.send?.({type:`result`,payload:{ok:!1,filePath:i,error:a}})}}),await new Promise(()=>{})}function b(e){return r.r(e)}function x(e){return r.i(e)}const S={renderHeader:b,renderWorkers:x};function C(){return typeof __filename<`u`?__filename:process.argv[1]}async function w(e){i.t(this.process.exit);let{directory:t,outputDir:a,clearOutputDir:o,chunkSizeMB:c,concurrency:l,viewerMode:u}=e,d=m(t,this),{poolSize:f,cpuCount:p}=r.s(l,d.length);n.t.info(s.default.green(`Chunking ${d.length} CSV file(s) with pool size ${f} (CPU=${p})`));let h=d.map(e=>({filePath:e,options:{outputDir:a,clearOutputDir:o,chunkSizeMB:c}}));await r.n({title:`Chunk CSV - ${t}`,baseDir:t||a||process.cwd(),childFlag:r.o,childModulePath:C(),poolSize:f,cpuCount:p,filesTotal:d.length,hooks:{nextTask:()=>h.shift(),taskLabel:e=>e.filePath,initTotals:()=>({}),initSlotProgress:()=>void 0,onProgress:e=>e,onResult:(e,t)=>({totals:e,ok:!!t.ok}),postProcess:async()=>{}},viewerMode:u,render:e=>r.a(e,S,u),extraKeyHandler:({logsBySlot:e,repaint:t,setPaused:n})=>r.t({logsBySlot:e,repaint:t,setPaused:n})})}process.argv.includes(r.o)&&y().catch(e=>{n.t.error(e),process.exit(1)}),exports.chunkCsv=w;
2
- //# sourceMappingURL=impl-SkiG9sWb.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./cron-ClvgH2uD.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`colors`);a=e.s(a);async function o({file:e,transcendUrl:o,auth:s,sombraAuth:c,dataSiloId:l,actions:u,pageLimit:d,skipRequestCount:f,chunkSize:p}){f&&n.t.info(a.default.yellow(`Skipping request count as requested. This may help speed up the call.`)),(Number.isNaN(p)||p<=0||p%d!==0)&&(n.t.error(a.default.red(`Invalid chunk size: "${p}". Must be a positive integer that is a multiple of ${d}.`)),this.process.exit(1)),i.t(this.process.exit);let{baseName:m,extension:h}=t.c(e),g=0;await r.t({transcendUrl:o,apiPageSize:d,savePageSize:p,onSave:async e=>{let r=`${m}-${g}${h}`;return n.t.info(a.default.blue(`Saving ${e.length} identifiers to file "${r}"`)),await t.d(r,e,t.Ds(e.map(e=>Object.keys(e)).flat())),n.t.info(a.default.green(`Successfully wrote ${e.length} identifiers to file "${r}"`)),g+=1,Promise.resolve()},actions:u,auth:s,sombraAuth:c,dataSiloId:l,skipRequestCount:f})}exports.pullIdentifiers=o;
2
- //# sourceMappingURL=impl-_dGu54cO.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./done-input-validation-Cgk5kNBs.cjs`),i=require(`./preference-management-Dapt3Li3.cjs`);let a=require(`colors`);a=e.s(a);const o=[`userId`,`timestamp`,`partition`,`decryptionStatus`,`updatedAt`,`usp`,`gpp`,`tcf`,`airgapVersion`,`metadata`,`metadataTimestamp`];async function s({auth:e,partition:s,sombraAuth:c,file:l,transcendUrl:u,timestampBefore:d,timestampAfter:f,updatedBefore:p,updatedAfter:m,identifiers:h=[],concurrency:g,shouldChunk:_,windowConcurrency:v,maxChunks:y,exportIdentifiersWithDelimiter:b,maxLookbackDays:x}){r.t(this.process.exit);let S=await t.ei(u,e,c),C=t.ti(u,e),w=h.map(e=>{if(!e.includes(`:`))return{name:`email`,value:e};let[t,n]=e.split(`:`);return{name:t,value:n}}),T={...d?{timestampBefore:d.toISOString()}:{},...f?{timestampAfter:f.toISOString()}:{},...m||p?{system:{...p?{updatedBefore:p.toISOString()}:{},...m?{updatedAfter:m.toISOString()}:{}}}:{},...w.length>0?{identifiers:w}:{}};n.t.info(`Fetching consent preferences from partition ${s}, using mode=${_?`chunked-stream`:`paged-stream`}...`),n.t.info(a.default.magenta(`Preparing CSV at: ${l}`));let[E,D]=await Promise.all([t._r(C),t.n(C)]),O=D.map(e=>e.name),k=Array.from(new Set(E.flatMap(e=>e.topics?.map(t=>`${e.trackingType}_${t.slug}`)??[]))).sort((e,t)=>e.localeCompare(t)),A=Array.from(new Set(E.map(e=>e.trackingType))).sort((e,t)=>e.localeCompare(t)),j=[...o,...O,...A,...k],M=null,N=!1,P=e=>{if(!e||e.length===0)return;let n=e.map(e=>i.i(e,b));if(!N){let e=Object.keys(n[0]??{}),r=new Set;M=[...j,...e].filter(e=>e===void 0||r.has(e)?!1:(r.add(e),!0)),t.s(l,M),N=!0}t.a(l,n,M)};if(_){await i.r(S,{partition:s,filterBy:T,limit:g,windowConcurrency:v,maxChunks:y,maxLookbackDays:x,onItems:e=>P(e)}),n.t.info(a.default.green(`Finished writing CSV to ${l}`));return}await i.n(S,{partition:s,filterBy:T,limit:g,onItems:e=>P(e)}),n.t.info(a.default.green(`Finished writing CSV to ${l}`))}exports.pullConsentPreferences=s;
2
- //# sourceMappingURL=impl-ay7i0K_5.cjs.map
@@ -1,2 +0,0 @@
1
- const e=require(`./enums-CBXlBJii.cjs`);require(`./constants-JoCDv9ym.cjs`);const t=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`),n=require(`./logger-BaHHbWVd.cjs`);require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const r=require(`./cron-ClvgH2uD.cjs`),i=require(`./done-input-validation-Cgk5kNBs.cjs`);let a=require(`colors`);a=e.s(a);let o=require(`io-ts`);o=e.s(o);const s=o.type({"Request Id":o.string});async function c({auth:e,dataSiloId:o,file:c,transcendUrl:l}){i.t(this.process.exit),n.t.info(a.default.magenta(`Reading "${c}" from disk`)),await r.n({requestIds:t.oi(c,s).map(e=>e[`Request Id`]),transcendUrl:l,auth:e,dataSiloId:o})}exports.markRequestDataSilosCompleted=c;
2
- //# sourceMappingURL=impl-cfDtPbS9.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,dataSiloId:r,actions:i,transcendUrl:a}){t.t(this.process.exit),await e.L({requestActions:i,transcendUrl:a,auth:n,dataSiloId:r})}exports.retryRequestDataSilos=n;
2
- //# sourceMappingURL=impl-hGu8uCC4.cjs.map
@@ -1,2 +0,0 @@
1
- require(`./enums-CBXlBJii.cjs`),require(`./constants-JoCDv9ym.cjs`);const e=require(`./syncConfigurationToTranscend-D4PLA70C.cjs`);require(`./logger-BaHHbWVd.cjs`),require(`./buildAIIntegrationType-n_Qlv8wG.cjs`);const t=require(`./done-input-validation-Cgk5kNBs.cjs`);async function n({auth:n,dataSiloId:r,status:i,statuses:a,transcendUrl:o}){t.t(this.process.exit),await e.F({transcendUrl:o,auth:n,status:i,dataSiloId:r,requestStatuses:a})}exports.skipRequestDataSilos=n;
2
- //# sourceMappingURL=impl-yHutqfbd.cjs.map