renovate 43.62.0 → 43.63.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.
@@ -7,6 +7,7 @@ var replacements_default = {
7
7
  "replacements:airbnb-prop-types-to-prop-types-tools",
8
8
  "replacements:apollo-server-to-scoped",
9
9
  "replacements:babel-eslint-to-eslint-parser",
10
+ "replacements:base-ui-components-to-base-ui",
10
11
  "replacements:containerbase",
11
12
  "replacements:cpx-to-maintenance-fork",
12
13
  "replacements:cucumber-to-scoped",
@@ -137,6 +138,15 @@ var replacements_default = {
137
138
  "replacementVersion": "7.11.0"
138
139
  }]
139
140
  },
141
+ "base-ui-components-to-base-ui": {
142
+ "description": "`@base-ui-components/react` was renamed to `@base-ui/react`.",
143
+ "packageRules": [{
144
+ "matchDatasources": ["npm"],
145
+ "matchPackageNames": ["@base-ui-components/react"],
146
+ "replacementName": "@base-ui/react",
147
+ "replacementVersion": "1.0.0"
148
+ }]
149
+ },
140
150
  "clang-format-to-maintenance-fork": {
141
151
  "description": "Maintenance fork of `clang-format`",
142
152
  "packageRules": [{
@@ -46,7 +46,7 @@ hashMap.set("gitlabci-include", "354cfc4ea327c6d5cd5bee1f17763832efc7f5402e9fd22
46
46
  hashMap.set("glasskube", "253d6db30bdec75ed5ab5d26f31d69bc07813ba10089a28da12c6a29eff4ec70");
47
47
  hashMap.set("gleam", "b717a48c525ad6b1d434c6a9db828ddebbb85e94519e89ddc4040878e3600e84");
48
48
  hashMap.set("gomod", "93c6d963bd46456b438d693f4a385a490e5c729ad544564f2a9d58a1b975fe7b");
49
- hashMap.set("gradle", "b391fd08d44372864c2b0c6e69f572f6e122c78fcb5d853f23b3f3fea5641678");
49
+ hashMap.set("gradle", "39435c4a5525a2c99a303934c23526d972ee9a40672afed801feb144a97c4eb8");
50
50
  hashMap.set("gradle-wrapper", "8d5f573816e63739d264768b7f2565905036153385a0216b82ea6fed34b1a233");
51
51
  hashMap.set("haskell-cabal", "d796ec6859e63ab4f1b7030c4016071202c3a44c7c11d4a9131d7e2ba19b396d");
52
52
  hashMap.set("helm-requirements", "4d90e5e18a380876ad48e21e1ad88ea62e25d973a1ddaa3763447fc0a9f9915b");
@@ -1 +1 @@
1
- {"version":3,"file":"fingerprint.generated.js","names":[],"sources":["../../../lib/modules/manager/fingerprint.generated.ts"],"sourcesContent":["export const hashMap = new Map<string, string>();\n\nhashMap.set('ansible','1fbc76f78daa14a8c9ab1142e9d1e05c746c0419a9f1455e4279f476590d0c04');\nhashMap.set('ansible-galaxy','8226d47128f2018825d4d6f84794e3183eb79c706045fa7e88491edd5e64106f');\nhashMap.set('argocd','5d35b1992e53130bf83b0e59a0f90ccd3a78919974c69044f306dc5d162f48ce');\nhashMap.set('asdf','1f6fcf620e9c6cd35991380cb6eafb94ec60cd77cbd13335ebe3a1d9727416c9');\nhashMap.set('azure-pipelines','4f635b0ecd388ee266d992e8281fd40e3db2f5867d86fc1cbce72dc33a66e796');\nhashMap.set('batect','fad98996bea8626525ab925f83a6ae0ce9262c53770e7aa7cb448a1e0f1ddf21');\nhashMap.set('batect-wrapper','d999355511ea7f4053325a18b8cfc8d2b586c61e6760c35e557d383a673e3939');\nhashMap.set('bazel','c6e0ad88ea468664c3a33263baf7452d83d2d37ff09ba920e18f64ee81fd0acb');\nhashMap.set('bazel-module','5cb69da92412bbfd9be39d8575e629e5c5d72e058322797e52a41ee1ba442103');\nhashMap.set('bazelisk','c4c8561ff5857a14db68d70867dcc3cf63605380966b1132c295336e5cef5604');\nhashMap.set('bicep','7246e0bfc06e0e28cbb03ac088c5591f648956b086e106aeb251fe5d628329db');\nhashMap.set('bitbucket-pipelines','09eb044219d74331fea135f50121b7d4d146333eb97e4ccbfa9ddf0eb4012963');\nhashMap.set('bitrise','afdb46fe37fc0307943089e18b6724065394805e628b4b6c4430a6068c494030');\nhashMap.set('buildkite','a93effb1f1c5d65b3277c3b4709924eacde282e8efd028a8e3d8c1ce3ef69407');\nhashMap.set('buildpacks','6bef3cb04d66b5cfbb195adb4829bcbccae6408518706744d291bacf0610421f');\nhashMap.set('bun','06b44aafed4cf7bf9276f66edf995b8d9aef9eec08d3d76fe6d9e0b085544e2b');\nhashMap.set('bun-version','df3ae8e4a5de1fa1b4544f3d7fc8117e80adb1e151c46d1ede54a4dbea6521e4');\nhashMap.set('bundler','6d7e9d2018ac03e15f19e8b40ef70dd87d509d5affca24bc464d085899880a25');\nhashMap.set('cake','288c3c36a50371b26957fa71992cc335228d53563c75597b36919ac7286e96eb');\nhashMap.set('cargo','308d7ab4c6d24027b050bf659dfab0e510d9a22f8134695a7c68214908ee4634');\nhashMap.set('cdnurl','d3edf6cdc38e92eb43ff5a2b4e8df6a6a13154cf83244725c39e28d7e6ea9177');\nhashMap.set('circleci','135937d4720718304adb0ba998516f8ce38c3220ccd18b00b8c70c62b45df4da');\nhashMap.set('cloudbuild','8c0c739f7e4082bbfe8e3fdffebaf43e26f70a1314d95b306e9b93e4f4297886');\nhashMap.set('cocoapods','b6ac3b4a6b8a5b32daed37bf695fe177cdb1b4a94ae7f7fb2f4c4c096c0a004c');\nhashMap.set('composer','cdb6895574020cec402e0b878e4078b62f1acfd0392a861cbb523036634f6383');\nhashMap.set('conan','aecc3917d77146db4e57dd12944be1beff860e90b7ebdd2d8fbc449fc1a06574');\nhashMap.set('copier','09f1aeccd473843a231bae41e7c39c6b8c45dd46102cb4f1fb4fc3852d849493');\nhashMap.set('cpanfile','6a1d67d9c8751123deaf0c7f3ac38a07024e960c140f8228fcbcb93954fdca01');\nhashMap.set('crossplane','5c26b1201a1a51454ffb94d829e223a76a781569bf79cdb1e47087c30233ec40');\nhashMap.set('crow','eb9a5f9f95041855dded67bcce3dd54724f690995ed6268d272e8a666ff28fd0');\nhashMap.set('deps-edn','c87dd5e88587147ad1a78f047b814f3c4aa60d6de30d0c49d849391eeaf1b64c');\nhashMap.set('devbox','bcf5334e8a21190baaa25436acf2f17fbf095504262a4e9ee7c62ffb644eb716');\nhashMap.set('devcontainer','24320ed1cb6191d04cb8b2707214d82c08c682597aed1d84f250aa00ad1632ec');\nhashMap.set('docker-compose','5441af5b5abf8d347e46002d47f02f85743401bda28232f49fb7b3bbb772a4fb');\nhashMap.set('dockerfile','322b95f7e55dd78d7fe71306a6f649479eca61c60d75bb10b23604a230dbdd08');\nhashMap.set('droneci','237c8de87b9bf653fb943b56e84e99c45f6d86ae27d86e599b3f3f99c35ba8ee');\nhashMap.set('fleet','fe2b132bd17f9c0a46ea5877bdaa6671c6452391219c9441e367d44deabd7a9a');\nhashMap.set('flux','427e0c1a5b1d8337503a9a568a76532fbde0bab8b355fa8f47312de50eadf2f6');\nhashMap.set('fvm','9b161df0f14bc6e536368952adf373e343630097121a913cea60ee284027fb90');\nhashMap.set('git-submodules','a286e097a5fcc6c946e792b812871147b39ad93f9ad041b5b3216b100f972e95');\nhashMap.set('github-actions','076baaa5a3e96012a800899d9d4c0876341f7e87c2fb981af5ce28ce0bdd0c2a');\nhashMap.set('gitlabci','0dec44dd398bfc5b3c19d0929bea2fef7f386c94acfd1b1d7bc2a31d81d96fd6');\nhashMap.set('gitlabci-include','354cfc4ea327c6d5cd5bee1f17763832efc7f5402e9fd22c579239fccb9c6dab');\nhashMap.set('glasskube','253d6db30bdec75ed5ab5d26f31d69bc07813ba10089a28da12c6a29eff4ec70');\nhashMap.set('gleam','b717a48c525ad6b1d434c6a9db828ddebbb85e94519e89ddc4040878e3600e84');\nhashMap.set('gomod','93c6d963bd46456b438d693f4a385a490e5c729ad544564f2a9d58a1b975fe7b');\nhashMap.set('gradle','b391fd08d44372864c2b0c6e69f572f6e122c78fcb5d853f23b3f3fea5641678');\nhashMap.set('gradle-wrapper','8d5f573816e63739d264768b7f2565905036153385a0216b82ea6fed34b1a233');\nhashMap.set('haskell-cabal','d796ec6859e63ab4f1b7030c4016071202c3a44c7c11d4a9131d7e2ba19b396d');\nhashMap.set('helm-requirements','4d90e5e18a380876ad48e21e1ad88ea62e25d973a1ddaa3763447fc0a9f9915b');\nhashMap.set('helm-values','b5c52c6a27d805557418c585c5d3030c95ee641d53057021f3fe060f81b6e1af');\nhashMap.set('helmfile','e5783484b81247279563da3c835afe4002edfc412e13fb91877818ca44ae65f2');\nhashMap.set('helmsman','ef9680c612f702c7f07aea9b6e5d811e91214dcfa5755c9f3803e9528090935e');\nhashMap.set('helmv3','7724bf6cc3ff4afec1809899f619a332f4350049b9578b5c4634514b4448cf2b');\nhashMap.set('hermit','0ed751a4a1db928d5ca3e925408ed8aa453681ca3ab1cb6ea2334759663df6eb');\nhashMap.set('homebrew','3cd972c03dc6333a12fd26413150ffe18c0305aa61a16b490e3306fcec9f0000');\nhashMap.set('html','67c5f3c5c58e96f5dd257ba5987d900cf7fef81d667c3640e96c847b37de35a8');\nhashMap.set('jenkins','268ebfc8a1caf3edeb2192c2b1b2fa4bf18a78a3e731ba20a6c104940a5539f3');\nhashMap.set('jsonnet-bundler','4b73c32ddc3fe45d9777106d45b116777a2960e6e631256a6553060e602f893c');\nhashMap.set('kotlin-script','99ef296792a0ca575ed31d3defb514b05a58083dc01c52ea0890c69d867ba1dd');\nhashMap.set('kubernetes','87d87b2c410facdd0400691e87080a3e1ffe83158f51f52cd784442713122f30');\nhashMap.set('kustomize','1e44d6ef8622252dac6d9649fb04badd12d4827eb2a55f74792aa9de2b915775');\nhashMap.set('leiningen','133fca2c3423f53f2ccc22518153ddbcafbf0f4812376c77e952eb3d24d81f85');\nhashMap.set('maven','6faa1a3a70542bc7e84683c31b2fb86468fdf82a25c264cf2f7fc45dbc98b1d8');\nhashMap.set('maven-wrapper','47ad3458615efaa54641df1fae8d5b9ec3e53c6b8a9e591b1e7575399d09d37a');\nhashMap.set('meteor','4a93a326b27bedfe52118e27e06f39fecd7c55bd4cd7fccec4cb120cac14cec4');\nhashMap.set('mint','b816a49c8525716454d0a2bc9127916d5b27e5cca7b2aa2030312f218942af3e');\nhashMap.set('mise','32ca6411d1687df852e0e90905ec8456268c984397712bdbf437cea1a411f75e');\nhashMap.set('mix','1116e1adf1c18c866f0a9e6fa065c4fb9da055d8d150e625344899bb94095481');\nhashMap.set('nix','f3ffec2f14e7261de8068895b91392e992dcef208fbaf52110d6862e4712c031');\nhashMap.set('nodenv','ac652c28481b001f7471f4183eac07b45d98ecbe83efc275830b0a1b2e0459b8');\nhashMap.set('npm','f100896f5ac7854ba443e149226b399f76f356015131ebe8f298d6dc08589472');\nhashMap.set('nuget','a8162c2819fb23fe6de82c8eb4196133701bb3c538202fe8dc9cab4a326d47e4');\nhashMap.set('nvm','3eb77c7b0acf6d64753de78fad2499b352719853aa6872878c40675d14152322');\nhashMap.set('ocb','032b216684c14b0954e0bb019513a2aca3faaee5748587acb668d377d7c891ca');\nhashMap.set('osgi','32233a1a8a2725699d7448ba438e3d0b78141f7799cd2b588de278d41e26ed10');\nhashMap.set('pep621','f503497a4adef31b29572176e9a69d52fa9b0bfe3477b6e228c906aeb4861de5');\nhashMap.set('pep723','105cdc1674da67d48174457bea670c95d8a023e4263d1efc002f02c7f232b5eb');\nhashMap.set('pip-compile','89152ad6c89f278395f32d289dc3890823c233366547d228e97dd1319aa144b5');\nhashMap.set('pip_requirements','d56819b860371c31005e4b9701526a93d937daf932e749d5775df7ade003a7d9');\nhashMap.set('pip_setup','0175fe550c19d9bd31c978bd83fdc088cb40fcacd5d6751f640164274ae64e61');\nhashMap.set('pipenv','50f5a54ed714fd3d738c1aa9a353cf3aab767899acdcb763088d4bd04f3a737b');\nhashMap.set('pixi','b17af6eaa33e7babcc52cfc9a617c7801c0efb1125bbd6d0d4e9f6fe33afd353');\nhashMap.set('poetry','31fcb2ef5803d87cf1a1a633da241806bca161c681fdce2f2f130372ad7edffc');\nhashMap.set('pre-commit','a6a6e847fdb0f56650e66ef7d69e68de752b390913f79ac31d1a7ec5955d03da');\nhashMap.set('pub','0fbad9f77579fcec3a623c6feab56e71934c67a79bb8f4f0f847452051d2a0ba');\nhashMap.set('puppet','ba58ab689e44acc8f61c3569ab8b40fde01b8a9d3aad712708e2a419e57d8b45');\nhashMap.set('pyenv','9ede8becc97774f9040b40f4472d3e933534b596e04c360bfe0f3c6f95f25182');\nhashMap.set('quadlet','e355e13e104351a8b3516a8e272fc5f7e625c9f39b0c492ba27283a36227c2d4');\nhashMap.set('renovate-config-presets','a394fe55f8b6ba356f29f76efd9f0d34b56baceb111e6d92f95b29b5ca50ac67');\nhashMap.set('ruby-version','2db2140d9eee8c555e729a4de0396fa2d78846d3149890ee12fa515bd654be97');\nhashMap.set('runtime-version','b582b168c0cc595e39010feb10f4b97a82683eb269e9598216fbb11cc186e160');\nhashMap.set('sbt','61f9323c91c45227da71d43120fa1eddc41685502be017118975f77b44fb1b8e');\nhashMap.set('scalafmt','9d36159b56835e96498af026a1fb0543200db0581681ef95ec54988f411e180f');\nhashMap.set('setup-cfg','7dea08c5708625e753bd56918bc214df7fb4d8543a26e936926a21ab43b5f785');\nhashMap.set('sveltos','167a5cc79098803be3b815a28cc40ef3361c455751e1d6a7a99ba91bfce26709');\nhashMap.set('swift','512aa60afb154c8e1daa4b6aa325ada7f42e7e97d8e4f4451a265bba4a63af61');\nhashMap.set('tekton','4e35c75bba4abc9c3cf49c55da6c19db4f4e9181d1fd9583288ab55ef7c944fd');\nhashMap.set('terraform','5bd62ce12c23896b8ecb2385a60a3cb9eb72badf10f9984bfed38f50f9262266');\nhashMap.set('terraform-version','ec8f786b9731d47f2c2fe0307caf64d7ddd83046fe7ff1f7d8423239f8b0f2aa');\nhashMap.set('terragrunt','b8474c65383a702602eee432cc1434f9a49a1ef886d1213de92d7a84fb98b9cd');\nhashMap.set('terragrunt-version','eea6087b33717d22ede2fc68c2f64df8390b75abe82110ed831a180648feb51d');\nhashMap.set('tflint-plugin','4a975f0cc1aa22cd258aa835de3dc98d7a5c0d1cee0a1092324338968e08a827');\nhashMap.set('travis','bb482a0195cd009ec3896a6227bb95617f5c84bedb518c7d971e50c62235d9ca');\nhashMap.set('typst','d080a79fbd961c6e21fcc505d544b7e0ff2126142acb1dcabdf6abbcd9339248');\nhashMap.set('unity3d','f13e25e115e3443f4e16cf31578acffa78fb1a5e23339680a92d8d6de6052920');\nhashMap.set('velaci','fda00ddb7cc23e9a37e0a8a253151df0a6930b4276d3e4f78cc54b9ac09af7de');\nhashMap.set('vendir','4627230d3b7698c41aac192d57b65b091c860c8f858c89d6af4b06ed6a32fae6');\nhashMap.set('woodpecker','6110d3bec33aaeb3511d4bbfa896cec3c8e02fb04a6cff50c9ba81061c851045');\nhashMap.set('jsonata','3b5f465b586993f92c8490e70885e7eecce9b6556bcc376dd9c11db8ee9e6960');\nhashMap.set('regex','7b643b49e498465cf91b25b8b840bb1fec8c8a3a59bfa8f97a39c976675325a0');"],"mappings":"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"}
1
+ {"version":3,"file":"fingerprint.generated.js","names":[],"sources":["../../../lib/modules/manager/fingerprint.generated.ts"],"sourcesContent":["export const hashMap = new Map<string, string>();\n\nhashMap.set('ansible','1fbc76f78daa14a8c9ab1142e9d1e05c746c0419a9f1455e4279f476590d0c04');\nhashMap.set('ansible-galaxy','8226d47128f2018825d4d6f84794e3183eb79c706045fa7e88491edd5e64106f');\nhashMap.set('argocd','5d35b1992e53130bf83b0e59a0f90ccd3a78919974c69044f306dc5d162f48ce');\nhashMap.set('asdf','1f6fcf620e9c6cd35991380cb6eafb94ec60cd77cbd13335ebe3a1d9727416c9');\nhashMap.set('azure-pipelines','4f635b0ecd388ee266d992e8281fd40e3db2f5867d86fc1cbce72dc33a66e796');\nhashMap.set('batect','fad98996bea8626525ab925f83a6ae0ce9262c53770e7aa7cb448a1e0f1ddf21');\nhashMap.set('batect-wrapper','d999355511ea7f4053325a18b8cfc8d2b586c61e6760c35e557d383a673e3939');\nhashMap.set('bazel','c6e0ad88ea468664c3a33263baf7452d83d2d37ff09ba920e18f64ee81fd0acb');\nhashMap.set('bazel-module','5cb69da92412bbfd9be39d8575e629e5c5d72e058322797e52a41ee1ba442103');\nhashMap.set('bazelisk','c4c8561ff5857a14db68d70867dcc3cf63605380966b1132c295336e5cef5604');\nhashMap.set('bicep','7246e0bfc06e0e28cbb03ac088c5591f648956b086e106aeb251fe5d628329db');\nhashMap.set('bitbucket-pipelines','09eb044219d74331fea135f50121b7d4d146333eb97e4ccbfa9ddf0eb4012963');\nhashMap.set('bitrise','afdb46fe37fc0307943089e18b6724065394805e628b4b6c4430a6068c494030');\nhashMap.set('buildkite','a93effb1f1c5d65b3277c3b4709924eacde282e8efd028a8e3d8c1ce3ef69407');\nhashMap.set('buildpacks','6bef3cb04d66b5cfbb195adb4829bcbccae6408518706744d291bacf0610421f');\nhashMap.set('bun','06b44aafed4cf7bf9276f66edf995b8d9aef9eec08d3d76fe6d9e0b085544e2b');\nhashMap.set('bun-version','df3ae8e4a5de1fa1b4544f3d7fc8117e80adb1e151c46d1ede54a4dbea6521e4');\nhashMap.set('bundler','6d7e9d2018ac03e15f19e8b40ef70dd87d509d5affca24bc464d085899880a25');\nhashMap.set('cake','288c3c36a50371b26957fa71992cc335228d53563c75597b36919ac7286e96eb');\nhashMap.set('cargo','308d7ab4c6d24027b050bf659dfab0e510d9a22f8134695a7c68214908ee4634');\nhashMap.set('cdnurl','d3edf6cdc38e92eb43ff5a2b4e8df6a6a13154cf83244725c39e28d7e6ea9177');\nhashMap.set('circleci','135937d4720718304adb0ba998516f8ce38c3220ccd18b00b8c70c62b45df4da');\nhashMap.set('cloudbuild','8c0c739f7e4082bbfe8e3fdffebaf43e26f70a1314d95b306e9b93e4f4297886');\nhashMap.set('cocoapods','b6ac3b4a6b8a5b32daed37bf695fe177cdb1b4a94ae7f7fb2f4c4c096c0a004c');\nhashMap.set('composer','cdb6895574020cec402e0b878e4078b62f1acfd0392a861cbb523036634f6383');\nhashMap.set('conan','aecc3917d77146db4e57dd12944be1beff860e90b7ebdd2d8fbc449fc1a06574');\nhashMap.set('copier','09f1aeccd473843a231bae41e7c39c6b8c45dd46102cb4f1fb4fc3852d849493');\nhashMap.set('cpanfile','6a1d67d9c8751123deaf0c7f3ac38a07024e960c140f8228fcbcb93954fdca01');\nhashMap.set('crossplane','5c26b1201a1a51454ffb94d829e223a76a781569bf79cdb1e47087c30233ec40');\nhashMap.set('crow','eb9a5f9f95041855dded67bcce3dd54724f690995ed6268d272e8a666ff28fd0');\nhashMap.set('deps-edn','c87dd5e88587147ad1a78f047b814f3c4aa60d6de30d0c49d849391eeaf1b64c');\nhashMap.set('devbox','bcf5334e8a21190baaa25436acf2f17fbf095504262a4e9ee7c62ffb644eb716');\nhashMap.set('devcontainer','24320ed1cb6191d04cb8b2707214d82c08c682597aed1d84f250aa00ad1632ec');\nhashMap.set('docker-compose','5441af5b5abf8d347e46002d47f02f85743401bda28232f49fb7b3bbb772a4fb');\nhashMap.set('dockerfile','322b95f7e55dd78d7fe71306a6f649479eca61c60d75bb10b23604a230dbdd08');\nhashMap.set('droneci','237c8de87b9bf653fb943b56e84e99c45f6d86ae27d86e599b3f3f99c35ba8ee');\nhashMap.set('fleet','fe2b132bd17f9c0a46ea5877bdaa6671c6452391219c9441e367d44deabd7a9a');\nhashMap.set('flux','427e0c1a5b1d8337503a9a568a76532fbde0bab8b355fa8f47312de50eadf2f6');\nhashMap.set('fvm','9b161df0f14bc6e536368952adf373e343630097121a913cea60ee284027fb90');\nhashMap.set('git-submodules','a286e097a5fcc6c946e792b812871147b39ad93f9ad041b5b3216b100f972e95');\nhashMap.set('github-actions','076baaa5a3e96012a800899d9d4c0876341f7e87c2fb981af5ce28ce0bdd0c2a');\nhashMap.set('gitlabci','0dec44dd398bfc5b3c19d0929bea2fef7f386c94acfd1b1d7bc2a31d81d96fd6');\nhashMap.set('gitlabci-include','354cfc4ea327c6d5cd5bee1f17763832efc7f5402e9fd22c579239fccb9c6dab');\nhashMap.set('glasskube','253d6db30bdec75ed5ab5d26f31d69bc07813ba10089a28da12c6a29eff4ec70');\nhashMap.set('gleam','b717a48c525ad6b1d434c6a9db828ddebbb85e94519e89ddc4040878e3600e84');\nhashMap.set('gomod','93c6d963bd46456b438d693f4a385a490e5c729ad544564f2a9d58a1b975fe7b');\nhashMap.set('gradle','39435c4a5525a2c99a303934c23526d972ee9a40672afed801feb144a97c4eb8');\nhashMap.set('gradle-wrapper','8d5f573816e63739d264768b7f2565905036153385a0216b82ea6fed34b1a233');\nhashMap.set('haskell-cabal','d796ec6859e63ab4f1b7030c4016071202c3a44c7c11d4a9131d7e2ba19b396d');\nhashMap.set('helm-requirements','4d90e5e18a380876ad48e21e1ad88ea62e25d973a1ddaa3763447fc0a9f9915b');\nhashMap.set('helm-values','b5c52c6a27d805557418c585c5d3030c95ee641d53057021f3fe060f81b6e1af');\nhashMap.set('helmfile','e5783484b81247279563da3c835afe4002edfc412e13fb91877818ca44ae65f2');\nhashMap.set('helmsman','ef9680c612f702c7f07aea9b6e5d811e91214dcfa5755c9f3803e9528090935e');\nhashMap.set('helmv3','7724bf6cc3ff4afec1809899f619a332f4350049b9578b5c4634514b4448cf2b');\nhashMap.set('hermit','0ed751a4a1db928d5ca3e925408ed8aa453681ca3ab1cb6ea2334759663df6eb');\nhashMap.set('homebrew','3cd972c03dc6333a12fd26413150ffe18c0305aa61a16b490e3306fcec9f0000');\nhashMap.set('html','67c5f3c5c58e96f5dd257ba5987d900cf7fef81d667c3640e96c847b37de35a8');\nhashMap.set('jenkins','268ebfc8a1caf3edeb2192c2b1b2fa4bf18a78a3e731ba20a6c104940a5539f3');\nhashMap.set('jsonnet-bundler','4b73c32ddc3fe45d9777106d45b116777a2960e6e631256a6553060e602f893c');\nhashMap.set('kotlin-script','99ef296792a0ca575ed31d3defb514b05a58083dc01c52ea0890c69d867ba1dd');\nhashMap.set('kubernetes','87d87b2c410facdd0400691e87080a3e1ffe83158f51f52cd784442713122f30');\nhashMap.set('kustomize','1e44d6ef8622252dac6d9649fb04badd12d4827eb2a55f74792aa9de2b915775');\nhashMap.set('leiningen','133fca2c3423f53f2ccc22518153ddbcafbf0f4812376c77e952eb3d24d81f85');\nhashMap.set('maven','6faa1a3a70542bc7e84683c31b2fb86468fdf82a25c264cf2f7fc45dbc98b1d8');\nhashMap.set('maven-wrapper','47ad3458615efaa54641df1fae8d5b9ec3e53c6b8a9e591b1e7575399d09d37a');\nhashMap.set('meteor','4a93a326b27bedfe52118e27e06f39fecd7c55bd4cd7fccec4cb120cac14cec4');\nhashMap.set('mint','b816a49c8525716454d0a2bc9127916d5b27e5cca7b2aa2030312f218942af3e');\nhashMap.set('mise','32ca6411d1687df852e0e90905ec8456268c984397712bdbf437cea1a411f75e');\nhashMap.set('mix','1116e1adf1c18c866f0a9e6fa065c4fb9da055d8d150e625344899bb94095481');\nhashMap.set('nix','f3ffec2f14e7261de8068895b91392e992dcef208fbaf52110d6862e4712c031');\nhashMap.set('nodenv','ac652c28481b001f7471f4183eac07b45d98ecbe83efc275830b0a1b2e0459b8');\nhashMap.set('npm','f100896f5ac7854ba443e149226b399f76f356015131ebe8f298d6dc08589472');\nhashMap.set('nuget','a8162c2819fb23fe6de82c8eb4196133701bb3c538202fe8dc9cab4a326d47e4');\nhashMap.set('nvm','3eb77c7b0acf6d64753de78fad2499b352719853aa6872878c40675d14152322');\nhashMap.set('ocb','032b216684c14b0954e0bb019513a2aca3faaee5748587acb668d377d7c891ca');\nhashMap.set('osgi','32233a1a8a2725699d7448ba438e3d0b78141f7799cd2b588de278d41e26ed10');\nhashMap.set('pep621','f503497a4adef31b29572176e9a69d52fa9b0bfe3477b6e228c906aeb4861de5');\nhashMap.set('pep723','105cdc1674da67d48174457bea670c95d8a023e4263d1efc002f02c7f232b5eb');\nhashMap.set('pip-compile','89152ad6c89f278395f32d289dc3890823c233366547d228e97dd1319aa144b5');\nhashMap.set('pip_requirements','d56819b860371c31005e4b9701526a93d937daf932e749d5775df7ade003a7d9');\nhashMap.set('pip_setup','0175fe550c19d9bd31c978bd83fdc088cb40fcacd5d6751f640164274ae64e61');\nhashMap.set('pipenv','50f5a54ed714fd3d738c1aa9a353cf3aab767899acdcb763088d4bd04f3a737b');\nhashMap.set('pixi','b17af6eaa33e7babcc52cfc9a617c7801c0efb1125bbd6d0d4e9f6fe33afd353');\nhashMap.set('poetry','31fcb2ef5803d87cf1a1a633da241806bca161c681fdce2f2f130372ad7edffc');\nhashMap.set('pre-commit','a6a6e847fdb0f56650e66ef7d69e68de752b390913f79ac31d1a7ec5955d03da');\nhashMap.set('pub','0fbad9f77579fcec3a623c6feab56e71934c67a79bb8f4f0f847452051d2a0ba');\nhashMap.set('puppet','ba58ab689e44acc8f61c3569ab8b40fde01b8a9d3aad712708e2a419e57d8b45');\nhashMap.set('pyenv','9ede8becc97774f9040b40f4472d3e933534b596e04c360bfe0f3c6f95f25182');\nhashMap.set('quadlet','e355e13e104351a8b3516a8e272fc5f7e625c9f39b0c492ba27283a36227c2d4');\nhashMap.set('renovate-config-presets','a394fe55f8b6ba356f29f76efd9f0d34b56baceb111e6d92f95b29b5ca50ac67');\nhashMap.set('ruby-version','2db2140d9eee8c555e729a4de0396fa2d78846d3149890ee12fa515bd654be97');\nhashMap.set('runtime-version','b582b168c0cc595e39010feb10f4b97a82683eb269e9598216fbb11cc186e160');\nhashMap.set('sbt','61f9323c91c45227da71d43120fa1eddc41685502be017118975f77b44fb1b8e');\nhashMap.set('scalafmt','9d36159b56835e96498af026a1fb0543200db0581681ef95ec54988f411e180f');\nhashMap.set('setup-cfg','7dea08c5708625e753bd56918bc214df7fb4d8543a26e936926a21ab43b5f785');\nhashMap.set('sveltos','167a5cc79098803be3b815a28cc40ef3361c455751e1d6a7a99ba91bfce26709');\nhashMap.set('swift','512aa60afb154c8e1daa4b6aa325ada7f42e7e97d8e4f4451a265bba4a63af61');\nhashMap.set('tekton','4e35c75bba4abc9c3cf49c55da6c19db4f4e9181d1fd9583288ab55ef7c944fd');\nhashMap.set('terraform','5bd62ce12c23896b8ecb2385a60a3cb9eb72badf10f9984bfed38f50f9262266');\nhashMap.set('terraform-version','ec8f786b9731d47f2c2fe0307caf64d7ddd83046fe7ff1f7d8423239f8b0f2aa');\nhashMap.set('terragrunt','b8474c65383a702602eee432cc1434f9a49a1ef886d1213de92d7a84fb98b9cd');\nhashMap.set('terragrunt-version','eea6087b33717d22ede2fc68c2f64df8390b75abe82110ed831a180648feb51d');\nhashMap.set('tflint-plugin','4a975f0cc1aa22cd258aa835de3dc98d7a5c0d1cee0a1092324338968e08a827');\nhashMap.set('travis','bb482a0195cd009ec3896a6227bb95617f5c84bedb518c7d971e50c62235d9ca');\nhashMap.set('typst','d080a79fbd961c6e21fcc505d544b7e0ff2126142acb1dcabdf6abbcd9339248');\nhashMap.set('unity3d','f13e25e115e3443f4e16cf31578acffa78fb1a5e23339680a92d8d6de6052920');\nhashMap.set('velaci','fda00ddb7cc23e9a37e0a8a253151df0a6930b4276d3e4f78cc54b9ac09af7de');\nhashMap.set('vendir','4627230d3b7698c41aac192d57b65b091c860c8f858c89d6af4b06ed6a32fae6');\nhashMap.set('woodpecker','6110d3bec33aaeb3511d4bbfa896cec3c8e02fb04a6cff50c9ba81061c851045');\nhashMap.set('jsonata','3b5f465b586993f92c8490e70885e7eecce9b6556bcc376dd9c11db8ee9e6960');\nhashMap.set('regex','7b643b49e498465cf91b25b8b840bb1fec8c8a3a59bfa8f97a39c976675325a0');"],"mappings":"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"}
@@ -266,7 +266,7 @@ function handleRegistryUrl(ctx) {
266
266
  }
267
267
  return ctx;
268
268
  }
269
- function handleLibraryDep(ctx) {
269
+ function handleCatalogLongFormDep(ctx) {
270
270
  const groupIdTokens = loadFromTokenMap(ctx, "groupId");
271
271
  const artifactIdTokens = loadFromTokenMap(ctx, "artifactId");
272
272
  const groupId = interpolateString(groupIdTokens, ctx);
@@ -285,6 +285,19 @@ function handleLibraryDep(ctx) {
285
285
  }
286
286
  return ctx;
287
287
  }
288
+ function handleCatalogDepString(ctx) {
289
+ const templateString = interpolateString(loadFromTokenMap(ctx, "templateStringTokens"), ctx);
290
+ if (!templateString) return ctx;
291
+ const aliasToken = loadFromTokenMap(ctx, "alias")[0];
292
+ const key = `libs.${aliasToken.value.replace(regEx(/[-_]/g), ".")}`;
293
+ ctx.globalVars[key] = {
294
+ key,
295
+ value: templateString,
296
+ fileReplacePosition: aliasToken.offset,
297
+ packageFile: ctx.packageFile
298
+ };
299
+ return handleDepString(ctx);
300
+ }
288
301
  function handleApplyFrom(ctx) {
289
302
  let scriptFile = interpolateString(loadFromTokenMap(ctx, "scriptFile"), ctx);
290
303
  if (!scriptFile) return ctx;
@@ -345,5 +358,5 @@ function handleImplicitDep(ctx) {
345
358
  }
346
359
 
347
360
  //#endregion
348
- export { handleApplyFrom, handleAssignment, handleDepString, handleImplicitDep, handleKotlinShortNotationDep, handleLibraryDep, handleLongFormDep, handlePlugin, handleRegistryContent, handleRegistryUrl, setParseGradleFunc };
361
+ export { handleApplyFrom, handleAssignment, handleCatalogDepString, handleCatalogLongFormDep, handleDepString, handleImplicitDep, handleKotlinShortNotationDep, handleLongFormDep, handlePlugin, handleRegistryContent, handleRegistryUrl, setParseGradleFunc };
349
362
  //# sourceMappingURL=handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","names":[],"sources":["../../../../../lib/modules/manager/gradle/parser/handlers.ts"],"sourcesContent":["import upath from 'upath';\nimport { logger } from '../../../../logger/index.ts';\nimport { getSiblingFileName } from '../../../../util/fs/index.ts';\nimport { regEx } from '../../../../util/regex.ts';\nimport { parseUrl } from '../../../../util/url.ts';\nimport type { PackageDependency } from '../../types.ts';\nimport type { parseGradle as parseGradleCallback } from '../parser.ts';\nimport type {\n ContentDescriptorMatcher,\n ContentDescriptorSpec,\n Ctx,\n GradleManagerData,\n} from '../types.ts';\nimport { isDependencyString, parseDependencyString } from '../utils.ts';\nimport {\n GRADLE_PLUGINS,\n GRADLE_TEST_SUITES,\n findVariable,\n interpolateString,\n loadFromTokenMap,\n} from './common.ts';\n\n// needed to break circular dependency\nlet parseGradle: typeof parseGradleCallback;\nexport function setParseGradleFunc(func: typeof parseGradleCallback): void {\n parseGradle = func;\n}\n\nexport function handleAssignment(ctx: Ctx): Ctx {\n const key = loadFromTokenMap(ctx, 'keyToken')[0].value;\n const valTokens = loadFromTokenMap(ctx, 'valToken');\n\n if (valTokens.length > 1) {\n // = template string with multiple variables\n ctx.tokenMap.templateStringTokens = valTokens;\n handleDepString(ctx);\n delete ctx.tokenMap.templateStringTokens;\n } else if (valTokens[0].type === 'symbol') {\n // foo = bar || foo = \"${bar}\"\n const varData = findVariable(valTokens[0].value, ctx);\n if (varData) {\n ctx.globalVars[key] = { ...varData };\n }\n } else {\n // = string value\n const dep = parseDependencyString(valTokens[0].value);\n if (dep) {\n dep.sharedVariableName = key;\n dep.managerData = {\n fileReplacePosition: valTokens[0].offset + dep.depName!.length + 1,\n packageFile: ctx.packageFile,\n };\n ctx.deps.push(dep);\n }\n\n ctx.globalVars[key] = {\n key,\n value: valTokens[0].value,\n fileReplacePosition: valTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n }\n\n return ctx;\n}\n\nexport function handleDepString(ctx: Ctx): Ctx {\n const stringTokens = loadFromTokenMap(ctx, 'templateStringTokens');\n\n const templateString = interpolateString(stringTokens, ctx);\n if (!templateString) {\n return ctx;\n }\n\n const dep = parseDependencyString(templateString);\n if (!dep) {\n return ctx;\n }\n\n let packageFile: string | undefined;\n let fileReplacePosition: number | undefined;\n for (const token of stringTokens) {\n if (token.type === 'symbol') {\n const varData = findVariable(token.value, ctx);\n if (varData) {\n packageFile = varData.packageFile;\n fileReplacePosition = varData.fileReplacePosition;\n if (varData.value === dep.currentValue) {\n dep.managerData = { fileReplacePosition, packageFile };\n dep.sharedVariableName = varData.key;\n }\n }\n }\n }\n\n if (!dep.managerData) {\n const lastToken = stringTokens[stringTokens.length - 1];\n if (\n lastToken?.type === 'string-value' &&\n dep.currentValue &&\n lastToken.value.includes(dep.currentValue)\n ) {\n packageFile = ctx.packageFile;\n if (stringTokens.length === 1) {\n fileReplacePosition = lastToken.offset + dep.depName!.length + 1;\n } else {\n fileReplacePosition =\n lastToken.offset + lastToken.value.lastIndexOf(dep.currentValue);\n }\n delete dep.sharedVariableName;\n } else {\n dep.skipReason = 'contains-variable';\n }\n dep.managerData = { fileReplacePosition, packageFile };\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nexport function handleKotlinShortNotationDep(ctx: Ctx): Ctx {\n const moduleNameTokens = loadFromTokenMap(ctx, 'artifactId');\n const versionTokens = loadFromTokenMap(ctx, 'version');\n\n const moduleName = interpolateString(moduleNameTokens, ctx);\n const versionValue = interpolateString(versionTokens, ctx);\n if (!moduleName || !versionValue) {\n return ctx;\n }\n\n const groupIdArtifactId = `org.jetbrains.kotlin:kotlin-${moduleName}`;\n const dep = parseDependencyString(`${groupIdArtifactId}:${versionValue}`);\n if (!dep) {\n return ctx;\n }\n\n dep.depName = moduleName;\n dep.packageName = groupIdArtifactId;\n dep.managerData = {\n fileReplacePosition: versionTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n\n if (versionTokens.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (versionTokens[0].type === 'symbol') {\n const varData = findVariable(versionTokens[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.currentValue = varData.value;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n }\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nexport function handleLongFormDep(ctx: Ctx): Ctx {\n const groupIdTokens = loadFromTokenMap(ctx, 'groupId');\n const artifactIdTokens = loadFromTokenMap(ctx, 'artifactId');\n const versionTokens = loadFromTokenMap(ctx, 'version');\n\n const groupId = interpolateString(groupIdTokens, ctx);\n const artifactId = interpolateString(artifactIdTokens, ctx);\n const version = interpolateString(versionTokens, ctx);\n if (!groupId || !artifactId || !version) {\n return ctx;\n }\n\n // Special handling: 3 independent dependencies mismatched as groupId, artifactId, version\n if (\n isDependencyString(groupId) &&\n isDependencyString(artifactId) &&\n isDependencyString(version)\n ) {\n ctx.tokenMap.templateStringTokens = groupIdTokens;\n handleDepString(ctx);\n ctx.tokenMap.templateStringTokens = artifactIdTokens;\n handleDepString(ctx);\n ctx.tokenMap.templateStringTokens = versionTokens;\n handleDepString(ctx);\n\n return ctx;\n }\n\n const dep = parseDependencyString([groupId, artifactId, version].join(':'));\n if (!dep) {\n return ctx;\n }\n\n const methodName = ctx.tokenMap.methodName ?? null;\n if (versionTokens.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (versionTokens[0].type === 'symbol') {\n const varData = findVariable(versionTokens[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n }\n } else {\n // = string value\n if (methodName?.[0]?.value === 'dependencySet') {\n dep.sharedVariableName = `${groupId}:${version}`;\n }\n dep.managerData = {\n fileReplacePosition: versionTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nexport function handlePlugin(ctx: Ctx): Ctx {\n const methodName = loadFromTokenMap(ctx, 'methodName')[0];\n const pluginNameTokens = loadFromTokenMap(ctx, 'pluginName');\n const pluginVersion = loadFromTokenMap(ctx, 'version');\n\n const plugin = interpolateString(pluginNameTokens, ctx);\n if (!plugin) {\n return ctx;\n }\n\n const depName =\n methodName.value === 'kotlin' ? `org.jetbrains.kotlin.${plugin}` : plugin;\n const packageName = `${depName}:${depName}.gradle.plugin`;\n\n const dep: PackageDependency<GradleManagerData> = {\n depType: 'plugin',\n depName,\n packageName,\n commitMessageTopic: `plugin ${depName}`,\n currentValue: pluginVersion[0].value,\n managerData: {\n fileReplacePosition: pluginVersion[0].offset,\n packageFile: ctx.packageFile,\n },\n };\n\n if (pluginVersion.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (pluginVersion[0].type === 'symbol') {\n const varData = findVariable(pluginVersion[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.currentValue = varData.value;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n } else {\n dep.skipReason = 'unspecified-version';\n }\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nfunction isValidContentDescriptorRegex(\n fieldName: string,\n pattern: string,\n): boolean {\n try {\n regEx(pattern);\n } catch {\n logger.debug(\n `Skipping content descriptor with unsupported regExp pattern for ${fieldName}: ${pattern}`,\n );\n return false;\n }\n\n return true;\n}\n\nexport function handleRegistryContent(ctx: Ctx): Ctx {\n const methodName = loadFromTokenMap(ctx, 'methodName')[0].value;\n let groupId = loadFromTokenMap(ctx, 'groupId')[0].value;\n\n let matcher: ContentDescriptorMatcher = 'simple';\n if (methodName.includes('Regex')) {\n matcher = 'regex';\n groupId = `^${groupId}$`.replaceAll('\\\\\\\\', '\\\\');\n if (!isValidContentDescriptorRegex('group', groupId)) {\n return ctx;\n }\n } else if (methodName.includes('AndSubgroups')) {\n matcher = 'subgroup';\n }\n\n const mode = methodName.startsWith('include') ? 'include' : 'exclude';\n const spec: ContentDescriptorSpec = { mode, matcher, groupId };\n\n if (methodName.includes('Module') || methodName.includes('Version')) {\n spec.artifactId = loadFromTokenMap(ctx, 'artifactId')[0].value;\n if (matcher === 'regex') {\n spec.artifactId = `^${spec.artifactId}$`.replaceAll('\\\\\\\\', '\\\\');\n if (!isValidContentDescriptorRegex('module', spec.artifactId)) {\n return ctx;\n }\n }\n }\n\n if (methodName.includes('Version')) {\n spec.version = loadFromTokenMap(ctx, 'version')[0].value;\n if (matcher === 'regex') {\n spec.version = `^${spec.version}$`.replaceAll('\\\\\\\\', '\\\\');\n if (!isValidContentDescriptorRegex('version', spec.version)) {\n return ctx;\n }\n }\n }\n\n ctx.tmpRegistryContent.push(spec);\n\n return ctx;\n}\n\nfunction isPluginRegistry(ctx: Ctx): boolean {\n if (ctx.tokenMap.registryScope) {\n const registryScope = loadFromTokenMap(ctx, 'registryScope')[0].value;\n return registryScope === 'pluginManagement';\n }\n\n return false;\n}\n\nfunction isExclusiveRegistry(ctx: Ctx): boolean {\n if (ctx.tokenMap.registryType) {\n const registryType = loadFromTokenMap(ctx, 'registryType')[0].value;\n return registryType === 'exclusiveContent';\n }\n\n return false;\n}\n\nexport function handleRegistryUrl(ctx: Ctx): Ctx {\n let localVariables = ctx.globalVars;\n\n if (!ctx.tokenMap.registryUrl) {\n return ctx;\n }\n\n if (ctx.tokenMap.name) {\n const nameTokens = loadFromTokenMap(ctx, 'name');\n const nameValue = interpolateString(nameTokens, ctx, localVariables);\n if (nameValue) {\n localVariables = {\n ...localVariables,\n name: {\n key: 'name',\n value: nameValue,\n },\n };\n }\n }\n\n let registryUrl = interpolateString(\n loadFromTokenMap(ctx, 'registryUrl'),\n ctx,\n localVariables,\n );\n if (registryUrl) {\n registryUrl = registryUrl.replace(regEx(/\\\\/g), '');\n const url = parseUrl(registryUrl);\n if (url?.host && url.protocol) {\n const registryType = isExclusiveRegistry(ctx) ? 'exclusive' : 'regular';\n if (registryType === 'exclusive' && !ctx.tmpRegistryContent.length) {\n logger.debug(\n `Skipping exclusive registry ${registryUrl} with unsupported content descriptors`,\n );\n return ctx;\n }\n\n ctx.registryUrls.push({\n registryUrl,\n registryType,\n scope: isPluginRegistry(ctx) ? 'plugin' : 'dep',\n content: ctx.tmpRegistryContent,\n });\n }\n }\n\n return ctx;\n}\n\nexport function handleLibraryDep(ctx: Ctx): Ctx {\n const groupIdTokens = loadFromTokenMap(ctx, 'groupId');\n const artifactIdTokens = loadFromTokenMap(ctx, 'artifactId');\n\n const groupId = interpolateString(groupIdTokens, ctx);\n const artifactId = interpolateString(artifactIdTokens, ctx);\n if (!groupId || !artifactId) {\n return ctx;\n }\n\n const aliasToken = loadFromTokenMap(ctx, 'alias')[0];\n const key = `libs.${aliasToken.value.replace(regEx(/[-_]/g), '.')}`;\n\n ctx.globalVars[key] = {\n key,\n value: `${groupId}:${artifactId}`,\n fileReplacePosition: aliasToken.offset,\n packageFile: ctx.packageFile,\n };\n\n if (ctx.tokenMap.version) {\n const version = interpolateString(loadFromTokenMap(ctx, 'version'), ctx);\n if (version) {\n handleLongFormDep(ctx);\n }\n }\n\n return ctx;\n}\n\nexport function handleApplyFrom(ctx: Ctx): Ctx {\n let scriptFile = interpolateString(loadFromTokenMap(ctx, 'scriptFile'), ctx);\n if (!scriptFile) {\n return ctx;\n }\n\n if (ctx.tokenMap.parentPath) {\n const parentPath = interpolateString(\n loadFromTokenMap(ctx, 'parentPath'),\n ctx,\n );\n if (parentPath && scriptFile) {\n scriptFile = upath.join(parentPath, scriptFile);\n }\n }\n\n if (ctx.recursionDepth > 2) {\n logger.debug(`Max recursion depth reached in script file: ${scriptFile}`);\n return ctx;\n }\n\n if (!regEx(/\\.gradle(\\.kts)?$/).test(scriptFile)) {\n logger.debug({ scriptFile }, `Only Gradle files can be included`);\n return ctx;\n }\n\n const scriptFilePath = getSiblingFileName(ctx.packageFile, scriptFile);\n if (!ctx.fileContents[scriptFilePath]) {\n logger.debug(`Failed to process included Gradle file ${scriptFilePath}`);\n return ctx;\n }\n\n const matchResult = parseGradle(\n // TODO #22198\n ctx.fileContents[scriptFilePath],\n ctx.globalVars,\n scriptFilePath,\n ctx.fileContents,\n ctx.recursionDepth + 1,\n );\n\n ctx.deps.push(...matchResult.deps);\n ctx.globalVars = { ...ctx.globalVars, ...matchResult.vars };\n ctx.registryUrls.push(...matchResult.urls);\n\n return ctx;\n}\n\nexport function handleImplicitDep(ctx: Ctx): Ctx {\n const implicitDepName = loadFromTokenMap(ctx, 'implicitDepName')[0].value;\n const versionTokens = loadFromTokenMap(ctx, 'version');\n const versionValue = interpolateString(versionTokens, ctx);\n if (!versionValue) {\n return ctx;\n }\n\n const isImplicitGradlePlugin = implicitDepName in GRADLE_PLUGINS;\n const groupIdArtifactId = isImplicitGradlePlugin\n ? GRADLE_PLUGINS[implicitDepName as keyof typeof GRADLE_PLUGINS][1]\n : GRADLE_TEST_SUITES[implicitDepName as keyof typeof GRADLE_TEST_SUITES];\n\n const dep = parseDependencyString(`${groupIdArtifactId}:${versionValue}`);\n if (!dep) {\n return ctx;\n }\n\n dep.depName = implicitDepName;\n dep.packageName = groupIdArtifactId;\n dep.managerData = {\n fileReplacePosition: versionTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n\n if (versionTokens.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (versionTokens[0].type === 'symbol') {\n const varData = findVariable(versionTokens[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.currentValue = varData.value;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n }\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","names":[],"sources":["../../../../../lib/modules/manager/gradle/parser/handlers.ts"],"sourcesContent":["import upath from 'upath';\nimport { logger } from '../../../../logger/index.ts';\nimport { getSiblingFileName } from '../../../../util/fs/index.ts';\nimport { regEx } from '../../../../util/regex.ts';\nimport { parseUrl } from '../../../../util/url.ts';\nimport type { PackageDependency } from '../../types.ts';\nimport type { parseGradle as parseGradleCallback } from '../parser.ts';\nimport type {\n ContentDescriptorMatcher,\n ContentDescriptorSpec,\n Ctx,\n GradleManagerData,\n} from '../types.ts';\nimport { isDependencyString, parseDependencyString } from '../utils.ts';\nimport {\n GRADLE_PLUGINS,\n GRADLE_TEST_SUITES,\n findVariable,\n interpolateString,\n loadFromTokenMap,\n} from './common.ts';\n\n// needed to break circular dependency\nlet parseGradle: typeof parseGradleCallback;\nexport function setParseGradleFunc(func: typeof parseGradleCallback): void {\n parseGradle = func;\n}\n\nexport function handleAssignment(ctx: Ctx): Ctx {\n const key = loadFromTokenMap(ctx, 'keyToken')[0].value;\n const valTokens = loadFromTokenMap(ctx, 'valToken');\n\n if (valTokens.length > 1) {\n // = template string with multiple variables\n ctx.tokenMap.templateStringTokens = valTokens;\n handleDepString(ctx);\n delete ctx.tokenMap.templateStringTokens;\n } else if (valTokens[0].type === 'symbol') {\n // foo = bar || foo = \"${bar}\"\n const varData = findVariable(valTokens[0].value, ctx);\n if (varData) {\n ctx.globalVars[key] = { ...varData };\n }\n } else {\n // = string value\n const dep = parseDependencyString(valTokens[0].value);\n if (dep) {\n dep.sharedVariableName = key;\n dep.managerData = {\n fileReplacePosition: valTokens[0].offset + dep.depName!.length + 1,\n packageFile: ctx.packageFile,\n };\n ctx.deps.push(dep);\n }\n\n ctx.globalVars[key] = {\n key,\n value: valTokens[0].value,\n fileReplacePosition: valTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n }\n\n return ctx;\n}\n\nexport function handleDepString(ctx: Ctx): Ctx {\n const stringTokens = loadFromTokenMap(ctx, 'templateStringTokens');\n\n const templateString = interpolateString(stringTokens, ctx);\n if (!templateString) {\n return ctx;\n }\n\n const dep = parseDependencyString(templateString);\n if (!dep) {\n return ctx;\n }\n\n let packageFile: string | undefined;\n let fileReplacePosition: number | undefined;\n for (const token of stringTokens) {\n if (token.type === 'symbol') {\n const varData = findVariable(token.value, ctx);\n if (varData) {\n packageFile = varData.packageFile;\n fileReplacePosition = varData.fileReplacePosition;\n if (varData.value === dep.currentValue) {\n dep.managerData = { fileReplacePosition, packageFile };\n dep.sharedVariableName = varData.key;\n }\n }\n }\n }\n\n if (!dep.managerData) {\n const lastToken = stringTokens[stringTokens.length - 1];\n if (\n lastToken?.type === 'string-value' &&\n dep.currentValue &&\n lastToken.value.includes(dep.currentValue)\n ) {\n packageFile = ctx.packageFile;\n if (stringTokens.length === 1) {\n fileReplacePosition = lastToken.offset + dep.depName!.length + 1;\n } else {\n fileReplacePosition =\n lastToken.offset + lastToken.value.lastIndexOf(dep.currentValue);\n }\n delete dep.sharedVariableName;\n } else {\n dep.skipReason = 'contains-variable';\n }\n dep.managerData = { fileReplacePosition, packageFile };\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nexport function handleKotlinShortNotationDep(ctx: Ctx): Ctx {\n const moduleNameTokens = loadFromTokenMap(ctx, 'artifactId');\n const versionTokens = loadFromTokenMap(ctx, 'version');\n\n const moduleName = interpolateString(moduleNameTokens, ctx);\n const versionValue = interpolateString(versionTokens, ctx);\n if (!moduleName || !versionValue) {\n return ctx;\n }\n\n const groupIdArtifactId = `org.jetbrains.kotlin:kotlin-${moduleName}`;\n const dep = parseDependencyString(`${groupIdArtifactId}:${versionValue}`);\n if (!dep) {\n return ctx;\n }\n\n dep.depName = moduleName;\n dep.packageName = groupIdArtifactId;\n dep.managerData = {\n fileReplacePosition: versionTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n\n if (versionTokens.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (versionTokens[0].type === 'symbol') {\n const varData = findVariable(versionTokens[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.currentValue = varData.value;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n }\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nexport function handleLongFormDep(ctx: Ctx): Ctx {\n const groupIdTokens = loadFromTokenMap(ctx, 'groupId');\n const artifactIdTokens = loadFromTokenMap(ctx, 'artifactId');\n const versionTokens = loadFromTokenMap(ctx, 'version');\n\n const groupId = interpolateString(groupIdTokens, ctx);\n const artifactId = interpolateString(artifactIdTokens, ctx);\n const version = interpolateString(versionTokens, ctx);\n if (!groupId || !artifactId || !version) {\n return ctx;\n }\n\n // Special handling: 3 independent dependencies mismatched as groupId, artifactId, version\n if (\n isDependencyString(groupId) &&\n isDependencyString(artifactId) &&\n isDependencyString(version)\n ) {\n ctx.tokenMap.templateStringTokens = groupIdTokens;\n handleDepString(ctx);\n ctx.tokenMap.templateStringTokens = artifactIdTokens;\n handleDepString(ctx);\n ctx.tokenMap.templateStringTokens = versionTokens;\n handleDepString(ctx);\n\n return ctx;\n }\n\n const dep = parseDependencyString([groupId, artifactId, version].join(':'));\n if (!dep) {\n return ctx;\n }\n\n const methodName = ctx.tokenMap.methodName ?? null;\n if (versionTokens.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (versionTokens[0].type === 'symbol') {\n const varData = findVariable(versionTokens[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n }\n } else {\n // = string value\n if (methodName?.[0]?.value === 'dependencySet') {\n dep.sharedVariableName = `${groupId}:${version}`;\n }\n dep.managerData = {\n fileReplacePosition: versionTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nexport function handlePlugin(ctx: Ctx): Ctx {\n const methodName = loadFromTokenMap(ctx, 'methodName')[0];\n const pluginNameTokens = loadFromTokenMap(ctx, 'pluginName');\n const pluginVersion = loadFromTokenMap(ctx, 'version');\n\n const plugin = interpolateString(pluginNameTokens, ctx);\n if (!plugin) {\n return ctx;\n }\n\n const depName =\n methodName.value === 'kotlin' ? `org.jetbrains.kotlin.${plugin}` : plugin;\n const packageName = `${depName}:${depName}.gradle.plugin`;\n\n const dep: PackageDependency<GradleManagerData> = {\n depType: 'plugin',\n depName,\n packageName,\n commitMessageTopic: `plugin ${depName}`,\n currentValue: pluginVersion[0].value,\n managerData: {\n fileReplacePosition: pluginVersion[0].offset,\n packageFile: ctx.packageFile,\n },\n };\n\n if (pluginVersion.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (pluginVersion[0].type === 'symbol') {\n const varData = findVariable(pluginVersion[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.currentValue = varData.value;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n } else {\n dep.skipReason = 'unspecified-version';\n }\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n\nfunction isValidContentDescriptorRegex(\n fieldName: string,\n pattern: string,\n): boolean {\n try {\n regEx(pattern);\n } catch {\n logger.debug(\n `Skipping content descriptor with unsupported regExp pattern for ${fieldName}: ${pattern}`,\n );\n return false;\n }\n\n return true;\n}\n\nexport function handleRegistryContent(ctx: Ctx): Ctx {\n const methodName = loadFromTokenMap(ctx, 'methodName')[0].value;\n let groupId = loadFromTokenMap(ctx, 'groupId')[0].value;\n\n let matcher: ContentDescriptorMatcher = 'simple';\n if (methodName.includes('Regex')) {\n matcher = 'regex';\n groupId = `^${groupId}$`.replaceAll('\\\\\\\\', '\\\\');\n if (!isValidContentDescriptorRegex('group', groupId)) {\n return ctx;\n }\n } else if (methodName.includes('AndSubgroups')) {\n matcher = 'subgroup';\n }\n\n const mode = methodName.startsWith('include') ? 'include' : 'exclude';\n const spec: ContentDescriptorSpec = { mode, matcher, groupId };\n\n if (methodName.includes('Module') || methodName.includes('Version')) {\n spec.artifactId = loadFromTokenMap(ctx, 'artifactId')[0].value;\n if (matcher === 'regex') {\n spec.artifactId = `^${spec.artifactId}$`.replaceAll('\\\\\\\\', '\\\\');\n if (!isValidContentDescriptorRegex('module', spec.artifactId)) {\n return ctx;\n }\n }\n }\n\n if (methodName.includes('Version')) {\n spec.version = loadFromTokenMap(ctx, 'version')[0].value;\n if (matcher === 'regex') {\n spec.version = `^${spec.version}$`.replaceAll('\\\\\\\\', '\\\\');\n if (!isValidContentDescriptorRegex('version', spec.version)) {\n return ctx;\n }\n }\n }\n\n ctx.tmpRegistryContent.push(spec);\n\n return ctx;\n}\n\nfunction isPluginRegistry(ctx: Ctx): boolean {\n if (ctx.tokenMap.registryScope) {\n const registryScope = loadFromTokenMap(ctx, 'registryScope')[0].value;\n return registryScope === 'pluginManagement';\n }\n\n return false;\n}\n\nfunction isExclusiveRegistry(ctx: Ctx): boolean {\n if (ctx.tokenMap.registryType) {\n const registryType = loadFromTokenMap(ctx, 'registryType')[0].value;\n return registryType === 'exclusiveContent';\n }\n\n return false;\n}\n\nexport function handleRegistryUrl(ctx: Ctx): Ctx {\n let localVariables = ctx.globalVars;\n\n if (!ctx.tokenMap.registryUrl) {\n return ctx;\n }\n\n if (ctx.tokenMap.name) {\n const nameTokens = loadFromTokenMap(ctx, 'name');\n const nameValue = interpolateString(nameTokens, ctx, localVariables);\n if (nameValue) {\n localVariables = {\n ...localVariables,\n name: {\n key: 'name',\n value: nameValue,\n },\n };\n }\n }\n\n let registryUrl = interpolateString(\n loadFromTokenMap(ctx, 'registryUrl'),\n ctx,\n localVariables,\n );\n if (registryUrl) {\n registryUrl = registryUrl.replace(regEx(/\\\\/g), '');\n const url = parseUrl(registryUrl);\n if (url?.host && url.protocol) {\n const registryType = isExclusiveRegistry(ctx) ? 'exclusive' : 'regular';\n if (registryType === 'exclusive' && !ctx.tmpRegistryContent.length) {\n logger.debug(\n `Skipping exclusive registry ${registryUrl} with unsupported content descriptors`,\n );\n return ctx;\n }\n\n ctx.registryUrls.push({\n registryUrl,\n registryType,\n scope: isPluginRegistry(ctx) ? 'plugin' : 'dep',\n content: ctx.tmpRegistryContent,\n });\n }\n }\n\n return ctx;\n}\n\nexport function handleCatalogLongFormDep(ctx: Ctx): Ctx {\n const groupIdTokens = loadFromTokenMap(ctx, 'groupId');\n const artifactIdTokens = loadFromTokenMap(ctx, 'artifactId');\n\n const groupId = interpolateString(groupIdTokens, ctx);\n const artifactId = interpolateString(artifactIdTokens, ctx);\n if (!groupId || !artifactId) {\n return ctx;\n }\n\n const aliasToken = loadFromTokenMap(ctx, 'alias')[0];\n const key = `libs.${aliasToken.value.replace(regEx(/[-_]/g), '.')}`;\n\n ctx.globalVars[key] = {\n key,\n value: `${groupId}:${artifactId}`,\n fileReplacePosition: aliasToken.offset,\n packageFile: ctx.packageFile,\n };\n\n if (ctx.tokenMap.version) {\n const version = interpolateString(loadFromTokenMap(ctx, 'version'), ctx);\n if (version) {\n handleLongFormDep(ctx);\n }\n }\n\n return ctx;\n}\n\nexport function handleCatalogDepString(ctx: Ctx): Ctx {\n const templateStringTokens = loadFromTokenMap(ctx, 'templateStringTokens');\n const templateString = interpolateString(templateStringTokens, ctx);\n if (!templateString) {\n return ctx;\n }\n\n const aliasToken = loadFromTokenMap(ctx, 'alias')[0];\n const key = `libs.${aliasToken.value.replace(regEx(/[-_]/g), '.')}`;\n\n ctx.globalVars[key] = {\n key,\n value: templateString,\n fileReplacePosition: aliasToken.offset,\n packageFile: ctx.packageFile,\n };\n\n return handleDepString(ctx);\n}\n\nexport function handleApplyFrom(ctx: Ctx): Ctx {\n let scriptFile = interpolateString(loadFromTokenMap(ctx, 'scriptFile'), ctx);\n if (!scriptFile) {\n return ctx;\n }\n\n if (ctx.tokenMap.parentPath) {\n const parentPath = interpolateString(\n loadFromTokenMap(ctx, 'parentPath'),\n ctx,\n );\n if (parentPath && scriptFile) {\n scriptFile = upath.join(parentPath, scriptFile);\n }\n }\n\n if (ctx.recursionDepth > 2) {\n logger.debug(`Max recursion depth reached in script file: ${scriptFile}`);\n return ctx;\n }\n\n if (!regEx(/\\.gradle(\\.kts)?$/).test(scriptFile)) {\n logger.debug({ scriptFile }, `Only Gradle files can be included`);\n return ctx;\n }\n\n const scriptFilePath = getSiblingFileName(ctx.packageFile, scriptFile);\n if (!ctx.fileContents[scriptFilePath]) {\n logger.debug(`Failed to process included Gradle file ${scriptFilePath}`);\n return ctx;\n }\n\n const matchResult = parseGradle(\n // TODO #22198\n ctx.fileContents[scriptFilePath],\n ctx.globalVars,\n scriptFilePath,\n ctx.fileContents,\n ctx.recursionDepth + 1,\n );\n\n ctx.deps.push(...matchResult.deps);\n ctx.globalVars = { ...ctx.globalVars, ...matchResult.vars };\n ctx.registryUrls.push(...matchResult.urls);\n\n return ctx;\n}\n\nexport function handleImplicitDep(ctx: Ctx): Ctx {\n const implicitDepName = loadFromTokenMap(ctx, 'implicitDepName')[0].value;\n const versionTokens = loadFromTokenMap(ctx, 'version');\n const versionValue = interpolateString(versionTokens, ctx);\n if (!versionValue) {\n return ctx;\n }\n\n const isImplicitGradlePlugin = implicitDepName in GRADLE_PLUGINS;\n const groupIdArtifactId = isImplicitGradlePlugin\n ? GRADLE_PLUGINS[implicitDepName as keyof typeof GRADLE_PLUGINS][1]\n : GRADLE_TEST_SUITES[implicitDepName as keyof typeof GRADLE_TEST_SUITES];\n\n const dep = parseDependencyString(`${groupIdArtifactId}:${versionValue}`);\n if (!dep) {\n return ctx;\n }\n\n dep.depName = implicitDepName;\n dep.packageName = groupIdArtifactId;\n dep.managerData = {\n fileReplacePosition: versionTokens[0].offset,\n packageFile: ctx.packageFile,\n };\n\n if (versionTokens.length > 1) {\n // = template string with multiple variables\n dep.skipReason = 'unspecified-version';\n } else if (versionTokens[0].type === 'symbol') {\n const varData = findVariable(versionTokens[0].value, ctx);\n if (varData) {\n dep.sharedVariableName = varData.key;\n dep.currentValue = varData.value;\n dep.managerData = {\n fileReplacePosition: varData.fileReplacePosition,\n packageFile: varData.packageFile,\n };\n }\n }\n\n ctx.deps.push(dep);\n\n return ctx;\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { cleanupTempVars, qArtifactId, qGroupId, qStringValue, qStringValueAsSymbol, qValueMatcher, storeInTokenMap, storeVarToken } from "./common.js";
2
- import { handleLibraryDep, handlePlugin } from "./handlers.js";
2
+ import { handleCatalogDepString, handleCatalogLongFormDep, handlePlugin } from "./handlers.js";
3
3
  import { query } from "@renovatebot/good-enough-parser";
4
4
 
5
5
  //#region lib/modules/manager/gradle/parser/version-catalogs.ts
@@ -15,13 +15,20 @@ const qVersionCatalogVersion = query.op(".").alt(query.sym("versionRef").tree({
15
15
  endsWith: ")",
16
16
  search: query.begin().join(qValueMatcher).end()
17
17
  })).handler((ctx) => storeInTokenMap(ctx, "version"));
18
- const qVersionCatalogDependencies = query.sym("library").tree({
18
+ const qVersionCatalogLongFormDependencies = query.sym("library").tree({
19
19
  type: "wrapped-tree",
20
20
  maxDepth: 1,
21
21
  startsWith: "(",
22
22
  endsWith: ")",
23
23
  search: query.begin().join(qAlias).op(",").join(qGroupId).op(",").join(qArtifactId).end()
24
- }).opt(qVersionCatalogVersion).handler(handleLibraryDep).handler(cleanupTempVars);
24
+ }).opt(qVersionCatalogVersion).handler(handleCatalogLongFormDep).handler(cleanupTempVars);
25
+ const qVersionCatalogShortDependencies = query.sym("library").tree({
26
+ type: "wrapped-tree",
27
+ maxDepth: 1,
28
+ startsWith: "(",
29
+ endsWith: ")",
30
+ search: query.begin().join(qAlias).op(",").join(qValueMatcher).handler((ctx) => storeInTokenMap(ctx, "templateStringTokens")).end()
31
+ }).handler(handleCatalogDepString).handler(cleanupTempVars);
25
32
  const qVersionCatalogPlugins = query.sym("plugin", storeVarToken).handler((ctx) => storeInTokenMap(ctx, "methodName")).tree({
26
33
  type: "wrapped-tree",
27
34
  maxDepth: 1,
@@ -41,8 +48,8 @@ const qVersionCatalogAliasDependencies = query.sym("alias").tree({
41
48
  startsWith: "(",
42
49
  endsWith: ")",
43
50
  search: query.begin().join(qGroupId).op(",").join(qArtifactId).end()
44
- }).opt(qVersionCatalogVersion).handler(handleLibraryDep).handler(cleanupTempVars);
45
- const qVersionCatalogs = query.alt(qVersionCatalogDependencies, qVersionCatalogPlugins, qVersionCatalogAliasDependencies);
51
+ }).opt(qVersionCatalogVersion).handler(handleCatalogLongFormDep).handler(cleanupTempVars);
52
+ const qVersionCatalogs = query.alt(qVersionCatalogLongFormDependencies, qVersionCatalogShortDependencies, qVersionCatalogPlugins, qVersionCatalogAliasDependencies);
46
53
 
47
54
  //#endregion
48
55
  export { qVersionCatalogs };
@@ -1 +1 @@
1
- {"version":3,"file":"version-catalogs.js","names":["q"],"sources":["../../../../../lib/modules/manager/gradle/parser/version-catalogs.ts"],"sourcesContent":["import { query as q } from '@renovatebot/good-enough-parser';\nimport type { Ctx } from '../types.ts';\nimport {\n cleanupTempVars,\n qArtifactId,\n qGroupId,\n qStringValue,\n qStringValueAsSymbol,\n qValueMatcher,\n storeInTokenMap,\n storeVarToken,\n} from './common.ts';\nimport { handleLibraryDep, handlePlugin } from './handlers.ts';\n\nconst qAlias = qStringValue.handler((ctx) => storeInTokenMap(ctx, 'alias'));\n\nconst qVersionCatalogVersion = q\n .op<Ctx>('.')\n .alt(\n // library(\"kotlin-reflect\", \"org.jetbrains.kotlin\", \"kotlin-reflect\").versionRef(\"kotlin\")\n q.sym<Ctx>('versionRef').tree({\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qStringValueAsSymbol).end(),\n }),\n // library(\"android-gradle\", \"com.android.tools.build\", \"gradle\").version(\"${agp}\")\n q.sym<Ctx>('version').tree({\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qValueMatcher).end(),\n }),\n )\n .handler((ctx) => storeInTokenMap(ctx, 'version'));\n\n// library(\"foo.bar\", \"foo\", \"bar\")\nconst qVersionCatalogDependencies = q\n .sym<Ctx>('library')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q\n .begin<Ctx>()\n .join(qAlias)\n .op(',')\n .join(qGroupId)\n .op(',')\n .join(qArtifactId)\n .end(),\n })\n .opt(qVersionCatalogVersion)\n .handler(handleLibraryDep)\n .handler(cleanupTempVars);\n\n// plugin(\"foo.bar\", \"foo:bar\")\nconst qVersionCatalogPlugins = q\n .sym<Ctx>('plugin', storeVarToken)\n .handler((ctx) => storeInTokenMap(ctx, 'methodName'))\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q\n .begin<Ctx>()\n .join(qAlias)\n .op(',')\n .alt(qValueMatcher)\n .handler((ctx) => storeInTokenMap(ctx, 'pluginName'))\n .end(),\n })\n .join(qVersionCatalogVersion)\n .handler(handlePlugin)\n .handler(cleanupTempVars);\n\n// alias(\"foo.bar\").to(\"foo\", \"bar\").version(\"1.2.3\")\nconst qVersionCatalogAliasDependencies = q\n .sym<Ctx>('alias')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qAlias).end(),\n })\n .op('.')\n .sym('to')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qGroupId).op(',').join(qArtifactId).end(),\n })\n .opt(qVersionCatalogVersion)\n .handler(handleLibraryDep)\n .handler(cleanupTempVars);\n\nexport const qVersionCatalogs = q.alt(\n qVersionCatalogDependencies,\n qVersionCatalogPlugins,\n qVersionCatalogAliasDependencies,\n);\n"],"mappings":";;;;;AAcA,MAAM,SAAS,aAAa,SAAS,QAAQ,gBAAgB,KAAK,QAAQ,CAAC;AAE3E,MAAM,yBAAyBA,MAC5B,GAAQ,IAAI,CACZ,IAECA,MAAE,IAAS,aAAa,CAAC,KAAK;CAC5B,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,qBAAqB,CAAC,KAAK;CACxD,CAAC,EAEFA,MAAE,IAAS,UAAU,CAAC,KAAK;CACzB,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,cAAc,CAAC,KAAK;CACjD,CAAC,CACH,CACA,SAAS,QAAQ,gBAAgB,KAAK,UAAU,CAAC;AAGpD,MAAM,8BAA8BA,MACjC,IAAS,UAAU,CACnB,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MACL,OAAY,CACZ,KAAK,OAAO,CACZ,GAAG,IAAI,CACP,KAAK,SAAS,CACd,GAAG,IAAI,CACP,KAAK,YAAY,CACjB,KAAK;CACT,CAAC,CACD,IAAI,uBAAuB,CAC3B,QAAQ,iBAAiB,CACzB,QAAQ,gBAAgB;AAG3B,MAAM,yBAAyBA,MAC5B,IAAS,UAAU,cAAc,CACjC,SAAS,QAAQ,gBAAgB,KAAK,aAAa,CAAC,CACpD,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MACL,OAAY,CACZ,KAAK,OAAO,CACZ,GAAG,IAAI,CACP,IAAI,cAAc,CAClB,SAAS,QAAQ,gBAAgB,KAAK,aAAa,CAAC,CACpD,KAAK;CACT,CAAC,CACD,KAAK,uBAAuB,CAC5B,QAAQ,aAAa,CACrB,QAAQ,gBAAgB;AAG3B,MAAM,mCAAmCA,MACtC,IAAS,QAAQ,CACjB,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,OAAO,CAAC,KAAK;CAC1C,CAAC,CACD,GAAG,IAAI,CACP,IAAI,KAAK,CACT,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,YAAY,CAAC,KAAK;CACtE,CAAC,CACD,IAAI,uBAAuB,CAC3B,QAAQ,iBAAiB,CACzB,QAAQ,gBAAgB;AAE3B,MAAa,mBAAmBA,MAAE,IAChC,6BACA,wBACA,iCACD"}
1
+ {"version":3,"file":"version-catalogs.js","names":["q"],"sources":["../../../../../lib/modules/manager/gradle/parser/version-catalogs.ts"],"sourcesContent":["import { query as q } from '@renovatebot/good-enough-parser';\nimport type { Ctx } from '../types.ts';\nimport {\n cleanupTempVars,\n qArtifactId,\n qGroupId,\n qStringValue,\n qStringValueAsSymbol,\n qValueMatcher,\n storeInTokenMap,\n storeVarToken,\n} from './common.ts';\nimport {\n handleCatalogDepString,\n handleCatalogLongFormDep,\n handlePlugin,\n} from './handlers.ts';\n\nconst qAlias = qStringValue.handler((ctx) => storeInTokenMap(ctx, 'alias'));\n\nconst qVersionCatalogVersion = q\n .op<Ctx>('.')\n .alt(\n // library(\"kotlin-reflect\", \"org.jetbrains.kotlin\", \"kotlin-reflect\").versionRef(\"kotlin\")\n q.sym<Ctx>('versionRef').tree({\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qStringValueAsSymbol).end(),\n }),\n // library(\"android-gradle\", \"com.android.tools.build\", \"gradle\").version(\"${agp}\")\n q.sym<Ctx>('version').tree({\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qValueMatcher).end(),\n }),\n )\n .handler((ctx) => storeInTokenMap(ctx, 'version'));\n\n// library(\"foo.bar\", \"foo\", \"bar\")\nconst qVersionCatalogLongFormDependencies = q\n .sym<Ctx>('library')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q\n .begin<Ctx>()\n .join(qAlias)\n .op(',')\n .join(qGroupId)\n .op(',')\n .join(qArtifactId)\n .end(),\n })\n .opt(qVersionCatalogVersion)\n .handler(handleCatalogLongFormDep)\n .handler(cleanupTempVars);\n\n// library(\"foo.bar\", \"foo:bar:1.2.3\")\nconst qVersionCatalogShortDependencies = q\n .sym<Ctx>('library')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q\n .begin<Ctx>()\n .join(qAlias)\n .op(',')\n .join(qValueMatcher)\n .handler((ctx) => storeInTokenMap(ctx, 'templateStringTokens'))\n .end(),\n })\n .handler(handleCatalogDepString)\n .handler(cleanupTempVars);\n\n// plugin(\"foo.bar\", \"foo:bar\")\nconst qVersionCatalogPlugins = q\n .sym<Ctx>('plugin', storeVarToken)\n .handler((ctx) => storeInTokenMap(ctx, 'methodName'))\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q\n .begin<Ctx>()\n .join(qAlias)\n .op(',')\n .alt(qValueMatcher)\n .handler((ctx) => storeInTokenMap(ctx, 'pluginName'))\n .end(),\n })\n .join(qVersionCatalogVersion)\n .handler(handlePlugin)\n .handler(cleanupTempVars);\n\n// alias(\"foo.bar\").to(\"foo\", \"bar\").version(\"1.2.3\")\nconst qVersionCatalogAliasDependencies = q\n .sym<Ctx>('alias')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qAlias).end(),\n })\n .op('.')\n .sym('to')\n .tree({\n type: 'wrapped-tree',\n maxDepth: 1,\n startsWith: '(',\n endsWith: ')',\n search: q.begin<Ctx>().join(qGroupId).op(',').join(qArtifactId).end(),\n })\n .opt(qVersionCatalogVersion)\n .handler(handleCatalogLongFormDep)\n .handler(cleanupTempVars);\n\nexport const qVersionCatalogs = q.alt(\n qVersionCatalogLongFormDependencies,\n qVersionCatalogShortDependencies,\n qVersionCatalogPlugins,\n qVersionCatalogAliasDependencies,\n);\n"],"mappings":";;;;;AAkBA,MAAM,SAAS,aAAa,SAAS,QAAQ,gBAAgB,KAAK,QAAQ,CAAC;AAE3E,MAAM,yBAAyBA,MAC5B,GAAQ,IAAI,CACZ,IAECA,MAAE,IAAS,aAAa,CAAC,KAAK;CAC5B,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,qBAAqB,CAAC,KAAK;CACxD,CAAC,EAEFA,MAAE,IAAS,UAAU,CAAC,KAAK;CACzB,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,cAAc,CAAC,KAAK;CACjD,CAAC,CACH,CACA,SAAS,QAAQ,gBAAgB,KAAK,UAAU,CAAC;AAGpD,MAAM,sCAAsCA,MACzC,IAAS,UAAU,CACnB,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MACL,OAAY,CACZ,KAAK,OAAO,CACZ,GAAG,IAAI,CACP,KAAK,SAAS,CACd,GAAG,IAAI,CACP,KAAK,YAAY,CACjB,KAAK;CACT,CAAC,CACD,IAAI,uBAAuB,CAC3B,QAAQ,yBAAyB,CACjC,QAAQ,gBAAgB;AAG3B,MAAM,mCAAmCA,MACtC,IAAS,UAAU,CACnB,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MACL,OAAY,CACZ,KAAK,OAAO,CACZ,GAAG,IAAI,CACP,KAAK,cAAc,CACnB,SAAS,QAAQ,gBAAgB,KAAK,uBAAuB,CAAC,CAC9D,KAAK;CACT,CAAC,CACD,QAAQ,uBAAuB,CAC/B,QAAQ,gBAAgB;AAG3B,MAAM,yBAAyBA,MAC5B,IAAS,UAAU,cAAc,CACjC,SAAS,QAAQ,gBAAgB,KAAK,aAAa,CAAC,CACpD,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MACL,OAAY,CACZ,KAAK,OAAO,CACZ,GAAG,IAAI,CACP,IAAI,cAAc,CAClB,SAAS,QAAQ,gBAAgB,KAAK,aAAa,CAAC,CACpD,KAAK;CACT,CAAC,CACD,KAAK,uBAAuB,CAC5B,QAAQ,aAAa,CACrB,QAAQ,gBAAgB;AAG3B,MAAM,mCAAmCA,MACtC,IAAS,QAAQ,CACjB,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,OAAO,CAAC,KAAK;CAC1C,CAAC,CACD,GAAG,IAAI,CACP,IAAI,KAAK,CACT,KAAK;CACJ,MAAM;CACN,UAAU;CACV,YAAY;CACZ,UAAU;CACV,QAAQA,MAAE,OAAY,CAAC,KAAK,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,YAAY,CAAC,KAAK;CACtE,CAAC,CACD,IAAI,uBAAuB,CAC3B,QAAQ,yBAAyB,CACjC,QAAQ,gBAAgB;AAE3B,MAAa,mBAAmBA,MAAE,IAChC,qCACA,kCACA,wBACA,iCACD"}
@@ -130,7 +130,7 @@ const allowedFields = {
130
130
  logJSON: "ChangeLogResult object for the upgrade",
131
131
  manager: "The (package) manager which detected the dependency",
132
132
  newDigest: "The new digest value",
133
- newDigestShort: "A shorted version of newDigest, for use when the full digest is too long to be conveniently displayed",
133
+ newDigestShort: "A shortened version of newDigest, for use when the full digest is too long to be conveniently displayed",
134
134
  newMajor: "The major version of the new version. e.g. \"3\" if the new version is \"3.1.0\"",
135
135
  newMinor: "The minor version of the new version. e.g. \"1\" if the new version is \"3.1.0\"",
136
136
  newPatch: "The patch version of the new version. e.g. \"0\" if the new version is \"3.1.0\"",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../lib/util/template/index.ts"],"sourcesContent":["import {\n isArray,\n isNumber,\n isPlainObject,\n isPrimitive,\n isString,\n} from '@sindresorhus/is';\nimport handlebars, { type HelperOptions } from 'handlebars';\nimport { GlobalConfig } from '../../config/global.ts';\nimport { logger } from '../../logger/index.ts';\nimport { toArray } from '../array.ts';\nimport { getChildEnv } from '../exec/utils.ts';\nimport { regEx } from '../regex.ts';\n\n// Missing in handlebars\ntype Options = HelperOptions & {\n lookupProperty: (element: unknown, key: unknown) => unknown;\n};\n\nconst helpers: Record<string, handlebars.HelperDelegate> = {\n encodeURIComponent,\n decodeURIComponent,\n encodeBase64: (str: string) => Buffer.from(str ?? '').toString('base64'),\n decodeBase64: (str: string) => Buffer.from(str ?? '', 'base64').toString(),\n stringToPrettyJSON: (input: string): string =>\n JSON.stringify(JSON.parse(input), null, 2),\n toJSON: (input: unknown): string => JSON.stringify(input),\n toArray: (...args: unknown[]): unknown[] => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n return args;\n },\n toObject: (...args: unknown[]): unknown => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n\n if (args.length % 2 !== 0) {\n throw new Error(`Must contain an even number of elements`);\n }\n\n const keys = args.filter((_, index) => index % 2 === 0);\n const values = args.filter((_, index) => index % 2 === 1);\n\n return Object.fromEntries(keys.map((key, index) => [key, values[index]]));\n },\n replace: (find, replace, context) =>\n (context ?? '').replace(regEx(find, 'g'), replace),\n lowercase: (str: string) => str?.toLowerCase(),\n containsString: (str, subStr) => str?.includes(subStr),\n equals: (arg1, arg2) => arg1 === arg2,\n includes: (arg1: string[], arg2: string) => {\n if (isArray(arg1, isString) && isString(arg2)) {\n return arg1.includes(arg2);\n }\n return false;\n },\n split: (str: unknown, separator: unknown): string[] => {\n if (isString(str) && isString(separator)) {\n return str.split(separator);\n }\n return [];\n },\n and: (...args: unknown[]) => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n return args.every(Boolean);\n },\n or: (...args: unknown[]) => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n return args.some(Boolean);\n },\n lookupArray: (obj: unknown, key: unknown, options: Options): unknown[] => {\n return (\n toArray(obj)\n // skip elements like #with does\n .filter((element) => !handlebars.Utils.isEmpty(element))\n .map((element) => options.lookupProperty(element, key))\n .filter((value) => value !== undefined)\n );\n },\n distinct: (obj: unknown): unknown[] => {\n const seen = new Set<string>();\n\n return toArray(obj).filter((value) => {\n const str = JSON.stringify(value);\n\n if (seen.has(str)) {\n return false;\n }\n\n seen.add(str);\n return true;\n });\n },\n add: (a, b) => {\n if (isNumber(a) && isNumber(b)) {\n return a + b;\n }\n\n throw new Error('add: inputs are not valid');\n },\n};\n\n// Register all helpers from the single source of truth\nfor (const [name, fn] of Object.entries(helpers)) {\n handlebars.registerHelper(name, fn);\n}\n\n// Export helper names derived from the same source used to register them\nexport const templateHelperNames = Object.keys(helpers) as readonly string[];\n\nexport const exposedConfigOptions = [\n 'additionalBranchPrefix',\n 'addLabels',\n 'allowedVersions',\n 'branchName',\n 'branchPrefix',\n 'branchTopic',\n 'commitBody',\n 'commitMessage',\n 'commitMessageAction',\n 'commitMessageExtra',\n 'commitMessagePrefix',\n 'commitMessageSuffix',\n 'commitMessageTopic',\n 'gitAuthor',\n 'group',\n 'groupName',\n 'groupSlug',\n 'labels',\n 'prBodyColumns',\n 'prBodyDefinitions',\n 'prBodyNotes',\n 'prTitle',\n 'semanticCommitScope',\n 'semanticCommitType',\n 'separateMajorMinor',\n 'separateMinorPatch',\n 'separateMultipleMinor',\n 'sourceDirectory',\n];\n\nexport const allowedFields = {\n baseBranch: 'The baseBranch for this branch/PR',\n body: 'The body of the release notes',\n categories: 'The categories of the manager of the dependency being updated',\n currentValue: 'The extracted current value of the dependency being updated',\n currentVersion:\n 'The version that would be currently installed. For example, if currentValue is ^3.0.0 then currentVersion might be 3.1.0.',\n currentVersionAgeInDays: 'The age of the current version in days',\n currentVersionTimestamp: 'The timestamp of the current version',\n currentDigest: 'The extracted current digest of the dependency being updated',\n currentDigestShort:\n 'The extracted current short digest of the dependency being updated',\n datasource: 'The datasource used to look up the upgrade',\n depName: 'The name of the dependency being updated',\n depNameLinked:\n 'The dependency name already linked to its home page using markdown',\n depNameSanitized:\n 'The depName field sanitized for use in branches after removing spaces and special characters',\n depType: 'The dependency type (if extracted - manager-dependent)',\n depTypes:\n 'A deduplicated array of dependency types (if extracted - manager-dependent) in a branch',\n displayFrom: 'The current value, formatted for display',\n displayPending: 'Latest pending update, if internalChecksFilter is in use',\n displayTo: 'The to value, formatted for display',\n hasReleaseNotes: 'true if the upgrade has release notes',\n indentation: 'The indentation of the dependency being updated',\n isGroup: 'true if the upgrade is part of a group',\n isLockfileUpdate: 'true if the branch is a lock file update',\n isMajor: 'true if the upgrade is major',\n isMinor: 'true if the upgrade is minor',\n isPatch: 'true if the upgrade is a patch upgrade',\n isPin: 'true if the upgrade is pinning dependencies',\n isPinDigest: 'true if the upgrade is pinning digests',\n isRollback: 'true if the upgrade is a rollback PR',\n isReplacement: 'true if the upgrade is a replacement',\n isRange: 'true if the new value is a range',\n isSingleVersion:\n 'true if the upgrade is to a single version rather than a range',\n isVulnerabilityAlert: 'true if the upgrade is a vulnerability alert',\n logJSON: 'ChangeLogResult object for the upgrade',\n manager: 'The (package) manager which detected the dependency',\n newDigest: 'The new digest value',\n newDigestShort:\n 'A shorted version of newDigest, for use when the full digest is too long to be conveniently displayed',\n newMajor:\n 'The major version of the new version. e.g. \"3\" if the new version is \"3.1.0\"',\n newMinor:\n 'The minor version of the new version. e.g. \"1\" if the new version is \"3.1.0\"',\n newPatch:\n 'The patch version of the new version. e.g. \"0\" if the new version is \"3.1.0\"',\n newName:\n 'The name of the new dependency that replaces the current deprecated dependency',\n newNameLinked:\n 'The new dependency name already linked to its home page using markdown',\n newValue:\n 'The new value in the upgrade. Can be a range or version e.g. \"^3.0.0\" or \"3.1.0\"',\n newVersion: 'The new version in the upgrade, e.g. \"3.1.0\"',\n newVersionAgeInDays: 'The age of the new version in days',\n major:\n 'The major version of the current version. e.g. \"3\" if the current version is \"3.1.0\"',\n minor:\n 'The minor version of the current version. e.g. \"1\" if the current version is \"3.1.0\"',\n patch:\n 'The patch version of the current version. e.g. \"0\" if the current version is \"3.1.0\"',\n packageFile: 'The filename that the dependency was found in',\n packageFileDir:\n 'The directory with full path where the packageFile was found',\n packageName: 'The full name that was used to look up the dependency',\n packageScope: 'The scope of the package name. Supports Maven group ID only',\n parentDir:\n 'The name of the directory that the dependency was found in, without full path',\n parentOrg: 'The name of the parent organization for the current repository',\n platform: 'VCS platform in use, e.g. \"github\", \"gitlab\", etc.',\n prettyDepType: 'Massaged depType',\n prettyNewMajor: 'The new major value with v prepended to it.',\n prettyNewVersion: 'The new version value with v prepended to it.',\n project: 'ChangeLogProject object',\n recreateClosed: 'If true, this PR will be recreated if closed',\n references: 'A list of references for the upgrade',\n releases: 'An array of releases for an upgrade',\n releaseNotes: 'A ChangeLogNotes object for the release',\n releaseTimestamp: 'The timestamp of the release',\n repository: 'The current repository',\n semanticPrefix: 'The fully generated semantic prefix for commit messages',\n sourceRepo: 'The repository in the sourceUrl, if present',\n sourceRepoName: 'The repository name in the sourceUrl, if present',\n sourceRepoOrg: 'The repository organization in the sourceUrl, if present',\n sourceRepoSlug: 'The slugified pathname of the sourceUrl, if present',\n sourceUrl: 'The source URL for the package',\n topLevelOrg:\n 'The name of the top-level organization for the current repository',\n updateType:\n 'One of digest, pin, rollback, patch, minor, major, replacement, pinDigest',\n upgrades: 'An array of upgrade objects in the branch',\n url: 'The url of the release notes',\n version: 'The version number of the changelog',\n versioning: 'The versioning scheme in use',\n versions: 'An array of ChangeLogRelease objects in the upgrade',\n vulnerabilitySeverity:\n 'The severity for a vulnerability alert upgrade (LOW, MEDIUM, MODERATE, HIGH, CRITICAL, UNKNOWN)',\n};\n\ntype CompileInput<T = Record<string, unknown>> = T;\n\nconst allowedTemplateFields = new Set([\n ...Object.keys(allowedFields),\n ...exposedConfigOptions,\n]);\n\nclass CompileInputProxyHandler implements ProxyHandler<CompileInput> {\n private warnVariables: Set<string>;\n\n constructor(warnVariables: Set<string>) {\n this.warnVariables = warnVariables;\n }\n\n get(target: CompileInput, prop: keyof CompileInput): unknown {\n if (prop === 'env') {\n return target[prop];\n }\n\n if (!allowedTemplateFields.has(prop)) {\n this.warnVariables.add(prop);\n return undefined;\n }\n\n const value = target[prop];\n\n if (prop === 'prBodyDefinitions') {\n // Expose all prBodyDefinitions.*\n return value;\n }\n\n if (isArray(value)) {\n return value.map((element) =>\n isPrimitive(element)\n ? element\n : proxyCompileInput(element as CompileInput, this.warnVariables),\n );\n }\n\n if (isPlainObject(value)) {\n return proxyCompileInput(value, this.warnVariables);\n }\n\n return value;\n }\n}\n\nexport function proxyCompileInput(\n input: CompileInput,\n warnVariables: Set<string>,\n): CompileInput {\n return new Proxy<CompileInput>(\n input,\n new CompileInputProxyHandler(warnVariables),\n );\n}\n\nexport function compile<T>(\n template: string,\n input: CompileInput<T>,\n filterFields = true,\n): string {\n const env = getChildEnv({});\n const data = { ...GlobalConfig.get(), ...input, env };\n const warnVariables = new Set<string>();\n const filteredInput = filterFields\n ? proxyCompileInput(data, warnVariables)\n : data;\n\n logger.trace({ template, filteredInput }, 'Compiling template');\n const result = handlebars.compile(template)(filteredInput);\n\n if (warnVariables.size > 0) {\n logger.info(\n { varNames: Array.from(warnVariables), template },\n 'Disallowed variable names in template',\n );\n }\n\n return result;\n}\n\nexport function safeCompile<T>(\n template: string,\n input: CompileInput<T>,\n filterFields = true,\n): string {\n try {\n return compile(template, input, filterFields);\n } catch (err) {\n logger.warn({ err, template }, 'Error compiling template');\n return '';\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../lib/util/template/index.ts"],"sourcesContent":["import {\n isArray,\n isNumber,\n isPlainObject,\n isPrimitive,\n isString,\n} from '@sindresorhus/is';\nimport handlebars, { type HelperOptions } from 'handlebars';\nimport { GlobalConfig } from '../../config/global.ts';\nimport { logger } from '../../logger/index.ts';\nimport { toArray } from '../array.ts';\nimport { getChildEnv } from '../exec/utils.ts';\nimport { regEx } from '../regex.ts';\n\n// Missing in handlebars\ntype Options = HelperOptions & {\n lookupProperty: (element: unknown, key: unknown) => unknown;\n};\n\nconst helpers: Record<string, handlebars.HelperDelegate> = {\n encodeURIComponent,\n decodeURIComponent,\n encodeBase64: (str: string) => Buffer.from(str ?? '').toString('base64'),\n decodeBase64: (str: string) => Buffer.from(str ?? '', 'base64').toString(),\n stringToPrettyJSON: (input: string): string =>\n JSON.stringify(JSON.parse(input), null, 2),\n toJSON: (input: unknown): string => JSON.stringify(input),\n toArray: (...args: unknown[]): unknown[] => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n return args;\n },\n toObject: (...args: unknown[]): unknown => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n\n if (args.length % 2 !== 0) {\n throw new Error(`Must contain an even number of elements`);\n }\n\n const keys = args.filter((_, index) => index % 2 === 0);\n const values = args.filter((_, index) => index % 2 === 1);\n\n return Object.fromEntries(keys.map((key, index) => [key, values[index]]));\n },\n replace: (find, replace, context) =>\n (context ?? '').replace(regEx(find, 'g'), replace),\n lowercase: (str: string) => str?.toLowerCase(),\n containsString: (str, subStr) => str?.includes(subStr),\n equals: (arg1, arg2) => arg1 === arg2,\n includes: (arg1: string[], arg2: string) => {\n if (isArray(arg1, isString) && isString(arg2)) {\n return arg1.includes(arg2);\n }\n return false;\n },\n split: (str: unknown, separator: unknown): string[] => {\n if (isString(str) && isString(separator)) {\n return str.split(separator);\n }\n return [];\n },\n and: (...args: unknown[]) => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n return args.every(Boolean);\n },\n or: (...args: unknown[]) => {\n // Need to remove the 'options', as the last parameter\n // https://handlebarsjs.com/api-reference/helpers.html\n args.pop();\n return args.some(Boolean);\n },\n lookupArray: (obj: unknown, key: unknown, options: Options): unknown[] => {\n return (\n toArray(obj)\n // skip elements like #with does\n .filter((element) => !handlebars.Utils.isEmpty(element))\n .map((element) => options.lookupProperty(element, key))\n .filter((value) => value !== undefined)\n );\n },\n distinct: (obj: unknown): unknown[] => {\n const seen = new Set<string>();\n\n return toArray(obj).filter((value) => {\n const str = JSON.stringify(value);\n\n if (seen.has(str)) {\n return false;\n }\n\n seen.add(str);\n return true;\n });\n },\n add: (a, b) => {\n if (isNumber(a) && isNumber(b)) {\n return a + b;\n }\n\n throw new Error('add: inputs are not valid');\n },\n};\n\n// Register all helpers from the single source of truth\nfor (const [name, fn] of Object.entries(helpers)) {\n handlebars.registerHelper(name, fn);\n}\n\n// Export helper names derived from the same source used to register them\nexport const templateHelperNames = Object.keys(helpers) as readonly string[];\n\nexport const exposedConfigOptions = [\n 'additionalBranchPrefix',\n 'addLabels',\n 'allowedVersions',\n 'branchName',\n 'branchPrefix',\n 'branchTopic',\n 'commitBody',\n 'commitMessage',\n 'commitMessageAction',\n 'commitMessageExtra',\n 'commitMessagePrefix',\n 'commitMessageSuffix',\n 'commitMessageTopic',\n 'gitAuthor',\n 'group',\n 'groupName',\n 'groupSlug',\n 'labels',\n 'prBodyColumns',\n 'prBodyDefinitions',\n 'prBodyNotes',\n 'prTitle',\n 'semanticCommitScope',\n 'semanticCommitType',\n 'separateMajorMinor',\n 'separateMinorPatch',\n 'separateMultipleMinor',\n 'sourceDirectory',\n];\n\nexport const allowedFields = {\n baseBranch: 'The baseBranch for this branch/PR',\n body: 'The body of the release notes',\n categories: 'The categories of the manager of the dependency being updated',\n currentValue: 'The extracted current value of the dependency being updated',\n currentVersion:\n 'The version that would be currently installed. For example, if currentValue is ^3.0.0 then currentVersion might be 3.1.0.',\n currentVersionAgeInDays: 'The age of the current version in days',\n currentVersionTimestamp: 'The timestamp of the current version',\n currentDigest: 'The extracted current digest of the dependency being updated',\n currentDigestShort:\n 'The extracted current short digest of the dependency being updated',\n datasource: 'The datasource used to look up the upgrade',\n depName: 'The name of the dependency being updated',\n depNameLinked:\n 'The dependency name already linked to its home page using markdown',\n depNameSanitized:\n 'The depName field sanitized for use in branches after removing spaces and special characters',\n depType: 'The dependency type (if extracted - manager-dependent)',\n depTypes:\n 'A deduplicated array of dependency types (if extracted - manager-dependent) in a branch',\n displayFrom: 'The current value, formatted for display',\n displayPending: 'Latest pending update, if internalChecksFilter is in use',\n displayTo: 'The to value, formatted for display',\n hasReleaseNotes: 'true if the upgrade has release notes',\n indentation: 'The indentation of the dependency being updated',\n isGroup: 'true if the upgrade is part of a group',\n isLockfileUpdate: 'true if the branch is a lock file update',\n isMajor: 'true if the upgrade is major',\n isMinor: 'true if the upgrade is minor',\n isPatch: 'true if the upgrade is a patch upgrade',\n isPin: 'true if the upgrade is pinning dependencies',\n isPinDigest: 'true if the upgrade is pinning digests',\n isRollback: 'true if the upgrade is a rollback PR',\n isReplacement: 'true if the upgrade is a replacement',\n isRange: 'true if the new value is a range',\n isSingleVersion:\n 'true if the upgrade is to a single version rather than a range',\n isVulnerabilityAlert: 'true if the upgrade is a vulnerability alert',\n logJSON: 'ChangeLogResult object for the upgrade',\n manager: 'The (package) manager which detected the dependency',\n newDigest: 'The new digest value',\n newDigestShort:\n 'A shortened version of newDigest, for use when the full digest is too long to be conveniently displayed',\n newMajor:\n 'The major version of the new version. e.g. \"3\" if the new version is \"3.1.0\"',\n newMinor:\n 'The minor version of the new version. e.g. \"1\" if the new version is \"3.1.0\"',\n newPatch:\n 'The patch version of the new version. e.g. \"0\" if the new version is \"3.1.0\"',\n newName:\n 'The name of the new dependency that replaces the current deprecated dependency',\n newNameLinked:\n 'The new dependency name already linked to its home page using markdown',\n newValue:\n 'The new value in the upgrade. Can be a range or version e.g. \"^3.0.0\" or \"3.1.0\"',\n newVersion: 'The new version in the upgrade, e.g. \"3.1.0\"',\n newVersionAgeInDays: 'The age of the new version in days',\n major:\n 'The major version of the current version. e.g. \"3\" if the current version is \"3.1.0\"',\n minor:\n 'The minor version of the current version. e.g. \"1\" if the current version is \"3.1.0\"',\n patch:\n 'The patch version of the current version. e.g. \"0\" if the current version is \"3.1.0\"',\n packageFile: 'The filename that the dependency was found in',\n packageFileDir:\n 'The directory with full path where the packageFile was found',\n packageName: 'The full name that was used to look up the dependency',\n packageScope: 'The scope of the package name. Supports Maven group ID only',\n parentDir:\n 'The name of the directory that the dependency was found in, without full path',\n parentOrg: 'The name of the parent organization for the current repository',\n platform: 'VCS platform in use, e.g. \"github\", \"gitlab\", etc.',\n prettyDepType: 'Massaged depType',\n prettyNewMajor: 'The new major value with v prepended to it.',\n prettyNewVersion: 'The new version value with v prepended to it.',\n project: 'ChangeLogProject object',\n recreateClosed: 'If true, this PR will be recreated if closed',\n references: 'A list of references for the upgrade',\n releases: 'An array of releases for an upgrade',\n releaseNotes: 'A ChangeLogNotes object for the release',\n releaseTimestamp: 'The timestamp of the release',\n repository: 'The current repository',\n semanticPrefix: 'The fully generated semantic prefix for commit messages',\n sourceRepo: 'The repository in the sourceUrl, if present',\n sourceRepoName: 'The repository name in the sourceUrl, if present',\n sourceRepoOrg: 'The repository organization in the sourceUrl, if present',\n sourceRepoSlug: 'The slugified pathname of the sourceUrl, if present',\n sourceUrl: 'The source URL for the package',\n topLevelOrg:\n 'The name of the top-level organization for the current repository',\n updateType:\n 'One of digest, pin, rollback, patch, minor, major, replacement, pinDigest',\n upgrades: 'An array of upgrade objects in the branch',\n url: 'The url of the release notes',\n version: 'The version number of the changelog',\n versioning: 'The versioning scheme in use',\n versions: 'An array of ChangeLogRelease objects in the upgrade',\n vulnerabilitySeverity:\n 'The severity for a vulnerability alert upgrade (LOW, MEDIUM, MODERATE, HIGH, CRITICAL, UNKNOWN)',\n};\n\ntype CompileInput<T = Record<string, unknown>> = T;\n\nconst allowedTemplateFields = new Set([\n ...Object.keys(allowedFields),\n ...exposedConfigOptions,\n]);\n\nclass CompileInputProxyHandler implements ProxyHandler<CompileInput> {\n private warnVariables: Set<string>;\n\n constructor(warnVariables: Set<string>) {\n this.warnVariables = warnVariables;\n }\n\n get(target: CompileInput, prop: keyof CompileInput): unknown {\n if (prop === 'env') {\n return target[prop];\n }\n\n if (!allowedTemplateFields.has(prop)) {\n this.warnVariables.add(prop);\n return undefined;\n }\n\n const value = target[prop];\n\n if (prop === 'prBodyDefinitions') {\n // Expose all prBodyDefinitions.*\n return value;\n }\n\n if (isArray(value)) {\n return value.map((element) =>\n isPrimitive(element)\n ? element\n : proxyCompileInput(element as CompileInput, this.warnVariables),\n );\n }\n\n if (isPlainObject(value)) {\n return proxyCompileInput(value, this.warnVariables);\n }\n\n return value;\n }\n}\n\nexport function proxyCompileInput(\n input: CompileInput,\n warnVariables: Set<string>,\n): CompileInput {\n return new Proxy<CompileInput>(\n input,\n new CompileInputProxyHandler(warnVariables),\n );\n}\n\nexport function compile<T>(\n template: string,\n input: CompileInput<T>,\n filterFields = true,\n): string {\n const env = getChildEnv({});\n const data = { ...GlobalConfig.get(), ...input, env };\n const warnVariables = new Set<string>();\n const filteredInput = filterFields\n ? proxyCompileInput(data, warnVariables)\n : data;\n\n logger.trace({ template, filteredInput }, 'Compiling template');\n const result = handlebars.compile(template)(filteredInput);\n\n if (warnVariables.size > 0) {\n logger.info(\n { varNames: Array.from(warnVariables), template },\n 'Disallowed variable names in template',\n );\n }\n\n return result;\n}\n\nexport function safeCompile<T>(\n template: string,\n input: CompileInput<T>,\n filterFields = true,\n): string {\n try {\n return compile(template, input, filterFields);\n } catch (err) {\n logger.warn({ err, template }, 'Error compiling template');\n return '';\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "renovate",
3
3
  "description": "Automated dependency updates. Flexible so you don't need to be.",
4
- "version": "43.62.0",
4
+ "version": "43.63.0",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "renovate": "dist/renovate.js",
@@ -282,7 +282,7 @@
282
282
  "lint-staged": "16.3.2",
283
283
  "markdownlint-cli2": "0.21.0",
284
284
  "markdownlint-cli2-formatter-template": "0.0.4",
285
- "memfs": "4.56.10",
285
+ "memfs": "4.56.11",
286
286
  "nock": "14.0.11",
287
287
  "npm-run-all2": "8.0.4",
288
288
  "nyc": "18.0.0",
@@ -1,7 +1,7 @@
1
1
  {
2
- "title": "JSON schema for Renovate 43.62.0 config files (https://renovatebot.com/)",
2
+ "title": "JSON schema for Renovate 43.63.0 config files (https://renovatebot.com/)",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
- "x-renovate-version": "43.62.0",
4
+ "x-renovate-version": "43.63.0",
5
5
  "allowComments": true,
6
6
  "type": "object",
7
7
  "properties": {