@koine/next 2.0.0-beta.2 → 2.0.0-beta.200
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/12/AnalyticsGoogle.cjs.js +20 -0
- package/12/AnalyticsGoogle.d.ts +1 -1
- package/12/AnalyticsGoogle.esm.js +15 -0
- package/12/DisableErrorOverlay.cjs.js +11 -0
- package/12/DisableErrorOverlay.d.ts +1 -1
- package/12/DisableErrorOverlay.esm.js +6 -0
- package/12/Seo.d.ts +11 -3
- package/12/SeoDefaults.d.ts +7 -2
- package/12/seoBuildTags.d.ts +1 -2
- package/12/types.d.ts +5 -0
- package/12.cjs.default.js +1 -0
- package/12.cjs.js +9 -0
- package/12.cjs.mjs +2 -0
- package/12.d.ts +3 -0
- package/12.esm.js +2 -0
- package/README.md +0 -12
- package/ThemeContext.cjs.default.js +1 -0
- package/ThemeContext.cjs.js +10 -0
- package/ThemeContext.cjs.mjs +2 -0
- package/{12/ThemeContext.d.ts → ThemeContext.d.ts} +0 -1
- package/ThemeContext.esm.js +5 -0
- package/ThemeProvider.cjs.default.js +1 -0
- package/ThemeProvider.cjs.js +14 -0
- package/ThemeProvider.cjs.mjs +2 -0
- package/{12/ThemeProvider.d.ts → ThemeProvider.d.ts} +0 -1
- package/ThemeProvider.esm.js +9 -0
- package/config.cjs.default.js +1 -0
- package/config.cjs.js +8 -0
- package/config.cjs.mjs +2 -0
- package/config.d.ts +33 -0
- package/config.esm.js +6 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +13 -0
- package/index.cjs.mjs +2 -0
- package/index.d.ts +3 -1
- package/index.esm.js +4 -0
- package/load.cjs.default.js +1 -0
- package/load.cjs.js +8 -0
- package/load.cjs.mjs +2 -0
- package/load.d.ts +0 -0
- package/load.esm.js +3 -0
- package/package.json +61 -91
- package/typings.d.ts +39 -50
- package/useTheme.cjs.default.js +1 -0
- package/useTheme.cjs.js +11 -0
- package/useTheme.cjs.mjs +2 -0
- package/{12/useTheme.d.ts → useTheme.d.ts} +1 -1
- package/useTheme.esm.js +6 -0
- package/vite.config.d.ts +2 -0
- package/12/AnalyticsGoogle.js +0 -39
- package/12/AnalyticsGoogle.mjs +0 -34
- package/12/DisableErrorOverlay.js +0 -18
- package/12/DisableErrorOverlay.mjs +0 -13
- package/12/DynamicNamespaces.d.ts +0 -13
- package/12/DynamicNamespaces.js +0 -13
- package/12/DynamicNamespaces.mjs +0 -9
- package/12/Favicon.d.ts +0 -4
- package/12/Favicon.js +0 -10
- package/12/Favicon.mjs +0 -6
- package/12/Link.d.ts +0 -10
- package/12/Link.js +0 -15
- package/12/Link.mjs +0 -12
- package/12/NextProgress.d.ts +0 -25
- package/12/NextProgress.js +0 -46
- package/12/NextProgress.mjs +0 -42
- package/12/Seo.js +0 -34
- package/12/Seo.mjs +0 -29
- package/12/SeoDefaults.js +0 -17
- package/12/SeoDefaults.mjs +0 -12
- package/12/T.d.ts +0 -16
- package/12/T.js +0 -17
- package/12/T.mjs +0 -13
- package/12/ThemeContext.js +0 -10
- package/12/ThemeContext.mjs +0 -7
- package/12/ThemeProvider.js +0 -239
- package/12/ThemeProvider.mjs +0 -235
- package/12/TransText.d.ts +0 -3
- package/12/TransText.js +0 -8
- package/12/TransText.mjs +0 -4
- package/12/app/AppHead.d.ts +0 -3
- package/12/app/AppHead.js +0 -11
- package/12/app/AppHead.mjs +0 -6
- package/12/app/AppMain.d.ts +0 -35
- package/12/app/AppMain.js +0 -2
- package/12/app/AppMain.mjs +0 -1
- package/12/app/css/AppMain.d.ts +0 -9
- package/12/app/css/AppMain.js +0 -18
- package/12/app/css/AppMain.mjs +0 -14
- package/12/app/css/AppTheme.d.ts +0 -11
- package/12/app/css/AppTheme.js +0 -18
- package/12/app/css/AppTheme.mjs +0 -14
- package/12/app/css/auth/index.d.ts +0 -11
- package/12/app/css/auth/index.js +0 -17
- package/12/app/css/auth/index.mjs +0 -13
- package/12/app/css/auth/package.json +0 -6
- package/12/app/css/index.d.ts +0 -54
- package/12/app/css/index.js +0 -61
- package/12/app/css/index.mjs +0 -57
- package/12/app/css/package.json +0 -6
- package/12/app/index.d.ts +0 -2
- package/12/app/index.js +0 -5
- package/12/app/index.mjs +0 -2
- package/12/app/package.json +0 -6
- package/12/app/sc/AppMain.d.ts +0 -11
- package/12/app/sc/AppMain.js +0 -29
- package/12/app/sc/AppMain.mjs +0 -25
- package/12/app/sc/AppTheme.d.ts +0 -14
- package/12/app/sc/AppTheme.js +0 -15
- package/12/app/sc/AppTheme.mjs +0 -11
- package/12/app/sc/auth/index.d.ts +0 -11
- package/12/app/sc/auth/index.js +0 -17
- package/12/app/sc/auth/index.mjs +0 -13
- package/12/app/sc/auth/package.json +0 -6
- package/12/app/sc/index.d.ts +0 -56
- package/12/app/sc/index.js +0 -63
- package/12/app/sc/index.mjs +0 -59
- package/12/app/sc/package.json +0 -6
- package/12/document/Document.d.ts +0 -15
- package/12/document/Document.js +0 -31
- package/12/document/Document.mjs +0 -28
- package/12/document/css/index.d.ts +0 -17
- package/12/document/css/index.js +0 -45
- package/12/document/css/index.mjs +0 -45
- package/12/document/css/package.json +0 -6
- package/12/document/index.d.ts +0 -2
- package/12/document/index.js +0 -7
- package/12/document/index.mjs +0 -2
- package/12/document/package.json +0 -6
- package/12/document/sc/index.d.ts +0 -19
- package/12/document/sc/index.js +0 -67
- package/12/document/sc/index.mjs +0 -64
- package/12/document/sc/package.json +0 -6
- package/12/getT.d.ts +0 -9
- package/12/getT.js +0 -14
- package/12/getT.mjs +0 -10
- package/12/index.d.ts +0 -24
- package/12/index.js +0 -52
- package/12/index.mjs +0 -27
- package/12/package.json +0 -6
- package/12/seoBuildTags.js +0 -121
- package/12/seoBuildTags.mjs +0 -117
- package/12/to.d.ts +0 -24
- package/12/to.js +0 -29
- package/12/to.mjs +0 -25
- package/12/translationAsOptions.d.ts +0 -3
- package/12/translationAsOptions.js +0 -13
- package/12/translationAsOptions.mjs +0 -9
- package/12/types-i18n.d.ts +0 -118
- package/12/types-i18n.js +0 -14
- package/12/types-i18n.mjs +0 -13
- package/12/types-seo.d.ts +0 -7
- package/12/types-seo.js +0 -2
- package/12/types-seo.mjs +0 -1
- package/12/useBackUrl.d.ts +0 -2
- package/12/useBackUrl.js +0 -33
- package/12/useBackUrl.mjs +0 -28
- package/12/useDateFormat.d.ts +0 -7
- package/12/useDateFormat.js +0 -43
- package/12/useDateFormat.mjs +0 -39
- package/12/useForm.d.ts +0 -27
- package/12/useForm.js +0 -39
- package/12/useForm.mjs +0 -35
- package/12/useLocale.d.ts +0 -2
- package/12/useLocale.js +0 -11
- package/12/useLocale.mjs +0 -6
- package/12/useT.d.ts +0 -4
- package/12/useT.js +0 -44
- package/12/useT.mjs +0 -21
- package/12/useTheme.js +0 -12
- package/12/useTheme.mjs +0 -8
- package/12/useTo.d.ts +0 -3
- package/12/useTo.js +0 -19
- package/12/useTo.mjs +0 -15
- package/config/index.d.ts +0 -160
- package/config/index.js +0 -343
- package/config/index.mjs +0 -332
- package/config/package.json +0 -6
- package/getSiteUrl.d.ts +0 -8
- package/getSiteUrl.js +0 -17
- package/getSiteUrl.mjs +0 -12
- package/index.js +0 -7
- package/index.mjs +0 -2
- package/load.js +0 -18
- package/load.mjs +0 -14
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var router = require('next/router');
|
|
7
|
+
var o = require('next/script');
|
|
8
|
+
var react = require('react');
|
|
9
|
+
var browser = require('@koine/browser');
|
|
10
|
+
|
|
11
|
+
let AnalyticsGoogle=({id:s})=>{let l=s||process.env.NEXT_PUBLIC_GTM_ID,{events:m,asPath:c,query:d}=router.useRouter(),[p,f]=react.useState(false),[w,u]=react.useState(false);return (react.useEffect(()=>{let e=()=>{u(true);};return m.on("routeChangeComplete",e),()=>{m.off("routeChangeComplete",e);}},[m]),react.useEffect(()=>{w&&p&&c&&browser.gtagPageview(c);},[c,d,w,p]),l)?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(o,{id:"google-tagmanager",src:`https://www.googletagmanager.com/gtag/js?id=${s}`,strategy:"afterInteractive",onLoad:()=>f(true)}),jsxRuntime.jsx(o,{id:"google-analytics",strategy:"afterInteractive",children:`
|
|
12
|
+
window.dataLayer = window.dataLayer || [];
|
|
13
|
+
function gtag(){window.dataLayer.push(arguments);}
|
|
14
|
+
gtag('js', new Date());
|
|
15
|
+
|
|
16
|
+
gtag('config', '${s}', { 'send_page_view': false });
|
|
17
|
+
`})]}):null};
|
|
18
|
+
|
|
19
|
+
exports.AnalyticsGoogle = AnalyticsGoogle;
|
|
20
|
+
exports.default = AnalyticsGoogle;
|
package/12/AnalyticsGoogle.d.ts
CHANGED
|
@@ -2,5 +2,5 @@ export type AnalyticsGoogleProps = {
|
|
|
2
2
|
/** Falls back to `.env` variable `NEXT_PUBLIC_GTM_ID` */
|
|
3
3
|
id?: string;
|
|
4
4
|
};
|
|
5
|
-
export declare
|
|
5
|
+
export declare let AnalyticsGoogle: ({ id }: AnalyticsGoogleProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
6
6
|
export default AnalyticsGoogle;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useRouter } from 'next/router';
|
|
3
|
+
import o from 'next/script';
|
|
4
|
+
import { useState, useEffect } from 'react';
|
|
5
|
+
import { gtagPageview } from '@koine/browser';
|
|
6
|
+
|
|
7
|
+
let AnalyticsGoogle=({id:s})=>{let l=s||process.env.NEXT_PUBLIC_GTM_ID,{events:m,asPath:c,query:d}=useRouter(),[p,f]=useState(false),[w,u]=useState(false);return (useEffect(()=>{let e=()=>{u(true);};return m.on("routeChangeComplete",e),()=>{m.off("routeChangeComplete",e);}},[m]),useEffect(()=>{w&&p&&c&>agPageview(c);},[c,d,w,p]),l)?jsxs(Fragment,{children:[jsx(o,{id:"google-tagmanager",src:`https://www.googletagmanager.com/gtag/js?id=${s}`,strategy:"afterInteractive",onLoad:()=>f(true)}),jsx(o,{id:"google-analytics",strategy:"afterInteractive",children:`
|
|
8
|
+
window.dataLayer = window.dataLayer || [];
|
|
9
|
+
function gtag(){window.dataLayer.push(arguments);}
|
|
10
|
+
gtag('js', new Date());
|
|
11
|
+
|
|
12
|
+
gtag('config', '${s}', { 'send_page_view': false });
|
|
13
|
+
`})]}):null};
|
|
14
|
+
|
|
15
|
+
export { AnalyticsGoogle, AnalyticsGoogle as default };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var r = require('next/head');
|
|
7
|
+
|
|
8
|
+
let DisableErrorOverlay=()=>jsxRuntime.jsx(r,{children:"development"===process.env.NODE_ENV&&jsxRuntime.jsx("script",{dangerouslySetInnerHTML:{__html:"window.addEventListener('error',event =>{event.stopImmediatePropagation()});window.addEventListener('unhandledrejection',event =>{event.stopImmediatePropagation()});"}})});
|
|
9
|
+
|
|
10
|
+
exports.DisableErrorOverlay = DisableErrorOverlay;
|
|
11
|
+
exports.default = DisableErrorOverlay;
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @see https://github.com/vercel/next.js/discussions/13387#discussioncomment-101564
|
|
5
5
|
*/
|
|
6
|
-
export declare
|
|
6
|
+
export declare let DisableErrorOverlay: () => import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
export default DisableErrorOverlay;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import r from 'next/head';
|
|
3
|
+
|
|
4
|
+
let DisableErrorOverlay=()=>jsx(r,{children:"development"===process.env.NODE_ENV&&jsx("script",{dangerouslySetInnerHTML:{__html:"window.addEventListener('error',event =>{event.stopImmediatePropagation()});window.addEventListener('unhandledrejection',event =>{event.stopImmediatePropagation()});"}})});
|
|
5
|
+
|
|
6
|
+
export { DisableErrorOverlay, DisableErrorOverlay as default };
|
package/12/Seo.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import type { NextSeoProps } from "next-seo/lib/types";
|
|
2
|
-
import type
|
|
3
|
-
|
|
2
|
+
import { type LinkTag, type MetaTag } from "./seoBuildTags";
|
|
3
|
+
export type SeoData = {
|
|
4
|
+
hidden?: boolean;
|
|
5
|
+
title?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
keywords?: string | string[];
|
|
8
|
+
ogimage?: string;
|
|
9
|
+
};
|
|
4
10
|
type SeoPropsOpenGraph = NextSeoProps["openGraph"] & {
|
|
5
11
|
image?: string;
|
|
6
12
|
};
|
|
@@ -36,6 +42,8 @@ export type SeoProps = Omit<NextSeoProps, "additionalMetaTags" | "additionalLink
|
|
|
36
42
|
* ```js
|
|
37
43
|
* <Seo title="MyApp | Some description" titleTemplate="%s" />
|
|
38
44
|
* ```
|
|
45
|
+
*
|
|
46
|
+
* @deprecated
|
|
39
47
|
*/
|
|
40
|
-
export declare
|
|
48
|
+
export declare let Seo: (props: SeoProps) => import("react/jsx-runtime").JSX.Element;
|
|
41
49
|
export default Seo;
|
package/12/SeoDefaults.d.ts
CHANGED
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import type { DefaultSeoProps } from "next-seo/lib/types";
|
|
2
|
-
import
|
|
2
|
+
import type { JsonObject } from "@koine/utils";
|
|
3
|
+
import { type LinkTag, type MetaTag } from "./seoBuildTags";
|
|
3
4
|
/**
|
|
4
5
|
* @see https://github.com/garmeeh/next-seo/blob/master/src/types.ts#L413
|
|
5
6
|
*/
|
|
6
7
|
export type SeoDefaultsProps = Omit<DefaultSeoProps, "additionalMetaTags" | "additionalLinkTags" | "dangerouslySetAllPagesToNoIndex" | "dangerouslySetAllPagesToNoFollow" | "defaultOpenGraphImageWidth" | "defaultOpenGraphImageHeight" | "defaultOpenGraphVideoWidth" | "defaultOpenGraphVideoHeight" | "mobileAlternate" | "robotsProps"> & {
|
|
7
8
|
metaTags?: ReadonlyArray<MetaTag>;
|
|
8
9
|
linkTags?: ReadonlyArray<LinkTag>;
|
|
10
|
+
schema?: JsonObject;
|
|
9
11
|
};
|
|
10
|
-
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated
|
|
14
|
+
*/
|
|
15
|
+
export declare let SeoDefaults: (props: SeoDefaultsProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
16
|
export default SeoDefaults;
|
package/12/seoBuildTags.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import type { SeoProps } from "./Seo";
|
|
3
2
|
import type { SeoDefaultsProps } from "./SeoDefaults";
|
|
4
3
|
export type MetaTag = React.DetailedHTMLProps<React.MetaHTMLAttributes<HTMLMetaElement>, HTMLMetaElement>;
|
|
@@ -19,5 +18,5 @@ type BuildTagsParams = SeoProps & SeoDefaultsProps;
|
|
|
19
18
|
*
|
|
20
19
|
* @returns
|
|
21
20
|
*/
|
|
22
|
-
export declare const seoBuildTags: ({ seo, hidden, keywords, title, titleTemplate, defaultTitle, noindex, nofollow, description, languageAlternates, twitter, facebook, openGraph, og: ogAlias, canonical, metaTags, linkTags, }?: BuildTagsParams) =>
|
|
21
|
+
export declare const seoBuildTags: ({ seo, hidden, keywords, title, titleTemplate, defaultTitle, noindex, nofollow, description, languageAlternates, twitter, facebook, openGraph, og: ogAlias, canonical, metaTags, linkTags, schema, }?: BuildTagsParams) => import("react").ReactNode[];
|
|
23
22
|
export default seoBuildTags;
|
package/12/types.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./12.cjs.js').default;
|
package/12.cjs.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var AnalyticsGoogle = require('./12/AnalyticsGoogle.cjs.js');
|
|
4
|
+
var DisableErrorOverlay = require('./12/DisableErrorOverlay.cjs.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
exports.AnalyticsGoogle = AnalyticsGoogle.AnalyticsGoogle;
|
|
9
|
+
exports.DisableErrorOverlay = DisableErrorOverlay.DisableErrorOverlay;
|
package/12.cjs.mjs
ADDED
package/12.d.ts
ADDED
package/12.esm.js
ADDED
package/README.md
CHANGED
|
@@ -1,13 +1 @@
|
|
|
1
1
|
# @koine/next
|
|
2
|
-
|
|
3
|
-
## i18n
|
|
4
|
-
|
|
5
|
-
To make typescript work nicely with `useT`, `getT` and `T` make sure to enable [`resolveJsonModule`](https://www.typescriptlang.org/tsconfig#resolveJsonModule) in your `tsconfig.json` file:
|
|
6
|
-
|
|
7
|
-
```json
|
|
8
|
-
{
|
|
9
|
-
"compilerOptions": {
|
|
10
|
-
"resolveJsonModule": true,
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./ThemeContext.cjs.js').default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var react = require('react');
|
|
6
|
+
|
|
7
|
+
const ThemeContext=react.createContext({setTheme:e=>{},themes:[]});
|
|
8
|
+
|
|
9
|
+
exports.ThemeContext = ThemeContext;
|
|
10
|
+
exports.default = ThemeContext;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./ThemeProvider.cjs.js').default;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var o = require('next/script');
|
|
7
|
+
var react = require('react');
|
|
8
|
+
var utils = require('@koine/utils');
|
|
9
|
+
var ThemeContext = require('./ThemeContext.cjs.js');
|
|
10
|
+
|
|
11
|
+
let l=["light","dark"],d="(prefers-color-scheme: dark)",c="theme";const ThemeProvider=({forcedTheme:r,disableTransitionOnChange:o=false,enableSystem:v=true,enableColorScheme:y,themes:p=["light","dark"],defaultTheme:g=v?"system":"light",attribute:w="data-theme",value:x,children:S,nonce:k})=>{let[b,L]=react.useState(()=>u(c,g)),[T,j]=react.useState(()=>u(c)),C=x?Object.values(x):p,E=react.useCallback(e=>{let t=e;if(utils.isServer||!t)return;"system"===e&&v&&(t=f());let r=x?x[t]:t,i=o?$():null,n=document.documentElement;if("class"===w?(n.classList.remove(...C),r&&n.classList.add(r)):r?n.setAttribute(w,r):n.removeAttribute(w),y){let e=l.includes(g)?g:"",r=l.includes(t)?t:e;n.style.colorScheme=r;}i?.();},[w,C,g,o,y,v,x]),I=react.useCallback(e=>{L(e);try{localStorage.setItem(c,e);}catch(e){}},[]),M=react.useCallback(e=>{j(f(e)),"system"===b&&v&&!r&&E("system");},[b,v,r,E]);return react.useEffect(()=>{let e=window.matchMedia(d);return e.addListener(M),M(e),()=>e.removeListener(M)},[M]),react.useEffect(()=>{let e=e=>{e.key===c&&I(e.newValue||g);};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[g,I]),react.useEffect(()=>{E(r??b);},[E,r,b]),jsxRuntime.jsxs(ThemeContext.ThemeContext.Provider,{value:{theme:b,setTheme:I,forcedTheme:r,resolvedTheme:"system"===b?T:b,themes:v?[...p,"system"]:p,systemTheme:v?T:void 0},children:[jsxRuntime.jsx(h,{forcedTheme:r,disableTransitionOnChange:o,enableSystem:v,enableColorScheme:y,themes:p,defaultTheme:g,attribute:w,value:x,children:S,attrs:C,nonce:k}),S]})};let h=react.memo(({forcedTheme:t,attribute:o$1,enableSystem:i,enableColorScheme:n,defaultTheme:s,value:a,attrs:m,nonce:h})=>{let u="system"===s,$=(()=>{let e=`d.remove(${m.map(e=>`'${e}'`).join(",")})`;return `var d=document.documentElement.classList;${e};`})(),f=n?(l.includes(s)?s:null)?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${s}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",y=(e,t=false,r=true)=>{let i=a?a[e]:e,s=t?e+"|| ''":`'${i}'`,m="";return n&&r&&!t&&l.includes(e)&&(m+=`d.style.colorScheme = '${e}';`),"class"===o$1?t||i?m+=`d.add(${s})`:m+="null":i&&(m+=`d[s](n, ${s})`),m},p=t?`!function(){${$}${y(t)}}()`:i?`!function(){try {${$}var e=localStorage.getItem('${c}');if("system"===e||(!e&&${u})){var t="${d}",m=window.matchMedia(t);if(m.media!==t||m.matches){${y("dark")}}else{${y("light")}}}else if(e){${a?`var x=${JSON.stringify(a)};`:""}${y(a?"x[e]":"e",true)}}${!u?"else{"+y(s,false,false)+"}":""}${f}}catch(e){}}()`:`!function(){try{${$}var e=localStorage.getItem("${c}");if(e){${a?`var x=${JSON.stringify(a)};`:""}${y(a?"x[e]":"e",true)}}else{${y(s,false,false)};}${f}}catch(t){}}();`;return jsxRuntime.jsx(o,{id:"next-theme-script",strategy:"beforeInteractive",src:`data:text/javascript;base64,${v(p)}`,nonce:h})},()=>true),u=(e,t)=>{let r;if(!utils.isServer){try{r=localStorage.getItem(e)||void 0;}catch(e){}return r||t}},$=()=>{let e=document,t=e.createElement("style");return t.appendChild(e.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),e.head.appendChild(t),()=>{window.getComputedStyle(e.body),setTimeout(()=>{e.head.removeChild(t);},1);}},f=e=>(e||(e=window.matchMedia(d)),e.matches?"dark":"light"),v=e=>utils.isServer?Buffer.from(e).toString("base64"):btoa(e);
|
|
12
|
+
|
|
13
|
+
exports.ThemeProvider = ThemeProvider;
|
|
14
|
+
exports.default = ThemeProvider;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import o from 'next/script';
|
|
3
|
+
import { memo, useState, useCallback, useEffect } from 'react';
|
|
4
|
+
import { isServer } from '@koine/utils';
|
|
5
|
+
import { ThemeContext } from './ThemeContext.esm.js';
|
|
6
|
+
|
|
7
|
+
let l=["light","dark"],d="(prefers-color-scheme: dark)",c="theme";const ThemeProvider=({forcedTheme:r,disableTransitionOnChange:o=false,enableSystem:v=true,enableColorScheme:y,themes:p=["light","dark"],defaultTheme:g=v?"system":"light",attribute:w="data-theme",value:x,children:S,nonce:k})=>{let[b,L]=useState(()=>u(c,g)),[T,j]=useState(()=>u(c)),C=x?Object.values(x):p,E=useCallback(e=>{let t=e;if(isServer||!t)return;"system"===e&&v&&(t=f());let r=x?x[t]:t,i=o?$():null,n=document.documentElement;if("class"===w?(n.classList.remove(...C),r&&n.classList.add(r)):r?n.setAttribute(w,r):n.removeAttribute(w),y){let e=l.includes(g)?g:"",r=l.includes(t)?t:e;n.style.colorScheme=r;}i?.();},[w,C,g,o,y,v,x]),I=useCallback(e=>{L(e);try{localStorage.setItem(c,e);}catch(e){}},[]),M=useCallback(e=>{j(f(e)),"system"===b&&v&&!r&&E("system");},[b,v,r,E]);return useEffect(()=>{let e=window.matchMedia(d);return e.addListener(M),M(e),()=>e.removeListener(M)},[M]),useEffect(()=>{let e=e=>{e.key===c&&I(e.newValue||g);};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[g,I]),useEffect(()=>{E(r??b);},[E,r,b]),jsxs(ThemeContext.Provider,{value:{theme:b,setTheme:I,forcedTheme:r,resolvedTheme:"system"===b?T:b,themes:v?[...p,"system"]:p,systemTheme:v?T:void 0},children:[jsx(h,{forcedTheme:r,disableTransitionOnChange:o,enableSystem:v,enableColorScheme:y,themes:p,defaultTheme:g,attribute:w,value:x,children:S,attrs:C,nonce:k}),S]})};let h=memo(({forcedTheme:t,attribute:o$1,enableSystem:i,enableColorScheme:n,defaultTheme:s,value:a,attrs:m,nonce:h})=>{let u="system"===s,$=(()=>{let e=`d.remove(${m.map(e=>`'${e}'`).join(",")})`;return `var d=document.documentElement.classList;${e};`})(),f=n?(l.includes(s)?s:null)?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${s}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",y=(e,t=false,r=true)=>{let i=a?a[e]:e,s=t?e+"|| ''":`'${i}'`,m="";return n&&r&&!t&&l.includes(e)&&(m+=`d.style.colorScheme = '${e}';`),"class"===o$1?t||i?m+=`d.add(${s})`:m+="null":i&&(m+=`d[s](n, ${s})`),m},p=t?`!function(){${$}${y(t)}}()`:i?`!function(){try {${$}var e=localStorage.getItem('${c}');if("system"===e||(!e&&${u})){var t="${d}",m=window.matchMedia(t);if(m.media!==t||m.matches){${y("dark")}}else{${y("light")}}}else if(e){${a?`var x=${JSON.stringify(a)};`:""}${y(a?"x[e]":"e",true)}}${!u?"else{"+y(s,false,false)+"}":""}${f}}catch(e){}}()`:`!function(){try{${$}var e=localStorage.getItem("${c}");if(e){${a?`var x=${JSON.stringify(a)};`:""}${y(a?"x[e]":"e",true)}}else{${y(s,false,false)};}${f}}catch(t){}}();`;return jsx(o,{id:"next-theme-script",strategy:"beforeInteractive",src:`data:text/javascript;base64,${v(p)}`,nonce:h})},()=>true),u=(e,t)=>{let r;if(!isServer){try{r=localStorage.getItem(e)||void 0;}catch(e){}return r||t}},$=()=>{let e=document,t=e.createElement("style");return t.appendChild(e.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),e.head.appendChild(t),()=>{window.getComputedStyle(e.body),setTimeout(()=>{e.head.removeChild(t);},1);}},f=e=>(e||(e=window.matchMedia(d)),e.matches?"dark":"light"),v=e=>isServer?Buffer.from(e).toString("base64"):btoa(e);
|
|
8
|
+
|
|
9
|
+
export { ThemeProvider, ThemeProvider as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./config.cjs.js').default;
|
package/config.cjs.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var swc = require('@koine/node/swc');
|
|
4
|
+
var next = require('@koine/i18n/next');
|
|
5
|
+
|
|
6
|
+
let withKoine=(s={})=>{let{nx:p,svg:a,i18nRoutes:m,i18nCompiler:l,modularize:u,...c}=s,w={modularizeImports:{...u?Array.isArray(u)?swc.swcCreateTransforms(u):swc.swcCreateTransform(u):{},...c.modularizeImports||{},...swc.swcTransformsKoine},...c};return (a&&(p?w.nx={svgr:true}:(delete w.nx,w.webpack=(e,o)=>{let r="function"==typeof c.webpack?c.webpack(e,o):e;return r.module.rules.push({test:/\.svg$/,use:[{loader:"@svgr/webpack",options:{svgoConfig:{plugins:[{name:"removeViewBox",active:false}]}}}]}),r})),m)?next.withI18nLegacy({...w,i18nRoutes:m}):l?p?next.withI18nAsync({...w,i18nCompiler:l}):next.withI18n({...w,i18nCompiler:l}):w};
|
|
7
|
+
|
|
8
|
+
exports.withKoine = withKoine;
|
package/config.cjs.mjs
ADDED
package/config.d.ts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { NextConfig } from "next";
|
|
2
|
+
import { type SwcTransformingLib } from "@koine/node/swc";
|
|
3
|
+
import { type WithI18nAsyncOptions, type WithI18nLegacyOptions } from "@koine/i18n/next";
|
|
4
|
+
/**
|
|
5
|
+
* @legacy
|
|
6
|
+
*/
|
|
7
|
+
export type Routes = NonNullable<WithI18nLegacyOptions["i18nRoutes"]>["routes"];
|
|
8
|
+
export type WithKoineOptions = NextConfig & {
|
|
9
|
+
/**
|
|
10
|
+
* Set it to `true` when your _Next.js_ app is built inside a Nx monorepo
|
|
11
|
+
*/
|
|
12
|
+
nx?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Set it to `true` in order to be able importing React components directly
|
|
15
|
+
* from `.svg` files.
|
|
16
|
+
*
|
|
17
|
+
* It automatically configure webpack taking into account the `nx` option.
|
|
18
|
+
*/
|
|
19
|
+
svg?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Shortcut option to automatically create swc transforms to feed into
|
|
22
|
+
* _Next.js_' `modularizeImports`.
|
|
23
|
+
*
|
|
24
|
+
* Pass _one_ or an _array_ of {@link SwcTransformingLib lib transform object}.
|
|
25
|
+
*/
|
|
26
|
+
modularize?: SwcTransformingLib[] | SwcTransformingLib;
|
|
27
|
+
} & WithI18nLegacyOptions & WithI18nAsyncOptions;
|
|
28
|
+
/**
|
|
29
|
+
* Get _Next.js_ config with some extra {@link WithKoineOptions options}
|
|
30
|
+
*
|
|
31
|
+
* @param options
|
|
32
|
+
*/
|
|
33
|
+
export declare let withKoine: (options?: WithKoineOptions) => NextConfig;
|
package/config.esm.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { swcTransformsKoine, swcCreateTransforms, swcCreateTransform } from '@koine/node/swc';
|
|
2
|
+
import { withI18nLegacy, withI18nAsync, withI18n } from '@koine/i18n/next';
|
|
3
|
+
|
|
4
|
+
let withKoine=(s={})=>{let{nx:p,svg:a,i18nRoutes:m,i18nCompiler:l,modularize:u,...c}=s,w={modularizeImports:{...u?Array.isArray(u)?swcCreateTransforms(u):swcCreateTransform(u):{},...c.modularizeImports||{},...swcTransformsKoine},...c};return (a&&(p?w.nx={svgr:true}:(delete w.nx,w.webpack=(e,o)=>{let r="function"==typeof c.webpack?c.webpack(e,o):e;return r.module.rules.push({test:/\.svg$/,use:[{loader:"@svgr/webpack",options:{svgoConfig:{plugins:[{name:"removeViewBox",active:false}]}}}]}),r})),m)?withI18nLegacy({...w,i18nRoutes:m}):l?p?withI18nAsync({...w,i18nCompiler:l}):withI18n({...w,i18nCompiler:l}):w};
|
|
5
|
+
|
|
6
|
+
export { withKoine };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./index.cjs.js').default;
|
package/index.cjs.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var load = require('./load.cjs.js');
|
|
4
|
+
var ThemeContext = require('./ThemeContext.cjs.js');
|
|
5
|
+
var ThemeProvider = require('./ThemeProvider.cjs.js');
|
|
6
|
+
var useTheme = require('./useTheme.cjs.js');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
exports.load = load.load;
|
|
11
|
+
exports.ThemeContext = ThemeContext.ThemeContext;
|
|
12
|
+
exports.ThemeProvider = ThemeProvider.ThemeProvider;
|
|
13
|
+
exports.useTheme = useTheme.useTheme;
|
package/index.cjs.mjs
ADDED
package/index.d.ts
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
export { getSiteUrl } from "./getSiteUrl";
|
|
2
1
|
export { load } from "./load";
|
|
2
|
+
export { ThemeContext, type ThemeContextProps } from "./ThemeContext";
|
|
3
|
+
export { ThemeProvider, type ThemeProviderProps } from "./ThemeProvider";
|
|
4
|
+
export { useTheme, type UseThemeProps } from "./useTheme";
|
package/index.esm.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./load.cjs.js').default;
|
package/load.cjs.js
ADDED
package/load.cjs.mjs
ADDED
package/load.d.ts
CHANGED
|
File without changes
|
package/load.esm.js
ADDED
package/package.json
CHANGED
|
@@ -1,102 +1,72 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@koine/next",
|
|
3
3
|
"sideEffects": false,
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
},
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
"
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
"
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
"
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
"react-icons": {
|
|
51
|
-
"optional": true
|
|
52
|
-
},
|
|
53
|
-
"react-is": {
|
|
54
|
-
"optional": true
|
|
55
|
-
},
|
|
56
|
-
"react-popper": {
|
|
57
|
-
"optional": true
|
|
58
|
-
},
|
|
59
|
-
"react-swipeable": {
|
|
60
|
-
"optional": true
|
|
61
|
-
},
|
|
62
|
-
"styled-components": {
|
|
63
|
-
"optional": true
|
|
64
|
-
},
|
|
65
|
-
"tailwindcss": {
|
|
66
|
-
"optional": true
|
|
4
|
+
"exports": {
|
|
5
|
+
"./typings": {
|
|
6
|
+
"types": "./typings.d.ts"
|
|
7
|
+
},
|
|
8
|
+
"./package.json": "./package.json",
|
|
9
|
+
".": {
|
|
10
|
+
"module": "./index.esm.js",
|
|
11
|
+
"types": "./index.d.ts",
|
|
12
|
+
"import": "./index.cjs.mjs",
|
|
13
|
+
"default": "./index.cjs.js"
|
|
14
|
+
},
|
|
15
|
+
"./12": {
|
|
16
|
+
"module": "./12.esm.js",
|
|
17
|
+
"types": "./12.d.ts",
|
|
18
|
+
"import": "./12.cjs.mjs",
|
|
19
|
+
"default": "./12.cjs.js"
|
|
20
|
+
},
|
|
21
|
+
"./config": {
|
|
22
|
+
"module": "./config.esm.js",
|
|
23
|
+
"types": "./config.d.ts",
|
|
24
|
+
"import": "./config.cjs.mjs",
|
|
25
|
+
"default": "./config.cjs.js"
|
|
26
|
+
},
|
|
27
|
+
"./load": {
|
|
28
|
+
"module": "./load.esm.js",
|
|
29
|
+
"types": "./load.d.ts",
|
|
30
|
+
"import": "./load.cjs.mjs",
|
|
31
|
+
"default": "./load.cjs.js"
|
|
32
|
+
},
|
|
33
|
+
"./ThemeContext": {
|
|
34
|
+
"module": "./ThemeContext.esm.js",
|
|
35
|
+
"types": "./ThemeContext.d.ts",
|
|
36
|
+
"import": "./ThemeContext.cjs.mjs",
|
|
37
|
+
"default": "./ThemeContext.cjs.js"
|
|
38
|
+
},
|
|
39
|
+
"./ThemeProvider": {
|
|
40
|
+
"module": "./ThemeProvider.esm.js",
|
|
41
|
+
"types": "./ThemeProvider.d.ts",
|
|
42
|
+
"import": "./ThemeProvider.cjs.mjs",
|
|
43
|
+
"default": "./ThemeProvider.cjs.js"
|
|
44
|
+
},
|
|
45
|
+
"./useTheme": {
|
|
46
|
+
"module": "./useTheme.esm.js",
|
|
47
|
+
"types": "./useTheme.d.ts",
|
|
48
|
+
"import": "./useTheme.cjs.mjs",
|
|
49
|
+
"default": "./useTheme.cjs.js"
|
|
67
50
|
}
|
|
68
51
|
},
|
|
69
52
|
"dependencies": {
|
|
70
|
-
"@
|
|
71
|
-
"@
|
|
72
|
-
"@
|
|
73
|
-
"@
|
|
74
|
-
"@tiptap/react": "2.0.3",
|
|
75
|
-
"@tiptap/starter-kit": "2.0.3",
|
|
76
|
-
"clsx": "1.2.1",
|
|
77
|
-
"date-fns": "^2.30.0",
|
|
78
|
-
"date-fns-tz": "^2.0.0",
|
|
79
|
-
"framer-motion": "^10.12.16",
|
|
80
|
-
"next": "^13.4.4",
|
|
81
|
-
"next-auth": "^4.22.1",
|
|
82
|
-
"next-seo": "^6.0.0",
|
|
83
|
-
"next-translate": "^2.0.6",
|
|
84
|
-
"react": "^18.2.0",
|
|
85
|
-
"react-hook-form": "^7.44.3",
|
|
86
|
-
"react-icons": "^4.9.0",
|
|
87
|
-
"react-swipeable": "^7.0.1",
|
|
88
|
-
"styled-components": "^5.3.11",
|
|
89
|
-
"ts-debounce": "^4.0.0",
|
|
90
|
-
"tslib": "^2.5.3",
|
|
91
|
-
"type-fest": "^3.11.1"
|
|
53
|
+
"@koine/browser": "2.0.0-beta.200",
|
|
54
|
+
"@koine/i18n": "2.0.0-beta.200",
|
|
55
|
+
"@koine/node": "2.0.0-beta.200",
|
|
56
|
+
"@koine/utils": "2.0.0-beta.200"
|
|
92
57
|
},
|
|
93
58
|
"peerDependencies": {
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
"
|
|
59
|
+
"next": "^13 || ^14 || ^15",
|
|
60
|
+
"next-seo": "^6.4.0",
|
|
61
|
+
"react": "^18 || ^19"
|
|
62
|
+
},
|
|
63
|
+
"peerDependenciesMeta": {
|
|
64
|
+
"next-seo": {
|
|
65
|
+
"optional": true
|
|
66
|
+
}
|
|
97
67
|
},
|
|
98
|
-
"
|
|
68
|
+
"module": "./index.esm.js",
|
|
69
|
+
"main": "./index.cjs.js",
|
|
99
70
|
"types": "./index.d.ts",
|
|
100
|
-
"version": "2.0.0-beta.
|
|
101
|
-
"module": "./index.mjs"
|
|
71
|
+
"version": "2.0.0-beta.200"
|
|
102
72
|
}
|