@oim-media/spec 1.27.8 → 1.27.9

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 (57) hide show
  1. package/BINARY_SPEC.md +190 -186
  2. package/CANONICAL_SPEC.md +409 -409
  3. package/LICENSE +55 -55
  4. package/NOTICE +6 -6
  5. package/README.md +446 -444
  6. package/action-cases.json +13 -13
  7. package/artistic-text-cases.json +690 -690
  8. package/canonical-cases.json +6 -0
  9. package/keyframe-cases.json +32 -32
  10. package/keys.json +22 -22
  11. package/marks-cases.json +34 -34
  12. package/package.json +2 -1
  13. package/pattern-cases.json +552 -552
  14. package/schema/oim.schema.json +2920 -2920
  15. package/schema/ovm.schema.json +2701 -2701
  16. package/text-effect-cases.json +835 -835
  17. package/tools/parity-core.mjs +122 -122
  18. package/tools/parity.mjs +86 -86
  19. package/vectors/README.md +103 -103
  20. package/vectors/accessibility.expected.json +67 -67
  21. package/vectors/artistic-text.expected.json +84 -84
  22. package/vectors/asymmetric-borders.expected.json +29 -29
  23. package/vectors/background-pattern-order.expected.json +95 -95
  24. package/vectors/basic-text.expected.json +29 -29
  25. package/vectors/color-blending-opacity.expected.json +47 -47
  26. package/vectors/crop.expected.json +32 -32
  27. package/vectors/embedded-font-woff.expected.json +57 -57
  28. package/vectors/extreme-aspect-ratios.expected.json +29 -29
  29. package/vectors/filter-effects.expected.json +33 -33
  30. package/vectors/flip.expected.json +47 -47
  31. package/vectors/frame-shapes.expected.json +73 -73
  32. package/vectors/full-monty-composite.expected.json +96 -96
  33. package/vectors/golden/exceptions.json +3 -3
  34. package/vectors/groups-and-parallax.expected.json +90 -90
  35. package/vectors/image-fill.expected.json +54 -54
  36. package/vectors/interactive-chained-actions.expected.json +77 -77
  37. package/vectors/interactive-hover.expected.json +36 -36
  38. package/vectors/interactive.expected.json +121 -121
  39. package/vectors/layer-blur.expected.json +48 -48
  40. package/vectors/layer-grain.expected.json +52 -52
  41. package/vectors/layer-ordering-zindex.expected.json +62 -62
  42. package/vectors/legacy-text-chunk.expected.json +29 -29
  43. package/vectors/media-filters.expected.json +50 -50
  44. package/vectors/multi-container-layout.expected.json +45 -45
  45. package/vectors/multilang-cjk-rtl.expected.json +30 -30
  46. package/vectors/nested-groups.expected.json +68 -68
  47. package/vectors/palettes.expected.json +57 -57
  48. package/vectors/parallax-infinite.expected.json +39 -39
  49. package/vectors/pattern-color-roles.expected.json +68 -68
  50. package/vectors/reedit-english.expected.json +45 -45
  51. package/vectors/reveal-and-play.expected.json +107 -107
  52. package/vectors/shadow-effects.expected.json +34 -34
  53. package/vectors/shape-shadows.expected.json +62 -62
  54. package/vectors/strokes-and-borders.expected.json +31 -31
  55. package/vectors/text-runs-precalculated.expected.json +46 -46
  56. package/vectors/transparent-background.expected.json +30 -30
  57. package/vectors/typography-styling.expected.json +34 -34
