@t4h.framework/transforms 0.2.9 → 0.2.11

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.
@@ -40,7 +40,7 @@ import { split, Split } from '@t4h.framework/fs'
40
40
  import { request } from '@t4h.framework/http'
41
41
  import { json } from '@t4h.framework/transforms'
42
42
 
43
- const main = new Workflow(inputSchema, async ({ url }) => {
43
+ const main = new Workflow({ id: 'main', schema: inputSchema }, async ({ url }) => {
44
44
  const response = await request({ url })
45
45
 
46
46
  // { "registros": { "registro": [ {...}, {...} ] } }
@@ -81,9 +81,8 @@ Behaviors you can rely on:
81
81
  - **Any element type.** Array elements may be objects, arrays or scalars;
82
82
  each becomes one `JSON.stringify`'d line. An empty array yields an empty
83
83
  (zero-line) file, which `split` resolves as an empty batch.
84
- - **Fail-fast on shape mismatches.** `toNDJson()` rejects with a `TypeError`
85
- when the `path` cannot be resolved or does not land on an array, and with a
86
- `SyntaxError` on invalid JSON. There is no partial output.
84
+ - **Fail-fast.** `toNDJson()` rejects on a bad `path` or invalid JSON, with
85
+ no partial output.
87
86
 
88
87
  ## Limits
89
88
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @t4h.framework/transforms
2
2
 
3
+ ## 0.2.11
4
+
5
+ ### Patch Changes
6
+
7
+ - [#241](https://github.com/tech4humans-brasil/framework/pull/241) [`f6b8454`](https://github.com/tech4humans-brasil/framework/commit/f6b845484d22e7c8e7240fe2e113f1cdea7c8ce3) Thanks [@gusteycamargo](https://github.com/gusteycamargo)! - Adds seven rules to `@t4h.framework/core/eslint` and turns them on in `configs.recommended`:
8
+ - `no-io-in-workflow` reports `fetch` and calls to network, file, database and mail modules in a workflow and in the `constructor`, `toInput` and `toOutput` of an activity. It also reports `zlib` and `stream` calls there, because they work on the content in memory on each replay.
9
+ - `no-binary-subclass` reports a class that extends `Binary`.
10
+ - `no-framework-activity-in-app` reports `new` and `extends` on an activity of a framework package other than the core.
11
+ - `no-testing-import-in-source` reports an import of a `@t4h.framework/<package>/testing` entry out of a test file.
12
+ - `require-workflow-id` reports a `Workflow` with no `id`.
13
+ - `no-secret-to-string` reports a `Secret` that becomes a string.
14
+ - `no-literal-secret-in-authorization` reports a string literal in the `secret` or `clientSecret` field of an `Authorization`.
15
+
16
+ The package skills now name these rules in place of the text that the rules enforce. The docs and skills give each `Workflow` an `id`, read the HMAC secret from `EnvDesign`, and do not document a custom HTTP activity.
17
+
18
+ - [#240](https://github.com/tech4humans-brasil/framework/pull/240) [`0606115`](https://github.com/tech4humans-brasil/framework/commit/0606115e2e0baa994e9f0ed3559ee54ecac88e44) Thanks [@gusteycamargo](https://github.com/gusteycamargo)! - The skills do not repeat a rule that a lint rule, `tsc` or a runtime error already enforces. Each such rule is now one line that names the gate. The examples that broke a gate (`process.env`, `as any`, an inline secret, an `EnvDesign` in a workflow file, `ref.output` before `wait()`) are correct now.
19
+
20
+ ## 0.2.10
21
+
3
22
  ## 0.2.9
4
23
 
5
24
  ## 0.2.8
@@ -27,6 +27,10 @@ export class JsonToNDJsonActivity extends SyncActivity {
27
27
  return output;
28
28
  }
29
29
  }
30
+ const BYTE_ORDER_MARK = 0xfeff;
31
+ function stripByteOrderMark(text) {
32
+ return text.charCodeAt(0) === BYTE_ORDER_MARK ? text.slice(1) : text;
33
+ }
30
34
  async function* decode(source, encoding) {
31
35
  const decoder = new StringDecoder(encoding);
32
36
  let first = true;
@@ -34,9 +38,7 @@ async function* decode(source, encoding) {
34
38
  let text = decoder.write(chunk);
35
39
  if (first && text) {
36
40
  first = false;
37
- // external producers often prepend a byte order mark
38
- if (text.charCodeAt(0) === 0xfeff)
39
- text = text.slice(1);
41
+ text = stripByteOrderMark(text);
40
42
  }
41
43
  if (text)
42
44
  yield text;
@@ -45,6 +47,19 @@ async function* decode(source, encoding) {
45
47
  if (rest)
46
48
  yield rest;
47
49
  }
50
+ function opensContainer(token) {
51
+ return token.name === 'startObject' || token.name === 'startArray';
52
+ }
53
+ function closesContainer(token) {
54
+ return token.name === 'endObject' || token.name === 'endArray';
55
+ }
56
+ function nestingDelta(token) {
57
+ if (opensContainer(token))
58
+ return 1;
59
+ if (closesContainer(token))
60
+ return -1;
61
+ return 0;
62
+ }
48
63
  function navigate(path) {
49
64
  const segments = path ? path.split('.') : [];
50
65
  let mode = 'root';
@@ -55,67 +70,72 @@ function navigate(path) {
55
70
  ? `Expected an array at "${path}" in the JSON document`
56
71
  : 'Expected the JSON document root to be an array');
57
72
  const unresolvable = (length) => new TypeError(`Could not resolve "${segments.slice(0, length).join('.')}" in the JSON document`);
73
+ const startForwarding = (token) => {
74
+ if (token.name !== 'startArray')
75
+ throw notArray();
76
+ mode = 'forward';
77
+ depth = 1;
78
+ return token;
79
+ };
80
+ const onRoot = (token) => {
81
+ if (segments.length === 0)
82
+ return startForwarding(token);
83
+ if (token.name !== 'startObject')
84
+ throw unresolvable(1);
85
+ mode = 'key';
86
+ return none;
87
+ };
88
+ const onKey = (token) => {
89
+ if (token.name === 'endObject')
90
+ throw index === segments.length - 1 ? notArray() : unresolvable(index + 2);
91
+ matches = token.name === 'keyValue' && token.value === segments[index];
92
+ mode = 'value';
93
+ return none;
94
+ };
95
+ const skipValue = (token) => {
96
+ if (!opensContainer(token)) {
97
+ mode = 'key';
98
+ return none;
99
+ }
100
+ mode = 'skip';
101
+ depth = 1;
102
+ return none;
103
+ };
104
+ const onValue = (token) => {
105
+ if (!matches)
106
+ return skipValue(token);
107
+ if (index === segments.length - 1)
108
+ return startForwarding(token);
109
+ if (token.name !== 'startObject')
110
+ throw unresolvable(index + 2);
111
+ index += 1;
112
+ mode = 'key';
113
+ return none;
114
+ };
115
+ const onSkip = (token) => {
116
+ depth += nestingDelta(token);
117
+ if (depth === 0)
118
+ mode = 'key';
119
+ return none;
120
+ };
121
+ const onForward = (token) => {
122
+ depth += nestingDelta(token);
123
+ if (depth === 0)
124
+ mode = 'done';
125
+ return token;
126
+ };
58
127
  return token => {
59
128
  switch (mode) {
60
129
  case 'root':
61
- if (segments.length === 0) {
62
- if (token.name !== 'startArray')
63
- throw notArray();
64
- mode = 'forward';
65
- depth = 1;
66
- return token;
67
- }
68
- if (token.name !== 'startObject')
69
- throw unresolvable(1);
70
- mode = 'key';
71
- return none;
130
+ return onRoot(token);
72
131
  case 'key':
73
- if (token.name === 'endObject')
74
- throw index === segments.length - 1
75
- ? notArray()
76
- : unresolvable(index + 2);
77
- matches = token.name === 'keyValue' && token.value === segments[index];
78
- mode = 'value';
79
- return none;
132
+ return onKey(token);
80
133
  case 'value':
81
- if (!matches) {
82
- if (token.name === 'startObject' || token.name === 'startArray') {
83
- mode = 'skip';
84
- depth = 1;
85
- }
86
- else {
87
- mode = 'key';
88
- }
89
- return none;
90
- }
91
- if (index === segments.length - 1) {
92
- if (token.name !== 'startArray')
93
- throw notArray();
94
- mode = 'forward';
95
- depth = 1;
96
- return token;
97
- }
98
- if (token.name !== 'startObject')
99
- throw unresolvable(index + 2);
100
- index += 1;
101
- mode = 'key';
102
- return none;
134
+ return onValue(token);
103
135
  case 'skip':
104
- if (token.name === 'startObject' || token.name === 'startArray')
105
- depth += 1;
106
- else if (token.name === 'endObject' || token.name === 'endArray')
107
- depth -= 1;
108
- if (depth === 0)
109
- mode = 'key';
110
- return none;
136
+ return onSkip(token);
111
137
  case 'forward':
112
- if (token.name === 'startObject' || token.name === 'startArray')
113
- depth += 1;
114
- else if (token.name === 'endObject' || token.name === 'endArray')
115
- depth -= 1;
116
- if (depth === 0)
117
- mode = 'done';
118
- return token;
138
+ return onForward(token);
119
139
  case 'done':
120
140
  return none;
121
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"JsonToNDJsonActivity.js","sourceRoot":"","sources":["../../src/activities/JsonToNDJsonActivity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonToNDJsonActivity.js","sourceRoot":"","sources":["../../src/activities/JsonToNDJsonActivity.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@t4h.framework/transforms",
3
- "version": "0.2.9",
3
+ "version": "0.2.11",
4
4
  "description": "Data transform activities for the T4H Framework",
5
5
  "homepage": "https://github.com/tech4humans-brasil/framework/tree/main/packages/transforms",
6
6
  "bugs": "https://github.com/tech4humans-brasil/framework/issues",
@@ -26,14 +26,15 @@
26
26
  "scripts": {
27
27
  "build": "tsc --project tsconfig.build.json",
28
28
  "check-types": "tsc --noEmit",
29
- "lint": "eslint .",
29
+ "check-package": "publint --strict && attw --pack . --profile esm-only",
30
+ "lint": "eslint . --max-warnings 0",
30
31
  "prepublishOnly": "yarn build",
31
32
  "test": "vitest run",
32
33
  "test:watch": "vitest"
33
34
  },
34
35
  "devDependencies": {
35
- "@t4h.framework/core": "^0.18.0",
36
- "@t4h.framework/fs": "^0.12.2",
36
+ "@t4h.framework/core": "^0.20.0",
37
+ "@t4h.framework/fs": "^0.13.1",
37
38
  "typescript": "^5.9.3",
38
39
  "vitest": "^4.0.18"
39
40
  },