]> git.r.bdr.sh - rbdr/forum/commitdiff
Add typedoc
authorRuben Beltran del Rio <redacted>
Sun, 1 May 2022 13:10:56 +0000 (15:10 +0200)
committerRuben Beltran del Rio <redacted>
Sun, 1 May 2022 13:10:56 +0000 (15:10 +0200)
doc/.nojekyll [new file with mode: 0644]
doc/README.md [new file with mode: 0644]
doc/interfaces/App.Locals.md [new file with mode: 0644]
doc/interfaces/App.Platform.md [new file with mode: 0644]
doc/interfaces/App.Session.md [new file with mode: 0644]
doc/interfaces/App.Stuff.md [new file with mode: 0644]
doc/modules.md [new file with mode: 0644]
doc/modules/App.md [new file with mode: 0644]
package-lock.json
package.json
tsconfig.json

diff --git a/doc/.nojekyll b/doc/.nojekyll
new file mode 100644 (file)
index 0000000..e2ac661
--- /dev/null
@@ -0,0 +1 @@
+TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
\ No newline at end of file
diff --git a/doc/README.md b/doc/README.md
new file mode 100644 (file)
index 0000000..0d14a40
--- /dev/null
@@ -0,0 +1,32 @@
+forum / [Exports](modules.md)
+
+# Forum
+
+A forum for the year 3000.
+
+## What you will need to get started
+
+This project uses [node][node] for most of its development processes.
+Once you have node installed according to the instructions there, run
+`npm install` from the root of the project.
+
+For local development serve the page by running `npm run dev` from the
+root of the project.
+
+This project depends on the [forum server][forum-server], so make sure
+that's running before starting.
+
+## Testing
+
+You can run tests with `npm test`. The tests use `testing-library`, `pact`,
+and `jest`.
+
+Here's some short guidelines:
+
+- Every component that receives props or changes state should be tested.
+- Test expected outcomes, not implementation details.
+- Avoid mocking unless it's an external call
+- Stores that interact with the API should be tested using pact
+
+[node]: https://nodejs.org/en/
+[forum-server]: https://gitlab.com/rbdr/forum-server
diff --git a/doc/interfaces/App.Locals.md b/doc/interfaces/App.Locals.md
new file mode 100644 (file)
index 0000000..4f4f400
--- /dev/null
@@ -0,0 +1,7 @@
+[forum](../README.md) / [Exports](../modules.md) / [App](../modules/App.md) / Locals
+
+# Interface: Locals
+
+[App](../modules/App.md).Locals
+
+The interface that defines `event.locals`, which can be accessed in [hooks](/docs/hooks) (`handle`, `handleError` and `getSession`) and [endpoints](/docs/routing#endpoints).
diff --git a/doc/interfaces/App.Platform.md b/doc/interfaces/App.Platform.md
new file mode 100644 (file)
index 0000000..dc29fdc
--- /dev/null
@@ -0,0 +1,7 @@
+[forum](../README.md) / [Exports](../modules.md) / [App](../modules/App.md) / Platform
+
+# Interface: Platform
+
+[App](../modules/App.md).Platform
+
+If your adapter provides [platform-specific context](/docs/adapters#supported-environments-platform-specific-context) via `event.platform`, you can specify it here.
diff --git a/doc/interfaces/App.Session.md b/doc/interfaces/App.Session.md
new file mode 100644 (file)
index 0000000..600a72b
--- /dev/null
@@ -0,0 +1,7 @@
+[forum](../README.md) / [Exports](../modules.md) / [App](../modules/App.md) / Session
+
+# Interface: Session
+
+[App](../modules/App.md).Session
+
+The interface that defines `session`, both as an argument to [`load`](/docs/loading) functions and the value of the [session store](/docs/modules#$app-stores).
diff --git a/doc/interfaces/App.Stuff.md b/doc/interfaces/App.Stuff.md
new file mode 100644 (file)
index 0000000..14f9d50
--- /dev/null
@@ -0,0 +1,7 @@
+[forum](../README.md) / [Exports](../modules.md) / [App](../modules/App.md) / Stuff
+
+# Interface: Stuff
+
+[App](../modules/App.md).Stuff
+
+The interface that defines `stuff`, as input or output to [`load`](/docs/loading) or as the value of the `stuff` property of the [page store](/docs/modules#$app-stores).
diff --git a/doc/modules.md b/doc/modules.md
new file mode 100644 (file)
index 0000000..767f5c4
--- /dev/null
@@ -0,0 +1,9 @@
+[forum](README.md) / Exports
+
+# forum
+
+## Table of contents
+
+### Namespaces
+
+- [App](modules/App.md)
diff --git a/doc/modules/App.md b/doc/modules/App.md
new file mode 100644 (file)
index 0000000..f622f15
--- /dev/null
@@ -0,0 +1,30 @@
+[forum](../README.md) / [Exports](../modules.md) / App
+
+# Namespace: App
+
+It's possible to tell SvelteKit how to type objects inside your app by declaring the `App` namespace. By default, a new project will have a file called `src/app.d.ts` containing the following:
+
+```ts
+/// <reference types="@sveltejs/kit" />
+
+declare namespace App {
+       interface Locals {}
+
+       interface Platform {}
+
+       interface Session {}
+
+       interface Stuff {}
+}
+```
+
+By populating these interfaces, you will gain type safety when using `event.locals`, `event.platform`, `session` and `stuff`:
+
+## Table of contents
+
+### Interfaces
+
+- [Locals](../interfaces/App.Locals.md)
+- [Platform](../interfaces/App.Platform.md)
+- [Session](../interfaces/App.Session.md)
+- [Stuff](../interfaces/App.Stuff.md)
index b839897e7119529e029302d8ff901c8b6d955323..0a88ae9c499550512a85e14bd8fa776e77586df1 100644 (file)
@@ -41,6 +41,8 @@
                                "tinyduration": "^3.2.2",
                                "ts-jest": "^28.0.0-next.3",
                                "tslib": "^2.3.1",
                                "tinyduration": "^3.2.2",
                                "ts-jest": "^28.0.0-next.3",
                                "tslib": "^2.3.1",
+                               "typedoc": "^0.22.15",
+                               "typedoc-plugin-markdown": "^3.12.1",
                                "typescript": "~4.6.2"
                        }
                },
                                "typescript": "~4.6.2"
                        }
                },
                                "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0"
                        }
                },
                                "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0"
                        }
                },
