Source Code

;; bunnyOrdy

(impl-trait 'SP2PABAF9FTAJYNFZH93XENAJ8FVY99RRM50D2JG9.nft-trait.nft-trait)

(define-non-fungible-token bunnyOrdy uint)

(define-constant DEPLOYER tx-sender)
(define-constant ERR-NOT-AUTHORIZED u101)

(define-data-var BASE_URI (string-ascii 95) "https://ordinals.com/content/aa9eeecf49a5dd4a600540d15120d1436af0013dd5a2b7cee139a469d62f9deei0")
(define-data-var last-id uint u0)


(define-public (transfer (id uint) (sender principal) (recipient principal))
  (begin
    (asserts! (is-eq tx-sender sender) (err ERR-NOT-AUTHORIZED))
    (nft-transfer? bunnyOrdy id sender recipient)))

(define-read-only (get-owner (token-id uint))
  (ok (nft-get-owner? bunnyOrdy token-id)))


(define-read-only (get-token-uri (token-id uint))
  (ok (some (var-get BASE_URI)))
)

(define-read-only (get-last-token-id)
  (ok (var-get last-id)))


(define-private (mint (recipient principal)) 
 (let
    (
    (id (+ (var-get last-id) u1))
    )
    
    (try! (nft-mint? bunnyOrdy id recipient))
    (var-set last-id id)
    (ok id)
 )
)

(try! (mint DEPLOYER))
(try! (mint DEPLOYER))
(try! (mint DEPLOYER))
(try! (mint DEPLOYER))
(try! (mint DEPLOYER))

Functions (5)

FunctionAccessArgs
transferpublicid: uint, sender: principal, recipient: principal
get-ownerread-onlytoken-id: uint
get-token-uriread-onlytoken-id: uint
get-last-token-idread-only
mintprivaterecipient: principal