@open-resource-discovery/specification 1.14.0 → 1.14.2

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.
@@ -438,13 +438,25 @@ export interface ApiResource {
438
438
  */
439
439
  abstract?: boolean;
440
440
  /**
441
- * The visibility states who is allowed to "see" the described resource or capability.
441
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
442
+ *
443
+ * This controls who can see that the resource exists and retrieve its metadata level information.
444
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
445
+ *
446
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
442
447
  */
443
448
  visibility: "public" | "internal" | "private";
444
449
  /**
445
- * The `releaseStatus` specifies the stability of the resource and its external contract.
450
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
451
+ *
452
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
453
+ * of depending on the resource and whether it's suitable for production use.
454
+ *
455
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
456
+ *
457
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
446
458
  */
447
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
459
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
448
460
  /**
449
461
  * Indicates that this resource is currently not available for consumption at runtime, but could be configured to be so.
450
462
  * This can happen either because it has not been setup for use or disabled by an admin / user.
@@ -720,9 +732,16 @@ export interface ChangelogEntry {
720
732
  */
721
733
  version: string;
722
734
  /**
723
- * The `releaseStatus` specifies the stability of the resource and its external contract.
735
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
736
+ *
737
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
738
+ * of depending on the resource and whether it's suitable for production use.
739
+ *
740
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
741
+ *
742
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
724
743
  */
725
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
744
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
726
745
  /**
727
746
  * Date of change, without time or timezone information.
728
747
  *
@@ -770,7 +789,7 @@ export interface ApiResourceDefinition {
770
789
  * `text/plain` MAY be used for arbitrary plain-text and `application/octet-stream` for arbitrary binary data.
771
790
  *
772
791
  */
773
- mediaType: "application/json" | "application/xml" | "text/yaml" | "text/plain" | "application/octet-stream";
792
+ mediaType: string;
774
793
  /**
775
794
  * [URL reference](https://tools.ietf.org/html/rfc3986#section-4.1) (URL or relative reference) to the resource definition file.
776
795
  *
@@ -1018,7 +1037,7 @@ export interface Link {
1018
1037
  */
1019
1038
  url: string;
1020
1039
  /**
1021
- * Full description, notated in [CommonMark](https://spec.commonmark.org/) (Markdown)
1040
+ * Full description, notated in [CommonMark](https://spec.commonmark.org/) (Markdown).
1022
1041
  */
1023
1042
  description?: string;
1024
1043
  [k: string]: unknown | undefined;
@@ -1195,13 +1214,25 @@ export interface EventResource {
1195
1214
  */
1196
1215
  abstract?: boolean;
1197
1216
  /**
1198
- * The visibility states who is allowed to "see" the described resource or capability.
1217
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
1218
+ *
1219
+ * This controls who can see that the resource exists and retrieve its metadata level information.
1220
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
1221
+ *
1222
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
1199
1223
  */
1200
1224
  visibility: "public" | "internal" | "private";
1201
1225
  /**
1202
- * The `releaseStatus` specifies the stability of the resource and its external contract.
1226
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
1227
+ *
1228
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
1229
+ * of depending on the resource and whether it's suitable for production use.
1230
+ *
1231
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
1232
+ *
1233
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
1203
1234
  */
1204
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
1235
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
1205
1236
  /**
1206
1237
  * Indicates that this resource is currently not available for consumption at runtime, but could be configured to be so.
1207
1238
  * This can happen either because it has not been setup for use or disabled by an admin / user.
@@ -1424,7 +1455,7 @@ export interface EventResourceDefinition {
1424
1455
  * `text/plain` MAY be used for arbitrary plain-text and `application/octet-stream` for arbitrary binary data.
1425
1456
  *
1426
1457
  */
1427
- mediaType: "application/json" | "application/xml" | "text/yaml" | "text/plain" | "application/octet-stream";
1458
+ mediaType: string;
1428
1459
  /**
1429
1460
  * [URL reference](https://tools.ietf.org/html/rfc3986#section-4.1) (URL or relative reference) to the resource definition file.
1430
1461
  *
@@ -1592,13 +1623,25 @@ export interface EntityType {
1592
1623
  */
1593
1624
  lastUpdate?: string;
1594
1625
  /**
1595
- * The visibility states who is allowed to "see" the described resource or capability.
1626
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
1627
+ *
1628
+ * This controls who can see that the resource exists and retrieve its metadata level information.
1629
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
1630
+ *
1631
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
1596
1632
  */
1597
1633
  visibility: "public" | "internal" | "private";
1598
1634
  /**
1599
- * The `releaseStatus` specifies the stability of the resource and its external contract.
1635
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
1636
+ *
1637
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
1638
+ * of depending on the resource and whether it's suitable for production use.
1639
+ *
1640
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
1641
+ *
1642
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
1600
1643
  */
1601
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
1644
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
1602
1645
  /**
1603
1646
  * The deprecation date defines when the resource has been set as deprecated.
1604
1647
  * This is not to be confused with the `sunsetDate` which defines when the resource will be actually sunset, aka. decommissioned / removed / archived.
@@ -1714,8 +1757,10 @@ export interface RelatedEntityType {
1714
1757
  * Optional type of the relationship, which defines a stricter semantic what the relationship implies.
1715
1758
  *
1716
1759
  * If not provided, the relationship type has no semantics, it's "related somehow".
1760
+ *
1761
+ * MUST be a valid [Concept ID](../index.md#concept-id).
1717
1762
  */
1718
- relationType?: "part-of" | "can-share-identity";
1763
+ relationType?: (string | "part-of" | "can-share-identity") & string;
1719
1764
  }
1720
1765
  /**
1721
1766
  * Capabilities can be used to describe use case specific capabilities, most notably supported features or additional information (like configuration) that needs to be understood from outside.
@@ -1835,13 +1880,25 @@ export interface Capability {
1835
1880
  */
1836
1881
  lastUpdate?: string;
1837
1882
  /**
1838
- * The visibility states who is allowed to "see" the described resource or capability.
1883
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
1884
+ *
1885
+ * This controls who can see that the resource exists and retrieve its metadata level information.
1886
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
1887
+ *
1888
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
1839
1889
  */
1840
1890
  visibility: "public" | "internal" | "private";
1841
1891
  /**
1842
- * The `releaseStatus` specifies the stability of the resource and its external contract.
1892
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
1893
+ *
1894
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
1895
+ * of depending on the resource and whether it's suitable for production use.
1896
+ *
1897
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
1898
+ *
1899
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
1843
1900
  */
1844
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
1901
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
1845
1902
  /**
1846
1903
  * Indicates that this resource is currently not available for consumption at runtime, but could be configured to be so.
1847
1904
  * This can happen either because it has not been setup for use or disabled by an admin / user.
@@ -1867,6 +1924,24 @@ export interface Capability {
1867
1924
  * MUST be a valid reference to an [EntityType Resource](#entity-type) ORD ID.
1868
1925
  */
1869
1926
  relatedEntityTypes?: string[];
1927
+ /**
1928
+ * Optional list of related API Resources.
1929
+ *
1930
+ * Use this to indicate which APIs implement, expose, or are otherwise related to this capability.
1931
+ */
1932
+ relatedApiResources?: RelatedAPIResource[];
1933
+ /**
1934
+ * Optional list of related Event Resources.
1935
+ *
1936
+ * Use this to indicate which events are emitted, consumed, or otherwise related to this capability.
1937
+ */
1938
+ relatedEventResources?: RelatedEventResource[];
1939
+ /**
1940
+ * Optional list of related Capabilities.
1941
+ *
1942
+ * Use this to indicate dependencies, extensions, or other relationships between capabilities.
1943
+ */
1944
+ relatedCapabilities?: RelatedCapability[];
1870
1945
  /**
1871
1946
  * List of available machine-readable definitions, which describe the resource or capability in detail.
1872
1947
  * See also [Resource Definitions](../index.md#resource-definitions) for more context.
@@ -1907,6 +1982,60 @@ export interface Capability {
1907
1982
  */
1908
1983
  systemInstanceAware?: boolean;
1909
1984
  }