+               "node_modules/handlebars": {
+                       "version": "4.7.7",
+                       "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz",
+                       "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==",
+                       "dev": true,
+                       "dependencies": {
+                               "minimist": "^1.2.5",
+                               "neo-async": "^2.6.0",
+                               "source-map": "^0.6.1",
+                               "wordwrap": "^1.0.0"
+                       },
+                       "bin": {
+                               "handlebars": "bin/handlebars"
+                       },
+                       "engines": {
+                               "node": ">=0.4.7"
+                       },
+                       "optionalDependencies": {
+                               "uglify-js": "^3.1.4"
+                       }
+               },
+               "node_modules/handlebars/node_modules/source-map": {
+                       "version": "0.6.1",
+                       "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+                       "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+                       "dev": true,
+                       "engines": {
+                               "node": ">=0.10.0"
+                       }
+               },
                "node_modules/has": {
                        "version": "1.0.3",
                        "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
                "node_modules/has": {
                        "version": "1.0.3",
                        "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
                                "node": ">=6"
                        }
                },
                                "node": ">=6"
                        }
                },
+               "node_modules/jsonc-parser": {
+                       "version": "3.0.0",
+                       "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz",
+                       "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==",
+                       "dev": true
+               },
                "node_modules/kleur": {
                        "version": "4.1.4",
                        "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
                "node_modules/kleur": {
                        "version": "4.1.4",
                        "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
                                "es5-ext": "~0.10.2"
                        }
                },
                                "es5-ext": "~0.10.2"
                        }
                },
