Skip to content

Commit e58dc98

Browse files
authored
feat(utils): Add date encoding utilities (#14)
* move everything to src/gen/ * Update docs to match gen/ folder * adds unit tests and date encoding helpers
1 parent 264b323 commit e58dc98

File tree

239 files changed

+2148
-498
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

239 files changed

+2148
-498
lines changed

.github/workflows/integration-tests.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
name: Test crossref API
1+
name: Integration tests
22

33
on:
4-
push:
4+
pull_request:
55
# Allows you to run this workflow manually from the Actions tab
66
workflow_dispatch:
77
workflow_call:
@@ -51,7 +51,7 @@ jobs:
5151
run: |
5252
pnpm docs:check;
5353
54-
nodejs_test:
54+
api_integration_test:
5555
runs-on: ubuntu-latest
5656

5757
strategy:
@@ -97,4 +97,4 @@ jobs:
9797
9898
- name: Test
9999
run: |
100-
pnpm test;
100+
pnpm test:integration;

.github/workflows/release.yaml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,14 @@ env:
1515
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
1616

1717
jobs:
18-
test:
18+
test-integration:
1919
uses: ./.github/workflows/integration-tests.yaml
20+
test-unit:
21+
uses: ./.github/workflows/unit-tests.yaml
2022
nodejs_release:
2123
needs:
22-
- test
24+
- test-integration
25+
- test-unit
2326

2427
runs-on: ubuntu-latest
2528

.github/workflows/unit-tests.yaml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Unit tests
2+
3+
on:
4+
push:
5+
pull_request:
6+
# Allows you to run this workflow manually from the Actions tab
7+
workflow_dispatch:
8+
workflow_call:
9+
10+
jobs:
11+
nodejs_test:
12+
runs-on: ubuntu-latest
13+
14+
strategy:
15+
matrix:
16+
node-version: [18.14.0]
17+
18+
steps:
19+
- uses: actions/checkout@v3
20+
21+
- name: Use Node.js ${{ matrix.node-version }}
22+
uses: actions/setup-node@v3
23+
with:
24+
node-version: ${{ matrix.node-version }}
25+
26+
- uses: pnpm/action-setup@v2
27+
name: Install pnpm
28+
id: pnpm-install
29+
with:
30+
version: 7
31+
run_install: false
32+
33+
- name: Get pnpm store directory
34+
id: pnpm-cache
35+
shell: bash
36+
run: |
37+
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT
38+
39+
- uses: actions/cache@v3
40+
name: Setup pnpm cache
41+
with:
42+
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
43+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('pnpm-lock.yaml') }}
44+
restore-keys: |
45+
${{ runner.os }}-pnpm-store-
46+
47+
- name: Install dependencies
48+
run: |
49+
pnpm install;
50+
51+
- name: Verify builds
52+
run: |
53+
pnpm build;
54+
55+
- name: Test
56+
run: |
57+
pnpm test:unit;