1985
+ /**
1986
+ * Defines a relation to an API Resource (via its ORD ID).
1987
+ */
1988
+ export interface RelatedAPIResource {
1989
+ /**
1990
+ * The ORD ID is a stable, globally unique ID for ORD resources or taxonomy.
1991
+ *
1992
+ * It MUST be a valid [ORD ID](../index.md#ord-id) of the appropriate ORD type.
1993
+ */
1994
+ ordId: string;
1995
+ /**
1996
+ * Optional type of the relationship as a [Concept ID](../index.md#concept-id).
1997
+ *
1998
+ * Defines the semantic meaning of the relationship.
1999
+ * If not provided, the relationship has no specific semantics ("related somehow").
2000
+ */
2001
+ relationType?: string;
2002
+ }
2003
+ /**
2004
+ * Defines a relation to an Event Resource (via its ORD ID).
2005
+ */
2006
+ export interface RelatedEventResource {
2007
+ /**
2008
+ * The ORD ID is a stable, globally unique ID for ORD resources or taxonomy.
2009
+ *
2010
+ * It MUST be a valid [ORD ID](../index.md#ord-id) of the appropriate ORD type.
2011
+ */
2012
+ ordId: string;
2013
+ /**
2014
+ * Optional type of the relationship as a [Concept ID](../index.md#concept-id).
2015
+ *
2016
+ * Defines the semantic meaning of the relationship.
2017
+ * If not provided, the relationship has no specific semantics ("related somehow").
2018
+ */
2019
+ relationType?: string;
2020
+ }
2021
+ /**
2022
+ * Defines a relation to another Capability (via its ORD ID).
2023
+ */
2024
+ export interface RelatedCapability {
2025
+ /**
2026
+ * The ORD ID is a stable, globally unique ID for ORD resources or taxonomy.
2027
+ *
2028
+ * It MUST be a valid [ORD ID](../index.md#ord-id) of the appropriate ORD type.
2029
+ */
2030
+ ordId: string;
2031
+ /**
2032
+ * Optional type of the relationship as a [Concept ID](../index.md#concept-id).
2033
+ *
2034
+ * Defines the semantic meaning of the relationship.
2035
+ * If not provided, the relationship has no specific semantics ("related somehow").
2036
+ */
2037
+ relationType?: string;
2038
+ }
1910
2039
  /**
1911
2040
  * Link and categorization of a machine-readable capability definition.
1912
2041
  */
