@pisapp/core 7.0.0-dev.20260916-153034

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.
Files changed (51) hide show
  1. package/LICENSE +28 -0
  2. package/THIRD-PARTY-NOTICES.txt +43 -0
  3. package/catalogs.d.ts +7725 -0
  4. package/catalogs.js +3 -0
  5. package/chunks/catalogs-domain-DJxK_B5E.js +9060 -0
  6. package/chunks/catalogs-domain-DJxK_B5E.js.map +1 -0
  7. package/chunks/classifications-domain-DdIJaF1D.js +1980 -0
  8. package/chunks/classifications-domain-DdIJaF1D.js.map +1 -0
  9. package/chunks/icons-shared-B8v5z3BE.js +1387 -0
  10. package/chunks/icons-shared-B8v5z3BE.js.map +1 -0
  11. package/chunks/products-domain-99vJaUyI.js +22587 -0
  12. package/chunks/products-domain-99vJaUyI.js.map +1 -0
  13. package/classifications.d.ts +7725 -0
  14. package/classifications.js +3 -0
  15. package/core.d.ts +7711 -0
  16. package/core.js +7 -0
  17. package/index.d.ts +7992 -0
  18. package/index.js +12 -0
  19. package/migration/API_V1_TO_V2_MIGRATION.md +1424 -0
  20. package/migration/legacy-option-rules.json +93 -0
  21. package/migration/v7.json +4101 -0
  22. package/migration/v7.schema.json +595 -0
  23. package/package.json +68 -0
  24. package/pis-csp.js +97 -0
  25. package/pis-csp.js.map +1 -0
  26. package/pis.js +105 -0
  27. package/pis.js.map +1 -0
  28. package/products.d.ts +7746 -0
  29. package/products.js +2 -0
  30. package/styles/fonts.css +1 -0
  31. package/styles/pis.css +1 -0
  32. package/styles/theme-abb.css +1 -0
  33. package/styles/theme-abb.optimized.css +1 -0
  34. package/styles/theme-cux2-blue-dark.css +1 -0
  35. package/styles/theme-cux2-blue-dark.optimized.css +1 -0
  36. package/styles/theme-cux2-blue-light.css +1 -0
  37. package/styles/theme-cux2-blue-light.optimized.css +1 -0
  38. package/styles/theme-cux2-lilac-dark.css +1 -0
  39. package/styles/theme-cux2-lilac-dark.optimized.css +1 -0
  40. package/styles/theme-cux2-lilac-light.css +1 -0
  41. package/styles/theme-cux2-lilac-light.optimized.css +1 -0
  42. package/styles/theme-cux2-mono-dark.css +1 -0
  43. package/styles/theme-cux2-mono-dark.optimized.css +1 -0
  44. package/styles/theme-cux2-mono-light.css +1 -0
  45. package/styles/theme-cux2-mono-light.optimized.css +1 -0
  46. package/styles/theme-cux2-red-dark.css +1 -0
  47. package/styles/theme-cux2-red-dark.optimized.css +1 -0
  48. package/styles/theme-cux2-red-light.css +1 -0
  49. package/styles/theme-cux2-red-light.optimized.css +1 -0
  50. package/types.d.ts +8893 -0
  51. package/types.js +0 -0
