Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | 74x 1x 10x 10x 21x 21x 21x 21x 21x 2x 15x 29x 29x 29x 29x 29x 29x | import {Action, Transaction} from '@wharfkit/session' export function hasOriginalActions(original: Transaction, modified: Transaction): boolean { return original.actions.every((originalAction: Action) => { return modified.actions.some((modifiedAction: Action) => { // Ensure the original contract account matches const matchesOriginalContractAccount = originalAction.account.equals( modifiedAction.account ) // Ensure the original contract action matches const matchesOriginalContractAction = originalAction.name.equals(modifiedAction.name) // Ensure the original authorization is in tact const matchesOriginalAuthorization = originalAction.authorization.length === modifiedAction.authorization.length && originalAction.authorization[0].actor.equals(modifiedAction.authorization[0].actor) // Ensure the original action data matches const matchesOriginalActionData = originalAction.data.equals(modifiedAction.data) // Return any action that does not match the original return ( matchesOriginalContractAccount && matchesOriginalContractAction && matchesOriginalAuthorization && matchesOriginalActionData ) }) }) } export function getNewActions(original: Transaction, modified: Transaction): Action[] { return modified.actions.filter((modifiedAction: Action) => { return original.actions.every((originalAction: Action) => { // Ensure the original contract account matches const matchesOriginalContractAccount = originalAction.account.equals( modifiedAction.account ) // Ensure the original contract action matches const matchesOriginalContractAction = originalAction.name.equals(modifiedAction.name) // Ensure the original authorization is in tact const matchesOriginalAuthorization = originalAction.authorization.length === modifiedAction.authorization.length && originalAction.authorization[0].actor.equals(modifiedAction.authorization[0].actor) // Ensure the original action data matches const matchesOriginalActionData = originalAction.data.equals(modifiedAction.data) // Return any action that does not match the original return !( matchesOriginalContractAccount && matchesOriginalContractAction && matchesOriginalAuthorization && matchesOriginalActionData ) }) }) } |