+               "node_modules/lunr": {
+                       "version": "2.3.9",
+                       "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz",
+                       "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==",
+                       "dev": true
+               },
                "node_modules/lz-string": {
                        "version": "1.4.4",
                        "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz",
                "node_modules/lz-string": {
                        "version": "1.4.4",
                        "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz",
                                "tmpl": "1.0.5"
                        }
                },
                                "tmpl": "1.0.5"
                        }
                },
+               "node_modules/marked": {
+                       "version": "4.0.14",
+                       "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.14.tgz",
+                       "integrity": "sha512-HL5sSPE/LP6U9qKgngIIPTthuxC0jrfxpYMZ3LdGDD3vTnLs59m2Z7r6+LNDR3ToqEQdkKd6YaaEfJhodJmijQ==",
+                       "dev": true,
+                       "bin": {
+                               "marked": "bin/marked.js"
+                       },
+                       "engines": {
+                               "node": ">= 12"
+                       }
+               },
                "node_modules/media-typer": {
                        "version": "0.3.0",
                        "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
                "node_modules/media-typer": {
                        "version": "0.3.0",
                        "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
                                "node": ">= 0.6"
                        }
                },
                                "node": ">= 0.6"
                        }
                },
+               "node_modules/neo-async": {
+                       "version": "2.6.2",
+                       "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
+                       "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
+                       "dev": true
+               },
                "node_modules/next-tick": {
                        "version": "1.1.0",
                        "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
                "node_modules/next-tick": {
                        "version": "1.1.0",
                        "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
                                "node": ">=8"
                        }
                },
                                "node": ">=8"
                        }
                },
+               "node_modules/shiki": {
+                       "version": "0.10.1",
+                       "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.10.1.tgz",
+                       "integrity": "sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==",
+                       "dev": true,
+                       "dependencies": {
+                               "jsonc-parser": "^3.0.0",
+                               "vscode-oniguruma": "^1.6.1",
+                               "vscode-textmate": "5.2.0"
+                       }
+               },
                "node_modules/side-channel": {
                        "version": "1.0.4",
                        "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
                "node_modules/side-channel": {
                        "version": "1.0.4",
                        "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
                        "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
                        "dev": true
                },
                        "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
                        "dev": true
                },
+               "node_modules/typedoc": {
+                       "version": "0.22.15",
+                       "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.15.tgz",
+                       "integrity": "sha512-CMd1lrqQbFvbx6S9G6fL4HKp3GoIuhujJReWqlIvSb2T26vGai+8Os3Mde7Pn832pXYemd9BMuuYWhFpL5st0Q==",
+                       "dev": true,
+                       "dependencies": {
+                               "glob": "^7.2.0",
+                               "lunr": "^2.3.9",
+                               "marked": "^4.0.12",
+                               "minimatch": "^5.0.1",
+                               "shiki": "^0.10.1"
+                       },
+                       "bin": {
+                               "typedoc": "bin/typedoc"
+                       },
+                       "engines": {
+                               "node": ">= 12.10.0"
+                       },
+                       "peerDependencies": {
+                               "typescript": "4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x || 4.6.x"
+                       }
+               },
+               "node_modules/typedoc-plugin-markdown": {
+                       "version": "3.12.1",
+                       "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.12.1.tgz",
+                       "integrity": "sha512-gMntJq7+JlGJZ5sVjrkzO/rG2dsmNBbWk5ZkcKvYu6QOeBwGcK5tzEyS0aqnFTJj9GCHCB+brAnTuKtAyotNwA==",
+                       "dev": true,
+                       "dependencies": {
+                               "handlebars": "^4.7.7"
+                       },
+                       "peerDependencies": {
+                               "typedoc": ">=0.22.0"
+                       }
+               },
+               "node_modules/typedoc/node_modules/brace-expansion": {
+                       "version": "2.0.1",
+                       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+                       "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+                       "dev": true,
+                       "dependencies": {
+                               "balanced-match": "^1.0.0"
+                       }
+               },
+               "node_modules/typedoc/node_modules/minimatch": {
+                       "version": "5.0.1",
+                       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
+                       "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+                       "dev": true,
+                       "dependencies": {
+                               "brace-expansion": "^2.0.1"
+                       },
+                       "engines": {
+                               "node": ">=10"
+                       }
+               },
                "node_modules/typescript": {
                        "version": "4.6.4",
                        "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz",
                "node_modules/typescript": {
                        "version": "4.6.4",
                        "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz",
                                "node": ">=4.2.0"
                        }
                },
                                "node": ">=4.2.0"
                        }
                },
