@swagger-api/apidom-json-pointer 1.0.0-beta.9 → 1.0.0-rc.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 (38) hide show
  1. package/CHANGELOG.md +182 -0
  2. package/README.md +37 -6
  3. package/dist/apidom-json-pointer.browser.js +7982 -11742
  4. package/dist/apidom-json-pointer.browser.min.js +1 -1
  5. package/package.json +25 -15
  6. package/src/index.cjs +26 -22
  7. package/src/index.mjs +36 -9
  8. package/src/legacy/compile.cjs +25 -0
  9. package/src/legacy/compile.mjs +20 -0
  10. package/src/{errors → legacy/errors}/CompilationJsonPointerError.cjs +2 -0
  11. package/src/{errors → legacy/errors}/CompilationJsonPointerError.mjs +2 -0
  12. package/src/{errors → legacy/errors}/EvaluationJsonPointerError.cjs +2 -0
  13. package/src/{errors → legacy/errors}/EvaluationJsonPointerError.mjs +2 -0
  14. package/src/{errors → legacy/errors}/InvalidJsonPointerError.cjs +2 -0
  15. package/src/{errors → legacy/errors}/InvalidJsonPointerError.mjs +2 -0
  16. package/src/{errors → legacy/errors}/JsonPointerError.cjs +1 -0
  17. package/src/{errors → legacy/errors}/JsonPointerError.mjs +1 -0
  18. package/src/legacy/escape.cjs +13 -0
  19. package/src/legacy/escape.mjs +10 -0
  20. package/src/legacy/evaluate.cjs +36 -0
  21. package/src/legacy/evaluate.mjs +31 -0
  22. package/src/legacy/index.cjs +25 -0
  23. package/src/legacy/index.mjs +9 -0
  24. package/src/legacy/parse.cjs +38 -0
  25. package/src/legacy/parse.mjs +34 -0
  26. package/src/legacy/unescape.cjs +13 -0
  27. package/src/legacy/unescape.mjs +10 -0
  28. package/types/apidom-json-pointer.d.ts +68 -91
  29. package/src/compile.cjs +0 -24
  30. package/src/compile.mjs +0 -19
  31. package/src/escape.cjs +0 -10
  32. package/src/escape.mjs +0 -7
  33. package/src/evaluate.cjs +0 -62
  34. package/src/evaluate.mjs +0 -57
  35. package/src/parse.cjs +0 -53
  36. package/src/parse.mjs +0 -47
  37. package/src/unescape.cjs +0 -24
  38. package/src/unescape.mjs +0 -21
