omnipin 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +7 -7
  2. package/dist/cli.js +16 -14
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -30,13 +30,13 @@ Read the [docs](https://omnipin.eth.link).
30
30
 
31
31
  ### "Most flexibility, lowest trust assumptions"
32
32
 
33
- Walletbeat uses Omnipin to deploy to IPFS. It was selected after [contrasting it against many other web3 deployment options](https://github.com/walletbeat/walletbeat/blob/beta/governance/decisions/2025-walletbeat-hosting.md), and Omnipin stood out as the one with the most flexibility, user control, lowest trust assumptions, lowest-dependency, and not locked into any specific provider.
34
-
35
- Omnipin makes it easy to automate deployment to multiple IPFS providers for redundancy, gate deployment success by actual replication and availability on popular IPFS gateways for reliability, and to update the onchain ENS records to point to the deployed IPFS CID to boot (without granting CI any authority beyond ENS record updates). Runs great with Helios too.
36
-
37
- In other words, Omnipin is the missing deployment tool that makes it feasible to adopt the cypherpunk standards and technologies that web3 frontends should strive to adopt. No more excuses now.
38
-
39
- [polymutex.eth](https://farcaster.xyz/polymutex.eth), core dev of WalletBeat
33
+ > Walletbeat uses Omnipin to deploy to IPFS. It was selected after [contrasting it against many other web3 deployment options](https://github.com/walletbeat/walletbeat/blob/beta/governance/decisions/2025-walletbeat-hosting.md), and Omnipin stood out as the one with the most flexibility, user control, lowest trust assumptions, lowest-dependency, and not locked into any specific provider.
34
+ >
35
+ > Omnipin makes it easy to automate deployment to multiple IPFS providers for redundancy, gate deployment success by actual replication and availability on popular IPFS gateways for reliability, and to update the onchain ENS records to point to the deployed IPFS CID to boot (without granting CI any authority beyond ENS record updates). Runs great with Helios too.
36
+ >
37
+ > In other words, Omnipin is the missing deployment tool that makes it feasible to adopt the cypherpunk standards and technologies that web3 frontends should strive to adopt. No more excuses now.
38
+ >
39
+ > — [polymutex.eth](https://farcaster.xyz/polymutex.eth), core dev of WalletBeat
40
40
 
41
41
  [github-actions]: https://github.com/omnipin/omnipin/actions
42
42
  [gh-actions-img]: https://img.shields.io/github/actions/workflow/status/omnipin/omnipin/ci.yml?branch=main&style=for-the-badge&logo=github&label=&color=%232B4AD4
package/dist/cli.js CHANGED
@@ -27728,7 +27728,7 @@ var waitForTransaction = async (provider, hash2) => {
27728
27728
  };
27729
27729
  var SET_CONTENT_HASH_SIG = getSelector2("setContenthash(bytes32,bytes)");
27730
27730
  var ENS_DEPLOYER_ROLE = keccak256(fromString2("ENS_DEPLOYER"));
27731
- var execTransactonWithRoleAbi = {
27731
+ var execTransactionWithRoleAbi = {
27732
27732
  inputs: [
27733
27733
  { internalType: "address", name: "to", type: "address" },
27734
27734
  { internalType: "uint256", name: "value", type: "uint256" },
@@ -27742,7 +27742,7 @@ var execTransactonWithRoleAbi = {
27742
27742
  stateMutability: "nonpayable",
27743
27743
  type: "function"
27744
27744
  };
27745
- var execTransactonWithRole = async ({
27745
+ var execTransactionWithRole = async ({
27746
27746
  provider,
27747
27747
  resolverAddress,
27748
27748
  data: txData,
@@ -27752,7 +27752,7 @@ var execTransactonWithRole = async ({
27752
27752
  chainId,
27753
27753
  explorerUrl
27754
27754
  }) => {
27755
- const data = encodeData(execTransactonWithRoleAbi, [
27755
+ const data = encodeData(execTransactionWithRoleAbi, [
27756
27756
  resolverAddress,
27757
27757
  0n,
27758
27758
  txData,
@@ -27762,7 +27762,7 @@ var execTransactonWithRole = async ({
27762
27762
  ]);
27763
27763
  const success = await simulateTransaction({
27764
27764
  provider,
27765
- abi: execTransactonWithRoleAbi,
27765
+ abi: execTransactionWithRoleAbi,
27766
27766
  to: rolesModAddress,
27767
27767
  data,
27768
27768
  from: from22
@@ -27793,13 +27793,14 @@ var ensAction = async ({
27793
27793
  const {
27794
27794
  chain: chainName = "mainnet",
27795
27795
  safe: safeAddress,
27796
- rpcUrl,
27796
+ "rpc-url": rpcUrl,
27797
27797
  "resolver-address": resolverAddress,
27798
- "roles-mod-address": rolesModAddress
27798
+ "roles-mod-address": rolesModAddress,
27799
+ "dry-run": dryRun
27799
27800
  } = options;
27800
27801
  assertCID(cid);
27801
27802
  if (!domain)
27802
- throw new MissingCLIArgsError([domain]);
27803
+ throw new MissingCLIArgsError(["domain"]);
27803
27804
  const chain = chains[chainName];
27804
27805
  const transport = fromHttp(rpcUrl ?? chainToRpcUrl(chainName));
27805
27806
  const provider = from18(transport);
@@ -27859,9 +27860,12 @@ var ensAction = async ({
27859
27860
  data,
27860
27861
  value: 0n
27861
27862
  };
27862
- if (rolesModAddress) {
27863
+ if (rolesModAddress && !dryRun) {
27864
+ if (!safeAddress) {
27865
+ throw new MissingCLIArgsError(["safe"]);
27866
+ }
27863
27867
  logger.info(`Using Zodiac Roles module`);
27864
- await execTransactonWithRole({
27868
+ await execTransactionWithRole({
27865
27869
  provider,
27866
27870
  data,
27867
27871
  resolverAddress: to2,
@@ -27885,7 +27889,7 @@ var ensAction = async ({
27885
27889
  chainId: chain.id,
27886
27890
  privateKey: pk
27887
27891
  });
27888
- if (!options["dry-run"]) {
27892
+ if (!dryRun) {
27889
27893
  logger.info("Proposing a Safe transaction");
27890
27894
  try {
27891
27895
  await proposeTransaction({
@@ -28080,14 +28084,12 @@ var deployAction = async ({
28080
28084
  strict,
28081
28085
  ens,
28082
28086
  chain = "mainnet",
28083
- safe,
28084
28087
  name: customName,
28085
28088
  dist,
28086
28089
  verbose = false,
28087
28090
  providers: providersList,
28088
- resolverAddress,
28089
28091
  dnslink,
28090
- rpcUrl
28092
+ ...opts
28091
28093
  } = options;
28092
28094
  const apiTokens = parseTokensFromEnv();
28093
28095
  const providerNames = providersList ? providersList.split(",") : tokensToProviderNames(apiTokens.keys());
@@ -28218,7 +28220,7 @@ ${isTTY ? styleText4("bold", "Providers") : "Providers"}: ${isTTY ? styleText4("
28218
28220
  await ensAction({
28219
28221
  cid,
28220
28222
  domain: ens,
28221
- options: { chain, safe, resolverAddress, rpcUrl, verbose }
28223
+ options: { ...opts, chain, verbose }
28222
28224
  });
28223
28225
  }
28224
28226
  if (dnslink) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnipin",
3
- "version": "1.4.2",
3
+ "version": "1.4.3",
4
4
  "author": "v1rtl <hi@v1rtl.site>",
5
5
  "repository": {
6
6
  "type": "git",