+               "node_modules/uglify-js": {
+                       "version": "3.15.4",
+                       "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.4.tgz",
+                       "integrity": "sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA==",
+                       "dev": true,
+                       "optional": true,
+                       "bin": {
+                               "uglifyjs": "bin/uglifyjs"
+                       },
+                       "engines": {
+                               "node": ">=0.8.0"
+                       }
+               },
                "node_modules/underscore": {
                        "version": "1.12.1",
                        "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
                "node_modules/underscore": {
                        "version": "1.12.1",
                        "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
                                }
                        }
                },
                                }
                        }
                },
+               "node_modules/vscode-oniguruma": {
+                       "version": "1.6.2",
+                       "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.6.2.tgz",
+                       "integrity": "sha512-KH8+KKov5eS/9WhofZR8M8dMHWN2gTxjMsG4jd04YhpbPR91fUj7rYQ2/XjeHCJWbg7X++ApRIU9NUwM2vTvLA==",
+                       "dev": true
+               },
+               "node_modules/vscode-textmate": {
+                       "version": "5.2.0",
+                       "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz",
+                       "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==",
+                       "dev": true
+               },
                "node_modules/w3c-hr-time": {
                        "version": "1.0.2",
                        "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
                "node_modules/w3c-hr-time": {
                        "version": "1.0.2",
                        "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
                                "node": ">=0.10.0"
                        }
                },
                                "node": ">=0.10.0"
                        }
                },
+               "node_modules/wordwrap": {
+                       "version": "1.0.0",
+                       "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
+                       "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
+                       "dev": true
+               },
                "node_modules/worktop": {
                        "version": "0.8.0-next.13",
                        "resolved": "https://registry.npmjs.org/worktop/-/worktop-0.8.0-next.13.tgz",
                "node_modules/worktop": {
                        "version": "0.8.0-next.13",
                        "resolved": "https://registry.npmjs.org/worktop/-/worktop-0.8.0-next.13.tgz",
                                "tslib": "^2.1.0"
                        }
                },
                                "tslib": "^2.1.0"
                        }
                },
+               "handlebars": {
+                       "version": "4.7.7",
+                       "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz",
+                       "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==",
+                       "dev": true,
+                       "requires": {
+                               "minimist": "^1.2.5",
+                               "neo-async": "^2.6.0",
+                               "source-map": "^0.6.1",
+                               "uglify-js": "^3.1.4",
+                               "wordwrap": "^1.0.0"
+                       },
+                       "dependencies": {
+                               "source-map": {
+                                       "version": "0.6.1",
+                                       "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+                                       "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+                                       "dev": true
+                               }
+                       }
+               },
                "has": {
                        "version": "1.0.3",
                        "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
                "has": {
                        "version": "1.0.3",
                        "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
                        "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
                        "dev": true
                },
                        "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
                        "dev": true
                },
+               "jsonc-parser": {
+                       "version": "3.0.0",
+                       "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz",
+                       "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==",
+                       "dev": true
+               },
                "kleur": {
                        "version": "4.1.4",
                        "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
                "kleur": {
                        "version": "4.1.4",
                        "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz",
                                "es5-ext": "~0.10.2"
                        }
                },
                                "es5-ext": "~0.10.2"
                        }
                },
