@mongodb-js/oidc-http-server-pages 0.1.1 → 1.1.0

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.
@@ -1,6 +1,5 @@
1
1
  import mod from "./index.js";
2
2
 
3
3
  export default mod;
4
- export const OIDCAcceptedPage = mod.OIDCAcceptedPage;
5
- export const OIDCErrorPage = mod.OIDCErrorPage;
6
- export const OIDCNotFoundPage = mod.OIDCNotFoundPage;
4
+ export const HttpServerPage = mod.HttpServerPage;
5
+ export const getStaticPage = mod.getStaticPage;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { PageTemplates, HttpServerPageProps } from './types';
3
+ type Component = React.FunctionComponent<Partial<Record<string, string>>> & {
4
+ name: string;
5
+ };
6
+ export declare function generateTemplates<TPageParameters extends Record<string, Record<string, string>> = HttpServerPageProps, TPage extends string & keyof TPageParameters = string & keyof TPageParameters>(pages: Record<TPage, {
7
+ Component: Component;
8
+ parameters: string[];
9
+ }>): PageTemplates<TPageParameters>;
10
+ export declare function generateCompressedTemplates<TPageParameters extends Record<string, Record<string, string>> = HttpServerPageProps, TPage extends string & keyof TPageParameters = string & keyof TPageParameters>(pages: Record<TPage, {
11
+ Component: Component;
12
+ parameters: string[];
13
+ }>): void;
14
+ export {};
15
+ //# sourceMappingURL=create-templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-templates.d.ts","sourceRoot":"","sources":["../src/create-templates.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,aAAa,EAAa,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAoB7E,KAAK,SAAS,GAAG,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG;IAC1E,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAyBF,wBAAgB,iBAAiB,CAC/B,eAAe,SAAS,MAAM,CAC5B,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CACvB,GAAG,mBAAmB,EACvB,KAAK,SAAS,MAAM,GAAG,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,eAAe,EAE7E,KAAK,EAAE,MAAM,CACX,KAAK,EACL;IACE,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CACF,GACA,aAAa,CAAC,eAAe,CAAC,CAWhC;AAgCD,wBAAgB,2BAA2B,CACzC,eAAe,SAAS,MAAM,CAC5B,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CACvB,GAAG,mBAAmB,EACvB,KAAK,SAAS,MAAM,GAAG,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,eAAe,EAE7E,KAAK,EAAE,MAAM,CACX,KAAK,EACL;IACE,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CACF,GACA,IAAI,CAMN"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateCompressedTemplates = exports.generateTemplates = void 0;
7
+ const server_1 = require("react-dom/server");
8
+ const emotion_1 = require("@leafygreen-ui/emotion");
9
+ const pages_source_1 = require("./pages-source");
10
+ const react_1 = __importDefault(require("react"));
11
+ const zlib_1 = require("zlib");
12
+ const fs_1 = require("fs");
13
+ const path_1 = __importDefault(require("path"));
14
+ const types_1 = require("./types");
15
+ function* allSubsets(array) {
16
+ if (array.length === 0) {
17
+ yield [];
18
+ return;
19
+ }
20
+ const first = array[0];
21
+ for (const slicedSubset of allSubsets(array.slice(1))) {
22
+ yield [first, ...slicedSubset];
23
+ yield slicedSubset;
24
+ }
25
+ }
26
+ function placeholder(prop) {
27
+ return `{{prop:${prop}}}`;
28
+ }
29
+ function getPageTemplates({ Component, parameters, }) {
30
+ const templates = [];
31
+ for (const paramsSubset of allSubsets(parameters)) {
32
+ const propsObject = Object.fromEntries(paramsSubset.map((prop) => [prop, placeholder(prop)]));
33
+ const markup = (0, emotion_1.renderStylesToString)((0, server_1.renderToStaticMarkup)(react_1.default.createElement(Component, propsObject)));
34
+ templates.push({
35
+ parameters: propsObject,
36
+ html: markup,
37
+ });
38
+ }
39
+ return templates;
40
+ }
41
+ function generateTemplates(pages) {
42
+ const templates = {};
43
+ for (const pageName of Object.keys(pages)) {
44
+ const { Component, parameters } = pages[pageName];
45
+ const PageTemplates = getPageTemplates({
46
+ Component,
47
+ parameters,
48
+ });
49
+ templates[pageName] = PageTemplates;
50
+ }
51
+ return templates;
52
+ }
53
+ exports.generateTemplates = generateTemplates;
54
+ function generateGzip(data) {
55
+ const buffer = (0, zlib_1.gzipSync)(data);
56
+ (0, fs_1.writeFileSync)(path_1.default.join(__dirname, 'templates.gz'), buffer, 'binary');
57
+ }
58
+ function generateJS(data) {
59
+ const buffer = (0, zlib_1.brotliCompressSync)(data, {
60
+ params: {
61
+ [zlib_1.constants.BROTLI_PARAM_MODE]: zlib_1.constants.BROTLI_MODE_TEXT,
62
+ [zlib_1.constants.BROTLI_PARAM_QUALITY]: zlib_1.constants.BROTLI_MAX_QUALITY,
63
+ },
64
+ });
65
+ (0, fs_1.writeFileSync)(path_1.default.join(__dirname, 'get-templates.js'), `
66
+ const { brotliDecompressSync } = require('zlib');
67
+ function getTemplates() {
68
+ const buffer = brotliDecompressSync(
69
+ Buffer.from(
70
+ '${buffer.toString('base64')}',
71
+ 'base64'
72
+ )
73
+ );
74
+ return JSON.parse(buffer.toString());
75
+ }
76
+ module.exports = getTemplates;
77
+ `);
78
+ }
79
+ function generateCompressedTemplates(pages) {
80
+ const templates = JSON.stringify(generateTemplates(pages));
81
+ generateGzip(templates);
82
+ generateJS(templates);
83
+ }
84
+ exports.generateCompressedTemplates = generateCompressedTemplates;
85
+ if (require.main === module) {
86
+ generateCompressedTemplates({
87
+ [types_1.HttpServerPage.OIDCErrorPage]: {
88
+ Component: pages_source_1.OIDCErrorPage,
89
+ parameters: [
90
+ 'error',
91
+ 'errorDescription',
92
+ 'errorURI',
93
+ 'productDocsLink',
94
+ 'productName',
95
+ ],
96
+ },
97
+ [types_1.HttpServerPage.OIDCAcceptedPage]: {
98
+ Component: pages_source_1.OIDCAcceptedPage,
99
+ parameters: ['productDocsLink', 'productName'],
100
+ },
101
+ [types_1.HttpServerPage.OIDCNotFoundPage]: {
102
+ Component: pages_source_1.OIDCNotFoundPage,
103
+ parameters: ['productDocsLink', 'productName'],
104
+ },
105
+ });
106
+ }
107
+ //# sourceMappingURL=create-templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-templates.js","sourceRoot":"","sources":["../src/create-templates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { PageTemplates, HttpServerPageProps } from './types';
2
+ export declare function getStaticPage<TPageParameters extends Record<string, Record<string, string>> = HttpServerPageProps, TPage extends string & keyof TPageParameters = string & keyof TPageParameters>(page: TPage, parameters: TPageParameters[TPage], templates?: PageTemplates<TPageParameters>): string;
3
+ //# sourceMappingURL=get-static-page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-static-page.d.ts","sourceRoot":"","sources":["../src/get-static-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAoC7E,wBAAgB,aAAa,CAC3B,eAAe,SAAS,MAAM,CAC5B,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CACvB,GAAG,mBAAmB,EACvB,KAAK,SAAS,MAAM,GAAG,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,eAAe,EAE7E,IAAI,EAAE,KAAK,EACX,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,EAClC,SAAS,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GACzC,MAAM,CAwBR"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getStaticPage = void 0;
7
+ const get_templates_js_1 = __importDefault(require("./get-templates.js"));
8
+ function findTemplate(templates, parameterKeys) {
9
+ const parametersJoined = parameterKeys.sort().join('-');
10
+ for (const template of templates) {
11
+ const templateParametersJoined = Object.keys(template.parameters)
12
+ .sort()
13
+ .join('-');
14
+ if (parametersJoined === templateParametersJoined)
15
+ return template;
16
+ }
17
+ }
18
+ function replacePlaceholders(template, parameters) {
19
+ let { html } = template;
20
+ for (const [key, placeholder] of Object.entries(template.parameters)) {
21
+ html = html.replaceAll(placeholder, escapeHTML(parameters[key]));
22
+ }
23
+ return html;
24
+ }
25
+ function escapeHTML(str) {
26
+ return str
27
+ .replace(/&/g, '&amp;')
28
+ .replace(/</g, '&lt;')
29
+ .replace(/>/g, '&gt;')
30
+ .replace(/"/g, '&quot;')
31
+ .replace(/'/g, '&#039;');
32
+ }
33
+ function getStaticPage(page, parameters, templates) {
34
+ if (!templates) {
35
+ templates = (0, get_templates_js_1.default)();
36
+ }
37
+ const pageTemplates = templates && templates[page];
38
+ if (!pageTemplates) {
39
+ throw new Error(`No template found for ${page}`);
40
+ }
41
+ const nonEmptyParameters = Object.keys(parameters).filter((key) => typeof parameters[key] !== 'undefined' && parameters !== null);
42
+ const template = findTemplate(pageTemplates, nonEmptyParameters);
43
+ if (!template) {
44
+ throw new Error(`No template found for ${page}; parameters: ${Object.keys(parameters).join(',')}. The parameters might be incorrect.`);
45
+ }
46
+ const html = replacePlaceholders(template, parameters);
47
+ return html;
48
+ }
49
+ exports.getStaticPage = getStaticPage;
50
+ //# sourceMappingURL=get-static-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-static-page.js","sourceRoot":"","sources":["../src/get-static-page.ts"],"names":[],"mappings":";;;;;;AACA,0EAA8C;AAE9C,SAAS,YAAY,CACnB,SAAsB,EACtB,aAAuB;IAEvB,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,wBAAwB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;aAC9D,IAAI,EAAE;aACN,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,IAAI,gBAAgB,KAAK,wBAAwB;YAAE,OAAO,QAAQ,CAAC;IACrE,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAA2C,EAC3C,UAAkC;IAElC,IAAI,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;IACxB,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACrE,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG;SACP,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED,SAAgB,aAAa,CAO3B,IAAW,EACX,UAAkC,EAClC,SAA0C;IAE1C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,IAAA,0BAAY,GAAoC,CAAC;IAC/D,CAAC;IAED,MAAM,aAAa,GAAG,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CACvD,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,WAAW,IAAI,UAAU,KAAK,IAAI,CACvE,CAAC;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,yBAAyB,IAAI,iBAAiB,MAAM,CAAC,IAAI,CACvD,UAAU,CACX,CAAC,IAAI,CAAC,GAAG,CAAC,sCAAsC,CAClD,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC;AACd,CAAC;AAlCD,sCAkCC"}
@@ -0,0 +1,13 @@
1
+
2
+ const { brotliDecompressSync } = require('zlib');
3
+ function getTemplates() {
4
+ const buffer = brotliDecompressSync(
5
+ Buffer.from(
6
+ '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',
7
+ 'base64'
8
+ )
9
+ );
10
+ return JSON.parse(buffer.toString());
11
+ }
12
+ module.exports = getTemplates;
13
+
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export { OIDCPageBaseProps, OIDCAcceptedPage, OIDCNotFoundPage, OIDCErrorPage, } from './static-pages';
1
+ export { getStaticPage } from './get-static-page';
2
+ export { HttpServerPage } from './types';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,GACd,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OIDCErrorPage = exports.OIDCNotFoundPage = exports.OIDCAcceptedPage = void 0;
4
- var static_pages_1 = require("./static-pages");
5
- Object.defineProperty(exports, "OIDCAcceptedPage", { enumerable: true, get: function () { return static_pages_1.OIDCAcceptedPage; } });
6
- Object.defineProperty(exports, "OIDCNotFoundPage", { enumerable: true, get: function () { return static_pages_1.OIDCNotFoundPage; } });
7
- Object.defineProperty(exports, "OIDCErrorPage", { enumerable: true, get: function () { return static_pages_1.OIDCErrorPage; } });
3
+ exports.HttpServerPage = exports.getStaticPage = void 0;
4
+ var get_static_page_1 = require("./get-static-page");
5
+ Object.defineProperty(exports, "getStaticPage", { enumerable: true, get: function () { return get_static_page_1.getStaticPage; } });
6
+ var types_1 = require("./types");
7
+ Object.defineProperty(exports, "HttpServerPage", { enumerable: true, get: function () { return types_1.HttpServerPage; } });
8
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAHtB,gHAAA,gBAAgB,OAAA;AAChB,gHAAA,gBAAgB,OAAA;AAChB,6GAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAAzC,gHAAA,aAAa,OAAA;AACtB,iCAAyC;AAAhC,uGAAA,cAAc,OAAA"}
@@ -1,13 +1,16 @@
1
1
  /// <reference types="react" />
2
- export interface OIDCPageBaseProps {
2
+ export type OIDCPageBaseProps = {
3
3
  productDocsLink?: string;
4
4
  productName?: string;
5
- }
6
- export declare function OIDCAcceptedPage(baseProps: OIDCPageBaseProps): JSX.Element;
7
- export declare function OIDCNotFoundPage(baseProps: OIDCPageBaseProps): JSX.Element;
8
- export declare function OIDCErrorPage({ error, errorDescription, errorURI, ...baseProps }: {
5
+ };
6
+ export type OIDCAcceptedPageProps = OIDCPageBaseProps;
7
+ export declare function OIDCAcceptedPage(props: OIDCAcceptedPageProps): JSX.Element;
8
+ export type OIDCNotFoundPageProps = OIDCPageBaseProps;
9
+ export declare function OIDCNotFoundPage(props: OIDCNotFoundPageProps): JSX.Element;
10
+ export type OIDCErrorPageProps = {
9
11
  error?: string;
10
12
  errorDescription?: string;
11
13
  errorURI?: string;
12
- } & OIDCPageBaseProps): JSX.Element;
14
+ } & OIDCPageBaseProps;
15
+ export declare function OIDCErrorPage({ error, errorDescription, errorURI, ...baseProps }: OIDCErrorPageProps): JSX.Element;
13
16
  //# sourceMappingURL=pages-source.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pages-source.d.ts","sourceRoot":"","sources":["../src/pages-source.tsx"],"names":[],"mappings":";AA0DA,MAAM,WAAW,iBAAiB;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA0CD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CAa1E;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CAS1E;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,gBAAgB,EAChB,QAAQ,EACR,GAAG,SAAS,EACb,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,iBAAiB,GAAG,GAAG,CAAC,OAAO,CA+BlC"}
1
+ {"version":3,"file":"pages-source.d.ts","sourceRoot":"","sources":["../src/pages-source.tsx"],"names":[],"mappings":";AA0DA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AA0CF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;AAEtD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAa1E;AAED,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;AAEtD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAS1E;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,iBAAiB,CAAC;AAEtB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,gBAAgB,EAChB,QAAQ,EACR,GAAG,SAAS,EACb,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CA+BlC"}
@@ -58,20 +58,20 @@ function PageContainer({ title, children, }) {
58
58
  react_1.default.createElement(compass_components_1.MongoDBLogo, null),
59
59
  react_1.default.createElement(compass_components_1.KeylineCard, { className: mainContentStyles }, children))))));
