@helsenorge/designsystem-react 10.4.0 → 10.4.1
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/CHANGELOG.md +1403 -818
- package/package.json +1 -1
- package/utils/language.d.ts +1 -1
- package/utils/language.js +24 -0
- package/utils/language.js.map +1 -0
package/package.json
CHANGED
package/utils/language.d.ts
CHANGED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useContext, useMemo } from "react";
|
|
3
|
+
const LanguageContext = createContext(void 0);
|
|
4
|
+
const useLanguage = (fallbackLanguage) => {
|
|
5
|
+
const context = useContext(LanguageContext);
|
|
6
|
+
if (!context) {
|
|
7
|
+
return { language: fallbackLanguage };
|
|
8
|
+
}
|
|
9
|
+
return context;
|
|
10
|
+
};
|
|
11
|
+
const LanguageProvider = ({ children, language }) => {
|
|
12
|
+
const value = useMemo(
|
|
13
|
+
() => ({
|
|
14
|
+
language
|
|
15
|
+
}),
|
|
16
|
+
[language]
|
|
17
|
+
);
|
|
18
|
+
return /* @__PURE__ */ jsx(LanguageContext.Provider, { value, children });
|
|
19
|
+
};
|
|
20
|
+
export {
|
|
21
|
+
LanguageProvider as default,
|
|
22
|
+
useLanguage
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=language.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"language.js","sources":["../../src/utils/language.tsx"],"sourcesContent":["import React, { createContext, useContext, useMemo } from 'react';\n\nexport interface LanguageContextType<T extends string = string> {\n language: T;\n}\n\nconst LanguageContext = createContext<LanguageContextType | undefined>(undefined);\n\n/**\n * Hent nåværende språk fra context\n * @param fallbackLanguage Språk som brukes som fallback dersom hooken brukes utenfor contexten\n * @returns LanguageContext\n */\nexport const useLanguage = <T extends string>(fallbackLanguage: T): LanguageContextType<T> => {\n const context = useContext(LanguageContext as unknown as React.Context<LanguageContextType<T>>);\n\n if (!context) {\n return { language: fallbackLanguage };\n }\n\n return context;\n};\n\ninterface LanguageProviderProps<T extends string> {\n children: React.ReactNode;\n language: T;\n}\n\nconst LanguageProvider = <T extends string>({ children, language }: LanguageProviderProps<T>): React.JSX.Element => {\n const value = useMemo<LanguageContextType<T>>(\n () => ({\n language,\n }),\n [language]\n );\n\n return <LanguageContext.Provider value={value}>{children}</LanguageContext.Provider>;\n};\n\nexport default LanguageProvider;\n"],"names":[],"mappings":";;AAMA,MAAM,kBAAkB,cAA+C,MAAS;AAOnE,MAAA,cAAc,CAAmB,qBAAgD;AACtF,QAAA,UAAU,WAAW,eAAmE;AAE9F,MAAI,CAAC,SAAS;AACL,WAAA,EAAE,UAAU,iBAAiB;AAAA,EAAA;AAG/B,SAAA;AACT;AAOA,MAAM,mBAAmB,CAAmB,EAAE,UAAU,eAA4D;AAClH,QAAM,QAAQ;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,IAAA;AAAA,IAEF,CAAC,QAAQ;AAAA,EACX;AAEA,SAAQ,oBAAA,gBAAgB,UAAhB,EAAyB,OAAe,SAAS,CAAA;AAC3D;"}
|