@transcend-io/cli 13.0.5 → 13.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/{app-DQ5b5mys.mjs → app-CO1O5Hkp.mjs} +16 -16
- package/dist/{app-DQ5b5mys.mjs.map → app-CO1O5Hkp.mjs.map} +1 -1
- package/dist/{approvePrivacyRequests-O70eyhdH.mjs → approvePrivacyRequests-Dp391N0W.mjs} +2 -2
- package/dist/{approvePrivacyRequests-O70eyhdH.mjs.map → approvePrivacyRequests-Dp391N0W.mjs.map} +1 -1
- package/dist/bin/bash-complete.mjs +1 -1
- package/dist/bin/cli.mjs +1 -1
- package/dist/bin/deprecated-command.mjs +1 -1
- package/dist/{buildExamples-BsMXuFwm.mjs → buildExamples-CFmrB0Ib.mjs} +2 -2
- package/dist/{buildExamples-BsMXuFwm.mjs.map → buildExamples-CFmrB0Ib.mjs.map} +1 -1
- package/dist/{buildXdiSyncEndpoint-CRJSuwdq.mjs → buildXdiSyncEndpoint-ClifAojB.mjs} +2 -2
- package/dist/{buildXdiSyncEndpoint-CRJSuwdq.mjs.map → buildXdiSyncEndpoint-ClifAojB.mjs.map} +1 -1
- package/dist/{bulkRestartRequests-C9cHasoq.mjs → bulkRestartRequests-CiBW6ccP.mjs} +2 -2
- package/dist/bulkRestartRequests-CiBW6ccP.mjs.map +1 -0
- package/dist/{bulkRetryEnrichers-BLDtr5Ws.mjs → bulkRetryEnrichers-CeJbLkVa.mjs} +2 -2
- package/dist/{bulkRetryEnrichers-BLDtr5Ws.mjs.map → bulkRetryEnrichers-CeJbLkVa.mjs.map} +1 -1
- package/dist/{cancelPrivacyRequests-DSjAUS5b.mjs → cancelPrivacyRequests-DHUjIs6Q.mjs} +2 -2
- package/dist/{cancelPrivacyRequests-DSjAUS5b.mjs.map → cancelPrivacyRequests-DHUjIs6Q.mjs.map} +1 -1
- package/dist/{command-DB0ydG0y.mjs → command-CW2zzyZv.mjs} +2 -2
- package/dist/{command-DB0ydG0y.mjs.map → command-CW2zzyZv.mjs.map} +1 -1
- package/dist/{constants-ZX8RSZos.mjs → constants-COP23kS1.mjs} +2 -2
- package/dist/{constants-ZX8RSZos.mjs.map → constants-COP23kS1.mjs.map} +1 -1
- package/dist/{createPoolingCommandUi-Bj6pO1t7.mjs → createPoolingCommandUi-C1LcY1pb.mjs} +2 -2
- package/dist/{createPoolingCommandUi-Bj6pO1t7.mjs.map → createPoolingCommandUi-C1LcY1pb.mjs.map} +1 -1
- package/dist/{downloadPrivacyRequestFiles-DKRfQoAo.mjs → downloadPrivacyRequestFiles-BWzpebA9.mjs} +2 -2
- package/dist/downloadPrivacyRequestFiles-BWzpebA9.mjs.map +1 -0
- package/dist/extractClientError-BQgmnp3e.mjs.map +1 -1
- package/dist/{generateCrossAccountApiKeys-BnUQ_wCI.mjs → generateCrossAccountApiKeys-CySsayKo.mjs} +2 -2
- package/dist/{generateCrossAccountApiKeys-BnUQ_wCI.mjs.map → generateCrossAccountApiKeys-CySsayKo.mjs.map} +1 -1
- package/dist/{impl-CcVNbgw3.mjs → impl-B-0sNsEl.mjs} +2 -2
- package/dist/{impl-CcVNbgw3.mjs.map → impl-B-0sNsEl.mjs.map} +1 -1
- package/dist/{impl-Do_3rQWz.mjs → impl-BEsnbaiX.mjs} +2 -2
- package/dist/{impl-Do_3rQWz.mjs.map → impl-BEsnbaiX.mjs.map} +1 -1
- package/dist/{impl-XbrQy_Ti2.mjs → impl-BH5iAw6H2.mjs} +2 -2
- package/dist/{impl-XbrQy_Ti2.mjs.map → impl-BH5iAw6H2.mjs.map} +1 -1
- package/dist/{impl-DJ5kJ80R.mjs → impl-BLXycY43.mjs} +2 -2
- package/dist/{impl-DJ5kJ80R.mjs.map → impl-BLXycY43.mjs.map} +1 -1
- package/dist/{impl-CFza6vNy.mjs → impl-BOxmt2GG.mjs} +2 -2
- package/dist/{impl-CFza6vNy.mjs.map → impl-BOxmt2GG.mjs.map} +1 -1
- package/dist/{impl-CWykfeDx.mjs → impl-BR8Hd6mv.mjs} +2 -2
- package/dist/{impl-CWykfeDx.mjs.map → impl-BR8Hd6mv.mjs.map} +1 -1
- package/dist/{impl-DHq2UBl4.mjs → impl-BV5F911e.mjs} +2 -2
- package/dist/{impl-DHq2UBl4.mjs.map → impl-BV5F911e.mjs.map} +1 -1
- package/dist/{impl-bWws4YDq.mjs → impl-BZ-3THtu.mjs} +2 -2
- package/dist/{impl-bWws4YDq.mjs.map → impl-BZ-3THtu.mjs.map} +1 -1
- package/dist/{impl-BAd2ga54.mjs → impl-B__KKiTX.mjs} +2 -2
- package/dist/{impl-BAd2ga54.mjs.map → impl-B__KKiTX.mjs.map} +1 -1
- package/dist/{impl-fmS5PIlk.mjs → impl-BcdEn3Fl.mjs} +2 -2
- package/dist/{impl-fmS5PIlk.mjs.map → impl-BcdEn3Fl.mjs.map} +1 -1
- package/dist/{impl-CihGggtZ.mjs → impl-Bi6LJASv.mjs} +2 -2
- package/dist/{impl-CihGggtZ.mjs.map → impl-Bi6LJASv.mjs.map} +1 -1
- package/dist/{impl-IQy1_4me.mjs → impl-BlpM1lXA.mjs} +2 -2
- package/dist/{impl-IQy1_4me.mjs.map → impl-BlpM1lXA.mjs.map} +1 -1
- package/dist/{impl-CeR4wR2T.mjs → impl-BodK3EBe.mjs} +2 -2
- package/dist/{impl-CeR4wR2T.mjs.map → impl-BodK3EBe.mjs.map} +1 -1
- package/dist/{impl-5s_Ya3XD.mjs → impl-C70SbLuM.mjs} +2 -2
- package/dist/{impl-5s_Ya3XD.mjs.map → impl-C70SbLuM.mjs.map} +1 -1
- package/dist/{impl-CXOLmyC1.mjs → impl-CDdfGdZS.mjs} +2 -2
- package/dist/{impl-CXOLmyC1.mjs.map → impl-CDdfGdZS.mjs.map} +1 -1
- package/dist/{impl-B7PA6_OB.mjs → impl-CFd4xBgL.mjs} +2 -2
- package/dist/{impl-B7PA6_OB.mjs.map → impl-CFd4xBgL.mjs.map} +1 -1
- package/dist/{impl-CIEPBjFF.mjs → impl-CUMgdqIK.mjs} +2 -2
- package/dist/{impl-CIEPBjFF.mjs.map → impl-CUMgdqIK.mjs.map} +1 -1
- package/dist/{impl-B_5zE1r4.mjs → impl-CVUB56mN.mjs} +2 -2
- package/dist/{impl-B_5zE1r4.mjs.map → impl-CVUB56mN.mjs.map} +1 -1
- package/dist/{impl-DEK7xark.mjs → impl-CW1o90oL.mjs} +2 -2
- package/dist/{impl-DEK7xark.mjs.map → impl-CW1o90oL.mjs.map} +1 -1
- package/dist/{impl-B8sKYzjF2.mjs → impl-CYHtZNqc2.mjs} +2 -2
- package/dist/{impl-B8sKYzjF2.mjs.map → impl-CYHtZNqc2.mjs.map} +1 -1
- package/dist/{impl-DQftQKzh.mjs → impl-CYmUc_vX.mjs} +2 -2
- package/dist/{impl-DQftQKzh.mjs.map → impl-CYmUc_vX.mjs.map} +1 -1
- package/dist/{impl-t0qVrVte.mjs → impl-Ce8auZ7z.mjs} +2 -2
- package/dist/{impl-t0qVrVte.mjs.map → impl-Ce8auZ7z.mjs.map} +1 -1
- package/dist/{impl-Bizz-Eku.mjs → impl-CnMcL9n5.mjs} +2 -2
- package/dist/{impl-Bizz-Eku.mjs.map → impl-CnMcL9n5.mjs.map} +1 -1
- package/dist/impl-CoqCyj7e.mjs.map +1 -1
- package/dist/{impl-C7oKqTBj.mjs → impl-CwrOulKa.mjs} +2 -2
- package/dist/{impl-C7oKqTBj.mjs.map → impl-CwrOulKa.mjs.map} +1 -1
- package/dist/{impl-DRmy2-be.mjs → impl-D68Cz0sq.mjs} +2 -2
- package/dist/{impl-DRmy2-be.mjs.map → impl-D68Cz0sq.mjs.map} +1 -1
- package/dist/{impl-CHq5HbuZ2.mjs → impl-D8k-pJS22.mjs} +2 -2
- package/dist/{impl-CHq5HbuZ2.mjs.map → impl-D8k-pJS22.mjs.map} +1 -1
- package/dist/{impl-BUziAyU5.mjs → impl-D9OTKDPp.mjs} +2 -2
- package/dist/{impl-BUziAyU5.mjs.map → impl-D9OTKDPp.mjs.map} +1 -1
- package/dist/{impl-BLX_G5bC.mjs → impl-DEIttGUr.mjs} +2 -2
- package/dist/{impl-BLX_G5bC.mjs.map → impl-DEIttGUr.mjs.map} +1 -1
- package/dist/{impl-CDB2WA0G.mjs → impl-DOwpJ0Di.mjs} +2 -2
- package/dist/{impl-CDB2WA0G.mjs.map → impl-DOwpJ0Di.mjs.map} +1 -1
- package/dist/{impl-COz--q8S.mjs → impl-DPpvHMjb.mjs} +2 -2
- package/dist/{impl-COz--q8S.mjs.map → impl-DPpvHMjb.mjs.map} +1 -1
- package/dist/{impl-DpLBWRCJ.mjs → impl-DemRJL6E.mjs} +2 -2
- package/dist/{impl-DpLBWRCJ.mjs.map → impl-DemRJL6E.mjs.map} +1 -1
- package/dist/{impl-CaPpiEL2.mjs → impl-DpDvrRiO.mjs} +2 -2
- package/dist/{impl-CaPpiEL2.mjs.map → impl-DpDvrRiO.mjs.map} +1 -1
- package/dist/{impl-B1TF4tzM2.mjs → impl-Ex1k8tmr2.mjs} +2 -2
- package/dist/{impl-B1TF4tzM2.mjs.map → impl-Ex1k8tmr2.mjs.map} +1 -1
- package/dist/impl-HsRwcfRu.mjs.map +1 -1
- package/dist/{impl-CPW2Q51W2.mjs → impl-Nw0Zse5L2.mjs} +2 -2
- package/dist/{impl-CPW2Q51W2.mjs.map → impl-Nw0Zse5L2.mjs.map} +1 -1
- package/dist/{impl-BOVkmW_l.mjs → impl-Ozpcz9ZU.mjs} +2 -2
- package/dist/{impl-BOVkmW_l.mjs.map → impl-Ozpcz9ZU.mjs.map} +1 -1
- package/dist/impl-WJBuS_0m.mjs.map +1 -1
- package/dist/{impl-77sXwCIh.mjs → impl-_iRsjm4-.mjs} +2 -2
- package/dist/{impl-77sXwCIh.mjs.map → impl-_iRsjm4-.mjs.map} +1 -1
- package/dist/{impl-tQda5dQ2.mjs → impl-jDN8J2nu.mjs} +2 -2
- package/dist/{impl-tQda5dQ2.mjs.map → impl-jDN8J2nu.mjs.map} +1 -1
- package/dist/{impl-DgMukyER.mjs → impl-lICSh559.mjs} +2 -2
- package/dist/{impl-DgMukyER.mjs.map → impl-lICSh559.mjs.map} +1 -1
- package/dist/{impl-BUMhJG9i.mjs → impl-tnFsm0_E.mjs} +2 -2
- package/dist/{impl-BUMhJG9i.mjs.map → impl-tnFsm0_E.mjs.map} +1 -1
- package/dist/index.d.mts +9 -7
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{markRequestDataSiloIdsCompleted-ZZvKQhtT.mjs → markRequestDataSiloIdsCompleted-8pyUnD96.mjs} +2 -2
- package/dist/{markRequestDataSiloIdsCompleted-ZZvKQhtT.mjs.map → markRequestDataSiloIdsCompleted-8pyUnD96.mjs.map} +1 -1
- package/dist/{markSilentPrivacyRequests-DZ13Jy20.mjs → markSilentPrivacyRequests-B0WgT7XH.mjs} +2 -2
- package/dist/{markSilentPrivacyRequests-DZ13Jy20.mjs.map → markSilentPrivacyRequests-B0WgT7XH.mjs.map} +1 -1
- package/dist/{notifyPrivacyRequestsAdditionalTime-BspmtrPe.mjs → notifyPrivacyRequestsAdditionalTime-CF_Q_gQB.mjs} +2 -2
- package/dist/{notifyPrivacyRequestsAdditionalTime-BspmtrPe.mjs.map → notifyPrivacyRequestsAdditionalTime-CF_Q_gQB.mjs.map} +1 -1
- package/dist/{policy-bundle-manifest-BKRoT17e.mjs → policy-bundle-manifest-C54mLUrx.mjs} +2 -2
- package/dist/{policy-bundle-manifest-BKRoT17e.mjs.map → policy-bundle-manifest-C54mLUrx.mjs.map} +1 -1
- package/dist/{policy-project-discovery-BXcvhfK7.mjs → policy-project-discovery-DhZ6dKNc.mjs} +2 -2
- package/dist/{policy-project-discovery-BXcvhfK7.mjs.map → policy-project-discovery-DhZ6dKNc.mjs.map} +1 -1
- package/dist/{policy-scaffold-config-DvyJctQz.mjs → policy-scaffold-config-DGq600jy.mjs} +2 -2
- package/dist/{policy-scaffold-config-DvyJctQz.mjs.map → policy-scaffold-config-DGq600jy.mjs.map} +1 -1
- package/dist/{pullChunkedCustomSiloOutstandingIdentifiers-CDHCpiXU.mjs → pullChunkedCustomSiloOutstandingIdentifiers-DDlLAT1E.mjs} +2 -2
- package/dist/pullChunkedCustomSiloOutstandingIdentifiers-DDlLAT1E.mjs.map +1 -0
- package/dist/{pullManualEnrichmentIdentifiersToCsv-BSM4bSjf.mjs → pullManualEnrichmentIdentifiersToCsv-CMdQpJhA.mjs} +2 -2
- package/dist/{pullManualEnrichmentIdentifiersToCsv-BSM4bSjf.mjs.map → pullManualEnrichmentIdentifiersToCsv-CMdQpJhA.mjs.map} +1 -1
- package/dist/{pushCronIdentifiersFromCsv-CnMWjt94.mjs → pushCronIdentifiersFromCsv-zG2hSmLe.mjs} +2 -2
- package/dist/pushCronIdentifiersFromCsv-zG2hSmLe.mjs.map +1 -0
- package/dist/{pushManualEnrichmentIdentifiersFromCsv-iv9Ts42q.mjs → pushManualEnrichmentIdentifiersFromCsv-BTNRsy1n.mjs} +2 -2
- package/dist/pushManualEnrichmentIdentifiersFromCsv-BTNRsy1n.mjs.map +1 -0
- package/dist/{removeUnverifiedRequestIdentifiers-Bo5U01oM.mjs → removeUnverifiedRequestIdentifiers-B-4jnuHJ.mjs} +2 -2
- package/dist/{removeUnverifiedRequestIdentifiers-Bo5U01oM.mjs.map → removeUnverifiedRequestIdentifiers-B-4jnuHJ.mjs.map} +1 -1
- package/dist/resolveBundleIdByName-D7NUOpLc.mjs.map +1 -1
- package/dist/resolvePolicyBundleVersion-CKbF9vqc.mjs.map +1 -1
- package/dist/{retryRequestDataSilos-BWGlpn1o.mjs → retryRequestDataSilos-4KK-YDFo.mjs} +2 -2
- package/dist/{retryRequestDataSilos-BWGlpn1o.mjs.map → retryRequestDataSilos-4KK-YDFo.mjs.map} +1 -1
- package/dist/{skipPreflightJobs-B0LSm9IU.mjs → skipPreflightJobs-CTAUtsAu.mjs} +2 -2
- package/dist/{skipPreflightJobs-B0LSm9IU.mjs.map → skipPreflightJobs-CTAUtsAu.mjs.map} +1 -1
- package/dist/{skipRequestDataSilos-EEaly2ls.mjs → skipRequestDataSilos-DhWSTG5Y.mjs} +2 -2
- package/dist/{skipRequestDataSilos-EEaly2ls.mjs.map → skipRequestDataSilos-DhWSTG5Y.mjs.map} +1 -1
- package/dist/{streamPrivacyRequestsToCsv-DUFu0-AB.mjs → streamPrivacyRequestsToCsv-BNGRUSGN.mjs} +2 -2
- package/dist/{streamPrivacyRequestsToCsv-DUFu0-AB.mjs.map → streamPrivacyRequestsToCsv-BNGRUSGN.mjs.map} +1 -1
- package/dist/{updateConsentManagerVersionToLatest-C4D6cqMh.mjs → updateConsentManagerVersionToLatest-sLQaEvXZ.mjs} +2 -2
- package/dist/{updateConsentManagerVersionToLatest-C4D6cqMh.mjs.map → updateConsentManagerVersionToLatest-sLQaEvXZ.mjs.map} +1 -1
- package/dist/{uploadConsents-CMTmdRLm.mjs → uploadConsents-DD5ZYsjA.mjs} +2 -2
- package/dist/{uploadConsents-CMTmdRLm.mjs.map → uploadConsents-DD5ZYsjA.mjs.map} +1 -1
- package/dist/{uploadPrivacyRequestsFromCsv-BIe_wJ4A.mjs → uploadPrivacyRequestsFromCsv-Dxep9tvI.mjs} +2 -2
- package/dist/{uploadPrivacyRequestsFromCsv-BIe_wJ4A.mjs.map → uploadPrivacyRequestsFromCsv-Dxep9tvI.mjs.map} +1 -1
- package/package.json +5 -5
- package/dist/bulkRestartRequests-C9cHasoq.mjs.map +0 -1
- package/dist/downloadPrivacyRequestFiles-DKRfQoAo.mjs.map +0 -1
- package/dist/pullChunkedCustomSiloOutstandingIdentifiers-CDHCpiXU.mjs.map +0 -1
- package/dist/pushCronIdentifiersFromCsv-CnMWjt94.mjs.map +0 -1
- package/dist/pushManualEnrichmentIdentifiersFromCsv-iv9Ts42q.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impl-
|
|
1
|
+
{"version":3,"file":"impl-jDN8J2nu.mjs","names":[],"sources":["../src/commands/request/cancel/impl.ts"],"sourcesContent":["import { RequestAction, RequestStatus } from '@transcend-io/privacy-types';\n\nimport type { LocalContext } from '../../../context.js';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation.js';\nimport { cancelPrivacyRequests } from '../../../lib/requests/index.js';\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 updatedAtBefore?: Date;\n updatedAtAfter?: 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 updatedAtBefore,\n updatedAtAfter,\n cancellationTitle,\n transcendUrl,\n concurrency,\n }: CancelCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process);\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 updatedAtBefore: updatedAtBefore ? new Date(updatedAtBefore) : undefined,\n updatedAtAfter: updatedAtAfter ? new Date(updatedAtAfter) : undefined,\n });\n}\n"],"mappings":"6GAqBA,eAAsB,EAEpB,CACE,OACA,UACA,WAAW,EAAE,CACb,aACA,mBACA,kBACA,iBACA,kBACA,iBACA,oBACA,eACA,eAEa,CACf,EAAoB,KAAK,QAAQ,CAEjC,MAAM,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,GAC5D,gBAAiB,EAAkB,IAAI,KAAK,EAAgB,CAAG,IAAA,GAC/D,eAAgB,EAAiB,IAAI,KAAK,EAAe,CAAG,IAAA,GAC7D,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e,n as t,t as n}from"./policy-project-discovery-
|
|
2
|
-
//# sourceMappingURL=impl-
|
|
1
|
+
import{i as e,n as t,t as n}from"./policy-project-discovery-DhZ6dKNc.mjs";import{n as r,r as i}from"./runOpa-ojIqU1tO.mjs";import{t as a}from"./done-input-validation-LiTaCEzF.mjs";import o from"node:path";import s from"colors";async function c({format:c,verbose:l,run:u,coverage:d,threshold:f,timeout:p,"var-values":m,explain:h,schema:g,"exit-zero-on-skipped":_},v=n){a(this.process),i();let y=e(this.process.cwd(),v);if(!this.fs.existsSync(y)||!this.fs.statSync(y).isDirectory())throw Error(`Policy directory does not exist or is not a directory: ${y}`);if(f!==void 0&&!d)throw Error(`--threshold requires --coverage.`);if(f!==void 0){let e=Number(f);if(!Number.isFinite(e)||e<0||e>100)throw Error(`--threshold must be a number between 0 and 100, got: ${f}`)}let b=g?o.resolve(this.process.cwd(),g):void 0;if(b&&!this.fs.existsSync(b))throw Error(`Schema path not found: ${b}`);let x=t(this,y);if(x.length===0)throw Error("No publishable policy bundles found. Add one with `transcend policy new`, or pass a directory that contains a `.manifest`.");for(let e of x){this.logger.info(s.green(`Running policy tests in ${e}...`));let t=await r([`test`,`--fail-on-empty`,`-b`,e,`--format`,c,...l?[`--verbose`]:[],...u?[`--run`,u]:[],...d?[`--coverage`]:[],...f===void 0?[]:[`--threshold`,f],...p?[`--timeout`,p]:[],...m?[`--var-values`]:[],...h?[`--explain`,h]:[],...b?[`--schema`,b]:[],..._?[`--exit-zero-on-skipped`]:[]]);t!==0&&this.process.exit(t)}this.logger.info(s.green(`Policy tests passed.`))}export{c as test};
|
|
2
|
+
//# sourceMappingURL=impl-lICSh559.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impl-
|
|
1
|
+
{"version":3,"file":"impl-lICSh559.mjs","names":[],"sources":["../src/commands/policy/test/impl.ts"],"sourcesContent":["import path from 'node:path';\n\nimport colors from 'colors';\n\nimport type { LocalContext } from '../../../context.js';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation.js';\nimport {\n DEFAULT_POLICY_PROJECT_DIRECTORY,\n discoverPolicyBundleDirectories,\n resolvePolicyProjectDirectory,\n} from '../../../lib/policy/policy-project-discovery.js';\nimport { assertOpaInstalled, runOpa } from '../helpers/index.js';\nimport type { PolicyTestExplainMode, PolicyTestFormat } from './command.js';\n\n/** CLI flags for `transcend policy test`. */\nexport interface TestCommandFlags {\n /** `opa test --format` value. */\n format: PolicyTestFormat;\n /** `opa test --verbose`. */\n verbose: boolean;\n /** Optional `opa test --run` regex. */\n run?: string;\n /** `opa test --coverage`. */\n coverage: boolean;\n /** Optional `opa test --threshold` coverage percent. */\n threshold?: string;\n /** Optional `opa test --timeout` duration. */\n timeout?: string;\n /** `opa test --var-values`. */\n 'var-values': boolean;\n /** Optional `opa test --explain` mode. */\n explain?: PolicyTestExplainMode;\n /** Optional `opa test --schema` path. */\n schema?: string;\n /** `opa test --exit-zero-on-skipped`. */\n 'exit-zero-on-skipped': boolean;\n}\n\n/**\n * Run OPA tests against local policy bundles.\n *\n * With no directory (or the default workspace path), discovers every immediate\n * child that contains a `.manifest` and tests each. Pass one bundle path to\n * test a single publishable unit.\n *\n * @param this - CLI context\n * @param flags - Command flags\n * @param directory - Policy workspace or bundle directory\n */\nexport async function test(\n this: LocalContext,\n {\n format,\n verbose,\n run,\n coverage,\n threshold,\n timeout,\n 'var-values': varValues,\n explain,\n schema,\n 'exit-zero-on-skipped': exitZeroOnSkipped,\n }: TestCommandFlags,\n directory: string = DEFAULT_POLICY_PROJECT_DIRECTORY,\n): Promise<void> {\n doneInputValidation(this.process);\n\n assertOpaInstalled();\n const resolvedDir = resolvePolicyProjectDirectory(this.process.cwd(), directory);\n if (!this.fs.existsSync(resolvedDir) || !this.fs.statSync(resolvedDir).isDirectory()) {\n throw new Error(`Policy directory does not exist or is not a directory: ${resolvedDir}`);\n }\n\n if (threshold !== undefined && !coverage) {\n throw new Error('--threshold requires --coverage.');\n }\n if (threshold !== undefined) {\n const parsed = Number(threshold);\n if (!Number.isFinite(parsed) || parsed < 0 || parsed > 100) {\n throw new Error(`--threshold must be a number between 0 and 100, got: ${threshold}`);\n }\n }\n\n const schemaPath = schema ? path.resolve(this.process.cwd(), schema) : undefined;\n if (schemaPath && !this.fs.existsSync(schemaPath)) {\n throw new Error(`Schema path not found: ${schemaPath}`);\n }\n\n const bundleDirectories = discoverPolicyBundleDirectories(this, resolvedDir);\n if (bundleDirectories.length === 0) {\n throw new Error(\n 'No publishable policy bundles found. Add one with `transcend policy new`, ' +\n 'or pass a directory that contains a `.manifest`.',\n );\n }\n\n for (const bundleDirectory of bundleDirectories) {\n this.logger.info(colors.green(`Running policy tests in ${bundleDirectory}...`));\n const exitCode = await runOpa([\n 'test',\n '--fail-on-empty',\n '-b',\n bundleDirectory,\n '--format',\n format,\n ...(verbose ? ['--verbose'] : []),\n ...(run ? ['--run', run] : []),\n ...(coverage ? ['--coverage'] : []),\n ...(threshold !== undefined ? ['--threshold', threshold] : []),\n ...(timeout ? ['--timeout', timeout] : []),\n ...(varValues ? ['--var-values'] : []),\n ...(explain ? ['--explain', explain] : []),\n ...(schemaPath ? ['--schema', schemaPath] : []),\n ...(exitZeroOnSkipped ? ['--exit-zero-on-skipped'] : []),\n ]);\n if (exitCode !== 0) {\n this.process.exit(exitCode);\n }\n }\n\n this.logger.info(colors.green('Policy tests passed.'));\n}\n"],"mappings":"mOAiDA,eAAsB,EAEpB,CACE,SACA,UACA,MACA,WACA,YACA,UACA,aAAc,EACd,UACA,SACA,uBAAwB,GAE1B,EAAoB,EACL,CACf,EAAoB,KAAK,QAAQ,CAEjC,GAAoB,CACpB,IAAM,EAAc,EAA8B,KAAK,QAAQ,KAAK,CAAE,EAAU,CAChF,GAAI,CAAC,KAAK,GAAG,WAAW,EAAY,EAAI,CAAC,KAAK,GAAG,SAAS,EAAY,CAAC,aAAa,CAClF,MAAU,MAAM,0DAA0D,IAAc,CAG1F,GAAI,IAAc,IAAA,IAAa,CAAC,EAC9B,MAAU,MAAM,mCAAmC,CAErD,GAAI,IAAc,IAAA,GAAW,CAC3B,IAAM,EAAS,OAAO,EAAU,CAChC,GAAI,CAAC,OAAO,SAAS,EAAO,EAAI,EAAS,GAAK,EAAS,IACrD,MAAU,MAAM,wDAAwD,IAAY,CAIxF,IAAM,EAAa,EAAS,EAAK,QAAQ,KAAK,QAAQ,KAAK,CAAE,EAAO,CAAG,IAAA,GACvE,GAAI,GAAc,CAAC,KAAK,GAAG,WAAW,EAAW,CAC/C,MAAU,MAAM,0BAA0B,IAAa,CAGzD,IAAM,EAAoB,EAAgC,KAAM,EAAY,CAC5E,GAAI,EAAkB,SAAW,EAC/B,MAAU,MACR,6HAED,CAGH,IAAK,IAAM,KAAmB,EAAmB,CAC/C,KAAK,OAAO,KAAK,EAAO,MAAM,2BAA2B,EAAgB,KAAK,CAAC,CAC/E,IAAM,EAAW,MAAM,EAAO,CAC5B,OACA,kBACA,KACA,EACA,WACA,EACA,GAAI,EAAU,CAAC,YAAY,CAAG,EAAE,CAChC,GAAI,EAAM,CAAC,QAAS,EAAI,CAAG,EAAE,CAC7B,GAAI,EAAW,CAAC,aAAa,CAAG,EAAE,CAClC,GAAI,IAAc,IAAA,GAAyC,EAAE,CAA/B,CAAC,cAAe,EAAU,CACxD,GAAI,EAAU,CAAC,YAAa,EAAQ,CAAG,EAAE,CACzC,GAAI,EAAY,CAAC,eAAe,CAAG,EAAE,CACrC,GAAI,EAAU,CAAC,YAAa,EAAQ,CAAG,EAAE,CACzC,GAAI,EAAa,CAAC,WAAY,EAAW,CAAG,EAAE,CAC9C,GAAI,EAAoB,CAAC,yBAAyB,CAAG,EAAE,CACxD,CAAC,CACE,IAAa,GACf,KAAK,QAAQ,KAAK,EAAS,CAI/B,KAAK,OAAO,KAAK,EAAO,MAAM,uBAAuB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./constants-
|
|
2
|
-
//# sourceMappingURL=impl-
|
|
1
|
+
import{t as e}from"./constants-COP23kS1.mjs";import{t}from"./logger-CPu6zbyQ.mjs";import{n}from"./syncCodePackages-DJnrcX5l.mjs";import{t as r}from"./done-input-validation-LiTaCEzF.mjs";import{t as i}from"./constants-DC_bBO09.mjs";import a from"colors";import o from"fast-glob";import{getEntries as s}from"@transcend-io/type-utils";import{buildTranscendGraphQLClient as c}from"@transcend-io/sdk";import{execSync as l}from"child_process";async function u({scanPath:e,ignoreDirs:n=[],repositoryName:r}){return(await Promise.all(s(i).map(async([i,s])=>{let{ignoreDirs:c,supportedFiles:l,scanFunction:u}=s,d=[...n,...c].filter(e=>e.length>0);try{let n=await o(`${e}/**/${l.join(`|`)}`,{ignore:d.map(t=>`${e}/**/${t}`),unique:!0,onlyFiles:!0});t.info(a.magenta(`Scanning: ${n.length} files of type ${i}`));let s=n.map(t=>u(t).map(n=>({...n,relativePath:t.replace(`${e}/`,``)}))).flat();return t.info(a.green(`Found: ${s.length} packages and ${s.map(({softwareDevelopmentKits:e=[]})=>e).flat().length} sdks`)),s.map(e=>({...e,type:i,repositoryName:r}))}catch(e){throw Error(`Error scanning globs ${l} with error: ${e}`)}}))).flat()}const d=`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 f({auth:t,scanPath:i,ignoreDirs:o,repositoryName:s,transcendUrl:f}){r(this.process);let p=s;if(!p)try{let e=l(`cd ${i} && 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||(this.logger.error(a.red(d)),this.process.exit(1))}catch(e){this.logger.error(a.red(`${d} - Got error: ${e.message}`)),this.process.exit(1)}let m=c(f,t),h=await u({scanPath:i,ignoreDirs:o,repositoryName:p});await n(m,h);let g=new URL(e);g.pathname=`/code-scanning/code-packages`,this.logger.info(a.green(`Scan found ${h.length} packages at ${i}! View results at '${g.href}'`))}export{f as scanPackages};
|
|
2
|
+
//# sourceMappingURL=impl-tnFsm0_E.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impl-
|
|
1
|
+
{"version":3,"file":"impl-tnFsm0_E.mjs","names":[],"sources":["../src/lib/code-scanning/findCodePackagesInFolder.ts","../src/commands/inventory/scan-packages/impl.ts"],"sourcesContent":["import { getEntries } from '@transcend-io/type-utils';\nimport colors from 'colors';\nimport fastGlob from 'fast-glob';\n\nimport { CodePackageInput } from '../../codecs.js';\nimport { logger } from '../../logger.js';\nimport { CODE_SCANNING_CONFIGS } from './constants.js';\n\n/**\n * Helper to scan and discovery all of the code packages within a folder\n *\n * @param options - Options\n * @returns the list of integrations\n */\nexport async function findCodePackagesInFolder({\n scanPath,\n ignoreDirs = [],\n repositoryName,\n}: {\n /** The name of the github repository reporting packages for */\n repositoryName: string;\n /** Where to look for package.json files */\n scanPath: string;\n /** The directories to ignore (excludes node_modules and serverless-build) */\n ignoreDirs?: string[];\n}): Promise<CodePackageInput[]> {\n const allCodePackages = await Promise.all(\n getEntries(CODE_SCANNING_CONFIGS).map(async ([codePackageType, config]) => {\n const { ignoreDirs: configIgnoreDirs, supportedFiles, scanFunction } = config;\n const dirsToIgnore = [...ignoreDirs, ...configIgnoreDirs].filter((dir) => dir.length > 0);\n try {\n const filesToScan: string[] = await fastGlob(`${scanPath}/**/${supportedFiles.join('|')}`, {\n ignore: dirsToIgnore.map((dir: string) => `${scanPath}/**/${dir}`),\n unique: true,\n onlyFiles: true,\n });\n logger.info(\n colors.magenta(`Scanning: ${filesToScan.length} files of type ${codePackageType}`),\n );\n const allPackages = filesToScan\n .map((filePath) =>\n scanFunction(filePath).map((result) => ({\n ...result,\n relativePath: filePath.replace(`${scanPath}/`, ''),\n })),\n )\n .flat();\n logger.info(\n colors.green(\n `Found: ${allPackages.length} packages and ${\n allPackages.map(({ softwareDevelopmentKits = [] }) => softwareDevelopmentKits).flat()\n .length\n } sdks`,\n ),\n );\n\n return allPackages.map(\n (pkg): CodePackageInput => ({\n ...pkg,\n type: codePackageType,\n repositoryName,\n }),\n );\n } catch (error) {\n throw new Error(`Error scanning globs ${supportedFiles} with error: ${error}`);\n }\n }),\n );\n\n return allCodePackages.flat();\n}\n","import { execSync } from 'child_process';\n\nimport { buildTranscendGraphQLClient } from '@transcend-io/sdk';\nimport colors from 'colors';\n\nimport { ADMIN_DASH } from '../../../constants.js';\nimport type { LocalContext } from '../../../context.js';\nimport { doneInputValidation } from '../../../lib/cli/done-input-validation.js';\nimport { findCodePackagesInFolder } from '../../../lib/code-scanning/index.js';\nimport { syncCodePackages } from '../../../lib/graphql/index.js';\n\nconst REPO_ERROR =\n 'A repository name must be provided. ' +\n 'You can specify using --repositoryName=$REPO_NAME or by ensuring the ' +\n 'command \"git config --get remote.origin.url\" returns the name of the repository';\n\nexport interface ScanPackagesCommandFlags {\n auth: string;\n scanPath: string;\n ignoreDirs?: string[];\n repositoryName?: string;\n transcendUrl: string;\n}\n\nexport async function scanPackages(\n this: LocalContext,\n { auth, scanPath, ignoreDirs, repositoryName, transcendUrl }: ScanPackagesCommandFlags,\n): Promise<void> {\n doneInputValidation(this.process);\n\n // Ensure repository name is specified\n let gitRepositoryName = repositoryName;\n if (!gitRepositoryName) {\n try {\n const name = execSync(`cd ${scanPath} && git config --get remote.origin.url`);\n // Trim and parse the URL\n const url = name.toString('utf-8').trim();\n [gitRepositoryName] = !url.includes('https:')\n ? (url.split(':').pop() || '').split('.')\n : url.split('/').slice(3).join('/').split('.');\n if (!gitRepositoryName) {\n this.logger.error(colors.red(REPO_ERROR));\n this.process.exit(1);\n }\n } catch (err) {\n this.logger.error(colors.red(`${REPO_ERROR} - Got error: ${err.message}`));\n this.process.exit(1);\n }\n }\n\n // Create a GraphQL client\n const client = buildTranscendGraphQLClient(transcendUrl, auth);\n\n // Scan the codebase to discovery packages\n const results = await findCodePackagesInFolder({\n scanPath,\n ignoreDirs,\n repositoryName: gitRepositoryName,\n });\n\n // Report scan to Transcend\n await syncCodePackages(client, results);\n\n const newUrl = new URL(ADMIN_DASH);\n newUrl.pathname = '/code-scanning/code-packages';\n\n // Indicate success\n this.logger.info(\n colors.green(\n `Scan found ${results.length} packages at ${scanPath}! ` + `View results at '${newUrl.href}'`,\n ),\n );\n}\n"],"mappings":"qbAcA,eAAsB,EAAyB,CAC7C,WACA,aAAa,EAAE,CACf,kBAQ8B,CA4C9B,OAAO,MA3CuB,QAAQ,IACpC,EAAW,EAAsB,CAAC,IAAI,MAAO,CAAC,EAAiB,KAAY,CACzE,GAAM,CAAE,WAAY,EAAkB,iBAAgB,gBAAiB,EACjE,EAAe,CAAC,GAAG,EAAY,GAAG,EAAiB,CAAC,OAAQ,GAAQ,EAAI,OAAS,EAAE,CACzF,GAAI,CACF,IAAM,EAAwB,MAAM,EAAS,GAAG,EAAS,MAAM,EAAe,KAAK,IAAI,GAAI,CACzF,OAAQ,EAAa,IAAK,GAAgB,GAAG,EAAS,MAAM,IAAM,CAClE,OAAQ,GACR,UAAW,GACZ,CAAC,CACF,EAAO,KACL,EAAO,QAAQ,aAAa,EAAY,OAAO,iBAAiB,IAAkB,CACnF,CACD,IAAM,EAAc,EACjB,IAAK,GACJ,EAAa,EAAS,CAAC,IAAK,IAAY,CACtC,GAAG,EACH,aAAc,EAAS,QAAQ,GAAG,EAAS,GAAI,GAAG,CACnD,EAAE,CACJ,CACA,MAAM,CAUT,OATA,EAAO,KACL,EAAO,MACL,UAAU,EAAY,OAAO,gBAC3B,EAAY,KAAK,CAAE,0BAA0B,EAAE,IAAO,EAAwB,CAAC,MAAM,CAClF,OACJ,OACF,CACF,CAEM,EAAY,IAChB,IAA2B,CAC1B,GAAG,EACH,KAAM,EACN,iBACD,EACF,OACM,EAAO,CACd,MAAU,MAAM,wBAAwB,EAAe,eAAe,IAAQ,GAEhF,CACH,EAEsB,MAAM,CC1D/B,MAAM,EACJ,2LAYF,eAAsB,EAEpB,CAAE,OAAM,WAAU,aAAY,iBAAgB,gBAC/B,CACf,EAAoB,KAAK,QAAQ,CAGjC,IAAI,EAAoB,EACxB,GAAI,CAAC,EACH,GAAI,CAGF,IAAM,EAFO,EAAS,MAAM,EAAS,wCAErB,CAAC,SAAS,QAAQ,CAAC,MAAM,CACzC,CAAC,GAAsB,EAAI,SAAS,SAAS,CAEzC,EAAI,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,EAD3C,EAAI,MAAM,IAAI,CAAC,KAAK,EAAI,IAAI,MAAM,IAAI,CAEtC,IACH,KAAK,OAAO,MAAM,EAAO,IAAI,EAAW,CAAC,CACzC,KAAK,QAAQ,KAAK,EAAE,QAEf,EAAK,CACZ,KAAK,OAAO,MAAM,EAAO,IAAI,GAAG,EAAW,gBAAgB,EAAI,UAAU,CAAC,CAC1E,KAAK,QAAQ,KAAK,EAAE,CAKxB,IAAM,EAAS,EAA4B,EAAc,EAAK,CAGxD,EAAU,MAAM,EAAyB,CAC7C,WACA,aACA,eAAgB,EACjB,CAAC,CAGF,MAAM,EAAiB,EAAQ,EAAQ,CAEvC,IAAM,EAAS,IAAI,IAAI,EAAW,CAClC,EAAO,SAAW,+BAGlB,KAAK,OAAO,KACV,EAAO,MACL,cAAc,EAAQ,OAAO,eAAe,EAAS,qBAA0B,EAAO,KAAK,GAC5F,CACF"}
|
package/dist/index.d.mts
CHANGED
|
@@ -165,6 +165,7 @@ declare const TeamInput: t.IntersectionC<[t.TypeC<{
|
|
|
165
165
|
viewCustomFunction: unknown;
|
|
166
166
|
manageCustomFunction: unknown;
|
|
167
167
|
viewUsage: unknown;
|
|
168
|
+
executeLLMClassification: unknown;
|
|
168
169
|
}>>;
|
|
169
170
|
}>]>;
|
|
170
171
|
/** Type override */
|
|
@@ -87147,6 +87148,7 @@ declare const TranscendInput: t.PartialC<{
|
|
|
87147
87148
|
viewCustomFunction: unknown;
|
|
87148
87149
|
manageCustomFunction: unknown;
|
|
87149
87150
|
viewUsage: unknown;
|
|
87151
|
+
executeLLMClassification: unknown;
|
|
87150
87152
|
}>>;
|
|
87151
87153
|
}>]>>;
|
|
87152
87154
|
/**
|
|
@@ -178202,7 +178204,7 @@ type PrivacyRequestResponse = t.TypeOf<typeof PrivacyRequestResponse>;
|
|
|
178202
178204
|
* @param options - Additional options
|
|
178203
178205
|
* @returns Successfully submitted request
|
|
178204
178206
|
*/
|
|
178205
|
-
declare function submitPrivacyRequest(sombra: Got, input: PrivacyRequestInput, {
|
|
178207
|
+
declare function submitPrivacyRequest(sombra: Pick<Got, 'post'>, input: PrivacyRequestInput, {
|
|
178206
178208
|
details,
|
|
178207
178209
|
isTest,
|
|
178208
178210
|
emailIsVerified,
|
|
@@ -184418,7 +184420,7 @@ declare function getFileMetadataForPrivacyRequests(requests: Pick<PrivacyRequest
|
|
|
184418
184420
|
concurrency,
|
|
184419
184421
|
limit
|
|
184420
184422
|
}: {
|
|
184421
|
-
/** Sombra instance */sombra: Got
|
|
184423
|
+
/** Sombra instance */sombra: Pick<Got, 'get'>; /** Number of files to pull at once */
|
|
184422
184424
|
limit?: number; /** Concurrency limit for approving */
|
|
184423
184425
|
concurrency?: number;
|
|
184424
184426
|
}): Promise<[Pick<PrivacyRequest, 'id' | 'status'>, RequestFileMetadata[]][]>;
|
|
@@ -184439,7 +184441,7 @@ declare function streamPrivacyRequestFiles(fileMetadata: RequestFileMetadata[],
|
|
|
184439
184441
|
concurrency
|
|
184440
184442
|
}: {
|
|
184441
184443
|
/** Request ID for logging */requestId: string; /** Sombra got instance */
|
|
184442
|
-
sombra: Got
|
|
184444
|
+
sombra: Pick<Got, 'get'>; /** Handler on each file */
|
|
184443
184445
|
onFileDownloaded: (metadata: RequestFileMetadata, stream: Uint8Array) => void; /** Concurrent downloads at once */
|
|
184444
184446
|
concurrency?: number;
|
|
184445
184447
|
}): Promise<void>;
|
|
@@ -184553,7 +184555,7 @@ declare function bulkRestartRequests({
|
|
|
184553
184555
|
* @param input - Request input
|
|
184554
184556
|
* @returns Successfully submitted request
|
|
184555
184557
|
*/
|
|
184556
|
-
declare function restartPrivacyRequest(sombra: Got, request: PrivacyRequest, {
|
|
184558
|
+
declare function restartPrivacyRequest(sombra: Pick<Got, 'post'>, request: PrivacyRequest, {
|
|
184557
184559
|
sendEmailReceipt,
|
|
184558
184560
|
skipWaitingPeriod,
|
|
184559
184561
|
emailIsVerified,
|
|
@@ -185356,7 +185358,7 @@ type CronIdentifier = t.TypeOf<typeof CronIdentifier>;
|
|
|
185356
185358
|
* @param options - Additional options
|
|
185357
185359
|
* @returns Successfully submitted request
|
|
185358
185360
|
*/
|
|
185359
|
-
declare function pullCronPageOfIdentifiers(sombra: Got, {
|
|
185361
|
+
declare function pullCronPageOfIdentifiers(sombra: Pick<Got, 'get'>, {
|
|
185360
185362
|
dataSiloId,
|
|
185361
185363
|
limit,
|
|
185362
185364
|
offset,
|
|
@@ -185411,7 +185413,7 @@ type CronIdentifierPush = t.TypeOf<typeof CronIdentifierPush>;
|
|
|
185411
185413
|
* @param options - Additional options
|
|
185412
185414
|
* @returns Successfully submitted request, false if not in a state to update
|
|
185413
185415
|
*/
|
|
185414
|
-
declare function markCronIdentifierCompleted(sombra: Got, {
|
|
185416
|
+
declare function markCronIdentifierCompleted(sombra: Pick<Got, 'put'>, {
|
|
185415
185417
|
nonce,
|
|
185416
185418
|
identifier
|
|
185417
185419
|
}: CronIdentifierPush): Promise<boolean>;
|
|
@@ -185817,7 +185819,7 @@ type EnrichPrivacyRequest = t.TypeOf<typeof EnrichPrivacyRequest>;
|
|
|
185817
185819
|
* @param index - Index of request ID
|
|
185818
185820
|
* @returns True if enriched successfully, false if skipped, throws error if failed
|
|
185819
185821
|
*/
|
|
185820
|
-
declare function enrichPrivacyRequest(sombra: Got, {
|
|
185822
|
+
declare function enrichPrivacyRequest(sombra: Pick<Got, 'post'>, {
|
|
185821
185823
|
id: rawId,
|
|
185822
185824
|
...rest
|
|
185823
185825
|
}: EnrichPrivacyRequest, enricherId: string, index?: number): Promise<boolean>;
|