60
60
  }
61
- function OIDCAcceptedPage(baseProps) {
61
+ function OIDCAcceptedPage(props) {
62
62
  return (react_1.default.createElement(PageContainer, { title: "Login Successful" },
63
63
  react_1.default.createElement(compass_components_1.Icon, { glyph: "CheckmarkWithCircle", size: 40, className: (0, compass_components_1.cx)(successIconStyles) }),
64
64
  react_1.default.createElement(compass_components_1.H3, null, "Login Successful"),
65
65
  react_1.default.createElement(compass_components_1.Description, null, "You can close this window now."),
66
- react_1.default.createElement(DocsLink, { ...baseProps })));
66
+ react_1.default.createElement(DocsLink, { ...props })));
67
67
  }
68
68
  exports.OIDCAcceptedPage = OIDCAcceptedPage;
69
- function OIDCNotFoundPage(baseProps) {
69
+ function OIDCNotFoundPage(props) {
70
70
  return (react_1.default.createElement(PageContainer, { title: "Page Not Found" },
71
71
  react_1.default.createElement(compass_components_1.Icon, { glyph: "XWithCircle", size: 40, className: (0, compass_components_1.cx)(failureIconStyles) }),
72
72
  react_1.default.createElement(compass_components_1.H3, null, "Page Not Found"),
73
73
  react_1.default.createElement(compass_components_1.Description, null, "This page is not available."),
74
- react_1.default.createElement(DocsLink, { ...baseProps })));
74
+ react_1.default.createElement(DocsLink, { ...props })));
75
75
  }