+               "lunr": {
+                       "version": "2.3.9",
+                       "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz",
+                       "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==",
+                       "dev": true
+               },
                "lz-string": {
                        "version": "1.4.4",
                        "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz",
                "lz-string": {
                        "version": "1.4.4",
                        "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz",
                                "tmpl": "1.0.5"
                        }
                },
                                "tmpl": "1.0.5"
                        }
                },
+               "marked": {
+                       "version": "4.0.14",
+                       "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.14.tgz",
+                       "integrity": "sha512-HL5sSPE/LP6U9qKgngIIPTthuxC0jrfxpYMZ3LdGDD3vTnLs59m2Z7r6+LNDR3ToqEQdkKd6YaaEfJhodJmijQ==",
+                       "dev": true
+               },
                "media-typer": {
                        "version": "0.3.0",
                        "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
                "media-typer": {
                        "version": "0.3.0",
                        "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
                        "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
                        "dev": true
                },
                        "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
                        "dev": true
                },
+               "neo-async": {
+                       "version": "2.6.2",
+                       "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
+                       "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
+                       "dev": true
+               },
                "next-tick": {
                        "version": "1.1.0",
                        "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
                "next-tick": {
                        "version": "1.1.0",
                        "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
                        "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
                        "dev": true
                },
                        "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
                        "dev": true
                },
+               "shiki": {
+                       "version": "0.10.1",
+                       "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.10.1.tgz",
+                       "integrity": "sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==",
+                       "dev": true,
+                       "requires": {
+                               "jsonc-parser": "^3.0.0",
+                               "vscode-oniguruma": "^1.6.1",
+                               "vscode-textmate": "5.2.0"
+                       }
+               },
                "side-channel": {
                        "version": "1.0.4",
                        "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
                "side-channel": {
                        "version": "1.0.4",
                        "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
                        "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
                        "dev": true
                },
                        "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
                        "dev": true
                },
+               "typedoc": {
+                       "version": "0.22.15",
+                       "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.15.tgz",
+                       "integrity": "sha512-CMd1lrqQbFvbx6S9G6fL4HKp3GoIuhujJReWqlIvSb2T26vGai+8Os3Mde7Pn832pXYemd9BMuuYWhFpL5st0Q==",
+                       "dev": true,
+                       "requires": {
+                               "glob": "^7.2.0",
+                               "lunr": "^2.3.9",
+                               "marked": "^4.0.12",
+                               "minimatch": "^5.0.1",
+                               "shiki": "^0.10.1"
+                       },
+                       "dependencies": {
+                               "brace-expansion": {
+                                       "version": "2.0.1",
+                                       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+                                       "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+                                       "dev": true,
+                                       "requires": {
+                                               "balanced-match": "^1.0.0"
+                                       }
+                               },
+                               "minimatch": {
+                                       "version": "5.0.1",
+                                       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
+                                       "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+                                       "dev": true,
+                                       "requires": {
+                                               "brace-expansion": "^2.0.1"
+                                       }
+                               }
+                       }
+               },
+               "typedoc-plugin-markdown": {
+                       "version": "3.12.1",
+                       "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.12.1.tgz",
+                       "integrity": "sha512-gMntJq7+JlGJZ5sVjrkzO/rG2dsmNBbWk5ZkcKvYu6QOeBwGcK5tzEyS0aqnFTJj9GCHCB+brAnTuKtAyotNwA==",
+                       "dev": true,
+                       "requires": {
+                               "handlebars": "^4.7.7"
+                       }
+               },
                "typescript": {
                        "version": "4.6.4",
                        "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz",
                        "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==",
                        "dev": true
                },
                "typescript": {
                        "version": "4.6.4",
                        "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz",
                        "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==",
                        "dev": true
                },
