@openpresentation/opf 0.15.1 → 0.16.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.
Files changed (73) hide show
  1. package/README.md +4 -0
  2. package/dist/{catalog-refs-BSfGELpt.d.ts → catalog-refs-_anZs-Qz.d.ts} +1 -1
  3. package/dist/{catalog-schemas-CinPh5WA.d.ts → catalog-schemas-BZCjgAxu.d.ts} +1 -1
  4. package/dist/catalog.d.ts +2 -2
  5. package/dist/catalog.js +609 -121
  6. package/dist/{chunk-5FTUIDUH.js → chunk-3XDRQYWZ.js} +1 -1
  7. package/dist/{chunk-O744SXXA.js → chunk-5PDN7BN6.js} +202 -95
  8. package/dist/{chunk-VGAOJEY7.js → chunk-5TO6I3GB.js} +1 -1
  9. package/dist/{chunk-3RKB4RDJ.js → chunk-5UEUAW57.js} +4 -2
  10. package/dist/{chunk-ZPU46TFA.js → chunk-6OR326EA.js} +1 -1
  11. package/dist/{chunk-UBFJ2QHH.js → chunk-BSYQDWT4.js} +12 -2
  12. package/dist/{chunk-3JG4YXWF.js → chunk-FQSIIADJ.js} +12 -5
  13. package/dist/chunk-K4DQQIT4.js +319 -0
  14. package/dist/chunk-KINQFU6X.js +51 -0
  15. package/dist/{chunk-374R35TJ.js → chunk-NAWQR7MN.js} +1 -1
  16. package/dist/{chunk-QDI75P2M.js → chunk-PX5AWL7Y.js} +141 -13
  17. package/dist/{chunk-U4J75TRG.js → chunk-SMLMI6IZ.js} +5 -2
  18. package/dist/{chunk-TWQJLI6E.js → chunk-UM24JFUE.js} +2 -2
  19. package/dist/{chunk-2CJPC4HI.js → chunk-WEDGVC5W.js} +185 -11
  20. package/dist/{composition-D2tghM82.d.ts → composition-D4ADF5c-.d.ts} +88 -9
  21. package/dist/composition.d.ts +2 -2
  22. package/dist/composition.js +1 -1
  23. package/dist/convert.d.ts +3 -3
  24. package/dist/convert.js +7 -7
  25. package/dist/data.d.ts +27 -10
  26. package/dist/data.js +2 -2
  27. package/dist/deck.d.ts +77 -0
  28. package/dist/deck.js +12 -0
  29. package/dist/diff.js +5 -5
  30. package/dist/docs.js +24 -24
  31. package/dist/examples.d.ts +1 -1
  32. package/dist/examples.js +2992 -748
  33. package/dist/format.js +2 -2
  34. package/dist/index.d.ts +9 -8
  35. package/dist/index.js +15 -13
  36. package/dist/markdown.d.ts +6 -7
  37. package/dist/markdown.js +7 -7
  38. package/dist/{pagination-wedbe7eq.d.ts → pagination-DzZPFheM.d.ts} +2 -2
  39. package/dist/pagination.d.ts +3 -3
  40. package/dist/pagination.js +4 -4
  41. package/dist/patch.js +4 -4
  42. package/dist/{presentation-CDKQVkyI.d.ts → presentation-COrFuj2g.d.ts} +16 -8
  43. package/dist/repo-readme.js +1 -1
  44. package/dist/schemas.d.ts +14 -0
  45. package/dist/schemas.js +1 -1
  46. package/dist/spec/catalogs/layouts/business-model-canvas.json +66 -1
  47. package/dist/spec/catalogs/layouts/capability-map.json +53 -3
  48. package/dist/spec/catalogs/layouts/chart-2x.json +32 -8
  49. package/dist/spec/catalogs/layouts/chart-3x-bottom-vertical-title-left.json +16 -10
  50. package/dist/spec/catalogs/layouts/chart-3x-left-title-center.json +16 -10
  51. package/dist/spec/catalogs/layouts/chart-3x-left.json +16 -10
  52. package/dist/spec/catalogs/layouts/chart-3x-right-title-center.json +16 -10
  53. package/dist/spec/catalogs/layouts/chart-3x-right.json +16 -10
  54. package/dist/spec/catalogs/layouts/chart-3x-top-vertical-title-left.json +16 -10
  55. package/dist/spec/catalogs/layouts/chart-3x.json +48 -12
  56. package/dist/spec/catalogs/layouts/dashboard.json +37 -5
  57. package/dist/spec/catalogs/layouts/image-2x.json +32 -8
  58. package/dist/spec/catalogs/layouts/image-3x.json +48 -12
  59. package/dist/spec/catalogs/layouts/index.json +1 -1
  60. package/dist/spec/catalogs/layouts/kpi-scorecard.json +48 -3
  61. package/dist/spec/catalogs/layouts/logic-tree.json +69 -0
  62. package/dist/spec/catalogs/layouts/market-size.json +26 -2
  63. package/dist/spec/catalogs/layouts/org-chart.json +53 -6
  64. package/dist/spec/catalogs/manifest.json +3 -3
  65. package/dist/spec/schemas/layout.schema.json +172 -5
  66. package/dist/spec/schemas/opf.schema.json +11 -6
  67. package/dist/types.d.ts +9 -31
  68. package/dist/{validation-types-BOcY9GTs.d.ts → validation-types-HxIgJfKx.d.ts} +2 -2
  69. package/dist/validator.d.ts +6 -6
  70. package/dist/validator.js +3 -3
  71. package/dist/yaml.d.ts +4 -4
  72. package/dist/yaml.js +8 -321
  73. package/package.json +5 -1
