@rivm-loculus-tools/common-frontend 0.5.0 → 0.6.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.
- package/dist/_chunks/EmotionCacheService.js +8 -7
- package/dist/_chunks/EmotionCacheService.js.map +1 -1
- package/dist/components/app/App/App.d.ts +2 -5
- package/dist/components/app/App/index.js +31 -28
- package/dist/components/app/App/index.js.map +1 -1
- package/dist/constants/config.constants.d.ts +0 -6
- package/dist/constants/config.constants.js +2 -2
- package/dist/constants/config.constants.js.map +1 -1
- package/dist/utils/DependencyContainerUtil/DependencyContainerUtil.d.ts +1 -1
- package/dist/utils/DependencyContainerUtil/index.js +8 -11
- package/dist/utils/DependencyContainerUtil/index.js.map +1 -1
- package/dist/utils/UrlUtil/index.js +4 -4
- package/dist/utils/UrlUtil/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { CONFIG_TOKEN as e
|
|
2
|
-
import { t
|
|
3
|
-
import { inject as
|
|
1
|
+
import { CONFIG_TOKEN as e } from "../constants/config.constants.js";
|
|
2
|
+
import { t } from "./decorate.js";
|
|
3
|
+
import { inject as n, singleton as r } from "tsyringe";
|
|
4
|
+
import { WindowService as i } from "@gen-epix/ui-core/classes/services/WindowService";
|
|
4
5
|
import a from "@emotion/cache";
|
|
5
6
|
// \0@oxc-project+runtime@0.155.0/helpers/esm/decorateParam.js
|
|
6
7
|
function o(e, t) {
|
|
@@ -21,10 +22,10 @@ var s = class {
|
|
|
21
22
|
});
|
|
22
23
|
}
|
|
23
24
|
};
|
|
24
|
-
s =
|
|
25
|
-
|
|
26
|
-
o(0,
|
|
27
|
-
o(1,
|
|
25
|
+
s = t([
|
|
26
|
+
r(),
|
|
27
|
+
o(0, n(e)),
|
|
28
|
+
o(1, n(i))
|
|
28
29
|
], s);
|
|
29
30
|
export { s as t };
|
|
30
31
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmotionCacheService.js","names":["_decorate","_decorateParam","
|
|
1
|
+
{"version":3,"file":"EmotionCacheService.js","names":["_decorate","_decorateParam","createCache","__decorateParam","target","key","paramIndex","EmotionCacheService","windowService","config","__decorate","singleton","inject","CONFIG_TOKEN","WindowService"],"sources":["../../src/classes/services/EmotionCacheService/EmotionCacheService.ts"],"sourcesContent":["import type { EmotionCache } from '@emotion/cache';\nimport createCache from '@emotion/cache';\nimport {\n inject,\n singleton,\n} from 'tsyringe';\nimport { WindowService } from '@gen-epix/ui-core/classes/services/WindowService';\n\nimport { CONFIG_TOKEN } from '../../../constants/config.constants';\nimport type { ConfigBase } from '../../../models/config.models';\n\n\n@singleton()\nexport class EmotionCacheService {\n public readonly emotionCache: EmotionCache;\n\n public constructor(\n @inject(CONFIG_TOKEN) config: ConfigBase,\n @inject(WindowService) windowService: WindowService,\n ) {\n this.emotionCache = createCache({\n container: windowService.document.head,\n key: 'loculus-tools',\n nonce: config.nonce,\n prepend: !!config.nonce,\n stylisPlugins: [],\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;AAaO,IAAMO,IAAN,MAA0B;CAC/B;CAEA,YACE,GACA,GACA;EACA,KAAK,eAAeL,EAAY;GAC9B,WAAWM,EAAc,SAAS;GAClC,KAAK;GACL,OAAOC,EAAO;GACd,SAAS,CAAC,CAACA,EAAO;GAClB,eAAe,CAAC;EAClB,CAAC;CACH;AACF;;CAhBCE,EAAU;CAKNV,EAAA,GAAAW,EAAOC,CAAY,CAAA;CACnBZ,EAAA,GAAAW,EAAOE,CAAa,CAAA"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { DependencyContainer } from 'tsyringe';
|
|
2
1
|
import { PropsWithChildren } from 'react';
|
|
3
|
-
export type AppProps = PropsWithChildren
|
|
4
|
-
|
|
5
|
-
}>;
|
|
6
|
-
export declare const App: ({ children, container }: AppProps) => import('react').JSX.Element;
|
|
2
|
+
export type AppProps = PropsWithChildren;
|
|
3
|
+
export declare const App: ({ children }: AppProps) => import('react').JSX.Element;
|
|
@@ -3,14 +3,16 @@ import { PageCommonContextProvider as t } from "../../../context/pageCommonConte
|
|
|
3
3
|
import { ErrorPage as n } from "../../../pages/ErrorPage/index.js";
|
|
4
4
|
import { I18nWrapper as r } from "../../ui/I18nWrapper/index.js";
|
|
5
5
|
import { t as i } from "../../../_chunks/EmotionCacheService.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
6
|
+
import { container as a } from "tsyringe";
|
|
7
|
+
import { CssBaseline as o, ThemeProvider as s } from "@mui/material";
|
|
8
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
9
|
+
import { Component as u, createContext as d, createElement as f, useMemo as p } from "react";
|
|
10
|
+
import { CacheProvider as m } from "@emotion/react";
|
|
11
|
+
import { setupUiCore as h } from "@gen-epix/ui-core/setup/setup";
|
|
10
12
|
// ../../../node_modules/.pnpm/react-error-boundary@6.1.6_@types+react@19.3.0_react@19.3.1/node_modules/react-error-boundary/dist/react-error-boundary.js
|
|
11
|
-
var
|
|
12
|
-
function
|
|
13
|
-
let i =
|
|
13
|
+
var g = d(null);
|
|
14
|
+
function _({ children: e, didCatch: t, error: n, resetErrorBoundary: r }) {
|
|
15
|
+
let i = p(() => ({
|
|
14
16
|
didCatch: t,
|
|
15
17
|
error: n,
|
|
16
18
|
resetErrorBoundary: r
|
|
@@ -19,14 +21,14 @@ function h({ children: e, didCatch: t, error: n, resetErrorBoundary: r }) {
|
|
|
19
21
|
n,
|
|
20
22
|
r
|
|
21
23
|
]);
|
|
22
|
-
return
|
|
24
|
+
return f(g.Provider, { value: i }, e);
|
|
23
25
|
}
|
|
24
|
-
var
|
|
26
|
+
var v = {
|
|
25
27
|
didCatch: !1,
|
|
26
28
|
error: null
|
|
27
|
-
},
|
|
29
|
+
}, y = class extends u {
|
|
28
30
|
constructor(e) {
|
|
29
|
-
super(e), this.resetErrorBoundary = this.resetErrorBoundary.bind(this), this.state =
|
|
31
|
+
super(e), this.resetErrorBoundary = this.resetErrorBoundary.bind(this), this.state = v;
|
|
30
32
|
}
|
|
31
33
|
static getDerivedStateFromError(e) {
|
|
32
34
|
return {
|
|
@@ -39,18 +41,18 @@ var g = {
|
|
|
39
41
|
t && (this.props.onReset?.({
|
|
40
42
|
args: e,
|
|
41
43
|
reason: "imperative-api"
|
|
42
|
-
}), this.setState(
|
|
44
|
+
}), this.setState(v));
|
|
43
45
|
}
|
|
44
46
|
componentDidCatch(e, t) {
|
|
45
47
|
this.props.onError?.(e, t);
|
|
46
48
|
}
|
|
47
49
|
componentDidUpdate(e, t) {
|
|
48
50
|
let { didCatch: n } = this.state, { resetKeys: r } = this.props;
|
|
49
|
-
n && t.didCatch &&
|
|
51
|
+
n && t.didCatch && b(e.resetKeys, r) && (this.props.onReset?.({
|
|
50
52
|
next: r,
|
|
51
53
|
prev: e.resetKeys,
|
|
52
54
|
reason: "keys"
|
|
53
|
-
}), this.setState(
|
|
55
|
+
}), this.setState(v));
|
|
54
56
|
}
|
|
55
57
|
render() {
|
|
56
58
|
let { children: e, fallbackRender: t, FallbackComponent: n, fallback: r } = this.props, { didCatch: i, error: a } = this.state, o = e;
|
|
@@ -60,39 +62,40 @@ var g = {
|
|
|
60
62
|
resetErrorBoundary: this.resetErrorBoundary
|
|
61
63
|
};
|
|
62
64
|
if (typeof t == "function") o = t(e);
|
|
63
|
-
else if (n) o =
|
|
65
|
+
else if (n) o = f(n, e);
|
|
64
66
|
else if ("fallback" in this.props) o = r;
|
|
65
67
|
else throw a;
|
|
66
68
|
}
|
|
67
|
-
return
|
|
69
|
+
return f(_, {
|
|
68
70
|
didCatch: i,
|
|
69
71
|
error: a,
|
|
70
72
|
resetErrorBoundary: this.resetErrorBoundary
|
|
71
73
|
}, o);
|
|
72
74
|
}
|
|
73
75
|
};
|
|
74
|
-
function
|
|
76
|
+
function b(e = [], t = []) {
|
|
75
77
|
return e.length !== t.length || e.some((e, n) => !Object.is(e, t[n]));
|
|
76
78
|
}
|
|
77
79
|
// src/components/app/App/App.tsx
|
|
78
|
-
var
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
80
|
+
var x = ({ children: u }) => {
|
|
81
|
+
h();
|
|
82
|
+
let d = e.resolveConfig(), { pageConfig: f } = d, p = d.getTouchIconUrl?.();
|
|
83
|
+
p && document.querySelector("link[rel=\"icon\"]")?.setAttribute("href", p);
|
|
84
|
+
let g = a.resolve(i).emotionCache;
|
|
85
|
+
return /* @__PURE__ */ c(m, {
|
|
86
|
+
value: g,
|
|
87
|
+
children: /* @__PURE__ */ l(s, {
|
|
85
88
|
theme: d.theme,
|
|
86
|
-
children: [/* @__PURE__ */
|
|
89
|
+
children: [/* @__PURE__ */ c(o, {}), /* @__PURE__ */ c(y, {
|
|
87
90
|
FallbackComponent: n,
|
|
88
|
-
children: /* @__PURE__ */
|
|
91
|
+
children: /* @__PURE__ */ c(r, { children: /* @__PURE__ */ c(t, {
|
|
89
92
|
...f,
|
|
90
|
-
children:
|
|
93
|
+
children: u
|
|
91
94
|
}) })
|
|
92
95
|
})]
|
|
93
96
|
})
|
|
94
97
|
});
|
|
95
98
|
};
|
|
96
|
-
export {
|
|
99
|
+
export { x as App };
|
|
97
100
|
|
|
98
101
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["l","h","i","y","ErrorBoundary","EmotionCacheService","f","createContext","m","r","e","t","o","n","useMemo","createElement","d","C","Component","g","s","c","u","App","config","DependencyContainerUtil","
|
|
1
|
+
{"version":3,"file":"index.js","names":["l","h","i","y","ErrorBoundary","EmotionCacheService","f","createContext","m","r","e","t","o","n","useMemo","createElement","d","C","Component","g","s","c","u","App","config","DependencyContainerUtil","touchIconUrl","emotionCache","container","CacheProvider","ThemeProvider","CssBaseline","ErrorPage","I18nWrapper","PageCommonContextProvider","pageConfig"],"sources":["../../../../../../../node_modules/.pnpm/react-error-boundary@6.1.6_@types+react@19.3.0_react@19.3.1/node_modules/react-error-boundary/dist/react-error-boundary.js","../../../../src/components/app/App/App.tsx"],"sourcesContent":["\"use client\";\nimport { createContext as l, useMemo as h, createElement as i, Component as y, useContext as p, useState as E, forwardRef as B } from \"react\";\nconst f = l(null);\nfunction m({\n children: r,\n didCatch: e,\n error: t,\n resetErrorBoundary: o\n}) {\n const n = h(\n () => ({ didCatch: e, error: t, resetErrorBoundary: o }),\n [e, t, o]\n );\n return i(f.Provider, { value: n }, r);\n}\nconst d = {\n didCatch: !1,\n error: null\n};\nclass C extends y {\n constructor(e) {\n super(e), this.resetErrorBoundary = this.resetErrorBoundary.bind(this), this.state = d;\n }\n static getDerivedStateFromError(e) {\n return { didCatch: !0, error: e };\n }\n resetErrorBoundary(...e) {\n const { didCatch: t } = this.state;\n t && (this.props.onReset?.({\n args: e,\n reason: \"imperative-api\"\n }), this.setState(d));\n }\n componentDidCatch(e, t) {\n this.props.onError?.(e, t);\n }\n componentDidUpdate(e, t) {\n const { didCatch: o } = this.state, { resetKeys: n } = this.props;\n o && t.didCatch && g(e.resetKeys, n) && (this.props.onReset?.({\n next: n,\n prev: e.resetKeys,\n reason: \"keys\"\n }), this.setState(d));\n }\n render() {\n const { children: e, fallbackRender: t, FallbackComponent: o, fallback: n } = this.props, { didCatch: s, error: a } = this.state;\n let c = e;\n if (s) {\n const u = {\n error: a,\n resetErrorBoundary: this.resetErrorBoundary\n };\n if (typeof t == \"function\")\n c = t(u);\n else if (o)\n c = i(o, u);\n else if (\"fallback\" in this.props)\n c = n;\n else\n throw a;\n }\n return i(\n m,\n {\n didCatch: s,\n error: a,\n resetErrorBoundary: this.resetErrorBoundary\n },\n c\n );\n }\n}\nfunction g(r = [], e = []) {\n return r.length !== e.length || r.some((t, o) => !Object.is(t, e[o]));\n}\nfunction x(r) {\n return r !== null && typeof r == \"object\" && \"didCatch\" in r && typeof r.didCatch == \"boolean\" && \"error\" in r && \"resetErrorBoundary\" in r && typeof r.resetErrorBoundary == \"function\";\n}\nfunction b(r) {\n if (!x(r))\n throw new Error(\"ErrorBoundaryContext not found\");\n}\nfunction S() {\n const r = p(f);\n b(r);\n const { error: e, resetErrorBoundary: t } = r, [o, n] = E({\n error: null,\n hasError: !1\n }), s = h(\n () => ({\n error: e,\n resetBoundary: () => {\n t(), n({ error: null, hasError: !1 });\n },\n showBoundary: (a) => n({\n error: a,\n hasError: !0\n })\n }),\n [e, t]\n );\n if (o.hasError)\n throw o.error;\n return s;\n}\nfunction w(r) {\n switch (typeof r) {\n case \"object\": {\n if (r !== null && \"message\" in r && typeof r.message == \"string\")\n return r.message;\n break;\n }\n case \"string\":\n return r;\n }\n}\nfunction R(r, e) {\n const t = B(\n (n, s) => i(\n C,\n e,\n i(r, { ...n, ref: s })\n )\n ), o = r.displayName || r.name || \"Unknown\";\n return t.displayName = `withErrorBoundary(${o})`, t;\n}\nexport {\n C as ErrorBoundary,\n f as ErrorBoundaryContext,\n w as getErrorMessage,\n S as useErrorBoundary,\n R as withErrorBoundary\n};\n//# sourceMappingURL=react-error-boundary.js.map\n","import { container } from 'tsyringe';\nimport { CacheProvider } from '@emotion/react';\nimport { setupUiCore } from '@gen-epix/ui-core/setup/setup';\nimport {\n CssBaseline,\n ThemeProvider,\n} from '@mui/material';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport type { PropsWithChildren } from 'react';\n\nimport { EmotionCacheService } from '../../../classes/services/EmotionCacheService';\nimport type { ConfigBase } from '../../../models/config.models';\nimport { DependencyContainerUtil } from '../../../utils/DependencyContainerUtil';\nimport { ErrorPage } from '../../../pages/ErrorPage';\nimport { I18nWrapper } from '../../ui/I18nWrapper';\nimport { PageCommonContextProvider } from '../../../context/pageCommonContext';\n\nexport type AppProps = PropsWithChildren;\n\nexport const App = ({ children }: AppProps) => {\n setupUiCore();\n const config = DependencyContainerUtil.resolveConfig<ConfigBase>();\n const { pageConfig } = config;\n const touchIconUrl = config.getTouchIconUrl?.();\n if (touchIconUrl) {\n document.querySelector('link[rel=\"icon\"]')?.setAttribute('href', touchIconUrl);\n }\n\n const emotionCache = container.resolve(EmotionCacheService).emotionCache;\n\n return (\n <CacheProvider value={emotionCache}>\n <ThemeProvider theme={config.theme}>\n <CssBaseline />\n <ErrorBoundary FallbackComponent={ErrorPage}>\n <I18nWrapper>\n <PageCommonContextProvider {...pageConfig}>\n {children}\n </PageCommonContextProvider>\n </I18nWrapper>\n </ErrorBoundary>\n </ThemeProvider>\n </CacheProvider>\n );\n};\n"],"ignoreList":[0],"mappings":";;;;;;;;;;;;AAEA,IAAMM,IAAIN,EAAE,IAAI;AAChB,SAASQ,EAAE,EACT,UAAUC,GACV,UAAUC,GACV,OAAOC,GACP,oBAAoBC,KACnB;CACD,IAAMC,IAAIZ,SACD;EAAE,UAAUS;EAAG,OAAOC;EAAG,oBAAoBC;CAAE,IACtD;EAACF;EAAGC;EAAGC;CAAC,CACV;CACA,OAAOV,EAAEI,EAAE,UAAU,EAAE,OAAOO,EAAE,GAAGJ,CAAC;AACtC;AACA,IAAMO,IAAI;CACR,UAAU,CAAC;CACX,OAAO;AACT,GACMC,IAAN,cAAgBd,EAAE;CAChB,YAAY,GAAG;EACb,MAAM,CAAC,GAAG,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,IAAI,GAAG,KAAK,QAAQa;CACvF;CACA,OAAO,yBAAyB,GAAG;EACjC,OAAO;GAAE,UAAU,CAAC;GAAG,OAAO;EAAE;CAClC;CACA,mBAAmB,GAAG,GAAG;EACvB,IAAM,EAAE,UAAU,MAAM,KAAK;EAC7B,MAAM,KAAK,MAAM,UAAU;GACzB,MAAM;GACN,QAAQ;EACV,CAAC,GAAG,KAAK,SAASA,CAAC;CACrB;CACA,kBAAkB,GAAG,GAAG;EACtB,KAAK,MAAM,UAAU,GAAG,CAAC;CAC3B;CACA,mBAAmB,GAAG,GAAG;EACvB,IAAM,EAAE,UAAUJ,MAAM,KAAK,OAAO,EAAE,WAAWC,MAAM,KAAK;EAC5D,KAAK,EAAE,YAAYM,EAAE,EAAE,WAAWN,CAAC,MAAM,KAAK,MAAM,UAAU;GAC5D,MAAMA;GACN,MAAM,EAAE;GACR,QAAQ;EACV,CAAC,GAAG,KAAK,SAASG,CAAC;CACrB;CACA,SAAS;EACP,IAAM,EAAE,UAAU,GAAG,gBAAgB,GAAG,mBAAmBJ,GAAG,UAAUC,MAAM,KAAK,OAAO,EAAE,UAAUO,GAAG,OAAO,MAAM,KAAK,OACvHC,IAAI;EACR,IAAID,GAAG;GACL,IAAME,IAAI;IACR,OAAO;IACP,oBAAoB,KAAK;GAC3B;GACA,IAAI,OAAO,KAAK,YACd,IAAI,EAAEA,CAAC;QACJ,IAAIV,GACP,IAAIV,EAAEU,GAAGU,CAAC;QACP,IAAI,cAAc,KAAK,OAC1B,IAAIT;QAEJ,MAAM;EACV;EACA,OAAOX,EACLM,GACA;GACE,UAAUY;GACV,OAAO;GACP,oBAAoB,KAAK;EAC3B,GACAC,CACF;CACF;AACF;AACA,SAASF,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG;CACzB,OAAOV,EAAE,WAAWC,EAAE,UAAUD,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO,GAAGE,GAAGD,EAAEE,EAAE,CAAC;AACtE;;ACvDA,IAAaW,KAAO,EAAE,kBAAyB;CAC7C,EAAY;CACZ,IAAMC,IAASC,EAAwB,cAA0B,GAC3D,EAAE,kBAAeD,GACjBE,IAAeF,EAAO,kBAAkB;CAC9C,AAAIE,KACF,SAAS,cAAc,oBAAkB,CAAC,EAAE,aAAa,QAAQA,CAAY;CAG/E,IAAMC,IAAeC,EAAU,QAAQvB,CAAmB,CAAC,CAAC;CAE5D,OACE,kBAACwB,GAAD;EAAe,OAAOF;EACpB,UAAA,kBAACG,GAAD;GAAe,OAAON,EAAO;GAA7B,UAAA,CACE,kBAACO,GAAD,CAAc,CAAA,GACd,kBAAC3B,GAAD;IAAe,mBAAmB4B;IAChC,UAAA,kBAACC,GAAD,EAAA,UACE,kBAACC,GAAD;KAA2B,GAAIC;KAC5B;IACwB,CAAA,EAChB,CAAA;GACA,CAAA,CACF;;CACF,CAAA;AAEnB"}
|
|
@@ -1,9 +1,3 @@
|
|
|
1
1
|
import { InjectionToken } from 'tsyringe';
|
|
2
|
-
import { WindowService } from '@gen-epix/ui-core/classes/services/WindowService';
|
|
3
|
-
import { DevicePixelRatioService } from '@gen-epix/ui-core/classes/services/DevicePixelRatioService';
|
|
4
|
-
import { KeyboardShortcutService } from '@gen-epix/ui-core/classes/services/KeyboardShortcutService';
|
|
5
2
|
import { ConfigBase } from '../models/config.models';
|
|
6
3
|
export declare const CONFIG_TOKEN: InjectionToken<ConfigBase>;
|
|
7
|
-
export declare const WINDOW_SERVICE_TOKEN: InjectionToken<WindowService>;
|
|
8
|
-
export declare const DEVICE_PIXEL_RATIO_SERVICE_TOKEN: InjectionToken<DevicePixelRatioService>;
|
|
9
|
-
export declare const KEYBOARD_SHORTCUT_SERVICE_TOKEN: InjectionToken<KeyboardShortcutService>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/constants/config.constants.ts
|
|
2
|
-
var e = Symbol("CONFIG_TOKEN")
|
|
3
|
-
export { e as CONFIG_TOKEN
|
|
2
|
+
var e = Symbol("CONFIG_TOKEN");
|
|
3
|
+
export { e as CONFIG_TOKEN };
|
|
4
4
|
|
|
5
5
|
//# sourceMappingURL=config.constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.constants.js","names":["CONFIG_TOKEN"
|
|
1
|
+
{"version":3,"file":"config.constants.js","names":["CONFIG_TOKEN"],"sources":["../../src/constants/config.constants.ts"],"sourcesContent":["import type { InjectionToken } from 'tsyringe';\n\nimport type { ConfigBase } from '../models/config.models';\n\nexport const CONFIG_TOKEN: InjectionToken<ConfigBase> = Symbol('CONFIG_TOKEN');\n"],"mappings":";AAIA,IAAaA,IAA2C,OAAO,cAAc"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DependencyContainer } from 'tsyringe';
|
|
2
2
|
import { ConfigBase } from '../../models/config.models';
|
|
3
3
|
export declare class DependencyContainerUtil {
|
|
4
|
-
static
|
|
4
|
+
static registerConfig<TConfig extends ConfigBase>(config: TConfig): void;
|
|
5
5
|
static resolveConfig<TConfig extends ConfigBase = ConfigBase>(dependencyContainer?: DependencyContainer): TConfig;
|
|
6
6
|
}
|
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
import { CONFIG_TOKEN as e
|
|
2
|
-
import { container as
|
|
3
|
-
import { WindowService as a } from "@gen-epix/ui-core/classes/services/WindowService";
|
|
4
|
-
import { DevicePixelRatioService as o } from "@gen-epix/ui-core/classes/services/DevicePixelRatioService";
|
|
5
|
-
import { KeyboardShortcutService as s } from "@gen-epix/ui-core/classes/services/KeyboardShortcutService";
|
|
1
|
+
import { CONFIG_TOKEN as e } from "../../constants/config.constants.js";
|
|
2
|
+
import { container as t } from "tsyringe";
|
|
6
3
|
// src/utils/DependencyContainerUtil/DependencyContainerUtil.ts
|
|
7
|
-
var
|
|
8
|
-
static
|
|
9
|
-
|
|
4
|
+
var n = class {
|
|
5
|
+
static registerConfig(n) {
|
|
6
|
+
t.register(e, { useValue: n });
|
|
10
7
|
}
|
|
11
|
-
static resolveConfig(
|
|
12
|
-
return
|
|
8
|
+
static resolveConfig(n = t) {
|
|
9
|
+
return n.resolve(e);
|
|
13
10
|
}
|
|
14
11
|
};
|
|
15
|
-
export {
|
|
12
|
+
export { n as DependencyContainerUtil };
|
|
16
13
|
|
|
17
14
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["DependencyContainerUtil","
|
|
1
|
+
{"version":3,"file":"index.js","names":["DependencyContainerUtil","CONFIG_TOKEN","config","container","dependencyContainer"],"sources":["../../../src/utils/DependencyContainerUtil/DependencyContainerUtil.ts"],"sourcesContent":["import { container } from 'tsyringe';\nimport type { DependencyContainer } from 'tsyringe';\n\nimport type { ConfigBase } from '../../models/config.models';\nimport { CONFIG_TOKEN } from '../../constants/config.constants';\n\nexport class DependencyContainerUtil {\n public static registerConfig<TConfig extends ConfigBase>(config: TConfig): void {\n container.register(CONFIG_TOKEN, { useValue: config });\n }\n\n public static resolveConfig<TConfig extends ConfigBase = ConfigBase>(dependencyContainer: DependencyContainer = container): TConfig {\n return dependencyContainer.resolve(CONFIG_TOKEN) as TConfig;\n }\n}\n"],"mappings":";;;AAMA,IAAaA,IAAb,MAAqC;CACnC,OAAc,eAA2C,GAAuB;EAC9E,EAAU,SAASC,GAAc,EAAE,UAAUC,EAAO,CAAC;CACvD;CAEA,OAAc,cAAuD,IAA2CC,GAAoB;EAClI,OAAOC,EAAoB,QAAQH,CAAY;CACjD;AACF"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { container as e } from "tsyringe";
|
|
2
|
+
import { WindowService as t } from "@gen-epix/ui-core/classes/services/WindowService";
|
|
3
3
|
// src/utils/UrlUtil/UrlUtil.ts
|
|
4
4
|
var n = class {
|
|
5
5
|
static clearSearchParams() {
|
|
6
|
-
let n = new URL(
|
|
7
|
-
n.search = "",
|
|
6
|
+
let n = new URL(e.resolve(t).window.location.href);
|
|
7
|
+
n.search = "", e.resolve(t).window.history.replaceState(null, "", n.toString());
|
|
8
8
|
}
|
|
9
9
|
static fastaLabelFromUrl(e) {
|
|
10
10
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["UrlUtil","url","container","
|
|
1
|
+
{"version":3,"file":"index.js","names":["UrlUtil","url","container","WindowService","urlObject","segment"],"sources":["../../../src/utils/UrlUtil/UrlUtil.ts"],"sourcesContent":["import { container } from 'tsyringe';\nimport { WindowService } from '@gen-epix/ui-core/classes/services/WindowService';\n\n\nexport class UrlUtil {\n public static clearSearchParams(): void {\n const url = new URL(container.resolve(WindowService).window.location.href);\n url.search = '';\n container.resolve(WindowService).window.history.replaceState(null, '', url.toString());\n }\n\n public static fastaLabelFromUrl(url: string): string {\n try {\n const urlObject = new URL(url);\n const segment = urlObject.pathname.split('/').filter(Boolean).pop();\n if (segment) {\n return decodeURIComponent(segment);\n }\n return `${urlObject.hostname}.fasta`;\n } catch {\n return 'remote-alignment.fasta';\n }\n }\n\n public static validateFastaUrl(url: string): string {\n let urlObject: URL;\n try {\n urlObject = new URL(url.trim());\n } catch {\n throw new Error('Enter a valid FASTA URL.');\n }\n if (urlObject.protocol !== 'http:' && urlObject.protocol !== 'https:') {\n throw new Error('FASTA URLs must use HTTP or HTTPS.');\n }\n return urlObject.href;\n }\n}\n"],"mappings":";;;AAIA,IAAaA,IAAb,MAAqB;CACnB,OAAc,oBAA0B;EACtC,IAAMC,IAAM,IAAI,IAAIC,EAAU,QAAQC,CAAa,CAAC,CAAC,OAAO,SAAS,IAAI;EAEzE,AADA,EAAI,SAAS,IACbD,EAAU,QAAQC,CAAa,CAAC,CAAC,OAAO,QAAQ,aAAa,MAAM,IAAIF,EAAI,SAAS,CAAC;CACvF;CAEA,OAAc,kBAAkB,GAAqB;EACnD,IAAI;GACF,IAAMG,IAAY,IAAI,IAAIH,CAAG,GACvBI,IAAUD,EAAU,SAAS,MAAM,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,IAAI;GAIlE,OAHIC,IACK,mBAAmBA,CAAO,IAE5B,GAAGD,EAAU,SAAS;EAC/B,QAAQ;GACN,OAAO;EACT;CACF;CAEA,OAAc,iBAAiB,GAAqB;EAClD,IAAIA;EACJ,IAAI;GACF,IAAY,IAAI,IAAIH,EAAI,KAAK,CAAC;EAChC,QAAQ;GACN,MAAU,MAAM,0BAA0B;EAC5C;EACA,IAAIG,EAAU,aAAa,WAAWA,EAAU,aAAa,UAC3D,MAAU,MAAM,oCAAoC;EAEtD,OAAOA,EAAU;CACnB;AACF"}
|