@@ -1932,7 +2061,7 @@ export interface CapabilityDefinition {
1932
2061
  * `text/plain` MAY be used for arbitrary plain-text and `application/octet-stream` for arbitrary binary data.
1933
2062
  *
1934
2063
  */
1935
- mediaType: "application/json" | "application/xml" | "text/yaml" | "text/plain" | "application/octet-stream";
2064
+ mediaType: string;
1936
2065
  /**
1937
2066
  * [URL reference](https://tools.ietf.org/html/rfc3986#section-4.1) (URL or relative reference) to the resource definition file.
1938
2067
  *
@@ -2086,7 +2215,7 @@ export interface DataProduct {
2086
2215
  * In the context of data products, it it covers only properties on the data product level.
2087
2216
  * APIs that are part of the input and output ports have their own independent `releaseStatus` and `version`.
2088
2217
  */
2089
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
2218
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
2090
2219
  /**
2091
2220
  * Indicates that this resource is currently not available for consumption at runtime, but could be configured to be so.
2092
2221
  * This can happen either because it has not been setup for use or disabled by an admin / user.
@@ -2428,13 +2557,25 @@ export interface Agent {
2428
2557
  */
2429
2558
  lastUpdate?: string;
2430
2559
  /**
2431
- * The visibility states who is allowed to "see" the described resource or capability.
2560
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
2561
+ *
2562
+ * This controls who can see that the resource exists and retrieve its metadata level information.
2563
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
2564
+ *
2565
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
2432
2566
  */
2433
2567
  visibility: "public" | "internal" | "private";
2434
2568
  /**
2435
- * The `releaseStatus` specifies the stability of the resource and its external contract.
2569
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
2570
+ *
2571
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
2572
+ * of depending on the resource and whether it's suitable for production use.
2573
+ *
2574
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
2575
+ *
2576
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
2436
2577
  */
2437
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
2578
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
2438
2579
  /**
2439
2580
  * Indicates that this resource is currently not available for consumption at runtime, but could be configured to be so.
2440
2581
  * This can happen either because it has not been setup for use or disabled by an admin / user.
@@ -2694,13 +2835,25 @@ export interface IntegrationDependency {
2694
2835
  */
2695
2836
  lastUpdate?: string;
2696
2837
  /**
2697
- * The visibility states who is allowed to "see" the described resource or capability.
2838
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
2839
+ *
2840
+ * This controls who can see that the resource exists and retrieve its metadata level information.
2841
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
2842
+ *
2843
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
2698
2844
  */
2699
2845
  visibility: "public" | "internal" | "private";
2700
2846
  /**
2701
- * The `releaseStatus` specifies the stability of the resource and its external contract.
2847
+ * Defines the maturity level and stability commitment for the resource's API contract (interface, behavior, data models).
2848
+ *
2849
+ * This indicates whether the resource may undergo backward-incompatible changes. It helps consumers understand the risk
2850
+ * of depending on the resource and whether it's suitable for production use.
2851
+ *
2852
+ * Note: This is independent of `visibility` and does not imply availability guarantees or SLAs - it concerns only the API contract stability.
2853
+ *
2854
+ * See [Lifecycle](../index.md#lifecycle) and [Compatibility](../concepts/compatibility.md) for more details.
2702
2855
  */
2703
- releaseStatus: "beta" | "active" | "deprecated" | "sunset";
2856
+ releaseStatus: "development" | "beta" | "active" | "deprecated" | "sunset";
2704
2857
  /**
2705
2858
  * The sunset date defines when the resource is scheduled to be decommissioned / removed / archived.
2706
2859
  *
@@ -2789,6 +2942,10 @@ export interface Aspect {
2789
2942
  * List of Event Resource Dependencies.
2790
2943
  */
2791
2944
  eventResources?: EventResourceIntegrationAspect[];
2945
+ /**
2946
+ * List of Capability Dependencies.
2947
+ */
2948
+ capabilities?: CapabilityIntegrationAspect[];
2792
2949
  }