package/dist/catalog.js CHANGED
@@ -2161,13 +2161,58 @@ var layouts = [
2161
2161
  "type": "title"
2162
2162
  },
2163
2163
  {
2164
- "type": "metric"
2164
+ "type": "group",
2165
+ "composition": {
2166
+ "mode": "column",
2167
+ "weights": [
2168
+ 2,
2169
+ 1
2170
+ ]
2171
+ },
2172
+ "placeholders": [
2173
+ {
2174
+ "type": "metric"
2175
+ },
2176
+ {
2177
+ "type": "text"
2178
+ }
2179
+ ]
2165
2180
  },
2166
2181
  {
2167
- "type": "metric"
2182
+ "type": "group",
2183
+ "composition": {
2184
+ "mode": "column",
2185
+ "weights": [
2186
+ 2,
2187
+ 1
2188
+ ]
2189
+ },
2190
+ "placeholders": [
2191
+ {
2192
+ "type": "metric"
2193
+ },
2194
+ {
2195
+ "type": "text"
2196
+ }
2197
+ ]
2168
2198
  },
2169
2199
  {
2170
- "type": "metric"
2200
+ "type": "group",
2201
+ "composition": {
2202
+ "mode": "column",
2203
+ "weights": [
2204
+ 2,
2205
+ 1
2206
+ ]
2207
+ },
2208
+ "placeholders": [
2209
+ {
2210
+ "type": "metric"
2211
+ },
2212
+ {
2213
+ "type": "text"
2214
+ }
2215
+ ]
2171
2216
  }
2172
2217
  ],
