@redocly/config 0.9.0 → 0.10.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.
@@ -1,7 +1,10 @@
1
1
  import { DEFAULT_TEAM_CLAIM_NAME, AuthProviderType, ApigeeDevOnboardingIntegrationAuthType, } from './constants';
2
2
  import { themeConfigSchema } from './default-theme-config-schema';
3
+ import { feedbackConfigSchema } from './feedback-config-schema';
4
+ import { graphqlConfigSchema } from './graphql-config-schema';
3
5
  import { removePropertyRecursively } from './remove-property-recursively';
4
6
  import { reuniteConfigSchema } from './reunite-config-schema';
7
+ import { analyticsConfigSchema, breadcrumbsConfigSchema, catalogsConfigSchema, codeSnippetConfigSchema, colorModeConfigSchema, footerConfigSchema, linksConfigSchema, logoConfigSchema, markdownConfigSchema, navbarConfigSchema, navigationConfigSchema, openapiConfigSchema, productsConfigSchema, scorecardConfigSchema, scriptsConfigSchema, searchConfigSchema, sidebarConfigSchema, userMenuConfigSchema, versionPickerConfigSchema, } from './ex-theme-config-schemas';
5
8
  export const oidcIssuerMetadataSchema = {
6
9
  type: 'object',
7
10
  properties: {
@@ -101,11 +104,16 @@ export const apiConfigSchema = {
101
104
  root: { type: 'string' },
102
105
  output: { type: 'string', pattern: '(.ya?ml|.json)$' },
103
106
  rbac: { type: 'object', additionalProperties: true },
107
+ openapi: openapiConfigSchema,
108
+ graphql: graphqlConfigSchema,
109
+ /**
110
+ * @deprecated left for backwards compatibility
111
+ */
104
112
  theme: {
105
113
  type: 'object',
106
114
  properties: {
107
- openapi: themeConfigSchema.properties.openapi,
108
- graphql: themeConfigSchema.properties.graphql,
115
+ openapi: openapiConfigSchema,
116
+ graphql: graphqlConfigSchema,
109
117
  },
110
118
  additionalProperties: false,
111
119
  },
@@ -290,6 +298,13 @@ const responseHeaderSchema = {
290
298
  export const redoclyConfigSchema = {
291
299
  type: 'object',
292
300
  properties: {
301
+ /**
302
+ * @deprecated Should use `plugins` instead
303
+ */
304
+ imports: {
305
+ type: 'array',
306
+ items: { type: 'string' },
307
+ },
293
308
  licenseKey: { type: 'string' },
294
309
  redirects: redirectsConfigSchema,
295
310
  seo: seoConfigSchema,
@@ -333,8 +348,33 @@ export const redoclyConfigSchema = {
333
348
  type: 'string',
334
349
  },
335
350
  },
351
+ /**
352
+ * @deprecated properties moved to the root of the config
353
+ */
336
354
  theme: themeConfigSchema,
337
355
  reunite: reuniteConfigSchema,
356
+ // Ex theme properties
357
+ logo: logoConfigSchema,
358
+ navbar: navbarConfigSchema,
359
+ products: productsConfigSchema,
360
+ footer: footerConfigSchema,
361
+ sidebar: sidebarConfigSchema,
362
+ scripts: scriptsConfigSchema,
363
+ links: linksConfigSchema,
364
+ feedback: feedbackConfigSchema,
365
+ search: searchConfigSchema,
366
+ colorMode: colorModeConfigSchema,
367
+ navigation: navigationConfigSchema,
368
+ codeSnippet: codeSnippetConfigSchema,
369
+ markdown: markdownConfigSchema,
370
+ openapi: openapiConfigSchema,
371
+ graphql: graphqlConfigSchema,
372
+ analytics: analyticsConfigSchema,
373
+ userMenu: userMenuConfigSchema,
374
+ versionPicker: versionPickerConfigSchema,
375
+ breadcrumbs: breadcrumbsConfigSchema,
376
+ catalog: catalogsConfigSchema,
377
+ scorecard: scorecardConfigSchema,
338
378
  },
339
379
  default: { redirects: {} },
340
380
  additionalProperties: true,
@@ -1,10 +1,11 @@
1
1
  import type { FromSchema } from 'json-schema-to-ts';
2
- import type { amplitudeAnalyticsConfigSchema, catalogFilterSchema, catalogSchema, googleAnalyticsConfigSchema, gtmAnalyticsConfigSchema, markdownConfigSchema, productConfigSchema, productGoogleAnalyticsConfigSchema, rudderstackAnalyticsConfigSchema, scorecardConfigSchema, segmentAnalyticsConfigSchema, closedThemeConfigSchema as themeConfigSchema } from './default-theme-config-schema';
2
+ import type { productConfigOverrideSchema, themeConfigSchema } from './default-theme-config-schema';
3
3
  import type { apiConfigSchema, apigeeAdapterAuthOauth2Schema, apigeeAdapterAuthServiceAccountSchema, apigeeEdgeAdapterConfigSchema, apigeeXAdapterConfigSchema, authProviderConfigSchema, devOnboardingAdapterConfigSchema, graviteeAdapterConfigSchema, l10nConfigSchema, oidcIssuerMetadataSchema, oidcProviderConfigSchema, rbacConfigSchema, rbacScopeItemsSchema, redirectConfigSchema, redirectsConfigSchema, rootRedoclyConfigSchema, saml2ProviderConfigSchema, seoConfigSchema, ssoOnPremConfigSchema } from './root-config-schema';
4
4
  import type { RedocConfigTypes } from './redoc-types';
5
5
  import type { GraphQLConfigTypes } from './graphql-types';
6
+ import type { productConfigSchema, productGoogleAnalyticsConfigSchema, markdownConfigSchema, amplitudeAnalyticsConfigSchema, rudderstackAnalyticsConfigSchema, segmentAnalyticsConfigSchema, gtmAnalyticsConfigSchema, googleAnalyticsConfigSchema, scorecardConfigSchema, catalogFilterSchema, catalogSchema } from './ex-theme-config-schemas';
6
7
  /**
7
- * Theme
8
+ * @deprecated left for backwards compatibility. To be removed in Realm 1.0
8
9
  */
9
10
  export type ThemeConfig = Omit<FromSchema<typeof themeConfigSchema>, 'openapi'> & {
10
11
  openapi?: RedocConfigTypes;
@@ -22,11 +23,11 @@ export type GoogleAnalyticsConfig = FromSchema<typeof googleAnalyticsConfigSchem
22
23
  export type CatalogConfig = FromSchema<typeof catalogSchema>;
23
24
  export type CatalogFilterConfig = FromSchema<typeof catalogFilterSchema>;
24
25
  export type ScorecardConfig = FromSchema<typeof scorecardConfigSchema>;
25
- /**
26
- * Root
27
- */
28
- export type RedoclyConfig<T = ThemeConfig> = Omit<FromSchema<typeof rootRedoclyConfigSchema>, 'theme' | 'apis'> & {
29
- theme?: T;
26
+ export type RedoclyConfig = Omit<FromSchema<typeof rootRedoclyConfigSchema>, 'theme' | 'apis'> & {
27
+ /**
28
+ * @deprecated properties moved to the root of the config
29
+ */
30
+ theme?: any;
30
31
  apis?: Record<string, ApiConfig>;
31
32
  };
32
33
  export type RedirectConfig = FromSchema<typeof redirectConfigSchema>;
@@ -47,9 +48,13 @@ export type SsoConfig = FromSchema<typeof ssoOnPremConfigSchema>;
47
48
  export type L10nConfig = FromSchema<typeof l10nConfigSchema>;
48
49
  type BasicApiConfig = FromSchema<typeof apiConfigSchema>;
49
50
  export type ApiConfig = BasicApiConfig & {
51
+ /**
52
+ * @deprecated left for backwards compatibility
53
+ */
50
54
  theme?: {
51
55
  openapi?: RedocConfig;
52
56
  graphql?: GraphQLConfig;
53
57
  };
54
58
  };
59
+ export type ProductConfigOverride = FromSchema<typeof productConfigOverrideSchema>;
55
60
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/config",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "license": "MIT",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib-esm/index.js",