├── site ├── static │ ├── .nojekyll │ ├── img │ │ ├── logo.png │ │ ├── dotted.png │ │ ├── favicon.ico │ │ ├── favicon.png │ │ ├── logo-sm.png │ │ ├── social-card.png │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── apple-touch-icon.png │ │ ├── serverless-circle.webp │ │ ├── android-chrome-192x192.png │ │ ├── android-chrome-512x512.png │ │ ├── stack-overflow.svg │ │ ├── cursor.svg │ │ ├── nirrius-repeat.svg │ │ └── github-icon.svg │ ├── fonts │ │ └── go │ │ │ ├── Go-Bold.ttf │ │ │ ├── Go-Mono.ttf │ │ │ ├── Go-Italic.ttf │ │ │ ├── Go-Medium.ttf │ │ │ ├── Go-Mono-Bold.ttf │ │ │ ├── Go-Regular.ttf │ │ │ ├── Go-Smallcaps.ttf │ │ │ ├── Go-Bold-Italic.ttf │ │ │ ├── Go-Mono-Italic.ttf │ │ │ ├── Go-Medium-Italic.ttf │ │ │ ├── Go-Mono-Bold-Italic.ttf │ │ │ └── Go-Smallcaps-Italic.ttf │ ├── site.webmanifest │ └── scripts │ │ └── main.mjs ├── src │ ├── theme │ │ ├── DocSidebarItem │ │ │ └── Link │ │ │ │ └── styles.module.css │ │ ├── DocItem │ │ │ ├── Footer │ │ │ │ └── styles.module.css │ │ │ └── Layout │ │ │ │ └── styles.module.css │ │ ├── DocPage │ │ │ └── Layout │ │ │ │ ├── styles.module.css │ │ │ │ └── index.tsx │ │ ├── DocTagDocListPage │ │ │ └── styles.module.css │ │ ├── DocSidebar │ │ │ └── Desktop │ │ │ │ ├── Content │ │ │ │ ├── styles.module.css │ │ │ │ └── index.tsx │ │ │ │ ├── styles.module.css │ │ │ │ └── index.tsx │ │ ├── TOCCollapsible │ │ │ ├── styles.module.css │ │ │ └── index.tsx │ │ ├── Heading │ │ │ ├── styles.module.css │ │ │ └── index.tsx │ │ └── Tag │ │ │ └── index.tsx │ ├── components │ │ ├── HomepageFeatures │ │ │ └── styles.module.css │ │ └── DocIssueURL.tsx │ ├── pages │ │ └── index.module.css │ └── css │ │ ├── scanline.css │ │ ├── cursor.css │ │ ├── scrollbar.css │ │ ├── backgrounds.css │ │ ├── menu.css │ │ └── fonts.css ├── tsconfig.json ├── .gitignore ├── babel.config.cjs ├── docusaurus.config.js ├── package.json └── algolia.json ├── .node-version ├── .prettierignore ├── _category_.json ├── docgen ├── theme │ ├── resources │ │ └── partials │ │ │ ├── main.hbs │ │ │ ├── title.hbs │ │ │ ├── header.hbs │ │ │ ├── comment.hbs │ │ │ ├── member.getterSetter.hbs │ │ │ ├── members.group.hbs │ │ │ ├── members.hbs │ │ │ ├── member.hbs │ │ │ ├── member.sources.hbs │ │ │ ├── member.declaration.hbs │ │ │ └── member.signature.hbs │ ├── options-reader.ts │ ├── groups.ts │ └── navigation-item.ts ├── templates │ ├── index.hbs │ └── reflection.member.hbs ├── index.ts ├── utils │ ├── index.ts │ ├── runtime.ts │ └── front-matter.ts ├── helpers │ ├── escape.ts │ ├── relative-url.ts │ ├── if-show-returns.ts │ ├── if-named-anchors.ts │ ├── attemptExternalResolution.ts │ ├── if-show-breadcrumbs.ts │ ├── if-show-page-title.ts │ ├── if-show-named-anchors.ts │ ├── if-is-reference.ts │ ├── returns.ts │ ├── if-show-type-hierarchy.ts │ ├── index-signature-title.ts │ ├── usage-tabs.ts │ ├── humanizeReflectionName.ts │ ├── reference-member.ts │ ├── reflection-title.ts │ ├── hierarchy.ts │ ├── reflection-path.ts │ ├── comments.ts │ └── index.ts └── mdx │ ├── relativeLinks.mjs │ └── headingClasses.mjs ├── files ├── _category_.json ├── extensions │ ├── Styles.ts │ ├── PlainText.ts │ ├── Forms.ts │ ├── index.ts │ ├── XML.ts │ ├── Images.ts │ └── JavaScript.ts ├── common.ts ├── files.ts ├── extensionToMimeType.ts ├── index.ts └── mime.ts ├── http ├── _category_.json ├── headers │ ├── _category_.json │ └── index.ts ├── HTTPMethod.ts ├── responses │ ├── index.ts │ ├── NotModifiedResponse.ts │ └── HTMLResponse.ts ├── RouterMethod.ts ├── isInstanceOfRequest.ts ├── isInstanceOfResponse.ts ├── isRequestLike.ts ├── routerMethodToHTTPMethod.ts ├── methodVerbToRouterMethod.ts ├── cloneAsMutableResponse.ts ├── shouldCompress.ts ├── RequestContext.ts ├── index.ts └── IncomingRequestCfProperties.ts ├── node ├── _category_.json ├── files.ts ├── polyfills.ts ├── createServerHandler.test.tsx └── index.ts ├── router ├── _category_.json ├── MiddlewareDeclarationLike.ts ├── FetcherLike.ts ├── RouteMatch.ts ├── WorkerEnvFetchBinding.ts ├── MiddlewareDeclaration.ts ├── isMiddlewareDeclarationOption.ts ├── isFetcher.ts ├── ParsedRoute.ts ├── createRouteRedirect.ts └── RouteRequestHandler.ts ├── errors ├── _category_.json └── index.ts ├── events ├── _category_.json ├── index.ts └── IsomorphicFetchEventInit.ts ├── ssr ├── _category_.json ├── KeyworkProvidersComponent.tsx └── stream.ts ├── middleware ├── _category_.json └── SessionMiddleware.test.ts ├── .eslintignore ├── typedoc.json ├── .github ├── ISSUE_TEMPLATE │ ├── config.yml │ ├── doc.md │ └── feature-request.md ├── codecov.yml ├── dependabot.yml └── workflows │ ├── keywork-site.yml │ └── keywork-ci.yml ├── .editorconfig ├── .prettierrc.mjs ├── docs ├── license │ ├── index.md │ └── commercial.md ├── examples │ ├── url-params.md │ └── parsing-requests.md ├── PULL_REQUEST_TEMPLATE.md ├── getting-started │ └── index.md └── THIRD_PARTY_NOTICES.md ├── cli ├── index.ts └── yargs.ts ├── logging ├── index.ts └── LoggerContext.tsx ├── .gitignore ├── types ├── react-dom-server-node.d.ts └── react-dom-server-browser.d.ts ├── cloudflare ├── index.ts ├── EnvironmentBindingKinds.ts └── CloudflarePagesAssetRouter.ts ├── .yarnrc.yml ├── lifecycle └── index.ts ├── uri ├── index.ts ├── query.ts └── URLContext.ts ├── client ├── index.ts ├── hooks.ts ├── SSRRoute.tsx ├── hydrate.ts └── animation.ts ├── examples └── simple │ ├── public │ ├── main.tsx │ └── pages │ │ ├── TodoItem.tsx │ │ └── Index.tsx │ ├── api.ts │ └── _worker.tsx ├── utils ├── index.ts ├── json.ts ├── datetime.ts ├── globals.ts ├── constants.ts └── map.ts ├── index.cli.ts ├── SECURITY.md ├── testing └── index.ts ├── scripts └── import-map │ └── index.ts ├── .vscode └── settings.json └── tsconfig.json /site/static/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.node-version: -------------------------------------------------------------------------------- 1 | 17.4.0 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | build/header.js 2 | -------------------------------------------------------------------------------- /_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "URI", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /docgen/theme/resources/partials/main.hbs: -------------------------------------------------------------------------------- 1 | {{{ toc }}} 2 | 3 | {{> members}} 4 | -------------------------------------------------------------------------------- /files/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Files", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /http/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "HTTP", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /node/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Node", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /router/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Routing", 3 | "position": 1 4 | } 5 | -------------------------------------------------------------------------------- /errors/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Errors", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /events/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Events", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /http/headers/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Headers", 3 | "collapsible": true 4 | } 5 | -------------------------------------------------------------------------------- /ssr/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "React", 3 | "collapsible": true, 4 | "position": 2 5 | } 6 | -------------------------------------------------------------------------------- /site/static/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/logo.png -------------------------------------------------------------------------------- /site/src/theme/DocSidebarItem/Link/styles.module.css: -------------------------------------------------------------------------------- 1 | .menuExternalLink { 2 | align-items: center; 3 | } 4 | -------------------------------------------------------------------------------- /site/static/img/dotted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/dotted.png -------------------------------------------------------------------------------- /site/static/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/favicon.ico -------------------------------------------------------------------------------- /site/static/img/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/favicon.png -------------------------------------------------------------------------------- /site/static/img/logo-sm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/logo-sm.png -------------------------------------------------------------------------------- /middleware/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Middleware", 3 | "collapsible": true, 4 | "position": 2 5 | } 6 | -------------------------------------------------------------------------------- /docgen/templates/index.hbs: -------------------------------------------------------------------------------- 1 | {{> header}} 2 | 3 | {{#with model.readme}} 4 | 5 | {{{comment this}}} 6 | 7 | {{/with}} 8 | -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Bold.ttf -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Mono.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Mono.ttf -------------------------------------------------------------------------------- /site/static/img/social-card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/social-card.png -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Italic.ttf -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Medium.ttf -------------------------------------------------------------------------------- /site/static/img/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/favicon-16x16.png -------------------------------------------------------------------------------- /site/static/img/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/favicon-32x32.png -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | build/header.js 2 | dist/**/* 3 | site/build/**/* 4 | dist-worker/**/* 5 | dist-node/**/* 6 | node_modules/**/* 7 | -------------------------------------------------------------------------------- /docgen/theme/resources/partials/title.hbs: -------------------------------------------------------------------------------- 1 | {{#ifShowPageTitle}} 2 | 3 | {{{reflectionTitle true}}} 4 | 5 | {{/ifShowPageTitle}} 6 | -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Mono-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Mono-Bold.ttf -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Regular.ttf -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Smallcaps.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Smallcaps.ttf -------------------------------------------------------------------------------- /site/static/img/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/apple-touch-icon.png -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Bold-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Bold-Italic.ttf -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Mono-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Mono-Italic.ttf -------------------------------------------------------------------------------- /site/static/img/serverless-circle.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/serverless-circle.webp -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Medium-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Medium-Italic.ttf -------------------------------------------------------------------------------- /site/static/img/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/android-chrome-192x192.png -------------------------------------------------------------------------------- /site/static/img/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/img/android-chrome-512x512.png -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Mono-Bold-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Mono-Bold-Italic.ttf -------------------------------------------------------------------------------- /site/static/fonts/go/Go-Smallcaps-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sister-software/keywork/HEAD/site/static/fonts/go/Go-Smallcaps-Italic.ttf -------------------------------------------------------------------------------- /docgen/templates/reflection.member.hbs: -------------------------------------------------------------------------------- 1 | {{> header}} 2 | 3 | {{> title}} 4 | 5 | {{#with model}} 6 | 7 | {{> member}} 8 | 9 | {{/with}} 10 | -------------------------------------------------------------------------------- /docgen/theme/resources/partials/header.hbs: -------------------------------------------------------------------------------- 1 | {{{frontmatter}}} 2 | 3 | {{#ifShowBreadcrumbs}} 4 | 5 | {{{breadcrumbs}}} 6 | 7 | {{/ifShowBreadcrumbs}} 8 | -------------------------------------------------------------------------------- /docgen/theme/resources/partials/comment.hbs: -------------------------------------------------------------------------------- 1 | {{#with comment}} 2 | 3 | {{#if hasVisibleComponent}} 4 | 5 | {{{comments this}}} 6 | 7 | {{/if}} 8 | 9 | {{/with}} 10 | 11 | 12 | -------------------------------------------------------------------------------- /typedoc.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://typedoc.org/schema.json", 3 | "cname": "keywork.app", 4 | "excludeInternal": true, 5 | "exclude": ["**/test/**"], 6 | "excludeExternals": true, 7 | "name": "Keywork" 8 | } 9 | -------------------------------------------------------------------------------- /site/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // This file is not used in compilation. It is here just for a nice editor experience. 3 | "extends": "@tsconfig/docusaurus/tsconfig.json", 4 | "compilerOptions": { 5 | "baseUrl": ".", 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /site/src/components/HomepageFeatures/styles.module.css: -------------------------------------------------------------------------------- 1 | .features { 2 | display: flex; 3 | align-items: center; 4 | padding: 2rem 0; 5 | width: 100%; 6 | } 7 | 8 | .featureSvg { 9 | height: 200px; 10 | width: 200px; 11 | } 12 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: Question? 4 | url: https://github.com/sister-software/keywork/discussions/new 5 | about: Ask the community for help on our GitHub Discussions board 6 | -------------------------------------------------------------------------------- /site/src/theme/DocItem/Footer/styles.module.css: -------------------------------------------------------------------------------- 1 | .lastUpdated { 2 | margin-top: 0.2rem; 3 | font-style: italic; 4 | font-size: smaller; 5 | } 6 | 7 | @media (min-width: 997px) { 8 | .lastUpdated { 9 | text-align: right; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /site/src/theme/DocItem/Layout/styles.module.css: -------------------------------------------------------------------------------- 1 | .docItemContainer header + *, 2 | .docItemContainer article > *:first-child { 3 | margin-top: 0; 4 | } 5 | 6 | @media (min-width: 997px) { 7 | .docItemCol { 8 | max-width: 75% !important; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /.github/codecov.yml: -------------------------------------------------------------------------------- 1 | comment: true 2 | codecov: 3 | require_ci_to_pass: true 4 | coverage: 5 | status: 6 | project: 7 | default: 8 | informational: true 9 | ignore: 10 | - "examples" 11 | - "docs" 12 | - "site" 13 | - ".vscode" 14 | - "build" 15 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/doc.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Documentation improvement 3 | about: Suggest a documentation improvement 4 | title: "[Docs]: " 5 | labels: "documentation" 6 | --- 7 | 8 | ## What is your suggestion? 9 | 10 | ## How will this improve the docs? 11 | 12 | ## Are you interested in submitting a PR for this? 13 | -------------------------------------------------------------------------------- /site/src/theme/DocPage/Layout/styles.module.css: -------------------------------------------------------------------------------- 1 | .docPage { 2 | display: flex; 3 | position: relative; 4 | width: 100%; 5 | min-height: 100%; 6 | } 7 | 8 | .docsWrapper { 9 | display: flex; 10 | } 11 | 12 | 13 | @media (min-width: 768px) { 14 | .docPage { 15 | max-width: var(--docs-max-page-width); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /site/.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | /node_modules 3 | 4 | # Production 5 | /build 6 | /api 7 | 8 | # Generated files 9 | .docusaurus 10 | .cache-loader 11 | 12 | # Misc 13 | .DS_Store 14 | .env.local 15 | .env.development.local 16 | .env.test.local 17 | .env.production.local 18 | 19 | npm-debug.log* 20 | yarn-debug.log* 21 | yarn-error.log* 22 | -------------------------------------------------------------------------------- /site/src/theme/DocTagDocListPage/styles.module.css: -------------------------------------------------------------------------------- 1 | 2 | .tagEntry { 3 | padding: 0.5rem; 4 | border: 1px solid var(--ifm-color-emphasis-400); 5 | background-color: white; 6 | } 7 | 8 | .tagEntry:nth-child(odd) { 9 | background-color: var(--nirrius-yellow-light); 10 | } 11 | 12 | .tagEntry p:last-child{ 13 | margin-bottom: 0; 14 | } 15 | -------------------------------------------------------------------------------- /docgen/theme/resources/partials/member.getterSetter.hbs: -------------------------------------------------------------------------------- 1 | {{#if getSignature}} 2 | 3 | {{#with getSignature}} 4 | 5 | {{> member.signature accessor="get" showSources=true }} 6 | 7 | {{/with}} 8 | 9 | {{/if}} 10 | 11 | {{#if setSignature}} 12 | 13 | {{#with setSignature}} 14 | 15 | {{> member.signature accessor="set" showSources=true }} 16 | 17 | {{/with}} 18 | 19 | {{/if}} -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea to improve Keywork 4 | title: "[Feat]: " 5 | labels: enhancement 6 | assignees: "" 7 | --- 8 | 9 | ## What is your suggestion? 10 | 11 | ## Why do you want this feature? 12 | 13 | ## Are there any workarounds to get this functionality today? 14 | 15 | ## Are you interested in submitting a PR for this? 16 | -------------------------------------------------------------------------------- /docgen/theme/resources/partials/members.group.hbs: -------------------------------------------------------------------------------- 1 | {{#if categories}} 2 | 3 | {{#each categories}} 4 | 5 | ## {{title}} {{../title}} 6 | 7 | {{#each children}} 8 | 9 |
And this is a JSX response!
39 | Todo 1 40 | : never
28 |
29 | // See http://stackoverflow.com/questions/51465182/how-to-remove-index-signature-using-mapped-types
30 | type RemoveIndex