2793
2950
  /**
2794
2951
  * API resource related integration aspect
@@ -2869,6 +3026,22 @@ export interface EventResourceIntegrationAspectSubset {
2869
3026
  */
2870
3027
  eventType: string;
2871
3028
  }
3029
+ /**
3030
+ * Capability related integration aspect
3031
+ */
3032
+ export interface CapabilityIntegrationAspect {
3033
+ /**
3034
+ * The ORD ID is a stable, globally unique ID for ORD resources or taxonomy.
3035
+ *
3036
+ * It MUST be a valid [ORD ID](../index.md#ord-id) of the appropriate ORD type.
3037
+ */
3038
+ ordId: string;
3039
+ /**
3040
+ * Minimum version of the references resource that the integration requires.
3041
+ *
3042
+ */
3043
+ minVersion?: string;
3044
+ }
2872
3045
  /**
2873
3046
  * The vendor of a product or a package, usually a corporation or a customer / user.
2874
3047
  *
@@ -3092,6 +3265,10 @@ export interface Package {
3092
3265
  * `packageLinks` MUST be preferred if applicable.
3093
3266
  */
3094
3267
  links?: Link[];
3268
+ /**
3269
+ * Generic list of files with arbitrary meaning and content. Meant to be used for linking PDFs, Word or similar content. This option MUST NOT be used for linking the actual metadata files like OpenAPI, AsyncAPI, CSN, etc.
3270
+ */
3271
+ files?: File[];
3095
3272
  /**
3096
3273
  * Standardized identifier for the license.
3097
3274
  * It MUST conform to the [SPDX License List](https://spdx.org/licenses).
@@ -3188,6 +3365,42 @@ export interface PackageLink {
3188
3365
  url: string;
3189
3366
  [k: string]: unknown | undefined;
3190
3367
  }
3368
+ /**
3369
+ * File that can be attached on ORD package level.
3370
+ *
3371
+ */
3372
+ export interface File {
3373
+ /**
3374
+ * Human readable title of the file.
3375
+ *
3376
+ * MUST be unique within the collection of files provided.
3377
+ */
3378
+ title: string;
3379
+ /**
3380
+ * [URL](https://tools.ietf.org/html/rfc3986) of the link.
3381
+ *
3382
+ * The file target MAY be relative or absolute.
3383
+ * If a relative URL is given, it is relative to the [`describedSystemInstance.baseUrl`](#system-instance_baseurl).
3384
+ * If an absolute URL is given, then it MUST be openly accessible.
3385
+ */
3386
+ url: string;
3387
+ /**
3388
+ * Full description, notated in [CommonMark](https://spec.commonmark.org/) (Markdown).
3389
+ *
3390
+ * The description SHOULD not be excessive in length and is not meant to provide full documentation.
3391
+ * Detailed documentation SHOULD be attached as (typed) links.
3392
+ */
3393
+ description?: string;
3394
+ /**
3395
+ * The [Media Type](https://www.iana.org/assignments/media-types/media-types.xhtml) of the definition serialization format.
3396
+ * A consuming application can use this information to know which file format parser it needs to use.
3397
+ *
3398
+ * If no Media Type is registered for the referenced file, `text/plain` MAY be used for arbitrary plain-text and `application/octet-stream` for arbitrary binary data.
3399
+ *
3400
+ */
3401
+ mediaType: string;
3402
+ [k: string]: unknown | undefined;
3403
+ }
3191
3404
  /**
3192
3405
  * A [**Consumption Bundle**](../concepts/grouping-and-bundling#consumption-bundle) groups APIs and Events together that can be consumed with the credentials and auth mechanism.
3193
3406
  * Ideally it also includes instructions and details how to request access and credentials for resources.
@@ -3281,7 +3494,12 @@ export interface ConsumptionBundle {
3281
3494
  */
