@things-factory/integration-base 6.1.154 → 6.1.155
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-server/engine/task/index.js +1 -0
- package/dist-server/engine/task/index.js.map +1 -1
- package/dist-server/engine/task/jsonata.js +30 -0
- package/dist-server/engine/task/jsonata.js.map +1 -0
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/helps/integration/task/jsonata.ja.md +24 -0
- package/helps/integration/task/jsonata.ko.md +25 -0
- package/helps/integration/task/jsonata.md +24 -0
- package/helps/integration/task/jsonata.ms.md +24 -0
- package/helps/integration/task/jsonata.zh.md +24 -0
- package/package.json +2 -2
- package/server/engine/task/index.ts +1 -0
- package/server/engine/task/jsonata.ts +35 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
# JSonata
|
2
|
+
|
3
|
+
このタスクは JSonata 式を実行し、その結果を返します。
|
4
|
+
|
5
|
+
[JSonata](https://jsonata.org/)は JSON データを対象とする軽量なクエリおよび変換言語です。
|
6
|
+
|
7
|
+
[JSonata テスト](https://try.jsonata.org/)で式をテストできます。
|
8
|
+
|
9
|
+
## パラメータ
|
10
|
+
|
11
|
+
### JSonata 式(expression)
|
12
|
+
|
13
|
+
JSonata のベース(base)は次の 5 つの組み込み変数(data、variables、domain、user、lng)で構成されています。
|
14
|
+
|
15
|
+
```
|
16
|
+
# JSonataベース(base)のJSON表現
|
17
|
+
{
|
18
|
+
data,
|
19
|
+
variables,
|
20
|
+
domain,
|
21
|
+
user,
|
22
|
+
lng
|
23
|
+
}
|
24
|
+
```
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# JSonata
|
2
|
+
|
3
|
+
JSonata 표현식을 실행하여 그 결과를 리턴하는 태스크이다.
|
4
|
+
|
5
|
+
[JSonata](https://jsonata.org/) 는 JSON 데이터를 대상으로하는 간편한 쿼리 및 변환 언어이다.
|
6
|
+
|
7
|
+
[JSonata 테스트](https://try.jsonata.org/)에서 표현식을 테스트 해볼 수 있다.
|
8
|
+
|
9
|
+
## parameters
|
10
|
+
|
11
|
+
### JSonata 표현식(expression)
|
12
|
+
|
13
|
+
JSonata의 베이스는 일반 [스크립트 내장변수](../concept/script-internal-variables.md)인 data, variables, domain, user, lng 다섯가지이다.
|
14
|
+
|
15
|
+
```
|
16
|
+
# JSonata base의 json 표현
|
17
|
+
{
|
18
|
+
data,
|
19
|
+
variables,
|
20
|
+
domain,
|
21
|
+
user,
|
22
|
+
lng
|
23
|
+
}
|
24
|
+
|
25
|
+
```
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# JSonata
|
2
|
+
|
3
|
+
This task executes JSonata expressions and returns the results.
|
4
|
+
|
5
|
+
[JSonata](https://jsonata.org/) is a lightweight query and transformation language for JSON data.
|
6
|
+
|
7
|
+
You can test expressions on [JSonata Test](https://try.jsonata.org/).
|
8
|
+
|
9
|
+
## Parameters
|
10
|
+
|
11
|
+
### JSonata Expression (expression)
|
12
|
+
|
13
|
+
The JSonata base consists of five built-in variables (data, variables, domain, user, lng) as follows:
|
14
|
+
|
15
|
+
```
|
16
|
+
# JSON representation of the JSonata base
|
17
|
+
{
|
18
|
+
data,
|
19
|
+
variables,
|
20
|
+
domain,
|
21
|
+
user,
|
22
|
+
lng
|
23
|
+
}
|
24
|
+
```
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# JSonata
|
2
|
+
|
3
|
+
Tugas ini menjalankan ekspresi JSonata dan mengembalikan hasilnya.
|
4
|
+
|
5
|
+
[JSonata](https://jsonata.org/) adalah bahasa kueri dan transformasi yang ringan untuk data JSON.
|
6
|
+
|
7
|
+
Anda dapat menguji ekspresi di [JSonata Test](https://try.jsonata.org/).
|
8
|
+
|
9
|
+
## Parameter
|
10
|
+
|
11
|
+
### Ekspresi JSonata (expression)
|
12
|
+
|
13
|
+
Basis JSonata terdiri dari lima variabel bawaan(data, variables, domain, user, lng) seperti berikut.
|
14
|
+
|
15
|
+
```
|
16
|
+
# Representasi JSON basis(base) JSonata
|
17
|
+
{
|
18
|
+
data,
|
19
|
+
variables,
|
20
|
+
domain,
|
21
|
+
user,
|
22
|
+
lng
|
23
|
+
}
|
24
|
+
```
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# JSonata
|
2
|
+
|
3
|
+
这个任务执行 JSonata 表达式并返回结果。
|
4
|
+
|
5
|
+
[JSonata](https://jsonata.org/) 是一种用于 JSON 数据的轻量级查询和转换语言。
|
6
|
+
|
7
|
+
您可以在[JSonata 测试](https://try.jsonata.org/)中测试表达式。
|
8
|
+
|
9
|
+
## 参数
|
10
|
+
|
11
|
+
### JSonata 表达式(expression)
|
12
|
+
|
13
|
+
JSonata 的基本(base)由以下五个内置变量(data, variables, domain, user, lng)组成。
|
14
|
+
|
15
|
+
```
|
16
|
+
# JSonata基本(base)的JSON表示
|
17
|
+
{
|
18
|
+
data,
|
19
|
+
variables,
|
20
|
+
domain,
|
21
|
+
user,
|
22
|
+
lng
|
23
|
+
}
|
24
|
+
```
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@things-factory/integration-base",
|
3
|
-
"version": "6.1.
|
3
|
+
"version": "6.1.155",
|
4
4
|
"main": "dist-server/index.js",
|
5
5
|
"browser": "client/index.js",
|
6
6
|
"things-factory": true,
|
@@ -46,5 +46,5 @@
|
|
46
46
|
"devDependencies": {
|
47
47
|
"@types/cron": "^2.0.1"
|
48
48
|
},
|
49
|
-
"gitHead": "
|
49
|
+
"gitHead": "b08fff48f768f10f90d11bb31f413396affdfc33"
|
50
50
|
}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import { TaskRegistry } from '../task-registry'
|
2
|
+
import jsonata from 'jsonata'
|
3
|
+
|
4
|
+
async function JSonata(step, context) {
|
5
|
+
var {
|
6
|
+
params: { expression }
|
7
|
+
} = step
|
8
|
+
|
9
|
+
const { domain, user, data, variables, lng, logger } = context
|
10
|
+
|
11
|
+
var result = jsonata(expression).evaluate({
|
12
|
+
domain,
|
13
|
+
user,
|
14
|
+
lng,
|
15
|
+
data,
|
16
|
+
variables
|
17
|
+
})
|
18
|
+
|
19
|
+
return {
|
20
|
+
data: result
|
21
|
+
}
|
22
|
+
}
|
23
|
+
|
24
|
+
JSonata.parameterSpec = [
|
25
|
+
{
|
26
|
+
type: 'textarea',
|
27
|
+
name: 'expression',
|
28
|
+
label: 'jsonata-expression'
|
29
|
+
}
|
30
|
+
]
|
31
|
+
|
32
|
+
JSonata.connectorFree = true
|
33
|
+
JSonata.help = 'integration/task/jsonata'
|
34
|
+
|
35
|
+
TaskRegistry.registerTaskHandler('jsonata', JSonata)
|