Skip to content

Commit cea27fd

Browse files
authored
Merge pull request apiaryio#4 from apiaryio/kylef/jsdoc
Add API Reference documentation
2 parents d414bd2 + 98aa853 commit cea27fd

File tree

7 files changed

+160
-1
lines changed

7 files changed

+160
-1
lines changed

.readthedocs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
build:
2+
image: latest

docs/conf.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"source": {
3+
"include": [
4+
"../node_modules/minim/lib/primitives",
5+
"../node_modules/minim/lib/elements",
6+
"../node_modules/minim-api-description/lib/elements",
7+
"../node_modules/minim-parse-result/lib"
8+
]
9+
}
10+
}

docs/conf.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
#!/usr/bin/env python3
22
# -*- coding: utf-8 -*-
33

4+
import os
5+
import subprocess
6+
7+
IS_READTHEDOCS = os.environ.get('READTHEDOCS') == 'True'
8+
9+
if IS_READTHEDOCS:
10+
docs_dir = os.path.dirname(__file__)
11+
project_dir = os.path.join(docs_dir, '..')
12+
subprocess.check_call('npm install', cwd=project_dir, shell=True)
13+
414
# -- General configuration ------------------------------------------------
515

616
# If your documentation needs a minimal Sphinx version, state it here.
@@ -10,6 +20,7 @@
1020
# Add any Sphinx extension module names here, as strings. They can be
1121
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
1222
# ones.
23+
extensions = ['sphinx_js']
1324

1425
# Add any paths that contain templates here, relative to this directory.
1526
templates_path = ['_templates']
@@ -140,3 +151,9 @@
140151
author, 'APIElementsJS', 'One line description of project.',
141152
'Miscellaneous'),
142153
]
154+
155+
156+
# JS Doc
157+
158+
primary_domain = 'js'
159+
jsdoc_config_path = 'conf.json'

docs/elements.rst

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
Elements
2+
========
3+
4+
.. contents::
5+
:depth: 4
6+
7+
Element
8+
-------
9+
10+
.. autoclass:: Element
11+
:members:
12+
13+
Primitives
14+
----------
15+
16+
String
17+
~~~~~~
18+
19+
.. autoclass:: StringElement
20+
:members:
21+
22+
Number
23+
~~~~~~
24+
25+
.. autoclass:: NumberElement
26+
:members:
27+
28+
Boolean
29+
~~~~~~~
30+
31+
.. autoclass:: BooleanElement
32+
:members:
33+
34+
Null
35+
~~~~
36+
37+
.. autoclass:: NullElement
38+
:members:
39+
40+
Collections
41+
-----------
42+
43+
Array
44+
~~~~~
45+
46+
.. autoclass:: ArrayElement
47+
:members:
48+
49+
Object
50+
~~~~~~
51+
52+
.. autoclass:: ObjectElement
53+
:members:
54+
55+
Member
56+
~~~~~~
57+
58+
.. autoclass:: MemberElement
59+
:members:
60+
61+
Profiles
62+
--------
63+
64+
.. autoclass:: LinkElement
65+
:members:
66+
67+
Referencing
68+
-----------
69+
.. autoclass:: RefElement
70+
:members:
71+
72+
Parse Result
73+
------------
74+
75+
.. class:: ParseResult
76+
77+
Annotation
78+
~~~~~~~~~~
79+
80+
.. class:: Annotation
81+
82+
SourceMap
83+
~~~~~~~~~
84+
85+
.. class:: SourceMap
86+
87+
API Description
88+
---------------
89+
90+
Category
91+
~~~~~~~~
92+
93+
.. class:: Category
94+
95+
Copy
96+
~~~~
97+
98+
.. class:: Copy
99+
100+
Data Structure
101+
~~~~~~~~~~~~~~
102+
103+
.. class:: DataStructure
104+
.. class:: Enum
105+
106+
Resource
107+
~~~~~~~~
108+
109+
.. class:: Resource
110+
.. class:: Transition
111+
112+
HTTP Transaction
113+
~~~~~~~~~~~~~~~~
114+
115+
.. class:: HttpTransaction
116+
.. class:: HttpRequest
117+
.. class:: HttpResponse
118+
.. class:: HttpHeaders
119+
.. class:: Asset
120+
.. class:: HrefVariables
121+
.. class:: AuthScheme

docs/index.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,14 @@ Usage
3030
const parseResult = new namespace.elements.ParseResult();
3131
console.log(parseResult);
3232
33+
API Reference
34+
-------------
35+
36+
.. toctree::
37+
:maxdepth: 2
38+
39+
elements
40+
3341
Indices and tables
3442
==================
3543

docs/requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
Pygments==2.2.0
22
Sphinx==1.6.6
33
sphinx-autobuild==0.7.1
4+
sphinx-js==2.4

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"author": "Apiary",
1414
"license": "MIT",
1515
"dependencies": {
16-
"minim": "^0.20.4",
16+
"minim": "git+https://github.com/refractproject/minim.git",
1717
"minim-parse-result": "^0.10.0"
1818
},
1919
"devDependencies": {

0 commit comments

Comments
 (0)