@contractkit/prettier-plugin 0.8.1
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.
- package/.turbo/turbo-build$colon$ci.log +35 -0
- package/.turbo/turbo-build.log +15 -0
- package/.turbo/turbo-format.log +29 -0
- package/.turbo/turbo-test$colon$ci.log +105 -0
- package/.turbo/turbo-test.log +14 -0
- package/CHANGELOG.md +111 -0
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/clover.xml +305 -0
- package/coverage/coverage-final.json +6 -0
- package/coverage/favicon.png +0 -0
- package/coverage/indent.ts.html +88 -0
- package/coverage/index.html +176 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/print-ck.ts.html +370 -0
- package/coverage/print-contract.ts.html +292 -0
- package/coverage/print-operation.ts.html +811 -0
- package/coverage/print-type.ts.html +511 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +210 -0
- package/dist/__tests__/print-ck.test.d.ts +2 -0
- package/dist/__tests__/print-ck.test.d.ts.map +1 -0
- package/dist/__tests__/print-op.test.d.ts +2 -0
- package/dist/__tests__/print-op.test.d.ts.map +1 -0
- package/dist/__tests__/print-op.test.js +359 -0
- package/dist/__tests__/print-op.test.js.map +1 -0
- package/dist/indent.d.ts +2 -0
- package/dist/indent.d.ts.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +520 -0
- package/dist/index.js.map +1 -0
- package/dist/print-ck.d.ts +4 -0
- package/dist/print-ck.d.ts.map +1 -0
- package/dist/print-contract.d.ts +3 -0
- package/dist/print-contract.d.ts.map +1 -0
- package/dist/print-dto.d.ts +3 -0
- package/dist/print-dto.d.ts.map +1 -0
- package/dist/print-dto.js +100 -0
- package/dist/print-dto.js.map +1 -0
- package/dist/print-op.d.ts +24 -0
- package/dist/print-op.d.ts.map +1 -0
- package/dist/print-op.js +224 -0
- package/dist/print-op.js.map +1 -0
- package/dist/print-operation.d.ts +24 -0
- package/dist/print-operation.d.ts.map +1 -0
- package/dist/print-type.d.ts +21 -0
- package/dist/print-type.d.ts.map +1 -0
- package/dist/print-type.js +110 -0
- package/dist/print-type.js.map +1 -0
- package/eslint.config.js +6 -0
- package/package.json +47 -0
- package/src/indent.ts +1 -0
- package/src/index.ts +46 -0
- package/src/print-ck.ts +95 -0
- package/src/print-contract.ts +69 -0
- package/src/print-operation.ts +242 -0
- package/src/print-type.ts +142 -0
- package/tests/print-ck.test.ts +606 -0
- package/tsconfig.json +9 -0
- package/vitest.config.ts +11 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
> @contractkit/prettier-plugin@0.8.0 build:ci /Users/robert/projects/contractkit/apps/prettier-plugin
|
|
4
|
+
> eslint --max-warnings=0 && pnpm run build
|
|
5
|
+
|
|
6
|
+
=============
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
* @typescript-eslint/typescript-estree version: 8.57.2
|
|
13
|
+
* Supported TypeScript versions: >=4.8.4 <6.0.0
|
|
14
|
+
* Your TypeScript version: 6.0.2
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
Please only submit bug reports when using the officially supported version.
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
=============
|
|
21
|
+
|
|
22
|
+
> @contractkit/prettier-plugin@0.8.0 build /Users/robert/projects/contractkit/apps/prettier-plugin
|
|
23
|
+
> tsup src/index.ts --format esm --sourcemap --dts && tsc --emitDeclarationOnly --declaration
|
|
24
|
+
|
|
25
|
+
[34mCLI[39m Building entry: src/index.ts
|
|
26
|
+
[34mCLI[39m Using tsconfig: tsconfig.json
|
|
27
|
+
[34mCLI[39m tsup v8.5.1
|
|
28
|
+
[34mCLI[39m Target: esnext
|
|
29
|
+
[34mESM[39m Build start
|
|
30
|
+
[32mESM[39m [1mdist/index.js [22m[32m17.83 KB[39m
|
|
31
|
+
[32mESM[39m [1mdist/index.js.map [22m[32m42.37 KB[39m
|
|
32
|
+
[32mESM[39m ⚡️ Build success in 43ms
|
|
33
|
+
DTS Build start
|
|
34
|
+
DTS ⚡️ Build success in 612ms
|
|
35
|
+
DTS dist/index.d.ts 157.00 B
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
> @contractkit/prettier-plugin@0.8.0 build /Users/robert/projects/contractkit/apps/prettier-plugin
|
|
3
|
+
> tsup src/index.ts --format esm --sourcemap --dts && tsc --emitDeclarationOnly --declaration
|
|
4
|
+
|
|
5
|
+
CLI Building entry: src/index.ts
|
|
6
|
+
CLI Using tsconfig: tsconfig.json
|
|
7
|
+
CLI tsup v8.5.1
|
|
8
|
+
CLI Target: esnext
|
|
9
|
+
ESM Build start
|
|
10
|
+
ESM dist/index.js 17.83 KB
|
|
11
|
+
ESM dist/index.js.map 42.37 KB
|
|
12
|
+
ESM ⚡️ Build success in 107ms
|
|
13
|
+
DTS Build start
|
|
14
|
+
DTS ⚡️ Build success in 582ms
|
|
15
|
+
DTS dist/index.d.ts 157.00 B
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
> prettier-plugin-contractkit@0.1.0 format /Users/robert/projects/contractkit/apps/prettier-plugin
|
|
4
|
+
> prettier --write .
|
|
5
|
+
|
|
6
|
+
.turbo/turbo-build.log[2K[1G.turbo/turbo-format.log[2K[1G.turbo/turbo-test.log[2K[1Gdist/__tests__/print-ck.test.d.ts[2K[1Gdist/__tests__/print-ck.test.d.ts 36ms
|
|
7
|
+
dist/__tests__/print-ck.test.d.ts.map[2K[1Gdist/__tests__/print-op.test.d.ts[2K[1Gdist/__tests__/print-op.test.d.ts 1ms
|
|
8
|
+
dist/__tests__/print-op.test.d.ts.map[2K[1Gdist/__tests__/print-op.test.js[2K[1Gdist/__tests__/print-op.test.js 48ms
|
|
9
|
+
dist/__tests__/print-op.test.js.map[2K[1Gdist/indent.d.ts[2K[1Gdist/indent.d.ts 4ms
|
|
10
|
+
dist/indent.d.ts.map[2K[1Gdist/index.d.ts[2K[1Gdist/index.d.ts 2ms
|
|
11
|
+
dist/index.d.ts.map[2K[1Gdist/index.js[2K[1Gdist/index.js 22ms
|
|
12
|
+
dist/index.js.map[2K[1Gdist/print-ck.d.ts[2K[1Gdist/print-ck.d.ts 5ms
|
|
13
|
+
dist/print-ck.d.ts.map[2K[1Gdist/print-dto.d.ts[2K[1Gdist/print-dto.d.ts 1ms
|
|
14
|
+
dist/print-dto.d.ts.map[2K[1Gdist/print-dto.js[2K[1Gdist/print-dto.js 4ms
|
|
15
|
+
dist/print-dto.js.map[2K[1Gdist/print-op.d.ts[2K[1Gdist/print-op.d.ts 4ms
|
|
16
|
+
dist/print-op.d.ts.map[2K[1Gdist/print-op.js[2K[1Gdist/print-op.js 8ms
|
|
17
|
+
dist/print-op.js.map[2K[1Gdist/print-type.d.ts[2K[1Gdist/print-type.d.ts 2ms
|
|
18
|
+
dist/print-type.d.ts.map[2K[1Gdist/print-type.js[2K[1Gdist/print-type.js 5ms
|
|
19
|
+
dist/print-type.js.map[2K[1Geslint.config.js[2K[1G[90meslint.config.js[39m 1ms (unchanged)
|
|
20
|
+
package.json[2K[1Gpackage.json 1ms
|
|
21
|
+
src/indent.ts[2K[1G[90msrc/indent.ts[39m 1ms (unchanged)
|
|
22
|
+
src/index.ts[2K[1Gsrc/index.ts 5ms
|
|
23
|
+
src/print-ck.ts[2K[1Gsrc/print-ck.ts 5ms
|
|
24
|
+
src/print-dto.ts[2K[1Gsrc/print-dto.ts 5ms
|
|
25
|
+
src/print-op.ts[2K[1Gsrc/print-op.ts 9ms
|
|
26
|
+
src/print-type.ts[2K[1Gsrc/print-type.ts 6ms
|
|
27
|
+
tests/print-ck.test.ts[2K[1Gtests/print-ck.test.ts 14ms
|
|
28
|
+
tsconfig.json[2K[1Gtsconfig.json 1ms
|
|
29
|
+
vitest.config.ts[2K[1Gvitest.config.ts 1ms
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
> @contractkit/prettier-plugin@0.8.0 test:ci /Users/robert/projects/contractkit/apps/prettier-plugin
|
|
4
|
+
> vitest run --coverage
|
|
5
|
+
|
|
6
|
+
[?25l
|
|
7
|
+
[1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/Users/robert/projects/contractkit/apps/prettier-plugin[39m
|
|
8
|
+
[2mCoverage enabled with [22m[33mv8[39m
|
|
9
|
+
|
|
10
|
+
[?2026h
|
|
11
|
+
[1m[33m ❯ [39m[22mtests/print-ck.test.ts[2m [queued][22m
|
|
12
|
+
|
|
13
|
+
[2m Test Files [22m[1m[32m0 passed[39m[22m[90m (1)[39m
|
|
14
|
+
[2m Tests [22m[1m[32m0 passed[39m[22m[90m (0)[39m
|
|
15
|
+
[2m Start at [22m08:51:09
|
|
16
|
+
[2m Duration [22m304ms
|
|
17
|
+
[?2026l[?2026h[K[1A[K[1A[K[1A[K[1A[K[1A[K[1A[K[1A[K
|
|
18
|
+
[1m[33m ❯ [39m[22mtests/print-ck.test.ts[2m [queued][22m
|
|
19
|
+
|
|
20
|
+
[2m Test Files [22m[1m[32m0 passed[39m[22m[90m (1)[39m
|
|
21
|
+
[2m Tests [22m[1m[32m0 passed[39m[22m[90m (0)[39m
|
|
22
|
+
[2m Start at [22m08:51:09
|
|
23
|
+
[2m Duration [22m916ms
|
|
24
|
+
[?2026l[?2026h[K[1A[K[1A[K[1A[K[1A[K[1A[K[1A[K[1A[K
|
|
25
|
+
[1m[33m ❯ [39m[22mtests/print-ck.test.ts[2m 1/45[22m
|
|
26
|
+
|
|
27
|
+
[2m Test Files [22m[1m[32m0 passed[39m[22m[90m (1)[39m
|
|
28
|
+
[2m Tests [22m[1m[32m1 passed[39m[22m[90m (45)[39m
|
|
29
|
+
[2m Start at [22m08:51:09
|
|
30
|
+
[2m Duration [22m1.12s
|
|
31
|
+
[?2026l[K[1A[K[1A[K[1A[K[1A[K[1A[K[1A[K[1A[K [32m✓[39m tests/print-ck.test.ts [2m([22m[2m45 tests[22m[2m)[22m[32m 99[2mms[22m[39m
|
|
32
|
+
[32m✓[39m printCk — route modifiers [2m(5)[22m
|
|
33
|
+
[32m✓[39m prints route with no modifiers[32m 12[2mms[22m[39m
|
|
34
|
+
[32m✓[39m prints route with internal modifier[32m 0[2mms[22m[39m
|
|
35
|
+
[32m✓[39m prints route with deprecated modifier[32m 0[2mms[22m[39m
|
|
36
|
+
[32m✓[39m treats empty modifiers array same as no modifier[32m 0[2mms[22m[39m
|
|
37
|
+
[32m✓[39m preserves description alongside modifier[32m 0[2mms[22m[39m
|
|
38
|
+
[32m✓[39m printCk — operation modifiers [2m(6)[22m
|
|
39
|
+
[32m✓[39m prints operation with no modifiers[32m 0[2mms[22m[39m
|
|
40
|
+
[32m✓[39m prints operation with internal modifier[32m 0[2mms[22m[39m
|
|
41
|
+
[32m✓[39m prints operation with deprecated modifier[32m 0[2mms[22m[39m
|
|
42
|
+
[32m✓[39m treats empty operation modifiers array as no modifiers[32m 0[2mms[22m[39m
|
|
43
|
+
[32m✓[39m prints multiple operations with mixed modifiers[32m 0[2mms[22m[39m
|
|
44
|
+
[32m✓[39m preserves description alongside modifier on operation[32m 0[2mms[22m[39m
|
|
45
|
+
[32m✓[39m printCk — route and operation modifiers combined [2m(2)[22m
|
|
46
|
+
[32m✓[39m prints both route and operation modifiers independently[32m 0[2mms[22m[39m
|
|
47
|
+
[32m✓[39m modifier placement: operation(modifier) before path, verb(modifier) before colon[32m 0[2mms[22m[39m
|
|
48
|
+
[32m✓[39m printCk — security [2m(8)[22m
|
|
49
|
+
[32m✓[39m prints operation-level security: none[32m 0[2mms[22m[39m
|
|
50
|
+
[32m✓[39m prints security block with roles only[32m 0[2mms[22m[39m
|
|
51
|
+
[32m✓[39m prints security block with multiple roles space-separated[32m 0[2mms[22m[39m
|
|
52
|
+
[32m✓[39m prints operation-level signature as its own keyword[32m 0[2mms[22m[39m
|
|
53
|
+
[32m✓[39m prints unquoted identifier signature without quotes[32m 0[2mms[22m[39m
|
|
54
|
+
[32m✓[39m prints route-level security with shallower indentation[32m 0[2mms[22m[39m
|
|
55
|
+
[32m✓[39m prints route-level security: none[32m 0[2mms[22m[39m
|
|
56
|
+
[32m✓[39m emits no security line when security is undefined[32m 0[2mms[22m[39m
|
|
57
|
+
[32m✓[39m printCk — query and headers descriptions [2m(2)[22m
|
|
58
|
+
[32m✓[39m emits inline comment on query params that have descriptions[32m 0[2mms[22m[39m
|
|
59
|
+
[32m✓[39m emits inline comment on headers params that have descriptions[32m 0[2mms[22m[39m
|
|
60
|
+
[32m✓[39m printCk — query and headers optional, nullable, default [2m(7)[22m
|
|
61
|
+
[32m✓[39m emits ? for optional query params[32m 0[2mms[22m[39m
|
|
62
|
+
[32m✓[39m emits | null for nullable query params[32m 0[2mms[22m[39m
|
|
63
|
+
[32m✓[39m emits = value for numeric defaults[32m 0[2mms[22m[39m
|
|
64
|
+
[32m✓[39m emits = value for boolean defaults[32m 0[2mms[22m[39m
|
|
65
|
+
[32m✓[39m emits = "value" for string defaults that need quoting[32m 0[2mms[22m[39m
|
|
66
|
+
[32m✓[39m combines optional, default, and description on the same param[32m 0[2mms[22m[39m
|
|
67
|
+
[32m✓[39m applies the same rules to headers params[32m 0[2mms[22m[39m
|
|
68
|
+
[32m✓[39m printCk — request blocks [2m(3)[22m
|
|
69
|
+
[32m✓[39m prints a single content-type request[32m 0[2mms[22m[39m
|
|
70
|
+
[32m✓[39m round-trips vendor JSON mime types like application/vnd.api+json[32m 0[2mms[22m[39m
|
|
71
|
+
[32m✓[39m prints multiple content-types preserving source order[32m 0[2mms[22m[39m
|
|
72
|
+
[32m✓[39m printCk — response headers [2m(2)[22m
|
|
73
|
+
[32m✓[39m prints response headers alongside body[32m 0[2mms[22m[39m
|
|
74
|
+
[32m✓[39m prints response headers without a body[32m 0[2mms[22m[39m
|
|
75
|
+
[32m✓[39m printCk — options-level header globals (round-trip) [2m(4)[22m
|
|
76
|
+
[32m✓[39m round-trips options.request.headers[32m 40[2mms[22m[39m
|
|
77
|
+
[32m✓[39m round-trips options.response.headers[32m 23[2mms[22m[39m
|
|
78
|
+
[32m✓[39m round-trips operation-level headers: none[32m 9[2mms[22m[39m
|
|
79
|
+
[32m✓[39m round-trips per-status headers: none[32m 1[2mms[22m[39m
|
|
80
|
+
[32m✓[39m printCk — multi-base inheritance and override (round-trip) [2m(3)[22m
|
|
81
|
+
[32m✓[39m round-trips multi-base inheritance[32m 1[2mms[22m[39m
|
|
82
|
+
[32m✓[39m round-trips override modifier on a field[32m 1[2mms[22m[39m
|
|
83
|
+
[32m✓[39m emits canonical modifier order: override → deprecated → readonly[32m 0[2mms[22m[39m
|
|
84
|
+
[32m✓[39m printCk — typed path params (round-trip) [2m(3)[22m
|
|
85
|
+
[32m✓[39m round-trips path params with constraint arguments[32m 4[2mms[22m[39m
|
|
86
|
+
[32m✓[39m round-trips path params with enum types[32m 1[2mms[22m[39m
|
|
87
|
+
[32m✓[39m round-trips path params with regex constraints and a comment[32m 1[2mms[22m[39m
|
|
88
|
+
|
|
89
|
+
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
|
|
90
|
+
[2m Tests [22m [1m[32m45 passed[39m[22m[90m (45)[39m
|
|
91
|
+
[2m Start at [22m 08:51:09
|
|
92
|
+
[2m Duration [22m 1.20s[2m (transform 258ms, setup 0ms, import 648ms, tests 99ms, environment 0ms)[22m
|
|
93
|
+
|
|
94
|
+
[34m % [39m[2mCoverage report from [22m[33mv8[39m
|
|
95
|
+
--------------------|---------|----------|---------|---------|-----------------------------------------------------------
|
|
96
|
+
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
|
|
97
|
+
--------------------|---------|----------|---------|---------|-----------------------------------------------------------
|
|
98
|
+
[33;1mAll files [0m | [33;1m 61.01[0m | [33;1m 53.55[0m | [33;1m 68[0m | [33;1m 67.95[0m | [31;1m [0m
|
|
99
|
+
[32;1m indent.ts [0m | [32;1m 100[0m | [32;1m 100[0m | [32;1m 100[0m | [32;1m 100[0m | [33;1m [0m
|
|
100
|
+
[33;1m print-ck.ts [0m | [33;1m 67.14[0m | [33;1m 64.19[0m | [32;1m 100[0m | [33;1m 78.84[0m | [31;1m23-28,32-37,49 [0m
|
|
101
|
+
[31;1m print-contract.ts [0m | [31;1m 41.93[0m | [31;1m 28.57[0m | [33;1m 50[0m | [31;1m 42.85[0m | [31;1m10,37-68 [0m
|
|
102
|
+
[33;1m print-operation.ts[0m | [33;1m 69.64[0m | [33;1m 63.19[0m | [32;1m 90[0m | [33;1m 79.69[0m | [31;1m27-38,47-48,85,102,168,185,193-204,236 [0m
|
|
103
|
+
[31;1m print-type.ts [0m | [31;1m 45.23[0m | [31;1m 42.55[0m | [31;1m 40[0m | [31;1m 47.14[0m | [31;1m12-13,22-30,34-40,44-66,88-93,101-102,108-109,132,135-138[0m
|
|
104
|
+
--------------------|---------|----------|---------|---------|-----------------------------------------------------------
|
|
105
|
+
[?25h
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
|
|
2
|
+
> @contractkit/prettier-plugin@0.8.0 test /Users/robert/projects/contractkit/apps/prettier-plugin
|
|
3
|
+
> vitest run
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
[1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/Users/robert/projects/contractkit/apps/prettier-plugin[39m
|
|
7
|
+
|
|
8
|
+
[32m✓[39m tests/print-ck.test.ts [2m([22m[2m45 tests[22m[2m)[22m[32m 24[2mms[22m[39m
|
|
9
|
+
|
|
10
|
+
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
|
|
11
|
+
[2m Tests [22m [1m[32m45 passed[39m[22m[90m (45)[39m
|
|
12
|
+
[2m Start at [22m 08:51:33
|
|
13
|
+
[2m Duration [22m 437ms[2m (transform 138ms, setup 0ms, import 266ms, tests 24ms, environment 0ms)[22m
|
|
14
|
+
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# @contractkit/prettier-plugin-contractkit
|
|
2
|
+
|
|
3
|
+
## 0.8.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 9269093: chore: update dependencies across multiple projects
|
|
8
|
+
|
|
9
|
+
This commit updates various dependencies in the package.json files for several projects, including:
|
|
10
|
+
- Upgraded `@changesets/cli`, `@types/node`, `@vitest/coverage-v8`, `eslint`, `prettier`, `turbo`, and `typescript` to their latest versions.
|
|
11
|
+
- Updated `@types/vscode`, `@vscode/vsce`, and `esbuild` in the vscode extension.
|
|
12
|
+
- Adjusted `@scalar/openapi-parser` and `yaml` in the openapi-to-ck package.
|
|
13
|
+
- Enhanced ESLint and TypeScript configurations in the config-eslint package.
|
|
14
|
+
|
|
15
|
+
These updates improve compatibility and maintainability across the codebase.
|
|
16
|
+
|
|
17
|
+
- Updated dependencies [c9f2166]
|
|
18
|
+
- @contractkit/core@0.11.0
|
|
19
|
+
|
|
20
|
+
## 0.8.0
|
|
21
|
+
|
|
22
|
+
### Minor Changes
|
|
23
|
+
|
|
24
|
+
- bbee232: prep for public release
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- Updated dependencies [bbee232]
|
|
29
|
+
- @contractkit/core@0.10.0
|
|
30
|
+
|
|
31
|
+
## 0.7.0
|
|
32
|
+
|
|
33
|
+
### Minor Changes
|
|
34
|
+
|
|
35
|
+
- d13614c: Enhance content type handling in contract DSL. This update introduces support for vendor JSON MIME types and improves the classification of content types, allowing for better handling of text and binary responses. The grammar has been updated to accept a wider range of MIME types, and tests have been added to ensure correct parsing and serialization behavior. Additionally, the code has been refactored to normalize content types for stable comparisons and to support multi-MIME request bodies.
|
|
36
|
+
|
|
37
|
+
### Patch Changes
|
|
38
|
+
|
|
39
|
+
- Updated dependencies [d13614c]
|
|
40
|
+
- @maroonedsoftware/contractkit@0.9.0
|
|
41
|
+
|
|
42
|
+
## 0.6.0
|
|
43
|
+
|
|
44
|
+
### Minor Changes
|
|
45
|
+
|
|
46
|
+
- 353aa10: Implement options-level header globals for request and response in the contract DSL. This update allows headers to be declared at the file level, merging them into every operation's request and response. Added normalization logic to handle header collisions and opt-out scenarios. Updated documentation and tests to reflect these changes, ensuring proper round-trip formatting and validation of headers.
|
|
47
|
+
- 888ded5: Enhance contract DSL with multi-base inheritance support and override modifier. This update introduces the ability to declare multiple base contracts, along with validation rules for field conflicts across bases. The `override` modifier is now required for redeclaring conflicting fields, and the documentation has been updated to reflect these changes. Tests have been added to ensure correct behavior for inheritance and modifier usage.
|
|
48
|
+
|
|
49
|
+
### Patch Changes
|
|
50
|
+
|
|
51
|
+
- Updated dependencies [353aa10]
|
|
52
|
+
- Updated dependencies [888ded5]
|
|
53
|
+
- @maroonedsoftware/contractkit@0.8.0
|
|
54
|
+
|
|
55
|
+
## 0.5.0
|
|
56
|
+
|
|
57
|
+
### Minor Changes
|
|
58
|
+
|
|
59
|
+
- 16ac3a7: Implement support for typed response headers in API operations. Added functionality to declare headers alongside response bodies, affecting OpenAPI, TypeScript SDK, and Markdown documentation generation. Updated related tests to ensure correct parsing and rendering of response headers, including handling optional headers and duplicate declarations.
|
|
60
|
+
|
|
61
|
+
### Patch Changes
|
|
62
|
+
|
|
63
|
+
- Updated dependencies [16ac3a7]
|
|
64
|
+
- @maroonedsoftware/contractkit@0.7.0
|
|
65
|
+
|
|
66
|
+
## 0.4.1
|
|
67
|
+
|
|
68
|
+
### Patch Changes
|
|
69
|
+
|
|
70
|
+
- Updated dependencies [d3ea773]
|
|
71
|
+
- @maroonedsoftware/contractkit@0.6.0
|
|
72
|
+
|
|
73
|
+
## 0.4.0
|
|
74
|
+
|
|
75
|
+
### Minor Changes
|
|
76
|
+
|
|
77
|
+
- 181dadb: Refactor request handling to support multiple content types in operations. Updated OpRequestNode to accept an array of bodies, modified related functions and tests to accommodate multi-MIME requests, and enhanced validation for nested structures in URL-encoded bodies. Improved code generation across various plugins to handle new request structure.
|
|
78
|
+
|
|
79
|
+
### Patch Changes
|
|
80
|
+
|
|
81
|
+
- Updated dependencies [181dadb]
|
|
82
|
+
- @maroonedsoftware/contractkit@0.5.0
|
|
83
|
+
|
|
84
|
+
## 0.3.0
|
|
85
|
+
|
|
86
|
+
### Minor Changes
|
|
87
|
+
|
|
88
|
+
- ada5f84: Implement discriminated unions in ContractKit with validation and code generation support. Update README and tests to reflect new functionality, including parsing, rendering, and OpenAPI generation for discriminated unions.
|
|
89
|
+
|
|
90
|
+
### Patch Changes
|
|
91
|
+
|
|
92
|
+
- Updated dependencies [ada5f84]
|
|
93
|
+
- @maroonedsoftware/contractkit@0.4.0
|
|
94
|
+
|
|
95
|
+
## 0.2.1
|
|
96
|
+
|
|
97
|
+
### Patch Changes
|
|
98
|
+
|
|
99
|
+
- Updated dependencies [f396a68]
|
|
100
|
+
- @maroonedsoftware/contractkit@0.3.0
|
|
101
|
+
|
|
102
|
+
## 0.2.0
|
|
103
|
+
|
|
104
|
+
### Minor Changes
|
|
105
|
+
|
|
106
|
+
- db7345b: updating to contractkit as the org
|
|
107
|
+
|
|
108
|
+
### Patch Changes
|
|
109
|
+
|
|
110
|
+
- Updated dependencies [db7345b]
|
|
111
|
+
- @contractkit/core@0.2.0
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
body, html {
|
|
2
|
+
margin:0; padding: 0;
|
|
3
|
+
height: 100%;
|
|
4
|
+
}
|
|
5
|
+
body {
|
|
6
|
+
font-family: Helvetica Neue, Helvetica, Arial;
|
|
7
|
+
font-size: 14px;
|
|
8
|
+
color:#333;
|
|
9
|
+
}
|
|
10
|
+
.small { font-size: 12px; }
|
|
11
|
+
*, *:after, *:before {
|
|
12
|
+
-webkit-box-sizing:border-box;
|
|
13
|
+
-moz-box-sizing:border-box;
|
|
14
|
+
box-sizing:border-box;
|
|
15
|
+
}
|
|
16
|
+
h1 { font-size: 20px; margin: 0;}
|
|
17
|
+
h2 { font-size: 14px; }
|
|
18
|
+
pre {
|
|
19
|
+
font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace;
|
|
20
|
+
margin: 0;
|
|
21
|
+
padding: 0;
|
|
22
|
+
-moz-tab-size: 2;
|
|
23
|
+
-o-tab-size: 2;
|
|
24
|
+
tab-size: 2;
|
|
25
|
+
}
|
|
26
|
+
a { color:#0074D9; text-decoration:none; }
|
|
27
|
+
a:hover { text-decoration:underline; }
|
|
28
|
+
.strong { font-weight: bold; }
|
|
29
|
+
.space-top1 { padding: 10px 0 0 0; }
|
|
30
|
+
.pad2y { padding: 20px 0; }
|
|
31
|
+
.pad1y { padding: 10px 0; }
|
|
32
|
+
.pad2x { padding: 0 20px; }
|
|
33
|
+
.pad2 { padding: 20px; }
|
|
34
|
+
.pad1 { padding: 10px; }
|
|
35
|
+
.space-left2 { padding-left:55px; }
|
|
36
|
+
.space-right2 { padding-right:20px; }
|
|
37
|
+
.center { text-align:center; }
|
|
38
|
+
.clearfix { display:block; }
|
|
39
|
+
.clearfix:after {
|
|
40
|
+
content:'';
|
|
41
|
+
display:block;
|
|
42
|
+
height:0;
|
|
43
|
+
clear:both;
|
|
44
|
+
visibility:hidden;
|
|
45
|
+
}
|
|
46
|
+
.fl { float: left; }
|
|
47
|
+
@media only screen and (max-width:640px) {
|
|
48
|
+
.col3 { width:100%; max-width:100%; }
|
|
49
|
+
.hide-mobile { display:none!important; }
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.quiet {
|
|
53
|
+
color: #7f7f7f;
|
|
54
|
+
color: rgba(0,0,0,0.5);
|
|
55
|
+
}
|
|
56
|
+
.quiet a { opacity: 0.7; }
|
|
57
|
+
|
|
58
|
+
.fraction {
|
|
59
|
+
font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
|
|
60
|
+
font-size: 10px;
|
|
61
|
+
color: #555;
|
|
62
|
+
background: #E8E8E8;
|
|
63
|
+
padding: 4px 5px;
|
|
64
|
+
border-radius: 3px;
|
|
65
|
+
vertical-align: middle;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
div.path a:link, div.path a:visited { color: #333; }
|
|
69
|
+
table.coverage {
|
|
70
|
+
border-collapse: collapse;
|
|
71
|
+
margin: 10px 0 0 0;
|
|
72
|
+
padding: 0;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
table.coverage td {
|
|
76
|
+
margin: 0;
|
|
77
|
+
padding: 0;
|
|
78
|
+
vertical-align: top;
|
|
79
|
+
}
|
|
80
|
+
table.coverage td.line-count {
|
|
81
|
+
text-align: right;
|
|
82
|
+
padding: 0 5px 0 20px;
|
|
83
|
+
}
|
|
84
|
+
table.coverage td.line-coverage {
|
|
85
|
+
text-align: right;
|
|
86
|
+
padding-right: 10px;
|
|
87
|
+
min-width:20px;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
table.coverage td span.cline-any {
|
|
91
|
+
display: inline-block;
|
|
92
|
+
padding: 0 5px;
|
|
93
|
+
width: 100%;
|
|
94
|
+
}
|
|
95
|
+
.missing-if-branch {
|
|
96
|
+
display: inline-block;
|
|
97
|
+
margin-right: 5px;
|
|
98
|
+
border-radius: 3px;
|
|
99
|
+
position: relative;
|
|
100
|
+
padding: 0 4px;
|
|
101
|
+
background: #333;
|
|
102
|
+
color: yellow;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.skip-if-branch {
|
|
106
|
+
display: none;
|
|
107
|
+
margin-right: 10px;
|
|
108
|
+
position: relative;
|
|
109
|
+
padding: 0 4px;
|
|
110
|
+
background: #ccc;
|
|
111
|
+
color: white;
|
|
112
|
+
}
|
|
113
|
+
.missing-if-branch .typ, .skip-if-branch .typ {
|
|
114
|
+
color: inherit !important;
|
|
115
|
+
}
|
|
116
|
+
.coverage-summary {
|
|
117
|
+
border-collapse: collapse;
|
|
118
|
+
width: 100%;
|
|
119
|
+
}
|
|
120
|
+
.coverage-summary tr { border-bottom: 1px solid #bbb; }
|
|
121
|
+
.keyline-all { border: 1px solid #ddd; }
|
|
122
|
+
.coverage-summary td, .coverage-summary th { padding: 10px; }
|
|
123
|
+
.coverage-summary tbody { border: 1px solid #bbb; }
|
|
124
|
+
.coverage-summary td { border-right: 1px solid #bbb; }
|
|
125
|
+
.coverage-summary td:last-child { border-right: none; }
|
|
126
|
+
.coverage-summary th {
|
|
127
|
+
text-align: left;
|
|
128
|
+
font-weight: normal;
|
|
129
|
+
white-space: nowrap;
|
|
130
|
+
}
|
|
131
|
+
.coverage-summary th.file { border-right: none !important; }
|
|
132
|
+
.coverage-summary th.pct { }
|
|
133
|
+
.coverage-summary th.pic,
|
|
134
|
+
.coverage-summary th.abs,
|
|
135
|
+
.coverage-summary td.pct,
|
|
136
|
+
.coverage-summary td.abs { text-align: right; }
|
|
137
|
+
.coverage-summary td.file { white-space: nowrap; }
|
|
138
|
+
.coverage-summary td.pic { min-width: 120px !important; }
|
|
139
|
+
.coverage-summary tfoot td { }
|
|
140
|
+
|
|
141
|
+
.coverage-summary .sorter {
|
|
142
|
+
height: 10px;
|
|
143
|
+
width: 7px;
|
|
144
|
+
display: inline-block;
|
|
145
|
+
margin-left: 0.5em;
|
|
146
|
+
background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent;
|
|
147
|
+
}
|
|
148
|
+
.coverage-summary .sorted .sorter {
|
|
149
|
+
background-position: 0 -20px;
|
|
150
|
+
}
|
|
151
|
+
.coverage-summary .sorted-desc .sorter {
|
|
152
|
+
background-position: 0 -10px;
|
|
153
|
+
}
|
|
154
|
+
.status-line { height: 10px; }
|
|
155
|
+
/* yellow */
|
|
156
|
+
.cbranch-no { background: yellow !important; color: #111; }
|
|
157
|
+
/* dark red */
|
|
158
|
+
.red.solid, .status-line.low, .low .cover-fill { background:#C21F39 }
|
|
159
|
+
.low .chart { border:1px solid #C21F39 }
|
|
160
|
+
.highlighted,
|
|
161
|
+
.highlighted .cstat-no, .highlighted .fstat-no, .highlighted .cbranch-no{
|
|
162
|
+
background: #C21F39 !important;
|
|
163
|
+
}
|
|
164
|
+
/* medium red */
|
|
165
|
+
.cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE }
|
|
166
|
+
/* light red */
|
|
167
|
+
.low, .cline-no { background:#FCE1E5 }
|
|
168
|
+
/* light green */
|
|
169
|
+
.high, .cline-yes { background:rgb(230,245,208) }
|
|
170
|
+
/* medium green */
|
|
171
|
+
.cstat-yes { background:rgb(161,215,106) }
|
|
172
|
+
/* dark green */
|
|
173
|
+
.status-line.high, .high .cover-fill { background:rgb(77,146,33) }
|
|
174
|
+
.high .chart { border:1px solid rgb(77,146,33) }
|
|
175
|
+
/* dark yellow (gold) */
|
|
176
|
+
.status-line.medium, .medium .cover-fill { background: #f9cd0b; }
|
|
177
|
+
.medium .chart { border:1px solid #f9cd0b; }
|
|
178
|
+
/* light yellow */
|
|
179
|
+
.medium { background: #fff4c2; }
|
|
180
|
+
|
|
181
|
+
.cstat-skip { background: #ddd; color: #111; }
|
|
182
|
+
.fstat-skip { background: #ddd; color: #111 !important; }
|
|
183
|
+
.cbranch-skip { background: #ddd !important; color: #111; }
|
|
184
|
+
|
|
185
|
+
span.cline-neutral { background: #eaeaea; }
|
|
186
|
+
|
|
187
|
+
.coverage-summary td.empty {
|
|
188
|
+
opacity: .5;
|
|
189
|
+
padding-top: 4px;
|
|
190
|
+
padding-bottom: 4px;
|
|
191
|
+
line-height: 1;
|
|
192
|
+
color: #888;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.cover-fill, .cover-empty {
|
|
196
|
+
display:inline-block;
|
|
197
|
+
height: 12px;
|
|
198
|
+
}
|
|
199
|
+
.chart {
|
|
200
|
+
line-height: 0;
|
|
201
|
+
}
|
|
202
|
+
.cover-empty {
|
|
203
|
+
background: white;
|
|
204
|
+
}
|
|
205
|
+
.cover-full {
|
|
206
|
+
border-right: none !important;
|
|
207
|
+
}
|
|
208
|
+
pre.prettyprint {
|
|
209
|
+
border: none !important;
|
|
210
|
+
padding: 0 !important;
|
|
211
|
+
margin: 0 !important;
|
|
212
|
+
}
|
|
213
|
+
.com { color: #999 !important; }
|
|
214
|
+
.ignore-none { color: #999; font-weight: normal; }
|
|
215
|
+
|
|
216
|
+
.wrapper {
|
|
217
|
+
min-height: 100%;
|
|
218
|
+
height: auto !important;
|
|
219
|
+
height: 100%;
|
|
220
|
+
margin: 0 auto -48px;
|
|
221
|
+
}
|
|
222
|
+
.footer, .push {
|
|
223
|
+
height: 48px;
|
|
224
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
var jumpToCode = (function init() {
|
|
3
|
+
// Classes of code we would like to highlight in the file view
|
|
4
|
+
var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no'];
|
|
5
|
+
|
|
6
|
+
// Elements to highlight in the file listing view
|
|
7
|
+
var fileListingElements = ['td.pct.low'];
|
|
8
|
+
|
|
9
|
+
// We don't want to select elements that are direct descendants of another match
|
|
10
|
+
var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > `
|
|
11
|
+
|
|
12
|
+
// Selector that finds elements on the page to which we can jump
|
|
13
|
+
var selector =
|
|
14
|
+
fileListingElements.join(', ') +
|
|
15
|
+
', ' +
|
|
16
|
+
notSelector +
|
|
17
|
+
missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b`
|
|
18
|
+
|
|
19
|
+
// The NodeList of matching elements
|
|
20
|
+
var missingCoverageElements = document.querySelectorAll(selector);
|
|
21
|
+
|
|
22
|
+
var currentIndex;
|
|
23
|
+
|
|
24
|
+
function toggleClass(index) {
|
|
25
|
+
missingCoverageElements
|
|
26
|
+
.item(currentIndex)
|
|
27
|
+
.classList.remove('highlighted');
|
|
28
|
+
missingCoverageElements.item(index).classList.add('highlighted');
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function makeCurrent(index) {
|
|
32
|
+
toggleClass(index);
|
|
33
|
+
currentIndex = index;
|
|
34
|
+
missingCoverageElements.item(index).scrollIntoView({
|
|
35
|
+
behavior: 'smooth',
|
|
36
|
+
block: 'center',
|
|
37
|
+
inline: 'center'
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function goToPrevious() {
|
|
42
|
+
var nextIndex = 0;
|
|
43
|
+
if (typeof currentIndex !== 'number' || currentIndex === 0) {
|
|
44
|
+
nextIndex = missingCoverageElements.length - 1;
|
|
45
|
+
} else if (missingCoverageElements.length > 1) {
|
|
46
|
+
nextIndex = currentIndex - 1;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
makeCurrent(nextIndex);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function goToNext() {
|
|
53
|
+
var nextIndex = 0;
|
|
54
|
+
|
|
55
|
+
if (
|
|
56
|
+
typeof currentIndex === 'number' &&
|
|
57
|
+
currentIndex < missingCoverageElements.length - 1
|
|
58
|
+
) {
|
|
59
|
+
nextIndex = currentIndex + 1;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
makeCurrent(nextIndex);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return function jump(event) {
|
|
66
|
+
if (
|
|
67
|
+
document.getElementById('fileSearch') === document.activeElement &&
|
|
68
|
+
document.activeElement != null
|
|
69
|
+
) {
|
|
70
|
+
// if we're currently focused on the search input, we don't want to navigate
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
switch (event.which) {
|
|
75
|
+
case 78: // n
|
|
76
|
+
case 74: // j
|
|
77
|
+
goToNext();
|
|
78
|
+
break;
|
|
79
|
+
case 66: // b
|
|
80
|
+
case 75: // k
|
|
81
|
+
case 80: // p
|
|
82
|
+
goToPrevious();
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
})();
|
|
87
|
+
window.addEventListener('keydown', jumpToCode);
|