2173
2218
  "tags": [
@@ -2186,8 +2231,8 @@ var layouts = [
2186
2231
  "$schema": "https://openpresentation.org/schema/opf-layout/v1",
2187
2232
  "id": "dashboard",
2188
2233
  "name": "Dashboard",
2189
- "summary": "Multiple small charts in a grid for an at-a-glance overview. Bird's-eye view of a business or function.",
2190
- "description": "Multiple small charts in a grid for an at-a-glance overview. Bird's-eye view of a business or function.",
2234
+ "summary": "Headline metrics above a row of small charts for an at-a-glance overview. Bird's-eye view of a business or function.",
2235
+ "description": "Headline metrics above a row of small charts for an at-a-glance overview. Bird's-eye view of a business or function.",
2191
2236
  "design": {
2192
2237
  "titleAlignment": "left",
2193
2238
  "contentAlignment": "left",
@@ -2199,10 +2244,38 @@ var layouts = [
2199
2244
  "type": "title"
2200
2245
  },
2201
2246
  {
2202
- "type": "chart"
2247
+ "type": "group",
2248
+ "composition": {
2249
+ "mode": "row"
2250
+ },
2251
+ "placeholders": [
2252
+ {
2253
+ "type": "metric"
2254
+ },
2255
+ {
2256
+ "type": "metric"
2257
+ },
2258
+ {
2259
+ "type": "metric"
2260
+ }
2261
+ ]
2203
2262
  },
2204
2263
  {
2205
- "type": "chart"
2264
+ "type": "group",
2265
+ "composition": {
2266
+ "mode": "row"
2267
+ },
2268
+ "placeholders": [
2269
+ {
2270
+ "type": "chart"
2271
+ },
2272
+ {
2273
+ "type": "chart"
2274
+ },
2275
+ {
2276
+ "type": "chart"
2277
+ }
2278
+ ]
2206
2279
  }
2207
2280
  ],
2208
2281
  "tags": [
@@ -2214,7 +2287,11 @@ var layouts = [
2214
2287
  "vectorSrc": "https://www.pptx.gallery/layout-previews/dashboard.svg"
2215
2288
  },
2216
2289
  "composition": {
2217
- "mode": "row"
2290
+ "mode": "column",
2291
+ "weights": [
2292
+ 2,
2293
+ 3
2294
+ ]
2218
2295
  }
2219
2296
  },
2220
2297
  {
@@ -2515,7 +2592,7 @@ var layouts = [
2515
2592
  "design": {
2516
2593
  "titleAlignment": "left",
2517
2594
  "contentAlignment": "left",
2518
- "contentBox": false,
2595
+ "contentBox": true,
2519
2596
  "contentDirection": "horizontal"
2520
2597
  },
2521
2598
  "placeholders": [
@@ -2523,10 +2600,57 @@ var layouts = [
2523
2600
  "type": "title"
2524
2601
  },
2525
2602
  {
2526
- "type": "chart"
2603
+ "type": "text"
2527
2604
  },
2528
2605
  {
2529
- "type": "chart"
2606
+ "type": "group",
2607
+ "composition": {
2608
+ "mode": "row"
2609
+ },
2610
+ "placeholders": [
2611
+ {
2612
+ "type": "group",
2613
+ "composition": {
2614
+ "mode": "column"
2615
+ },
2616
+ "placeholders": [
2617
+ {
2618
+ "type": "text"
2619
+ },
2620
+ {
2621
+ "type": "text"
2622
+ }
2623
+ ]
2624
+ },
2625
+ {
2626
+ "type": "group",
2627
+ "composition": {
2628
+ "mode": "column"
2629
+ },
2630
+ "placeholders": [
2631
+ {
2632
+ "type": "text"
2633
+ },
2634
+ {
2635
+ "type": "text"
2636
+ }
2637
+ ]
2638
+ },
2639
+ {
2640
+ "type": "group",
2641
+ "composition": {
2642
+ "mode": "column"
2643
+ },
2644
+ "placeholders": [
2645
+ {
2646
+ "type": "text"
2647
+ },
2648
+ {
2649
+ "type": "text"
2650
+ }
2651
+ ]
2652
+ }
2653
+ ]
2530
2654
  }
2531
2655
  ],
2532
2656
  "tags": [
@@ -2538,10 +2662,10 @@ var layouts = [
2538
2662
  "vectorSrc": "https://www.pptx.gallery/layout-previews/org-chart.svg"
2539
2663
  },
2540
2664
  "composition": {
2541
- "mode": "row",
2665
+ "mode": "column",
2542
2666
  "weights": [
2543
- 2,
2544
- 1
2667
+ 1,
2668
+ 3
2545
2669
  ]
2546
2670
  }
2547
2671
  },
@@ -2555,15 +2679,62 @@ var layouts = [
2555
2679
  "titleAlignment": "left",
2556
2680
  "contentAlignment": "left",
2557
2681
  "contentBox": true,
2558
- "contentDirection": "horizontal",
2559
- "imageFit": "cover"
2682
+ "contentDirection": "horizontal"
2560
2683
  },
2561
2684
  "placeholders": [
2562
2685
  {
2563
2686
  "type": "title"
2564
2687
  },
2565
2688
  {
2566
- "type": "image"
2689
+ "type": "group",
2690
+ "composition": {
2691
+ "mode": "column"
2692
+ },
2693
+ "placeholders": [
2694
+ {
2695
+ "type": "text"
2696
+ },
2697
+ {
2698
+ "type": "text"
2699
+ },
2700
+ {
2701
+ "type": "text"
2702
+ }
2703
+ ]
2704
+ },
2705
+ {
2706
+ "type": "group",
2707
+ "composition": {
2708
+ "mode": "column"
2709
+ },
2710
+ "placeholders": [
2711
+ {
2712
+ "type": "text"
2713
+ },
2714
+ {
2715
+ "type": "text"
2716
+ },
2717
+ {
2718
+ "type": "text"
2719
+ }
2720
+ ]
2721
+ },
2722
+ {
2723
+ "type": "group",
2724
+ "composition": {
2725
+ "mode": "column"
2726
+ },
2727
+ "placeholders": [
2728
+ {
2729
+ "type": "text"
2730
+ },
2731
+ {
2732
+ "type": "text"
2733
+ },
2734
+ {
2735
+ "type": "text"
2736
+ }
2737
+ ]
2567
2738
  }
2568
2739
  ],
2569
2740
  "tags": [
@@ -2573,6 +2744,9 @@ var layouts = [
2573
2744
  ],
2574
2745
  "preview": {
2575
2746
  "vectorSrc": "https://www.pptx.gallery/layout-previews/capability-map.svg"
2747
+ },
2748
+ "composition": {
2749
+ "mode": "row"
2576
2750
  }
2577
2751
  },
2578
2752
  {
@@ -2593,6 +2767,68 @@ var layouts = [
2593
2767
  },
2594
2768
  {
2595
2769
  "type": "text"
2770
+ },
2771
+ {
2772
+ "type": "group",
2773
+ "composition": {
2774
+ "mode": "row"
2775
+ },
2776
+ "placeholders": [
2777
+ {
2778
+ "type": "group",
2779
+ "composition": {
2780
+ "mode": "column",
2781
+ "weights": [
2782
+ 1,
2783
+ 2
2784
+ ]
2785
+ },
2786
+ "placeholders": [
2787
+ {
2788
+ "type": "text"
2789
+ },
2790
+ {
2791
+ "type": "list"
2792
+ }
2793
+ ]
2794
+ },
2795
+ {
2796
+ "type": "group",
2797
+ "composition": {
2798
+ "mode": "column",
2799
+ "weights": [
2800
+ 1,
2801
+ 2
2802
+ ]
2803
+ },
2804
+ "placeholders": [
2805
+ {
2806
+ "type": "text"
2807
+ },
2808
+ {
2809
+ "type": "list"
2810
+ }
2811
+ ]
2812
+ },
2813
+ {
2814
+ "type": "group",
2815
+ "composition": {
2816
+ "mode": "column",
2817
+ "weights": [
2818
+ 1,
2819
+ 2
2820
+ ]
2821
+ },
2822
+ "placeholders": [
2823
+ {
2824
+ "type": "text"
2825
+ },
2826
+ {
2827
+ "type": "list"
2828
+ }
2829
+ ]
2830
+ }
2831
+ ]
2596
2832
  }
2597
2833
  ],
2598
2834
  "tags": [
@@ -2602,6 +2838,13 @@ var layouts = [
2602
2838
  ],
2603
2839
  "preview": {
2604
2840
  "vectorSrc": "https://www.pptx.gallery/layout-previews/logic-tree.svg"
2841
+ },
2842
+ "composition": {
2843
+ "mode": "column",
2844
+ "weights": [
2845
+ 1,
2846
+ 3
2847
+ ]
2605
2848
  }
2606
2849
  },
2607
2850
  {
@@ -2816,7 +3059,7 @@ var layouts = [
2816
3059
  "id": "market-size",
2817
3060
  "name": "Market_Size",
2818
3061
  "summary": "Nested TAM / SAM / SOM visualization showing total market, addressable segment, and obtainable share.",
2819
- "description": "Nested TAM / SAM / SOM visualization showing total market, addressable segment, and obtainable share.",
3062
+ "description": "Nested TAM / SAM / SOM visualization beside the three numbers stacked: total market, addressable segment, and obtainable share.",
2820
3063
  "design": {
2821
3064
  "titleAlignment": "left",
2822
3065
  "contentAlignment": "left",
@@ -2828,7 +3071,24 @@ var layouts = [
2828
3071
  "type": "title"
2829
3072
  },
2830
3073
  {
2831
- "type": "text"
3074
+ "type": "image"
3075
+ },
3076
+ {
3077
+ "type": "group",
3078
+ "composition": {
3079
+ "mode": "column"
3080
+ },
3081
+ "placeholders": [
3082
+ {
3083
+ "type": "metric"
3084
+ },
3085
+ {
3086
+ "type": "metric"
3087
+ },
3088
+ {
3089
+ "type": "metric"
3090
+ }
3091
+ ]
2832
3092
  }
2833
3093
  ],
2834
3094
  "tags": [
@@ -2838,6 +3098,13 @@ var layouts = [
2838
3098
  ],
2839
3099
  "preview": {
2840
3100
  "vectorSrc": "https://www.pptx.gallery/layout-previews/market-size.svg"
3101
+ },
3102
+ "composition": {
3103
+ "mode": "row",
3104
+ "weights": [
3105
+ 3,
3106
+ 2
3107
+ ]
2841
3108
  }
2842
3109
  },
2843
3110
  {
@@ -2917,7 +3184,63 @@ var layouts = [
2917
3184
  "type": "title"
2918
3185
  },
2919
3186
  {
2920
- "type": "text"
3187
+ "type": "group",
3188
+ "composition": {
3189
+ "mode": "row"
3190
+ },
3191
+ "placeholders": [
3192
+ {
3193
+ "type": "text"
3194
+ },
3195
+ {
3196
+ "type": "group",
3197
+ "composition": {
3198
+ "mode": "column"
3199
+ },
3200
+ "placeholders": [
3201
+ {
3202
+ "type": "text"
3203
+ },
3204
+ {
3205
+ "type": "text"
3206
+ }
3207
+ ]
3208
+ },
3209
+ {
3210
+ "type": "text"
3211
+ },
3212
+ {
3213
+ "type": "group",
3214
+ "composition": {
3215
+ "mode": "column"
3216
+ },
3217
+ "placeholders": [
3218
+ {
3219
+ "type": "text"
3220
+ },
3221
+ {
3222
+ "type": "text"
3223
+ }
3224
+ ]
3225
+ },
3226
+ {
3227
+ "type": "text"
3228
+ }
3229
+ ]
3230
+ },
3231
+ {
3232
+ "type": "group",
3233
+ "composition": {
3234
+ "mode": "row"
3235
+ },
3236
+ "placeholders": [
3237
+ {
3238
+ "type": "text"
3239
+ },
3240
+ {
3241
+ "type": "text"
3242
+ }
3243
+ ]
2921
3244
  }
2922
3245
  ],
2923
3246
  "tags": [
@@ -2927,6 +3250,15 @@ var layouts = [
2927
3250
  ],
2928
3251
  "preview": {
2929
3252
  "vectorSrc": "https://www.pptx.gallery/layout-previews/business-model-canvas.svg"
3253
+ },
3254
+ "composition": {
3255
+ "mode": "column",
3256
+ "weights": [
3257
+ 2,
3258
+ 1
3259
+ ],
3260
+ "padding": 0.04,
3261
+ "gap": 0.02
2930
3262
  }
2931
3263
  },
2932
3264
  {
@@ -3254,16 +3586,40 @@ var layouts = [
3254
3586
  "type": "title"
3255
3587
  },
3256
3588
  {
3257
- "type": "chart"
3258
- },
3259
- {
3260
- "type": "text"
3261
- },
3262
- {
3263
- "type": "chart"
3589
+ "type": "group",
3590
+ "composition": {
3591
+ "mode": "column",
3592
+ "weights": [
3593
+ 2,
3594
+ 1
3595
+ ]
3596
+ },
3597
+ "placeholders": [
3598
+ {
3599
+ "type": "chart"
3600
+ },
3601
+ {
3602
+ "type": "text"
3603
+ }
3604
+ ]
3264
3605
  },
3265
3606
  {
3266
- "type": "text"
3607
+ "type": "group",
3608
+ "composition": {
3609
+ "mode": "column",
3610
+ "weights": [
3611
+ 2,
3612
+ 1
3613
+ ]
3614
+ },
3615
+ "placeholders": [
3616
+ {
3617
+ "type": "chart"
3618
+ },
3619
+ {
3620
+ "type": "text"
3621
+ }
3622
+ ]
3267
3623
  }
3268
3624
  ],
3269
3625
  "composition": {
@@ -3368,22 +3724,58 @@ var layouts = [
3368
3724
  "type": "title"
3369
3725
  },
3370
3726
  {
3371
- "type": "chart"
3372
- },
3373
- {
3374
- "type": "text"
3375
- },
3376
- {
3377
- "type": "chart"
3378
- },
3379
- {
3380
- "type": "text"
3727
+ "type": "group",
3728
+ "composition": {
3729
+ "mode": "column",
3730
+ "weights": [
3731
+ 2,
3732
+ 1
3733
+ ]
3734
+ },
3735
+ "placeholders": [
3736
+ {
3737
+ "type": "chart"
3738
+ },
3739
+ {
3740
+ "type": "text"
3741
+ }
3742
+ ]
3381
3743
  },
3382
3744
  {
3383
- "type": "chart"
3745
+ "type": "group",
3746
+ "composition": {
3747
+ "mode": "column",
3748
+ "weights": [
3749
+ 2,
3750
+ 1
3751
+ ]
3752
+ },
3753
+ "placeholders": [
3754
+ {
3755
+ "type": "chart"
3756
+ },
3757
+ {
3758
+ "type": "text"
3759
+ }
3760
+ ]
3384
3761
  },
3385
3762
  {
3386
- "type": "text"
3763
+ "type": "group",
3764
+ "composition": {
3765
+ "mode": "column",
3766
+ "weights": [
3767
+ 2,
3768
+ 1
3769
+ ]
3770
+ },
3771
+ "placeholders": [
3772
+ {
3773
+ "type": "chart"
3774
+ },
3775
+ {
3776
+ "type": "text"
3777
+ }
3778
+ ]
3387
3779
  }
3388
3780
  ],
3389
3781
  "composition": {
@@ -3404,23 +3796,30 @@ var layouts = [
3404
3796
  "id": "chart-3x-bottom-vertical-title-left",
3405
3797
  "name": "Chart_3x_Bottom_Vertical_Title_Left",
3406
3798
  "summary": "Canonical OPF chart 3x title vertical layout.",
3407
- "description": "Chart 3x Bottom Vertical Title Left OPF layout with 3 chart zones in a vertical reading flow and a slide title.",
3799
+ "description": "Chart 3x Bottom Vertical Title Left OPF layout: a slide title over two supporting charts side by side, with a primary chart below them.",
3408
3800
  "design": {
3409
3801
  "titleAlignment": "left",
3410
3802
  "contentAlignment": "center",
3411
3803
  "contentBox": false,
3412
- "contentDirection": "vertical",
3413
- "chartPrimary": "bottom"
3804
+ "contentDirection": "vertical"
3414
3805
  },
3415
3806
  "placeholders": [
3416
3807
  {
3417
3808
  "type": "title"
3418
3809
  },
3419
3810
  {
3420
- "type": "chart"
3421
- },
3422
- {
3423
- "type": "chart"
3811
+ "type": "group",
3812
+ "composition": {
3813
+ "mode": "row"
3814
+ },
3815
+ "placeholders": [
3816
+ {
3817
+ "type": "chart"
3818
+ },
3819
+ {
3820
+ "type": "chart"
3821
+ }
3822
+ ]
3424
3823
  },
3425
3824
  {
3426
3825
  "type": "chart"
@@ -3439,9 +3838,8 @@ var layouts = [
3439
3838
  "composition": {
3440
3839
  "mode": "column",
3441
3840
  "weights": [
3442
- 1,
3443
- 1,
3444
- 2
3841
+ 2,
3842
+ 3
3445
3843
  ]
3446
3844
  }
3447
3845
  },
@@ -3450,22 +3848,29 @@ var layouts = [
3450
3848
  "id": "chart-3x-left",
3451
3849
  "name": "Chart_3x_Left",
3452
3850
  "summary": "Canonical OPF chart 3x layout.",
3453
- "description": "Chart 3x Left OPF layout with 3 chart zones.",
3851
+ "description": "Chart 3x Left OPF layout: a primary chart on the left, two supporting charts stacked on the right.",
3454
3852
  "design": {
3455
3853
  "contentAlignment": "center",
3456
3854
  "contentBox": false,
3457
- "contentDirection": "horizontal",
3458
- "chartPrimary": "left"
3855
+ "contentDirection": "horizontal"
3459
3856
  },
3460
3857
  "placeholders": [
3461
3858
  {
3462
3859
  "type": "chart"
3463
3860
  },
3464
3861
  {
3465
- "type": "chart"
3466
- },
3467
- {
3468
- "type": "chart"
3862
+ "type": "group",
3863
+ "composition": {
3864
+ "mode": "column"
3865
+ },
3866
+ "placeholders": [
3867
+ {
3868
+ "type": "chart"
3869
+ },
3870
+ {
3871
+ "type": "chart"
3872
+ }
3873
+ ]
3469
3874
  }
3470
3875
  ],
3471
3876
  "tags": [
@@ -3479,9 +3884,8 @@ var layouts = [
3479
3884
  "composition": {
3480
3885
  "mode": "row",
3481
3886
  "weights": [
3482
- 2,
3483
- 1,
3484
- 1
3887
+ 3,
3888
+ 2
3485
3889
  ]
3486
3890
  }
3487
3891
  },
@@ -3490,13 +3894,12 @@ var layouts = [
3490
3894
  "id": "chart-3x-left-title-center",
3491
3895
  "name": "Chart_3x_Left_Title_Center",
3492
3896
  "summary": "Canonical OPF chart 3x title layout.",
3493
- "description": "Chart 3x Left Title Center OPF layout with 3 chart zones and a slide title.",
3897
+ "description": "Chart 3x Left Title Center OPF layout: a centered slide title over a primary chart on the left and two supporting charts stacked on the right.",
3494
3898
  "design": {
3495
3899
  "titleAlignment": "center",
3496
3900
  "contentAlignment": "center",
3497
3901
  "contentBox": false,
3498
- "contentDirection": "horizontal",
3499
- "chartPrimary": "left"
3902
+ "contentDirection": "horizontal"
3500
3903
  },
3501
3904
  "placeholders": [
3502
3905
  {
@@ -3506,10 +3909,18 @@ var layouts = [
3506
3909
  "type": "chart"
3507
3910
  },
3508
3911
  {
3509
- "type": "chart"
3510
- },
3511
- {
3512
- "type": "chart"
3912
+ "type": "group",
3913
+ "composition": {
3914
+ "mode": "column"
3915
+ },
3916
+ "placeholders": [
3917
+ {
3918
+ "type": "chart"
3919
+ },
3920
+ {
3921
+ "type": "chart"
3922
+ }
3923
+ ]
3513
3924
  }
3514
3925
  ],
3515
3926
  "tags": [
@@ -3524,9 +3935,8 @@ var layouts = [
3524
3935
  "composition": {
3525
3936
  "mode": "row",
3526
3937
  "weights": [
3527
- 2,
3528
- 1,
3529
- 1
3938
+ 3,
3939
+ 2
3530
3940
  ]
3531
3941
  }
3532
3942
  },
@@ -3535,19 +3945,26 @@ var layouts = [
3535
3945
  "id": "chart-3x-right",
3536
3946
  "name": "Chart_3x_Right",
3537
3947
  "summary": "Canonical OPF chart 3x layout.",
3538
- "description": "Chart 3x Right OPF layout with 3 chart zones.",
3948
+ "description": "Chart 3x Right OPF layout: two supporting charts stacked on the left, a primary chart on the right.",
3539
3949
  "design": {
3540
3950
  "contentAlignment": "center",
3541
3951
  "contentBox": false,
3542
- "contentDirection": "horizontal",
3543
- "chartPrimary": "right"
3952
+ "contentDirection": "horizontal"
3544
3953
  },
3545
3954
  "placeholders": [
3546
3955
  {
3547
- "type": "chart"
3548
- },
3549
- {
3550
- "type": "chart"
3956
+ "type": "group",
3957
+ "composition": {
3958
+ "mode": "column"
3959
+ },
3960
+ "placeholders": [
3961
+ {
3962
+ "type": "chart"
3963
+ },
3964
+ {
3965
+ "type": "chart"
3966
+ }
3967
+ ]
3551
3968
  },
3552
3969
  {
3553
3970
  "type": "chart"
@@ -3564,9 +3981,8 @@ var layouts = [
3564
3981
  "composition": {
3565
3982
  "mode": "row",
3566
3983
  "weights": [
3567
- 1,
3568
- 1,
3569
- 2
3984
+ 2,
3985
+ 3
3570
3986
  ]
3571
3987
  }
3572
3988
  },
@@ -3575,23 +3991,30 @@ var layouts = [
3575
3991
  "id": "chart-3x-right-title-center",
3576
3992
  "name": "Chart_3x_Right_Title_Center",
3577
3993
  "summary": "Canonical OPF chart 3x title layout.",
3578
- "description": "Chart 3x Right Title Center OPF layout with 3 chart zones and a slide title.",
3994
+ "description": "Chart 3x Right Title Center OPF layout: a centered slide title over two supporting charts stacked on the left and a primary chart on the right.",
3579
3995
  "design": {
3580
3996
  "titleAlignment": "center",
3581
3997
  "contentAlignment": "center",
3582
3998
  "contentBox": false,
3583
- "contentDirection": "horizontal",
3584
- "chartPrimary": "right"
3999
+ "contentDirection": "horizontal"
3585
4000
  },
3586
4001
  "placeholders": [
3587
4002
  {
3588
4003
  "type": "title"
3589
4004
  },
3590
4005
  {
3591
- "type": "chart"
3592
- },
3593
- {
3594
- "type": "chart"
4006
+ "type": "group",
4007
+ "composition": {
4008
+ "mode": "column"
4009
+ },
4010
+ "placeholders": [
4011
+ {
4012
+ "type": "chart"
4013
+ },
4014
+ {
4015
+ "type": "chart"
4016
+ }
4017
+ ]
3595
4018
  },
3596
4019
  {
3597
4020
  "type": "chart"
@@ -3609,9 +4032,8 @@ var layouts = [
3609
4032
  "composition": {
3610
4033
  "mode": "row",
3611
4034
  "weights": [
3612
- 1,
3613
- 1,
3614
- 2
4035
+ 2,
4036
+ 3
3615
4037
  ]
3616
4038
  }
3617
4039
  },
@@ -3659,13 +4081,12 @@ var layouts = [
3659
4081
  "id": "chart-3x-top-vertical-title-left",
3660
4082
  "name": "Chart_3x_Top_Vertical_Title_Left",
3661
4083
  "summary": "Canonical OPF chart 3x title vertical layout.",
3662
- "description": "Chart 3x Top Vertical Title Left OPF layout with 3 chart zones in a vertical reading flow and a slide title.",
4084
+ "description": "Chart 3x Top Vertical Title Left OPF layout: a slide title over a primary chart, with two supporting charts side by side below it.",
3663
4085
  "design": {
3664
4086
  "titleAlignment": "left",
3665
4087
  "contentAlignment": "center",
3666
4088
  "contentBox": false,
3667
- "contentDirection": "vertical",
3668
- "chartPrimary": "top"
4089
+ "contentDirection": "vertical"
3669
4090
  },
3670
4091
  "placeholders": [
3671
4092
  {
@@ -3675,10 +4096,18 @@ var layouts = [
3675
4096
  "type": "chart"
3676
4097
  },
3677
4098
  {
3678
- "type": "chart"
3679
- },
3680
- {
3681
- "type": "chart"
4099
+ "type": "group",
4100
+ "composition": {
4101
+ "mode": "row"
4102
+ },
4103
+ "placeholders": [
4104
+ {
4105
+ "type": "chart"
4106
+ },
4107
+ {
4108
+ "type": "chart"
4109
+ }
4110
+ ]
3682
4111
  }
3683
4112
  ],
3684
4113
  "tags": [
@@ -3694,9 +4123,8 @@ var layouts = [
3694
4123
  "composition": {
3695
4124
  "mode": "column",
3696
4125
  "weights": [
3697
- 2,
3698
- 1,
3699
- 1
4126
+ 3,
4127
+ 2
3700
4128
  ]
3701
4129
  }
3702
4130
  },
@@ -10740,16 +11168,40 @@ var layouts = [
10740
11168
  "type": "title"
10741
11169
  },
10742
11170
  {
10743
- "type": "image"
10744
- },
10745
- {
10746
- "type": "text"
10747
- },
10748
- {
10749
- "type": "image"
11171
+ "type": "group",
11172
+ "composition": {
11173
+ "mode": "column",
11174
+ "weights": [
11175
+ 2,
11176
+ 1
11177
+ ]
11178
+ },
11179
+ "placeholders": [
11180
+ {
11181
+ "type": "image"
11182
+ },
11183
+ {
11184
+ "type": "text"
11185
+ }
11186
+ ]
10750
11187
  },
10751
11188
  {
10752
- "type": "text"
11189
+ "type": "group",
11190
+ "composition": {
11191
+ "mode": "column",
11192
+ "weights": [
11193
+ 2,
11194
+ 1
11195
+ ]
11196
+ },
11197
+ "placeholders": [
11198
+ {
11199
+ "type": "image"
11200
+ },
11201
+ {
11202
+ "type": "text"
11203
+ }
11204
+ ]
10753
11205
  }
10754
11206
  ],
10755
11207
  "composition": {
@@ -10779,22 +11231,58 @@ var layouts = [
10779
11231
  "type": "title"
10780
11232
  },
10781
11233
  {
10782
- "type": "image"
10783
- },
10784
- {
10785
- "type": "text"
10786
- },
10787
- {
10788
- "type": "image"
10789
- },
10790
- {
10791
- "type": "text"
11234
+ "type": "group",
11235
+ "composition": {
11236
+ "mode": "column",
11237
+ "weights": [
11238
+ 2,
11239
+ 1
11240
+ ]
11241
+ },
11242
+ "placeholders": [
11243
+ {
11244
+ "type": "image"
11245
+ },
11246
+ {
11247
+ "type": "text"
11248
+ }
11249
+ ]
10792
11250
  },
10793
11251
  {
10794
- "type": "image"
11252
+ "type": "group",
11253
+ "composition": {
11254
+ "mode": "column",
11255
+ "weights": [
11256
+ 2,
11257
+ 1
11258
+ ]
11259
+ },
11260
+ "placeholders": [
11261
+ {
11262
+ "type": "image"
11263
+ },
11264
+ {
11265
+ "type": "text"
11266
+ }
11267
+ ]
10795
11268
  },
10796
11269
  {
10797
- "type": "text"
11270
+ "type": "group",
11271
+ "composition": {
11272
+ "mode": "column",
11273
+ "weights": [
11274
+ 2,
11275
+ 1
11276
+ ]
11277
+ },
11278
+ "placeholders": [
11279
+ {
11280
+ "type": "image"
11281
+ },
11282
+ {
11283
+ "type": "text"
11284
+ }
11285
+ ]
10798
11286
  }
10799
11287
  ],
10800
11288
  "composition": {
@@ -18988,7 +19476,7 @@ var catalogIndexes = {
18988
19476
  "kind": "layouts",
18989
19477
  "version": "1",
18990
19478
  "description": "Catalog of slide layouts available in the openpresentation.org catalog. Each entry is a lightweight summary; full layout records live in the per-id JSON files alongside this index.",
18991
- "contentSha256": "f9121c466032011762d58ee27cd3e50f43a388cc75b841219f87b8001f7632a3",
19479
+ "contentSha256": "877c1cd335cbbb8258a5b93e78e112d740906c33c9910586c8b12c63482b5adb",
18992
19480
  "records": [
18993
19481
  {
18994
19482
  "id": "title-slide",