diff --git a/.pnp.cjs b/.pnp.cjs index dc5b81b511d..c92c2a3a410 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -3157,6 +3157,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@grpc/grpc-js", [\ + ["npm:1.13.2", {\ + "packageLocation": "./.yarn/cache/@grpc-grpc-js-npm-1.13.2-2010829daa-80b7bebc1d.zip/node_modules/@grpc/grpc-js/",\ + "packageDependencies": [\ + ["@grpc/grpc-js", "npm:1.13.2"],\ + ["@grpc/proto-loader", "npm:0.7.13"],\ + ["@js-sdsl/ordered-map", "npm:4.4.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:1.4.4", {\ "packageLocation": "./.yarn/cache/@grpc-grpc-js-npm-1.4.4-f333f82239-9d9c1aad22.zip/node_modules/@grpc/grpc-js/",\ "packageDependencies": [\ @@ -3188,6 +3197,17 @@ const RAW_RUNTIME_STATE = ["yargs", "npm:16.2.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.7.13", {\ + "packageLocation": "./.yarn/cache/@grpc-proto-loader-npm-0.7.13-be5b6af1c1-7e2d842c20.zip/node_modules/@grpc/proto-loader/",\ + "packageDependencies": [\ + ["@grpc/proto-loader", "npm:0.7.13"],\ + ["lodash.camelcase", "npm:4.3.0"],\ + ["long", "npm:5.3.1"],\ + ["protobufjs", "npm:6.11.4"],\ + ["yargs", "npm:17.7.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@humanwhocodes/config-array", [\ @@ -3447,6 +3467,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@js-sdsl/ordered-map", [\ + ["npm:4.4.2", {\ + "packageLocation": "./.yarn/cache/@js-sdsl-ordered-map-npm-4.4.2-158f6c6b74-ac64e3f061.zip/node_modules/@js-sdsl/ordered-map/",\ + "packageDependencies": [\ + ["@js-sdsl/ordered-map", "npm:4.4.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@jsdevtools/ono", [\ ["npm:7.1.3", {\ "packageLocation": "./.yarn/cache/@jsdevtools-ono-npm-7.1.3-cb2313543b-d4a036ccb9.zip/node_modules/@jsdevtools/ono/",\ @@ -8477,7 +8506,7 @@ const RAW_RUNTIME_STATE = ["cron", "npm:2.1.0"],\ ["dirty-chai", "virtual:e2d057e7cc143d3cb9bec864f4a2d862441b5a09f81f8e6c46e7a098cbc89e4d07017cc6e2e2142d5704bb55da853cbec2d025ebc0b30e8696c31380c00f2c7d#npm:2.0.1"],\ ["diskusage", "npm:1.2.0"],\ - ["dockerode", "npm:3.3.5"],\ + ["dockerode", "npm:4.0.5"],\ ["dot", "npm:1.1.3"],\ ["dotenv", "npm:8.6.0"],\ ["enquirer", "https://github.com/dashpay/enquirer.git#commit=86aaef0b1c82dfaa3436775e6b37de310eeb94f5"],\ @@ -9038,6 +9067,17 @@ const RAW_RUNTIME_STATE = ["ssh2", "npm:1.11.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.6", {\ + "packageLocation": "./.yarn/cache/docker-modem-npm-5.0.6-ba160bac18-4977797814.zip/node_modules/docker-modem/",\ + "packageDependencies": [\ + ["docker-modem", "npm:5.0.6"],\ + ["debug", "virtual:4b12ba5111caf7e8338099bdbc7cb046a9f8e079a44e74d0c03dca469876e3071ebbe671c5e90ae6b78ae33e22c205fa5ed32169a4aabd1404b13c56d09986e1#npm:4.3.4"],\ + ["readable-stream", "npm:3.6.2"],\ + ["split-ca", "npm:1.0.1"],\ + ["ssh2", "npm:1.16.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["dockerode", [\ @@ -9050,6 +9090,20 @@ const RAW_RUNTIME_STATE = ["tar-fs", "npm:2.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.0.5", {\ + "packageLocation": "./.yarn/cache/dockerode-npm-4.0.5-291e46ef8d-a300e5fdcf.zip/node_modules/dockerode/",\ + "packageDependencies": [\ + ["dockerode", "npm:4.0.5"],\ + ["@balena/dockerignore", "npm:1.0.2"],\ + ["@grpc/grpc-js", "npm:1.13.2"],\ + ["@grpc/proto-loader", "npm:0.7.13"],\ + ["docker-modem", "npm:5.0.6"],\ + ["protobufjs", "npm:6.11.4"],\ + ["tar-fs", "npm:2.1.2"],\ + ["uuid", "npm:10.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["doctrine", [\ @@ -13399,6 +13453,13 @@ const RAW_RUNTIME_STATE = ["long", "npm:5.2.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.3.1", {\ + "packageLocation": "./.yarn/cache/long-npm-5.3.1-c44e0933f0-7713e10b4f.zip/node_modules/long/",\ + "packageDependencies": [\ + ["long", "npm:5.3.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["loupe", [\ @@ -14328,6 +14389,14 @@ const RAW_RUNTIME_STATE = ["node-gyp", "npm:10.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.22.2", {\ + "packageLocation": "./.yarn/unplugged/nan-npm-2.22.2-bb092bb459/node_modules/nan/",\ + "packageDependencies": [\ + ["nan", "npm:2.22.2"],\ + ["node-gyp", "npm:10.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["natural-compare", [\ @@ -17655,6 +17724,17 @@ const RAW_RUNTIME_STATE = ["nan", "npm:2.17.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.16.0", {\ + "packageLocation": "./.yarn/unplugged/ssh2-npm-1.16.0-bee6b5f04c/node_modules/ssh2/",\ + "packageDependencies": [\ + ["ssh2", "npm:1.16.0"],\ + ["asn1", "npm:0.2.6"],\ + ["bcrypt-pbkdf", "npm:1.0.2"],\ + ["cpu-features", "https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.2.1.tgz"],\ + ["nan", "npm:2.22.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["ssri", [\ @@ -18085,6 +18165,17 @@ const RAW_RUNTIME_STATE = ["tar-stream", "npm:2.2.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.1.2", {\ + "packageLocation": "./.yarn/cache/tar-fs-npm-2.1.2-4231292dd1-623f7e8e58.zip/node_modules/tar-fs/",\ + "packageDependencies": [\ + ["tar-fs", "npm:2.1.2"],\ + ["chownr", "npm:1.1.4"],\ + ["mkdirp-classic", "npm:0.5.3"],\ + ["pump", "npm:3.0.0"],\ + ["tar-stream", "npm:2.2.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["tar-stream", [\ @@ -19389,6 +19480,13 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["uuid", [\ + ["npm:10.0.0", {\ + "packageLocation": "./.yarn/cache/uuid-npm-10.0.0-4872b46ff8-35aa606148.zip/node_modules/uuid/",\ + "packageDependencies": [\ + ["uuid", "npm:10.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.4.0", {\ "packageLocation": "./.yarn/cache/uuid-npm-3.4.0-4fd8ef88ad-4f2b86432b.zip/node_modules/uuid/",\ "packageDependencies": [\ diff --git a/.yarn/cache/@grpc-grpc-js-npm-1.13.2-2010829daa-80b7bebc1d.zip b/.yarn/cache/@grpc-grpc-js-npm-1.13.2-2010829daa-80b7bebc1d.zip new file mode 100644 index 00000000000..eb43b72c210 Binary files /dev/null and b/.yarn/cache/@grpc-grpc-js-npm-1.13.2-2010829daa-80b7bebc1d.zip differ diff --git a/.yarn/cache/@grpc-proto-loader-npm-0.7.13-be5b6af1c1-7e2d842c20.zip b/.yarn/cache/@grpc-proto-loader-npm-0.7.13-be5b6af1c1-7e2d842c20.zip new file mode 100644 index 00000000000..c399672395e Binary files /dev/null and b/.yarn/cache/@grpc-proto-loader-npm-0.7.13-be5b6af1c1-7e2d842c20.zip differ diff --git a/.yarn/cache/@js-sdsl-ordered-map-npm-4.4.2-158f6c6b74-ac64e3f061.zip b/.yarn/cache/@js-sdsl-ordered-map-npm-4.4.2-158f6c6b74-ac64e3f061.zip new file mode 100644 index 00000000000..262dc980c0d Binary files /dev/null and b/.yarn/cache/@js-sdsl-ordered-map-npm-4.4.2-158f6c6b74-ac64e3f061.zip differ diff --git a/.yarn/cache/docker-modem-npm-5.0.6-ba160bac18-4977797814.zip b/.yarn/cache/docker-modem-npm-5.0.6-ba160bac18-4977797814.zip new file mode 100644 index 00000000000..886ece00d38 Binary files /dev/null and b/.yarn/cache/docker-modem-npm-5.0.6-ba160bac18-4977797814.zip differ diff --git a/.yarn/cache/dockerode-npm-4.0.5-291e46ef8d-a300e5fdcf.zip b/.yarn/cache/dockerode-npm-4.0.5-291e46ef8d-a300e5fdcf.zip new file mode 100644 index 00000000000..2845d34413b Binary files /dev/null and b/.yarn/cache/dockerode-npm-4.0.5-291e46ef8d-a300e5fdcf.zip differ diff --git a/.yarn/cache/long-npm-5.3.1-c44e0933f0-7713e10b4f.zip b/.yarn/cache/long-npm-5.3.1-c44e0933f0-7713e10b4f.zip new file mode 100644 index 00000000000..06c141f1780 Binary files /dev/null and b/.yarn/cache/long-npm-5.3.1-c44e0933f0-7713e10b4f.zip differ diff --git a/.yarn/cache/nan-npm-2.22.2-bb092bb459-bee49de633.zip b/.yarn/cache/nan-npm-2.22.2-bb092bb459-bee49de633.zip new file mode 100644 index 00000000000..58cb9c020fe Binary files /dev/null and b/.yarn/cache/nan-npm-2.22.2-bb092bb459-bee49de633.zip differ diff --git a/.yarn/cache/ssh2-npm-1.16.0-bee6b5f04c-0951c22d9c.zip b/.yarn/cache/ssh2-npm-1.16.0-bee6b5f04c-0951c22d9c.zip new file mode 100644 index 00000000000..6909601b843 Binary files /dev/null and b/.yarn/cache/ssh2-npm-1.16.0-bee6b5f04c-0951c22d9c.zip differ diff --git a/.yarn/cache/tar-fs-npm-2.1.2-4231292dd1-623f7e8e58.zip b/.yarn/cache/tar-fs-npm-2.1.2-4231292dd1-623f7e8e58.zip new file mode 100644 index 00000000000..69c6f6743b8 Binary files /dev/null and b/.yarn/cache/tar-fs-npm-2.1.2-4231292dd1-623f7e8e58.zip differ diff --git a/.yarn/cache/uuid-npm-10.0.0-4872b46ff8-35aa606148.zip b/.yarn/cache/uuid-npm-10.0.0-4872b46ff8-35aa606148.zip new file mode 100644 index 00000000000..4d30c105af5 Binary files /dev/null and b/.yarn/cache/uuid-npm-10.0.0-4872b46ff8-35aa606148.zip differ diff --git a/packages/dashmate/package.json b/packages/dashmate/package.json index 5ac5c27a64c..3bc351f8424 100644 --- a/packages/dashmate/package.json +++ b/packages/dashmate/package.json @@ -71,7 +71,7 @@ "chalk": "^4.1.0", "cron": "^2.1.0", "diskusage": "^1.2.0", - "dockerode": "^3.3.5", + "dockerode": "^4.0.5", "dot": "^1.1.3", "dotenv": "^8.6.0", "enquirer": "github:dashpay/enquirer#patch-1", diff --git a/packages/rs-dpp/src/errors/consensus/state/token/invalid_token_claim_wrong_claimant.rs b/packages/rs-dpp/src/errors/consensus/state/token/invalid_token_claim_wrong_claimant.rs index b4b4bf7abfa..57e48ed141d 100644 --- a/packages/rs-dpp/src/errors/consensus/state/token/invalid_token_claim_wrong_claimant.rs +++ b/packages/rs-dpp/src/errors/consensus/state/token/invalid_token_claim_wrong_claimant.rs @@ -10,10 +10,10 @@ use thiserror::Error; Error, Debug, Clone, PartialEq, Eq, Encode, Decode, PlatformSerialize, PlatformDeserialize, )] #[error( - "Token claim error: expected claimant '{}' for token ID '{}', but received claim from '{}'", - expected_claimant_id, + "Token claim error: Identity '{}' is not a valid claimant for this distribution type of token '{}'. The valid claimaint is '{}'.", + claimant_id, token_id, - claimant_id + expected_claimant_id )] #[platform_serialize(unversioned)] pub struct InvalidTokenClaimWrongClaimant { diff --git a/packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/batched_transition/token_transition.rs b/packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/batched_transition/token_transition.rs index 0e96fba13b5..848e90c768c 100644 --- a/packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/batched_transition/token_transition.rs +++ b/packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/batched_transition/token_transition.rs @@ -422,9 +422,7 @@ impl TokenTransitionV0Methods for TokenTransition { TokenDistributionResolvedRecipient::ContractOwnerIdentity(owner_id) } TokenDistributionRecipient::Identity(identifier) => { - TokenDistributionResolvedRecipient::ContractOwnerIdentity( - identifier, - ) + TokenDistributionResolvedRecipient::Identity(identifier) } TokenDistributionRecipient::EvonodesByParticipation => { TokenDistributionResolvedRecipient::Evonode(owner_id) diff --git a/packages/rs-drive/src/state_transition_action/batch/batched_transition/token_transition/mod.rs b/packages/rs-drive/src/state_transition_action/batch/batched_transition/token_transition/mod.rs index 12e4da46ce8..bbb5862592c 100644 --- a/packages/rs-drive/src/state_transition_action/batch/batched_transition/token_transition/mod.rs +++ b/packages/rs-drive/src/state_transition_action/batch/batched_transition/token_transition/mod.rs @@ -139,7 +139,7 @@ impl TokenTransitionAction { ) } - /// Historical document id + /// Historical document pub fn build_historical_document( &self, token_id: Identifier, diff --git a/packages/rs-drive/src/verify/state_transition/verify_state_transition_was_executed_with_proof/v0/mod.rs b/packages/rs-drive/src/verify/state_transition/verify_state_transition_was_executed_with_proof/v0/mod.rs index 693bb8eae9d..8001191e891 100644 --- a/packages/rs-drive/src/verify/state_transition/verify_state_transition_was_executed_with_proof/v0/mod.rs +++ b/packages/rs-drive/src/verify/state_transition/verify_state_transition_was_executed_with_proof/v0/mod.rs @@ -356,9 +356,19 @@ impl Drive { platform_version, )?; + // Some fields are populated by the drive, + // so we need to ignore them + let ignore_fields = match token_transition { + TokenTransition::DestroyFrozenFunds(_) => { + Some(vec!["destroyedAmount"]) + } + TokenTransition::Claim(_) => Some(vec!["amount"]), + _ => None, + }; + if !document.is_equal_ignoring_time_based_fields( &expected_document, - Some(vec!["destroyedAmount"]), + ignore_fields, platform_version, )? { return Err(Error::Proof(ProofError::IncorrectProof(format!("proof of state transition execution did not show the correct historical document {}, {}", document, expected_document)))); diff --git a/packages/rs-sdk/src/platform/transition/fungible_tokens/claim.rs b/packages/rs-sdk/src/platform/transition/fungible_tokens/claim.rs new file mode 100644 index 00000000000..880acad6278 --- /dev/null +++ b/packages/rs-sdk/src/platform/transition/fungible_tokens/claim.rs @@ -0,0 +1,153 @@ +use crate::platform::transition::put_settings::PutSettings; +use crate::platform::Identifier; +use crate::{Error, Sdk}; +use dpp::data_contract::accessors::v0::DataContractV0Getters; +use dpp::data_contract::associated_token::token_distribution_key::TokenDistributionType; +use dpp::data_contract::{DataContract, TokenContractPosition}; +use dpp::identity::signer::Signer; +use dpp::identity::IdentityPublicKey; +use dpp::prelude::UserFeeIncrease; +use dpp::state_transition::batch_transition::methods::v1::DocumentsBatchTransitionMethodsV1; +use dpp::state_transition::batch_transition::BatchTransition; +use dpp::state_transition::StateTransition; +use dpp::tokens::calculate_token_id; +use dpp::version::PlatformVersion; + +/// A builder to configure and broadcast token claim transitions +pub struct TokenClaimTransitionBuilder<'a> { + data_contract: &'a DataContract, + token_position: TokenContractPosition, + owner_id: Identifier, + distribution_type: TokenDistributionType, + public_note: Option, + settings: Option, + user_fee_increase: Option, +} + +impl<'a> TokenClaimTransitionBuilder<'a> { + /// Start building a claim tokens transition for the provided DataContract. + /// + /// # Arguments + /// + /// * `data_contract` - A reference to the data contract + /// * `token_position` - The position of the token in the contract + /// * `owner_id` - The identifier of the state transition owner + /// * `distribution_type` - The token distribution type + /// + /// # Returns + /// + /// * `Self` - The new builder instance + pub fn new( + data_contract: &'a DataContract, + token_position: TokenContractPosition, + owner_id: Identifier, + distribution_type: TokenDistributionType, + ) -> Self { + // TODO: Validate token position + + Self { + data_contract, + token_position, + owner_id, + distribution_type, + public_note: None, + settings: None, + user_fee_increase: None, + } + } + + /// Adds a public note to the token claim transition + /// + /// # Arguments + /// + /// * `note` - The public note to add + /// + /// # Returns + /// + /// * `Self` - The updated builder + pub fn with_public_note(mut self, note: String) -> Self { + self.public_note = Some(note); + self + } + + /// Adds a user fee increase to the token claim transition + /// + /// # Arguments + /// + /// * `user_fee_increase` - The user fee increase to add + /// + /// # Returns + /// + /// * `Self` - The updated builder + pub fn with_user_fee_increase(mut self, user_fee_increase: UserFeeIncrease) -> Self { + self.user_fee_increase = Some(user_fee_increase); + self + } + + /// Adds settings to the token claim transition + /// + /// # Arguments + /// + /// * `settings` - The settings to add + /// + /// # Returns + /// + /// * `Self` - The updated builder + pub fn with_settings(mut self, settings: PutSettings) -> Self { + self.settings = Some(settings); + self + } + + /// Signs the token claim transition + /// + /// # Arguments + /// + /// * `sdk` - The SDK instance + /// * `identity_public_key` - The public key of the identity + /// * `signer` - The signer instance + /// * `platform_version` - The platform version + /// + /// # Returns + /// + /// * `Result` - The signed state transition or an error + pub async fn sign( + &self, + sdk: &Sdk, + identity_public_key: &IdentityPublicKey, + signer: &impl Signer, + platform_version: &PlatformVersion, + ) -> Result { + let token_id = Identifier::from(calculate_token_id( + self.data_contract.id().as_bytes(), + self.token_position, + )); + + let identity_contract_nonce = sdk + .get_identity_contract_nonce( + self.owner_id, + self.data_contract.id(), + true, + self.settings, + ) + .await?; + + let state_transition = BatchTransition::new_token_claim_transition( + token_id, + self.owner_id, + self.data_contract.id(), + self.token_position, + self.distribution_type, + self.public_note.clone(), + identity_public_key, + identity_contract_nonce, + self.user_fee_increase.unwrap_or_default(), + signer, + platform_version, + None, + None, + None, + )?; + + Ok(state_transition) + } +} diff --git a/packages/rs-sdk/src/platform/transition/fungible_tokens/mod.rs b/packages/rs-sdk/src/platform/transition/fungible_tokens/mod.rs index add8db703aa..babb7fdfcdd 100644 --- a/packages/rs-sdk/src/platform/transition/fungible_tokens/mod.rs +++ b/packages/rs-sdk/src/platform/transition/fungible_tokens/mod.rs @@ -1,6 +1,7 @@ //! Fungible token state transitions pub mod burn; +pub mod claim; pub mod destroy; pub mod emergency_action; pub mod freeze; diff --git a/packages/token-history-contract/schema/v1/token-history-contract-documents.json b/packages/token-history-contract/schema/v1/token-history-contract-documents.json index 9d1c9a3a263..23408dfd6f1 100644 --- a/packages/token-history-contract/schema/v1/token-history-contract-documents.json +++ b/packages/token-history-contract/schema/v1/token-history-contract-documents.json @@ -593,7 +593,10 @@ }, "distributionType": { "type": "integer", - "minimum": 0, + "enum": [ + 0, + 1 + ], "description": "The type of distribution (0: PreProgrammed, 1: Perpetual)", "position": 3 }, @@ -674,7 +677,7 @@ 0, 1 ], - "description": "The action we are performing. 0 - Pause, 1 - Resume", + "description": "The action we are performing (0: Pause, 1: Resume)", "position": 1 } }, @@ -757,4 +760,4 @@ ], "additionalProperties": false } -} +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index f0a3c619148..9c01abcf7d1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2095,6 +2095,16 @@ __metadata: languageName: node linkType: hard +"@grpc/grpc-js@npm:^1.11.1": + version: 1.13.2 + resolution: "@grpc/grpc-js@npm:1.13.2" + dependencies: + "@grpc/proto-loader": "npm:^0.7.13" + "@js-sdsl/ordered-map": "npm:^4.4.2" + checksum: 80b7bebc1d110e85d70ebf0b697630093d5cfd60d5043e9b8ea3fc44b1108d75d18faa996460309f6b129418cfd7e23a302453e7551538c5b12d72b424635ff7 + languageName: node + linkType: hard + "@grpc/proto-loader@npm:^0.5.2": version: 0.5.6 resolution: "@grpc/proto-loader@npm:0.5.6" @@ -2120,6 +2130,20 @@ __metadata: languageName: node linkType: hard +"@grpc/proto-loader@npm:^0.7.13": + version: 0.7.13 + resolution: "@grpc/proto-loader@npm:0.7.13" + dependencies: + lodash.camelcase: "npm:^4.3.0" + long: "npm:^5.0.0" + protobufjs: "npm:^7.2.5" + yargs: "npm:^17.7.2" + bin: + proto-loader-gen-types: build/bin/proto-loader-gen-types.js + checksum: 7e2d842c2061cbaf6450c71da0077263be3bab165454d5c8a3e1ae4d3c6d2915f02fd27da63ff01f05e127b1221acd40705273f5d29303901e60514e852992f4 + languageName: node + linkType: hard + "@humanwhocodes/config-array@npm:^0.11.13": version: 0.11.13 resolution: "@humanwhocodes/config-array@npm:0.11.13" @@ -2333,6 +2357,13 @@ __metadata: languageName: node linkType: hard +"@js-sdsl/ordered-map@npm:^4.4.2": + version: 4.4.2 + resolution: "@js-sdsl/ordered-map@npm:4.4.2" + checksum: ac64e3f0615ecc015461c9f527f124d2edaa9e68de153c1e270c627e01e83d046522d7e872692fd57a8c514578b539afceff75831c0d8b2a9a7a347fbed35af4 + languageName: node + linkType: hard + "@jsdevtools/ono@npm:^7.1.0": version: 7.1.3 resolution: "@jsdevtools/ono@npm:7.1.3" @@ -4516,7 +4547,7 @@ __metadata: languageName: node linkType: hard -"asn1@npm:^0.2.4": +"asn1@npm:^0.2.4, asn1@npm:^0.2.6": version: 0.2.6 resolution: "asn1@npm:0.2.6" dependencies: @@ -6474,7 +6505,7 @@ __metadata: cron: "npm:^2.1.0" dirty-chai: "npm:^2.0.1" diskusage: "npm:^1.2.0" - dockerode: "npm:^3.3.5" + dockerode: "npm:^4.0.5" dot: "npm:^1.1.3" dotenv: "npm:^8.6.0" enquirer: "github:dashpay/enquirer#patch-1" @@ -6881,7 +6912,19 @@ __metadata: languageName: node linkType: hard -"dockerode@npm:^3.2.1, dockerode@npm:^3.3.5": +"docker-modem@npm:^5.0.6": + version: 5.0.6 + resolution: "docker-modem@npm:5.0.6" + dependencies: + debug: "npm:^4.1.1" + readable-stream: "npm:^3.5.0" + split-ca: "npm:^1.0.1" + ssh2: "npm:^1.15.0" + checksum: 4977797814c29205f0762215f2e3e26600986bb65139018ff6840ff4c596e5d19f3002be1abcc5e73e3828870bb73bab28275a6458ad027ed56ab61fca014b6d + languageName: node + linkType: hard + +"dockerode@npm:^3.2.1": version: 3.3.5 resolution: "dockerode@npm:3.3.5" dependencies: @@ -6892,6 +6935,21 @@ __metadata: languageName: node linkType: hard +"dockerode@npm:^4.0.5": + version: 4.0.5 + resolution: "dockerode@npm:4.0.5" + dependencies: + "@balena/dockerignore": "npm:^1.0.2" + "@grpc/grpc-js": "npm:^1.11.1" + "@grpc/proto-loader": "npm:^0.7.13" + docker-modem: "npm:^5.0.6" + protobufjs: "npm:^7.3.2" + tar-fs: "npm:~2.1.2" + uuid: "npm:^10.0.0" + checksum: a300e5fdcf4331a046db500b2e9052d440ffdc6761755e7ed69afff164866cba949affacafb83dde9e3b9f63fa1abe1c599714fc9057247533e1f926975a2b5d + languageName: node + linkType: hard + "doctrine@npm:3.0.0, doctrine@npm:^3.0.0": version: 3.0.0 resolution: "doctrine@npm:3.0.0" @@ -10537,6 +10595,13 @@ __metadata: languageName: node linkType: hard +"long@npm:^5.0.0": + version: 5.3.1 + resolution: "long@npm:5.3.1" + checksum: 7713e10b4fe10db041d9939b7c4c3d73d3dd91785be72269ca8c5262feae7cb45f4eebed2b77bd346de7fe5f847e90f52c577c89ab3f2bd8a5ddc8b4098cbe35 + languageName: node + linkType: hard + "long@npm:^5.2.0": version: 5.2.0 resolution: "long@npm:5.2.0" @@ -11368,6 +11433,15 @@ __metadata: languageName: node linkType: hard +"nan@npm:^2.20.0": + version: 2.22.2 + resolution: "nan@npm:2.22.2" + dependencies: + node-gyp: "npm:latest" + checksum: bee49de633650213970596ffbdf036bfe2109ff283a40f7742c3aa6d1fc15b9836f62bfee82192b879f56ab5f9fa9a1e5c58a908a50e5c87d91fb2118ef70827 + languageName: node + linkType: hard + "natural-compare-lite@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare-lite@npm:1.4.0" @@ -14401,6 +14475,23 @@ __metadata: languageName: node linkType: hard +"ssh2@npm:^1.15.0": + version: 1.16.0 + resolution: "ssh2@npm:1.16.0" + dependencies: + asn1: "npm:^0.2.6" + bcrypt-pbkdf: "npm:^1.0.2" + cpu-features: "npm:~0.0.10" + nan: "npm:^2.20.0" + dependenciesMeta: + cpu-features: + optional: true + nan: + optional: true + checksum: 0951c22d9c5a0e3b89a8e5ae890ebcbce9f1f94dbed37d1490e4e48e26bc8b074fa81f202ee57b708e31b5f33033f4c870b92047f4f02b6bc26c32225b01d84c + languageName: node + linkType: hard + "ssri@npm:^10.0.0": version: 10.0.5 resolution: "ssri@npm:10.0.5" @@ -14778,7 +14869,19 @@ __metadata: languageName: node linkType: hard -"tar-stream@npm:^2.0.0": +"tar-fs@npm:~2.1.2": + version: 2.1.2 + resolution: "tar-fs@npm:2.1.2" + dependencies: + chownr: "npm:^1.1.1" + mkdirp-classic: "npm:^0.5.2" + pump: "npm:^3.0.0" + tar-stream: "npm:^2.1.4" + checksum: 623f7e8e58a43578ba7368002c3cc7e321f6d170053ac0691d95172dbc7daf5dcf4347eb061277627340870ce6cfda89f5a5d633cc274c41ae6d69f54a2374e7 + languageName: node + linkType: hard + +"tar-stream@npm:^2.0.0, tar-stream@npm:^2.1.4": version: 2.2.0 resolution: "tar-stream@npm:2.2.0" dependencies: @@ -15752,6 +15855,15 @@ __metadata: languageName: node linkType: hard +"uuid@npm:^10.0.0": + version: 10.0.0 + resolution: "uuid@npm:10.0.0" + bin: + uuid: dist/bin/uuid + checksum: 35aa60614811a201ff90f8ca5e9ecb7076a75c3821e17f0f5ff72d44e36c2d35fcbc2ceee9c4ac7317f4cc41895da30e74f3885e30313bee48fda6338f250538 + languageName: node + linkType: hard + "uuid@npm:^3.2.1, uuid@npm:^3.3.2": version: 3.4.0 resolution: "uuid@npm:3.4.0"