Settings

Blockchain
Network
Unit
Language
Theme
Sound New Block

Transaction

ad53ee7236f4ff10f65ae28dcb03695e0d091a770fefda746fc2998ea5a594c4
Timestamp (utc)
2021-03-11 04:57:11
Fee Paid
0.00002199 BSV
(
0.02997349 BSV
-
0.02995150 BSV
)
Fee Rate
500.3 sat/KB
Version
1
Confirmations
312,458
Size Stats
4,395 B

4 Outputs

Total Output:
0.02995150 BSV
  • jrunM{"in":0,"ref":["native://Jig","f97d4ac2a3d6f5ed09fad4a4f341619dc5a3773d9844ff95c99c5d4f8388de2f_o1","5435ae2760dc35f4329501c61c42e24f6a744861c22f8e0f04735637c20ce987_o1?berry=5de5ca0a3a67ffa2ce87a6cf242df668a6137be63426ea655793cd934a39f659&hash=13d37fd8738e4e89c2c3c081e51d0b079ef0c21273b5b09a95354ba7d204076c&version=5"],"out":["29cf5ab123b17e115a911cd63b7703e26452967cfcdb2e0d42950195bcc522b2","6bedae30abb03e2bb7f7a02cba9ec2bed775d48b8c8923489786764c0376ddf4"],"del":[],"cre":["msnxebmCeqyh7qxUvZhAuSZe8mowNZne23","msnxebmCeqyh7qxUvZhAuSZe8mowNZne23"],"exec":[{"op":"DEPLOY","data":["class MediaItem extends Jig {\n\tinit(props) {\n\t\texpect(caller instanceof MediaDispenser).toBe(true);\n\t\tMediaItem.validateProps(props);\n\t\tthis.data = props;\n\t}\n\n\tsend(to) {\n\t\tthis.owner = to;\n\t}\n\n\tstatic validateProps(props) {\n\t\tconst {\n\t\t\tItem,\n\t\t\tItemContent,\n\t\t\tMedia,\n\t\t} = validation;\n\n\t\tfunction entriesLoop(obj, fn) {\n\t\t\tObject\n\t\t\t\t.entries(obj)\n\t\t\t\t.forEach(fn);\n\t\t}\n\n\t\tentriesLoop(props, ([key, val]) => {\n\t\t\texpect(val)[Item[key]]?.();\n\t\t});\n\n\t\tconst media = [\n\t\t\tprops.thumb,\n\t\t\t...props.content.map(c => c.media),\n\t\t];\n\n\t\tmedia.forEach(m => {\n\t\t\tentriesLoop(m, ([key, val]) => {\n\t\t\t\tif(key === 'mimeType') {\n\t\t\t\t\texpect(MIME_TYPES.includes(val)).toBe(true);\n\t\t\t\t} else {\n\t\t\t\t\texpect(val)[Media[key]]();\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\tprops\n\t\t\t.content\n\t\t\t.forEach(c => {\n\t\t\t\tentriesLoop(c, ([key, val]) => {\n\t\t\t\t\tif(key !== 'media') {\n\t\t\t\t\t\texpect(val)[ItemContent[key]][val];\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t}\n}",{"deps":{"Jig":{"$jig":0},"MIME_TYPES":["application/epub+zip","application/pdf","audio/aac","audio/mpeg","audio/ogg","audio/wav","audio/webm","image/bmp","image/gif","image/jpeg","image/png","image/webp","video/mpeg","video/ogg","video/webm"],"MediaDispenser":{"$jig":4},"expect":{"$jig":1},"validation":{"Item":{"batchIssueNumber":"toBeNumber","batchNumber":"toBeNumber","content":"toBeArray","creationDate":"toBeString","description":"toBeString","issueNumber":"toBeNumber","key":"toBeString","meta":"toBeObject","thumb":"toBeObject","title":"toBeString","validationMsg":"toBeString"},"ItemContent":{"description":"toBeString","title":"toBeString"},"ItemValidation":{"key":"toBeString","msg":"toBeString"},"Media":{"encrypted":"toBeBoolean","tx":"toBeString"}}},"metadata":{"author":"DavidDoesStuff","description":"Media collection with public and private content.","emoji":"📖","image":{"$jig":2}}},"class MediaDispenser extends Jig {\n\tinit(props) {\n\t\tconst {\n\t\t\tmaxBatches = 0,\n\t\t\tmaxIssues = 0,\n\t\t\tmediaData,\n\t\t} = props;\n\n\t\texpect(maxBatches).toBeNumber();\n\t\texpect(maxIssues).toBeNumber();\n\n\t\tconst {\n\t\t\tcreationDate,\n\t\t\tcreatedBy,\n\t\t\tdescription,\n\t\t\ttitle,\n\t\t\tthumb,\n\t\t} = mediaData;\n\n\t\tMediaItem.validateProps({\n\t\t\t...mediaData,\n\t\t\tbatchNumber: 0,\n\t\t\tissueNumber: 0,\n\t\t});\n\n\t\tObject.assign(this, {\n\t\t\tcreationDate,\n\t\t\tcreatedBy,\n\t\t\tdescription,\n\t\t\ttitle,\n\t\t\tthumb,\n\t\t\tmediaData,\n\t\t\tbatches: 0,\n\t\t\tissues: 0,\n\t\t});\n\t}\n\n\tsend(to) {\n\t\tthis.owner = to;\n\t}\n\n\tcreate(count) {\n\t\tif(this.maxBatches) {\n\t\t\texpect(this.batches).toBeLessThan(this.maxBatches);\n\t\t}\n\n\t\tif(this.maxIssues) {\n\t\t\texpect(this.issues + count).toBeLessThan(this.maxIssues);\n\t\t}\n\n\t\tconst newIssues = [];\n\n\t\tfor(let x = 0; x < count; x++) {\n\t\t\tnewIssues.push(new MediaItem({\n\t\t\t\t...this.mediaData,\n\t\t\t\tinstantiatedBy: this.location,\n\t\t\t\tbatchNumber: this.batches + 1,\n\t\t\t\tbatchIssueNumber: x + 1,\n\t\t\t\tissueNumber: this.issues + 1,\n\t\t\t}));\n\t\t\tthis.issues++;\n\t\t}\n\n\t\tthis.batches++;\n\n\t\treturn newIssues;\n\t}\n}",{"deps":{"Jig":{"$dup":["1","deps","Jig"]},"MediaItem":{"$jig":3},"expect":{"$dup":["1","deps","expect"]}},"metadata":{"author":"DavidDoesStuff","description":"Creates and tracks media items.","emoji":"📖","image":{"$dup":["1","metadata","image"]}}}]}]}
    https://whatsonchain.com/tx/ad53ee7236f4ff10f65ae28dcb03695e0d091a770fefda746fc2998ea5a594c4