76
76
  exports.OIDCNotFoundPage = OIDCNotFoundPage;
77
77
  function OIDCErrorPage({ error, errorDescription, errorURI, ...baseProps }) {
@@ -1 +1 @@
1
- {"version":3,"file":"pages-source.js","sourceRoot":"","sources":["../src/pages-source.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pages-source.js","sourceRoot":"","sources":["../src/pages-source.tsx"],"names":[],"mappings":"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"}
Binary file
@@ -0,0 +1,19 @@
1
+ import type { OIDCAcceptedPageProps, OIDCErrorPageProps, OIDCNotFoundPageProps } from './pages-source';
2
+ export interface ITemplate<TParameters extends Record<string, string> = Record<string, string>> {
3
+ parameters: TParameters;
4
+ html: string;
5
+ }
6
+ export declare enum HttpServerPage {
7
+ OIDCErrorPage = "OIDCErrorPage",
8
+ OIDCAcceptedPage = "OIDCAcceptedPage",
9
+ OIDCNotFoundPage = "OIDCNotFoundPage"
10
+ }
11
+ export type HttpServerPageProps = {
12
+ [HttpServerPage.OIDCErrorPage]: OIDCErrorPageProps;
13
+ [HttpServerPage.OIDCAcceptedPage]: OIDCAcceptedPageProps;
14
+ [HttpServerPage.OIDCNotFoundPage]: OIDCNotFoundPageProps;
15
+ };
16
+ export type PageTemplates<TPageProps extends Record<string, Record<string, string>> = HttpServerPageProps> = {
17
+ [Key in keyof TPageProps]: ITemplate<TPageProps[Key]>[];
18
+ };
19
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AACxB,MAAM,WAAW,SAAS,CACxB,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAEnE,UAAU,EAAE,WAAW,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,oBAAY,cAAc;IACxB,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;CACtC;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnD,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzD,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,aAAa,CACvB,UAAU,SAAS,MAAM,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CACvB,GAAG,mBAAmB,IACrB;KACD,GAAG,IAAI,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE;CACxD,CAAC"}
package/dist/types.js ADDED
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HttpServerPage = void 0;
4
+ var HttpServerPage;
5
+ (function (HttpServerPage) {
6
+ HttpServerPage["OIDCErrorPage"] = "OIDCErrorPage";
7
+ HttpServerPage["OIDCAcceptedPage"] = "OIDCAcceptedPage";
8
+ HttpServerPage["OIDCNotFoundPage"] = "OIDCNotFoundPage";
9
+ })(HttpServerPage || (exports.HttpServerPage = HttpServerPage = {}));
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAYA,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,iDAA+B,CAAA;IAC/B,uDAAqC,CAAA;IACrC,uDAAqC,CAAA;AACvC,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB"}
package/package.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "email": "compass@mongodb.com"
14
14
  },
15
15
  "homepage": "https://github.com/mongodb-js/devtools-shared",
16
- "version": "0.1.1",
16
+ "version": "1.1.0",
17
17
  "repository": {
18
18
  "type": "git",
19
19
  "url": "https://github.com/mongodb-js/devtools-shared.git"
@@ -31,7 +31,7 @@
31
31
  "scripts": {
32
32
  "bootstrap": "npm run compile",
33
33
  "prepublishOnly": "npm run compile",
34
- "compile": "tsc -p tsconfig.json && node dist/create-static-pages.js > dist/static-pages.js && gen-esm-wrapper . ./dist/.esm-wrapper.mjs",
34
+ "compile": "tsc -p tsconfig.json && node dist/create-templates.js && gen-esm-wrapper . ./dist/.esm-wrapper.mjs",
35
35
  "typecheck": "tsc --noEmit",
36
36
  "eslint": "eslint",
37
37
  "prettier": "prettier",
@@ -39,7 +39,7 @@
39
39
  "depcheck": "depcheck",
40
40
  "check": "npm run typecheck && npm run lint && npm run depcheck",
41
41
  "check-ci": "npm run check",
42
- "test": "mocha",
42
+ "test": "npm run compile && mocha",
43
43
  "test-cov": "nyc -x \"**/*.spec.*\" --reporter=lcov --reporter=text --reporter=html npm run test",
44
44
  "test-watch": "npm run test -- --watch",
45
45
  "test-ci": "npm run test-cov",
@@ -54,7 +54,6 @@
54
54
  "@mongodb-js/tsconfig-devtools": "^1.0.1",
55
55
  "@types/chai": "^4.2.21",
56
56
  "@types/mocha": "^9.1.1",
57
- "@types/node": "^17.0.35",
58
57
  "@types/react": "^17.0.53",
59
58
  "@types/react-dom": "^17.0.19",
60
59
  "@types/sinon-chai": "^3.2.5",
@@ -67,9 +66,7 @@
67
66
  "prettier": "^2.3.2",
68
67
  "react": "^17.0.2",
69
68
  "react-dom": "^17.0.2",
70
- "sinon-chai": "^3.7.0",
71
- "ts-sinon": "^2.0.1",
72
69
  "typescript": "^5.0.4"
73
70
  },
74
- "gitHead": "e271d197323382dcb90062f67bc73e37cd63ab1a"
71
+ "gitHead": "9fd64d5abfad9f4968eae8dab03a5e060d969460"
75
72
  }
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- export declare function generateStaticPagesModule<PropNames extends string>(components: [
3
- React.FunctionComponent<Partial<Record<PropNames, string>>> & {
4
- name: string;
5
- },
6
- string[]
7
- ][]): string;
8
- //# sourceMappingURL=create-static-pages.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-static-pages.d.ts","sourceRoot":"","sources":["../src/create-static-pages.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,MAAM,OAAO,CAAC;AAqE1B,wBAAgB,yBAAyB,CAAC,SAAS,SAAS,MAAM,EAChE,UAAU,EAAE;IACV,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG;QAC5D,IAAI,EAAE,MAAM,CAAC;KACd;IACD,MAAM,EAAE;CACT,EAAE,GACF,MAAM,CAkCR"}
@@ -1,98 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateStaticPagesModule = void 0;
7
- const server_1 = require("react-dom/server");
8
- const emotion_1 = require("@leafygreen-ui/emotion");
9
- const pages_source_1 = require("./pages-source");
10
- const react_1 = __importDefault(require("react"));
11
- const crypto_1 = require("crypto");
12
- const zlib_1 = require("zlib");
13
- function* allSubsets(array) {
14
- if (array.length === 0) {
15
- yield [];
16
- return;
17
- }
18
- const first = array[0];
19
- for (const slicedSubset of allSubsets(array.slice(1))) {
20
- yield [first, ...slicedSubset];
21
- yield slicedSubset;
22
- }
23
- }
24
- function placeholder(prop) {
25
- return `{{prop:${prop}}}`;
26
- }
27
- const S = JSON.stringify;
28
- function generateStaticPage(Component, props, markupTable) {
29
- let result = `module.exports[${S(Component.name)}] = function(props) {
30
- const actualProps = JSON.stringify(
31
- Object.keys(props)
32
- .filter(prop => ${S(props)}.includes(prop) && props[prop] != null).sort());`;
33
- for (const availableProps of allSubsets(props)) {
34
- const propsObject = {};
35
- const replacers = [];
36
- for (const prop of availableProps) {
37
- propsObject[prop] = placeholder(prop);
38
- replacers.push(`.replaceAll(${S(placeholder(prop))}, escapeHTML(props[${S(prop)}]))`);
39
- }
40
- const markup = (0, emotion_1.renderStylesToString)((0, server_1.renderToStaticMarkup)(react_1.default.createElement(Component, propsObject)));
41
- const markupHash = (0, crypto_1.createHash)('sha256').update(markup).digest('hex');
42
- markupTable[markupHash] = markup;
43
- result += `if (actualProps === ${S(S(availableProps.sort()))}) {
44
- return (getMarkup(${S(markupHash)})${replacers.join('')});
45
- }`;
46
- }
47
- result += '}\n';
48
- return result;
49
- }
50
- function generateStaticPagesModule(components) {
51
- let result = `
52
- 'use strict';
53
- function escapeHTML(str) {
54
- return str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;");
55
- }
56
- `;
57
- const markupTable = {};
58
- for (const component of components) {
59
- result += generateStaticPage(...component, markupTable);
60
- }
61
- const compressedMarkupTable = (0, zlib_1.brotliCompressSync)(S(markupTable), {
62
- params: {
63
- [zlib_1.constants.BROTLI_PARAM_MODE]: zlib_1.constants.BROTLI_MODE_TEXT,
64
- [zlib_1.constants.BROTLI_PARAM_QUALITY]: zlib_1.constants.BROTLI_MAX_QUALITY,
65
- },
66
- });
67
- result += `
68
- const markupTableSrc = ${S(compressedMarkupTable.toString('base64'))};
69
- let markupTable;
70
- function getMarkup(hash) {
71
- if (markupTable === undefined) {
72
- markupTable = JSON.parse(
73
- require('zlib').brotliDecompressSync(
74
- Buffer.from(markupTableSrc, 'base64')));
75
- }
76
- return markupTable[hash];
77
- }
78
- `;
79
- return result;
80
- }
81
- exports.generateStaticPagesModule = generateStaticPagesModule;
82
- if (require.main === module) {
83
- console.log(generateStaticPagesModule([
84
- [
85
- pages_source_1.OIDCErrorPage,
86
- [
87
- 'error',
88
- 'errorDescription',
89
- 'errorURI',
90
- 'productDocsLink',
91
- 'productName',
92
- ],
93
- ],
94
- [pages_source_1.OIDCAcceptedPage, ['productDocsLink', 'productName']],
95
- [pages_source_1.OIDCNotFoundPage, ['productDocsLink', 'productName']],
96
- ]));
97
- }
98
- //# sourceMappingURL=create-static-pages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-static-pages.js","sourceRoot":"","sources":["../src/create-static-pages.ts"],"names":[],"mappings":"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"}
@@ -1,109 +0,0 @@
1
-
2
- 'use strict';
3
- function escapeHTML(str) {
4
- return str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;");
5
- }
6
- module.exports["OIDCErrorPage"] = function(props) {
7
- const actualProps = JSON.stringify(
8
- Object.keys(props)
9
- .filter(prop => ["error","errorDescription","errorURI","productDocsLink","productName"].includes(prop) && props[prop] != null).sort());if (actualProps === "[\"error\",\"errorDescription\",\"errorURI\",\"productDocsLink\",\"productName\"]") {
10
- return (getMarkup("853d25d0ddd651040fcf44cf1775186e28382d8ae7989afe2f10806b25ba6926").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
11
- }if (actualProps === "[\"errorDescription\",\"errorURI\",\"productDocsLink\",\"productName\"]") {
12
- return (getMarkup("accc8aa72cf02620e2e77a28babba4b72360a9c7154f46bae3bc50ccf738d46b").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
13
- }if (actualProps === "[\"error\",\"errorURI\",\"productDocsLink\",\"productName\"]") {
14
- return (getMarkup("851a1ef85aba71d0ee994604218ec02873220b069ea5502a8dfa5560306353fa").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
15
- }if (actualProps === "[\"errorURI\",\"productDocsLink\",\"productName\"]") {
16
- return (getMarkup("2bb1c746fc6544291c9b74d73d2112ff984985dd8f7766571fd0e592f9b0782f").replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
17
- }if (actualProps === "[\"error\",\"errorDescription\",\"productDocsLink\",\"productName\"]") {
18
- return (getMarkup("8bcae0cd8fe739ee35bf2ef0d506579ed6c13842e7a84a39a841544b1fdd65b0").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
19
- }if (actualProps === "[\"errorDescription\",\"productDocsLink\",\"productName\"]") {
20
- return (getMarkup("df769e50c3d7e715dd799e7a81d738c7afab087452fd1e91118349c34e6f69fd").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
21
- }if (actualProps === "[\"error\",\"productDocsLink\",\"productName\"]") {
22
- return (getMarkup("e35f7a6c85cfe0f2fe02a3460aec035432336b00fad53ce9203dd46cb942cbf5").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
23
- }if (actualProps === "[\"productDocsLink\",\"productName\"]") {
24
- return (getMarkup("32bbf1db8dbc5d1d536671b99d5c873af45bf7f335362ca852b62e45c8f9f6a2").replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
25
- }if (actualProps === "[\"error\",\"errorDescription\",\"errorURI\",\"productName\"]") {
26
- return (getMarkup("c0ab26e3f6dc277b558cb481ee4b4af0f4c4dea420d7df505b46c6f189836a4c").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
27
- }if (actualProps === "[\"errorDescription\",\"errorURI\",\"productName\"]") {
28
- return (getMarkup("13f444802e323294319d91a2267b4fedcdc282fead3a033b15ac045843bf74fb").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
29
- }if (actualProps === "[\"error\",\"errorURI\",\"productName\"]") {
30
- return (getMarkup("ad2d207951f1968bc6d6eaf1ba0429939552794134b9ea83312f7171c1f8a5fc").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
31
- }if (actualProps === "[\"errorURI\",\"productName\"]") {
32
- return (getMarkup("2295d0bf2d1cb287aaf82dcc8654076d4496986af26db9de03b58517c4e1c42d").replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
33
- }if (actualProps === "[\"error\",\"errorDescription\",\"productName\"]") {
34
- return (getMarkup("8eb3a5e944ef9359d539f7fc898f6e49d31506ead434bb628330d58c22f792e2").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
35
- }if (actualProps === "[\"errorDescription\",\"productName\"]") {
36
- return (getMarkup("400c6a0e441f0e37d93c61f1e0d232014cd3ac39e6878b6698387f9bf7e0556b").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
37
- }if (actualProps === "[\"error\",\"productName\"]") {
38
- return (getMarkup("e0d75bda2d68507f9aa4cd66037ca036242045d6a4489d9d5b96ade66f7e1ac5").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
39
- }if (actualProps === "[\"productName\"]") {
40
- return (getMarkup("56de66032933cf10019b71cdb18a21f4b96dc22133f236df4d79f4de626bf0c3").replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
41
- }if (actualProps === "[\"error\",\"errorDescription\",\"errorURI\",\"productDocsLink\"]") {
42
- return (getMarkup("91ed915a60d97fdc024fb4b1866ccf04bc1855b12533c7126ca677d19b20238d").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
43
- }if (actualProps === "[\"errorDescription\",\"errorURI\",\"productDocsLink\"]") {
44
- return (getMarkup("3a60759ec3256c4baff28352c5be3f974aecdad11af5192e4442b14161961c00").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
45
- }if (actualProps === "[\"error\",\"errorURI\",\"productDocsLink\"]") {
46
- return (getMarkup("dcea397f9ae3acc8d2c1c6f2682c2d11a1686157d1fb08c42c63c584e5ceb6d2").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
47
- }if (actualProps === "[\"errorURI\",\"productDocsLink\"]") {
48
- return (getMarkup("45c9e146d561f1d273f941d651adfcd26695b528488d81702c697666e1eddb4d").replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
49
- }if (actualProps === "[\"error\",\"errorDescription\",\"productDocsLink\"]") {
50
- return (getMarkup("f337ac8cad243626ebf91f948fef561b3b72230c97eee222ebf087c23f7512c4").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
51
- }if (actualProps === "[\"errorDescription\",\"productDocsLink\"]") {
52
- return (getMarkup("13cf3519b0c1a359ae406de0df7072a09e5435fed90b9ac007051b76984435f7").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
53
- }if (actualProps === "[\"error\",\"productDocsLink\"]") {
54
- return (getMarkup("c6aef4f562d6fa5dd9d0fcc64cc335f4f1ffef24b8b93dfed42d1333738a7a17").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
55
- }if (actualProps === "[\"productDocsLink\"]") {
56
- return (getMarkup("fd3f764a1981be3c860b3607bccbe04a86560a9a9621dbb75f560a43d501c4d1").replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
57
- }if (actualProps === "[\"error\",\"errorDescription\",\"errorURI\"]") {
58
- return (getMarkup("4842f11ef33f06865be87fd6f8c9f411fb3531849946ffbd2e3305de1fdbe787").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])));
59
- }if (actualProps === "[\"errorDescription\",\"errorURI\"]") {
60
- return (getMarkup("faa96d73854f8b00bb5cbdfb2b1389676e4fa4a81302991441c21129217d4149").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])));
61
- }if (actualProps === "[\"error\",\"errorURI\"]") {
62
- return (getMarkup("a46bb8186d3f44ba21517e7a5b478b627bcb864d1fdaa4c8cad4c08ae8690402").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])));
63
- }if (actualProps === "[\"errorURI\"]") {
64
- return (getMarkup("da231d1d90963d1b11b5c8e16f7334c62eb14b32d9bff1e3b7043444bfea92b1").replaceAll("{{prop:errorURI}}", escapeHTML(props["errorURI"])));
65
- }if (actualProps === "[\"error\",\"errorDescription\"]") {
66
- return (getMarkup("11c30012555905075f1d3990397dc037a6bbb03e3749f0065d4cec0a737231f8").replaceAll("{{prop:error}}", escapeHTML(props["error"])).replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])));
67
- }if (actualProps === "[\"errorDescription\"]") {
68
- return (getMarkup("44e80176293d43396b231096a37e41a07914041520b4d18e43508d2098dd9249").replaceAll("{{prop:errorDescription}}", escapeHTML(props["errorDescription"])));
69
- }if (actualProps === "[\"error\"]") {
70
- return (getMarkup("ca461dc1289e00ecdbd0556850bca3a7a58278a2df7ebbd9e34905f0bc986ea9").replaceAll("{{prop:error}}", escapeHTML(props["error"])));
71
- }if (actualProps === "[]") {
72
- return (getMarkup("49701ec8c44d1d2a925c13386ed2d2029a049c62081842db64588463da5d7b1c"));
73
- }}
74
- module.exports["OIDCAcceptedPage"] = function(props) {
75
- const actualProps = JSON.stringify(
76
- Object.keys(props)
77
- .filter(prop => ["productDocsLink","productName"].includes(prop) && props[prop] != null).sort());if (actualProps === "[\"productDocsLink\",\"productName\"]") {
78
- return (getMarkup("fec3c292e772e918e47b3c69ca55c0e09475026666a5af118c4186a8c69cf8ee").replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
79
- }if (actualProps === "[\"productName\"]") {
80
- return (getMarkup("aa9afa3464bf6d3ffae0689be1d02fddc92ba7a1ca84ccc65ccb43ba2efd43ac").replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
81
- }if (actualProps === "[\"productDocsLink\"]") {
82
- return (getMarkup("0be1f4c82fed7fc3818ef553c6c066c195593f22306af9505384c1b6f420c65d").replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
83
- }if (actualProps === "[]") {
84
- return (getMarkup("aa9afa3464bf6d3ffae0689be1d02fddc92ba7a1ca84ccc65ccb43ba2efd43ac"));
85
- }}
86
- module.exports["OIDCNotFoundPage"] = function(props) {
87
- const actualProps = JSON.stringify(
88
- Object.keys(props)
89
- .filter(prop => ["productDocsLink","productName"].includes(prop) && props[prop] != null).sort());if (actualProps === "[\"productDocsLink\",\"productName\"]") {
90
- return (getMarkup("89e4074162aa971506d9415427ef42cd6f6dc1aadb7641ba2c4a926e76d50376").replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])).replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
91
- }if (actualProps === "[\"productName\"]") {
92
- return (getMarkup("8c75e5fa658120508f7dd445d220fe9050fb1ed67771d0c45f9f247f96fedb48").replaceAll("{{prop:productName}}", escapeHTML(props["productName"])));
93
- }if (actualProps === "[\"productDocsLink\"]") {
94
- return (getMarkup("79332cf1417450a9b9c57feb28de1f7792213eeb4c4da3cfc8e5ed1b37041d48").replaceAll("{{prop:productDocsLink}}", escapeHTML(props["productDocsLink"])));
95
- }if (actualProps === "[]") {
96
- return (getMarkup("8c75e5fa658120508f7dd445d220fe9050fb1ed67771d0c45f9f247f96fedb48"));
97
- }}
98
-
99
- const markupTableSrc = "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";
100
- let markupTable;
101
- function getMarkup(hash) {
102
- if (markupTable === undefined) {
103
- markupTable = JSON.parse(
104
- require('zlib').brotliDecompressSync(
105
- Buffer.from(markupTableSrc, 'base64')));
106
- }
107
- return markupTable[hash];
108
- }
109
-