+               "uglify-js": {
+                       "version": "3.15.4",
+                       "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.4.tgz",
+                       "integrity": "sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA==",
+                       "dev": true,
+                       "optional": true
+               },
                "underscore": {
                        "version": "1.12.1",
                        "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
                "underscore": {
                        "version": "1.12.1",
                        "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
                                "rollup": "^2.59.0"
                        }
                },
                                "rollup": "^2.59.0"
                        }
                },
+               "vscode-oniguruma": {
+                       "version": "1.6.2",
+                       "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.6.2.tgz",
+                       "integrity": "sha512-KH8+KKov5eS/9WhofZR8M8dMHWN2gTxjMsG4jd04YhpbPR91fUj7rYQ2/XjeHCJWbg7X++ApRIU9NUwM2vTvLA==",
+                       "dev": true
+               },
+               "vscode-textmate": {
+                       "version": "5.2.0",
+                       "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz",
+                       "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==",
+                       "dev": true
+               },
                "w3c-hr-time": {
                        "version": "1.0.2",
                        "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
                "w3c-hr-time": {
                        "version": "1.0.2",
                        "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
                        "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
                        "dev": true
                },
                        "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
                        "dev": true
                },
+               "wordwrap": {
+                       "version": "1.0.0",
+                       "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
+                       "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
+                       "dev": true
+               },
                "worktop": {
                        "version": "0.8.0-next.13",
                        "resolved": "https://registry.npmjs.org/worktop/-/worktop-0.8.0-next.13.tgz",
                "worktop": {
                        "version": "0.8.0-next.13",
                        "resolved": "https://registry.npmjs.org/worktop/-/worktop-0.8.0-next.13.tgz",
index 282e8fbc3fe12e4b75b529f815d5b5b76acfaae6..0ec0b4f52bbee69695a083d09884a3972b7ddc07 100644 (file)
@@ -13,7 +13,8 @@
                "check": "svelte-check --tsconfig ./tsconfig.json",
                "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
                "lint": "prettier --ignore-path .gitignore --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
                "check": "svelte-check --tsconfig ./tsconfig.json",
                "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
                "lint": "prettier --ignore-path .gitignore --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
-               "format": "prettier --ignore-path .gitignore --write --plugin-search-dir=. ."
+               "format": "prettier --ignore-path .gitignore --write --plugin-search-dir=. .",
+    "document": "typedoc --plugin typedoc-plugin-markdown --out doc 'src/app.d.ts'"
        },
        "devDependencies": {
                "@apollo/client": "^3.6.1",
        },
        "devDependencies": {
                "@apollo/client": "^3.6.1",
@@ -49,6 +50,8 @@
                "tinyduration": "^3.2.2",
                "ts-jest": "^28.0.0-next.3",
                "tslib": "^2.3.1",
                "tinyduration": "^3.2.2",
                "ts-jest": "^28.0.0-next.3",
                "tslib": "^2.3.1",
+               "typedoc": "^0.22.15",
+               "typedoc-plugin-markdown": "^3.12.1",
                "typescript": "~4.6.2"
        },
        "type": "module"
                "typescript": "~4.6.2"
        },
        "type": "module"
index 61c17fe90b7c9b203e67b6eb11a1cce74b3355e0..7010ae0d92569fee96964c9b6dc27a8dafe69be5 100644 (file)
@@ -2,7 +2,8 @@
        "extends": "./.svelte-kit/tsconfig.json",
        "compilerOptions": {
                "moduleResolution": "node",
        "extends": "./.svelte-kit/tsconfig.json",
        "compilerOptions": {
                "moduleResolution": "node",
-               "target": "es2017",
+               "target": "es2020",
+               "module": "es2020",
                "importsNotUsedAsValues": "error",
                "resolveJsonModule": true,
                "preserveValueImports": true,
                "importsNotUsedAsValues": "error",
                "resolveJsonModule": true,
                "preserveValueImports": true,