@transcend-io/cli 7.0.5 → 7.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/README.md +11 -4
  2. package/dist/bin/bash-complete.cjs +1 -1
  3. package/dist/bin/cli.cjs +1 -1
  4. package/dist/bin/deprecated-command.cjs +2 -2
  5. package/dist/{chunk-N27TJLBG.cjs → chunk-22FUPUQJ.cjs} +2 -2
  6. package/dist/{chunk-N27TJLBG.cjs.map → chunk-22FUPUQJ.cjs.map} +1 -1
  7. package/dist/{chunk-L7NHDBBN.cjs → chunk-2FBBA65B.cjs} +3 -3
  8. package/dist/{chunk-L7NHDBBN.cjs.map → chunk-2FBBA65B.cjs.map} +1 -1
  9. package/dist/{chunk-EUDUZQOO.cjs → chunk-2YSOUNTB.cjs} +4 -4
  10. package/dist/{chunk-EUDUZQOO.cjs.map → chunk-2YSOUNTB.cjs.map} +1 -1
  11. package/dist/{chunk-6W7CSPHF.cjs → chunk-3G7BOKG7.cjs} +3 -3
  12. package/dist/{chunk-6W7CSPHF.cjs.map → chunk-3G7BOKG7.cjs.map} +1 -1
  13. package/dist/{chunk-AWMP5TQB.cjs → chunk-4VUILSBX.cjs} +216 -163
  14. package/dist/chunk-4VUILSBX.cjs.map +1 -0
  15. package/dist/{chunk-XXVZA7HN.cjs → chunk-7EL5CRKO.cjs} +2 -2
  16. package/dist/{chunk-XXVZA7HN.cjs.map → chunk-7EL5CRKO.cjs.map} +1 -1
  17. package/dist/{chunk-X37NM7FZ.cjs → chunk-BJ4WK322.cjs} +19 -19
  18. package/dist/{chunk-X37NM7FZ.cjs.map → chunk-BJ4WK322.cjs.map} +1 -1
  19. package/dist/{chunk-TET6I2QK.cjs → chunk-DTYXOQNB.cjs} +2 -2
  20. package/dist/{chunk-TET6I2QK.cjs.map → chunk-DTYXOQNB.cjs.map} +1 -1
  21. package/dist/{chunk-UTG3LZO7.cjs → chunk-E2JQNQ2B.cjs} +2 -2
  22. package/dist/{chunk-UTG3LZO7.cjs.map → chunk-E2JQNQ2B.cjs.map} +1 -1
  23. package/dist/{chunk-RQWXNYMW.cjs → chunk-FHTJX3WX.cjs} +2 -2
  24. package/dist/{chunk-RQWXNYMW.cjs.map → chunk-FHTJX3WX.cjs.map} +1 -1
  25. package/dist/chunk-HVTVWP7K.cjs +2 -0
  26. package/dist/chunk-HVTVWP7K.cjs.map +1 -0
  27. package/dist/{chunk-SAEKBZGF.cjs → chunk-LCDYXJN6.cjs} +2 -2
  28. package/dist/{chunk-SAEKBZGF.cjs.map → chunk-LCDYXJN6.cjs.map} +1 -1
  29. package/dist/{chunk-XWMFHJGK.cjs → chunk-MS4WBSCZ.cjs} +2 -2
  30. package/dist/{chunk-XWMFHJGK.cjs.map → chunk-MS4WBSCZ.cjs.map} +1 -1
  31. package/dist/chunk-Q7I37FJV.cjs +2 -0
  32. package/dist/chunk-Q7I37FJV.cjs.map +1 -0
  33. package/dist/{chunk-YGAK4NBT.cjs → chunk-STKQW3E3.cjs} +2 -2
  34. package/dist/{chunk-YGAK4NBT.cjs.map → chunk-STKQW3E3.cjs.map} +1 -1
  35. package/dist/{chunk-QBBOYJ3O.cjs → chunk-T7B5NTGF.cjs} +2 -2
  36. package/dist/{chunk-QBBOYJ3O.cjs.map → chunk-T7B5NTGF.cjs.map} +1 -1
  37. package/dist/chunk-UWUR56CO.cjs +2 -0
  38. package/dist/chunk-UWUR56CO.cjs.map +1 -0
  39. package/dist/{chunk-NSKHXTBW.cjs → chunk-V73KHIHK.cjs} +2 -2
  40. package/dist/{chunk-NSKHXTBW.cjs.map → chunk-V73KHIHK.cjs.map} +1 -1
  41. package/dist/{chunk-K4QC24DY.cjs → chunk-XGO26OIM.cjs} +2 -2
  42. package/dist/{chunk-K4QC24DY.cjs.map → chunk-XGO26OIM.cjs.map} +1 -1
  43. package/dist/impl-26KL2AQB.cjs +2 -0
  44. package/dist/{impl-LDTQPPG4.cjs.map → impl-26KL2AQB.cjs.map} +1 -1
  45. package/dist/{impl-BMAMFZHY.cjs → impl-2CQCTBD2.cjs} +2 -2
  46. package/dist/{impl-BMAMFZHY.cjs.map → impl-2CQCTBD2.cjs.map} +1 -1
  47. package/dist/impl-4DVNH34T.cjs +2 -0
  48. package/dist/{impl-SPMWIV5D.cjs.map → impl-4DVNH34T.cjs.map} +1 -1
  49. package/dist/{impl-CVJ7ESYK.cjs → impl-6DGHS6VJ.cjs} +2 -2
  50. package/dist/{impl-CVJ7ESYK.cjs.map → impl-6DGHS6VJ.cjs.map} +1 -1
  51. package/dist/{impl-5TMNTUZT.cjs → impl-6N7KEKKE.cjs} +3 -3
  52. package/dist/{impl-5TMNTUZT.cjs.map → impl-6N7KEKKE.cjs.map} +1 -1
  53. package/dist/{impl-JG5TMU6H.cjs → impl-6OYCZRQ7.cjs} +2 -2
  54. package/dist/{impl-JG5TMU6H.cjs.map → impl-6OYCZRQ7.cjs.map} +1 -1
  55. package/dist/{impl-LZV3EW2T.cjs → impl-7F2KZRW5.cjs} +2 -2
  56. package/dist/{impl-LZV3EW2T.cjs.map → impl-7F2KZRW5.cjs.map} +1 -1
  57. package/dist/impl-7NGG2UXP.cjs +2 -0
  58. package/dist/{impl-4L4ETIBX.cjs.map → impl-7NGG2UXP.cjs.map} +1 -1
  59. package/dist/impl-A624VO2M.cjs +2 -0
  60. package/dist/{impl-IGRDFRB5.cjs.map → impl-A624VO2M.cjs.map} +1 -1
  61. package/dist/{impl-6FXWJOHN.cjs → impl-C7MMMEGG.cjs} +2 -2
  62. package/dist/{impl-6FXWJOHN.cjs.map → impl-C7MMMEGG.cjs.map} +1 -1
  63. package/dist/{impl-ZVQSMGTX.cjs → impl-DGWQ6Y7G.cjs} +5 -5
  64. package/dist/{impl-ZVQSMGTX.cjs.map → impl-DGWQ6Y7G.cjs.map} +1 -1
  65. package/dist/{impl-TGEXS5L4.cjs → impl-GEU5O3ZJ.cjs} +2 -2
  66. package/dist/{impl-TGEXS5L4.cjs.map → impl-GEU5O3ZJ.cjs.map} +1 -1
  67. package/dist/{impl-IXNKHZFW.cjs → impl-GRHNMCGI.cjs} +2 -2
  68. package/dist/{impl-IXNKHZFW.cjs.map → impl-GRHNMCGI.cjs.map} +1 -1
  69. package/dist/{impl-OCCJLM7J.cjs → impl-GY5C6LR2.cjs} +2 -2
  70. package/dist/{impl-OCCJLM7J.cjs.map → impl-GY5C6LR2.cjs.map} +1 -1
  71. package/dist/{impl-CD3OZA7N.cjs → impl-HPYFSR3X.cjs} +2 -2
  72. package/dist/{impl-CD3OZA7N.cjs.map → impl-HPYFSR3X.cjs.map} +1 -1
  73. package/dist/{impl-6FE4QJ4J.cjs → impl-IEKOU55S.cjs} +2 -2
  74. package/dist/{impl-6FE4QJ4J.cjs.map → impl-IEKOU55S.cjs.map} +1 -1
  75. package/dist/{impl-QQKQBRMF.cjs → impl-LZCXSUYN.cjs} +2 -2
  76. package/dist/{impl-QQKQBRMF.cjs.map → impl-LZCXSUYN.cjs.map} +1 -1
  77. package/dist/impl-N2M4B3CD.cjs +2 -0
  78. package/dist/{impl-6O3K3VET.cjs.map → impl-N2M4B3CD.cjs.map} +1 -1
  79. package/dist/{impl-DQN5SZPW.cjs → impl-NCEXVWU3.cjs} +2 -2
  80. package/dist/{impl-DQN5SZPW.cjs.map → impl-NCEXVWU3.cjs.map} +1 -1
  81. package/dist/impl-NDDSMUX6.cjs +2 -0
  82. package/dist/{impl-GNUG6ZDE.cjs.map → impl-NDDSMUX6.cjs.map} +1 -1
  83. package/dist/{impl-U2RBVO73.cjs → impl-NS5G5S3D.cjs} +2 -2
  84. package/dist/{impl-U2RBVO73.cjs.map → impl-NS5G5S3D.cjs.map} +1 -1
  85. package/dist/impl-NWAHIHPW.cjs +2 -0
  86. package/dist/{impl-YL6NFYNB.cjs.map → impl-NWAHIHPW.cjs.map} +1 -1
  87. package/dist/impl-O3424TEB.cjs +2 -0
  88. package/dist/{impl-6KCSMCD6.cjs.map → impl-O3424TEB.cjs.map} +1 -1
  89. package/dist/{impl-2JBFAO77.cjs → impl-P7MPXBR4.cjs} +2 -2
  90. package/dist/{impl-2JBFAO77.cjs.map → impl-P7MPXBR4.cjs.map} +1 -1
  91. package/dist/{impl-5VEW37CW.cjs → impl-PLMOOI5A.cjs} +4 -4
  92. package/dist/{impl-5VEW37CW.cjs.map → impl-PLMOOI5A.cjs.map} +1 -1
  93. package/dist/impl-Q5SIRPYG.cjs +2 -0
  94. package/dist/{impl-7HFUP3UR.cjs.map → impl-Q5SIRPYG.cjs.map} +1 -1
  95. package/dist/{impl-XK5I264J.cjs → impl-RIPB6B26.cjs} +2 -2
  96. package/dist/{impl-XK5I264J.cjs.map → impl-RIPB6B26.cjs.map} +1 -1
  97. package/dist/{impl-KE2PQIWC.cjs → impl-RLFZCZTL.cjs} +2 -2
  98. package/dist/{impl-KE2PQIWC.cjs.map → impl-RLFZCZTL.cjs.map} +1 -1
  99. package/dist/{impl-RKBK7S5H.cjs → impl-RWUZ7AHK.cjs} +2 -2
  100. package/dist/{impl-RKBK7S5H.cjs.map → impl-RWUZ7AHK.cjs.map} +1 -1
  101. package/dist/{impl-2ETA24UG.cjs → impl-RXMW5OPR.cjs} +6 -6
  102. package/dist/{impl-2ETA24UG.cjs.map → impl-RXMW5OPR.cjs.map} +1 -1
  103. package/dist/{impl-24MFRX5R.cjs → impl-U64CK4IR.cjs} +2 -2
  104. package/dist/{impl-24MFRX5R.cjs.map → impl-U64CK4IR.cjs.map} +1 -1
  105. package/dist/{impl-CL6KPZLE.cjs → impl-UIIEKRVI.cjs} +3 -3
  106. package/dist/{impl-CL6KPZLE.cjs.map → impl-UIIEKRVI.cjs.map} +1 -1
  107. package/dist/impl-WD6I2IMR.cjs +2 -0
  108. package/dist/{impl-KEOLBOR2.cjs.map → impl-WD6I2IMR.cjs.map} +1 -1
  109. package/dist/{impl-O2M7RVTK.cjs → impl-XR27ZBRD.cjs} +2 -2
  110. package/dist/{impl-O2M7RVTK.cjs.map → impl-XR27ZBRD.cjs.map} +1 -1
  111. package/dist/impl-Y57JWHDO.cjs +2 -0
  112. package/dist/{impl-DDY5QERH.cjs.map → impl-Y57JWHDO.cjs.map} +1 -1
  113. package/dist/impl-Y6OUBKKA.cjs +2 -0
  114. package/dist/{impl-QGSF3JGN.cjs.map → impl-Y6OUBKKA.cjs.map} +1 -1
  115. package/dist/{impl-3AJDNF67.cjs → impl-YU5XVOPI.cjs} +2 -2
  116. package/dist/{impl-3AJDNF67.cjs.map → impl-YU5XVOPI.cjs.map} +1 -1
  117. package/dist/impl-ZBWYJB63.cjs +2 -0
  118. package/dist/{impl-7Q5BF5OS.cjs.map → impl-ZBWYJB63.cjs.map} +1 -1
  119. package/dist/{impl-D5TZDNRA.cjs → impl-ZZQT62Y5.cjs} +2 -2
  120. package/dist/{impl-D5TZDNRA.cjs.map → impl-ZZQT62Y5.cjs.map} +1 -1
  121. package/dist/index.cjs +3 -3
  122. package/dist/index.cjs.map +1 -1
  123. package/dist/index.d.cts +30531 -3216
  124. package/package.json +4 -3
  125. package/dist/chunk-35HDA5WV.cjs +0 -2
  126. package/dist/chunk-35HDA5WV.cjs.map +0 -1
  127. package/dist/chunk-AWMP5TQB.cjs.map +0 -1
  128. package/dist/chunk-BY7W4UQF.cjs +0 -2
  129. package/dist/chunk-BY7W4UQF.cjs.map +0 -1
  130. package/dist/chunk-ZD2HOHJI.cjs +0 -2
  131. package/dist/chunk-ZD2HOHJI.cjs.map +0 -1
  132. package/dist/impl-4L4ETIBX.cjs +0 -2
  133. package/dist/impl-6KCSMCD6.cjs +0 -2
  134. package/dist/impl-6O3K3VET.cjs +0 -2
  135. package/dist/impl-7HFUP3UR.cjs +0 -2
  136. package/dist/impl-7Q5BF5OS.cjs +0 -2
  137. package/dist/impl-DDY5QERH.cjs +0 -2
  138. package/dist/impl-GNUG6ZDE.cjs +0 -2
  139. package/dist/impl-IGRDFRB5.cjs +0 -2
  140. package/dist/impl-KEOLBOR2.cjs +0 -2
  141. package/dist/impl-LDTQPPG4.cjs +0 -2
  142. package/dist/impl-QGSF3JGN.cjs +0 -2
  143. package/dist/impl-SPMWIV5D.cjs +0 -2
  144. package/dist/impl-YL6NFYNB.cjs +0 -2
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var _chunk35HDA5WVcjs = require('./chunk-35HDA5WV.cjs');var _chunkBY7W4UQFcjs = require('./chunk-BY7W4UQF.cjs');var _core = require('@stricli/core');var _privacytypes = require('@transcend-io/privacy-types');function h(e){if(!/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e))throw new Error(`Invalid UUID format: ${e}`);return e}function a(e){try{return new URL(e).toString().replace(/\/$/,"")}catch (e2){throw new Error(`Invalid URL format: ${e}`)}}function b(e){return e.split(",").map(r=>r.trim()).filter(r=>r.length>0)}function T(e){let r=new Date(e);if(Number.isNaN(r.getTime()))throw new TypeError(`Invalid date: ${e}. Try using the ISO 8601 format (YYYY-MM-DDTHH:MM:SS.SSSZ)`);return r}var l=({scopes:e,requiresSiloScope:r=!1})=>{let t={kind:"parsed",parse:String,brief:"The Transcend API key."};return r&&(t.brief+=" This key must be associated with the data silo(s) being operated on."),e==="Varies"?{...t,brief:`${t.brief} The scopes required will vary depending on the operation performed. If in doubt, the ${_privacytypes.TRANSCEND_SCOPES[_privacytypes.ScopeName.FullAdmin].title} scope will always work.`}:e.length===0?{...t,brief:`${t.brief} No scopes are required for this command.`}:{...t,brief:`${t.brief} Requires scopes: ${e.map(p=>`"${_privacytypes.TRANSCEND_SCOPES[p].title}"`).join(", ")}`}},d= exports.e =(e=_chunk35HDA5WVcjs.e)=>({kind:"parsed",parse:a,brief:"URL of the Transcend backend. Use https://api.us.transcend.io for US hosting",default:e}),A= exports.f =(e=_chunk35HDA5WVcjs.f)=>({kind:"parsed",parse:a,brief:"URL of the Transcend consent backend. Use https://consent.us.transcend.io for US hosting",default:e}),U= exports.g =()=>({kind:"parsed",parse:String,brief:"The Sombra internal key, use for additional authentication when self-hosting Sombra",optional:!0});var g=["dataSilos","enrichers","templates","apiKeys"],N= exports.i =Object.values(_privacytypes.ConsentTrackerStatus),L= exports.j =_core.buildCommand.call(void 0, {loader:async()=>{let{pull:e}=await Promise.resolve().then(() => _interopRequireWildcard(require("./impl-5TMNTUZT.cjs")));return e},parameters:{flags:{auth:l({scopes:"Varies"}),resources:{kind:"enum",values:["all",...Object.values(_chunkBY7W4UQFcjs.d)],brief:`The different resource types to pull in. Defaults to ${g.join(",")}.`,variadic:",",optional:!0},file:{kind:"parsed",parse:String,brief:"Path to the YAML file to pull into",default:"./transcend.yml"},transcendUrl:d(),dataSiloIds:{kind:"parsed",parse:String,variadic:",",brief:"The UUIDs of the data silos that should be pulled into the YAML file",optional:!0},integrationNames:{kind:"parsed",parse:String,variadic:",",brief:"The types of integrations to pull down",optional:!0},trackerStatuses:{kind:"enum",values:Object.values(_privacytypes.ConsentTrackerStatus),variadic:",",brief:"The statuses of consent manager trackers to pull down. Defaults to all statuses.",optional:!0},pageSize:{kind:"parsed",parse:_core.numberParser,brief:"The page size to use when paginating over the API",default:"50"},skipDatapoints:{kind:"boolean",brief:"When true, skip pulling in datapoints alongside data silo resource",default:!1},skipSubDatapoints:{kind:"boolean",brief:"When true, skip pulling in subDatapoints alongside data silo resource",default:!1},includeGuessedCategories:{kind:"boolean",brief:"When true, included guessed data categories that came from the content classifier",default:!1},debug:{kind:"boolean",brief:"Set to true to include debug logs while pulling the configuration",default:!1}}},docs:{brief:"Pull metadata from Transcend into transcend.yml",fullDescription:`Generates a transcend.yml by pulling the configuration from your Transcend instance.
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var _chunkHVTVWP7Kcjs = require('./chunk-HVTVWP7K.cjs');var _chunkQ7I37FJVcjs = require('./chunk-Q7I37FJV.cjs');var _core = require('@stricli/core');var _privacytypes = require('@transcend-io/privacy-types');function h(e){if(!/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e))throw new Error(`Invalid UUID format: ${e}`);return e}function a(e){try{return new URL(e).toString().replace(/\/$/,"")}catch (e2){throw new Error(`Invalid URL format: ${e}`)}}function b(e){return e.split(",").map(r=>r.trim()).filter(r=>r.length>0)}function T(e){let r=new Date(e);if(Number.isNaN(r.getTime()))throw new TypeError(`Invalid date: ${e}. Try using the ISO 8601 format (YYYY-MM-DDTHH:MM:SS.SSSZ)`);return r}var l=({scopes:e,requiresSiloScope:r=!1})=>{let t={kind:"parsed",parse:String,brief:"The Transcend API key."};return r&&(t.brief+=" This key must be associated with the data silo(s) being operated on."),e==="Varies"?{...t,brief:`${t.brief} The scopes required will vary depending on the operation performed. If in doubt, the ${_privacytypes.TRANSCEND_SCOPES[_privacytypes.ScopeName.FullAdmin].title} scope will always work.`}:e.length===0?{...t,brief:`${t.brief} No scopes are required for this command.`}:{...t,brief:`${t.brief} Requires scopes: ${e.map(p=>`"${_privacytypes.TRANSCEND_SCOPES[p].title}"`).join(", ")}`}},d= exports.e =(e=_chunkHVTVWP7Kcjs.e)=>({kind:"parsed",parse:a,brief:"URL of the Transcend backend. Use https://api.us.transcend.io for US hosting",default:e}),A= exports.f =(e=_chunkHVTVWP7Kcjs.f)=>({kind:"parsed",parse:a,brief:"URL of the Transcend consent backend. Use https://consent.us.transcend.io for US hosting",default:e}),U= exports.g =()=>({kind:"parsed",parse:String,brief:"The Sombra internal key, use for additional authentication when self-hosting Sombra",optional:!0});var g=["dataSilos","enrichers","templates","apiKeys"],N= exports.i =Object.values(_privacytypes.ConsentTrackerStatus),L= exports.j =_core.buildCommand.call(void 0, {loader:async()=>{let{pull:e}=await Promise.resolve().then(() => _interopRequireWildcard(require("./impl-6N7KEKKE.cjs")));return e},parameters:{flags:{auth:l({scopes:"Varies"}),resources:{kind:"enum",values:["all",...Object.values(_chunkQ7I37FJVcjs.d)],brief:`The different resource types to pull in. Defaults to ${g.join(",")}.`,variadic:",",optional:!0},file:{kind:"parsed",parse:String,brief:"Path to the YAML file to pull into",default:"./transcend.yml"},transcendUrl:d(),dataSiloIds:{kind:"parsed",parse:String,variadic:",",brief:"The UUIDs of the data silos that should be pulled into the YAML file",optional:!0},integrationNames:{kind:"parsed",parse:String,variadic:",",brief:"The types of integrations to pull down",optional:!0},trackerStatuses:{kind:"enum",values:Object.values(_privacytypes.ConsentTrackerStatus),variadic:",",brief:"The statuses of consent manager trackers to pull down. Defaults to all statuses.",optional:!0},pageSize:{kind:"parsed",parse:_core.numberParser,brief:"The page size to use when paginating over the API",default:"50"},skipDatapoints:{kind:"boolean",brief:"When true, skip pulling in datapoints alongside data silo resource",default:!1},skipSubDatapoints:{kind:"boolean",brief:"When true, skip pulling in subDatapoints alongside data silo resource",default:!1},includeGuessedCategories:{kind:"boolean",brief:"When true, included guessed data categories that came from the content classifier",default:!1},debug:{kind:"boolean",brief:"Set to true to include debug logs while pulling the configuration",default:!1}}},docs:{brief:"Pull metadata from Transcend into transcend.yml",fullDescription:`Generates a transcend.yml by pulling the configuration from your Transcend instance.
2
2
 
3
3
  The API key needs various scopes depending on the resources being pulled (see the CLI's README for more details).
4
4
 
@@ -6,4 +6,4 @@ This command can be helpful if you are looking to:
6
6
 
7
7
  - Copy your data into another instance
8
8
  - Generate a transcend.yml file as a starting point to maintain parts of your data inventory in code.`}});exports.a = h; exports.b = b; exports.c = T; exports.d = l; exports.e = d; exports.f = A; exports.g = U; exports.h = g; exports.i = N; exports.j = L;
9
- //# sourceMappingURL=chunk-RQWXNYMW.cjs.map
9
+ //# sourceMappingURL=chunk-FHTJX3WX.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-RQWXNYMW.cjs","../src/commands/inventory/pull/command.ts","../src/lib/cli/parsers.ts"],"names":["uuidParser","input"],"mappings":"AAAA,mZAA+C,wDAAyC,qCCA7C,2DACN,SCMrBA,CAAAA,CAAWC,CAAAA,CAAuB,CAGhD,EAAA,CAAI,CADF,4EAAA,CACa,IAAA,CAAKA,CAAK,CAAA,CACvB,MAAM,IAAI,KAAA,CAAM,CAAA,qBAAA,EAAwBA,CAAK,CAAA,CAAA;AD0F5B;AAAA;AAAA;AAAA;AAAA;AAAA;AASpB,qGAAA","file":"/home/runner/work/cli/cli/dist/chunk-RQWXNYMW.cjs","sourcesContent":[null,"import { buildCommand, numberParser } from '@stricli/core';\nimport { ConsentTrackerStatus } from '@transcend-io/privacy-types';\nimport {\n createAuthParameter,\n createTranscendUrlParameter,\n} from '../../../lib/cli/common-parameters';\nimport { TranscendPullResource } from '../../../enums';\n\nexport const DEFAULT_TRANSCEND_PULL_RESOURCES = [\n TranscendPullResource.DataSilos,\n TranscendPullResource.Enrichers,\n TranscendPullResource.Templates,\n TranscendPullResource.ApiKeys,\n];\n\nexport const DEFAULT_CONSENT_TRACKER_STATUSES =\n Object.values(ConsentTrackerStatus);\n\nexport const pullCommand = buildCommand({\n loader: async () => {\n const { pull } = await import('./impl');\n return pull;\n },\n parameters: {\n flags: {\n auth: createAuthParameter({\n scopes: 'Varies',\n }),\n resources: {\n kind: 'enum',\n values: ['all', ...Object.values(TranscendPullResource)],\n brief: `The different resource types to pull in. Defaults to ${DEFAULT_TRANSCEND_PULL_RESOURCES.join(\n ',',\n )}.`,\n variadic: ',',\n optional: true,\n },\n file: {\n kind: 'parsed',\n parse: String,\n brief: 'Path to the YAML file to pull into',\n default: './transcend.yml',\n },\n transcendUrl: createTranscendUrlParameter(),\n dataSiloIds: {\n kind: 'parsed',\n parse: String,\n variadic: ',',\n brief:\n 'The UUIDs of the data silos that should be pulled into the YAML file',\n optional: true,\n },\n integrationNames: {\n kind: 'parsed',\n parse: String,\n variadic: ',',\n brief: 'The types of integrations to pull down',\n optional: true,\n },\n trackerStatuses: {\n kind: 'enum',\n values: Object.values(ConsentTrackerStatus),\n variadic: ',',\n brief:\n 'The statuses of consent manager trackers to pull down. Defaults to all statuses.',\n optional: true,\n },\n pageSize: {\n kind: 'parsed',\n parse: numberParser,\n brief: 'The page size to use when paginating over the API',\n default: '50',\n },\n skipDatapoints: {\n kind: 'boolean',\n brief:\n 'When true, skip pulling in datapoints alongside data silo resource',\n default: false,\n },\n skipSubDatapoints: {\n kind: 'boolean',\n brief:\n 'When true, skip pulling in subDatapoints alongside data silo resource',\n default: false,\n },\n includeGuessedCategories: {\n kind: 'boolean',\n brief:\n 'When true, included guessed data categories that came from the content classifier',\n default: false,\n },\n debug: {\n kind: 'boolean',\n brief:\n 'Set to true to include debug logs while pulling the configuration',\n default: false,\n },\n },\n },\n docs: {\n brief: 'Pull metadata from Transcend into transcend.yml',\n fullDescription: `Generates a transcend.yml by pulling the configuration from your Transcend instance.\n\nThe API key needs various scopes depending on the resources being pulled (see the CLI's README for more details).\n\nThis command can be helpful if you are looking to:\n\n- Copy your data into another instance\n- Generate a transcend.yml file as a starting point to maintain parts of your data inventory in code.`,\n },\n});\n","/**\n * Validates and returns a UUID string.\n *\n * @param input - The input string to validate as UUID\n * @returns The validated UUID string\n * @throws Error if input is not a valid UUID\n */\nexport function uuidParser(input: string): string {\n const uuidRegex =\n /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n if (!uuidRegex.test(input)) {\n throw new Error(`Invalid UUID format: ${input}`);\n }\n return input;\n}\n\n/**\n * Validates and returns a URL string.\n *\n * @param input - The input string to validate as URL\n * @returns The validated URL string\n * @throws Error if input is not a valid URL\n */\nexport function urlParser(input: string): string {\n try {\n const url = new URL(input);\n return url.toString().replace(/\\/$/, '');\n } catch {\n throw new Error(`Invalid URL format: ${input}`);\n }\n}\n\n/**\n * Parse a comma-separated string to array.\n * NOTE: Prefer using `variadic` for list arguments instead of this function. This should only be used for arguments which have a default value.\n *\n * @param input - The comma-separated string to parse\n * @returns Array of trimmed, non-empty strings\n */\nexport function arrayParser(input: string): string[] {\n return input\n .split(',')\n .map((s) => s.trim())\n .filter((s) => s.length > 0);\n}\n\n/**\n * Parse a date string to a Date object.\n *\n * @param input - The date string to parse\n * @returns The parsed Date object\n * @throws TypeError if input is not a valid date\n */\nexport function dateParser(input: string): Date {\n const date = new Date(input);\n if (Number.isNaN(date.getTime())) {\n throw new TypeError(\n `Invalid date: ${input}. Try using the ISO 8601 format (YYYY-MM-DDTHH:MM:SS.SSSZ)`,\n );\n }\n return date;\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-FHTJX3WX.cjs","../src/commands/inventory/pull/command.ts","../src/lib/cli/parsers.ts"],"names":["uuidParser","input"],"mappings":"AAAA,mZAA+C,wDAAyC,qCCA7C,2DACN,SCMrBA,CAAAA,CAAWC,CAAAA,CAAuB,CAGhD,EAAA,CAAI,CADF,4EAAA,CACa,IAAA,CAAKA,CAAK,CAAA,CACvB,MAAM,IAAI,KAAA,CAAM,CAAA,qBAAA,EAAwBA,CAAK,CAAA,CAAA;AD0F5B;AAAA;AAAA;AAAA;AAAA;AAAA;AASpB,qGAAA","file":"/home/runner/work/cli/cli/dist/chunk-FHTJX3WX.cjs","sourcesContent":[null,"import { buildCommand, numberParser } from '@stricli/core';\nimport { ConsentTrackerStatus } from '@transcend-io/privacy-types';\nimport {\n createAuthParameter,\n createTranscendUrlParameter,\n} from '../../../lib/cli/common-parameters';\nimport { TranscendPullResource } from '../../../enums';\n\nexport const DEFAULT_TRANSCEND_PULL_RESOURCES = [\n TranscendPullResource.DataSilos,\n TranscendPullResource.Enrichers,\n TranscendPullResource.Templates,\n TranscendPullResource.ApiKeys,\n];\n\nexport const DEFAULT_CONSENT_TRACKER_STATUSES =\n Object.values(ConsentTrackerStatus);\n\nexport const pullCommand = buildCommand({\n loader: async () => {\n const { pull } = await import('./impl');\n return pull;\n },\n parameters: {\n flags: {\n auth: createAuthParameter({\n scopes: 'Varies',\n }),\n resources: {\n kind: 'enum',\n values: ['all', ...Object.values(TranscendPullResource)],\n brief: `The different resource types to pull in. Defaults to ${DEFAULT_TRANSCEND_PULL_RESOURCES.join(\n ',',\n )}.`,\n variadic: ',',\n optional: true,\n },\n file: {\n kind: 'parsed',\n parse: String,\n brief: 'Path to the YAML file to pull into',\n default: './transcend.yml',\n },\n transcendUrl: createTranscendUrlParameter(),\n dataSiloIds: {\n kind: 'parsed',\n parse: String,\n variadic: ',',\n brief:\n 'The UUIDs of the data silos that should be pulled into the YAML file',\n optional: true,\n },\n integrationNames: {\n kind: 'parsed',\n parse: String,\n variadic: ',',\n brief: 'The types of integrations to pull down',\n optional: true,\n },\n trackerStatuses: {\n kind: 'enum',\n values: Object.values(ConsentTrackerStatus),\n variadic: ',',\n brief:\n 'The statuses of consent manager trackers to pull down. Defaults to all statuses.',\n optional: true,\n },\n pageSize: {\n kind: 'parsed',\n parse: numberParser,\n brief: 'The page size to use when paginating over the API',\n default: '50',\n },\n skipDatapoints: {\n kind: 'boolean',\n brief:\n 'When true, skip pulling in datapoints alongside data silo resource',\n default: false,\n },\n skipSubDatapoints: {\n kind: 'boolean',\n brief:\n 'When true, skip pulling in subDatapoints alongside data silo resource',\n default: false,\n },\n includeGuessedCategories: {\n kind: 'boolean',\n brief:\n 'When true, included guessed data categories that came from the content classifier',\n default: false,\n },\n debug: {\n kind: 'boolean',\n brief:\n 'Set to true to include debug logs while pulling the configuration',\n default: false,\n },\n },\n },\n docs: {\n brief: 'Pull metadata from Transcend into transcend.yml',\n fullDescription: `Generates a transcend.yml by pulling the configuration from your Transcend instance.\n\nThe API key needs various scopes depending on the resources being pulled (see the CLI's README for more details).\n\nThis command can be helpful if you are looking to:\n\n- Copy your data into another instance\n- Generate a transcend.yml file as a starting point to maintain parts of your data inventory in code.`,\n },\n});\n","/**\n * Validates and returns a UUID string.\n *\n * @param input - The input string to validate as UUID\n * @returns The validated UUID string\n * @throws Error if input is not a valid UUID\n */\nexport function uuidParser(input: string): string {\n const uuidRegex =\n /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n if (!uuidRegex.test(input)) {\n throw new Error(`Invalid UUID format: ${input}`);\n }\n return input;\n}\n\n/**\n * Validates and returns a URL string.\n *\n * @param input - The input string to validate as URL\n * @returns The validated URL string\n * @throws Error if input is not a valid URL\n */\nexport function urlParser(input: string): string {\n try {\n const url = new URL(input);\n return url.toString().replace(/\\/$/, '');\n } catch {\n throw new Error(`Invalid URL format: ${input}`);\n }\n}\n\n/**\n * Parse a comma-separated string to array.\n * NOTE: Prefer using `variadic` for list arguments instead of this function. This should only be used for arguments which have a default value.\n *\n * @param input - The comma-separated string to parse\n * @returns Array of trimmed, non-empty strings\n */\nexport function arrayParser(input: string): string[] {\n return input\n .split(',')\n .map((s) => s.trim())\n .filter((s) => s.length > 0);\n}\n\n/**\n * Parse a date string to a Date object.\n *\n * @param input - The date string to parse\n * @returns The parsed Date object\n * @throws TypeError if input is not a valid date\n */\nexport function dateParser(input: string): Date {\n const date = new Date(input);\n if (Number.isNaN(date.getTime())) {\n throw new TypeError(\n `Invalid date: ${input}. Try using the ISO 8601 format (YYYY-MM-DDTHH:MM:SS.SSSZ)`,\n );\n }\n return date;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkT7B5NTGFcjs = require('./chunk-T7B5NTGF.cjs');var _privacytypes = require('@transcend-io/privacy-types');var A="transcend",s= exports.b ="https://app.transcend.io",P= exports.c =`${s}/infrastructure/integrations`,u= exports.d =`${s}/data-map/data-inventory/data-points`,S= exports.e =process.env.TRANSCEND_API_URL||"https://api.transcend.io",M= exports.f =process.env.TRANSCEND_CONSENT_API_URL||"https://consent.transcend.io",D= exports.g ={apiKeys:[_privacytypes.ScopeName.ViewApiKeys],templates:[_privacytypes.ScopeName.ManageEmailTemplates],dataSilos:[_privacytypes.ScopeName.ManageDataMap,_privacytypes.ScopeName.ConnectDataSilos],enrichers:[_privacytypes.ScopeName.ManageRequestIdentities],businessEntities:[_privacytypes.ScopeName.ManageDataInventory],processingActivities:[_privacytypes.ScopeName.ManageDataInventory],identifiers:[_privacytypes.ScopeName.ManageRequestIdentities],customFields:[_privacytypes.ScopeName.ManageGlobalAttributes],dataFlows:[_privacytypes.ScopeName.ManageDataFlow],cookies:[_privacytypes.ScopeName.ManageDataFlow],consentManager:[_privacytypes.ScopeName.ManageConsentManagerDeveloperSettings],partitions:[_privacytypes.ScopeName.ManageConsentManagerDeveloperSettings],actions:[_privacytypes.ScopeName.ManageDataSubjectRequestSettings],dataSubjects:[_privacytypes.ScopeName.ManageDataSubjectRequestSettings],prompts:[_privacytypes.ScopeName.ManagePrompts],promptPartials:[_privacytypes.ScopeName.ManagePrompts],promptGroups:[_privacytypes.ScopeName.ManagePrompts],agents:[_privacytypes.ScopeName.ManagePathfinder],agentFunctions:[_privacytypes.ScopeName.ManagePathfinder],agentFiles:[_privacytypes.ScopeName.ManagePathfinder],vendors:[_privacytypes.ScopeName.ManageDataInventory],dataCategories:[_privacytypes.ScopeName.ManageDataInventory],processingPurposes:[_privacytypes.ScopeName.ManageDataInventory],actionItems:[_privacytypes.ScopeName.ManageAllActionItems,_privacytypes.ScopeName.ViewGlobalAttributes],actionItemCollections:[_privacytypes.ScopeName.ManageActionItemCollections],teams:[_privacytypes.ScopeName.ManageAccessControl],messages:[_privacytypes.ScopeName.ManageIntlMessages],privacyCenters:[_privacytypes.ScopeName.ManagePrivacyCenter],policies:[_privacytypes.ScopeName.ManagePolicies],assessments:[_privacytypes.ScopeName.ManageAssessments],assessmentTemplates:[_privacytypes.ScopeName.ManageAssessments],purposes:[_privacytypes.ScopeName.ManageConsentManager,_privacytypes.ScopeName.ManagePreferenceStoreSettings]},w= exports.h ={apiKeys:[_privacytypes.ScopeName.ViewApiKeys],templates:[_privacytypes.ScopeName.ViewEmailTemplates],dataSilos:[_privacytypes.ScopeName.ViewDataMap,_privacytypes.ScopeName.ViewDataSubjectRequestSettings],enrichers:[_privacytypes.ScopeName.ViewRequestIdentitySettings],businessEntities:[_privacytypes.ScopeName.ViewDataInventory],processingActivities:[_privacytypes.ScopeName.ViewDataInventory],identifiers:[_privacytypes.ScopeName.ViewRequestIdentitySettings],customFields:[_privacytypes.ScopeName.ViewGlobalAttributes],dataFlows:[_privacytypes.ScopeName.ViewDataFlow],cookies:[_privacytypes.ScopeName.ViewDataFlow],consentManager:[_privacytypes.ScopeName.ViewConsentManager],partitions:[_privacytypes.ScopeName.ViewConsentManager],actions:[_privacytypes.ScopeName.ViewDataSubjectRequestSettings],dataSubjects:[_privacytypes.ScopeName.ViewDataSubjectRequestSettings],prompts:[_privacytypes.ScopeName.ViewPrompts],promptPartials:[_privacytypes.ScopeName.ViewPrompts],promptGroups:[_privacytypes.ScopeName.ViewPrompts],agents:[_privacytypes.ScopeName.ViewPathfinder],agentFunctions:[_privacytypes.ScopeName.ViewPathfinder],agentFiles:[_privacytypes.ScopeName.ViewPathfinder],vendors:[_privacytypes.ScopeName.ViewDataInventory],dataCategories:[_privacytypes.ScopeName.ViewDataInventory],processingPurposes:[_privacytypes.ScopeName.ViewDataInventory],actionItemCollections:[_privacytypes.ScopeName.ViewAllActionItems],actionItems:[_privacytypes.ScopeName.ViewAllActionItems],teams:[_privacytypes.ScopeName.ViewScopes],messages:[_privacytypes.ScopeName.ViewIntlMessages],privacyCenters:[_privacytypes.ScopeName.ViewPrivacyCenter],policies:[_privacytypes.ScopeName.ViewPolicies],assessments:[_privacytypes.ScopeName.ViewAssessments],assessmentTemplates:[_privacytypes.ScopeName.ViewAssessments],purposes:[_privacytypes.ScopeName.ViewConsentManager,_privacytypes.ScopeName.ViewPreferenceStoreSettings]},I= exports.i ={apiKeys:"api-keys",customFields:"attributes",dataFlows:"data-flows",cookies:"cookies",consentManager:"consent-manager",partitions:"partitions",actions:"actions",dataSubjects:"data-subjects",businessEntities:"business-entities",processingActivities:"processing-activities",identifiers:"identifiers",enrichers:"enrichers",dataSilos:"data-silos",templates:"templates",prompts:"prompts",promptPartials:"prompt-partials",promptGroups:"prompt-groups",agents:"agents",agentFunctions:"agent-functions",agentFiles:"agent-files",vendors:"vendors",dataCategories:"data-categories",processingPurposes:"processing-purposes",actionItems:"action-items",actionItemCollections:"action-item-collections",teams:"teams",messages:"messages",privacyCenters:"privacy-center",policies:"policies",assessments:"assessments",assessmentTemplates:"assessment-templates",purposes:"purposes"},o= exports.j =_chunkT7B5NTGFcjs.e.call(void 0, Object.entries(_privacytypes.TRANSCEND_SCOPES).map(([n,a])=>({...a,name:n})),"title"),C= exports.k =Object.keys(o);exports.a = A; exports.b = s; exports.c = P; exports.d = u; exports.e = S; exports.f = M; exports.g = D; exports.h = w; exports.i = I; exports.j = o; exports.k = C;
2
+ //# sourceMappingURL=chunk-HVTVWP7K.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-HVTVWP7K.cjs","../src/constants.ts"],"names":["name","ADMIN_DASH","ADMIN_DASH_INTEGRATIONS"],"mappings":"AAAA,iIAAwC,2DCKjC,IAQMA,CAAAA,CAAO,WAAA,CAEPC,CAAAA,aAAa,0BAAA,CAEbC,CAAAA,aAA0B,CAAA,EAAA","file":"/home/runner/work/cli/cli/dist/chunk-HVTVWP7K.cjs","sourcesContent":[null,"import { keyBy } from 'lodash-es';\nimport {\n ScopeName,\n TRANSCEND_SCOPES,\n type ScopeDefinition,\n} from '@transcend-io/privacy-types';\nimport { TranscendPullResource } from './enums';\nimport { TranscendInput } from './codecs';\n\nexport { description, version } from '../package.json';\n/**\n * The name of the main binary for the CLI\n */\nexport const name = 'transcend';\n\nexport const ADMIN_DASH = 'https://app.transcend.io';\n\nexport const ADMIN_DASH_INTEGRATIONS = `${ADMIN_DASH}/infrastructure/integrations`;\nexport const ADMIN_DASH_DATAPOINTS = `${ADMIN_DASH}/data-map/data-inventory/data-points`;\n\n/**\n * Override default transcend API url using\n * TRANSCEND_API_URL=https://api.us.transcend.io transcend ...\n */\nexport const DEFAULT_TRANSCEND_API =\n process.env.TRANSCEND_API_URL || 'https://api.transcend.io';\n\n/**\n * Override default transcend API url using\n * TRANSCEND_CONSENT_API_URL=https://consent.us.transcend.io transcend ...\n */\nexport const DEFAULT_TRANSCEND_CONSENT_API =\n process.env.TRANSCEND_CONSENT_API_URL || 'https://consent.transcend.io';\n\n/**\n * Mapping between resource type and scopes required for cli\n */\nexport const TR_PUSH_RESOURCE_SCOPE_MAP: {\n [k in TranscendPullResource]: ScopeName[];\n} = {\n [TranscendPullResource.ApiKeys]: [ScopeName.ViewApiKeys],\n [TranscendPullResource.Templates]: [ScopeName.ManageEmailTemplates],\n [TranscendPullResource.DataSilos]: [\n ScopeName.ManageDataMap,\n ScopeName.ConnectDataSilos,\n ],\n [TranscendPullResource.Enrichers]: [ScopeName.ManageRequestIdentities],\n [TranscendPullResource.BusinessEntities]: [ScopeName.ManageDataInventory],\n [TranscendPullResource.ProcessingActivities]: [ScopeName.ManageDataInventory],\n [TranscendPullResource.Identifiers]: [ScopeName.ManageRequestIdentities],\n [TranscendPullResource.Attributes]: [ScopeName.ManageGlobalAttributes],\n [TranscendPullResource.DataFlows]: [ScopeName.ManageDataFlow],\n [TranscendPullResource.Cookies]: [ScopeName.ManageDataFlow],\n [TranscendPullResource.ConsentManager]: [\n ScopeName.ManageConsentManagerDeveloperSettings,\n ],\n [TranscendPullResource.Partitions]: [\n ScopeName.ManageConsentManagerDeveloperSettings,\n ],\n [TranscendPullResource.Actions]: [ScopeName.ManageDataSubjectRequestSettings],\n [TranscendPullResource.DataSubjects]: [\n ScopeName.ManageDataSubjectRequestSettings,\n ],\n [TranscendPullResource.Prompts]: [ScopeName.ManagePrompts],\n [TranscendPullResource.PromptPartials]: [ScopeName.ManagePrompts],\n [TranscendPullResource.PromptGroups]: [ScopeName.ManagePrompts],\n [TranscendPullResource.Agents]: [ScopeName.ManagePathfinder],\n [TranscendPullResource.AgentFunctions]: [ScopeName.ManagePathfinder],\n [TranscendPullResource.AgentFiles]: [ScopeName.ManagePathfinder],\n [TranscendPullResource.Vendors]: [ScopeName.ManageDataInventory],\n [TranscendPullResource.DataCategories]: [ScopeName.ManageDataInventory],\n [TranscendPullResource.ProcessingPurposes]: [ScopeName.ManageDataInventory],\n [TranscendPullResource.ActionItems]: [\n ScopeName.ManageAllActionItems,\n ScopeName.ViewGlobalAttributes,\n ],\n [TranscendPullResource.ActionItemCollections]: [\n ScopeName.ManageActionItemCollections,\n ],\n [TranscendPullResource.Teams]: [ScopeName.ManageAccessControl],\n [TranscendPullResource.Messages]: [ScopeName.ManageIntlMessages],\n [TranscendPullResource.PrivacyCenters]: [ScopeName.ManagePrivacyCenter],\n [TranscendPullResource.Policies]: [ScopeName.ManagePolicies],\n [TranscendPullResource.Assessments]: [ScopeName.ManageAssessments],\n [TranscendPullResource.AssessmentTemplates]: [ScopeName.ManageAssessments],\n [TranscendPullResource.Purposes]: [\n ScopeName.ManageConsentManager,\n ScopeName.ManagePreferenceStoreSettings,\n ],\n};\n\n/**\n * Mapping between resource type and scopes required for cli\n */\nexport const TR_PULL_RESOURCE_SCOPE_MAP: {\n [k in TranscendPullResource]: ScopeName[];\n} = {\n [TranscendPullResource.ApiKeys]: [ScopeName.ViewApiKeys],\n [TranscendPullResource.Templates]: [ScopeName.ViewEmailTemplates],\n [TranscendPullResource.DataSilos]: [\n ScopeName.ViewDataMap,\n ScopeName.ViewDataSubjectRequestSettings,\n ],\n [TranscendPullResource.Enrichers]: [ScopeName.ViewRequestIdentitySettings],\n [TranscendPullResource.BusinessEntities]: [ScopeName.ViewDataInventory],\n [TranscendPullResource.ProcessingActivities]: [ScopeName.ViewDataInventory],\n [TranscendPullResource.Identifiers]: [ScopeName.ViewRequestIdentitySettings],\n [TranscendPullResource.Attributes]: [ScopeName.ViewGlobalAttributes],\n [TranscendPullResource.DataFlows]: [ScopeName.ViewDataFlow],\n [TranscendPullResource.Cookies]: [ScopeName.ViewDataFlow],\n [TranscendPullResource.ConsentManager]: [ScopeName.ViewConsentManager],\n [TranscendPullResource.Partitions]: [ScopeName.ViewConsentManager],\n [TranscendPullResource.Actions]: [ScopeName.ViewDataSubjectRequestSettings],\n [TranscendPullResource.DataSubjects]: [\n ScopeName.ViewDataSubjectRequestSettings,\n ],\n [TranscendPullResource.Prompts]: [ScopeName.ViewPrompts],\n [TranscendPullResource.PromptPartials]: [ScopeName.ViewPrompts],\n [TranscendPullResource.PromptGroups]: [ScopeName.ViewPrompts],\n [TranscendPullResource.Agents]: [ScopeName.ViewPathfinder],\n [TranscendPullResource.AgentFunctions]: [ScopeName.ViewPathfinder],\n [TranscendPullResource.AgentFiles]: [ScopeName.ViewPathfinder],\n [TranscendPullResource.Vendors]: [ScopeName.ViewDataInventory],\n [TranscendPullResource.DataCategories]: [ScopeName.ViewDataInventory],\n [TranscendPullResource.ProcessingPurposes]: [ScopeName.ViewDataInventory],\n [TranscendPullResource.ActionItemCollections]: [ScopeName.ViewAllActionItems],\n [TranscendPullResource.ActionItems]: [ScopeName.ViewAllActionItems],\n [TranscendPullResource.Teams]: [ScopeName.ViewScopes],\n [TranscendPullResource.Messages]: [ScopeName.ViewIntlMessages],\n [TranscendPullResource.PrivacyCenters]: [ScopeName.ViewPrivacyCenter],\n [TranscendPullResource.Policies]: [ScopeName.ViewPolicies],\n [TranscendPullResource.Assessments]: [ScopeName.ViewAssessments],\n [TranscendPullResource.AssessmentTemplates]: [ScopeName.ViewAssessments],\n [TranscendPullResource.Purposes]: [\n ScopeName.ViewConsentManager,\n ScopeName.ViewPreferenceStoreSettings,\n ],\n};\n\nexport const TR_YML_RESOURCE_TO_FIELD_NAME: Record<\n TranscendPullResource,\n keyof TranscendInput\n> = {\n [TranscendPullResource.ApiKeys]: 'api-keys',\n [TranscendPullResource.Attributes]: 'attributes',\n [TranscendPullResource.DataFlows]: 'data-flows',\n [TranscendPullResource.Cookies]: 'cookies',\n [TranscendPullResource.ConsentManager]: 'consent-manager',\n [TranscendPullResource.Partitions]: 'partitions',\n [TranscendPullResource.Actions]: 'actions',\n [TranscendPullResource.DataSubjects]: 'data-subjects',\n [TranscendPullResource.BusinessEntities]: 'business-entities',\n [TranscendPullResource.ProcessingActivities]: 'processing-activities',\n [TranscendPullResource.Identifiers]: 'identifiers',\n [TranscendPullResource.Enrichers]: 'enrichers',\n [TranscendPullResource.DataSilos]: 'data-silos',\n [TranscendPullResource.Templates]: 'templates',\n [TranscendPullResource.Prompts]: 'prompts',\n [TranscendPullResource.PromptPartials]: 'prompt-partials',\n [TranscendPullResource.PromptGroups]: 'prompt-groups',\n [TranscendPullResource.Agents]: 'agents',\n [TranscendPullResource.AgentFunctions]: 'agent-functions',\n [TranscendPullResource.AgentFiles]: 'agent-files',\n [TranscendPullResource.Vendors]: 'vendors',\n [TranscendPullResource.DataCategories]: 'data-categories',\n [TranscendPullResource.ProcessingPurposes]: 'processing-purposes',\n [TranscendPullResource.ActionItems]: 'action-items',\n [TranscendPullResource.ActionItemCollections]: 'action-item-collections',\n [TranscendPullResource.Teams]: 'teams',\n [TranscendPullResource.Messages]: 'messages',\n [TranscendPullResource.PrivacyCenters]: 'privacy-center',\n [TranscendPullResource.Policies]: 'policies',\n [TranscendPullResource.Assessments]: 'assessments',\n [TranscendPullResource.AssessmentTemplates]: 'assessment-templates',\n [TranscendPullResource.Purposes]: 'purposes',\n};\n\nexport const SCOPES_BY_TITLE = keyBy(\n Object.entries(TRANSCEND_SCOPES).map(([name, value]) => ({\n ...value,\n name,\n })),\n 'title',\n) as Record<\n string,\n ScopeDefinition & {\n /** The camelCased name which identifies the scope */\n name: ScopeName;\n }\n>;\n\nexport const SCOPE_TITLES = Object.keys(SCOPES_BY_TITLE);\n"]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var _chunkBY7W4UQFcjs = require('./chunk-BY7W4UQF.cjs');var _iots = require('io-ts'); var e = _interopRequireWildcard(_iots); var r = _interopRequireWildcard(_iots);var _typeutils = require('@transcend-io/type-utils');var d=({TRouteName:t})=>e.type({routeName:t,enabledPolicies:e.array(_typeutils.valuesOf.call(void 0, _chunkBY7W4UQFcjs.e))});var l=({TEnabledRoutes:t})=>r.type({enabledRoutes:t});exports.a = d; exports.b = l;
2
- //# sourceMappingURL=chunk-SAEKBZGF.cjs.map
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var _chunkQ7I37FJVcjs = require('./chunk-Q7I37FJV.cjs');var _iots = require('io-ts'); var e = _interopRequireWildcard(_iots); var r = _interopRequireWildcard(_iots);var _typeutils = require('@transcend-io/type-utils');var d=({TRouteName:t})=>e.type({routeName:t,enabledPolicies:e.array(_typeutils.valuesOf.call(void 0, _chunkQ7I37FJVcjs.e))});var l=({TEnabledRoutes:t})=>r.type({enabledRoutes:t});exports.a = d; exports.b = l;
2
+ //# sourceMappingURL=chunk-LCDYXJN6.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-SAEKBZGF.cjs","../src/lib/helpers/buildEnabledRouteType.ts","../src/lib/helpers/buildAIIntegrationType.ts"],"names":["buildEnabledRouteType","TRouteName","valuesOf","buildAIIntegrationType","TEnabledRoutes"],"mappings":"AAAA,mZAAwC,6GCArB,qDAEM,IASZA,CAAAA,CAAwB,CAAoB,CACvD,UAAA,CAAAC,CACF,CAAA,CAAA,EAII,CAAA,CAAA,IAAA,CAAK,CACL,SAAA,CAAWA,CAAAA,CACX,eAAA,CAAmB,CAAA,CAAA,KAAA,CAAMC,iCAAAA,mBAA6B,CAAC,CACzD,CAAC,CAAA,CCpBH,IASaC,CAAAA,CAAyB,CAGpC,CACA,cAAA,CAAAC,CACF,CAAA,CAAA,EAII,CAAA,CAAA,IAAA,CAAK,CACL,aAAA,CAAeA,CACjB,CAAC,CAAA,CAAA,6BAAA","file":"/home/runner/work/cli/cli/dist/chunk-SAEKBZGF.cjs","sourcesContent":[null,"import * as t from 'io-ts';\nimport { EnabledRouteC } from '../../codecs';\nimport { valuesOf } from '@transcend-io/type-utils';\nimport { PathfinderPolicyName } from '../../enums';\n\n/**\n * Builds a custom io-ts type that represents a route allowed by the proxy\n *\n * @param TRouteName - the string with the name of the allowed route\n * @returns custom io-ts AllowedRoute type\n */\nexport const buildEnabledRouteType = <T extends t.Mixed>({\n TRouteName,\n}: {\n /** the type of the routeName property */\n TRouteName: T;\n}): EnabledRouteC<T> =>\n t.type({\n routeName: TRouteName,\n enabledPolicies: t.array(valuesOf(PathfinderPolicyName)),\n });\n","import * as t from 'io-ts';\nimport { AIIntegrationC, EnabledRouteC } from '../../codecs';\n\n/**\n * Helper to build a custom io-ts type representing an AIIntegration\n *\n * @param TEnabledRoutes - the type of the enabledRoutes for the AIIntegration type\n * @returns an AIIntegration type\n */\nexport const buildAIIntegrationType = <\n T extends t.Mixed,\n P extends t.ArrayC<EnabledRouteC<T>>,\n>({\n TEnabledRoutes,\n}: {\n /** the type of the enabledRoutes property */\n TEnabledRoutes: P;\n}): AIIntegrationC<T> =>\n t.type({\n enabledRoutes: TEnabledRoutes,\n });\n"]}
1
+ {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-LCDYXJN6.cjs","../src/lib/helpers/buildEnabledRouteType.ts","../src/lib/helpers/buildAIIntegrationType.ts"],"names":["buildEnabledRouteType","TRouteName","valuesOf","buildAIIntegrationType","TEnabledRoutes"],"mappings":"AAAA,mZAAwC,6GCArB,qDAEM,IASZA,CAAAA,CAAwB,CAAoB,CACvD,UAAA,CAAAC,CACF,CAAA,CAAA,EAII,CAAA,CAAA,IAAA,CAAK,CACL,SAAA,CAAWA,CAAAA,CACX,eAAA,CAAmB,CAAA,CAAA,KAAA,CAAMC,iCAAAA,mBAA6B,CAAC,CACzD,CAAC,CAAA,CCpBH,IASaC,CAAAA,CAAyB,CAGpC,CACA,cAAA,CAAAC,CACF,CAAA,CAAA,EAII,CAAA,CAAA,IAAA,CAAK,CACL,aAAA,CAAeA,CACjB,CAAC,CAAA,CAAA,6BAAA","file":"/home/runner/work/cli/cli/dist/chunk-LCDYXJN6.cjs","sourcesContent":[null,"import * as t from 'io-ts';\nimport { EnabledRouteC } from '../../codecs';\nimport { valuesOf } from '@transcend-io/type-utils';\nimport { PathfinderPolicyName } from '../../enums';\n\n/**\n * Builds a custom io-ts type that represents a route allowed by the proxy\n *\n * @param TRouteName - the string with the name of the allowed route\n * @returns custom io-ts AllowedRoute type\n */\nexport const buildEnabledRouteType = <T extends t.Mixed>({\n TRouteName,\n}: {\n /** the type of the routeName property */\n TRouteName: T;\n}): EnabledRouteC<T> =>\n t.type({\n routeName: TRouteName,\n enabledPolicies: t.array(valuesOf(PathfinderPolicyName)),\n });\n","import * as t from 'io-ts';\nimport { AIIntegrationC, EnabledRouteC } from '../../codecs';\n\n/**\n * Helper to build a custom io-ts type representing an AIIntegration\n *\n * @param TEnabledRoutes - the type of the enabledRoutes for the AIIntegration type\n * @returns an AIIntegration type\n */\nexport const buildAIIntegrationType = <\n T extends t.Mixed,\n P extends t.ArrayC<EnabledRouteC<T>>,\n>({\n TEnabledRoutes,\n}: {\n /** the type of the enabledRoutes property */\n TEnabledRoutes: P;\n}): AIIntegrationC<T> =>\n t.type({\n enabledRoutes: TEnabledRoutes,\n });\n"]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkQBBOYJ3Ocjs = require('./chunk-QBBOYJ3O.cjs');function f(p,{adTechPurposes:m=["SaleOfInfo"],serviceToTitle:s,serviceToSupportedIntegration:r}){let e=[],i=[],n={};p.forEach(t=>{let{service:a,attributes:c=[]}=t;if(!a||a==="internalService")return;let u=c.find(o=>o.key==="Found on Domain");u&&(n[a]||(n[a]=[]),n[a].push(...u.values.map(o=>o.replace("https://","").replace("http://",""))),n[a]=[...new Set(n[a])]),_chunkQBBOYJ3Ocjs.i.call(void 0, t.trackingPurposes,m).length>0?(i.push(a),e.includes(a)&&(e=e.filter(o=>o!==a))):i.includes(a)||e.push(a)});let h=[...new Set(i)].map(t=>({title:s[t],...r[t]?{integrationName:t}:{integrationName:"promptAPerson","outer-type":t},attributes:[{key:"Tech Type",values:["Ad Tech"]},{key:"Found On Domain",values:n[t]||[]}]}));return{siteTechDataSilos:[...new Set(e)].map(t=>({title:s[t],...r[t]?{integrationName:t}:{integrationName:"promptAPerson",outerType:t},attributes:[{key:"Tech Type",values:["Site Tech"]},{key:"Found On Domain",values:n[t]||[]}]})),adTechDataSilos:h}}exports.a = f;
2
- //# sourceMappingURL=chunk-XWMFHJGK.cjs.map
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkT7B5NTGFcjs = require('./chunk-T7B5NTGF.cjs');function f(p,{adTechPurposes:m=["SaleOfInfo"],serviceToTitle:s,serviceToSupportedIntegration:r}){let e=[],i=[],n={};p.forEach(t=>{let{service:a,attributes:c=[]}=t;if(!a||a==="internalService")return;let u=c.find(o=>o.key==="Found on Domain");u&&(n[a]||(n[a]=[]),n[a].push(...u.values.map(o=>o.replace("https://","").replace("http://",""))),n[a]=[...new Set(n[a])]),_chunkT7B5NTGFcjs.i.call(void 0, t.trackingPurposes,m).length>0?(i.push(a),e.includes(a)&&(e=e.filter(o=>o!==a))):i.includes(a)||e.push(a)});let h=[...new Set(i)].map(t=>({title:s[t],...r[t]?{integrationName:t}:{integrationName:"promptAPerson","outer-type":t},attributes:[{key:"Tech Type",values:["Ad Tech"]},{key:"Found On Domain",values:n[t]||[]}]}));return{siteTechDataSilos:[...new Set(e)].map(t=>({title:s[t],...r[t]?{integrationName:t}:{integrationName:"promptAPerson",outerType:t},attributes:[{key:"Tech Type",values:["Site Tech"]},{key:"Found On Domain",values:n[t]||[]}]})),adTechDataSilos:h}}exports.a = f;
2
+ //# sourceMappingURL=chunk-MS4WBSCZ.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-XWMFHJGK.cjs","../src/lib/consent-manager/dataFlowsToDataSilos.ts"],"names":["dataFlowsToDataSilos","inputs","adTechPurposes","serviceToTitle","serviceToSupportedIntegration","siteTechIntegrations","adTechIntegrations","serviceToFoundOnDomain","flow","service","attributes","foundOnDomain","attr","v","union_default","s","adTechDataSilos"],"mappings":"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","file":"/home/runner/work/cli/cli/dist/chunk-XWMFHJGK.cjs","sourcesContent":[null,"import { DataFlowInput, DataSiloInput } from '../../codecs';\nimport { union } from 'lodash-es';\nimport { IndexedCatalogs } from '../graphql';\n\n/**\n * Convert data flow configurations into a set of data silo configurations\n *\n * @param inputs - Data flow input to convert to data silos\n * @param options - Additional options\n * @returns Business entity configuration input\n */\nexport function dataFlowsToDataSilos(\n inputs: DataFlowInput[],\n {\n adTechPurposes = ['SaleOfInfo'],\n serviceToTitle,\n serviceToSupportedIntegration,\n }: IndexedCatalogs & {\n /** List of purposes that are considered \"Ad Tech\" */\n adTechPurposes?: string[];\n },\n): {\n /** List of data silo configurations for site-tech services */\n siteTechDataSilos: DataSiloInput[];\n /** List of data silo configurations for ad-tech services */\n adTechDataSilos: DataSiloInput[];\n} {\n // List of site tech integrations\n let siteTechIntegrations: string[] = [];\n\n // List of ad tech integrations\n const adTechIntegrations: string[] = [];\n\n // Mapping from service name to list of\n const serviceToFoundOnDomain: { [k in string]: string[] } = {};\n\n // iterate over each flow\n inputs.forEach((flow) => {\n // process data flows with services\n const { service, attributes = [] } = flow;\n if (!service || service === 'internalService') {\n return;\n }\n\n // create mapping to found on domain\n const foundOnDomain = attributes.find(\n (attr) => attr.key === 'Found on Domain',\n );\n\n // Create a list of all domains where the data flow was found\n if (foundOnDomain) {\n if (!serviceToFoundOnDomain[service]) {\n serviceToFoundOnDomain[service] = [];\n }\n serviceToFoundOnDomain[service]!.push(\n ...foundOnDomain.values.map((v) =>\n v.replace('https://', '').replace('http://', ''),\n ),\n );\n serviceToFoundOnDomain[service] = [\n ...new Set(serviceToFoundOnDomain[service]),\n ];\n }\n\n // Keep track of ad tech\n if (union(flow.trackingPurposes, adTechPurposes).length > 0) {\n // add service to ad tech list\n adTechIntegrations.push(service);\n\n // remove from site tech list\n if (siteTechIntegrations.includes(service)) {\n siteTechIntegrations = siteTechIntegrations.filter(\n (s) => s !== service,\n );\n }\n } else if (!adTechIntegrations.includes(service)) {\n // add to site tech list\n siteTechIntegrations.push(service);\n }\n });\n\n // create the list of ad tech integrations\n const adTechDataSilos = [...new Set(adTechIntegrations)].map((service) => ({\n title: serviceToTitle[service],\n ...(serviceToSupportedIntegration[service]\n ? { integrationName: service }\n : { integrationName: 'promptAPerson', 'outer-type': service }),\n attributes: [\n {\n key: 'Tech Type',\n values: ['Ad Tech'],\n },\n {\n key: 'Found On Domain',\n values: serviceToFoundOnDomain[service] || [],\n },\n ],\n }));\n\n // create the list of site tech integrations\n const siteTechDataSilos = [...new Set(siteTechIntegrations)].map(\n (service) => ({\n title: serviceToTitle[service],\n ...(serviceToSupportedIntegration[service]\n ? { integrationName: service }\n : { integrationName: 'promptAPerson', outerType: service }),\n attributes: [\n {\n key: 'Tech Type',\n values: ['Site Tech'],\n },\n {\n key: 'Found On Domain',\n values: serviceToFoundOnDomain[service] || [],\n },\n ],\n }),\n );\n\n return {\n siteTechDataSilos,\n adTechDataSilos,\n };\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-MS4WBSCZ.cjs","../src/lib/consent-manager/dataFlowsToDataSilos.ts"],"names":["dataFlowsToDataSilos","inputs","adTechPurposes","serviceToTitle","serviceToSupportedIntegration","siteTechIntegrations","adTechIntegrations","serviceToFoundOnDomain","flow","service","attributes","foundOnDomain","attr","v","union_default","s","adTechDataSilos"],"mappings":"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","file":"/home/runner/work/cli/cli/dist/chunk-MS4WBSCZ.cjs","sourcesContent":[null,"import { DataFlowInput, DataSiloInput } from '../../codecs';\nimport { union } from 'lodash-es';\nimport { IndexedCatalogs } from '../graphql';\n\n/**\n * Convert data flow configurations into a set of data silo configurations\n *\n * @param inputs - Data flow input to convert to data silos\n * @param options - Additional options\n * @returns Business entity configuration input\n */\nexport function dataFlowsToDataSilos(\n inputs: DataFlowInput[],\n {\n adTechPurposes = ['SaleOfInfo'],\n serviceToTitle,\n serviceToSupportedIntegration,\n }: IndexedCatalogs & {\n /** List of purposes that are considered \"Ad Tech\" */\n adTechPurposes?: string[];\n },\n): {\n /** List of data silo configurations for site-tech services */\n siteTechDataSilos: DataSiloInput[];\n /** List of data silo configurations for ad-tech services */\n adTechDataSilos: DataSiloInput[];\n} {\n // List of site tech integrations\n let siteTechIntegrations: string[] = [];\n\n // List of ad tech integrations\n const adTechIntegrations: string[] = [];\n\n // Mapping from service name to list of\n const serviceToFoundOnDomain: { [k in string]: string[] } = {};\n\n // iterate over each flow\n inputs.forEach((flow) => {\n // process data flows with services\n const { service, attributes = [] } = flow;\n if (!service || service === 'internalService') {\n return;\n }\n\n // create mapping to found on domain\n const foundOnDomain = attributes.find(\n (attr) => attr.key === 'Found on Domain',\n );\n\n // Create a list of all domains where the data flow was found\n if (foundOnDomain) {\n if (!serviceToFoundOnDomain[service]) {\n serviceToFoundOnDomain[service] = [];\n }\n serviceToFoundOnDomain[service]!.push(\n ...foundOnDomain.values.map((v) =>\n v.replace('https://', '').replace('http://', ''),\n ),\n );\n serviceToFoundOnDomain[service] = [\n ...new Set(serviceToFoundOnDomain[service]),\n ];\n }\n\n // Keep track of ad tech\n if (union(flow.trackingPurposes, adTechPurposes).length > 0) {\n // add service to ad tech list\n adTechIntegrations.push(service);\n\n // remove from site tech list\n if (siteTechIntegrations.includes(service)) {\n siteTechIntegrations = siteTechIntegrations.filter(\n (s) => s !== service,\n );\n }\n } else if (!adTechIntegrations.includes(service)) {\n // add to site tech list\n siteTechIntegrations.push(service);\n }\n });\n\n // create the list of ad tech integrations\n const adTechDataSilos = [...new Set(adTechIntegrations)].map((service) => ({\n title: serviceToTitle[service],\n ...(serviceToSupportedIntegration[service]\n ? { integrationName: service }\n : { integrationName: 'promptAPerson', 'outer-type': service }),\n attributes: [\n {\n key: 'Tech Type',\n values: ['Ad Tech'],\n },\n {\n key: 'Found On Domain',\n values: serviceToFoundOnDomain[service] || [],\n },\n ],\n }));\n\n // create the list of site tech integrations\n const siteTechDataSilos = [...new Set(siteTechIntegrations)].map(\n (service) => ({\n title: serviceToTitle[service],\n ...(serviceToSupportedIntegration[service]\n ? { integrationName: service }\n : { integrationName: 'promptAPerson', outerType: service }),\n attributes: [\n {\n key: 'Tech Type',\n values: ['Site Tech'],\n },\n {\n key: 'Found On Domain',\n values: serviceToFoundOnDomain[service] || [],\n },\n ],\n }),\n );\n\n return {\n siteTechDataSilos,\n adTechDataSilos,\n };\n}\n"]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _typeutils = require('@transcend-io/type-utils');var a=(s=>(s.Json="json",s))(a||{}),o= exports.b =(s=>(s.Assessments="assessments",s))(o||{}),p= exports.c =(i=>(i.OneTrust="oneTrust",i.File="file",i))(p||{}),m= exports.d =(t=>(t.ApiKeys="apiKeys",t.Attributes="customFields",t.Templates="templates",t.DataSilos="dataSilos",t.Enrichers="enrichers",t.DataFlows="dataFlows",t.BusinessEntities="businessEntities",t.ProcessingActivities="processingActivities",t.Actions="actions",t.DataSubjects="dataSubjects",t.Identifiers="identifiers",t.Cookies="cookies",t.ConsentManager="consentManager",t.Partitions="partitions",t.Prompts="prompts",t.PromptPartials="promptPartials",t.PromptGroups="promptGroups",t.Agents="agents",t.AgentFunctions="agentFunctions",t.AgentFiles="agentFiles",t.Vendors="vendors",t.DataCategories="dataCategories",t.ProcessingPurposes="processingPurposes",t.ActionItems="actionItems",t.ActionItemCollections="actionItemCollections",t.Teams="teams",t.PrivacyCenters="privacyCenters",t.Policies="policies",t.Messages="messages",t.Assessments="assessments",t.AssessmentTemplates="assessmentTemplates",t.Purposes="purposes",t))(m||{}),n= exports.e =_typeutils.makeEnum.call(void 0, {RedactEmail:"redactEmail",Log:"log",LogToTranscend:"logToTranscend",ApplyTranscendPolicies:"applyTranscendPolicies"}),h= exports.f =_typeutils.makeEnum.call(void 0, {ChatCompletion:"/v1/chat/completions",Embeddings:"/v1/embeddings",Completions:"/v1/completions",Agents:"/v1/assistants",Agent:"/v1/assistants/:assistantId",Threads:"/v1/threads",Thread:"/v1/threads/:threadId",Messages:"/v1/threads/:threadId/messages",Message:"/v1/threads/:threadId/messages/:messageId",Runs:"/v1/threads/:threadId/runs",Run:"/v1/threads/:threadId/runs/:runId",Files:"/v1/files",File:"/v1/files/:fileId"});exports.a = a; exports.b = o; exports.c = p; exports.d = m; exports.e = n; exports.f = h;
2
+ //# sourceMappingURL=chunk-Q7I37FJV.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/enums.ts"],"names":["OneTrustFileFormat","OneTrustPullResource","OneTrustPullSource","TranscendPullResource","PathfinderPolicyName","makeEnum","OpenAIRouteName"],"mappings":"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","file":"/home/runner/work/cli/cli/dist/chunk-Q7I37FJV.cjs","sourcesContent":["import { makeEnum } from '@transcend-io/type-utils';\n\n/** Accepted file formats for exporting resources from OneTrust */\nexport enum OneTrustFileFormat {\n Json = 'json',\n}\n\n/**\n * Resources that can be pulled in from OneTrust\n */\nexport enum OneTrustPullResource {\n Assessments = 'assessments',\n}\n\n/**\n * Where to read OneTrust resources from\n */\nexport enum OneTrustPullSource {\n OneTrust = 'oneTrust',\n File = 'file',\n}\n\n/**\n * Resources that can be pulled in\n */\nexport enum TranscendPullResource {\n ApiKeys = 'apiKeys',\n Attributes = 'customFields',\n Templates = 'templates',\n DataSilos = 'dataSilos',\n Enrichers = 'enrichers',\n DataFlows = 'dataFlows',\n BusinessEntities = 'businessEntities',\n ProcessingActivities = 'processingActivities',\n Actions = 'actions',\n DataSubjects = 'dataSubjects',\n Identifiers = 'identifiers',\n Cookies = 'cookies',\n ConsentManager = 'consentManager',\n Partitions = 'partitions',\n Prompts = 'prompts',\n PromptPartials = 'promptPartials',\n PromptGroups = 'promptGroups',\n Agents = 'agents',\n AgentFunctions = 'agentFunctions',\n AgentFiles = 'agentFiles',\n Vendors = 'vendors',\n DataCategories = 'dataCategories',\n ProcessingPurposes = 'processingPurposes',\n ActionItems = 'actionItems',\n ActionItemCollections = 'actionItemCollections',\n Teams = 'teams',\n PrivacyCenters = 'privacyCenters',\n Policies = 'policies',\n Messages = 'messages',\n Assessments = 'assessments',\n AssessmentTemplates = 'assessmentTemplates',\n Purposes = 'purposes',\n}\n\n/**\n * Names of built in policies for pathfinder\n */\nexport const PathfinderPolicyName = makeEnum({\n RedactEmail: 'redactEmail',\n Log: 'log',\n LogToTranscend: 'logToTranscend',\n ApplyTranscendPolicies: 'applyTranscendPolicies',\n});\n\n/**\n * Type override\n */\nexport type PathfinderPolicyName =\n (typeof PathfinderPolicyName)[keyof typeof PathfinderPolicyName];\n\n/**\n * The names of the OpenAI routes that we support setting policies for\n * reference: https://platform.openai.com/docs/api-reference/introduction\n */\nexport const OpenAIRouteName = makeEnum({\n ChatCompletion: '/v1/chat/completions',\n Embeddings: '/v1/embeddings',\n Completions: '/v1/completions',\n Agents: '/v1/assistants',\n Agent: '/v1/assistants/:assistantId',\n Threads: '/v1/threads',\n Thread: '/v1/threads/:threadId',\n Messages: '/v1/threads/:threadId/messages',\n Message: '/v1/threads/:threadId/messages/:messageId',\n Runs: '/v1/threads/:threadId/runs',\n Run: '/v1/threads/:threadId/runs/:runId',\n Files: '/v1/files',\n File: '/v1/files/:fileId',\n});\n\n/**\n * Type override\n */\nexport type OpenAIRouteName =\n (typeof OpenAIRouteName)[keyof typeof OpenAIRouteName];\n"]}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkN27TJLBGcjs = require('./chunk-N27TJLBG.cjs');var _chunkZUNVPK23cjs = require('./chunk-ZUNVPK23.cjs');var _fs = require('fs');var _typeutils = require('@transcend-io/type-utils');var _privacytypes = require('@transcend-io/privacy-types');var N=/target ('|")(.*?)('|")/,O=/pod ('|")(.*?)('|")(, ('|")~> (.+?)('|")|)/,y={supportedFiles:["Podfile"],ignoreDirs:["Pods"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(N,"g"),matches:["quote1","name","quote2"]},n),c=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(O,"g"),matches:["quote1","name","quote2","extra","quote3","version","quote4"]},n);return o.map((t,p)=>({name:t.name,type:_privacytypes.CodePackageType.CocoaPods,softwareDevelopmentKits:c.filter(r=>r.matchIndex>t.matchIndex&&(!o[p+1]||r.matchIndex<o[p+1].matchIndex)).map(r=>({name:r.name,version:r.version}))}))}};var _path = require('path');var K=/implementation( *)('|")(.+?):(.+?):(.+?|)('|")/,M=/apply plugin: *('|")(.+?)(:(.+?)|)('|")/,j=/implementation group:( *)('|")(.+?)('|"),( *)name:( *)('|")(.+?)('|"),( *)version:( *)('|")(.+?)('|")/,L=/applicationId( *)"(.+?)"/,S={supportedFiles:["build.gradle**"],ignoreDirs:["gradle-app.setting","gradle-wrapper.jar","gradle-wrapper.properties"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),c=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(K,"g"),matches:["space","quote1","name","path","version","quote2"]},n),a=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(M,"g"),matches:["quote1","name","group","version","quote2"]},n),t=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(j,"g"),matches:["space1","quote1","group","quote2","space2","space3","quote3","name","quote4","space4","space5","quote5","version","quote6"]},n),p=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(L,"g"),matches:["space","name"]},n);if(p.length>1)throw new Error(`Expected only one applicationId per file: ${e}`);return[{name:_optionalChain([p, 'access', _2 => _2[0], 'optionalAccess', _3 => _3.name])||o.split("/").pop(),softwareDevelopmentKits:[...c,...t,...a].map(r=>({name:r.name,version:r.version||void 0}))}]}};var x={supportedFiles:["package.json"],ignoreDirs:["node_modules","serverless-build","lambda-build"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),c=JSON.parse(n),{name:a,description:t,dependencies:p={},devDependencies:r={},optionalDependencies:i={}}=c;return[{name:a||o.split("/").pop(),description:t,softwareDevelopmentKits:[...Object.entries(p).map(([s,m])=>({name:s,version:typeof m=="string"?m:void 0})),...Object.entries(r).map(([s,m])=>({name:s,version:typeof m=="string"?m:void 0,isDevDependency:!0})),...Object.entries(i).map(([s,m])=>({name:s,version:typeof m=="string"?m:void 0}))]}]}};var V=/(.+?)(=+)(.+)/,H=/name *= *('|")(.+?)('|")/,Q=/description *= *('|")(.+?)('|")/,P={supportedFiles:["requirements.txt"],ignoreDirs:["build","lib","lib64"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),a=_chunkN27TJLBGcjs.c.call(void 0, o).find(s=>s==="setup.py"),t=a?_fs.readFileSync.call(void 0, _path.join.call(void 0, o,a),"utf-8"):void 0,p=t?(H.exec(t)||[])[2]:void 0,r=t?(Q.exec(t)||[])[2]:void 0,i=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(V,"g"),matches:["name","equals","version"]},n);return[{name:p||o.split("/").pop(),description:r||void 0,type:_privacytypes.CodePackageType.RequirementsTxt,softwareDevelopmentKits:i.map(s=>({name:s.name,version:s.version}))}]}};var ee=/gem *('|")(.+?)('|")(, *('|")(.+?)('|")|)/,ne=/spec\.name *= *('|")(.+?)('|")/,oe=/spec\.description *= *('|")(.+?)('|")/,te=/spec\.summary *= *('|")(.+?)('|")/,k={supportedFiles:["Gemfile"],ignoreDirs:["bin"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),a=_chunkN27TJLBGcjs.c.call(void 0, o).find(s=>s===".gemspec"),t=a?_fs.readFileSync.call(void 0, a,"utf-8"):void 0,p=t?(ne.exec(t)||[])[2]:void 0,r=t?(oe.exec(t)||te.exec(t)||[])[1]:void 0,i=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(ee,"g"),matches:["quote1","name","quote2","hasVersion","quote3","version","quote4"]},n);return[{name:p||o.split("/").pop(),description:r||void 0,type:_privacytypes.CodePackageType.RequirementsTxt,softwareDevelopmentKits:i.map(s=>({name:s.name,version:s.version}))}]}};var _jsyaml = require('js-yaml'); var _jsyaml2 = _interopRequireDefault(_jsyaml);function pe(e){return e.split(`
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunk22FUPUQJcjs = require('./chunk-22FUPUQJ.cjs');var _chunkZUNVPK23cjs = require('./chunk-ZUNVPK23.cjs');var _fs = require('fs');var _typeutils = require('@transcend-io/type-utils');var _privacytypes = require('@transcend-io/privacy-types');var N=/target ('|")(.*?)('|")/,O=/pod ('|")(.*?)('|")(, ('|")~> (.+?)('|")|)/,y={supportedFiles:["Podfile"],ignoreDirs:["Pods"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(N,"g"),matches:["quote1","name","quote2"]},n),c=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(O,"g"),matches:["quote1","name","quote2","extra","quote3","version","quote4"]},n);return o.map((t,p)=>({name:t.name,type:_privacytypes.CodePackageType.CocoaPods,softwareDevelopmentKits:c.filter(r=>r.matchIndex>t.matchIndex&&(!o[p+1]||r.matchIndex<o[p+1].matchIndex)).map(r=>({name:r.name,version:r.version}))}))}};var _path = require('path');var K=/implementation( *)('|")(.+?):(.+?):(.+?|)('|")/,M=/apply plugin: *('|")(.+?)(:(.+?)|)('|")/,j=/implementation group:( *)('|")(.+?)('|"),( *)name:( *)('|")(.+?)('|"),( *)version:( *)('|")(.+?)('|")/,L=/applicationId( *)"(.+?)"/,S={supportedFiles:["build.gradle**"],ignoreDirs:["gradle-app.setting","gradle-wrapper.jar","gradle-wrapper.properties"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),c=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(K,"g"),matches:["space","quote1","name","path","version","quote2"]},n),a=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(M,"g"),matches:["quote1","name","group","version","quote2"]},n),t=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(j,"g"),matches:["space1","quote1","group","quote2","space2","space3","quote3","name","quote4","space4","space5","quote5","version","quote6"]},n),p=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(L,"g"),matches:["space","name"]},n);if(p.length>1)throw new Error(`Expected only one applicationId per file: ${e}`);return[{name:_optionalChain([p, 'access', _2 => _2[0], 'optionalAccess', _3 => _3.name])||o.split("/").pop(),softwareDevelopmentKits:[...c,...t,...a].map(r=>({name:r.name,version:r.version||void 0}))}]}};var x={supportedFiles:["package.json"],ignoreDirs:["node_modules","serverless-build","lambda-build"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),c=JSON.parse(n),{name:a,description:t,dependencies:p={},devDependencies:r={},optionalDependencies:i={}}=c;return[{name:a||o.split("/").pop(),description:t,softwareDevelopmentKits:[...Object.entries(p).map(([s,m])=>({name:s,version:typeof m=="string"?m:void 0})),...Object.entries(r).map(([s,m])=>({name:s,version:typeof m=="string"?m:void 0,isDevDependency:!0})),...Object.entries(i).map(([s,m])=>({name:s,version:typeof m=="string"?m:void 0}))]}]}};var V=/(.+?)(=+)(.+)/,H=/name *= *('|")(.+?)('|")/,Q=/description *= *('|")(.+?)('|")/,P={supportedFiles:["requirements.txt"],ignoreDirs:["build","lib","lib64"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),a=_chunk22FUPUQJcjs.c.call(void 0, o).find(s=>s==="setup.py"),t=a?_fs.readFileSync.call(void 0, _path.join.call(void 0, o,a),"utf-8"):void 0,p=t?(H.exec(t)||[])[2]:void 0,r=t?(Q.exec(t)||[])[2]:void 0,i=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(V,"g"),matches:["name","equals","version"]},n);return[{name:p||o.split("/").pop(),description:r||void 0,type:_privacytypes.CodePackageType.RequirementsTxt,softwareDevelopmentKits:i.map(s=>({name:s.name,version:s.version}))}]}};var ee=/gem *('|")(.+?)('|")(, *('|")(.+?)('|")|)/,ne=/spec\.name *= *('|")(.+?)('|")/,oe=/spec\.description *= *('|")(.+?)('|")/,te=/spec\.summary *= *('|")(.+?)('|")/,k={supportedFiles:["Gemfile"],ignoreDirs:["bin"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),a=_chunk22FUPUQJcjs.c.call(void 0, o).find(s=>s===".gemspec"),t=a?_fs.readFileSync.call(void 0, a,"utf-8"):void 0,p=t?(ne.exec(t)||[])[2]:void 0,r=t?(oe.exec(t)||te.exec(t)||[])[1]:void 0,i=_typeutils.findAllWithRegex.call(void 0, {value:new RegExp(ee,"g"),matches:["quote1","name","quote2","hasVersion","quote3","version","quote4"]},n);return[{name:p||o.split("/").pop(),description:r||void 0,type:_privacytypes.CodePackageType.RequirementsTxt,softwareDevelopmentKits:i.map(s=>({name:s.name,version:s.version}))}]}};var _jsyaml = require('js-yaml'); var _jsyaml2 = _interopRequireDefault(_jsyaml);function pe(e){return e.split(`
2
2
  `).map(n=>{let o=n.indexOf("#");return o>-1&&!n.substring(0,o).includes('"')&&!n.substring(0,o).includes("'")?n.substring(0,o).trim():n}).filter(n=>n.length>0).join(`
3
3
  `)}var v={supportedFiles:["pubspec.yml"],ignoreDirs:["build"],scanFunction:e=>{let n=_path.dirname.call(void 0, e),o=_fs.readFileSync.call(void 0, e,"utf-8"),{name:c,description:a,dev_dependencies:t={},dependencies:p={}}=_jsyaml2.default.load(pe(o));return[{name:c||n.split("/").pop(),description:a,type:_privacytypes.CodePackageType.RequirementsTxt,softwareDevelopmentKits:[...Object.entries(p).map(([r,i])=>({name:r,version:typeof i=="string"?i:typeof i=="number"?i.toString():_optionalChain([i, 'optionalAccess', _4 => _4.sdk])})),...Object.entries(t).map(([r,i])=>({name:r,version:typeof i=="string"?i:typeof i=="number"?i.toString():_optionalChain([i, 'optionalAccess', _5 => _5.sdk]),isDevDependency:!0}))]}]}};var I={supportedFiles:["composer.json"],ignoreDirs:["vendor","node_modules","cache","build","dist"],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_path.dirname.call(void 0, e),c=JSON.parse(n),{name:a,description:t,require:p={},"require-dev":r={}}=c;return[{name:a||o.split("/").pop(),description:t,softwareDevelopmentKits:[...Object.entries(p).map(([i,s])=>({name:i,version:typeof s=="string"?s:void 0})),...Object.entries(r).map(([i,s])=>({name:i,version:typeof s=="string"?s:void 0,isDevDependency:!0}))]}]}};var _iots = require('io-ts'); var d = _interopRequireWildcard(_iots);var le=d.type({pins:d.array(d.type({identity:d.string,kind:d.string,location:d.string,state:d.type({revision:d.string,version:d.string})})),version:d.number}),D={supportedFiles:["Package.resolved"],ignoreDirs:[],scanFunction:e=>{let n=_fs.readFileSync.call(void 0, e,"utf-8"),o=_typeutils.decodeCodec.call(void 0, le,n);return[{name:_path.dirname.call(void 0, e).split("/").pop()||"",type:_privacytypes.CodePackageType.CocoaPods,softwareDevelopmentKits:o.pins.map(c=>({name:c.identity,version:c.state.version}))}]}};var gn={cocoaPods:y,gradle:S,javascriptPackageJson:x,pythonRequirementsTxt:P,gemfile:k,pubspec:v,swift:D},_={[_privacytypes.CodePackageType.CocoaPods]:y,[_privacytypes.CodePackageType.Gradle]:S,[_privacytypes.CodePackageType.PackageJson]:x,[_privacytypes.CodePackageType.RequirementsTxt]:P,[_privacytypes.CodePackageType.Gemfile]:k,[_privacytypes.CodePackageType.Pubspec]:v,[_privacytypes.CodePackageType.ComposerJson]:I,[_privacytypes.CodePackageType.Swift]:D};var _fastglob = require('fast-glob'); var _fastglob2 = _interopRequireDefault(_fastglob);var _colors = require('colors'); var _colors2 = _interopRequireDefault(_colors);async function Sn({scanPath:e,ignoreDirs:n=[],repositoryName:o}){return(await Promise.all(_typeutils.getEntries.call(void 0, _).map(async([a,t])=>{let{ignoreDirs:p,supportedFiles:r,scanFunction:i}=t,s=[...n,...p].filter(m=>m.length>0);try{let m=await _fastglob2.default.call(void 0, `${e}/**/${r.join("|")}`,{ignore:s.map(g=>`${e}/**/${g}`),unique:!0,onlyFiles:!0});_chunkZUNVPK23cjs.a.info(_colors2.default.magenta(`Scanning: ${m.length} files of type ${a}`));let C=m.map(g=>i(g).map(q=>({...q,relativePath:g.replace(`${e}/`,"")}))).flat();return _chunkZUNVPK23cjs.a.info(_colors2.default.green(`Found: ${C.length} packages and ${C.map(({softwareDevelopmentKits:g=[]})=>g).flat().length} sdks`)),C.map(g=>({...g,type:a,repositoryName:o}))}catch(m){throw new Error(`Error scanning globs ${r} with error: ${m}`)}}))).flat()}exports.a = gn; exports.b = Sn;