docs/assets/search.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/classes/ApiError.html

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ <h4>Hierarchy</h4>
2222
<ul class="tsd-hierarchy">
2323
<li><span class="target">ApiError</span></li></ul></li></ul></section><aside class="tsd-sources">
2424
<ul>
25-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L7">src/core/ApiError.ts:7</a></li></ul></aside>
25+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L7">src/gen/core/ApiError.ts:7</a></li></ul></aside>
2626
<section class="tsd-panel-group tsd-index-group">
2727
<section class="tsd-panel tsd-index-panel">
2828
<details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -68,14 +68,14 @@ <h5>message: <span class="tsd-signature-type">string</span></h5></li></ul></div>
6868
<h4 class="tsd-returns-title">Returns <a href="ApiError.html" class="tsd-signature-type" data-tsd-kind="Class">ApiError</a></h4><aside class="tsd-sources">
6969
<p>Overrides Error.constructor</p>
7070
<ul>
71-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L14">src/core/ApiError.ts:14</a></li></ul></aside></li></ul></section></section>
71+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L14">src/gen/core/ApiError.ts:14</a></li></ul></aside></li></ul></section></section>
7272
<section class="tsd-panel-group tsd-member-group">
7373
<h2>Properties</h2>
7474
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="body" class="tsd-anchor"></a>
7575
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>body</span><a href="#body" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
7676
<div class="tsd-signature">body<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span></div><aside class="tsd-sources">
7777
<ul>
78-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L11">src/core/ApiError.ts:11</a></li></ul></aside></section>
78+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L11">src/gen/core/ApiError.ts:11</a></li></ul></aside></section>
7979
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-external"><a id="message" class="tsd-anchor"></a>
8080
<h3 class="tsd-anchor-link"><span>message</span><a href="#message" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
8181
<div class="tsd-signature">message<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
@@ -92,7 +92,7 @@ <h3 class="tsd-anchor-link"><span>name</span><a href="#name" aria-label="Permali
9292
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>request</span><a href="#request" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
9393
<div class="tsd-signature">request<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ApiRequestOptions</span></div><aside class="tsd-sources">
9494
<ul>
95-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L12">src/core/ApiError.ts:12</a></li></ul></aside></section>
95+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L12">src/gen/core/ApiError.ts:12</a></li></ul></aside></section>
9696
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-external"><a id="stack" class="tsd-anchor"></a>
9797
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOptional">Optional</code> <span>stack</span><a href="#stack" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
9898
<div class="tsd-signature">stack<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
@@ -104,17 +104,17 @@ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOptional">Optional</code
104104
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>status</span><a href="#status" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
105105
<div class="tsd-signature">status<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources">
106106
<ul>
107-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L9">src/core/ApiError.ts:9</a></li></ul></aside></section>
107+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L9">src/gen/core/ApiError.ts:9</a></li></ul></aside></section>
108108
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="statusText" class="tsd-anchor"></a>
109109
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>status<wbr/>Text</span><a href="#statusText" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
110110
<div class="tsd-signature">status<wbr/>Text<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
111111
<ul>
112-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L10">src/core/ApiError.ts:10</a></li></ul></aside></section>
112+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L10">src/gen/core/ApiError.ts:10</a></li></ul></aside></section>
113113
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="url" class="tsd-anchor"></a>
114114
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagReadonly">Readonly</code> <span>url</span><a href="#url" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
115115
<div class="tsd-signature">url<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
116116
<ul>
117-
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/d3235ad/src/core/ApiError.ts#L8">src/core/ApiError.ts:8</a></li></ul></aside></section>
117+
<li>Defined in <a href="https://github.com/Docmaps-Project/crossref-openapi-client-ts/blob/c51d073/src/gen/core/ApiError.ts#L8">src/gen/core/ApiError.ts:8</a></li></ul></aside></section>
118118
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-external"><a id="prepareStackTrace" class="tsd-anchor"></a>
119119
<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <code class="tsd-tag ts-flagOptional">Optional</code> <span>prepare<wbr/>Stack<wbr/>Trace</span><a href="#prepareStackTrace" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
120120
<div class="tsd-signature">prepare<wbr/>Stack<wbr/>Trace<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span>err<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Error</span>, stackTraces<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">CallSite</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span></div>
@@ -220,7 +220,9 @@ <h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M4.9389
220220
<li><a href="../types/Coverage.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Coverage</span></a></li>
221221
<li><a href="../types/CoverageFull.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Coverage<wbr/>Full</span></a></li>
222222
<li><a href="../types/Date.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Date</span></a></li>
223+
<li><a href="../types/DateParseOpts.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Date<wbr/>Parse<wbr/>Opts</span></a></li>
223224
<li><a href="../types/DateParts.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Date<wbr/>Parts</span></a></li>
225+
<li><a href="../types/Datemorph.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Datemorph</span></a></li>
224226
<li><a href="../types/Deposit.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Deposit</span></a></li>
225227
<li><a href="../types/DepositMessage.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Deposit<wbr/>Message</span></a></li>
226228
<li><a href="../types/Deposits.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Deposits</span></a></li>
@@ -309,7 +311,10 @@ <h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M4.9389
309311
<li><a href="../types/WorksMessageMessageItemsRelationJava_lang_string39104.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Works<wbr/>Message<wbr/>Message<wbr/>Items<wbr/>Relation<wbr/>Java_<wbr/>lang_<wbr/>string39104</span></a></li>
310312
<li><a href="../types/WorksMessageMessageItemsRelationJava_lang_string39108.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Works<wbr/>Message<wbr/>Message<wbr/>Items<wbr/>Relation<wbr/>Java_<wbr/>lang_<wbr/>string39108</span></a></li>
311313
<li><a href="../types/WorksMessageMessageItemsRelationJava_lang_string39109.html" class="tsd-kind-type-alias"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-4194304-path"></use><use href="#icon-4194304-text"></use></svg><span>Works<wbr/>Message<wbr/>Message<wbr/>Items<wbr/>Relation<wbr/>Java_<wbr/>lang_<wbr/>string39109</span></a></li>
312-
<li><a href="../variables/OpenAPI.html" class="tsd-kind-variable"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-32-path"></rect><path d="M11.106 16L8.85 7.24H9.966L11.454 13.192C11.558 13.608 11.646 13.996 11.718 14.356C11.79 14.708 11.842 14.976 11.874 15.16C11.906 14.976 11.954 14.708 12.018 14.356C12.09 13.996 12.178 13.608 12.282 13.192L13.758 7.24H14.85L12.582 16H11.106Z" fill="var(--color-text)" id="icon-32-text"></path></svg><span>OpenAPI</span></a></li></ul></nav></div></div></div>
314+
<li><a href="../variables/OpenAPI.html" class="tsd-kind-variable"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-32-path"></rect><path d="M11.106 16L8.85 7.24H9.966L11.454 13.192C11.558 13.608 11.646 13.996 11.718 14.356C11.79 14.708 11.842 14.976 11.874 15.16C11.906 14.976 11.954 14.708 12.018 14.356C12.09 13.996 12.178 13.608 12.282 13.192L13.758 7.24H14.85L12.582 16H11.106Z" fill="var(--color-text)" id="icon-32-text"></path></svg><span>OpenAPI</span></a></li>
315+
<li><a href="../functions/DateCompareTriple.html" class="tsd-kind-function"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6" id="icon-64-path"></rect><path d="M9.39 16V7.24H14.55V8.224H10.446V11.128H14.238V12.112H10.47V16H9.39Z" fill="var(--color-text)" id="icon-64-text"></path></svg><span>Date<wbr/>Compare<wbr/>Triple</span></a></li>
316+
<li><a href="../functions/DateZFromDateParts.html" class="tsd-kind-function"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-64-path"></use><use href="#icon-64-text"></use></svg><span>DateZFrom<wbr/>Date<wbr/>Parts</span></a></li>
317+
<li><a href="../functions/DatemorphISOString.html" class="tsd-kind-function"><svg class="tsd-kind-icon" width="24" height="24" viewBox="0 0 24 24"><use href="#icon-64-path"></use><use href="#icon-64-text"></use></svg><span>DatemorphISOString</span></a></li></ul></nav></div></div></div>
313318
<div class="tsd-generator">
314319
<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div>
315320
<div class="overlay"></div></body></html>

0 commit comments

Comments
 (0)