@lowdefy/blocks-diff 5.5.1 → 6.0.0

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.
@@ -0,0 +1,34 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ - title: Unified YAML patch
16
+ fullWidth: true
17
+ blocks:
18
+ - id: diff_git_order
19
+ type: DiffGit
20
+ properties:
21
+ title: Order patch
22
+ before:
23
+ order:
24
+ status: pending
25
+ total: 10
26
+ notes:
27
+ - draft
28
+ after:
29
+ order:
30
+ status: paid
31
+ total: 15
32
+ notes:
33
+ - draft
34
+ - sent
@@ -0,0 +1,29 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ id: diff-git
16
+ type: Box
17
+
18
+ blocks:
19
+ - id: diff_git
20
+ type: DiffGit
21
+ properties:
22
+ before:
23
+ order:
24
+ status: pending
25
+ total: 10
26
+ after:
27
+ order:
28
+ status: paid
29
+ total: 15
@@ -0,0 +1,187 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ - title: Profile change
16
+ fullWidth: true
17
+ blocks:
18
+ - id: diff_list_profile
19
+ type: DiffList
20
+ properties:
21
+ title: Profile updated
22
+ before:
23
+ name: Sarah Johnson
24
+ email: sarah@example.com
25
+ role: member
26
+ newsletterOptIn: true
27
+ lastLoginAt: '2026-01-15T09:24:00Z'
28
+ address:
29
+ street: 221B Baker Street
30
+ city: London
31
+ country: UK
32
+ after:
33
+ name: Sarah Johnson
34
+ email: sarah.johnson@example.com
35
+ role: admin
36
+ newsletterOptIn: false
37
+ lastLoginAt: '2026-04-17T14:05:00Z'
38
+ address:
39
+ street: 221B Baker Street
40
+ city: London
41
+ country: United Kingdom
42
+ labels:
43
+ name: Full name
44
+ email: Email address
45
+ role: Role
46
+ newsletterOptIn: Newsletter
47
+ lastLoginAt: Last login
48
+ address: Mailing address
49
+ 'address.street': Street
50
+ 'address.city': City
51
+ 'address.country': Country
52
+ format:
53
+ lastLoginAt:
54
+ type: datetime
55
+ pattern: MMM D, YYYY HH:mm
56
+ newsletterOptIn:
57
+ type: boolean
58
+ role:
59
+ type: enum
60
+ map:
61
+ member: { label: Member, color: default }
62
+ admin: { label: Administrator, color: gold }
63
+
64
+ - title: Order update
65
+ fullWidth: true
66
+ blocks:
67
+ - id: diff_list_order
68
+ type: DiffList
69
+ properties:
70
+ title: Order #A-10422
71
+ before:
72
+ status: pending
73
+ subtotal: 129.5
74
+ tax: 10.36
75
+ total: 139.86
76
+ items:
77
+ - Notebook (A5)
78
+ - Pen (blue)
79
+ internal:
80
+ createdBy: sys
81
+ traceId: abc-123
82
+ after:
83
+ status: paid
84
+ subtotal: 129.5
85
+ tax: 10.36
86
+ total: 139.86
87
+ items:
88
+ - Notebook (A5)
89
+ - Pen (blue)
90
+ - Sticky notes
91
+ internal:
92
+ createdBy: sys
93
+ traceId: abc-999
94
+ hide:
95
+ - 'internal.*'
96
+ labels:
97
+ status: Status
98
+ subtotal: Subtotal
99
+ tax: Tax
100
+ total: Total
101
+ items: Line items
102
+ format:
103
+ subtotal: { type: currency, currency: USD }
104
+ tax: { type: currency, currency: USD }
105
+ total: { type: currency, currency: USD }
106
+ status:
107
+ type: enum
108
+ map:
109
+ pending: { label: Pending, color: warning }
110
+ paid: { label: Paid, color: success }
111
+ cancelled: { label: Cancelled, color: error }
112
+
113
+ - title: Inventory with unchanged
114
+ fullWidth: true
115
+ blocks:
116
+ - id: diff_list_inventory
117
+ type: DiffList
118
+ properties:
119
+ title: Inventory snapshot
120
+ showUnchanged: true
121
+ before:
122
+ sku: WID-001
123
+ name: Widget A
124
+ quantity: 120
125
+ reorderPoint: 40
126
+ active: true
127
+ after:
128
+ sku: WID-001
129
+ name: Widget A
130
+ quantity: 38
131
+ reorderPoint: 40
132
+ active: true
133
+ labels:
134
+ sku: SKU
135
+ name: Product
136
+ quantity: Quantity on hand
137
+ reorderPoint: Reorder point
138
+ active: Active
139
+ format:
140
+ active: { type: boolean }
141
+
142
+ - title: Empty state
143
+ fullWidth: true
144
+ blocks:
145
+ - id: diff_list_empty
146
+ type: DiffList
147
+ properties:
148
+ title: Settings saved
149
+ emptyText: No changes since last save.
150
+ before:
151
+ theme: dark
152
+ language: en
153
+ after:
154
+ theme: dark
155
+ language: en
156
+
157
+ - title: Orders array — per-item sub-grouping
158
+ fullWidth: true
159
+ blocks:
160
+ - id: diff_list_orders_array
161
+ type: DiffList
162
+ properties:
163
+ title: Orders updated
164
+ before:
165
+ orders:
166
+ - id: ord_1
167
+ total: 10
168
+ name: Notebook
169
+ - id: ord_2
170
+ total: 5
171
+ name: Pen
172
+ after:
173
+ orders:
174
+ - id: ord_1
175
+ total: 20
176
+ name: Notebook
177
+ - id: ord_2
178
+ total: 5
179
+ name: Pen
180
+ - id: ord_3
181
+ total: 99
182
+ name: Stapler
183
+ labels:
184
+ orders: Orders
185
+ 'orders.0.total': Total
186
+ format:
187
+ 'orders.*.total': { type: currency, currency: USD }
@@ -0,0 +1,176 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ id: diff-list
16
+ type: Box
17
+
18
+ blocks:
19
+ - id: diff_list_empty
20
+ type: DiffList
21
+ properties:
22
+ title: No changes
23
+ emptyText: Nothing to show here.
24
+ before:
25
+ theme: dark
26
+ after:
27
+ theme: dark
28
+
29
+ - id: diff_list_basic
30
+ type: DiffList
31
+ properties:
32
+ title: Profile
33
+ before:
34
+ name: Sarah
35
+ role: member
36
+ after:
37
+ name: Sarah
38
+ role: admin
39
+
40
+ - id: diff_list_labels
41
+ type: DiffList
42
+ properties:
43
+ before:
44
+ email: a@example.com
45
+ after:
46
+ email: b@example.com
47
+ labels:
48
+ email: Email address
49
+
50
+ - id: diff_list_hide
51
+ type: DiffList
52
+ properties:
53
+ before:
54
+ email: a@example.com
55
+ internal:
56
+ traceId: x
57
+ after:
58
+ email: b@example.com
59
+ internal:
60
+ traceId: y
61
+ hide:
62
+ - 'internal.*'
63
+
64
+ - id: diff_list_boolean
65
+ type: DiffList
66
+ properties:
67
+ before:
68
+ active: false
69
+ after:
70
+ active: true
71
+ format:
72
+ active:
73
+ type: boolean
74
+ yes: Enabled
75
+ no: Disabled
76
+
77
+ - id: diff_list_enum
78
+ type: DiffList
79
+ properties:
80
+ before:
81
+ status: pending
82
+ after:
83
+ status: paid
84
+ format:
85
+ status:
86
+ type: enum
87
+ map:
88
+ pending: { label: Pending, color: warning }
89
+ paid: { label: Paid, color: success }
90
+
91
+ - id: diff_list_add_remove
92
+ type: DiffList
93
+ properties:
94
+ before:
95
+ name: Sarah
96
+ phone: '555-1234'
97
+ after:
98
+ name: Sarah
99
+ email: sarah@example.com
100
+
101
+ - id: diff_list_grouped
102
+ type: DiffList
103
+ properties:
104
+ before:
105
+ profile:
106
+ name: Sarah
107
+ address:
108
+ city: London
109
+ after:
110
+ profile:
111
+ name: Sarah Johnson
112
+ address:
113
+ city: Paris
114
+
115
+ - id: diff_list_unchanged
116
+ type: DiffList
117
+ properties:
118
+ showUnchanged: true
119
+ before:
120
+ name: Sarah
121
+ role: member
122
+ after:
123
+ name: Sarah
124
+ role: admin
125
+
126
+ - id: diff_list_orders_array
127
+ type: DiffList
128
+ properties:
129
+ before:
130
+ orders:
131
+ - id: ord_1
132
+ total: 10
133
+ name: Notebook
134
+ - id: ord_2
135
+ total: 5
136
+ name: Pen
137
+ after:
138
+ orders:
139
+ - id: ord_1
140
+ total: 20
141
+ name: Notebook
142
+ - id: ord_2
143
+ total: 5
144
+ name: Pen
145
+ - id: ord_3
146
+ total: 99
147
+ name: Stapler
148
+
149
+ - id: diff_list_deep_path
150
+ type: DiffList
151
+ properties:
152
+ before:
153
+ settings:
154
+ display:
155
+ theme:
156
+ mode: dark
157
+ after:
158
+ settings:
159
+ display:
160
+ theme:
161
+ mode: light
162
+
163
+ - id: diff_list_max_depth
164
+ type: DiffList
165
+ properties:
166
+ maxDepth: 3
167
+ before:
168
+ settings:
169
+ display:
170
+ theme:
171
+ mode: dark
172
+ after:
173
+ settings:
174
+ display:
175
+ theme:
176
+ mode: light
@@ -0,0 +1,33 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ - title: Before / after columns
16
+ fullWidth: true
17
+ blocks:
18
+ - id: diff_side_by_side_profile
19
+ type: DiffSideBySide
20
+ properties:
21
+ title: Profile updated
22
+ before:
23
+ name: Sarah Johnson
24
+ email: sarah@example.com
25
+ role: member
26
+ after:
27
+ name: Sarah M. Johnson
28
+ email: sarah.j@example.com
29
+ role: admin
30
+ labels:
31
+ name: Full name
32
+ email: Email address
33
+ role: Role
@@ -0,0 +1,27 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ id: diff-side-by-side
16
+ type: Box
17
+
18
+ blocks:
19
+ - id: diff_side_by_side
20
+ type: DiffSideBySide
21
+ properties:
22
+ before:
23
+ name: Sarah
24
+ role: member
25
+ after:
26
+ name: Sarah Johnson
27
+ role: admin
@@ -0,0 +1,62 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ - title: Audit trail timeline
16
+ fullWidth: true
17
+ blocks:
18
+ - id: diff_timeline_order
19
+ type: DiffTimeline
20
+ properties:
21
+ title: Order #A-10422
22
+ before:
23
+ status: pending
24
+ subtotal: 129.5
25
+ tax: 10.36
26
+ total: 139.86
27
+ items:
28
+ - Notebook (A5)
29
+ - Pen (blue)
30
+ internal:
31
+ createdBy: sys
32
+ traceId: abc-123
33
+ after:
34
+ status: paid
35
+ subtotal: 129.5
36
+ tax: 10.36
37
+ total: 139.86
38
+ items:
39
+ - Notebook (A5)
40
+ - Pen (blue)
41
+ - Sticky notes
42
+ internal:
43
+ createdBy: sys
44
+ traceId: abc-999
45
+ hide:
46
+ - 'internal.*'
47
+ labels:
48
+ status: Status
49
+ subtotal: Subtotal
50
+ tax: Tax
51
+ total: Total
52
+ items: Line items
53
+ format:
54
+ subtotal: { type: currency, currency: USD }
55
+ tax: { type: currency, currency: USD }
56
+ total: { type: currency, currency: USD }
57
+ status:
58
+ type: enum
59
+ map:
60
+ pending: { label: Pending, color: warning }
61
+ paid: { label: Paid, color: success }
62
+ cancelled: { label: Cancelled, color: error }
@@ -0,0 +1,29 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ id: diff-timeline
16
+ type: Box
17
+
18
+ blocks:
19
+ - id: diff_timeline
20
+ type: DiffTimeline
21
+ properties:
22
+ before:
23
+ a: 1
24
+ b: 2
25
+ c: 3
26
+ after:
27
+ a: 10
28
+ b: 2
29
+ d: 4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lowdefy/blocks-diff",
3
- "version": "5.5.1",
3
+ "version": "6.0.0",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Lowdefy diff blocks — list, side-by-side, timeline, and git-diff views for before/after object comparisons.",
6
6
  "homepage": "https://lowdefy.com",
