@things-factory/api 7.0.1-beta.0 → 7.0.1-beta.10
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/client/components/api-list.js +1 -1
- package/client/components/api-navigator.js +1 -1
- package/client/components/api-tester.js +2 -2
- package/client/pages/api-page-template.js +3 -3
- package/dist-server/index.d.ts +2 -0
- package/dist-server/routers/api-docs-router.d.ts +3 -0
- package/dist-server/routers/api-docs-router.js.map +1 -1
- package/dist-server/routers/index.d.ts +2 -0
- package/dist-server/routers/restful-api-router.d.ts +1 -0
- package/dist-server/routers/restful-api-router.js.map +1 -1
- package/dist-server/routes.d.ts +1 -0
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
|
@@ -27,7 +27,7 @@ class ApiList extends LitElement {
|
|
|
27
27
|
display: flex;
|
|
28
28
|
background-color: var(--md-sys-color-surface);
|
|
29
29
|
border-radius: var(--border-radius);
|
|
30
|
-
border: var(--border-
|
|
30
|
+
border: var(--border-dim-color);
|
|
31
31
|
box-shadow: var(--box-shadow);
|
|
32
32
|
overflow: hidden;
|
|
33
33
|
}
|
|
@@ -31,7 +31,7 @@ class ApiNavigator extends LitElement {
|
|
|
31
31
|
margin-top: -2px;
|
|
32
32
|
}
|
|
33
33
|
span {
|
|
34
|
-
border-right: var(--border-
|
|
34
|
+
border-right: var(--border-dim-color);
|
|
35
35
|
border-width: 0 1px;
|
|
36
36
|
padding: 0 var(--padding-default) 0 var(--padding-narrow);
|
|
37
37
|
opacity: 0.8;
|
|
@@ -57,7 +57,7 @@ class APITester extends LitElement {
|
|
|
57
57
|
|
|
58
58
|
input,
|
|
59
59
|
textarea {
|
|
60
|
-
border: var(--border-
|
|
60
|
+
border: var(--border-dim-color);
|
|
61
61
|
border-radius: var(--border-radius);
|
|
62
62
|
margin: var(--input-margin);
|
|
63
63
|
padding: var(--input-padding);
|
|
@@ -75,7 +75,7 @@ class APITester extends LitElement {
|
|
|
75
75
|
}
|
|
76
76
|
th,
|
|
77
77
|
td {
|
|
78
|
-
border: var(--border-
|
|
78
|
+
border: var(--border-dim-color);
|
|
79
79
|
padding: var(--padding-default);
|
|
80
80
|
}
|
|
81
81
|
th {
|
|
@@ -47,7 +47,7 @@ export class APIPageTemplate extends PageView {
|
|
|
47
47
|
[version] select {
|
|
48
48
|
margin: var(--input-margin);
|
|
49
49
|
padding: var(--padding-narrow);
|
|
50
|
-
border: var(--border-
|
|
50
|
+
border: var(--border-dim-color);
|
|
51
51
|
border-radius: var(--border-radius);
|
|
52
52
|
font: normal 16px var(--theme-font);
|
|
53
53
|
}
|
|
@@ -77,7 +77,7 @@ export class APIPageTemplate extends PageView {
|
|
|
77
77
|
|
|
78
78
|
li {
|
|
79
79
|
padding: var(--padding-default) var(--padding-wide);
|
|
80
|
-
border: var(--border-
|
|
80
|
+
border: var(--border-dim-color);
|
|
81
81
|
margin-bottom: -1px;
|
|
82
82
|
font: bold 16px var(--theme-font);
|
|
83
83
|
color: var(--md-sys-color-secondary);
|
|
@@ -87,7 +87,7 @@ export class APIPageTemplate extends PageView {
|
|
|
87
87
|
background-color: var(--md-sys-color-primary);
|
|
88
88
|
box-shadow: var(--box-shadow);
|
|
89
89
|
padding: var(--padding-default) var(--padding-wide);
|
|
90
|
-
color: var(--
|
|
90
|
+
color: var(--md-sys-color-on-primary);
|
|
91
91
|
}
|
|
92
92
|
li span {
|
|
93
93
|
display: block;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-docs-router.js","sourceRoot":"","sources":["../../server/routers/api-docs-router.ts"],"names":[],"mappings":";;;;AAAA,oEAA+B;AAC/B,qDAA4C;AAC5C,mCAA8B;AAC9B,wDAAuB;AACvB,4DAAyB;AAEzB,6CAAiD;AAEjD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAA;AAEnD,QAAA,MAAM,GAAG,WAAW,CAAA;AACpB,QAAA,aAAa,GAAG,IAAI,oBAAM,EAAE,CAAA;AAEzC,SAAgB,eAAe,CAAC,GAAG;IACjC,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtB,IAAI,IAAI,GAAG,EAAE,CAAA;IAEb,SAAS,KAAK;QACZ,IAAI;
|
|
1
|
+
{"version":3,"file":"api-docs-router.js","sourceRoot":"","sources":["../../server/routers/api-docs-router.ts"],"names":[],"mappings":";;;;AAAA,oEAA+B;AAC/B,qDAA4C;AAC5C,mCAA8B;AAC9B,wDAAuB;AACvB,4DAAyB;AAEzB,6CAAiD;AAEjD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAA;AAEnD,QAAA,MAAM,GAAG,WAAW,CAAA;AACpB,QAAA,aAAa,GAAG,IAAI,oBAAM,EAAE,CAAA;AAEzC,SAAgB,eAAe,CAAC,GAAG;IACjC,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtB,IAAI,IAAI,GAAG,EAAE,CAAA;IAEb,SAAS,KAAK;QACZ,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/B,OAAM;YACR,CAAC;YAED,IAAI,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;YAEtC,KAAK;iBACF,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC5C,OAAO,CAAC,IAAI,CAAC,EAAE;gBACd,MAAM,OAAO,GAAG,cAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;gBAEvD,IAAI,EAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;oBAClD,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;yBACf,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;yBAC3C,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC5C,MAAM,CACL,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;wBACf,MAAM,MAAM,GAAG,gBAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;wBAC3F,OAAO,IAAA,cAAK,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;oBAC9B,CAAC,oBAEI,gBAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,EAEzE,CAAA;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,OAAO,CAAC,GAAG,gBAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;gBACrF,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;IAED,KAAK,EAAE,CAAA;IAEP,OAAO,CAAC,EAAE,CAAC,gBAAuB,EAAE,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE;QAC9D,mFAAmF;QACnF,EAAE,GAAG,kBAAkB,CAAA;QACvB,KAAK,EAAE,CAAA;IACT,CAAC,CAAC,CAAA;IAEF,qBAAa,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACrD,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAA;QAEhC,OAAO,MAAM,IAAA,4BAAU,EAAC,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC/G,CAAC,CAAC,CAAA;IAEF,WAAW;IACX,qBAAa,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAChD,IAAI,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAEzC,OAAO,CAAC,QAAQ,CAAC,GAAG,cAAM,IAAI,cAAc,EAAE,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC;AA5DD,0CA4DC","sourcesContent":["import Router from 'koa-router'\nimport { koaSwagger } from 'koa2-swagger-ui'\nimport { merge } from 'lodash'\nimport path from 'path'\nimport yaml from 'yamljs'\n\nimport { appRootPath } from '@things-factory/env'\n\nconst openapiDir = path.join(appRootPath, 'dist-app', 'openapi')\n\nexport const PREFIX = '/api-docs'\nexport const apiDocsRouter = new Router()\n\nexport function initMiddlewares(app) {\n var fs = require('fs')\n\n var spec = {}\n\n function build() {\n try {\n if (!fs.existsSync(openapiDir)) {\n return\n }\n\n var files = fs.readdirSync(openapiDir)\n\n files\n .filter(filename => /\\.yaml$/.test(filename))\n .forEach(file => {\n const version = path.basename(file, path.extname(file))\n\n if (fs.existsSync(path.join(openapiDir, version))) {\n spec[version] = fs\n .readdirSync(path.join(openapiDir, version))\n .filter(filename => /\\.yaml$/.test(filename))\n .reduce(\n (merged, file) => {\n const parsed = yaml.parse(fs.readFileSync(path.join(openapiDir, version, file)).toString())\n return merge(merged, parsed)\n },\n {\n ...yaml.parse(fs.readFileSync(path.join(openapiDir, file)).toString())\n }\n )\n } else {\n spec[version] = yaml.parse(fs.readFileSync(path.join(openapiDir, file)).toString())\n }\n })\n } catch (err) {\n console.error('build error', err)\n }\n }\n\n build()\n\n process.on('client-rebuilt' as any, (app, compilerFileSystem) => {\n /* change filesystem whenever webpacking assets done. only for development mode. */\n fs = compilerFileSystem\n build()\n })\n\n apiDocsRouter.get(`/:version`, async (context, next) => {\n let { version } = context.params\n\n return await koaSwagger({ routePrefix: false, swaggerOptions: { spec: spec[version] || {} } })(context, next)\n })\n\n // fallback\n apiDocsRouter.get('(.*)', async (context, next) => {\n var defaultVersion = Object.keys(spec)[0]\n\n context.redirect(`${PREFIX}/${defaultVersion}`)\n })\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const restfulApiRouter: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restful-api-router.js","sourceRoot":"","sources":["../../server/routers/restful-api-router.ts"],"names":[],"mappings":";;;;AAAA,oEAA+B;AAE/B,yDAAmG;AACnG,iDAA0D;AAE7C,QAAA,gBAAgB,GAAG,IAAI,oBAAM,EAAE,CAAA;AAE5C,wBAAgB,CAAC,GAAG,CAAC,qCAAyB,CAAC,CAAA;AAC/C,wBAAgB,CAAC,GAAG,CAAC,wCAA4B,CAAC,CAAA;AAElD,wBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IAC3C,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAClD,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,0BAAkB,CAAC,MAAM,CAAA;IAEhD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE/C,IAAI,CAAC,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"restful-api-router.js","sourceRoot":"","sources":["../../server/routers/restful-api-router.ts"],"names":[],"mappings":";;;;AAAA,oEAA+B;AAE/B,yDAAmG;AACnG,iDAA0D;AAE7C,QAAA,gBAAgB,GAAG,IAAI,oBAAM,EAAE,CAAA;AAE5C,wBAAgB,CAAC,GAAG,CAAC,qCAAyB,CAAC,CAAA;AAC/C,wBAAgB,CAAC,GAAG,CAAC,wCAA4B,CAAC,CAAA;AAElD,wBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IAC3C,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAClD,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,0BAAkB,CAAC,MAAM,CAAA;IAEhD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;QACpB,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAA;QAChD,OAAM;IACR,CAAC;IAED,MAAM,IAAI,EAAE,CAAA;AACd,CAAC,CAAC,CAAA","sourcesContent":["import Router from 'koa-router'\n\nimport { domainAuthenticateMiddleware, jwtAuthenticateMiddleware } from '@things-factory/auth-base'\nimport { GraphqlLocalClient } from '@things-factory/shell'\n\nexport const restfulApiRouter = new Router()\n\nrestfulApiRouter.use(jwtAuthenticateMiddleware)\nrestfulApiRouter.use(domainAuthenticateMiddleware)\n\nrestfulApiRouter.use(async (context, next) => {\n context.state.version = context.path.split('/')[2]\n context.state.client = GraphqlLocalClient.client\n\n const { user, domain, version } = context.state\n\n if (!user) {\n context.status = 401\n context.body = context.t('error.user not found')\n return\n }\n\n await next()\n})\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|