|
1 | 1 |
|
2 | 2 | ## serialize array
|
3 | 3 | This example shows how to serialize and deserialize an array.
|
4 |
| -[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiAKIHsKICBsZXQgbXlBcnJheSA9IGFzbC5zdGF0ZXMuYXJyYXkoMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTApIGFzIG51bWJlcltdOwogIGxldCBteVNlcmlhbGl6ZWRBcnJheSA9IGFzbC5zdGF0ZXMuanNvblRvU3RyaW5nKG15QXJyYXkpOwogIG15QXJyYXkgPSBhc2wuc3RhdGVzLnN0cmluZ1RvSnNvbihteVNlcmlhbGl6ZWRBcnJheSkgYXMgbnVtYmVyW107CiAgcmV0dXJuIG15QXJyYXk7Cn0pOw==) |
| 4 | +[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiB7CiAgbGV0IG15QXJyYXkgPSBhc2wuc3RhdGVzLmFycmF5KDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwKSBhcyBudW1iZXJbXTsKICBsZXQgbXlTZXJpYWxpemVkQXJyYXkgPSBhc2wuc3RhdGVzLmpzb25Ub1N0cmluZyhteUFycmF5KTsKICBteUFycmF5ID0gYXNsLnN0YXRlcy5zdHJpbmdUb0pzb24obXlTZXJpYWxpemVkQXJyYXkpIGFzIG51bWJlcltdOwogIHJldHVybiBteUFycmF5Owp9KTsK) |
5 | 5 |
|
6 | 6 | ``` typescript
|
7 |
| -export const main = asl.deploy.asStateMachine(async () => |
8 |
| - { |
| 7 | +export const main = asl.deploy.asStateMachine(async () => { |
9 | 8 | let myArray = asl.states.array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) as number[];
|
10 | 9 | let mySerializedArray = asl.states.jsonToString(myArray);
|
11 | 10 | myArray = asl.states.stringToJson(mySerializedArray) as number[];
|
12 | 11 | return myArray;
|
13 | 12 | });
|
| 13 | + |
14 | 14 | ```
|
15 | 15 |
|
16 | 16 |
|
17 | 17 | ## map array
|
18 |
| -[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiAKIHsKICBsZXQgbXlBcnJheSA9IFsxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMF0KICByZXR1cm4gbXlBcnJheS5tYXAoeCA9PiB7CiAgICBpZiAoeCA9PT0gMSB8fCB4ID09PSAzIHx8IHggPT09IDUgfHwgeCA9PT0gNyB8fCB4ID09IDkpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBhZ2U6IHgsCiAgICAgICAgc3BlY2llczogImRvZyIsCiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYWdlOiB4LAogICAgICAgIHNwZWNpZXM6ICJjYXQiLAogICAgICB9CiAgICB9CiAgfSk7Cn0pOw==) |
| 18 | +[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiB7CiAgbGV0IG15QXJyYXkgPSBbMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdOwogIHJldHVybiBteUFycmF5Lm1hcCgoeCkgPT4gewogICAgaWYgKHggPT09IDEgfHwgeCA9PT0gMyB8fCB4ID09PSA1IHx8IHggPT09IDcgfHwgeCA9PSA5KSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYWdlOiB4LAogICAgICAgIHNwZWNpZXM6ICJkb2ciLAogICAgICB9OwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBhZ2U6IHgsCiAgICAgICAgc3BlY2llczogImNhdCIsCiAgICAgIH07CiAgICB9CiAgfSk7Cn0pOwo=) |
19 | 19 |
|
20 | 20 | ``` typescript
|
21 |
| -export const main = asl.deploy.asStateMachine(async () => |
22 |
| - { |
23 |
| - let myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] |
24 |
| - return myArray.map(x => { |
| 21 | +export const main = asl.deploy.asStateMachine(async () => { |
| 22 | + let myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; |
| 23 | + return myArray.map((x) => { |
25 | 24 | if (x === 1 || x === 3 || x === 5 || x === 7 || x == 9) {
|
26 | 25 | return {
|
27 | 26 | age: x,
|
28 | 27 | species: "dog",
|
29 |
| - } |
| 28 | + }; |
30 | 29 | } else {
|
31 | 30 | return {
|
32 | 31 | age: x,
|
33 | 32 | species: "cat",
|
34 |
| - } |
| 33 | + }; |
35 | 34 | }
|
36 | 35 | });
|
37 | 36 | });
|
| 37 | + |
38 | 38 | ```
|
39 | 39 |
|
40 | 40 |
|
41 | 41 | ## map array simple
|
42 |
| -[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiAKIHsKICBjb25zdCBtYXBwZWRBcnJheSA9IFt7IGFnZTogMSwgc3BlY2llczogImRvZyIgfSwgeyBhZ2U6IDIsIHNwZWNpZXM6ICJjYXQiIH0sIHsgYWdlOiAzLCBzcGVjaWVzOiAiZG9nIiB9LCB7IGFnZTogNCwgc3BlY2llczogImNhdCIgfSwgeyBhZ2U6IDExLCBzcGVjaWVzOiAiZG9nIiB9LCB7IGFnZTogMTIsIHNwZWNpZXM6ICJjYXIiIH0sIHsgYWdlOiAxMywgc3BlY2llczogImRvZyIgfSwgeyBhZ2U6IDE0LCBzcGVjaWVzOiAiY2F0IiB9XQogIGNvbnN0IGFnZXMgPSBtYXBwZWRBcnJheS5tYXAoeCA9PiB4LmFnZSk7CiAgY29uc3Qgc3BlY2llcyA9IG1hcHBlZEFycmF5Lm1hcCh4ID0+IHguc3BlY2llcyk7CiAgcmV0dXJuIHsKICAgIGFnZXMsIHNwZWNpZXMKICB9Cn0pOw==) |
| 42 | +[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiB7CiAgY29uc3QgbWFwcGVkQXJyYXkgPSBbCiAgICB7IGFnZTogMSwgc3BlY2llczogImRvZyIgfSwKICAgIHsgYWdlOiAyLCBzcGVjaWVzOiAiY2F0IiB9LAogICAgeyBhZ2U6IDMsIHNwZWNpZXM6ICJkb2ciIH0sCiAgICB7IGFnZTogNCwgc3BlY2llczogImNhdCIgfSwKICAgIHsgYWdlOiAxMSwgc3BlY2llczogImRvZyIgfSwKICAgIHsgYWdlOiAxMiwgc3BlY2llczogImNhciIgfSwKICAgIHsgYWdlOiAxMywgc3BlY2llczogImRvZyIgfSwKICAgIHsgYWdlOiAxNCwgc3BlY2llczogImNhdCIgfSwKICBdOwogIGNvbnN0IGFnZXMgPSBtYXBwZWRBcnJheS5tYXAoKHgpID0+IHguYWdlKTsKICBjb25zdCBzcGVjaWVzID0gbWFwcGVkQXJyYXkubWFwKCh4KSA9PiB4LnNwZWNpZXMpOwogIHJldHVybiB7CiAgICBhZ2VzLAogICAgc3BlY2llcywKICB9Owp9KTsK) |
43 | 43 |
|
44 | 44 | ``` typescript
|
45 |
| -export const main = asl.deploy.asStateMachine(async () => |
46 |
| - { |
47 |
| - const mappedArray = [{ age: 1, species: "dog" }, { age: 2, species: "cat" }, { age: 3, species: "dog" }, { age: 4, species: "cat" }, { age: 11, species: "dog" }, { age: 12, species: "car" }, { age: 13, species: "dog" }, { age: 14, species: "cat" }] |
48 |
| - const ages = mappedArray.map(x => x.age); |
49 |
| - const species = mappedArray.map(x => x.species); |
| 45 | +export const main = asl.deploy.asStateMachine(async () => { |
| 46 | + const mappedArray = [ |
| 47 | + { age: 1, species: "dog" }, |
| 48 | + { age: 2, species: "cat" }, |
| 49 | + { age: 3, species: "dog" }, |
| 50 | + { age: 4, species: "cat" }, |
| 51 | + { age: 11, species: "dog" }, |
| 52 | + { age: 12, species: "car" }, |
| 53 | + { age: 13, species: "dog" }, |
| 54 | + { age: 14, species: "cat" }, |
| 55 | + ]; |
| 56 | + const ages = mappedArray.map((x) => x.age); |
| 57 | + const species = mappedArray.map((x) => x.species); |
50 | 58 | return {
|
51 |
| - ages, species |
52 |
| - } |
| 59 | + ages, |
| 60 | + species, |
| 61 | + }; |
53 | 62 | });
|
| 63 | + |
54 | 64 | ```
|
55 | 65 |
|
56 | 66 |
|
57 | 67 | ## map array nested property access
|
58 |
| -[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiAKIHsKICBjb25zdCBzb3VyY2UgPSBbeyBvYmo6IHsgbnVtOiAyMywgc3RyOiAic3RyIiB9IH1dCiAgY29uc3QgbnVtID0gc291cmNlLm1hcCh4ID0+IHgub2JqLm51bSk7CiAgY29uc3Qgc3RyID0gc291cmNlLm1hcCh4ID0+IHgub2JqLnN0cik7CiAgcmV0dXJuIHsKICAgIG51bSwgc3RyCiAgfQp9KTs=) |
| 68 | +[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiB7CiAgY29uc3Qgc291cmNlID0gW3sgb2JqOiB7IG51bTogMjMsIHN0cjogInN0ciIgfSB9XTsKICBjb25zdCBudW0gPSBzb3VyY2UubWFwKCh4KSA9PiB4Lm9iai5udW0pOwogIGNvbnN0IHN0ciA9IHNvdXJjZS5tYXAoKHgpID0+IHgub2JqLnN0cik7CiAgcmV0dXJuIHsKICAgIG51bSwKICAgIHN0ciwKICB9Owp9KTsK) |
59 | 69 |
|
60 | 70 | ``` typescript
|
61 |
| -export const main = asl.deploy.asStateMachine(async () => |
62 |
| - { |
63 |
| - const source = [{ obj: { num: 23, str: "str" } }] |
64 |
| - const num = source.map(x => x.obj.num); |
65 |
| - const str = source.map(x => x.obj.str); |
| 71 | +export const main = asl.deploy.asStateMachine(async () => { |
| 72 | + const source = [{ obj: { num: 23, str: "str" } }]; |
| 73 | + const num = source.map((x) => x.obj.num); |
| 74 | + const str = source.map((x) => x.obj.str); |
66 | 75 | return {
|
67 |
| - num, str |
68 |
| - } |
| 76 | + num, |
| 77 | + str, |
| 78 | + }; |
69 | 79 | });
|
| 80 | + |
70 | 81 | ```
|
71 | 82 |
|
72 | 83 |
|
73 | 84 | ## filter array
|
74 |
| -[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiAKIHsKICBjb25zdCBtYXBwZWRBcnJheSA9IFt7IGFnZTogMSwgc3BlY2llczogImRvZyIgfSwgeyBhZ2U6IDIsIHNwZWNpZXM6ICJjYXQiIH0sIHsgYWdlOiAzLCBzcGVjaWVzOiAiZG9nIiB9LCB7IGFnZTogNCwgc3BlY2llczogImNhdCIgfSwgeyBhZ2U6IDExLCBzcGVjaWVzOiAiZG9nIiB9LCB7IGFnZTogMTIsIHNwZWNpZXM6ICJjYXIiIH0sIHsgYWdlOiAxMywgc3BlY2llczogImRvZyIgfSwgeyBhZ2U6IDE0LCBzcGVjaWVzOiAiY2F0IiB9XQogIGNvbnN0IGZpbHRlckFycmF5ID0gewogICAgY2F0czogewogICAgICB5b3VuZzogbWFwcGVkQXJyYXkuZmlsdGVyKHggPT4geC5zcGVjaWVzID09PSAiY2F0IiAmJiB4LmFnZSA8IDUpLAogICAgICBvbGQ6IG1hcHBlZEFycmF5LmZpbHRlcih4ID0+IHguc3BlY2llcyA9PT0gImNhdCIgJiYgeC5hZ2UgPj0gNSksCiAgICB9LAogICAgZG9nczogewogICAgICB5b3VuZzogbWFwcGVkQXJyYXkuZmlsdGVyKHggPT4geC5zcGVjaWVzID09PSAiZG9nIiAmJiB4LmFnZSA8IDUpLAogICAgICBvbGQ6IG1hcHBlZEFycmF5LmZpbHRlcih4ID0+IHguc3BlY2llcyA9PT0gImRvZyIgJiYgeC5hZ2UgPj0gNSksCiAgICB9CiAgfQogIHJldHVybiBmaWx0ZXJBcnJheTsKfSk7) |
| 85 | +[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiB7CiAgY29uc3QgbWFwcGVkQXJyYXkgPSBbCiAgICB7IGFnZTogMSwgc3BlY2llczogImRvZyIgfSwKICAgIHsgYWdlOiAyLCBzcGVjaWVzOiAiY2F0IiB9LAogICAgeyBhZ2U6IDMsIHNwZWNpZXM6ICJkb2ciIH0sCiAgICB7IGFnZTogNCwgc3BlY2llczogImNhdCIgfSwKICAgIHsgYWdlOiAxMSwgc3BlY2llczogImRvZyIgfSwKICAgIHsgYWdlOiAxMiwgc3BlY2llczogImNhciIgfSwKICAgIHsgYWdlOiAxMywgc3BlY2llczogImRvZyIgfSwKICAgIHsgYWdlOiAxNCwgc3BlY2llczogImNhdCIgfSwKICBdOwogIGNvbnN0IGZpbHRlckFycmF5ID0gewogICAgY2F0czogewogICAgICB5b3VuZzogbWFwcGVkQXJyYXkuZmlsdGVyKCh4KSA9PiB4LnNwZWNpZXMgPT09ICJjYXQiICYmIHguYWdlIDwgNSksCiAgICAgIG9sZDogbWFwcGVkQXJyYXkuZmlsdGVyKCh4KSA9PiB4LnNwZWNpZXMgPT09ICJjYXQiICYmIHguYWdlID49IDUpLAogICAgfSwKICAgIGRvZ3M6IHsKICAgICAgeW91bmc6IG1hcHBlZEFycmF5LmZpbHRlcigoeCkgPT4geC5zcGVjaWVzID09PSAiZG9nIiAmJiB4LmFnZSA8IDUpLAogICAgICBvbGQ6IG1hcHBlZEFycmF5LmZpbHRlcigoeCkgPT4geC5zcGVjaWVzID09PSAiZG9nIiAmJiB4LmFnZSA+PSA1KSwKICAgIH0sCiAgfTsKICByZXR1cm4gZmlsdGVyQXJyYXk7Cn0pOwo=) |
75 | 86 |
|
76 | 87 | ``` typescript
|
77 |
| -export const main = asl.deploy.asStateMachine(async () => |
78 |
| - { |
79 |
| - const mappedArray = [{ age: 1, species: "dog" }, { age: 2, species: "cat" }, { age: 3, species: "dog" }, { age: 4, species: "cat" }, { age: 11, species: "dog" }, { age: 12, species: "car" }, { age: 13, species: "dog" }, { age: 14, species: "cat" }] |
| 88 | +export const main = asl.deploy.asStateMachine(async () => { |
| 89 | + const mappedArray = [ |
| 90 | + { age: 1, species: "dog" }, |
| 91 | + { age: 2, species: "cat" }, |
| 92 | + { age: 3, species: "dog" }, |
| 93 | + { age: 4, species: "cat" }, |
| 94 | + { age: 11, species: "dog" }, |
| 95 | + { age: 12, species: "car" }, |
| 96 | + { age: 13, species: "dog" }, |
| 97 | + { age: 14, species: "cat" }, |
| 98 | + ]; |
80 | 99 | const filterArray = {
|
81 | 100 | cats: {
|
82 |
| - young: mappedArray.filter(x => x.species === "cat" && x.age < 5), |
83 |
| - old: mappedArray.filter(x => x.species === "cat" && x.age >= 5), |
| 101 | + young: mappedArray.filter((x) => x.species === "cat" && x.age < 5), |
| 102 | + old: mappedArray.filter((x) => x.species === "cat" && x.age >= 5), |
84 | 103 | },
|
85 | 104 | dogs: {
|
86 |
| - young: mappedArray.filter(x => x.species === "dog" && x.age < 5), |
87 |
| - old: mappedArray.filter(x => x.species === "dog" && x.age >= 5), |
88 |
| - } |
89 |
| - } |
| 105 | + young: mappedArray.filter((x) => x.species === "dog" && x.age < 5), |
| 106 | + old: mappedArray.filter((x) => x.species === "dog" && x.age >= 5), |
| 107 | + }, |
| 108 | + }; |
90 | 109 | return filterArray;
|
91 | 110 | });
|
| 111 | + |
92 | 112 | ```
|
93 | 113 |
|
94 | 114 |
|
95 | 115 | ## json path expressions
|
96 |
| -[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiAKIHsKICBjb25zdCBmaWx0ZXJBcnJheSA9IHsKICAgIGNhdHM6IHsKICAgICAgeW91bmc6IFt7IGFnZTogMiwgc3BlY2llczogImNhdCIgfSwgeyBhZ2U6IDQsIHNwZWNpZXM6ICJjYXQiIH1dLAogICAgICBvbGQ6IFt7IGFnZTogMTIsIHNwZWNpZXM6ICJjYXQiIH0sIHsgYWdlOiAxNCwgc3BlY2llczogImNhdCIgfV0sCiAgICB9LAogICAgZG9nczogewogICAgICB5b3VuZzogW3sgYWdlOiAxLCBzcGVjaWVzOiAiZG9nIiB9LCB7IGFnZTogMywgc3BlY2llczogImRvZyIgfV0sCiAgICAgIG9sZDogW3sgYWdlOiAxMSwgc3BlY2llczogImRvZyIgfSwgeyBhZ2U6IDEzLCBzcGVjaWVzOiAiZG9nIiB9XQogICAgfQogIH0KICAvL0FkZCBhcnJheSBvZiB1bmlxdWUgYWdlcyB1c2luZyBKU09OUGF0aCBFeHByZXNzaW9uCiAgbGV0IGFnZXMgPSBhc2wuanNvblBhdGhFeHByZXNzaW9uKGZpbHRlckFycmF5LCAiLi5hZ2UiKTsKICBsZXQgZmxhdHRlbmVkUGV0cyA9IGFzbC5qc29uUGF0aEV4cHJlc3Npb24oZmlsdGVyQXJyYXksICJbKl1bKl1bKl0iKQogIGxldCBzbGljZWRBcnIgPSBhc2wuanNvblBhdGhTbGljZShmaWx0ZXJBcnJheS5jYXRzLnlvdW5nLCAxLCAxKQoKICByZXR1cm4gewogICAgYWdlcywKICAgIGZsYXR0ZW5lZFBldHMsCiAgICBzbGljZWRBcnIKICB9Cn0pOw==) |
| 116 | +[Open in playground](https://asl-editor-spike-ts-stedi.vercel.app/?aW1wb3J0ICogYXMgYXNsIGZyb20gIkB0czJhc2wvYXNsLWxpYiIKCmV4cG9ydCBjb25zdCBtYWluID0gYXNsLmRlcGxveS5hc1N0YXRlTWFjaGluZShhc3luYyAoKSA9PiB7CiAgY29uc3QgZmlsdGVyQXJyYXkgPSB7CiAgICBjYXRzOiB7CiAgICAgIHlvdW5nOiBbCiAgICAgICAgeyBhZ2U6IDIsIHNwZWNpZXM6ICJjYXQiIH0sCiAgICAgICAgeyBhZ2U6IDQsIHNwZWNpZXM6ICJjYXQiIH0sCiAgICAgIF0sCiAgICAgIG9sZDogWwogICAgICAgIHsgYWdlOiAxMiwgc3BlY2llczogImNhdCIgfSwKICAgICAgICB7IGFnZTogMTQsIHNwZWNpZXM6ICJjYXQiIH0sCiAgICAgIF0sCiAgICB9LAogICAgZG9nczogewogICAgICB5b3VuZzogWwogICAgICAgIHsgYWdlOiAxLCBzcGVjaWVzOiAiZG9nIiB9LAogICAgICAgIHsgYWdlOiAzLCBzcGVjaWVzOiAiZG9nIiB9LAogICAgICBdLAogICAgICBvbGQ6IFsKICAgICAgICB7IGFnZTogMTEsIHNwZWNpZXM6ICJkb2ciIH0sCiAgICAgICAgeyBhZ2U6IDEzLCBzcGVjaWVzOiAiZG9nIiB9LAogICAgICBdLAogICAgfSwKICB9OwogIC8vQWRkIGFycmF5IG9mIHVuaXF1ZSBhZ2VzIHVzaW5nIEpTT05QYXRoIEV4cHJlc3Npb24KICBsZXQgYWdlcyA9IGFzbC5qc29uUGF0aEV4cHJlc3Npb24oZmlsdGVyQXJyYXksICIuLmFnZSIpOwogIGxldCBmbGF0dGVuZWRQZXRzID0gYXNsLmpzb25QYXRoRXhwcmVzc2lvbihmaWx0ZXJBcnJheSwgIlsqXVsqXVsqXSIpOwogIGxldCBzbGljZWRBcnIgPSBhc2wuanNvblBhdGhTbGljZShmaWx0ZXJBcnJheS5jYXRzLnlvdW5nLCAxLCAxKTsKCiAgcmV0dXJuIHsKICAgIGFnZXMsCiAgICBmbGF0dGVuZWRQZXRzLAogICAgc2xpY2VkQXJyLAogIH07Cn0pOwo=) |
97 | 117 |
|
98 | 118 | ``` typescript
|
99 |
| -export const main = asl.deploy.asStateMachine(async () => |
100 |
| - { |
| 119 | +export const main = asl.deploy.asStateMachine(async () => { |
101 | 120 | const filterArray = {
|
102 | 121 | cats: {
|
103 |
| - young: [{ age: 2, species: "cat" }, { age: 4, species: "cat" }], |
104 |
| - old: [{ age: 12, species: "cat" }, { age: 14, species: "cat" }], |
| 122 | + young: [ |
| 123 | + { age: 2, species: "cat" }, |
| 124 | + { age: 4, species: "cat" }, |
| 125 | + ], |
| 126 | + old: [ |
| 127 | + { age: 12, species: "cat" }, |
| 128 | + { age: 14, species: "cat" }, |
| 129 | + ], |
105 | 130 | },
|
106 | 131 | dogs: {
|
107 |
| - young: [{ age: 1, species: "dog" }, { age: 3, species: "dog" }], |
108 |
| - old: [{ age: 11, species: "dog" }, { age: 13, species: "dog" }] |
109 |
| - } |
110 |
| - } |
| 132 | + young: [ |
| 133 | + { age: 1, species: "dog" }, |
| 134 | + { age: 3, species: "dog" }, |
| 135 | + ], |
| 136 | + old: [ |
| 137 | + { age: 11, species: "dog" }, |
| 138 | + { age: 13, species: "dog" }, |
| 139 | + ], |
| 140 | + }, |
| 141 | + }; |
111 | 142 | //Add array of unique ages using JSONPath Expression
|
112 | 143 | let ages = asl.jsonPathExpression(filterArray, "..age");
|
113 |
| - let flattenedPets = asl.jsonPathExpression(filterArray, "[*][*][*]") |
114 |
| - let slicedArr = asl.jsonPathSlice(filterArray.cats.young, 1, 1) |
| 144 | + let flattenedPets = asl.jsonPathExpression(filterArray, "[*][*][*]"); |
| 145 | + let slicedArr = asl.jsonPathSlice(filterArray.cats.young, 1, 1); |
115 | 146 |
|
116 | 147 | return {
|
117 | 148 | ages,
|
118 | 149 | flattenedPets,
|
119 |
| - slicedArr |
120 |
| - } |
| 150 | + slicedArr, |
| 151 | + }; |
121 | 152 | });
|
| 153 | + |
122 | 154 | ```
|
123 | 155 |
|
124 | 156 |
|
0 commit comments