@@ -0,0 +1,595 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://pisapp.dev/core/migration/v7.schema.json",
4
+ "title": "@pisapp/core migration/v7.json",
5
+ "description": "Machine-readable v6\u2192v7 migration spec consumed by the @pisapp/migrate codemod and the per-framework skills. Generated from ComponentTemplateMap.ts.",
6
+ "type": "object",
7
+ "required": [
8
+ "version",
9
+ "reactiveContext",
10
+ "emit",
11
+ "webApi",
12
+ "injectionPoints",
13
+ "publicApiRefactors",
14
+ "instanceAttributes"
15
+ ],
16
+ "additionalProperties": false,
17
+ "properties": {
18
+ "version": {
19
+ "type": "string",
20
+ "pattern": "^7\\."
21
+ },
22
+ "generatedFrom": {
23
+ "type": "string"
24
+ },
25
+ "_generated": {
26
+ "description": "Provenance banner (JSON equivalent of an auto-generated file header): the owning script, a short purpose, and a do-not-edit warning.",
27
+ "type": "object",
28
+ "required": [
29
+ "by",
30
+ "purpose",
31
+ "warning"
32
+ ],
33
+ "additionalProperties": false,
34
+ "properties": {
35
+ "by": {
36
+ "type": "string"
37
+ },
38
+ "purpose": {
39
+ "type": "string"
40
+ },
41
+ "warning": {
42
+ "type": "string"
43
+ }
44
+ }
45
+ },
46
+ "reactiveContext": {
47
+ "type": "object",
48
+ "required": [
49
+ "decision",
50
+ "note"
51
+ ],
52
+ "additionalProperties": false,
53
+ "properties": {
54
+ "decision": {
55
+ "type": "string"
56
+ },
57
+ "note": {
58
+ "type": "string"
59
+ }
60
+ }
61
+ },
62
+ "emit": {
63
+ "type": "object",
64
+ "required": [
65
+ "routesTo",
66
+ "unchangedFromV6",
67
+ "note"
68
+ ],
69
+ "additionalProperties": false,
70
+ "properties": {
71
+ "routesTo": {
72
+ "type": "string"
73
+ },
74
+ "unchangedFromV6": {
75
+ "type": "boolean"
76
+ },
77
+ "note": {
78
+ "type": "string"
79
+ }
80
+ }
81
+ },
82
+ "webApi": {
83
+ "description": "Generated Web API v1-to-v2 migration rules. Generated v2 routes and types are the executable source of truth.",
84
+ "type": "object",
85
+ "required": [
86
+ "sourceOfTruth",
87
+ "criterionValues",
88
+ "requestTransforms",
89
+ "responseTransforms",
90
+ "typeRenames",
91
+ "manualReview"
92
+ ],
93
+ "additionalProperties": false,
94
+ "properties": {
95
+ "sourceOfTruth": {
96
+ "type": "object",
97
+ "required": ["routes", "types", "migrationGuide"],
98
+ "additionalProperties": false,
99
+ "properties": {
100
+ "routes": { "type": "string" },
101
+ "types": { "type": "string" },
102
+ "migrationGuide": { "type": "string" }
103
+ }
104
+ },
105
+ "criterionValues": {
106
+ "type": "object",
107
+ "required": ["keys", "rulesMayBeOmittedOrNull"],
108
+ "additionalProperties": false,
109
+ "properties": {
110
+ "keys": {
111
+ "const": ["h", "v", "u"]
112
+ },
113
+ "rulesMayBeOmittedOrNull": { "type": "boolean" }
114
+ }
115
+ },
116
+ "requestTransforms": {
117
+ "type": "array",
118
+ "items": { "$ref": "#/definitions/webApiTransform" }
119
+ },
120
+ "responseTransforms": {
121
+ "type": "array",
122
+ "items": { "$ref": "#/definitions/webApiTransform" }
123
+ },
124
+ "typeRenames": {
125
+ "type": "array",
126
+ "items": {
127
+ "type": "object",
128
+ "required": ["from", "to"],
129
+ "additionalProperties": false,
130
+ "properties": {
131
+ "from": { "type": "string" },
132
+ "to": { "type": "string" }
133
+ }
134
+ }
135
+ },
136
+ "manualReview": {
137
+ "type": "array",
138
+ "items": {
139
+ "type": "object",
140
+ "required": ["id", "detect", "message"],
141
+ "additionalProperties": false,
142
+ "properties": {
143
+ "id": { "type": "string" },
144
+ "detect": { "type": "array", "items": { "type": "string" }, "minItems": 1 },
145
+ "message": { "type": "string" }
146
+ }
147
+ }
148
+ }
149
+ }
150
+ },
151
+ "injectionPoints": {
152
+ "type": "array",
153
+ "items": {
154
+ "type": "object",
155
+ "required": [
156
+ "configKey",
157
+ "domain",
158
+ "component",
159
+ "surface",
160
+ "oldField",
161
+ "newField",
162
+ "contextFields",
163
+ "helper"
164
+ ],
165
+ "additionalProperties": false,
166
+ "properties": {
167
+ "configKey": {
168
+ "type": "string"
169
+ },
170
+ "domain": {
171
+ "enum": [
172
+ "products",
173
+ "catalogs",
174
+ "common"
175
+ ]
176
+ },
177
+ "component": {
178
+ "type": "string"
179
+ },
180
+ "surface": {
181
+ "type": "string"
182
+ },
183
+ "oldField": {
184
+ "type": "string"
185
+ },
186
+ "newField": {
187
+ "type": "string",
188
+ "pattern": "Template$"
189
+ },
190
+ "contextFields": {
191
+ "type": "array",
192
+ "items": {
193
+ "type": "string"
194
+ },
195
+ "minItems": 1
196
+ },
197
+ "helper": {
198
+ "type": "object",
199
+ "required": [
200
+ "javascript",
201
+ "vue",
202
+ "react",
203
+ "angular"
204
+ ],
205
+ "additionalProperties": false,
206
+ "properties": {
207
+ "javascript": {
208
+ "type": "object",
209
+ "description": "Plain-JS has ONE locked method (D-JsLock): assign a render function to the option (MountPoint wraps it in @pisapp/reactive-dom's reactiveMount).",
210
+ "required": [
211
+ "renderFunction"
212
+ ],
213
+ "additionalProperties": false,
214
+ "properties": {
215
+ "renderFunction": {
216
+ "type": "string"
217
+ }
218
+ }
219
+ },
220
+ "vue": {
221
+ "type": "string"
222
+ },
223
+ "react": {
224
+ "type": "string"
225
+ },
226
+ "angular": {
227
+ "type": "string"
228
+ }
229
+ }
230
+ }
231
+ }
232
+ }
233
+ },
234
+ "publicApiRefactors": {
235
+ "description": "Exact post-v7 public API reconciliation rules generated with the callback migration contract.",
236
+ "type": "object",
237
+ "required": [
238
+ "componentOptions",
239
+ "customElementTags",
240
+ "apiRoutes",
241
+ "typeRenames",
242
+ "moduleSpecifiers",
243
+ "manualReview",
244
+ "topLevelOptions"
245
+ ],
246
+ "additionalProperties": false,
247
+ "properties": {
248
+ "componentOptions": {
249
+ "type": "array",
250
+ "items": {
251
+ "type": "object",
252
+ "required": [
253
+ "domain",
254
+ "from",
255
+ "to"
256
+ ],
257
+ "additionalProperties": false,
258
+ "properties": {
259
+ "domain": {
260
+ "enum": [
261
+ "products",
262
+ "catalogs",
263
+ "classifications"
264
+ ]
265
+ },
266
+ "from": {
267
+ "type": "string"
268
+ },
269
+ "to": {
270
+ "type": "string"
271
+ },
272
+ "removed": {
273
+ "type": "boolean",
274
+ "description": "True when the v6 option has no v7 owner; the codemod flags it for manual removal instead of rewriting."
275
+ },
276
+ "subKeyRoutes": {
277
+ "type": "object",
278
+ "description": "Keys inside the legacy group that move to a DIFFERENT v7 group than the rule's default `to` (e.g. products details.actionTemplate → details.actions, omitted from DetailsDataOptions). Maps legacy sub-key → canonical group path.",
279
+ "additionalProperties": {
280
+ "type": "string"
281
+ }
282
+ },
283
+ "removedSubKeys": {
284
+ "type": "array",
285
+ "description": "Keys inside the legacy group that the v7 redesign removed with no owner at the rule's `to` path (e.g. classifications treeTypeTabs.displayModes → the per-tab items[] model). The group still renames; each present sub-key is flagged for manual review.",
286
+ "items": {
287
+ "type": "string"
288
+ }
289
+ }
290
+ }
291
+ }
292
+ },
293
+ "topLevelOptions": {
294
+ "type": "array",
295
+ "description": "Renames applied to top-level keys of the .init({...}) options object (siblings of baseUrl/components). domain '*' applies to every domain.",
296
+ "items": {
297
+ "type": "object",
298
+ "required": [
299
+ "domain",
300
+ "from",
301
+ "to"
302
+ ],
303
+ "additionalProperties": false,
304
+ "properties": {
305
+ "domain": {
306
+ "enum": [
307
+ "products",
308
+ "catalogs",
309
+ "classifications",
310
+ "*"
311
+ ]
312
+ },
313
+ "from": {
314
+ "type": "string"
315
+ },
316
+ "to": {
317
+ "type": "string"
318
+ },
319
+ "removed": {
320
+ "type": "boolean",
321
+ "description": "True when the v6 top-level option has no v7 owner (e.g. the light-DOM styling options); the codemod flags it for manual removal instead of rewriting."
322
+ }
323
+ }
324
+ }
325
+ },
326
+ "customElementTags": {
327
+ "type": "array",
328
+ "items": {
329
+ "type": "object",
330
+ "required": [
331
+ "domain",
332
+ "from",
333
+ "to"
334
+ ],
335
+ "additionalProperties": false,
336
+ "properties": {
337
+ "domain": {
338
+ "enum": [
339
+ "products",
340
+ "catalogs",
341
+ "classifications"
342
+ ]
343
+ },
344
+ "from": {
345
+ "type": "string",
346
+ "pattern": "^pis-"
347
+ },
348
+ "to": {
349
+ "type": "string",
350
+ "pattern": "^pis-"
351
+ }
352
+ }
353
+ }
354
+ },
355
+ "apiRoutes": {
356
+ "type": "array",
357
+ "items": {
358
+ "type": "object",
359
+ "required": [
360
+ "domain",
361
+ "from",
362
+ "to"
363
+ ],
364
+ "additionalProperties": false,
365
+ "properties": {
366
+ "domain": {
367
+ "enum": [
368
+ "products",
369
+ "catalogs"
370
+ ]
371
+ },
372
+ "from": {
373
+ "type": "string",
374
+ "pattern": "^/v1/"
375
+ },
376
+ "to": {
377
+ "type": "string",
378
+ "pattern": "^/v2/"
379
+ }
380
+ }
381
+ }
382
+ },
383
+ "typeRenames": {
384
+ "type": "array",
385
+ "description": "Exact word-boundary identifier rewrites — types and route-data fields (e.g. the Salesforce legacy-adapter I-prefixed types, or DisplayMode → SubView). The wire shapes are unchanged.",
386
+ "items": {
387
+ "type": "object",
388
+ "required": [
389
+ "domain",
390
+ "from",
391
+ "to"
392
+ ],
393
+ "additionalProperties": false,
394
+ "properties": {
395
+ "domain": {
396
+ "enum": [
397
+ "products",
398
+ "catalogs",
399
+ "classifications",
400
+ "*"
401
+ ]
402
+ },
403
+ "from": {
404
+ "type": "string",
405
+ "pattern": "^[A-Za-z]"
406
+ },
407
+ "to": {
408
+ "type": "string"
409
+ }
410
+ }
411
+ }
412
+ },
413
+ "routeFields": {
414
+ "type": "array",
415
+ "description": "Route-data restructurings scoped to route positions (init() route argument literals, setRoute() argument literals, and route-data member reads). Reroutes flat v6/pre-release fields into the per-view scope objects (products search/detail), renames the classifications tree selection, and moves relationshipDisplayMode out of route data into the per-relationship-type option.",
416
+ "items": {
417
+ "type": "object",
418
+ "required": [
419
+ "domain",
420
+ "from",
421
+ "to"
422
+ ],
423
+ "additionalProperties": false,
424
+ "properties": {
425
+ "domain": {
426
+ "enum": [
427
+ "products",
428
+ "catalogs",
429
+ "classifications",
430
+ "*"
431
+ ]
432
+ },
433
+ "from": {
434
+ "type": "string",
435
+ "pattern": "^[A-Za-z]"
436
+ },
437
+ "to": {
438
+ "type": "string"
439
+ },
440
+ "valueMap": {
441
+ "type": "object",
442
+ "description": "Maps quoted legacy route literals to canonical values while renaming the field.",
443
+ "additionalProperties": {
444
+ "type": "string"
445
+ }
446
+ },
447
+ "unmappedValueMessage": {
448
+ "type": "string",
449
+ "description": "Manual-review guidance for expressions, member accesses, and literals absent from valueMap."
450
+ }
451
+ }
452
+ }
453
+ },
454
+ "moduleSpecifiers": {
455
+ "type": "array",
456
+ "description": "v6 module specifier prefixes → v7 entries (e.g. pis-next-gen deep paths → @pisapp/core/<domain>). Longest prefix wins; only quoted specifiers after from/import/require are rewritten.",
457
+ "items": {
458
+ "type": "object",
459
+ "required": [
460
+ "domain",
461
+ "fromPrefix",
462
+ "to"
463
+ ],
464
+ "additionalProperties": false,
465
+ "properties": {
466
+ "domain": {
467
+ "enum": [
468
+ "products",
469
+ "catalogs",
470
+ "classifications",
471
+ "*"
472
+ ]
473
+ },
474
+ "fromPrefix": {
475
+ "type": "string"
476
+ },
477
+ "to": {
478
+ "type": "string"
479
+ }
480
+ }
481
+ }
482
+ },
483
+ "manualReview": {
484
+ "type": "array",
485
+ "items": {
486
+ "type": "object",
487
+ "required": [
488
+ "id",
489
+ "domain",
490
+ "detect",
491
+ "action",
492
+ "message"
493
+ ],
494
+ "additionalProperties": false,
495
+ "properties": {
496
+ "id": {
497
+ "type": "string"
498
+ },
499
+ "domain": {
500
+ "enum": [
501
+ "classifications",
502
+ "all"
503
+ ]
504
+ },
505
+ "detect": {
506
+ "type": "array",
507
+ "items": {
508
+ "type": "string"
509
+ },
510
+ "minItems": 1
511
+ },
512
+ "action": {
513
+ "const": "manual-review"
514
+ },
515
+ "message": {
516
+ "type": "string"
517
+ },
518
+ "advisory": {
519
+ "type": "boolean",
520
+ "description": "True when the detect token also occurs in legitimate v7 code, so the rule is reported as an advisory that never fails a --check gate (e.g. dataInterceptor, which is the v7 option name itself)."
521
+ }
522
+ }
523
+ }
524
+ }
525
+ }
526
+ },
527
+ "instanceAttributes": {
528
+ "type": "array",
529
+ "description": "Reserved by Phase 1.5; filled by Phase 3b.3. One entry per removed instance-component attribute \u2192 its IOptions/IRouteData target + transform.",
530
+ "items": {
531
+ "type": "object",
532
+ "required": [
533
+ "attr",
534
+ "domain",
535
+ "target",
536
+ "transform"
537
+ ],
538
+ "additionalProperties": false,
539
+ "properties": {
540
+ "attr": {
541
+ "type": "string"
542
+ },
543
+ "domain": {
544
+ "enum": [
545
+ "products",
546
+ "catalogs",
547
+ "classifications",
548
+ "all"
549
+ ]
550
+ },
551
+ "target": {
552
+ "type": "string"
553
+ },
554
+ "transform": {
555
+ "type": "string"
556
+ },
557
+ "removed": {
558
+ "type": "boolean",
559
+ "description": "True when the v6 attribute has no v7 owner (e.g. styling attributes removed by the light-DOM contract); the codemod flags it for manual review instead of writing an option."
560
+ }
561
+ }
562
+ }
563
+ }
564
+ },
565
+ "definitions": {
566
+ "webApiTransform": {
567
+ "type": "object",
568
+ "required": ["id", "strategy", "endpoints", "from", "to"],
569
+ "additionalProperties": false,
570
+ "properties": {
571
+ "id": { "type": "string" },
572
+ "strategy": {
573
+ "enum": [
574
+ "rename-property",
575
+ "move-property",
576
+ "criteria-array-to-group",
577
+ "list-to-criterion",
578
+ "sales-unit-to-criteria",
579
+ "sales-erp-to-criteria",
580
+ "boolean-to-data-type",
581
+ "translation-domains",
582
+ "filter-value-object",
583
+ "load-sparse-group",
584
+ "remove-property"
585
+ ]
586
+ },
587
+ "endpoints": { "type": "array", "items": { "type": "string" }, "minItems": 1 },
588
+ "from": { "type": "string" },
589
+ "to": { "type": "string" },
590
+ "criterionCode": { "type": "string" },
591
+ "dataType": { "type": "string" }
592
+ }
593
+ }
594
+ }
595
+ }
package/package.json ADDED
@@ -0,0 +1,68 @@
1
+ {
2
+ "name": "@pisapp/core",
3
+ "version": "7.0.0-dev.20260916-153034",
4
+ "type": "module",
5
+ "main": "./index.js",
6
+ "module": "./index.js",
7
+ "types": "./types.d.ts",
8
+ "exports": {
9
+ "./migration/*": "./migration/*",
10
+ "./package.json": "./package.json",
11
+ "./styles/*": "./styles/*",
12
+ ".": {
13
+ "types": "./types.d.ts",
14
+ "import": "./index.js"
15
+ },
16
+ "./core": {
17
+ "types": "./types.d.ts",
18
+ "import": "./core.js"
19
+ },
20
+ "./products": {
21
+ "types": "./types.d.ts",
22
+ "import": "./products.js"
23
+ },
24
+ "./catalogs": {
25
+ "types": "./types.d.ts",
26
+ "import": "./catalogs.js"
27
+ },
28
+ "./classifications": {
29
+ "types": "./types.d.ts",
30
+ "import": "./classifications.js"
31
+ },
32
+ "./pis.js": "./pis.js",
33
+ "./pis-csp.js": "./pis-csp.js"
34
+ },
35
+ "files": [
36
+ "*.js",
37
+ "*.d.ts",
38
+ "pis.js.map",
39
+ "pis-csp.js.map",
40
+ "types",
41
+ "generated",
42
+ "styles",
43
+ "chunks",
44
+ "migration",
45
+ "LICENSE",
46
+ "THIRD-PARTY-NOTICES.txt"
47
+ ],
48
+ "license": "SEE LICENSE IN LICENSE",
49
+ "author": "ABB Asea Brown Boveri Ltd",
50
+ "peerDependencies": {
51
+ "vue": ">=3.5.17 <4"
52
+ },
53
+ "sideEffects": [
54
+ "./index.js",
55
+ "./core.js",
56
+ "./products.js",
57
+ "./catalogs.js",
58
+ "./classifications.js"
59
+ ],
60
+ "publishConfig": {
61
+ "access": "public"
62
+ },
63
+ "pisRelease": {
64
+ "version": "7.0.0-dev.20260916-153034",
65
+ "channel": "dev",
66
+ "commit": "3cfd54cc87975b643036674bfb2d000d81973ac5"
67
+ }
68
+ }