@@ -40,13 +40,13 @@
40
40
  ],
41
41
  "dependencies": {
42
42
  "@ant-design/icons": "6.1.0",
43
- "@lowdefy/block-utils": "5.5.1",
44
- "@lowdefy/helpers": "5.5.1",
45
- "dayjs": "1.11.19",
43
+ "@lowdefy/block-utils": "6.0.0",
44
+ "@lowdefy/helpers": "6.0.0",
45
+ "dayjs": "1.11.20",
46
46
  "diff": "5.2.2",
47
- "microdiff": "1.4.0",
47
+ "microdiff": "1.5.0",
48
48
  "pluralize": "8.0.0",
49
- "yaml": "2.3.4"
49
+ "yaml": "2.9.0"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "antd": ">=6",
@@ -54,11 +54,11 @@
54
54
  "react-dom": ">=18"
55
55
  },
56
56
  "devDependencies": {
57
- "@lowdefy/block-dev-e2e": "5.5.1",
58
- "@lowdefy/e2e-utils": "5.5.1",
59
- "@playwright/test": "1.50.1",
60
- "@swc/cli": "0.8.0",
61
- "@swc/core": "1.15.18",
57
+ "@lowdefy/block-dev-e2e": "6.0.0",
58
+ "@lowdefy/e2e-utils": "6.0.0",
59
+ "@playwright/test": "1.59.1",
60
+ "@swc/cli": "0.8.1",
61
+ "@swc/core": "1.15.32",
62
62
  "copyfiles": "2.4.1"
63
63
  },
64
64
  "publishConfig": {
@@ -67,7 +67,7 @@
67
67
  "scripts": {
68
68
  "build": "swc src --out-dir dist --config-file ../../../../.swcrc --cli-config-file ../../../../.swc-cli.json && pnpm copyfiles",
69
69
  "clean": "rm -rf dist",
70
- "copyfiles": "copyfiles -u 1 \"./src/**/*\" dist -e \"./src/**/*.js\" -e \"./src/**/*.yaml\" -e \"./src/**/*.snap\"",
70
+ "copyfiles": "copyfiles -u 1 \"./src/**/*\" dist -e \"./src/**/*.js\" -e \"./src/**/*.snap\"",
71
71
  "e2e": "playwright test --config e2e/playwright.config.js",
72
72
  "e2e:ui": "playwright test --config e2e/playwright.config.js --ui"
73
73
  }