Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions docs/_data/intuition-sdk/atoms-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,8 +133,9 @@ Before creating an atom, check if it already exists:

```typescript
import { calculateAtomId, getAtomDetails } from '@0xintuition/sdk'
import { toHex } from 'viem'

const atomId = calculateAtomId('developer')
const atomId = calculateAtomId(toHex('developer'))
const exists = await getAtomDetails(atomId)

if (exists) {
Expand Down Expand Up @@ -536,24 +537,25 @@ Calculate the atom ID from atom data without querying the blockchain.
#### Function Signature

```typescript
function calculateAtomId(atomData: string): Hex
function calculateAtomId(atomData: Hex): Hex
```

#### Basic Example

```typescript
import { calculateAtomId } from '@0xintuition/sdk'
import { toHex } from 'viem'

// Calculate ID for a string atom
const atomId = calculateAtomId('developer')
const atomId = calculateAtomId(toHex('developer'))
console.log('Atom ID:', atomId)

// Calculate ID for an Ethereum address
const addressAtomId = calculateAtomId('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045')
// Calculate ID for an Ethereum address (already hex, but toHex ensures proper encoding)
const addressAtomId = calculateAtomId(toHex('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'))
console.log('Address Atom ID:', addressAtomId)

// Calculate ID for IPFS URI
const ipfsAtomId = calculateAtomId('ipfs://bafkreib...')
const ipfsAtomId = calculateAtomId(toHex('ipfs://bafkreib...'))
console.log('IPFS Atom ID:', ipfsAtomId)
```

Expand All @@ -563,10 +565,11 @@ console.log('IPFS Atom ID:', ipfsAtomId)

```typescript
import { calculateAtomId, getAtomDetails, createAtomFromString } from '@0xintuition/sdk'
import { toHex } from 'viem'

async function createAtomIfNotExists(data: string) {
// Calculate ID
const atomId = calculateAtomId(data)
// Calculate ID (convert string to hex first)
const atomId = calculateAtomId(toHex(data))

try {
// Check if exists
Expand Down
4 changes: 2 additions & 2 deletions docs/_data/intuition-sdk/examples/find-existing-entities.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import {
createAtomFromString,
createTripleStatement,
} from '@0xintuition/sdk'
import { createPublicClient, createWalletClient, http, parseEther } from 'viem'
import { createPublicClient, createWalletClient, http, parseEther, toHex } from 'viem'
import { privateKeyToAccount } from 'viem/accounts'
import type { Hex } from 'viem'

Expand Down Expand Up @@ -127,7 +127,7 @@ async function main() {
// 4. Calculate IDs offline
console.log('\n=== Offline ID Calculation ===\n')

const calculatedAtomId = calculateAtomId('NewAtom')
const calculatedAtomId = calculateAtomId(toHex('NewAtom'))
console.log('Predicted atom ID for "NewAtom":', calculatedAtomId)

const calculatedTripleId = calculateTripleId(tsId, compilesTo.state.termId, jsId)
Expand Down
Loading