4
- //# sourceMappingURL=chunk-YGAK4NBT.cjs.map
4
+ //# sourceMappingURL=chunk-STKQW3E3.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-YGAK4NBT.cjs","../src/lib/code-scanning/integrations/cocoaPods.ts","../src/lib/code-scanning/integrations/gradle.ts","../src/lib/code-scanning/integrations/pubspec.ts","../src/lib/code-scanning/constants.ts"],"names":["POD_TARGET_REGEX","POD_PACKAGE_REGEX","cocoaPods","filePath","fileContents","readFileSync","targets","findAllWithRegex","packages","target","ind","CodePackageType","pkg","GRADLE_IMPLEMENTATION_REGEX","GRADLE_PLUGIN_REGEX","GRADLE_IMPLEMENTATION_GROUP_REGEX","GRADLE_APPLICATION_NAME_REGEX","gradle","directory","dirname","targetPlugins","targetGroups","applications"],"mappings":"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","file":"/home/runner/work/cli/cli/dist/chunk-YGAK4NBT.cjs","sourcesContent":[null,"import { readFileSync } from 'fs';\nimport { CodeScanningConfig } from '../types';\nimport { CodePackageSdk } from '../../../codecs';\nimport { findAllWithRegex } from '@transcend-io/type-utils';\nimport { CodePackageType } from '@transcend-io/privacy-types';\n\nconst POD_TARGET_REGEX = /target ('|\")(.*?)('|\")/;\nconst POD_PACKAGE_REGEX = /pod ('|\")(.*?)('|\")(, ('|\")~> (.+?)('|\")|)/;\n\nexport const cocoaPods: CodeScanningConfig = {\n supportedFiles: ['Podfile'],\n ignoreDirs: ['Pods'],\n scanFunction: (filePath) => {\n const fileContents = readFileSync(filePath, 'utf-8');\n\n const targets = findAllWithRegex(\n {\n value: new RegExp(POD_TARGET_REGEX, 'g'),\n matches: ['quote1', 'name', 'quote2'],\n },\n fileContents,\n );\n const packages = findAllWithRegex(\n {\n value: new RegExp(POD_PACKAGE_REGEX, 'g'),\n matches: [\n 'quote1',\n 'name',\n 'quote2',\n 'extra',\n 'quote3',\n 'version',\n 'quote4',\n ],\n },\n fileContents,\n );\n\n const deps: CodePackageSdk[] = targets.map((target, ind) => ({\n name: target.name,\n type: CodePackageType.CocoaPods,\n softwareDevelopmentKits: packages\n .filter(\n (pkg) =>\n pkg.matchIndex > target.matchIndex &&\n (!targets[ind + 1] || pkg.matchIndex < targets[ind + 1].matchIndex),\n )\n .map((pkg) => ({\n name: pkg.name,\n version: pkg.version,\n })),\n }));\n\n return deps;\n },\n};\n","import { readFileSync } from 'fs';\nimport { CodeScanningConfig } from '../types';\nimport { findAllWithRegex } from '@transcend-io/type-utils';\nimport { dirname } from 'path';\n\nconst GRADLE_IMPLEMENTATION_REGEX =\n /implementation( *)('|\")(.+?):(.+?):(.+?|)('|\")/;\nconst GRADLE_PLUGIN_REGEX = /apply plugin: *('|\")(.+?)(:(.+?)|)('|\")/;\nconst GRADLE_IMPLEMENTATION_GROUP_REGEX =\n /implementation group:( *)('|\")(.+?)('|\"),( *)name:( *)('|\")(.+?)('|\"),( *)version:( *)('|\")(.+?)('|\")/;\nconst GRADLE_APPLICATION_NAME_REGEX = /applicationId( *)\"(.+?)\"/;\n\n/**\n * So far, there are three ways of defining dependencies that is supported\n * implementation group: 'org.eclipse.jdt', name: 'org.eclipse.jdt.core', version: '3.28.0'\n * or\n * implementation 'com.google.firebase:firebase-analytics:18.0.0'\n * or\n * apply plugin: 'com.google.gms.google-services'\n *\n * single and double quotes are both recognized\n */\nexport const gradle: CodeScanningConfig = {\n supportedFiles: ['build.gradle**'],\n ignoreDirs: [\n 'gradle-app.setting',\n 'gradle-wrapper.jar',\n 'gradle-wrapper.properties',\n ],\n scanFunction: (filePath) => {\n const fileContents = readFileSync(filePath, 'utf-8');\n const directory = dirname(filePath);\n\n const targets = findAllWithRegex(\n {\n value: new RegExp(GRADLE_IMPLEMENTATION_REGEX, 'g'),\n matches: ['space', 'quote1', 'name', 'path', 'version', 'quote2'],\n },\n fileContents,\n );\n const targetPlugins = findAllWithRegex(\n {\n value: new RegExp(GRADLE_PLUGIN_REGEX, 'g'),\n matches: ['quote1', 'name', 'group', 'version', 'quote2'],\n },\n fileContents,\n );\n const targetGroups = findAllWithRegex(\n {\n value: new RegExp(GRADLE_IMPLEMENTATION_GROUP_REGEX, 'g'),\n matches: [\n 'space1',\n 'quote1',\n 'group',\n 'quote2',\n 'space2',\n 'space3',\n 'quote3',\n 'name',\n 'quote4',\n 'space4',\n 'space5',\n 'quote5',\n 'version',\n 'quote6',\n ],\n },\n fileContents,\n );\n const applications = findAllWithRegex(\n {\n value: new RegExp(GRADLE_APPLICATION_NAME_REGEX, 'g'),\n matches: ['space', 'name'],\n },\n fileContents,\n );\n if (applications.length > 1) {\n throw new Error(`Expected only one applicationId per file: ${filePath}`);\n }\n\n return [\n {\n name: applications[0]?.name || directory.split('/').pop()!,\n softwareDevelopmentKits: [\n ...targets,\n ...targetGroups,\n ...targetPlugins,\n ].map((target) => ({\n name: target.name,\n version: target.version || undefined,\n })),\n },\n ];\n },\n};\n","import { readFileSync } from 'fs';\nimport { CodeScanningConfig } from '../types';\nimport { CodePackageType } from '@transcend-io/privacy-types';\nimport yaml from 'js-yaml';\nimport { dirname } from 'path';\n\n/**\n * Remove YAML comments from a string\n *\n * @param yamlString - YAML string\n * @returns String without comments\n */\nfunction removeYAMLComments(yamlString: string): string {\n return yamlString\n .split('\\n')\n .map((line) => {\n // Remove inline comments\n const commentIndex = line.indexOf('#');\n if (commentIndex > -1) {\n // Check if '#' is not inside a string\n if (\n !line.substring(0, commentIndex).includes('\"') &&\n !line.substring(0, commentIndex).includes(\"'\")\n ) {\n return line.substring(0, commentIndex).trim();\n }\n }\n return line;\n })\n .filter((line) => line.length > 0)\n .join('\\n');\n}\n\nexport const pubspec: CodeScanningConfig = {\n supportedFiles: ['pubspec.yml'],\n ignoreDirs: ['build'],\n scanFunction: (filePath) => {\n const directory = dirname(filePath);\n const fileContents = readFileSync(filePath, 'utf-8');\n const {\n name,\n description,\n dev_dependencies = {},\n dependencies = {},\n } = yaml.load(removeYAMLComments(fileContents)) as {\n /** Name */\n name?: string;\n /** Description */\n description?: string;\n /** Dev dependencies */\n dev_dependencies?: { [k in string]: number | Record<string, string> };\n /** Dependencies */\n dependencies?: { [k in string]: number | Record<string, string> };\n };\n return [\n {\n name: name || directory.split('/').pop()!,\n description,\n type: CodePackageType.RequirementsTxt,\n softwareDevelopmentKits: [\n ...Object.entries(dependencies).map(([name, version]) => ({\n name,\n version:\n typeof version === 'string'\n ? version\n : typeof version === 'number'\n ? version.toString()\n : version?.sdk,\n })),\n ...Object.entries(dev_dependencies).map(([name, version]) => ({\n name,\n version:\n typeof version === 'string'\n ? version\n : typeof version === 'number'\n ? version.toString()\n : version?.sdk,\n isDevDependency: true,\n })),\n ],\n },\n ];\n },\n};\n","import { CodeScanningConfig } from './types';\nimport {\n cocoaPods,\n gradle,\n javascriptPackageJson,\n gemfile,\n composerJson,\n pubspec,\n swift,\n pythonRequirementsTxt,\n} from './integrations';\nimport { CodePackageType } from '@transcend-io/privacy-types';\n\n/**\n * @deprecated TODO: https://transcend.height.app/T-32325 - use code scanning instead\n */\nexport const SILO_DISCOVERY_CONFIGS: {\n [k in string]: CodeScanningConfig;\n} = {\n cocoaPods,\n gradle,\n javascriptPackageJson,\n pythonRequirementsTxt,\n gemfile,\n pubspec,\n swift,\n};\n\nexport const CODE_SCANNING_CONFIGS: {\n [k in CodePackageType]: CodeScanningConfig;\n} = {\n [CodePackageType.CocoaPods]: cocoaPods,\n [CodePackageType.Gradle]: gradle,\n [CodePackageType.PackageJson]: javascriptPackageJson,\n [CodePackageType.RequirementsTxt]: pythonRequirementsTxt,\n [CodePackageType.Gemfile]: gemfile,\n [CodePackageType.Pubspec]: pubspec,\n [CodePackageType.ComposerJson]: composerJson,\n [CodePackageType.Swift]: swift,\n};\n"]}
1
+ {"version":3,"sources":["/home/runner/work/cli/cli/dist/chunk-STKQW3E3.cjs","../src/lib/code-scanning/integrations/cocoaPods.ts","../src/lib/code-scanning/integrations/gradle.ts","../src/lib/code-scanning/integrations/pubspec.ts","../src/lib/code-scanning/constants.ts"],"names":["POD_TARGET_REGEX","POD_PACKAGE_REGEX","cocoaPods","filePath","fileContents","readFileSync","targets","findAllWithRegex","packages","target","ind","CodePackageType","pkg","GRADLE_IMPLEMENTATION_REGEX","GRADLE_PLUGIN_REGEX","GRADLE_IMPLEMENTATION_GROUP_REGEX","GRADLE_APPLICATION_NAME_REGEX","gradle","directory","dirname","targetPlugins","targetGroups","applications"],"mappings":"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","file":"/home/runner/work/cli/cli/dist/chunk-STKQW3E3.cjs","sourcesContent":[null,"import { readFileSync } from 'fs';\nimport { CodeScanningConfig } from '../types';\nimport { CodePackageSdk } from '../../../codecs';\nimport { findAllWithRegex } from '@transcend-io/type-utils';\nimport { CodePackageType } from '@transcend-io/privacy-types';\n\nconst POD_TARGET_REGEX = /target ('|\")(.*?)('|\")/;\nconst POD_PACKAGE_REGEX = /pod ('|\")(.*?)('|\")(, ('|\")~> (.+?)('|\")|)/;\n\nexport const cocoaPods: CodeScanningConfig = {\n supportedFiles: ['Podfile'],\n ignoreDirs: ['Pods'],\n scanFunction: (filePath) => {\n const fileContents = readFileSync(filePath, 'utf-8');\n\n const targets = findAllWithRegex(\n {\n value: new RegExp(POD_TARGET_REGEX, 'g'),\n matches: ['quote1', 'name', 'quote2'],\n },\n fileContents,\n );\n const packages = findAllWithRegex(\n {\n value: new RegExp(POD_PACKAGE_REGEX, 'g'),\n matches: [\n 'quote1',\n 'name',\n 'quote2',\n 'extra',\n 'quote3',\n 'version',\n 'quote4',\n ],\n },\n fileContents,\n );\n\n const deps: CodePackageSdk[] = targets.map((target, ind) => ({\n name: target.name,\n type: CodePackageType.CocoaPods,\n softwareDevelopmentKits: packages\n .filter(\n (pkg) =>\n pkg.matchIndex > target.matchIndex &&\n (!targets[ind + 1] || pkg.matchIndex < targets[ind + 1].matchIndex),\n )\n .map((pkg) => ({\n name: pkg.name,\n version: pkg.version,\n })),\n }));\n\n return deps;\n },\n};\n","import { readFileSync } from 'fs';\nimport { CodeScanningConfig } from '../types';\nimport { findAllWithRegex } from '@transcend-io/type-utils';\nimport { dirname } from 'path';\n\nconst GRADLE_IMPLEMENTATION_REGEX =\n /implementation( *)('|\")(.+?):(.+?):(.+?|)('|\")/;\nconst GRADLE_PLUGIN_REGEX = /apply plugin: *('|\")(.+?)(:(.+?)|)('|\")/;\nconst GRADLE_IMPLEMENTATION_GROUP_REGEX =\n /implementation group:( *)('|\")(.+?)('|\"),( *)name:( *)('|\")(.+?)('|\"),( *)version:( *)('|\")(.+?)('|\")/;\nconst GRADLE_APPLICATION_NAME_REGEX = /applicationId( *)\"(.+?)\"/;\n\n/**\n * So far, there are three ways of defining dependencies that is supported\n * implementation group: 'org.eclipse.jdt', name: 'org.eclipse.jdt.core', version: '3.28.0'\n * or\n * implementation 'com.google.firebase:firebase-analytics:18.0.0'\n * or\n * apply plugin: 'com.google.gms.google-services'\n *\n * single and double quotes are both recognized\n */\nexport const gradle: CodeScanningConfig = {\n supportedFiles: ['build.gradle**'],\n ignoreDirs: [\n 'gradle-app.setting',\n 'gradle-wrapper.jar',\n 'gradle-wrapper.properties',\n ],\n scanFunction: (filePath) => {\n const fileContents = readFileSync(filePath, 'utf-8');\n const directory = dirname(filePath);\n\n const targets = findAllWithRegex(\n {\n value: new RegExp(GRADLE_IMPLEMENTATION_REGEX, 'g'),\n matches: ['space', 'quote1', 'name', 'path', 'version', 'quote2'],\n },\n fileContents,\n );\n const targetPlugins = findAllWithRegex(\n {\n value: new RegExp(GRADLE_PLUGIN_REGEX, 'g'),\n matches: ['quote1', 'name', 'group', 'version', 'quote2'],\n },\n fileContents,\n );\n const targetGroups = findAllWithRegex(\n {\n value: new RegExp(GRADLE_IMPLEMENTATION_GROUP_REGEX, 'g'),\n matches: [\n 'space1',\n 'quote1',\n 'group',\n 'quote2',\n 'space2',\n 'space3',\n 'quote3',\n 'name',\n 'quote4',\n 'space4',\n 'space5',\n 'quote5',\n 'version',\n 'quote6',\n ],\n },\n fileContents,\n );\n const applications = findAllWithRegex(\n {\n value: new RegExp(GRADLE_APPLICATION_NAME_REGEX, 'g'),\n matches: ['space', 'name'],\n },\n fileContents,\n );\n if (applications.length > 1) {\n throw new Error(`Expected only one applicationId per file: ${filePath}`);\n }\n\n return [\n {\n name: applications[0]?.name || directory.split('/').pop()!,\n softwareDevelopmentKits: [\n ...targets,\n ...targetGroups,\n ...targetPlugins,\n ].map((target) => ({\n name: target.name,\n version: target.version || undefined,\n })),\n },\n ];\n },\n};\n","import { readFileSync } from 'fs';\nimport { CodeScanningConfig } from '../types';\nimport { CodePackageType } from '@transcend-io/privacy-types';\nimport yaml from 'js-yaml';\nimport { dirname } from 'path';\n\n/**\n * Remove YAML comments from a string\n *\n * @param yamlString - YAML string\n * @returns String without comments\n */\nfunction removeYAMLComments(yamlString: string): string {\n return yamlString\n .split('\\n')\n .map((line) => {\n // Remove inline comments\n const commentIndex = line.indexOf('#');\n if (commentIndex > -1) {\n // Check if '#' is not inside a string\n if (\n !line.substring(0, commentIndex).includes('\"') &&\n !line.substring(0, commentIndex).includes(\"'\")\n ) {\n return line.substring(0, commentIndex).trim();\n }\n }\n return line;\n })\n .filter((line) => line.length > 0)\n .join('\\n');\n}\n\nexport const pubspec: CodeScanningConfig = {\n supportedFiles: ['pubspec.yml'],\n ignoreDirs: ['build'],\n scanFunction: (filePath) => {\n const directory = dirname(filePath);\n const fileContents = readFileSync(filePath, 'utf-8');\n const {\n name,\n description,\n dev_dependencies = {},\n dependencies = {},\n } = yaml.load(removeYAMLComments(fileContents)) as {\n /** Name */\n name?: string;\n /** Description */\n description?: string;\n /** Dev dependencies */\n dev_dependencies?: { [k in string]: number | Record<string, string> };\n /** Dependencies */\n dependencies?: { [k in string]: number | Record<string, string> };\n };\n return [\n {\n name: name || directory.split('/').pop()!,\n description,\n type: CodePackageType.RequirementsTxt,\n softwareDevelopmentKits: [\n ...Object.entries(dependencies).map(([name, version]) => ({\n name,\n version:\n typeof version === 'string'\n ? version\n : typeof version === 'number'\n ? version.toString()\n : version?.sdk,\n })),\n ...Object.entries(dev_dependencies).map(([name, version]) => ({\n name,\n version:\n typeof version === 'string'\n ? version\n : typeof version === 'number'\n ? version.toString()\n : version?.sdk,\n isDevDependency: true,\n })),\n ],\n },\n ];\n },\n};\n","import { CodeScanningConfig } from './types';\nimport {\n cocoaPods,\n gradle,\n javascriptPackageJson,\n gemfile,\n composerJson,\n pubspec,\n swift,\n pythonRequirementsTxt,\n} from './integrations';\nimport { CodePackageType } from '@transcend-io/privacy-types';\n\n/**\n * @deprecated TODO: https://transcend.height.app/T-32325 - use code scanning instead\n */\nexport const SILO_DISCOVERY_CONFIGS: {\n [k in string]: CodeScanningConfig;\n} = {\n cocoaPods,\n gradle,\n javascriptPackageJson,\n pythonRequirementsTxt,\n gemfile,\n pubspec,\n swift,\n};\n\nexport const CODE_SCANNING_CONFIGS: {\n [k in CodePackageType]: CodeScanningConfig;\n} = {\n [CodePackageType.CocoaPods]: cocoaPods,\n [CodePackageType.Gradle]: gradle,\n [CodePackageType.PackageJson]: javascriptPackageJson,\n [CodePackageType.RequirementsTxt]: pythonRequirementsTxt,\n [CodePackageType.Gemfile]: gemfile,\n [CodePackageType.Pubspec]: pubspec,\n [CodePackageType.ComposerJson]: composerJson,\n [CodePackageType.Swift]: swift,\n};\n"]}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }function Zo(r,e,t){var o=-1,a=r.length;e<0&&(e=-e>a?0:a+e),t=t>a?a:t,t<0&&(t+=a),a=e>t?0:t-e>>>0,e>>>=0;for(var f=Array(a);++o<a;)f[o]=r[o+e];return f}var br=Zo;function $o(r,e){return r===e||r!==r&&e!==e}var H=$o;var Jo=typeof global=="object"&&global&&global.Object===Object&&global,yr=Jo;var Yo=typeof self=="object"&&self&&self.Object===Object&&self,Vo=yr||Yo||Function("return this")(),x=Vo;var Xo=x.Symbol,g=Xo;var Xr=Object.prototype,Qo=Xr.hasOwnProperty,ra=Xr.toString,mr=g?g.toStringTag:void 0;function ea(r){var e=Qo.call(r,mr),t=r[mr];try{r[mr]=void 0;var o=!0}catch (e2){}var a=ra.call(r);return o&&(e?r[mr]=t:delete r[mr]),a}var Qr=ea;var ta=Object.prototype,oa=ta.toString;function aa(r){return oa.call(r)}var re=aa;var fa="[object Null]",na="[object Undefined]",ee=g?g.toStringTag:void 0;function ia(r){return r==null?r===void 0?na:fa:ee&&ee in Object(r)?Qr(r):re(r)}var v=ia;function sa(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}var A=sa;var ua="[object AsyncFunction]",pa="[object Function]",ma="[object GeneratorFunction]",da="[object Proxy]";function la(r){if(!A(r))return!1;var e=v(r);return e==pa||e==ma||e==ua||e==da}var _r=la;var ca=9007199254740991;function xa(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=ca}var k=xa;function ga(r){return r!=null&&k(r.length)&&!_r(r)}var w=ga;var ha=9007199254740991,ba=/^(?:0|[1-9]\d*)$/;function ya(r,e){var t=typeof r;return e=_nullishCoalesce(e, () => (ha)),!!e&&(t=="number"||t!="symbol"&&ba.test(r))&&r>-1&&r%1==0&&r<e}var K=ya;function _a(r,e,t){if(!A(t))return!1;var o=typeof e;return(o=="number"?w(t)&&K(e,t.length):o=="string"&&e in t)?H(t[e],r):!1}var dr=_a;var va=/\s/;function Aa(r){for(var e=r.length;e--&&va.test(r.charAt(e)););return e}var te=Aa;var Oa=/^\s+/;function wa(r){return r&&r.slice(0,te(r)+1).replace(Oa,"")}var oe=wa;function Ta(r){return r!=null&&typeof r=="object"}var b=Ta;var Sa="[object Symbol]";function Ca(r){return typeof r=="symbol"||b(r)&&v(r)==Sa}var O=Ca;var ae=NaN,ja=/^[-+]0x[0-9a-f]+$/i,Ia=/^0b[01]+$/i,Pa=/^0o[0-7]+$/i,Ea=parseInt;function Ra(r){if(typeof r=="number")return r;if(O(r))return ae;if(A(r)){var e=typeof r.valueOf=="function"?r.valueOf():r;r=A(e)?e+"":e}if(typeof r!="string")return r===0?r:+r;r=oe(r);var t=Ia.test(r);return t||Pa.test(r)?Ea(r.slice(2),t?2:8):ja.test(r)?ae:+r}var fe=Ra;var ne=1/0,Ma=17976931348623157e292;function La(r){if(!r)return r===0?r:0;if(r=fe(r),r===ne||r===-ne){var e=r<0?-1:1;return e*Ma}return r===r?r:0}var ie=La;function Na(r){var e=ie(r),t=e%1;return e===e?t?e-t:e:0}var se=Na;var Da=Math.ceil,Fa=Math.max;function Ba(r,e,t){(t?dr(r,e,t):e===void 0)?e=1:e=Fa(se(e),0);var o=r==null?0:r.length;if(!o||e<1)return[];for(var a=0,f=0,n=Array(Da(o/e));a<o;)n[f++]=br(r,a,a+=e);return n}var Ua=Ba;var qa=x["__core-js_shared__"],vr=qa;var ue=function(){var r=/[^.]+$/.exec(vr&&vr.keys&&vr.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function Wa(r){return!!ue&&ue in r}var pe=Wa;var Ga=Function.prototype,za=Ga.toString;function Ha(r){if(r!=null){try{return za.call(r)}catch (e3){}try{return r+""}catch (e4){}}return""}var S=Ha;var ka=/[\\^$.*+?()[\]{}|]/g,Ka=/^\[object .+?Constructor\]$/,Za=Function.prototype,$a=Object.prototype,Ja=Za.toString,Ya=$a.hasOwnProperty,Va=RegExp("^"+Ja.call(Ya).replace(ka,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Xa(r){if(!A(r)||pe(r))return!1;var e=_r(r)?Va:Ka;return e.test(S(r))}var me=Xa;function Qa(r,e){return _optionalChain([r, 'optionalAccess', _2 => _2[e]])}var de=Qa;function rf(r,e){var t=de(r,e);return me(t)?t:void 0}var h=rf;var ef=h(Object,"create"),C=ef;function tf(){this.__data__=C?C(null):{},this.size=0}var le=tf;function of(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}var ce=of;var af="__lodash_hash_undefined__",ff=Object.prototype,nf=ff.hasOwnProperty;function sf(r){var e=this.__data__;if(C){var t=e[r];return t===af?void 0:t}return nf.call(e,r)?e[r]:void 0}var xe=sf;var uf=Object.prototype,pf=uf.hasOwnProperty;function mf(r){var e=this.__data__;return C?e[r]!==void 0:pf.call(e,r)}var ge=mf;var df="__lodash_hash_undefined__";function lf(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=C&&e===void 0?df:e,this}var he=lf;function Z(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var o=r[e];this.set(o[0],o[1])}}Z.prototype.clear=le;Z.prototype.delete=ce;Z.prototype.get=xe;Z.prototype.has=ge;Z.prototype.set=he;var qr=Z;function cf(){this.__data__=[],this.size=0}var be=cf;function xf(r,e){for(var t=r.length;t--;)if(H(r[t][0],e))return t;return-1}var I=xf;var gf=Array.prototype,hf=gf.splice;function bf(r){var e=this.__data__,t=I(e,r);if(t<0)return!1;var o=e.length-1;return t==o?e.pop():hf.call(e,t,1),--this.size,!0}var ye=bf;function yf(r){var e=this.__data__,t=I(e,r);return t<0?void 0:e[t][1]}var _e=yf;function _f(r){return I(this.__data__,r)>-1}var ve=_f;function vf(r,e){var t=this.__data__,o=I(t,r);return o<0?(++this.size,t.push([r,e])):t[o][1]=e,this}var Ae=vf;function $(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var o=r[e];this.set(o[0],o[1])}}$.prototype.clear=be;$.prototype.delete=ye;$.prototype.get=_e;$.prototype.has=ve;$.prototype.set=Ae;var P=$;var Af=h(x,"Map"),E=Af;function Of(){this.size=0,this.__data__={hash:new qr,map:new(E||P),string:new qr}}var Oe=Of;function wf(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}var we=wf;function Tf(r,e){var t=r.__data__;return we(e)?t[typeof e=="string"?"string":"hash"]:t.map}var R=Tf;function Sf(r){var e=R(this,r).delete(r);return this.size-=e?1:0,e}var Te=Sf;function Cf(r){return R(this,r).get(r)}var Se=Cf;function jf(r){return R(this,r).has(r)}var Ce=jf;function If(r,e){var t=R(this,r),o=t.size;return t.set(r,e),this.size+=t.size==o?0:1,this}var je=If;function J(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var o=r[e];this.set(o[0],o[1])}}J.prototype.clear=Oe;J.prototype.delete=Te;J.prototype.get=Se;J.prototype.has=Ce;J.prototype.set=je;var G=J;var Pf="__lodash_hash_undefined__";function Ef(r){return this.__data__.set(r,Pf),this}var Ie=Ef;function Rf(r){return this.__data__.has(r)}var Pe=Rf;function Ar(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new G;++e<t;)this.add(r[e])}Ar.prototype.add=Ar.prototype.push=Ie;Ar.prototype.has=Pe;var Y=Ar;function Mf(r,e,t,o){for(var a=r.length,f=t+(o?1:-1);o?f--:++f<a;)if(e(r[f],f,r))return f;return-1}var Ee=Mf;function Lf(r){return r!==r}var Re=Lf;function Nf(r,e,t){for(var o=t-1,a=r.length;++o<a;)if(r[o]===e)return o;return-1}var Me=Nf;function Df(r,e,t){return e===e?Me(r,e,t):Ee(r,Re,t)}var Le=Df;function Ff(r,e){var t=r==null?0:r.length;return!!t&&Le(r,e,0)>-1}var Or=Ff;function Bf(r,e,t){for(var o=-1,a=r==null?0:r.length;++o<a;)if(t(e,r[o]))return!0;return!1}var wr=Bf;function Uf(r,e){for(var t=-1,o=r==null?0:r.length,a=Array(o);++t<o;)a[t]=e(r[t],t,r);return a}var M=Uf;function qf(r){return function(e){return r(e)}}var V=qf;function Wf(r,e){return r.has(e)}var X=Wf;var Gf=200;function zf(r,e,t,o){var a=-1,f=Or,n=!0,i=r.length,s=[],u=e.length;if(!i)return s;t&&(e=M(e,V(t))),o?(f=wr,n=!1):e.length>=Gf&&(f=X,n=!1,e=new Y(e));r:for(;++a<i;){var p=r[a],m=t==null?p:t(p);if(p=o||p!==0?p:0,n&&m===m){for(var d=u;d--;)if(e[d]===m)continue r;s.push(p)}else f(e,m,o)||s.push(p)}return s}var Ne=zf;function Hf(r,e){for(var t=-1,o=e.length,a=r.length;++t<o;)r[a+t]=e[t];return r}var Tr=Hf;var kf="[object Arguments]";function Kf(r){return b(r)&&v(r)==kf}var Wr=Kf;var De=Object.prototype,Zf=De.hasOwnProperty,$f=De.propertyIsEnumerable,Jf=Wr(function(){return arguments}())?Wr:function(r){return b(r)&&Zf.call(r,"callee")&&!$f.call(r,"callee")},Q=Jf;var Yf=Array.isArray,c=Yf;var Fe=g?g.isConcatSpreadable:void 0;function Vf(r){return c(r)||Q(r)||!!(Fe&&r&&r[Fe])}var Be=Vf;function Ue(r,e,t,o,a){var f=-1,n=r.length;for(t||(t=Be),a||(a=[]);++f<n;){var i=r[f];e>0&&t(i)?e>1?Ue(i,e-1,t,o,a):Tr(a,i):o||(a[a.length]=i)}return a}var L=Ue;function Xf(r){return r}var N=Xf;function Qf(r,e,t){switch(t.length){case 0:return r.call(e);case 1:return r.call(e,t[0]);case 2:return r.call(e,t[0],t[1]);case 3:return r.call(e,t[0],t[1],t[2])}return r.apply(e,t)}var qe=Qf;var We=Math.max;function rn(r,e,t){return e=We(e===void 0?r.length-1:e,0),function(){for(var o=arguments,a=-1,f=We(o.length-e,0),n=Array(f);++a<f;)n[a]=o[e+a];a=-1;for(var i=Array(e+1);++a<e;)i[a]=o[a];return i[e]=t(n),qe(r,this,i)}}var Ge=rn;function en(r){return function(){return r}}var ze=en;var tn=function(){try{var r=h(Object,"defineProperty");return r({},"",{}),r}catch (e5){}}(),rr=tn;var on=rr?function(r,e){return rr(r,"toString",{configurable:!0,enumerable:!1,value:ze(e),writable:!0})}:N,He=on;var an=800,fn=16,nn=Date.now;function sn(r){var e=0,t=0;return function(){var o=nn(),a=fn-(o-t);if(t=o,a>0){if(++e>=an)return arguments[0]}else e=0;return r.apply(void 0,arguments)}}var ke=sn;var un=ke(He),Ke=un;function pn(r,e){return Ke(Ge(r,e,N),r+"")}var er=pn;function mn(r){return b(r)&&w(r)}var lr=mn;var dn=er(function(r,e){return lr(r)?Ne(r,L(e,1,lr,!0)):[]}),ln= exports.c =dn;function cn(r,e,t){e=="__proto__"&&rr?rr(r,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):r[e]=t}var tr=cn;function xn(r,e,t,o){for(var a=-1,f=r==null?0:r.length;++a<f;){var n=r[a];e(o,n,t(n),r)}return o}var Ze=xn;function gn(r){return function(e,t,o){for(var a=-1,f=Object(e),n=o(e),i=n.length;i--;){var s=n[r?i:++a];if(t(f[s],s,f)===!1)break}return e}}var $e=gn;var hn=$e(),Je=hn;function bn(r,e){for(var t=-1,o=Array(r);++t<r;)o[t]=e(t);return o}var Ye=bn;function yn(){return!1}var Ve=yn;var rt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Xe=rt&&typeof module=="object"&&module&&!module.nodeType&&module,_n=Xe&&Xe.exports===rt,Qe=_n?x.Buffer:void 0,vn=Qe?Qe.isBuffer:void 0,An=vn||Ve,cr=An;var On="[object Arguments]",wn="[object Array]",Tn="[object Boolean]",Sn="[object Date]",Cn="[object Error]",jn="[object Function]",In="[object Map]",Pn="[object Number]",En="[object Object]",Rn="[object RegExp]",Mn="[object Set]",Ln="[object String]",Nn="[object WeakMap]",Dn="[object ArrayBuffer]",Fn="[object DataView]",Bn="[object Float32Array]",Un="[object Float64Array]",qn="[object Int8Array]",Wn="[object Int16Array]",Gn="[object Int32Array]",zn="[object Uint8Array]",Hn="[object Uint8ClampedArray]",kn="[object Uint16Array]",Kn="[object Uint32Array]",l={};l[Bn]=l[Un]=l[qn]=l[Wn]=l[Gn]=l[zn]=l[Hn]=l[kn]=l[Kn]=!0;l[On]=l[wn]=l[Dn]=l[Tn]=l[Fn]=l[Sn]=l[Cn]=l[jn]=l[In]=l[Pn]=l[En]=l[Rn]=l[Mn]=l[Ln]=l[Nn]=!1;function Zn(r){return b(r)&&k(r.length)&&!!l[v(r)]}var et=Zn;var tt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,xr=tt&&typeof module=="object"&&module&&!module.nodeType&&module,$n=xr&&xr.exports===tt,Gr=$n&&yr.process,Jn=function(){try{var r=xr&&xr.require&&xr.require("util").types;return r||Gr&&Gr.binding&&Gr.binding("util")}catch (e6){}}(),zr=Jn;var ot=zr&&zr.isTypedArray,Yn=ot?V(ot):et,Sr=Yn;var Vn=Object.prototype,Xn=Vn.hasOwnProperty;function Qn(r,e){var t=c(r),o=!t&&Q(r),a=!t&&!o&&cr(r),f=!t&&!o&&!a&&Sr(r),n=t||o||a||f,i=n?Ye(r.length,String):[],s=i.length;for(var u in r)(e||Xn.call(r,u))&&!(n&&(u=="length"||a&&(u=="offset"||u=="parent")||f&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||K(u,s)))&&i.push(u);return i}var at=Qn;var ri=Object.prototype;function ei(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||ri;return r===t}var ft=ei;function ti(r,e){return function(t){return r(e(t))}}var nt=ti;var oi=nt(Object.keys,Object),it=oi;var ai=Object.prototype,fi=ai.hasOwnProperty;function ni(r){if(!ft(r))return it(r);var e=[];for(var t in Object(r))fi.call(r,t)&&t!="constructor"&&e.push(t);return e}var st=ni;function ii(r){return w(r)?at(r):st(r)}var or=ii;function si(r,e){return r&&Je(r,e,or)}var Cr=si;function ui(r,e){return function(t,o){if(t==null)return t;if(!w(t))return r(t,o);for(var a=t.length,f=e?a:-1,n=Object(t);(e?f--:++f<a)&&o(n[f],f,n)!==!1;);return t}}var ut=ui;var pi=ut(Cr),jr=pi;function mi(r,e,t,o){return jr(r,function(a,f,n){e(o,a,t(a),n)}),o}var pt=mi;function di(){this.__data__=new P,this.size=0}var mt=di;function li(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}var dt=li;function ci(r){return this.__data__.get(r)}var lt=ci;function xi(r){return this.__data__.has(r)}var ct=xi;var gi=200;function hi(r,e){var t=this.__data__;if(t instanceof P){var o=t.__data__;if(!E||o.length<gi-1)return o.push([r,e]),this.size=++t.size,this;t=this.__data__=new G(o)}return t.set(r,e),this.size=t.size,this}var xt=hi;function ar(r){var e=this.__data__=new P(r);this.size=e.size}ar.prototype.clear=mt;ar.prototype.delete=dt;ar.prototype.get=lt;ar.prototype.has=ct;ar.prototype.set=xt;var fr=ar;function bi(r,e){for(var t=-1,o=r==null?0:r.length;++t<o;)if(e(r[t],t,r))return!0;return!1}var gt=bi;var yi=1,_i=2;function vi(r,e,t,o,a,f){var n=t&yi,i=r.length,s=e.length;if(i!=s&&!(n&&s>i))return!1;var u=f.get(r),p=f.get(e);if(u&&p)return u==e&&p==r;var m=-1,d=!0,T=t&_i?new Y:void 0;for(f.set(r,e),f.set(e,r);++m<i;){var y=r[m],_=e[m];if(o)var j=n?o(_,y,m,e,r,f):o(y,_,m,r,e,f);if(j!==void 0){if(j)continue;d=!1;break}if(T){if(!gt(e,function(q,W){if(!X(T,W)&&(y===q||a(y,q,t,o,f)))return T.push(W)})){d=!1;break}}else if(!(y===_||a(y,_,t,o,f))){d=!1;break}}return f.delete(r),f.delete(e),d}var Ir=vi;var Ai=x.Uint8Array,Hr=Ai;function Oi(r){var e=-1,t=Array(r.size);return r.forEach(function(o,a){t[++e]=[a,o]}),t}var ht=Oi;function wi(r){var e=-1,t=Array(r.size);return r.forEach(function(o){t[++e]=o}),t}var nr=wi;var Ti=1,Si=2,Ci="[object Boolean]",ji="[object Date]",Ii="[object Error]",Pi="[object Map]",Ei="[object Number]",Ri="[object RegExp]",Mi="[object Set]",Li="[object String]",Ni="[object Symbol]",Di="[object ArrayBuffer]",Fi="[object DataView]",bt=g?g.prototype:void 0,kr=bt?bt.valueOf:void 0;function Bi(r,e,t,o,a,f,n){switch(t){case Fi:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case Di:return!(r.byteLength!=e.byteLength||!f(new Hr(r),new Hr(e)));case Ci:case ji:case Ei:return H(+r,+e);case Ii:return r.name==e.name&&r.message==e.message;case Ri:case Li:return r==e+"";case Pi:var i=ht;case Mi:var s=o&Ti;if(i||(i=nr),r.size!=e.size&&!s)return!1;var u=n.get(r);if(u)return u==e;o|=Si,n.set(r,e);var p=Ir(i(r),i(e),o,a,f,n);return n.delete(r),p;case Ni:if(kr)return kr.call(r)==kr.call(e)}return!1}var yt=Bi;function Ui(r,e,t){var o=e(r);return c(r)?o:Tr(o,t(r))}var _t=Ui;function qi(r,e){for(var t=-1,o=r==null?0:r.length,a=0,f=[];++t<o;){var n=r[t];e(n,t,r)&&(f[a++]=n)}return f}var vt=qi;function Wi(){return[]}var At=Wi;var Gi=Object.prototype,zi=Gi.propertyIsEnumerable,Ot=Object.getOwnPropertySymbols,Hi=Ot?function(r){return r==null?[]:(r=Object(r),vt(Ot(r),function(e){return zi.call(r,e)}))}:At,wt=Hi;function ki(r){return _t(r,or,wt)}var Kr=ki;var Ki=1,Zi=Object.prototype,$i=Zi.hasOwnProperty;function Ji(r,e,t,o,a,f){var n=t&Ki,i=Kr(r),s=i.length,u=Kr(e),p=u.length;if(s!=p&&!n)return!1;for(var m=s;m--;){var d=i[m];if(!(n?d in e:$i.call(e,d)))return!1}var T=f.get(r),y=f.get(e);if(T&&y)return T==e&&y==r;var _=!0;f.set(r,e),f.set(e,r);for(var j=n;++m<s;){d=i[m];var q=r[d],W=e[d];if(o)var Vr=n?o(W,q,d,e,r,f):o(q,W,d,r,e,f);if(!(Vr===void 0?q===W||a(q,W,t,o,f):Vr)){_=!1;break}j||(j=d=="constructor")}if(_&&!j){var gr=r.constructor,hr=e.constructor;gr!=hr&&"constructor"in r&&"constructor"in e&&!(typeof gr=="function"&&gr instanceof gr&&typeof hr=="function"&&hr instanceof hr)&&(_=!1)}return f.delete(r),f.delete(e),_}var Tt=Ji;var Yi=h(x,"DataView"),Pr=Yi;var Vi=h(x,"Promise"),Er=Vi;var Xi=h(x,"Set"),D=Xi;var Qi=h(x,"WeakMap"),Rr=Qi;var St="[object Map]",rs="[object Object]",Ct="[object Promise]",jt="[object Set]",It="[object WeakMap]",Pt="[object DataView]",es=S(Pr),ts=S(E),os=S(Er),as=S(D),fs=S(Rr),z=v;(Pr&&z(new Pr(new ArrayBuffer(1)))!=Pt||E&&z(new E)!=St||Er&&z(Er.resolve())!=Ct||D&&z(new D)!=jt||Rr&&z(new Rr)!=It)&&(z=function(r){var e=v(r),t=e==rs?r.constructor:void 0,o=t?S(t):"";if(o)switch(o){case es:return Pt;case ts:return St;case os:return Ct;case as:return jt;case fs:return It}return e});var Zr=z;var ns=1,Et="[object Arguments]",Rt="[object Array]",Mr="[object Object]",is=Object.prototype,Mt=is.hasOwnProperty;function ss(r,e,t,o,a,f){var n=c(r),i=c(e),s=n?Rt:Zr(r),u=i?Rt:Zr(e);s=s==Et?Mr:s,u=u==Et?Mr:u;var p=s==Mr,m=u==Mr,d=s==u;if(d&&cr(r)){if(!cr(e))return!1;n=!0,p=!1}if(d&&!p)return f||(f=new fr),n||Sr(r)?Ir(r,e,t,o,a,f):yt(r,e,s,t,o,a,f);if(!(t&ns)){var T=p&&Mt.call(r,"__wrapped__"),y=m&&Mt.call(e,"__wrapped__");if(T||y){var _=T?r.value():r,j=y?e.value():e;return f||(f=new fr),a(_,j,t,o,f)}}return d?(f||(f=new fr),Tt(r,e,t,o,a,f)):!1}var Lt=ss;function Nt(r,e,t,o,a){return r===e?!0:r==null||e==null||!b(r)&&!b(e)?r!==r&&e!==e:Lt(r,e,t,o,Nt,a)}var Lr=Nt;var us=1,ps=2;function ms(r,e,t,o){var a=t.length,f=a,n=!o;if(r==null)return!f;for(r=Object(r);a--;){var i=t[a];if(n&&i[2]?i[1]!==r[i[0]]:!(i[0]in r))return!1}for(;++a<f;){i=t[a];var s=i[0],u=r[s],p=i[1];if(n&&i[2]){if(u===void 0&&!(s in r))return!1}else{var m=new fr;if(o)var d=o(u,p,s,r,e,m);if(!(d===void 0?Lr(p,u,us|ps,o,m):d))return!1}}return!0}var Dt=ms;function ds(r){return r===r&&!A(r)}var Nr=ds;function ls(r){for(var e=or(r),t=e.length;t--;){var o=e[t],a=r[o];e[t]=[o,a,Nr(a)]}return e}var Ft=ls;function cs(r,e){return function(t){return t==null?!1:t[r]===e&&(e!==void 0||r in Object(t))}}var Dr=cs;function xs(r){var e=Ft(r);return e.length==1&&e[0][2]?Dr(e[0][0],e[0][1]):function(t){return t===r||Dt(t,r,e)}}var Bt=xs;var gs=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,hs=/^\w*$/;function bs(r,e){if(c(r))return!1;var t=typeof r;return t=="number"||t=="symbol"||t=="boolean"||r==null||O(r)?!0:hs.test(r)||!gs.test(r)||e!=null&&r in Object(e)}var ir=bs;var ys="Expected a function";function $r(r,e){if(typeof r!="function"||e!=null&&typeof e!="function")throw new TypeError(ys);var t=function(){var o=arguments,a=e?e.apply(this,o):o[0],f=t.cache;if(f.has(a))return f.get(a);var n=r.apply(this,o);return t.cache=f.set(a,n)||f,n};return t.cache=new($r.Cache||G),t}$r.Cache=G;var Ut=$r;var _s=500;function vs(r){var e=Ut(r,function(o){return t.size===_s&&t.clear(),o}),t=e.cache;return e}var qt=vs;var As=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Os=/\\(\\)?/g,ws=qt(function(r){var e=[];return r.charCodeAt(0)===46&&e.push(""),r.replace(As,function(t,o,a,f){e.push(a?f.replace(Os,"$1"):o||t)}),e}),Wt=ws;var Ts=1/0,Gt=g?g.prototype:void 0,zt=Gt?Gt.toString:void 0;function Ht(r){if(typeof r=="string")return r;if(c(r))return M(r,Ht)+"";if(O(r))return zt?zt.call(r):"";var e=r+"";return e=="0"&&1/r==-Ts?"-0":e}var kt=Ht;function Ss(r){return r==null?"":kt(r)}var F=Ss;function Cs(r,e){return c(r)?r:ir(r,e)?[r]:Wt(F(r))}var Fr=Cs;var js=1/0;function Is(r){if(typeof r=="string"||O(r))return r;var e=r+"";return e=="0"&&1/r==-js?"-0":e}var B=Is;function Ps(r,e){e=Fr(e,r);for(var t=0,o=e.length;r!=null&&t<o;)r=r[B(e[t++])];return t&&t==o?r:void 0}var sr=Ps;function Es(r,e,t){var o=r==null?void 0:sr(r,e);return o===void 0?t:o}var Kt=Es;function Rs(r,e){return r!=null&&e in Object(r)}var Zt=Rs;function Ms(r,e,t){e=Fr(e,r);for(var o=-1,a=e.length,f=!1;++o<a;){var n=B(e[o]);if(!(f=r!=null&&t(r,n)))break;r=r[n]}return f||++o!=a?f:(a=r==null?0:r.length,!!a&&k(a)&&K(n,a)&&(c(r)||Q(r)))}var $t=Ms;function Ls(r,e){return r!=null&&$t(r,e,Zt)}var Jt=Ls;var Ns=1,Ds=2;function Fs(r,e){return ir(r)&&Nr(e)?Dr(B(r),e):function(t){var o=Kt(t,r);return o===void 0&&o===e?Jt(t,r):Lr(e,o,Ns|Ds)}}var Yt=Fs;function Bs(r){return function(e){return _optionalChain([e, 'optionalAccess', _3 => _3[r]])}}var Vt=Bs;function Us(r){return function(e){return sr(e,r)}}var Xt=Us;function qs(r){return ir(r)?Vt(B(r)):Xt(r)}var Qt=qs;function Ws(r){return typeof r=="function"?r:r==null?N:typeof r=="object"?c(r)?Yt(r[0],r[1]):Bt(r):Qt(r)}var U=Ws;function Gs(r,e){return function(t,o){var a=c(t)?Ze:pt,f=e?e():{};return a(t,r,U(o,2),f)}}var Br=Gs;var zs=Object.prototype,Hs=zs.hasOwnProperty,ks=Br(function(r,e,t){Hs.call(r,t)?r[t].push(e):tr(r,t,[e])}),Ks= exports.d =ks;function Zs(){}var ro=Zs;var $s=1/0,Js=D&&1/nr(new D([,-0]))[1]==$s?function(r){return new D(r)}:ro,eo=Js;var Ys=200;function Vs(r,e,t){var o=-1,a=Or,f=r.length,n=!0,i=[],s=i;if(t)n=!1,a=wr;else if(f>=Ys){var u=e?null:eo(r);if(u)return nr(u);n=!1,a=X,s=new Y}else s=e?[]:i;r:for(;++o<f;){var p=r[o],m=e?e(p):p;if(p=t||p!==0?p:0,n&&m===m){for(var d=s.length;d--;)if(s[d]===m)continue r;e&&s.push(m),i.push(p)}else a(s,m,t)||(s!==i&&s.push(m),i.push(p))}return i}var ur=Vs;function Xs(r){return r&&r.length?ur(r):[]}var Qs=Xs;function ru(r){var e=r==null?0:r.length;return e?L(r,1):[]}var eu=ru;function tu(r,e,t){var o=r.length;return t=t===void 0?o:t,!e&&t>=o?r:br(r,e,t)}var to=tu;var ou="\\ud800-\\udfff",au="\\u0300-\\u036f",fu="\\ufe20-\\ufe2f",nu="\\u20d0-\\u20ff",iu=au+fu+nu,su="\\ufe0e\\ufe0f",uu="\\u200d",pu=RegExp("["+uu+ou+iu+su+"]");function mu(r){return pu.test(r)}var Ur=mu;function du(r){return r.split("")}var oo=du;var ao="\\ud800-\\udfff",lu="\\u0300-\\u036f",cu="\\ufe20-\\ufe2f",xu="\\u20d0-\\u20ff",gu=lu+cu+xu,hu="\\ufe0e\\ufe0f",bu="["+ao+"]",Jr="["+gu+"]",Yr="\\ud83c[\\udffb-\\udfff]",yu="(?:"+Jr+"|"+Yr+")",fo="[^"+ao+"]",no="(?:\\ud83c[\\udde6-\\uddff]){2}",io="[\\ud800-\\udbff][\\udc00-\\udfff]",_u="\\u200d",so=yu+"?",uo="["+hu+"]?",vu="(?:"+_u+"(?:"+[fo,no,io].join("|")+")"+uo+so+")*",Au=uo+so+vu,Ou="(?:"+[fo+Jr+"?",Jr,no,io,bu].join("|")+")",wu=RegExp(Yr+"(?="+Yr+")|"+Ou+Au,"g");function Tu(r){return r.match(wu)||[]}var po=Tu;function Su(r){return Ur(r)?po(r):oo(r)}var mo=Su;function Cu(r){return function(e){e=F(e);var t=Ur(e)?mo(e):void 0,o=t?t[0]:e.charAt(0),a=t?to(t,1).join(""):e.slice(1);return o[r]()+a}}var lo=Cu;var ju=lo("toUpperCase"),co=ju;function Iu(r,e,t,o){var a=-1,f=r==null?0:r.length;for(o&&f&&(t=r[++a]);++a<f;)t=e(t,r[a],a,r);return t}var xo=Iu;function Pu(r){return function(e){return _optionalChain([r, 'optionalAccess', _4 => _4[e]])}}var go=Pu;var Eu={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Ru=go(Eu),ho=Ru;var Mu=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Lu="\\u0300-\\u036f",Nu="\\ufe20-\\ufe2f",Du="\\u20d0-\\u20ff",Fu=Lu+Nu+Du,Bu="["+Fu+"]",Uu=RegExp(Bu,"g");function qu(r){return r=F(r),r&&r.replace(Mu,ho).replace(Uu,"")}var bo=qu;var Wu=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Gu(r){return r.match(Wu)||[]}var yo=Gu;var zu=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function Hu(r){return zu.test(r)}var _o=Hu;var To="\\ud800-\\udfff",ku="\\u0300-\\u036f",Ku="\\ufe20-\\ufe2f",Zu="\\u20d0-\\u20ff",$u=ku+Ku+Zu,So="\\u2700-\\u27bf",Co="a-z\\xdf-\\xf6\\xf8-\\xff",Ju="\\xac\\xb1\\xd7\\xf7",Yu="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Vu="\\u2000-\\u206f",Xu=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",jo="A-Z\\xc0-\\xd6\\xd8-\\xde",Qu="\\ufe0e\\ufe0f",Io=Ju+Yu+Vu+Xu,Po="['\u2019]",vo="["+Io+"]",rp="["+$u+"]",Eo="\\d+",ep="["+So+"]",Ro="["+Co+"]",Mo="[^"+To+Io+Eo+So+Co+jo+"]",tp="\\ud83c[\\udffb-\\udfff]",op="(?:"+rp+"|"+tp+")",ap="[^"+To+"]",Lo="(?:\\ud83c[\\udde6-\\uddff]){2}",No="[\\ud800-\\udbff][\\udc00-\\udfff]",pr="["+jo+"]",fp="\\u200d",Ao="(?:"+Ro+"|"+Mo+")",np="(?:"+pr+"|"+Mo+")",Oo="(?:"+Po+"(?:d|ll|m|re|s|t|ve))?",wo="(?:"+Po+"(?:D|LL|M|RE|S|T|VE))?",Do=op+"?",Fo="["+Qu+"]?",ip="(?:"+fp+"(?:"+[ap,Lo,No].join("|")+")"+Fo+Do+")*",sp="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",up="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",pp=Fo+Do+ip,mp="(?:"+[ep,Lo,No].join("|")+")"+pp,dp=RegExp([pr+"?"+Ro+"+"+Oo+"(?="+[vo,pr,"$"].join("|")+")",np+"+"+wo+"(?="+[vo,pr+Ao,"$"].join("|")+")",pr+"?"+Ao+"+"+Oo,pr+"+"+wo,up,sp,Eo,mp].join("|"),"g");function lp(r){return r.match(dp)||[]}var Bo=lp;function cp(r,e,t){return r=F(r),e=t?void 0:e,e===void 0?_o(r)?Bo(r):yo(r):r.match(e)||[]}var Uo=cp;var xp="['\u2019]",gp=RegExp(xp,"g");function hp(r){return function(e){return xo(Uo(bo(e).replace(gp,"")),r,"")}}var qo=hp;function bp(r,e){var t=-1,o=w(r)?Array(r.length):[];return jr(r,function(a,f,n){o[++t]=e(a,f,n)}),o}var Wo=bp;var yp=Br(function(r,e,t){tr(r,t,e)}),_p= exports.e =yp;function vp(r,e){var t={};return e=U(e,3),Cr(r,function(o,a,f){tr(t,a,e(o,a,f))}),t}var Ap=vp;function Op(r,e){var t=r.length;for(r.sort(e);t--;)r[t]=r[t].value;return r}var Go=Op;function wp(r,e){if(r!==e){var t=r!==void 0,o=r===null,a=r===r,f=O(r),n=e!==void 0,i=e===null,s=e===e,u=O(e);if(!i&&!u&&!f&&r>e||f&&n&&s&&!i&&!u||o&&n&&s||!t&&s||!a)return 1;if(!o&&!f&&!u&&r<e||u&&t&&a&&!o&&!f||i&&t&&a||!n&&a||!s)return-1}return 0}var zo=wp;function Tp(r,e,t){for(var o=-1,a=r.criteria,f=e.criteria,n=a.length,i=t.length;++o<n;){var s=zo(a[o],f[o]);if(s){if(o>=i)return s;var u=t[o];return s*(u=="desc"?-1:1)}}return r.index-e.index}var Ho=Tp;function Sp(r,e,t){e.length?e=M(e,function(f){return c(f)?function(n){return sr(n,f.length===1?f[0]:f)}:f}):e=[N];var o=-1;e=M(e,V(U));var a=Wo(r,function(f,n,i){var s=M(e,function(u){return u(f)});return{criteria:s,index:++o,value:f}});return Go(a,function(f,n){return Ho(f,n,t)})}var ko=Sp;var Cp=er(function(r,e){if(r==null)return[];var t=e.length;return t>1&&dr(r,e[0],e[1])?e=[]:t>2&&dr(e[0],e[1],e[2])&&(e=[e[0]]),ko(r,L(e,1),[])}),jp= exports.g =Cp;var Ip=qo(function(r,e,t){return r+(t?" ":"")+co(e)}),Pp= exports.h =Ip;var Ep=er(function(r){return ur(L(r,1,lr,!0))}),Rp= exports.i =Ep;function Mp(r,e){return r&&r.length?ur(r,U(e,2)):[]}var Lp=Mp;var Yb="A command line interface for programmatic operations across Transcend.",Vb= exports.m ="7.0.5";exports.a = eu; exports.b = Ua; exports.c = ln; exports.d = Ks; exports.e = _p; exports.f = Ap; exports.g = jp; exports.h = Pp; exports.i = Rp; exports.j = Qs; exports.k = Lp; exports.l = Yb; exports.m = Vb;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }function Zo(r,e,t){var o=-1,a=r.length;e<0&&(e=-e>a?0:a+e),t=t>a?a:t,t<0&&(t+=a),a=e>t?0:t-e>>>0,e>>>=0;for(var f=Array(a);++o<a;)f[o]=r[o+e];return f}var br=Zo;function $o(r,e){return r===e||r!==r&&e!==e}var H=$o;var Jo=typeof global=="object"&&global&&global.Object===Object&&global,yr=Jo;var Yo=typeof self=="object"&&self&&self.Object===Object&&self,Vo=yr||Yo||Function("return this")(),x=Vo;var Xo=x.Symbol,g=Xo;var Xr=Object.prototype,Qo=Xr.hasOwnProperty,ra=Xr.toString,mr=g?g.toStringTag:void 0;function ea(r){var e=Qo.call(r,mr),t=r[mr];try{r[mr]=void 0;var o=!0}catch (e2){}var a=ra.call(r);return o&&(e?r[mr]=t:delete r[mr]),a}var Qr=ea;var ta=Object.prototype,oa=ta.toString;function aa(r){return oa.call(r)}var re=aa;var fa="[object Null]",na="[object Undefined]",ee=g?g.toStringTag:void 0;function ia(r){return r==null?r===void 0?na:fa:ee&&ee in Object(r)?Qr(r):re(r)}var v=ia;function sa(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}var A=sa;var ua="[object AsyncFunction]",pa="[object Function]",ma="[object GeneratorFunction]",da="[object Proxy]";function la(r){if(!A(r))return!1;var e=v(r);return e==pa||e==ma||e==ua||e==da}var _r=la;var ca=9007199254740991;function xa(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=ca}var k=xa;function ga(r){return r!=null&&k(r.length)&&!_r(r)}var w=ga;var ha=9007199254740991,ba=/^(?:0|[1-9]\d*)$/;function ya(r,e){var t=typeof r;return e=_nullishCoalesce(e, () => (ha)),!!e&&(t=="number"||t!="symbol"&&ba.test(r))&&r>-1&&r%1==0&&r<e}var K=ya;function _a(r,e,t){if(!A(t))return!1;var o=typeof e;return(o=="number"?w(t)&&K(e,t.length):o=="string"&&e in t)?H(t[e],r):!1}var dr=_a;var va=/\s/;function Aa(r){for(var e=r.length;e--&&va.test(r.charAt(e)););return e}var te=Aa;var Oa=/^\s+/;function wa(r){return r&&r.slice(0,te(r)+1).replace(Oa,"")}var oe=wa;function Ta(r){return r!=null&&typeof r=="object"}var b=Ta;var Sa="[object Symbol]";function Ca(r){return typeof r=="symbol"||b(r)&&v(r)==Sa}var O=Ca;var ae=NaN,ja=/^[-+]0x[0-9a-f]+$/i,Ia=/^0b[01]+$/i,Pa=/^0o[0-7]+$/i,Ea=parseInt;function Ra(r){if(typeof r=="number")return r;if(O(r))return ae;if(A(r)){var e=typeof r.valueOf=="function"?r.valueOf():r;r=A(e)?e+"":e}if(typeof r!="string")return r===0?r:+r;r=oe(r);var t=Ia.test(r);return t||Pa.test(r)?Ea(r.slice(2),t?2:8):ja.test(r)?ae:+r}var fe=Ra;var ne=1/0,Ma=17976931348623157e292;function La(r){if(!r)return r===0?r:0;if(r=fe(r),r===ne||r===-ne){var e=r<0?-1:1;return e*Ma}return r===r?r:0}var ie=La;function Na(r){var e=ie(r),t=e%1;return e===e?t?e-t:e:0}var se=Na;var Da=Math.ceil,Fa=Math.max;function Ba(r,e,t){(t?dr(r,e,t):e===void 0)?e=1:e=Fa(se(e),0);var o=r==null?0:r.length;if(!o||e<1)return[];for(var a=0,f=0,n=Array(Da(o/e));a<o;)n[f++]=br(r,a,a+=e);return n}var Ua=Ba;var qa=x["__core-js_shared__"],vr=qa;var ue=function(){var r=/[^.]+$/.exec(vr&&vr.keys&&vr.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function Wa(r){return!!ue&&ue in r}var pe=Wa;var Ga=Function.prototype,za=Ga.toString;function Ha(r){if(r!=null){try{return za.call(r)}catch (e3){}try{return r+""}catch (e4){}}return""}var S=Ha;var ka=/[\\^$.*+?()[\]{}|]/g,Ka=/^\[object .+?Constructor\]$/,Za=Function.prototype,$a=Object.prototype,Ja=Za.toString,Ya=$a.hasOwnProperty,Va=RegExp("^"+Ja.call(Ya).replace(ka,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Xa(r){if(!A(r)||pe(r))return!1;var e=_r(r)?Va:Ka;return e.test(S(r))}var me=Xa;function Qa(r,e){return _optionalChain([r, 'optionalAccess', _2 => _2[e]])}var de=Qa;function rf(r,e){var t=de(r,e);return me(t)?t:void 0}var h=rf;var ef=h(Object,"create"),C=ef;function tf(){this.__data__=C?C(null):{},this.size=0}var le=tf;function of(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}var ce=of;var af="__lodash_hash_undefined__",ff=Object.prototype,nf=ff.hasOwnProperty;function sf(r){var e=this.__data__;if(C){var t=e[r];return t===af?void 0:t}return nf.call(e,r)?e[r]:void 0}var xe=sf;var uf=Object.prototype,pf=uf.hasOwnProperty;function mf(r){var e=this.__data__;return C?e[r]!==void 0:pf.call(e,r)}var ge=mf;var df="__lodash_hash_undefined__";function lf(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=C&&e===void 0?df:e,this}var he=lf;function Z(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var o=r[e];this.set(o[0],o[1])}}Z.prototype.clear=le;Z.prototype.delete=ce;Z.prototype.get=xe;Z.prototype.has=ge;Z.prototype.set=he;var qr=Z;function cf(){this.__data__=[],this.size=0}var be=cf;function xf(r,e){for(var t=r.length;t--;)if(H(r[t][0],e))return t;return-1}var I=xf;var gf=Array.prototype,hf=gf.splice;function bf(r){var e=this.__data__,t=I(e,r);if(t<0)return!1;var o=e.length-1;return t==o?e.pop():hf.call(e,t,1),--this.size,!0}var ye=bf;function yf(r){var e=this.__data__,t=I(e,r);return t<0?void 0:e[t][1]}var _e=yf;function _f(r){return I(this.__data__,r)>-1}var ve=_f;function vf(r,e){var t=this.__data__,o=I(t,r);return o<0?(++this.size,t.push([r,e])):t[o][1]=e,this}var Ae=vf;function $(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var o=r[e];this.set(o[0],o[1])}}$.prototype.clear=be;$.prototype.delete=ye;$.prototype.get=_e;$.prototype.has=ve;$.prototype.set=Ae;var P=$;var Af=h(x,"Map"),E=Af;function Of(){this.size=0,this.__data__={hash:new qr,map:new(E||P),string:new qr}}var Oe=Of;function wf(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}var we=wf;function Tf(r,e){var t=r.__data__;return we(e)?t[typeof e=="string"?"string":"hash"]:t.map}var R=Tf;function Sf(r){var e=R(this,r).delete(r);return this.size-=e?1:0,e}var Te=Sf;function Cf(r){return R(this,r).get(r)}var Se=Cf;function jf(r){return R(this,r).has(r)}var Ce=jf;function If(r,e){var t=R(this,r),o=t.size;return t.set(r,e),this.size+=t.size==o?0:1,this}var je=If;function J(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var o=r[e];this.set(o[0],o[1])}}J.prototype.clear=Oe;J.prototype.delete=Te;J.prototype.get=Se;J.prototype.has=Ce;J.prototype.set=je;var G=J;var Pf="__lodash_hash_undefined__";function Ef(r){return this.__data__.set(r,Pf),this}var Ie=Ef;function Rf(r){return this.__data__.has(r)}var Pe=Rf;function Ar(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new G;++e<t;)this.add(r[e])}Ar.prototype.add=Ar.prototype.push=Ie;Ar.prototype.has=Pe;var Y=Ar;function Mf(r,e,t,o){for(var a=r.length,f=t+(o?1:-1);o?f--:++f<a;)if(e(r[f],f,r))return f;return-1}var Ee=Mf;function Lf(r){return r!==r}var Re=Lf;function Nf(r,e,t){for(var o=t-1,a=r.length;++o<a;)if(r[o]===e)return o;return-1}var Me=Nf;function Df(r,e,t){return e===e?Me(r,e,t):Ee(r,Re,t)}var Le=Df;function Ff(r,e){var t=r==null?0:r.length;return!!t&&Le(r,e,0)>-1}var Or=Ff;function Bf(r,e,t){for(var o=-1,a=r==null?0:r.length;++o<a;)if(t(e,r[o]))return!0;return!1}var wr=Bf;function Uf(r,e){for(var t=-1,o=r==null?0:r.length,a=Array(o);++t<o;)a[t]=e(r[t],t,r);return a}var M=Uf;function qf(r){return function(e){return r(e)}}var V=qf;function Wf(r,e){return r.has(e)}var X=Wf;var Gf=200;function zf(r,e,t,o){var a=-1,f=Or,n=!0,i=r.length,s=[],u=e.length;if(!i)return s;t&&(e=M(e,V(t))),o?(f=wr,n=!1):e.length>=Gf&&(f=X,n=!1,e=new Y(e));r:for(;++a<i;){var p=r[a],m=t==null?p:t(p);if(p=o||p!==0?p:0,n&&m===m){for(var d=u;d--;)if(e[d]===m)continue r;s.push(p)}else f(e,m,o)||s.push(p)}return s}var Ne=zf;function Hf(r,e){for(var t=-1,o=e.length,a=r.length;++t<o;)r[a+t]=e[t];return r}var Tr=Hf;var kf="[object Arguments]";function Kf(r){return b(r)&&v(r)==kf}var Wr=Kf;var De=Object.prototype,Zf=De.hasOwnProperty,$f=De.propertyIsEnumerable,Jf=Wr(function(){return arguments}())?Wr:function(r){return b(r)&&Zf.call(r,"callee")&&!$f.call(r,"callee")},Q=Jf;var Yf=Array.isArray,c=Yf;var Fe=g?g.isConcatSpreadable:void 0;function Vf(r){return c(r)||Q(r)||!!(Fe&&r&&r[Fe])}var Be=Vf;function Ue(r,e,t,o,a){var f=-1,n=r.length;for(t||(t=Be),a||(a=[]);++f<n;){var i=r[f];e>0&&t(i)?e>1?Ue(i,e-1,t,o,a):Tr(a,i):o||(a[a.length]=i)}return a}var L=Ue;function Xf(r){return r}var N=Xf;function Qf(r,e,t){switch(t.length){case 0:return r.call(e);case 1:return r.call(e,t[0]);case 2:return r.call(e,t[0],t[1]);case 3:return r.call(e,t[0],t[1],t[2])}return r.apply(e,t)}var qe=Qf;var We=Math.max;function rn(r,e,t){return e=We(e===void 0?r.length-1:e,0),function(){for(var o=arguments,a=-1,f=We(o.length-e,0),n=Array(f);++a<f;)n[a]=o[e+a];a=-1;for(var i=Array(e+1);++a<e;)i[a]=o[a];return i[e]=t(n),qe(r,this,i)}}var Ge=rn;function en(r){return function(){return r}}var ze=en;var tn=function(){try{var r=h(Object,"defineProperty");return r({},"",{}),r}catch (e5){}}(),rr=tn;var on=rr?function(r,e){return rr(r,"toString",{configurable:!0,enumerable:!1,value:ze(e),writable:!0})}:N,He=on;var an=800,fn=16,nn=Date.now;function sn(r){var e=0,t=0;return function(){var o=nn(),a=fn-(o-t);if(t=o,a>0){if(++e>=an)return arguments[0]}else e=0;return r.apply(void 0,arguments)}}var ke=sn;var un=ke(He),Ke=un;function pn(r,e){return Ke(Ge(r,e,N),r+"")}var er=pn;function mn(r){return b(r)&&w(r)}var lr=mn;var dn=er(function(r,e){return lr(r)?Ne(r,L(e,1,lr,!0)):[]}),ln= exports.c =dn;function cn(r,e,t){e=="__proto__"&&rr?rr(r,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):r[e]=t}var tr=cn;function xn(r,e,t,o){for(var a=-1,f=r==null?0:r.length;++a<f;){var n=r[a];e(o,n,t(n),r)}return o}var Ze=xn;function gn(r){return function(e,t,o){for(var a=-1,f=Object(e),n=o(e),i=n.length;i--;){var s=n[r?i:++a];if(t(f[s],s,f)===!1)break}return e}}var $e=gn;var hn=$e(),Je=hn;function bn(r,e){for(var t=-1,o=Array(r);++t<r;)o[t]=e(t);return o}var Ye=bn;function yn(){return!1}var Ve=yn;var rt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Xe=rt&&typeof module=="object"&&module&&!module.nodeType&&module,_n=Xe&&Xe.exports===rt,Qe=_n?x.Buffer:void 0,vn=Qe?Qe.isBuffer:void 0,An=vn||Ve,cr=An;var On="[object Arguments]",wn="[object Array]",Tn="[object Boolean]",Sn="[object Date]",Cn="[object Error]",jn="[object Function]",In="[object Map]",Pn="[object Number]",En="[object Object]",Rn="[object RegExp]",Mn="[object Set]",Ln="[object String]",Nn="[object WeakMap]",Dn="[object ArrayBuffer]",Fn="[object DataView]",Bn="[object Float32Array]",Un="[object Float64Array]",qn="[object Int8Array]",Wn="[object Int16Array]",Gn="[object Int32Array]",zn="[object Uint8Array]",Hn="[object Uint8ClampedArray]",kn="[object Uint16Array]",Kn="[object Uint32Array]",l={};l[Bn]=l[Un]=l[qn]=l[Wn]=l[Gn]=l[zn]=l[Hn]=l[kn]=l[Kn]=!0;l[On]=l[wn]=l[Dn]=l[Tn]=l[Fn]=l[Sn]=l[Cn]=l[jn]=l[In]=l[Pn]=l[En]=l[Rn]=l[Mn]=l[Ln]=l[Nn]=!1;function Zn(r){return b(r)&&k(r.length)&&!!l[v(r)]}var et=Zn;var tt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,xr=tt&&typeof module=="object"&&module&&!module.nodeType&&module,$n=xr&&xr.exports===tt,Gr=$n&&yr.process,Jn=function(){try{var r=xr&&xr.require&&xr.require("util").types;return r||Gr&&Gr.binding&&Gr.binding("util")}catch (e6){}}(),zr=Jn;var ot=zr&&zr.isTypedArray,Yn=ot?V(ot):et,Sr=Yn;var Vn=Object.prototype,Xn=Vn.hasOwnProperty;function Qn(r,e){var t=c(r),o=!t&&Q(r),a=!t&&!o&&cr(r),f=!t&&!o&&!a&&Sr(r),n=t||o||a||f,i=n?Ye(r.length,String):[],s=i.length;for(var u in r)(e||Xn.call(r,u))&&!(n&&(u=="length"||a&&(u=="offset"||u=="parent")||f&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||K(u,s)))&&i.push(u);return i}var at=Qn;var ri=Object.prototype;function ei(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||ri;return r===t}var ft=ei;function ti(r,e){return function(t){return r(e(t))}}var nt=ti;var oi=nt(Object.keys,Object),it=oi;var ai=Object.prototype,fi=ai.hasOwnProperty;function ni(r){if(!ft(r))return it(r);var e=[];for(var t in Object(r))fi.call(r,t)&&t!="constructor"&&e.push(t);return e}var st=ni;function ii(r){return w(r)?at(r):st(r)}var or=ii;function si(r,e){return r&&Je(r,e,or)}var Cr=si;function ui(r,e){return function(t,o){if(t==null)return t;if(!w(t))return r(t,o);for(var a=t.length,f=e?a:-1,n=Object(t);(e?f--:++f<a)&&o(n[f],f,n)!==!1;);return t}}var ut=ui;var pi=ut(Cr),jr=pi;function mi(r,e,t,o){return jr(r,function(a,f,n){e(o,a,t(a),n)}),o}var pt=mi;function di(){this.__data__=new P,this.size=0}var mt=di;function li(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}var dt=li;function ci(r){return this.__data__.get(r)}var lt=ci;function xi(r){return this.__data__.has(r)}var ct=xi;var gi=200;function hi(r,e){var t=this.__data__;if(t instanceof P){var o=t.__data__;if(!E||o.length<gi-1)return o.push([r,e]),this.size=++t.size,this;t=this.__data__=new G(o)}return t.set(r,e),this.size=t.size,this}var xt=hi;function ar(r){var e=this.__data__=new P(r);this.size=e.size}ar.prototype.clear=mt;ar.prototype.delete=dt;ar.prototype.get=lt;ar.prototype.has=ct;ar.prototype.set=xt;var fr=ar;function bi(r,e){for(var t=-1,o=r==null?0:r.length;++t<o;)if(e(r[t],t,r))return!0;return!1}var gt=bi;var yi=1,_i=2;function vi(r,e,t,o,a,f){var n=t&yi,i=r.length,s=e.length;if(i!=s&&!(n&&s>i))return!1;var u=f.get(r),p=f.get(e);if(u&&p)return u==e&&p==r;var m=-1,d=!0,T=t&_i?new Y:void 0;for(f.set(r,e),f.set(e,r);++m<i;){var y=r[m],_=e[m];if(o)var j=n?o(_,y,m,e,r,f):o(y,_,m,r,e,f);if(j!==void 0){if(j)continue;d=!1;break}if(T){if(!gt(e,function(q,W){if(!X(T,W)&&(y===q||a(y,q,t,o,f)))return T.push(W)})){d=!1;break}}else if(!(y===_||a(y,_,t,o,f))){d=!1;break}}return f.delete(r),f.delete(e),d}var Ir=vi;var Ai=x.Uint8Array,Hr=Ai;function Oi(r){var e=-1,t=Array(r.size);return r.forEach(function(o,a){t[++e]=[a,o]}),t}var ht=Oi;function wi(r){var e=-1,t=Array(r.size);return r.forEach(function(o){t[++e]=o}),t}var nr=wi;var Ti=1,Si=2,Ci="[object Boolean]",ji="[object Date]",Ii="[object Error]",Pi="[object Map]",Ei="[object Number]",Ri="[object RegExp]",Mi="[object Set]",Li="[object String]",Ni="[object Symbol]",Di="[object ArrayBuffer]",Fi="[object DataView]",bt=g?g.prototype:void 0,kr=bt?bt.valueOf:void 0;function Bi(r,e,t,o,a,f,n){switch(t){case Fi:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case Di:return!(r.byteLength!=e.byteLength||!f(new Hr(r),new Hr(e)));case Ci:case ji:case Ei:return H(+r,+e);case Ii:return r.name==e.name&&r.message==e.message;case Ri:case Li:return r==e+"";case Pi:var i=ht;case Mi:var s=o&Ti;if(i||(i=nr),r.size!=e.size&&!s)return!1;var u=n.get(r);if(u)return u==e;o|=Si,n.set(r,e);var p=Ir(i(r),i(e),o,a,f,n);return n.delete(r),p;case Ni:if(kr)return kr.call(r)==kr.call(e)}return!1}var yt=Bi;function Ui(r,e,t){var o=e(r);return c(r)?o:Tr(o,t(r))}var _t=Ui;function qi(r,e){for(var t=-1,o=r==null?0:r.length,a=0,f=[];++t<o;){var n=r[t];e(n,t,r)&&(f[a++]=n)}return f}var vt=qi;function Wi(){return[]}var At=Wi;var Gi=Object.prototype,zi=Gi.propertyIsEnumerable,Ot=Object.getOwnPropertySymbols,Hi=Ot?function(r){return r==null?[]:(r=Object(r),vt(Ot(r),function(e){return zi.call(r,e)}))}:At,wt=Hi;function ki(r){return _t(r,or,wt)}var Kr=ki;var Ki=1,Zi=Object.prototype,$i=Zi.hasOwnProperty;function Ji(r,e,t,o,a,f){var n=t&Ki,i=Kr(r),s=i.length,u=Kr(e),p=u.length;if(s!=p&&!n)return!1;for(var m=s;m--;){var d=i[m];if(!(n?d in e:$i.call(e,d)))return!1}var T=f.get(r),y=f.get(e);if(T&&y)return T==e&&y==r;var _=!0;f.set(r,e),f.set(e,r);for(var j=n;++m<s;){d=i[m];var q=r[d],W=e[d];if(o)var Vr=n?o(W,q,d,e,r,f):o(q,W,d,r,e,f);if(!(Vr===void 0?q===W||a(q,W,t,o,f):Vr)){_=!1;break}j||(j=d=="constructor")}if(_&&!j){var gr=r.constructor,hr=e.constructor;gr!=hr&&"constructor"in r&&"constructor"in e&&!(typeof gr=="function"&&gr instanceof gr&&typeof hr=="function"&&hr instanceof hr)&&(_=!1)}return f.delete(r),f.delete(e),_}var Tt=Ji;var Yi=h(x,"DataView"),Pr=Yi;var Vi=h(x,"Promise"),Er=Vi;var Xi=h(x,"Set"),D=Xi;var Qi=h(x,"WeakMap"),Rr=Qi;var St="[object Map]",rs="[object Object]",Ct="[object Promise]",jt="[object Set]",It="[object WeakMap]",Pt="[object DataView]",es=S(Pr),ts=S(E),os=S(Er),as=S(D),fs=S(Rr),z=v;(Pr&&z(new Pr(new ArrayBuffer(1)))!=Pt||E&&z(new E)!=St||Er&&z(Er.resolve())!=Ct||D&&z(new D)!=jt||Rr&&z(new Rr)!=It)&&(z=function(r){var e=v(r),t=e==rs?r.constructor:void 0,o=t?S(t):"";if(o)switch(o){case es:return Pt;case ts:return St;case os:return Ct;case as:return jt;case fs:return It}return e});var Zr=z;var ns=1,Et="[object Arguments]",Rt="[object Array]",Mr="[object Object]",is=Object.prototype,Mt=is.hasOwnProperty;function ss(r,e,t,o,a,f){var n=c(r),i=c(e),s=n?Rt:Zr(r),u=i?Rt:Zr(e);s=s==Et?Mr:s,u=u==Et?Mr:u;var p=s==Mr,m=u==Mr,d=s==u;if(d&&cr(r)){if(!cr(e))return!1;n=!0,p=!1}if(d&&!p)return f||(f=new fr),n||Sr(r)?Ir(r,e,t,o,a,f):yt(r,e,s,t,o,a,f);if(!(t&ns)){var T=p&&Mt.call(r,"__wrapped__"),y=m&&Mt.call(e,"__wrapped__");if(T||y){var _=T?r.value():r,j=y?e.value():e;return f||(f=new fr),a(_,j,t,o,f)}}return d?(f||(f=new fr),Tt(r,e,t,o,a,f)):!1}var Lt=ss;function Nt(r,e,t,o,a){return r===e?!0:r==null||e==null||!b(r)&&!b(e)?r!==r&&e!==e:Lt(r,e,t,o,Nt,a)}var Lr=Nt;var us=1,ps=2;function ms(r,e,t,o){var a=t.length,f=a,n=!o;if(r==null)return!f;for(r=Object(r);a--;){var i=t[a];if(n&&i[2]?i[1]!==r[i[0]]:!(i[0]in r))return!1}for(;++a<f;){i=t[a];var s=i[0],u=r[s],p=i[1];if(n&&i[2]){if(u===void 0&&!(s in r))return!1}else{var m=new fr;if(o)var d=o(u,p,s,r,e,m);if(!(d===void 0?Lr(p,u,us|ps,o,m):d))return!1}}return!0}var Dt=ms;function ds(r){return r===r&&!A(r)}var Nr=ds;function ls(r){for(var e=or(r),t=e.length;t--;){var o=e[t],a=r[o];e[t]=[o,a,Nr(a)]}return e}var Ft=ls;function cs(r,e){return function(t){return t==null?!1:t[r]===e&&(e!==void 0||r in Object(t))}}var Dr=cs;function xs(r){var e=Ft(r);return e.length==1&&e[0][2]?Dr(e[0][0],e[0][1]):function(t){return t===r||Dt(t,r,e)}}var Bt=xs;var gs=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,hs=/^\w*$/;function bs(r,e){if(c(r))return!1;var t=typeof r;return t=="number"||t=="symbol"||t=="boolean"||r==null||O(r)?!0:hs.test(r)||!gs.test(r)||e!=null&&r in Object(e)}var ir=bs;var ys="Expected a function";function $r(r,e){if(typeof r!="function"||e!=null&&typeof e!="function")throw new TypeError(ys);var t=function(){var o=arguments,a=e?e.apply(this,o):o[0],f=t.cache;if(f.has(a))return f.get(a);var n=r.apply(this,o);return t.cache=f.set(a,n)||f,n};return t.cache=new($r.Cache||G),t}$r.Cache=G;var Ut=$r;var _s=500;function vs(r){var e=Ut(r,function(o){return t.size===_s&&t.clear(),o}),t=e.cache;return e}var qt=vs;var As=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Os=/\\(\\)?/g,ws=qt(function(r){var e=[];return r.charCodeAt(0)===46&&e.push(""),r.replace(As,function(t,o,a,f){e.push(a?f.replace(Os,"$1"):o||t)}),e}),Wt=ws;var Ts=1/0,Gt=g?g.prototype:void 0,zt=Gt?Gt.toString:void 0;function Ht(r){if(typeof r=="string")return r;if(c(r))return M(r,Ht)+"";if(O(r))return zt?zt.call(r):"";var e=r+"";return e=="0"&&1/r==-Ts?"-0":e}var kt=Ht;function Ss(r){return r==null?"":kt(r)}var F=Ss;function Cs(r,e){return c(r)?r:ir(r,e)?[r]:Wt(F(r))}var Fr=Cs;var js=1/0;function Is(r){if(typeof r=="string"||O(r))return r;var e=r+"";return e=="0"&&1/r==-js?"-0":e}var B=Is;function Ps(r,e){e=Fr(e,r);for(var t=0,o=e.length;r!=null&&t<o;)r=r[B(e[t++])];return t&&t==o?r:void 0}var sr=Ps;function Es(r,e,t){var o=r==null?void 0:sr(r,e);return o===void 0?t:o}var Kt=Es;function Rs(r,e){return r!=null&&e in Object(r)}var Zt=Rs;function Ms(r,e,t){e=Fr(e,r);for(var o=-1,a=e.length,f=!1;++o<a;){var n=B(e[o]);if(!(f=r!=null&&t(r,n)))break;r=r[n]}return f||++o!=a?f:(a=r==null?0:r.length,!!a&&k(a)&&K(n,a)&&(c(r)||Q(r)))}var $t=Ms;function Ls(r,e){return r!=null&&$t(r,e,Zt)}var Jt=Ls;var Ns=1,Ds=2;function Fs(r,e){return ir(r)&&Nr(e)?Dr(B(r),e):function(t){var o=Kt(t,r);return o===void 0&&o===e?Jt(t,r):Lr(e,o,Ns|Ds)}}var Yt=Fs;function Bs(r){return function(e){return _optionalChain([e, 'optionalAccess', _3 => _3[r]])}}var Vt=Bs;function Us(r){return function(e){return sr(e,r)}}var Xt=Us;function qs(r){return ir(r)?Vt(B(r)):Xt(r)}var Qt=qs;function Ws(r){return typeof r=="function"?r:r==null?N:typeof r=="object"?c(r)?Yt(r[0],r[1]):Bt(r):Qt(r)}var U=Ws;function Gs(r,e){return function(t,o){var a=c(t)?Ze:pt,f=e?e():{};return a(t,r,U(o,2),f)}}var Br=Gs;var zs=Object.prototype,Hs=zs.hasOwnProperty,ks=Br(function(r,e,t){Hs.call(r,t)?r[t].push(e):tr(r,t,[e])}),Ks= exports.d =ks;function Zs(){}var ro=Zs;var $s=1/0,Js=D&&1/nr(new D([,-0]))[1]==$s?function(r){return new D(r)}:ro,eo=Js;var Ys=200;function Vs(r,e,t){var o=-1,a=Or,f=r.length,n=!0,i=[],s=i;if(t)n=!1,a=wr;else if(f>=Ys){var u=e?null:eo(r);if(u)return nr(u);n=!1,a=X,s=new Y}else s=e?[]:i;r:for(;++o<f;){var p=r[o],m=e?e(p):p;if(p=t||p!==0?p:0,n&&m===m){for(var d=s.length;d--;)if(s[d]===m)continue r;e&&s.push(m),i.push(p)}else a(s,m,t)||(s!==i&&s.push(m),i.push(p))}return i}var ur=Vs;function Xs(r){return r&&r.length?ur(r):[]}var Qs=Xs;function ru(r){var e=r==null?0:r.length;return e?L(r,1):[]}var eu=ru;function tu(r,e,t){var o=r.length;return t=t===void 0?o:t,!e&&t>=o?r:br(r,e,t)}var to=tu;var ou="\\ud800-\\udfff",au="\\u0300-\\u036f",fu="\\ufe20-\\ufe2f",nu="\\u20d0-\\u20ff",iu=au+fu+nu,su="\\ufe0e\\ufe0f",uu="\\u200d",pu=RegExp("["+uu+ou+iu+su+"]");function mu(r){return pu.test(r)}var Ur=mu;function du(r){return r.split("")}var oo=du;var ao="\\ud800-\\udfff",lu="\\u0300-\\u036f",cu="\\ufe20-\\ufe2f",xu="\\u20d0-\\u20ff",gu=lu+cu+xu,hu="\\ufe0e\\ufe0f",bu="["+ao+"]",Jr="["+gu+"]",Yr="\\ud83c[\\udffb-\\udfff]",yu="(?:"+Jr+"|"+Yr+")",fo="[^"+ao+"]",no="(?:\\ud83c[\\udde6-\\uddff]){2}",io="[\\ud800-\\udbff][\\udc00-\\udfff]",_u="\\u200d",so=yu+"?",uo="["+hu+"]?",vu="(?:"+_u+"(?:"+[fo,no,io].join("|")+")"+uo+so+")*",Au=uo+so+vu,Ou="(?:"+[fo+Jr+"?",Jr,no,io,bu].join("|")+")",wu=RegExp(Yr+"(?="+Yr+")|"+Ou+Au,"g");function Tu(r){return r.match(wu)||[]}var po=Tu;function Su(r){return Ur(r)?po(r):oo(r)}var mo=Su;function Cu(r){return function(e){e=F(e);var t=Ur(e)?mo(e):void 0,o=t?t[0]:e.charAt(0),a=t?to(t,1).join(""):e.slice(1);return o[r]()+a}}var lo=Cu;var ju=lo("toUpperCase"),co=ju;function Iu(r,e,t,o){var a=-1,f=r==null?0:r.length;for(o&&f&&(t=r[++a]);++a<f;)t=e(t,r[a],a,r);return t}var xo=Iu;function Pu(r){return function(e){return _optionalChain([r, 'optionalAccess', _4 => _4[e]])}}var go=Pu;var Eu={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Ru=go(Eu),ho=Ru;var Mu=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Lu="\\u0300-\\u036f",Nu="\\ufe20-\\ufe2f",Du="\\u20d0-\\u20ff",Fu=Lu+Nu+Du,Bu="["+Fu+"]",Uu=RegExp(Bu,"g");function qu(r){return r=F(r),r&&r.replace(Mu,ho).replace(Uu,"")}var bo=qu;var Wu=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Gu(r){return r.match(Wu)||[]}var yo=Gu;var zu=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function Hu(r){return zu.test(r)}var _o=Hu;var To="\\ud800-\\udfff",ku="\\u0300-\\u036f",Ku="\\ufe20-\\ufe2f",Zu="\\u20d0-\\u20ff",$u=ku+Ku+Zu,So="\\u2700-\\u27bf",Co="a-z\\xdf-\\xf6\\xf8-\\xff",Ju="\\xac\\xb1\\xd7\\xf7",Yu="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Vu="\\u2000-\\u206f",Xu=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",jo="A-Z\\xc0-\\xd6\\xd8-\\xde",Qu="\\ufe0e\\ufe0f",Io=Ju+Yu+Vu+Xu,Po="['\u2019]",vo="["+Io+"]",rp="["+$u+"]",Eo="\\d+",ep="["+So+"]",Ro="["+Co+"]",Mo="[^"+To+Io+Eo+So+Co+jo+"]",tp="\\ud83c[\\udffb-\\udfff]",op="(?:"+rp+"|"+tp+")",ap="[^"+To+"]",Lo="(?:\\ud83c[\\udde6-\\uddff]){2}",No="[\\ud800-\\udbff][\\udc00-\\udfff]",pr="["+jo+"]",fp="\\u200d",Ao="(?:"+Ro+"|"+Mo+")",np="(?:"+pr+"|"+Mo+")",Oo="(?:"+Po+"(?:d|ll|m|re|s|t|ve))?",wo="(?:"+Po+"(?:D|LL|M|RE|S|T|VE))?",Do=op+"?",Fo="["+Qu+"]?",ip="(?:"+fp+"(?:"+[ap,Lo,No].join("|")+")"+Fo+Do+")*",sp="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",up="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",pp=Fo+Do+ip,mp="(?:"+[ep,Lo,No].join("|")+")"+pp,dp=RegExp([pr+"?"+Ro+"+"+Oo+"(?="+[vo,pr,"$"].join("|")+")",np+"+"+wo+"(?="+[vo,pr+Ao,"$"].join("|")+")",pr+"?"+Ao+"+"+Oo,pr+"+"+wo,up,sp,Eo,mp].join("|"),"g");function lp(r){return r.match(dp)||[]}var Bo=lp;function cp(r,e,t){return r=F(r),e=t?void 0:e,e===void 0?_o(r)?Bo(r):yo(r):r.match(e)||[]}var Uo=cp;var xp="['\u2019]",gp=RegExp(xp,"g");function hp(r){return function(e){return xo(Uo(bo(e).replace(gp,"")),r,"")}}var qo=hp;function bp(r,e){var t=-1,o=w(r)?Array(r.length):[];return jr(r,function(a,f,n){o[++t]=e(a,f,n)}),o}var Wo=bp;var yp=Br(function(r,e,t){tr(r,t,e)}),_p= exports.e =yp;function vp(r,e){var t={};return e=U(e,3),Cr(r,function(o,a,f){tr(t,a,e(o,a,f))}),t}var Ap=vp;function Op(r,e){var t=r.length;for(r.sort(e);t--;)r[t]=r[t].value;return r}var Go=Op;function wp(r,e){if(r!==e){var t=r!==void 0,o=r===null,a=r===r,f=O(r),n=e!==void 0,i=e===null,s=e===e,u=O(e);if(!i&&!u&&!f&&r>e||f&&n&&s&&!i&&!u||o&&n&&s||!t&&s||!a)return 1;if(!o&&!f&&!u&&r<e||u&&t&&a&&!o&&!f||i&&t&&a||!n&&a||!s)return-1}return 0}var zo=wp;function Tp(r,e,t){for(var o=-1,a=r.criteria,f=e.criteria,n=a.length,i=t.length;++o<n;){var s=zo(a[o],f[o]);if(s){if(o>=i)return s;var u=t[o];return s*(u=="desc"?-1:1)}}return r.index-e.index}var Ho=Tp;function Sp(r,e,t){e.length?e=M(e,function(f){return c(f)?function(n){return sr(n,f.length===1?f[0]:f)}:f}):e=[N];var o=-1;e=M(e,V(U));var a=Wo(r,function(f,n,i){var s=M(e,function(u){return u(f)});return{criteria:s,index:++o,value:f}});return Go(a,function(f,n){return Ho(f,n,t)})}var ko=Sp;var Cp=er(function(r,e){if(r==null)return[];var t=e.length;return t>1&&dr(r,e[0],e[1])?e=[]:t>2&&dr(e[0],e[1],e[2])&&(e=[e[0]]),ko(r,L(e,1),[])}),jp= exports.g =Cp;var Ip=qo(function(r,e,t){return r+(t?" ":"")+co(e)}),Pp= exports.h =Ip;var Ep=er(function(r){return ur(L(r,1,lr,!0))}),Rp= exports.i =Ep;function Mp(r,e){return r&&r.length?ur(r,U(e,2)):[]}var Lp=Mp;var Yb="A command line interface for programmatic operations across Transcend.",Vb= exports.m ="7.1.0";exports.a = eu; exports.b = Ua; exports.c = ln; exports.d = Ks; exports.e = _p; exports.f = Ap; exports.g = jp; exports.h = Pp; exports.i = Rp; exports.j = Qs; exports.k = Lp; exports.l = Yb; exports.m = Vb;
2
2
  /*! Bundled license information:
3
3
 
4
4
  lodash-es/lodash.js:
@@ -12,4 +12,4 @@ lodash-es/lodash.js:
12
12
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
13
13
  *)
14
14
  */
15
- //# sourceMappingURL=chunk-QBBOYJ3O.cjs.map
15
+ //# sourceMappingURL=chunk-T7B5NTGF.cjs.map