package/CHANGELOG.md CHANGED
@@ -3,6 +3,188 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.0.0-rc.0](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.51...v1.0.0-rc.0) (2025-10-21)
7
+
8
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
9
+
10
+ # [1.0.0-beta.51](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.50...v1.0.0-beta.51) (2025-10-14)
11
+
12
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
13
+
14
+ # [1.0.0-beta.50](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.49...v1.0.0-beta.50) (2025-09-26)
15
+
16
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
17
+
18
+ # [1.0.0-beta.49](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.48...v1.0.0-beta.49) (2025-09-22)
19
+
20
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
21
+
22
+ # [1.0.0-beta.48](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.47...v1.0.0-beta.48) (2025-09-09)
23
+
24
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
25
+
26
+ # [1.0.0-beta.47](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.46...v1.0.0-beta.47) (2025-09-01)
27
+
28
+ ### Features
29
+
30
+ - **ls:** disable newly added rules for 3.1 spec ([#4997](https://github.com/swagger-api/apidom/issues/4997)) ([d5b16f8](https://github.com/swagger-api/apidom/commit/d5b16f82a916aea70929d2f3ff5be04769d8d8d3))
31
+
32
+ # [1.0.0-beta.46](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.45...v1.0.0-beta.46) (2025-08-19)
33
+
34
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
35
+
36
+ # [1.0.0-beta.45](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.44...v1.0.0-beta.45) (2025-08-01)
37
+
38
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
39
+
40
+ # [1.0.0-beta.44](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.43...v1.0.0-beta.44) (2025-07-07)
41
+
42
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
43
+
44
+ # [1.0.0-beta.43](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.42...v1.0.0-beta.43) (2025-06-13)
45
+
46
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
47
+
48
+ # [1.0.0-beta.42](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.41...v1.0.0-beta.42) (2025-06-06)
49
+
50
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
51
+
52
+ # [1.0.0-beta.41](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.40...v1.0.0-beta.41) (2025-06-04)
53
+
54
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
55
+
56
+ # [1.0.0-beta.40](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.39...v1.0.0-beta.40) (2025-05-30)
57
+
58
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
59
+
60
+ # [1.0.0-beta.39](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.38...v1.0.0-beta.39) (2025-05-20)
61
+
62
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
63
+
64
+ # [1.0.0-beta.38](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.37...v1.0.0-beta.38) (2025-05-16)
65
+
66
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
67
+
68
+ # [1.0.0-beta.37](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.36...v1.0.0-beta.37) (2025-05-12)
69
+
70
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
71
+
72
+ # [1.0.0-beta.36](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.35...v1.0.0-beta.36) (2025-05-06)
73
+
74
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
75
+
76
+ # [1.0.0-beta.35](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.34...v1.0.0-beta.35) (2025-05-02)
77
+
78
+ ### Bug Fixes
79
+
80
+ - **json-pointer-relative:** use spec compliant JSON Pointer impl ([#4885](https://github.com/swagger-api/apidom/issues/4885)) ([f22949c](https://github.com/swagger-api/apidom/commit/f22949c26b3b3f1dab2081dc32b84f4e1035049c)), closes [#4870](https://github.com/swagger-api/apidom/issues/4870)
81
+
82
+ # [1.0.0-beta.34](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.33...v1.0.0-beta.34) (2025-05-02)
83
+
84
+ ### Bug Fixes
85
+
86
+ - **ns-openapi-3-1:** use spec compliant JSON Pointer implementation ([#4880](https://github.com/swagger-api/apidom/issues/4880)) ([9499aa8](https://github.com/swagger-api/apidom/commit/9499aa8733445f15ec7441c7f87b89dab8542c49)), closes [#4870](https://github.com/swagger-api/apidom/issues/4870)
87
+
88
+ # [1.0.0-beta.33](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.32...v1.0.0-beta.33) (2025-04-30)
89
+
90
+ ### Bug Fixes
91
+
92
+ - **json-path:** use spec compliant JSON Pointer evaluation ([#4873](https://github.com/swagger-api/apidom/issues/4873)) ([c8407d6](https://github.com/swagger-api/apidom/commit/c8407d691b0fc540dfd3476f61ce17611621e67b))
93
+
94
+ # [1.0.0-beta.32](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.31...v1.0.0-beta.32) (2025-04-28)
95
+
96
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
97
+
98
+ # [1.0.0-beta.31](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.30...v1.0.0-beta.31) (2025-04-24)
99
+
100
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
101
+
102
+ # [1.0.0-beta.30](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.29...v1.0.0-beta.30) (2025-03-17)
103
+
104
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
105
+
106
+ # [1.0.0-beta.29](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.28...v1.0.0-beta.29) (2025-03-17)
107
+
108
+ ### Bug Fixes
109
+
110
+ - **security:** eliminate CVE-2025-27789 ([#4797](https://github.com/swagger-api/apidom/issues/4797)) ([af335c3](https://github.com/swagger-api/apidom/commit/af335c3d53616b7991acc74329e61d350398997a))
111
+
112
+ # [1.0.0-beta.28](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.27...v1.0.0-beta.28) (2025-03-12)
113
+
114
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
115
+
116
+ # [1.0.0-beta.27](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.26...v1.0.0-beta.27) (2025-03-12)
117
+
118
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
119
+
120
+ # [1.0.0-beta.26](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.25...v1.0.0-beta.26) (2025-03-12)
121
+
122
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
123
+
124
+ # [1.0.0-beta.25](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.24...v1.0.0-beta.25) (2025-03-12)
125
+
126
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
127
+
128
+ # [1.0.0-beta.24](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.23...v1.0.0-beta.24) (2025-03-12)
129
+
130
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
131
+
132
+ # [1.0.0-beta.23](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.22...v1.0.0-beta.23) (2025-03-12)
133
+
134
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
135
+
136
+ # [1.0.0-beta.22](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.21...v1.0.0-beta.22) (2025-03-12)
137
+
138
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
139
+
140
+ # [1.0.0-beta.21](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.20...v1.0.0-beta.21) (2025-03-12)
141
+
142
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
143
+
144
+ # [1.0.0-beta.20](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.19...v1.0.0-beta.20) (2025-03-12)
145
+
146
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
147
+
148
+ # [1.0.0-beta.19](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.18...v1.0.0-beta.19) (2025-03-12)
149
+
150
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
151
+
152
+ # [1.0.0-beta.18](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.17...v1.0.0-beta.18) (2025-03-12)
153
+
154
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
155
+
156
+ # [1.0.0-beta.17](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.16...v1.0.0-beta.17) (2025-03-12)
157
+
158
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
159
+
160
+ # [1.0.0-beta.16](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.15...v1.0.0-beta.16) (2025-03-12)
161
+
162
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
163
+
164
+ # [1.0.0-beta.15](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.14...v1.0.0-beta.15) (2025-03-11)
165
+
166
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
167
+
168
+ # [1.0.0-beta.14](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.13...v1.0.0-beta.14) (2025-03-11)
169
+
170
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
171
+
172
+ # [1.0.0-beta.13](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.12...v1.0.0-beta.13) (2025-03-10)
173
+
174
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
175
+
176
+ # [1.0.0-beta.12](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.11...v1.0.0-beta.12) (2025-02-11)
177
+
178
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
179
+
180
+ # [1.0.0-beta.11](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.10...v1.0.0-beta.11) (2025-01-27)
181
+
182
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
183
+
184
+ # [1.0.0-beta.10](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.9...v1.0.0-beta.10) (2025-01-25)
185
+
186
+ **Note:** Version bump only for package @swagger-api/apidom-json-pointer
187
+
6
188
  # [1.0.0-beta.9](https://github.com/swagger-api/apidom/compare/v1.0.0-beta.8...v1.0.0-beta.9) (2025-01-23)
7
189
 
8
190
  **Note:** Version bump only for package @swagger-api/apidom-json-pointer
package/README.md CHANGED
@@ -9,7 +9,37 @@ You can install this package via [npm CLI](https://docs.npmjs.com/cli) by runnin
9
9
  ```sh
10
10
  $ npm install @swagger-api/apidom-json-pointer
11
11
  ```
12
- ## Evaluating
12
+
13
+ ## Modern API
14
+
15
+ This is the recommended API for use in new projects. It is fully compliant with [RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901) and supports all aspects of JSON Pointer.
16
+ Uses [@swaggerexpert/json-pointer](https://www.npmjs.com/package/@swaggerexpert/json-pointer) under the hood and fully reflects its API.
17
+
18
+ Evaluation is contextual to [ApiDOM realm](https://github.com/swaggerexpert/json-pointer?tab=readme-ov-file#apidom-evaluation-realm) - meaning `evaluate` function
19
+ expects only ApiDOM as the first argument.
20
+
21
+ ```js
22
+ import { evaluate } from '@swagger-api/apidom-json-pointer/modern';
23
+ ```
24
+
25
+
26
+
27
+ ## Legacy API
28
+
29
+ This is a legacy API not recommended for use in new projects. It is provided for backward compatibility only.
30
+ The legacy API implementation is not RFC 6901 compliant, nor does it support all features of JSON Pointer.
31
+
32
+ Importing legacy API from `@swagger-api/apidom-json-pointer` is equivalent to importing from `@swagger-api/apidom-json-pointer/legacy`.
33
+
34
+ ```js
35
+ import { evaluate } from '@swagger-api/apidom-json-pointer';
36
+ ```
37
+ or
38
+ ```js
39
+ import { evaluate } from '@swagger-api/apidom-json-pointer/legacy';
40
+ ```
41
+
42
+ ### Evaluating
13
43
 
14
44
  ```js
15
45
  import { ObjectElement } from '@swagger-api/apidom-core';
@@ -20,7 +50,7 @@ const result = evaluate('/a/b', apidom);
20
50
  // => StringElement('c')
21
51
  ```
22
52
 
23
- ## Parsing
53
+ ### Parsing
24
54
 
25
55
  Parses JSON Pointer into list of tokens.
26
56
 
@@ -30,7 +60,7 @@ import { parse } from '@swagger-api/apidom-json-pointer';
30
60
  const tokens = parse('/a/b'); // => ['a', 'b']
31
61
  ```
32
62
 
33
- ## Compiling
63
+ ### Compiling
34
64
 
35
65
  Compiles list of tokens into JSON Pointer.
36
66
 
@@ -40,7 +70,7 @@ import { compile } from '@swagger-api/apidom-json-pointer';
40
70
  const jsonPointer = compile(['a', 'b']); // => '/a/b'
41
71
  ```
42
72
 
43
- ## Escaping
73
+ ### Escaping
44
74
 
45
75
  Escapes/unescapes tokens of JSON Pointer.
46
76
 
@@ -51,7 +81,7 @@ escape('~a/'); // => '~0a~1'
51
81
  unescape('~0a~1'); // => '~a/'
52
82
  ```
53
83
 
54
- ## Transforming URI to JSON Pointer
84
+ ### Transforming URI to JSON Pointer
55
85
 
56
86
  Handles case of [URI Fragment Identifier Representation](https://datatracker.ietf.org/doc/html/rfc6901#section-6).
57
87
 
@@ -61,7 +91,7 @@ import { uriToPointer } from '@swagger-api/apidom-json-pointer';
61
91
  uriToPointer('https://example.com/path/#/a/b'); // => '/a/b'
62
92
  ```
63
93
 
64
- ## Invalid JSON Pointers
94
+ ### Invalid JSON Pointers
65
95
 
66
96
  If invalid JSON Pointer is supplied to `parse` or `evaluate` functions, `InvalidJsonPointerError`
67
97
  is thrown.
@@ -76,3 +106,4 @@ ApiDOM fragment, `EvaluationJsonPointerError` is thrown.
76
106
  ```js
77
107
  import { EvaluationJsonPointerError } from '@swagger-api/apidom-json-pointer';
78
108
  ```
109
+