3282
3495
  lastUpdate?: string;
3283
3496
  /**
3284
- * The visibility states who is allowed to "see" the described resource or capability.
3497
+ * Defines metadata access control - which categories of consumers are allowed to discover and access the resource and its metadata.
3498
+ *
3499
+ * This controls who can see that the resource exists and retrieve its metadata level information.
3500
+ * It does NOT control runtime access to the resource itself - that is managed separately through authentication and authorization mechanisms.
3501
+ *
3502
+ * Use this to prevent exposing internal implementation details to inappropriate consumer audiences.
3285
3503
  */
3286
3504
  visibility?: "public" | "internal" | "private";
3287
3505
  /**
package/package.json CHANGED
@@ -1,54 +1,60 @@
1
1
  {
2
- "$schema": "http://json.schemastore.org/package",
3
- "name": "@open-resource-discovery/specification",
4
- "version": "1.14.0",
5
- "description": "Open Resource Discovery (ORD) Specification",
6
- "author": "SAP SE",
7
- "license": "Apache-2.0",
8
- "main": "dist/index.js",
9
- "types": "dist/index.d.ts",
10
- "engines": {
11
- "node": ">=22.0.0",
12
- "npm": ">=10.0.0"
13
- },
14
- "repository": {
15
- "type": "git",
16
- "url": "git+https://github.com/open-resource-discovery/specification.git"
17
- },
18
- "files": [
19
- "README.md",
20
- "dist/index.js",
21
- "dist/index.d.ts",
22
- "dist/generated/spec/v1"
23
- ],
24
- "scripts": {
25
- "docusaurus": "docusaurus",
26
- "build": "npm run generate && npm run build-ts && npm run build-docusaurus",
27
- "clean": "node src/helper/clean.mjs",
28
- "build-ts": "tsc -p ./tsconfig.json",
29
- "build-docusaurus": "docusaurus build",
30
- "serve": "docusaurus serve",
31
- "start": "docusaurus start",
32
- "deploy": "npm run build && gh-pages -d ./build",
33
- "pregenerate": "npm run clean",
34
- "generate": "npx @open-resource-discovery/spec-toolkit -c ./spec-toolkit.config.json",
35
- "postgenerate": "ts-node ./src/helper/copyGeneratedToDestination.ts"
36
- },
37
- "devDependencies": {
38
- "@docusaurus/core": "3.9.2",
39
- "@docusaurus/plugin-client-redirects": "3.9.2",
40
- "@docusaurus/preset-classic": "3.9.2",
41
- "@docusaurus/theme-mermaid": "3.9.2",
42
- "@easyops-cn/docusaurus-search-local": "0.52.2",
43
- "@mdx-js/react": "3.1.1",
44
- "@open-resource-discovery/spec-toolkit": "0.7.0",
45
- "@types/fs-extra": "11.0.4",
46
- "clsx": "2.1.1",
47
- "fs-extra": "11.3.3",
48
- "lefthook": "2.0.15",
49
- "prism-react-renderer": "2.4.1",
50
- "react": "18.3.1",
51
- "react-dom": "18.3.1",
52
- "ts-node": "10.9.2"
53
- }
2
+ "$schema": "http://json.schemastore.org/package",
3
+ "name": "@open-resource-discovery/specification",
4
+ "version": "1.14.2",
5
+ "description": "Open Resource Discovery (ORD) Specification",
6
+ "author": "SAP SE",
7
+ "license": "Apache-2.0",
8
+ "main": "dist/index.js",
9
+ "types": "dist/index.d.ts",
10
+ "engines": {
11
+ "node": ">=22.0.0",
12
+ "npm": ">=10.0.0"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/open-resource-discovery/specification.git"
17
+ },
18
+ "files": [
19
+ "README.md",
20
+ "dist/index.js",
21
+ "dist/index.d.ts",
22
+ "dist/generated/spec/v1"
23
+ ],
24
+ "scripts": {
25
+ "docusaurus": "docusaurus",
26
+ "build": "npm run generate && npm run build-ts && npm run build-docusaurus",
27
+ "clean": "node src/helper/clean.mjs",
28
+ "build-ts": "tsc -p ./tsconfig.json",
29
+ "build-docusaurus": "docusaurus build",
30
+ "format": "biome format --write .",
31
+ "lint": "biome lint .",
32
+ "test": "npm run build-ts && node --test dist/**/*.test.js",
33
+ "serve": "docusaurus serve",
34
+ "start": "docusaurus start",
35
+ "deploy": "npm run build && gh-pages -d ./build",
36
+ "pregenerate": "npm run clean",
37
+ "generate": "npx @open-resource-discovery/spec-toolkit -c ./spec-toolkit.config.json",
38
+ "postgenerate": "ts-node ./src/helper/copyGeneratedToDestination.ts"
39
+ },
40
+ "devDependencies": {
41
+ "@biomejs/biome": "2.4.9",
42
+ "@docusaurus/core": "3.9.2",
43
+ "@docusaurus/plugin-client-redirects": "3.9.2",
44
+ "@docusaurus/preset-classic": "3.9.2",
45
+ "@docusaurus/theme-mermaid": "3.9.2",
46
+ "@easyops-cn/docusaurus-search-local": "0.55.1",
47
+ "@mdx-js/react": "3.1.1",
48
+ "@open-resource-discovery/spec-toolkit": "0.8.0",
49
+ "@types/fs-extra": "11.0.4",
50
+ "ajv": "8.18.0",
51
+ "ajv-formats": "3.0.1",
52
+ "clsx": "2.1.1",
53
+ "fs-extra": "11.3.4",
54
+ "lefthook": "2.1.4",
55
+ "prism-react-renderer": "2.4.1",
56
+ "react": "18.3.1",
57
+ "react-dom": "18.3.1",
58
+ "ts-node": "10.9.2"
59
+ }
54
60
  }