@@ -1,29 +1,29 @@
1
- {
2
- "description": "Ultra-wide panoramic canvas testing container consistency.",
3
- "canvas": {
4
- "natural_height": 400,
5
- "natural_width": 1600
6
- },
7
- "signed": true,
8
- "key_version": "v1",
9
- "slots": [
10
- {
11
- "id": "banner_texto",
12
- "type": "text",
13
- "position": [
14
- 5,
15
- 25
16
- ],
17
- "name": "Banner Panorámico",
18
- "content": {
19
- "es": "Panorámica 4:1"
20
- },
21
- "style": {
22
- "width": "75.0cqw",
23
- "height": "11.25cqw",
24
- "fontSize": "4.0cqw",
25
- "fillColor": "#e11d48"
26
- }
27
- }
28
- ]
29
- }
1
+ {
2
+ "description": "Ultra-wide panoramic canvas testing container consistency.",
3
+ "canvas": {
4
+ "natural_height": 400,
5
+ "natural_width": 1600
6
+ },
7
+ "signed": true,
8
+ "key_version": "v1",
9
+ "slots": [
10
+ {
11
+ "id": "banner_texto",
12
+ "type": "text",
13
+ "position": [
14
+ 5,
15
+ 25
16
+ ],
17
+ "name": "Banner Panorámico",
18
+ "content": {
19
+ "es": "Panorámica 4:1"
20
+ },
21
+ "style": {
22
+ "width": "75.0cqw",
23
+ "height": "11.25cqw",
24
+ "fontSize": "4.0cqw",
25
+ "fillColor": "#e11d48"
26
+ }
27
+ }
28
+ ]
29
+ }
@@ -1,33 +1,33 @@
1
- {
2
- "description": "CSS visual filters: blur, brightness, contrast, saturation and hue rotation.",
3
- "canvas": {
4
- "natural_height": 600,
5
- "natural_width": 800
6
- },
7
- "signed": true,
8
- "key_version": "v1",
9
- "slots": [
10
- {
11
- "id": "capa_filtrada",
12
- "type": "geo",
13
- "position": [
14
- 15,
15
- 13.3333
16
- ],
17
- "name": "Capa con Filtros",
18
- "content": {
19
- "es": ""
20
- },
21
- "style": {
22
- "width": "37.5cqw",
23
- "height": "25.0cqw",
24
- "fillColor": "#059669",
25
- "filterBlur": 3,
26
- "filterBrightness": 115,
27
- "filterContrast": 125,
28
- "filterSaturate": 140,
29
- "filterHueRotate": 30
30
- }
31
- }
32
- ]
33
- }
1
+ {
2
+ "description": "CSS visual filters: blur, brightness, contrast, saturation and hue rotation.",
3
+ "canvas": {
4
+ "natural_height": 600,
5
+ "natural_width": 800
6
+ },
7
+ "signed": true,
8
+ "key_version": "v1",
9
+ "slots": [
10
+ {
11
+ "id": "capa_filtrada",
12
+ "type": "geo",
13
+ "position": [
14
+ 15,
15
+ 13.3333
16
+ ],
17
+ "name": "Capa con Filtros",
18
+ "content": {
19
+ "es": ""
20
+ },
21
+ "style": {
22
+ "width": "37.5cqw",
23
+ "height": "25.0cqw",
24
+ "fillColor": "#059669",
25
+ "filterBlur": 3,
26
+ "filterBrightness": 115,
27
+ "filterContrast": 125,
28
+ "filterSaturate": 140,
29
+ "filterHueRotate": 30
30
+ }
31
+ }
32
+ ]
33
+ }
@@ -1,47 +1,47 @@
1
- {
2
- "description": "Layer flip (contract 1.14.0): `flipX` on one shape and `flipY` on another, rotated; each flips on its own axes.",
3
- "canvas": {
4
- "natural_height": 600,
5
- "natural_width": 800
6
- },
7
- "signed": true,
8
- "key_version": "v1",
9
- "slots": [
10
- {
11
- "id": "horizontal",
12
- "type": "geo",
13
- "position": [
14
- 10,
15
- 25
16
- ],
17
- "name": "Horizontal",
18
- "content": {
19
- "es": ""
20
- },
21
- "style": {
22
- "width": "35.0cqw",
23
- "height": "22.5cqw",
24
- "fillColor": "#e76f51",
25
- "flipX": true
26
- }
27
- },
28
- {
29
- "id": "vertical",
30
- "type": "geo",
31
- "position": [
32
- 55,
33
- 25
34
- ],
35
- "name": "Vertical",
36
- "content": {
37
- "es": ""
38
- },
39
- "style": {
40
- "width": "35.0cqw",
41
- "height": "22.5cqw",
42
- "fillColor": "#264653",
43
- "flipY": true
44
- }
45
- }
46
- ]
47
- }
1
+ {
2
+ "description": "Layer flip (contract 1.14.0): `flipX` on one shape and `flipY` on another, rotated; each flips on its own axes.",
3
+ "canvas": {
4
+ "natural_height": 600,
5
+ "natural_width": 800
6
+ },
7
+ "signed": true,
8
+ "key_version": "v1",
9
+ "slots": [
10
+ {
11
+ "id": "horizontal",
12
+ "type": "geo",
13
+ "position": [
14
+ 10,
15
+ 25
16
+ ],
17
+ "name": "Horizontal",
18
+ "content": {
19
+ "es": ""
20
+ },
21
+ "style": {
22
+ "width": "35.0cqw",
23
+ "height": "22.5cqw",
24
+ "fillColor": "#e76f51",
25
+ "flipX": true
26
+ }
27
+ },
28
+ {
29
+ "id": "vertical",
30
+ "type": "geo",
31
+ "position": [
32
+ 55,
33
+ 25
34
+ ],
35
+ "name": "Vertical",
36
+ "content": {
37
+ "es": ""
38
+ },
39
+ "style": {
40
+ "width": "35.0cqw",
41
+ "height": "22.5cqw",
42
+ "fillColor": "#264653",
43
+ "flipY": true
44
+ }
45
+ }
46
+ ]
47
+ }
@@ -1,73 +1,73 @@
1
- {
2
- "description": "Frame shapes (contract 1.19.0): a cloud with a photo, a custom SVG path with a photo (viewBox 24) and a star with a flipped photo.",
3
- "canvas": {
4
- "natural_height": 600,
5
- "natural_width": 800
6
- },
7
- "signed": true,
8
- "key_version": "v1",
9
- "slots": [
10
- {
11
- "id": "marco-nube",
12
- "type": "geo",
13
- "position": [
14
- 10,
15
- 25
16
- ],
17
- "name": "Marco nube",
18
- "content": {
19
- "es": ""
20
- },
21
- "style": {
22
- "width": "35.0cqw",
23
- "height": "35.0cqw",
24
- "fillColor": "#d4d4d8",
25
- "fillImage": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAEElEQVR4nGN4nh8IRwzEcQC5Ehpxr683xgAAAABJRU5ErkJggg==",
26
- "fillType": "image",
27
- "geoShape": "cloud"
28
- }
29
- },
30
- {
31
- "id": "marco-svg",
32
- "type": "geo",
33
- "position": [
34
- 55,
35
- 25
36
- ],
37
- "name": "Marco SVG propio",
38
- "content": {
39
- "es": ""
40
- },
41
- "style": {
42
- "width": "35.0cqw",
43
- "height": "35.0cqw",
44
- "fillColor": "#d4d4d8",
45
- "fillImage": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAEElEQVR4nGN4nh8IRwzEcQC5Ehpxr683xgAAAABJRU5ErkJggg==",
46
- "fillType": "image",
47
- "svgPath": "M12 2L22 22H2Z",
48
- "svgViewBox": "0 0 24 24"
49
- }
50
- },
51
- {
52
- "id": "marco-estrella",
53
- "type": "geo",
54
- "position": [
55
- 10,
56
- 63.3333
57
- ],
58
- "name": "Marco estrella volteado",
59
- "content": {
60
- "es": ""
61
- },
62
- "style": {
63
- "width": "25.0cqw",
64
- "height": "25.0cqw",
65
- "fillColor": "#d4d4d8",
66
- "fillImage": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAEElEQVR4nGN4nh8IRwzEcQC5Ehpxr683xgAAAABJRU5ErkJggg==",
67
- "fillType": "image",
68
- "geoShape": "star",
69
- "fillImageFlipX": true
70
- }
71
- }
72
- ]
73
- }
1
+ {
2
+ "description": "Frame shapes (contract 1.19.0): a cloud with a photo, a custom SVG path with a photo (viewBox 24) and a star with a flipped photo.",
3
+ "canvas": {
4
+ "natural_height": 600,
5
+ "natural_width": 800
6
+ },
7
+ "signed": true,
8
+ "key_version": "v1",
9
+ "slots": [
10
+ {
11
+ "id": "marco-nube",
12
+ "type": "geo",
13
+ "position": [
14
+ 10,
15
+ 25
16
+ ],
17
+ "name": "Marco nube",
18
+ "content": {
19
+ "es": ""
20
+ },
21
+ "style": {
22
+ "width": "35.0cqw",
23
+ "height": "35.0cqw",
24
+ "fillColor": "#d4d4d8",
25
+ "fillImage": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAEElEQVR4nGN4nh8IRwzEcQC5Ehpxr683xgAAAABJRU5ErkJggg==",
26
+ "fillType": "image",
27
+ "geoShape": "cloud"
28
+ }
29
+ },
30
+ {
31
+ "id": "marco-svg",
32
+ "type": "geo",
33
+ "position": [
34
+ 55,
35
+ 25
36
+ ],
37
+ "name": "Marco SVG propio",
38
+ "content": {
39
+ "es": ""
40
+ },
41
+ "style": {
42
+ "width": "35.0cqw",
43
+ "height": "35.0cqw",
44
+ "fillColor": "#d4d4d8",
45
+ "fillImage": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAEElEQVR4nGN4nh8IRwzEcQC5Ehpxr683xgAAAABJRU5ErkJggg==",
46
+ "fillType": "image",
47
+ "svgPath": "M12 2L22 22H2Z",
48
+ "svgViewBox": "0 0 24 24"
49
+ }
50
+ },
51
+ {
52
+ "id": "marco-estrella",
53
+ "type": "geo",
54
+ "position": [
55
+ 10,
56
+ 63.3333
57
+ ],
58
+ "name": "Marco estrella volteado",
59
+ "content": {
60
+ "es": ""
61
+ },
62
+ "style": {
63
+ "width": "25.0cqw",
64
+ "height": "25.0cqw",
65
+ "fillColor": "#d4d4d8",
66
+ "fillImage": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAEElEQVR4nGN4nh8IRwzEcQC5Ehpxr683xgAAAABJRU5ErkJggg==",
67
+ "fillType": "image",
68
+ "geoShape": "star",
69
+ "fillImageFlipX": true
70
+ }
71
+ }
72
+ ]
73
+ }
@@ -1,96 +1,96 @@
1
- {
2
- "description": "Master document combining interactivity, multilingual text, shadows, parallax and hierarchy.",
3
- "canvas": {
4
- "natural_height": 600,
5
- "natural_width": 800
6
- },
7
- "signed": true,
8
- "key_version": "v1",
9
- "slots": [
10
- {
11
- "id": "comp_grupo",
12
- "type": "group",
13
- "position": [
14
- 6.25,
15
- 8.3333
16
- ],
17
- "name": "Grupo Compuesto",
18
- "content": {
19
- "es": ""
20
- },
21
- "style": {
22
- "width": "87.5cqw",
23
- "height": "62.5cqw",
24
- "childIds": [
25
- "comp_tarjeta",
26
- "comp_boton"
27
- ]
28
- }
29
- },
30
- {
31
- "id": "comp_tarjeta",
32
- "type": "geo",
33
- "position": [
34
- 7.5,
35
- 10
36
- ],
37
- "name": "Tarjeta Compuesta",
38
- "content": {
39
- "es": ""
40
- },
41
- "style": {
42
- "width": "50.0cqw",
43
- "height": "31.25cqw",
44
- "borderRadius": "16px",
45
- "fillColor": "#047857",
46
- "groupId": "comp_grupo",
47
- "parallax": {
48
- "axis": "both",
49
- "depth": 0.6,
50
- "enabled": true,
51
- "mode": "mouse"
52
- },
53
- "shadowEnabled": true,
54
- "shadowColor": "#000000",
55
- "shadowBlur": 15,
56
- "shadowOffsetY": 8,
57
- "shadowOpacity": 40
58
- }
59
- },
60
- {
61
- "id": "comp_boton",
62
- "type": "text",
63
- "position": [
64
- 10,
65
- 58.3333
66
- ],
67
- "name": "Botón Compuesto",
68
- "content": {
69
- "en": "Action",
70
- "es": "Acción"
71
- },
72
- "style": {
73
- "width": "30.0cqw",
74
- "height": "7.5cqw",
75
- "fontSize": "3.0cqw",
76
- "fillColor": "#d97706",
77
- "groupId": "comp_grupo",
78
- "isInteractive": true,
79
- "states": {
80
- "active": {
81
- "actions": [
82
- {
83
- "target": "comp_tarjeta",
84
- "type": "toggle"
85
- }
86
- ]
87
- },
88
- "hover": {
89
- "opacity": 90,
90
- "scale": 104
91
- }
92
- }
93
- }
94
- }
95
- ]
96
- }
1
+ {
2
+ "description": "Master document combining interactivity, multilingual text, shadows, parallax and hierarchy.",
3
+ "canvas": {
4
+ "natural_height": 600,
5
+ "natural_width": 800
6
+ },
7
+ "signed": true,
8
+ "key_version": "v1",
9
+ "slots": [
10
+ {
11
+ "id": "comp_grupo",
12
+ "type": "group",
13
+ "position": [
14
+ 6.25,
15
+ 8.3333
16
+ ],
17
+ "name": "Grupo Compuesto",
18
+ "content": {
19
+ "es": ""
20
+ },
21
+ "style": {
22
+ "width": "87.5cqw",
23
+ "height": "62.5cqw",
24
+ "childIds": [
25
+ "comp_tarjeta",
26
+ "comp_boton"
27
+ ]
28
+ }
29
+ },
30
+ {
31
+ "id": "comp_tarjeta",
32
+ "type": "geo",
33
+ "position": [
34
+ 7.5,
35
+ 10
36
+ ],
37
+ "name": "Tarjeta Compuesta",
38
+ "content": {
39
+ "es": ""
40
+ },
41
+ "style": {
42
+ "width": "50.0cqw",
43
+ "height": "31.25cqw",
44
+ "borderRadius": "16px",
45
+ "fillColor": "#047857",
46
+ "groupId": "comp_grupo",
47
+ "parallax": {
48
+ "axis": "both",
49
+ "depth": 0.6,
50
+ "enabled": true,
51
+ "mode": "mouse"
52
+ },
53
+ "shadowEnabled": true,
54
+ "shadowColor": "#000000",
55
+ "shadowBlur": 15,
56
+ "shadowOffsetY": 8,
57
+ "shadowOpacity": 40
58
+ }
59
+ },
60
+ {
61
+ "id": "comp_boton",
62
+ "type": "text",
63
+ "position": [
64
+ 10,
65
+ 58.3333
66
+ ],
67
+ "name": "Botón Compuesto",
68
+ "content": {
69
+ "en": "Action",
70
+ "es": "Acción"
71
+ },
72
+ "style": {
73
+ "width": "30.0cqw",
74
+ "height": "7.5cqw",
75
+ "fontSize": "3.0cqw",
76
+ "fillColor": "#d97706",
77
+ "groupId": "comp_grupo",
78
+ "isInteractive": true,
79
+ "states": {
80
+ "active": {
81
+ "actions": [
82
+ {
83
+ "target": "comp_tarjeta",
84
+ "type": "toggle"
85
+ }
86
+ ]
87
+ },
88
+ "hover": {
89
+ "opacity": 90,
90
+ "scale": 104
91
+ }
92
+ }
93
+ }
94
+ }
95
+ ]
96
+ }
@@ -1,3 +1,3 @@
1
- {
2
- "flutter": {}
3
- }
1
+ {
2
+ "flutter": {}
3
+ }