@redocly/openapi-core 1.0.0-beta.130 → 1.0.0-beta.131

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.
@@ -446,64 +446,6 @@ export declare const responseHeaderSchema: {
446
446
  readonly additionalProperties: false;
447
447
  readonly required: readonly ["name", "value"];
448
448
  };
449
- export declare const scorecardConfigSchema: {
450
- readonly type: "object";
451
- readonly additionalProperties: true;
452
- readonly required: readonly ["levels"];
453
- readonly properties: {
454
- readonly levels: {
455
- readonly type: "array";
456
- readonly items: {
457
- readonly type: "object";
458
- readonly required: readonly ["name"];
459
- readonly properties: {
460
- readonly name: {
461
- readonly type: "string";
462
- };
463
- readonly extends: {
464
- readonly type: "array";
465
- readonly items: {
466
- readonly type: "string";
467
- };
468
- };
469
- readonly rules: {
470
- readonly type: "object";
471
- readonly additionalProperties: {
472
- readonly type: readonly ["object", "string"];
473
- };
474
- };
475
- };
476
- readonly additionalProperties: false;
477
- };
478
- };
479
- readonly targets: {
480
- readonly type: "array";
481
- readonly items: {
482
- readonly type: "object";
483
- readonly required: readonly ["where"];
484
- readonly properties: {
485
- readonly minimumLevel: {
486
- readonly type: "string";
487
- };
488
- readonly where: {
489
- readonly type: "object";
490
- readonly required: readonly ["metadata"];
491
- readonly properties: {
492
- readonly metadata: {
493
- readonly type: "object";
494
- readonly additionalProperties: {
495
- readonly type: "string";
496
- };
497
- };
498
- };
499
- readonly additionalProperties: false;
500
- };
501
- };
502
- readonly additionalProperties: false;
503
- };
504
- };
505
- };
506
- };
507
449
  export declare const i18nConfigSchema: {
508
450
  readonly type: "object";
509
451
  readonly properties: {
@@ -688,6 +630,25 @@ export declare const themeConfigSchema: {
688
630
  };
689
631
  readonly additionalProperties: false;
690
632
  };
633
+ readonly products: {
634
+ readonly type: "object";
635
+ readonly additionalProperties: {
636
+ readonly type: "object";
637
+ readonly properties: {
638
+ readonly name: {
639
+ readonly type: "string";
640
+ };
641
+ readonly icon: {
642
+ readonly type: "string";
643
+ };
644
+ readonly folder: {
645
+ readonly type: "string";
646
+ };
647
+ };
648
+ readonly additionalProperties: false;
649
+ readonly required: readonly ["name", "icon", "folder"];
650
+ };
651
+ };
691
652
  readonly footer: {
692
653
  readonly type: "object";
693
654
  readonly properties: {
@@ -1235,8 +1196,9 @@ export declare const themeConfigSchema: {
1235
1196
  readonly default: "On this page";
1236
1197
  };
1237
1198
  readonly depth: {
1238
- readonly type: "number";
1199
+ readonly type: "integer";
1239
1200
  readonly default: 3;
1201
+ readonly minimum: 1;
1240
1202
  };
1241
1203
  };
1242
1204
  readonly additionalProperties: false;
@@ -1613,6 +1575,618 @@ export declare const themeConfigSchema: {
1613
1575
  readonly additionalProperties: false;
1614
1576
  readonly default: {};
1615
1577
  };
1578
+ readonly catalog: {
1579
+ readonly type: "object";
1580
+ readonly patternProperties: {
1581
+ readonly '.*': {
1582
+ readonly type: "object";
1583
+ readonly additionalProperties: true;
1584
+ readonly required: readonly ["slug", "filters", "groupByFirstFilter", "items"];
1585
+ readonly properties: {
1586
+ readonly slug: {
1587
+ readonly type: "string";
1588
+ };
1589
+ readonly filters: {
1590
+ readonly type: "array";
1591
+ readonly items: {
1592
+ readonly type: "object";
1593
+ readonly additionalProperties: false;
1594
+ readonly required: readonly ["title", "property"];
1595
+ readonly properties: {
1596
+ readonly type: {
1597
+ readonly type: "string";
1598
+ readonly enum: readonly ["select", "checkboxes", "date-range"];
1599
+ };
1600
+ readonly title: {
1601
+ readonly type: "string";
1602
+ };
1603
+ readonly titleTranslationKey: {
1604
+ readonly type: "string";
1605
+ };
1606
+ readonly property: {
1607
+ readonly type: "string";
1608
+ };
1609
+ readonly parentFilter: {
1610
+ readonly type: "string";
1611
+ };
1612
+ readonly missingCategoryName: {
1613
+ readonly type: "string";
1614
+ };
1615
+ readonly missingCategoryNameTranslationKey: {
1616
+ readonly type: "string";
1617
+ };
1618
+ readonly options: {
1619
+ readonly type: "array";
1620
+ readonly items: {
1621
+ readonly type: "string";
1622
+ };
1623
+ };
1624
+ };
1625
+ };
1626
+ };
1627
+ readonly groupByFirstFilter: {
1628
+ readonly type: "boolean";
1629
+ };
1630
+ readonly items: {
1631
+ readonly type: "array";
1632
+ readonly items: {
1633
+ readonly properties: {
1634
+ readonly items: {
1635
+ readonly type: "array";
1636
+ readonly items: {
1637
+ readonly type: "object";
1638
+ readonly properties: {
1639
+ readonly page: {
1640
+ readonly type: "string";
1641
+ };
1642
+ readonly directory: {
1643
+ readonly type: "string";
1644
+ };
1645
+ readonly group: {
1646
+ readonly type: "string";
1647
+ };
1648
+ readonly label: {
1649
+ readonly type: "string";
1650
+ };
1651
+ readonly separator: {
1652
+ readonly type: "string";
1653
+ };
1654
+ readonly separatorLine: {
1655
+ readonly type: "boolean";
1656
+ };
1657
+ readonly version: {
1658
+ readonly type: "string";
1659
+ };
1660
+ readonly menuStyle: {
1661
+ readonly type: "string";
1662
+ readonly enum: readonly ["drilldown"];
1663
+ };
1664
+ readonly expanded: {
1665
+ readonly type: "string";
1666
+ readonly const: "always";
1667
+ };
1668
+ readonly selectFirstItemOnExpand: {
1669
+ readonly type: "boolean";
1670
+ };
1671
+ readonly flatten: {
1672
+ readonly type: "boolean";
1673
+ };
1674
+ readonly linkedSidebars: {
1675
+ readonly type: "array";
1676
+ readonly items: {
1677
+ readonly type: "string";
1678
+ };
1679
+ };
1680
+ };
1681
+ };
1682
+ };
1683
+ readonly page: {
1684
+ readonly type: "string";
1685
+ };
1686
+ readonly directory: {
1687
+ readonly type: "string";
1688
+ };
1689
+ readonly group: {
1690
+ readonly type: "string";
1691
+ };
1692
+ readonly label: {
1693
+ readonly type: "string";
1694
+ };
1695
+ readonly separator: {
1696
+ readonly type: "string";
1697
+ };
1698
+ readonly separatorLine: {
1699
+ readonly type: "boolean";
1700
+ };
1701
+ readonly version: {
1702
+ readonly type: "string";
1703
+ };
1704
+ readonly menuStyle: {
1705
+ readonly type: "string";
1706
+ readonly enum: readonly ["drilldown"];
1707
+ };
1708
+ readonly expanded: {
1709
+ readonly type: "string";
1710
+ readonly const: "always";
1711
+ };
1712
+ readonly selectFirstItemOnExpand: {
1713
+ readonly type: "boolean";
1714
+ };
1715
+ readonly flatten: {
1716
+ readonly type: "boolean";
1717
+ };
1718
+ readonly linkedSidebars: {
1719
+ readonly type: "array";
1720
+ readonly items: {
1721
+ readonly type: "string";
1722
+ };
1723
+ };
1724
+ };
1725
+ readonly type: "object";
1726
+ };
1727
+ };
1728
+ readonly requiredPermission: {
1729
+ readonly type: "string";
1730
+ };
1731
+ readonly separateVersions: {
1732
+ readonly type: "boolean";
1733
+ };
1734
+ readonly title: {
1735
+ readonly type: "string";
1736
+ };
1737
+ readonly titleTranslationKey: {
1738
+ readonly type: "string";
1739
+ };
1740
+ readonly description: {
1741
+ readonly type: "string";
1742
+ };
1743
+ readonly descriptionTranslationKey: {
1744
+ readonly type: "string";
1745
+ };
1746
+ };
1747
+ };
1748
+ };
1749
+ };
1750
+ readonly scorecard: {
1751
+ readonly type: "object";
1752
+ readonly additionalProperties: true;
1753
+ readonly required: readonly ["levels"];
1754
+ readonly properties: {
1755
+ readonly failBuildIfBelowMinimum: {
1756
+ readonly type: "boolean";
1757
+ readonly default: false;
1758
+ };
1759
+ readonly levels: {
1760
+ readonly type: "array";
1761
+ readonly items: {
1762
+ readonly type: "object";
1763
+ readonly required: readonly ["name"];
1764
+ readonly properties: {
1765
+ readonly name: {
1766
+ readonly type: "string";
1767
+ };
1768
+ readonly extends: {
1769
+ readonly type: "array";
1770
+ readonly items: {
1771
+ readonly type: "string";
1772
+ };
1773
+ };
1774
+ readonly rules: {
1775
+ readonly type: "object";
1776
+ readonly additionalProperties: {
1777
+ readonly type: readonly ["object", "string"];
1778
+ };
1779
+ };
1780
+ };
1781
+ readonly additionalProperties: false;
1782
+ };
1783
+ };
1784
+ readonly targets: {
1785
+ readonly type: "array";
1786
+ readonly items: {
1787
+ readonly type: "object";
1788
+ readonly required: readonly ["where"];
1789
+ readonly properties: {
1790
+ readonly minimumLevel: {
1791
+ readonly type: "string";
1792
+ };
1793
+ readonly where: {
1794
+ readonly type: "object";
1795
+ readonly required: readonly ["metadata"];
1796
+ readonly properties: {
1797
+ readonly metadata: {
1798
+ readonly type: "object";
1799
+ readonly additionalProperties: {
1800
+ readonly type: "string";
1801
+ };
1802
+ };
1803
+ };
1804
+ readonly additionalProperties: false;
1805
+ };
1806
+ };
1807
+ readonly additionalProperties: false;
1808
+ };
1809
+ };
1810
+ };
1811
+ };
1812
+ };
1813
+ readonly additionalProperties: true;
1814
+ readonly default: {};
1815
+ };
1816
+ export declare const productThemeOverrideSchema: {
1817
+ readonly type: "object";
1818
+ readonly properties: {
1819
+ readonly logo: {
1820
+ readonly type: "object";
1821
+ readonly properties: {
1822
+ readonly image: {
1823
+ readonly type: "string";
1824
+ };
1825
+ readonly altText: {
1826
+ readonly type: "string";
1827
+ };
1828
+ readonly link: {
1829
+ readonly type: "string";
1830
+ };
1831
+ readonly favicon: {
1832
+ readonly type: "string";
1833
+ };
1834
+ };
1835
+ readonly additionalProperties: false;
1836
+ };
1837
+ readonly navbar: {
1838
+ readonly type: "object";
1839
+ readonly properties: {
1840
+ readonly hide: {
1841
+ readonly type: "boolean";
1842
+ };
1843
+ readonly items: {
1844
+ readonly type: "array";
1845
+ readonly items: {
1846
+ readonly properties: {
1847
+ readonly items: {
1848
+ readonly type: "array";
1849
+ readonly items: {
1850
+ readonly type: "object";
1851
+ readonly properties: {
1852
+ readonly page: {
1853
+ readonly type: "string";
1854
+ };
1855
+ readonly directory: {
1856
+ readonly type: "string";
1857
+ };
1858
+ readonly group: {
1859
+ readonly type: "string";
1860
+ };
1861
+ readonly label: {
1862
+ readonly type: "string";
1863
+ };
1864
+ readonly separator: {
1865
+ readonly type: "string";
1866
+ };
1867
+ readonly separatorLine: {
1868
+ readonly type: "boolean";
1869
+ };
1870
+ readonly version: {
1871
+ readonly type: "string";
1872
+ };
1873
+ readonly menuStyle: {
1874
+ readonly type: "string";
1875
+ readonly enum: readonly ["drilldown"];
1876
+ };
1877
+ readonly expanded: {
1878
+ readonly type: "string";
1879
+ readonly const: "always";
1880
+ };
1881
+ readonly selectFirstItemOnExpand: {
1882
+ readonly type: "boolean";
1883
+ };
1884
+ readonly flatten: {
1885
+ readonly type: "boolean";
1886
+ };
1887
+ readonly linkedSidebars: {
1888
+ readonly type: "array";
1889
+ readonly items: {
1890
+ readonly type: "string";
1891
+ };
1892
+ };
1893
+ };
1894
+ };
1895
+ };
1896
+ readonly page: {
1897
+ readonly type: "string";
1898
+ };
1899
+ readonly directory: {
1900
+ readonly type: "string";
1901
+ };
1902
+ readonly group: {
1903
+ readonly type: "string";
1904
+ };
1905
+ readonly label: {
1906
+ readonly type: "string";
1907
+ };
1908
+ readonly separator: {
1909
+ readonly type: "string";
1910
+ };
1911
+ readonly separatorLine: {
1912
+ readonly type: "boolean";
1913
+ };
1914
+ readonly version: {
1915
+ readonly type: "string";
1916
+ };
1917
+ readonly menuStyle: {
1918
+ readonly type: "string";
1919
+ readonly enum: readonly ["drilldown"];
1920
+ };
1921
+ readonly expanded: {
1922
+ readonly type: "string";
1923
+ readonly const: "always";
1924
+ };
1925
+ readonly selectFirstItemOnExpand: {
1926
+ readonly type: "boolean";
1927
+ };
1928
+ readonly flatten: {
1929
+ readonly type: "boolean";
1930
+ };
1931
+ readonly linkedSidebars: {
1932
+ readonly type: "array";
1933
+ readonly items: {
1934
+ readonly type: "string";
1935
+ };
1936
+ };
1937
+ };
1938
+ readonly type: "object";
1939
+ };
1940
+ };
1941
+ };
1942
+ readonly additionalProperties: false;
1943
+ };
1944
+ readonly footer: {
1945
+ readonly type: "object";
1946
+ readonly properties: {
1947
+ readonly hide: {
1948
+ readonly type: "boolean";
1949
+ };
1950
+ readonly items: {
1951
+ readonly type: "array";
1952
+ readonly items: {
1953
+ readonly properties: {
1954
+ readonly items: {
1955
+ readonly type: "array";
1956
+ readonly items: {
1957
+ readonly type: "object";
1958
+ readonly properties: {
1959
+ readonly page: {
1960
+ readonly type: "string";
1961
+ };
1962
+ readonly directory: {
1963
+ readonly type: "string";
1964
+ };
1965
+ readonly group: {
1966
+ readonly type: "string";
1967
+ };
1968
+ readonly label: {
1969
+ readonly type: "string";
1970
+ };
1971
+ readonly separator: {
1972
+ readonly type: "string";
1973
+ };
1974
+ readonly separatorLine: {
1975
+ readonly type: "boolean";
1976
+ };
1977
+ readonly version: {
1978
+ readonly type: "string";
1979
+ };
1980
+ readonly menuStyle: {
1981
+ readonly type: "string";
1982
+ readonly enum: readonly ["drilldown"];
1983
+ };
1984
+ readonly expanded: {
1985
+ readonly type: "string";
1986
+ readonly const: "always";
1987
+ };
1988
+ readonly selectFirstItemOnExpand: {
1989
+ readonly type: "boolean";
1990
+ };
1991
+ readonly flatten: {
1992
+ readonly type: "boolean";
1993
+ };
1994
+ readonly linkedSidebars: {
1995
+ readonly type: "array";
1996
+ readonly items: {
1997
+ readonly type: "string";
1998
+ };
1999
+ };
2000
+ };
2001
+ };
2002
+ };
2003
+ readonly page: {
2004
+ readonly type: "string";
2005
+ };
2006
+ readonly directory: {
2007
+ readonly type: "string";
2008
+ };
2009
+ readonly group: {
2010
+ readonly type: "string";
2011
+ };
2012
+ readonly label: {
2013
+ readonly type: "string";
2014
+ };
2015
+ readonly separator: {
2016
+ readonly type: "string";
2017
+ };
2018
+ readonly separatorLine: {
2019
+ readonly type: "boolean";
2020
+ };
2021
+ readonly version: {
2022
+ readonly type: "string";
2023
+ };
2024
+ readonly menuStyle: {
2025
+ readonly type: "string";
2026
+ readonly enum: readonly ["drilldown"];
2027
+ };
2028
+ readonly expanded: {
2029
+ readonly type: "string";
2030
+ readonly const: "always";
2031
+ };
2032
+ readonly selectFirstItemOnExpand: {
2033
+ readonly type: "boolean";
2034
+ };
2035
+ readonly flatten: {
2036
+ readonly type: "boolean";
2037
+ };
2038
+ readonly linkedSidebars: {
2039
+ readonly type: "array";
2040
+ readonly items: {
2041
+ readonly type: "string";
2042
+ };
2043
+ };
2044
+ };
2045
+ readonly type: "object";
2046
+ };
2047
+ };
2048
+ readonly copyrightText: {
2049
+ readonly type: "string";
2050
+ };
2051
+ };
2052
+ readonly additionalProperties: false;
2053
+ };
2054
+ readonly sidebar: {
2055
+ readonly type: "object";
2056
+ readonly properties: {
2057
+ readonly hide: {
2058
+ readonly type: "boolean";
2059
+ };
2060
+ };
2061
+ readonly additionalProperties: false;
2062
+ };
2063
+ readonly search: {
2064
+ readonly type: "object";
2065
+ readonly properties: {
2066
+ readonly hide: {
2067
+ readonly type: "boolean";
2068
+ };
2069
+ readonly placement: {
2070
+ readonly type: "string";
2071
+ readonly default: "navbar";
2072
+ };
2073
+ readonly shortcuts: {
2074
+ readonly type: "array";
2075
+ readonly items: {
2076
+ readonly type: "string";
2077
+ };
2078
+ readonly default: readonly ["/"];
2079
+ };
2080
+ readonly suggestedPages: {
2081
+ readonly type: "array";
2082
+ readonly items: {
2083
+ readonly type: "object";
2084
+ readonly properties: {
2085
+ readonly page: {
2086
+ readonly type: "string";
2087
+ };
2088
+ readonly label: {
2089
+ readonly type: "string";
2090
+ };
2091
+ readonly labelTranslationKey: {
2092
+ readonly type: "string";
2093
+ };
2094
+ };
2095
+ readonly required: readonly ["page"];
2096
+ };
2097
+ };
2098
+ };
2099
+ readonly additionalProperties: false;
2100
+ readonly default: {};
2101
+ };
2102
+ readonly codeSnippet: {
2103
+ readonly type: "object";
2104
+ readonly properties: {
2105
+ readonly controlsStyle: {
2106
+ readonly type: "string";
2107
+ readonly default: "icon";
2108
+ };
2109
+ readonly copy: {
2110
+ readonly type: "object";
2111
+ readonly properties: {
2112
+ readonly hide: {
2113
+ readonly type: "boolean";
2114
+ };
2115
+ };
2116
+ readonly additionalProperties: false;
2117
+ readonly default: {
2118
+ readonly hide: false;
2119
+ };
2120
+ };
2121
+ readonly report: {
2122
+ readonly type: "object";
2123
+ readonly properties: {
2124
+ readonly hide: {
2125
+ readonly type: "boolean";
2126
+ };
2127
+ };
2128
+ readonly additionalProperties: false;
2129
+ readonly default: {
2130
+ readonly hide: true;
2131
+ };
2132
+ };
2133
+ readonly expand: {
2134
+ readonly type: "object";
2135
+ readonly properties: {
2136
+ readonly hide: {
2137
+ readonly type: "boolean";
2138
+ };
2139
+ };
2140
+ readonly additionalProperties: false;
2141
+ readonly default: {
2142
+ readonly hide: false;
2143
+ };
2144
+ };
2145
+ readonly collapse: {
2146
+ readonly type: "object";
2147
+ readonly properties: {
2148
+ readonly hide: {
2149
+ readonly type: "boolean";
2150
+ };
2151
+ };
2152
+ readonly additionalProperties: false;
2153
+ readonly default: {
2154
+ readonly hide: false;
2155
+ };
2156
+ };
2157
+ };
2158
+ readonly additionalProperties: false;
2159
+ readonly default: {};
2160
+ };
2161
+ readonly breadcrumbs: {
2162
+ readonly type: "object";
2163
+ readonly properties: {
2164
+ readonly hide: {
2165
+ readonly type: "boolean";
2166
+ };
2167
+ readonly prefixItems: {
2168
+ readonly type: "array";
2169
+ readonly items: {
2170
+ readonly type: "object";
2171
+ readonly properties: {
2172
+ readonly label: {
2173
+ readonly type: "string";
2174
+ };
2175
+ readonly labelTranslationKey: {
2176
+ readonly type: "string";
2177
+ };
2178
+ readonly page: {
2179
+ readonly type: "string";
2180
+ };
2181
+ };
2182
+ readonly additionalProperties: false;
2183
+ readonly default: {};
2184
+ };
2185
+ };
2186
+ };
2187
+ readonly additionalProperties: false;
2188
+ readonly default: {};
2189
+ };
1616
2190
  };
1617
2191
  readonly additionalProperties: true;
1618
2192
  readonly default: {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.themeConfigSchema = exports.mockServerConfigSchema = exports.i18nConfigSchema = exports.scorecardConfigSchema = exports.responseHeaderSchema = exports.devOnboardingConfigSchema = exports.seoConfigSchema = exports.redirectConfigSchema = exports.ssoConfigSchema = exports.rbacConfigSchema = void 0;
3
+ exports.productThemeOverrideSchema = exports.themeConfigSchema = exports.mockServerConfigSchema = exports.i18nConfigSchema = exports.responseHeaderSchema = exports.devOnboardingConfigSchema = exports.seoConfigSchema = exports.redirectConfigSchema = exports.ssoConfigSchema = exports.rbacConfigSchema = void 0;
4
4
  const config_1 = require("../config");
5
5
  const oidcIssuerMetadataSchema = {
6
6
  type: 'object',
@@ -199,50 +199,6 @@ exports.responseHeaderSchema = {
199
199
  additionalProperties: false,
200
200
  required: ['name', 'value'],
201
201
  };
202
- exports.scorecardConfigSchema = {
203
- type: 'object',
204
- additionalProperties: true,
205
- required: ['levels'],
206
- properties: {
207
- levels: {
208
- type: 'array',
209
- items: {
210
- type: 'object',
211
- required: ['name'],
212
- properties: {
213
- name: { type: 'string' },
214
- extends: { type: 'array', items: { type: 'string' } },
215
- rules: {
216
- type: 'object',
217
- additionalProperties: {
218
- type: ['object', 'string'],
219
- },
220
- },
221
- },
222
- additionalProperties: false,
223
- },
224
- },
225
- targets: {
226
- type: 'array',
227
- items: {
228
- type: 'object',
229
- required: ['where'],
230
- properties: {
231
- minimumLevel: { type: 'string' },
232
- where: {
233
- type: 'object',
234
- required: ['metadata'],
235
- properties: {
236
- metadata: { type: 'object', additionalProperties: { type: 'string' } },
237
- },
238
- additionalProperties: false,
239
- },
240
- },
241
- additionalProperties: false,
242
- },
243
- },
244
- },
245
- };
246
202
  exports.i18nConfigSchema = {
247
203
  type: 'object',
248
204
  properties: {
@@ -287,40 +243,6 @@ const logoConfigSchema = {
287
243
  },
288
244
  additionalProperties: false,
289
245
  };
290
- const adobeAnalyticsConfigSchema = {
291
- type: 'object',
292
- properties: {
293
- includeInDevelopment: { type: 'boolean' },
294
- scriptUrl: { type: 'string' },
295
- pageViewEventName: { type: 'string' },
296
- },
297
- additionalProperties: false,
298
- required: ['scriptUrl'],
299
- };
300
- const navItemSchema = {
301
- type: 'object',
302
- properties: {
303
- page: { type: 'string' },
304
- directory: { type: 'string' },
305
- group: { type: 'string' },
306
- label: { type: 'string' },
307
- separator: { type: 'string' },
308
- separatorLine: { type: 'boolean' },
309
- version: { type: 'string' },
310
- menuStyle: { type: 'string', enum: ['drilldown'] },
311
- expanded: { type: 'string', const: 'always' },
312
- selectFirstItemOnExpand: { type: 'boolean' },
313
- flatten: { type: 'boolean' },
314
- linkedSidebars: {
315
- type: 'array',
316
- items: { type: 'string' },
317
- },
318
- },
319
- };
320
- const navItemsSchema = {
321
- type: 'array',
322
- items: Object.assign(Object.assign({}, navItemSchema), { properties: Object.assign(Object.assign({}, navItemSchema.properties), { items: { type: 'array', items: navItemSchema } }) }),
323
- };
324
246
  const hideConfigSchema = {
325
247
  type: 'object',
326
248
  properties: {
@@ -368,15 +290,6 @@ const linksConfigSchema = {
368
290
  required: ['href'],
369
291
  additionalProperties: true,
370
292
  };
371
- const suggestedPageSchema = {
372
- type: 'object',
373
- properties: {
374
- page: { type: 'string' },
375
- label: { type: 'string' },
376
- labelTranslationKey: { type: 'string' },
377
- },
378
- required: ['page'],
379
- };
380
293
  const markdownConfigSchema = {
381
294
  type: 'object',
382
295
  properties: {
@@ -397,7 +310,7 @@ const markdownConfigSchema = {
397
310
  },
398
311
  toc: {
399
312
  type: 'object',
400
- properties: Object.assign({ header: { type: 'string', default: 'On this page' }, depth: { type: 'number', default: 3 } }, hideConfigSchema.properties),
313
+ properties: Object.assign({ header: { type: 'string', default: 'On this page' }, depth: { type: 'integer', default: 3, minimum: 1 } }, hideConfigSchema.properties),
401
314
  additionalProperties: false,
402
315
  default: {},
403
316
  },
@@ -524,6 +437,142 @@ const googleAnalyticsConfigSchema = {
524
437
  additionalProperties: false,
525
438
  required: ['trackingId'],
526
439
  };
440
+ const adobeAnalyticsConfigSchema = {
441
+ type: 'object',
442
+ properties: {
443
+ includeInDevelopment: { type: 'boolean' },
444
+ scriptUrl: { type: 'string' },
445
+ pageViewEventName: { type: 'string' },
446
+ },
447
+ additionalProperties: false,
448
+ required: ['scriptUrl'],
449
+ };
450
+ const navItemSchema = {
451
+ type: 'object',
452
+ properties: {
453
+ page: { type: 'string' },
454
+ directory: { type: 'string' },
455
+ group: { type: 'string' },
456
+ label: { type: 'string' },
457
+ separator: { type: 'string' },
458
+ separatorLine: { type: 'boolean' },
459
+ version: { type: 'string' },
460
+ menuStyle: { type: 'string', enum: ['drilldown'] },
461
+ expanded: { type: 'string', const: 'always' },
462
+ selectFirstItemOnExpand: { type: 'boolean' },
463
+ flatten: { type: 'boolean' },
464
+ linkedSidebars: {
465
+ type: 'array',
466
+ items: { type: 'string' },
467
+ },
468
+ },
469
+ };
470
+ const navItemsSchema = {
471
+ type: 'array',
472
+ items: Object.assign(Object.assign({}, navItemSchema), { properties: Object.assign(Object.assign({}, navItemSchema.properties), { items: { type: 'array', items: navItemSchema } }) }),
473
+ };
474
+ const productConfigSchema = {
475
+ type: 'object',
476
+ properties: {
477
+ name: { type: 'string' },
478
+ icon: { type: 'string' },
479
+ folder: { type: 'string' },
480
+ },
481
+ additionalProperties: false,
482
+ required: ['name', 'icon', 'folder'],
483
+ };
484
+ const suggestedPageSchema = {
485
+ type: 'object',
486
+ properties: {
487
+ page: { type: 'string' },
488
+ label: { type: 'string' },
489
+ labelTranslationKey: { type: 'string' },
490
+ },
491
+ required: ['page'],
492
+ };
493
+ const catalogFilterSchema = {
494
+ type: 'object',
495
+ additionalProperties: false,
496
+ required: ['title', 'property'],
497
+ properties: {
498
+ type: { type: 'string', enum: ['select', 'checkboxes', 'date-range'] },
499
+ title: { type: 'string' },
500
+ titleTranslationKey: { type: 'string' },
501
+ property: { type: 'string' },
502
+ parentFilter: { type: 'string' },
503
+ missingCategoryName: { type: 'string' },
504
+ missingCategoryNameTranslationKey: { type: 'string' },
505
+ options: { type: 'array', items: { type: 'string' } },
506
+ },
507
+ };
508
+ const scorecardConfigSchema = {
509
+ type: 'object',
510
+ additionalProperties: true,
511
+ required: ['levels'],
512
+ properties: {
513
+ failBuildIfBelowMinimum: { type: 'boolean', default: false },
514
+ levels: {
515
+ type: 'array',
516
+ items: {
517
+ type: 'object',
518
+ required: ['name'],
519
+ properties: {
520
+ name: { type: 'string' },
521
+ extends: { type: 'array', items: { type: 'string' } },
522
+ rules: {
523
+ type: 'object',
524
+ additionalProperties: {
525
+ type: ['object', 'string'],
526
+ },
527
+ },
528
+ },
529
+ additionalProperties: false,
530
+ },
531
+ },
532
+ targets: {
533
+ type: 'array',
534
+ items: {
535
+ type: 'object',
536
+ required: ['where'],
537
+ properties: {
538
+ minimumLevel: { type: 'string' },
539
+ where: {
540
+ type: 'object',
541
+ required: ['metadata'],
542
+ properties: {
543
+ metadata: { type: 'object', additionalProperties: { type: 'string' } },
544
+ },
545
+ additionalProperties: false,
546
+ },
547
+ },
548
+ additionalProperties: false,
549
+ },
550
+ },
551
+ },
552
+ };
553
+ const catalogSchema = {
554
+ type: 'object',
555
+ additionalProperties: true,
556
+ required: ['slug', 'filters', 'groupByFirstFilter', 'items'],
557
+ properties: {
558
+ slug: { type: 'string' },
559
+ filters: { type: 'array', items: catalogFilterSchema },
560
+ groupByFirstFilter: { type: 'boolean' },
561
+ items: navItemsSchema,
562
+ requiredPermission: { type: 'string' },
563
+ separateVersions: { type: 'boolean' },
564
+ title: { type: 'string' },
565
+ titleTranslationKey: { type: 'string' },
566
+ description: { type: 'string' },
567
+ descriptionTranslationKey: { type: 'string' },
568
+ },
569
+ };
570
+ const catalogsConfigSchema = {
571
+ type: 'object',
572
+ patternProperties: {
573
+ '.*': catalogSchema,
574
+ },
575
+ };
527
576
  exports.themeConfigSchema = {
528
577
  type: 'object',
529
578
  properties: {
@@ -538,6 +587,10 @@ exports.themeConfigSchema = {
538
587
  properties: Object.assign({ items: navItemsSchema }, hideConfigSchema.properties),
539
588
  additionalProperties: false,
540
589
  },
590
+ products: {
591
+ type: 'object',
592
+ additionalProperties: productConfigSchema,
593
+ },
541
594
  footer: {
542
595
  type: 'object',
543
596
  properties: Object.assign({ items: navItemsSchema, copyrightText: { type: 'string' } }, hideConfigSchema.properties),
@@ -730,6 +783,22 @@ exports.themeConfigSchema = {
730
783
  additionalProperties: false,
731
784
  default: {},
732
785
  },
786
+ catalog: catalogsConfigSchema,
787
+ scorecard: scorecardConfigSchema,
788
+ },
789
+ additionalProperties: true,
790
+ default: {},
791
+ };
792
+ exports.productThemeOverrideSchema = {
793
+ type: 'object',
794
+ properties: {
795
+ logo: exports.themeConfigSchema.properties.logo,
796
+ navbar: exports.themeConfigSchema.properties.navbar,
797
+ footer: exports.themeConfigSchema.properties.footer,
798
+ sidebar: exports.themeConfigSchema.properties.sidebar,
799
+ search: exports.themeConfigSchema.properties.search,
800
+ codeSnippet: exports.themeConfigSchema.properties.codeSnippet,
801
+ breadcrumbs: exports.themeConfigSchema.properties.breadcrumbs,
733
802
  },
734
803
  additionalProperties: true,
735
804
  default: {},
@@ -160,7 +160,7 @@ const ConfigRoot = {
160
160
  items: {
161
161
  type: 'string',
162
162
  },
163
- }, redirects: { type: 'object', additionalProperties: config_external_schemas_1.redirectConfigSchema }, licenseKey: { type: 'string' }, seo: config_external_schemas_1.seoConfigSchema, rbac: config_external_schemas_1.rbacConfigSchema, responseHeaders: config_external_schemas_1.responseHeaderSchema, mockServer: config_external_schemas_1.mockServerConfigSchema, sso: config_external_schemas_1.ssoConfigSchema, developerOnboarding: config_external_schemas_1.devOnboardingConfigSchema, scorecard: config_external_schemas_1.scorecardConfigSchema, i18n: config_external_schemas_1.i18nConfigSchema }),
163
+ }, redirects: { type: 'object', additionalProperties: config_external_schemas_1.redirectConfigSchema }, licenseKey: { type: 'string' }, seo: config_external_schemas_1.seoConfigSchema, rbac: config_external_schemas_1.rbacConfigSchema, responseHeaders: config_external_schemas_1.responseHeaderSchema, mockServer: config_external_schemas_1.mockServerConfigSchema, sso: config_external_schemas_1.ssoConfigSchema, developerOnboarding: config_external_schemas_1.devOnboardingConfigSchema, i18n: config_external_schemas_1.i18nConfigSchema }),
164
164
  };
165
165
  const ConfigApis = {
166
166
  properties: {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-core",
3
- "version": "1.0.0-beta.130",
3
+ "version": "1.0.0-beta.131",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "engines": {