packages feed

jsonlogic-hs-0.1.0.0: test/community/scopes.json

[
    "A proposal for handling scopes",
    {
        "description": "Map can add each number to index",
        "rule": {
            "map": [
                { "val": "numbers" },
                { "+": [{ "val": [[1], "index"] }, { "val": [] }]}
            ]
        },
        "data": { "numbers": [1,2,3] },
        "result": [1,3,5]
    },
    {
        "description": "Map can add each number to value from context",
        "rule": {
            "map": [
                { "val": "numbers" },
                { "+": [{ "val": [[2], "value"] }, { "val": [] }]}
            ]
        },
        "data": { "numbers": [1,2,3], "value": 10 },
        "result": [11,12,13]
    },
    {
        "description": "Filter can use parent context to filter",
        "rule": {
            "filter": [
                { "val": "people" },
                { "===": [{ "val": "department" }, { "val": [[2], "department"] }] }
            ]
        },
        "data": {
            "department": "Engineering",
            "people": [
                { "name": "Jay Ortiz", "department": "Engineering" },
                { "name": "Louisa Hall", "department": "Sales" },
                { "name": "Kyle Carlson", "department": "Sales" },
                { "name": "Grace Ortiz", "department": "Engineering" },
                { "name": "Isabelle Harrington", "department": "Marketing" },
                { "name": "Harold Moore", "department": "Sales" },
                { "name": "Clarence Schultz", "department": "Sales" },
                { "name": "Jesse Keller", "department": "Engineering" },
                { "name": "Phillip Holland", "department": "Marketing" },
                { "name": "Mason Sullivan", "department": "Engineering" }
            ]
        },
        "result": [
            { "name": "Jay Ortiz", "department": "Engineering" },
            { "name": "Grace Ortiz", "department": "Engineering" },
            { "name": "Jesse Keller", "department": "Engineering" },
            { "name": "Mason Sullivan", "department": "Engineering" }
        ]
    },
    "The specification below depends upon escaping from another proposal",
    {
        "description": "Access an escaped key from above",
        "rule": { 
            "map": [
                { "val": "arr" }, 
                { "+": [{ "val": [[2], "", "", "/"] }, { "val": [[2], "../"] }]}
            ] 
        },
        "data": { "arr": [1,2,3], "../": 10, "": { "": { "/": 7 }} },
        "result": [17,17,17]
    }
]