@koine/next 1.0.14 → 1.0.15

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.
Files changed (56) hide show
  1. package/Forms/index.d.ts +0 -1
  2. package/Forms/index.js +0 -1
  3. package/node/Analytics/AnalyticsGoogle.js +37 -0
  4. package/node/Analytics/index.js +4 -0
  5. package/node/Auth/helpers.js +27 -0
  6. package/node/Auth/index.js +7 -0
  7. package/node/Auth/useLogin.js +53 -0
  8. package/node/Auth/useLoginUrl.js +15 -0
  9. package/node/Auth/useLogout.js +56 -0
  10. package/node/Favicon/Favicon.js +9 -0
  11. package/node/Favicon/index.js +4 -0
  12. package/node/Forms/index.js +4 -0
  13. package/node/Forms/useForm.js +39 -0
  14. package/node/Head/Head.js +5 -0
  15. package/node/Head/index.js +4 -0
  16. package/node/I18n/I18n.js +102 -0
  17. package/node/I18n/index.js +4 -0
  18. package/node/Img/Img.js +35 -0
  19. package/node/Img/index.js +4 -0
  20. package/node/Link/Link.js +14 -0
  21. package/node/Link/index.js +4 -0
  22. package/node/NextProgress/NextProgress.js +44 -0
  23. package/node/NextProgress/index.js +5 -0
  24. package/node/Seo/Seo.js +12 -0
  25. package/node/Seo/SeoDefaults.js +16 -0
  26. package/node/Seo/helpers.js +119 -0
  27. package/node/Seo/index.js +15 -0
  28. package/node/Theme/Theme.js +250 -0
  29. package/node/Theme/index.js +4 -0
  30. package/node/app/AppHead.js +10 -0
  31. package/node/app/AppMain.js +2 -0
  32. package/node/app/css/AppMain.js +17 -0
  33. package/node/app/css/AppTheme.js +18 -0
  34. package/node/app/css/auth/index.js +18 -0
  35. package/node/app/css/index.js +62 -0
  36. package/node/app/em/AppMain.js +28 -0
  37. package/node/app/em/AppTheme.js +22 -0
  38. package/node/app/em/auth/index.js +18 -0
  39. package/node/app/em/index.js +17 -0
  40. package/node/app/index.js +5 -0
  41. package/node/app/sc/AppMain.js +28 -0
  42. package/node/app/sc/AppTheme.js +15 -0
  43. package/node/app/sc/auth/index.js +18 -0
  44. package/node/app/sc/index.js +64 -0
  45. package/node/config/index.js +201 -0
  46. package/node/document/Document.js +29 -0
  47. package/node/document/css/index.js +47 -0
  48. package/node/document/em/index.js +62 -0
  49. package/node/document/index.js +7 -0
  50. package/node/document/sc/index.js +68 -0
  51. package/node/index.js +15 -0
  52. package/node/utils/emotion-cache.js +13 -0
  53. package/node/utils/index.js +31 -0
  54. package/package.json +4 -4
  55. package/utils/index.d.ts +0 -1
  56. package/utils/index.js +0 -1
package/Forms/index.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export * from "./useForm";
2
- export * from "./useSubmit";
package/Forms/index.js CHANGED
@@ -1,2 +1 @@
1
1
  export * from "./useForm";
2
- export * from "./useSubmit";
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AnalyticsGoogle = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var react_1 = require("react");
7
+ var router_1 = require("next/router");
8
+ var script_1 = tslib_1.__importDefault(require("next/script"));
9
+ var utils_1 = require("@koine/utils");
10
+ var AnalyticsGoogle = function (_a) {
11
+ var id = _a.id;
12
+ var uid = id || process.env["NEXT_PUBLIC_GTM_ID"];
13
+ var _b = (0, router_1.useRouter)(), events = _b.events, asPath = _b.asPath, query = _b.query;
14
+ var _c = (0, react_1.useState)(false), ready = _c[0], setReady = _c[1];
15
+ var _d = (0, react_1.useState)(false), routed = _d[0], setRouted = _d[1];
16
+ // const [url, setUrl] = useState("");
17
+ (0, react_1.useEffect)(function () {
18
+ var handleRouteChange = function () {
19
+ setRouted(true);
20
+ };
21
+ events.on("routeChangeComplete", handleRouteChange);
22
+ return function () {
23
+ events.off("routeChangeComplete", handleRouteChange);
24
+ };
25
+ }, [events]);
26
+ (0, react_1.useEffect)(function () {
27
+ if (routed && ready && asPath) {
28
+ // const search = query;
29
+ (0, utils_1.pageview)(asPath);
30
+ }
31
+ }, [asPath, query, routed, ready]);
32
+ if (!uid) {
33
+ return null;
34
+ }
35
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(script_1.default, { id: "google-tagmanager", src: "https://www.googletagmanager.com/gtag/js?id=".concat(id), strategy: "afterInteractive", onLoad: function () { return setReady(true); } }), (0, jsx_runtime_1.jsx)(script_1.default, tslib_1.__assign({ id: "google-analytics", strategy: "afterInteractive" }, { children: "\n window.dataLayer = window.dataLayer || [];\n function gtag(){window.dataLayer.push(arguments);}\n gtag('js', new Date());\n\n gtag('config', '".concat(id, "', { 'send_page_view': false });\n ") }))] }));
36
+ };
37
+ exports.AnalyticsGoogle = AnalyticsGoogle;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./AnalyticsGoogle"), exports);
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCallbackUrl = exports.getAuthRoutes = exports.AUTH_ROUTES = void 0;
4
+ var utils_1 = require("@koine/utils");
5
+ exports.AUTH_ROUTES = {
6
+ login: process.env["AUTH_ROUTE_LOGIN"],
7
+ profile: process.env["AUTH_ROUTE_PROFILE"],
8
+ register: process.env["AUTH_ROUTE_REGISTER"],
9
+ secured: JSON.parse(process.env["AUTH_ROUTES_SECURED"] || "[]"),
10
+ };
11
+ function getAuthRoutes(t) {
12
+ return Object.keys(exports.AUTH_ROUTES).reduce(function (map, name) {
13
+ var routePage = exports.AUTH_ROUTES[name];
14
+ // @ts-expect-error cannot remember
15
+ map[name] = (0, utils_1.isString)(routePage) ? t("~:".concat(exports.AUTH_ROUTES[name])) : routePage;
16
+ return map;
17
+ }, {});
18
+ }
19
+ exports.getAuthRoutes = getAuthRoutes;
20
+ /**
21
+ * @param url e.g. "http://localhost:3000/signin?callbackUrl=http://localhost:3000/profile"
22
+ */
23
+ function getCallbackUrl(url) {
24
+ if (url === void 0) { url = window.location.href; }
25
+ return url.split("callbackUrl=")[1] || "";
26
+ }
27
+ exports.getCallbackUrl = getCallbackUrl;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./helpers"), exports);
5
+ tslib_1.__exportStar(require("./useLogin"), exports);
6
+ tslib_1.__exportStar(require("./useLoginUrl"), exports);
7
+ tslib_1.__exportStar(require("./useLogout"), exports);
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useLogin = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = require("react");
6
+ var router_1 = require("next/router");
7
+ var react_2 = require("next-auth/react");
8
+ var utils_1 = require("@koine/utils");
9
+ var I18n_1 = require("../I18n");
10
+ var helpers_1 = require("./helpers");
11
+ function useLogin() {
12
+ var t = (0, I18n_1.useT)();
13
+ var push = (0, router_1.useRouter)().push;
14
+ var _a = (0, react_1.useState)(false), loading = _a[0], setLoading = _a[1];
15
+ var _b = (0, react_1.useState)(false), ok = _b[0], setOk = _b[1];
16
+ var _c = (0, react_1.useState)(false), fail = _c[0], setFail = _c[1];
17
+ var submit = (0, react_1.useCallback)(function (data) {
18
+ setLoading(true);
19
+ (0, react_2.signIn)("credentials", tslib_1.__assign(tslib_1.__assign({}, data), { redirect: false }))
20
+ // @ts-expect-error FIXME: at some point...
21
+ .then(function (_a) {
22
+ var ok = _a.ok;
23
+ setLoading(false);
24
+ setOk(ok);
25
+ setFail(!ok);
26
+ if (ok) {
27
+ var redirectUrl = (0, utils_1.parseURL)((0, helpers_1.getCallbackUrl)());
28
+ var _b = (0, helpers_1.getAuthRoutes)(t), login = _b.login, register = _b.register, profile = _b.profile;
29
+ if (redirectUrl) {
30
+ var redirectPath = redirectUrl.pathname;
31
+ if (profile &&
32
+ (redirectPath === login || redirectPath === register)) {
33
+ push(profile);
34
+ }
35
+ else {
36
+ push(redirectPath + redirectUrl.search);
37
+ }
38
+ }
39
+ else if (profile) {
40
+ push(profile);
41
+ }
42
+ }
43
+ });
44
+ }, [t, push]);
45
+ // TODO: useMemo ?
46
+ return {
47
+ submit: submit,
48
+ loading: loading,
49
+ ok: ok,
50
+ fail: fail,
51
+ };
52
+ }
53
+ exports.useLogin = useLogin;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useLoginUrl = void 0;
4
+ var react_1 = require("react");
5
+ var I18n_1 = require("../I18n");
6
+ var helpers_1 = require("./helpers");
7
+ function useLoginUrl() {
8
+ var _a = (0, react_1.useState)(""), currentUrl = _a[0], setCurrentUrl = _a[1];
9
+ var t = (0, I18n_1.useT)();
10
+ (0, react_1.useEffect)(function () {
11
+ setCurrentUrl("?callbackUrl=".concat(window.location.href));
12
+ }, []);
13
+ return "".concat((0, helpers_1.getAuthRoutes)(t).login).concat(currentUrl);
14
+ }
15
+ exports.useLoginUrl = useLoginUrl;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useLogout = void 0;
4
+ var react_1 = require("react");
5
+ var router_1 = require("next/router");
6
+ var react_2 = require("next-auth/react");
7
+ var utils_1 = require("@koine/utils");
8
+ var I18n_1 = require("../I18n");
9
+ var helpers_1 = require("./helpers");
10
+ function useLogout() {
11
+ var t = (0, I18n_1.useT)();
12
+ var push = (0, router_1.useRouter)().push;
13
+ var _a = (0, react_1.useState)(false), loading = _a[0], setLoading = _a[1];
14
+ var _b = (0, react_1.useState)(false), ok = _b[0], setOk = _b[1];
15
+ var fail = (0, react_1.useState)(false)[0];
16
+ var submit = (0, react_1.useCallback)(function (event) {
17
+ event.preventDefault();
18
+ event.stopPropagation();
19
+ setLoading(true);
20
+ (0, react_2.signOut)({ redirect: false }).then(function () {
21
+ setLoading(false);
22
+ setOk(true);
23
+ var redirectUrl = (0, utils_1.parseURL)((0, helpers_1.getCallbackUrl)());
24
+ var currentUrl = (0, utils_1.parseURL)(window.location.href);
25
+ var secured = (0, helpers_1.getAuthRoutes)(t).secured;
26
+ var signin = t("~:/signin");
27
+ var profile = t("~:/profile");
28
+ var targetUrl = redirectUrl || currentUrl;
29
+ var redirect = "";
30
+ if (targetUrl) {
31
+ if (targetUrl.pathname === profile) {
32
+ redirect = signin;
33
+ }
34
+ else if (secured) {
35
+ for (var i = 0; i < secured.length; i++) {
36
+ if (targetUrl.pathname.match(secured[i])) {
37
+ redirect = signin;
38
+ break;
39
+ }
40
+ }
41
+ }
42
+ }
43
+ if (redirect) {
44
+ push(redirect);
45
+ }
46
+ });
47
+ }, [t, push]);
48
+ // TODO: useMemo ?
49
+ return {
50
+ submit: submit,
51
+ loading: loading,
52
+ ok: ok,
53
+ fail: fail,
54
+ };
55
+ }
56
+ exports.useLogout = useLogout;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Favicon = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var head_1 = tslib_1.__importDefault(require("next/head"));
7
+ var react_1 = require("@koine/react");
8
+ var Favicon = function (props) { return ((0, jsx_runtime_1.jsx)(head_1.default, { children: (0, jsx_runtime_1.jsx)(react_1.FaviconTags, tslib_1.__assign({}, props)) })); };
9
+ exports.Favicon = Favicon;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./Favicon"), exports);
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./useForm"), exports);
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useForm = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = require("react");
6
+ var react_hook_form_1 = require("react-hook-form");
7
+ var yup_1 = require("@hookform/resolvers/yup");
8
+ var I18n_1 = require("../I18n");
9
+ function useForm(
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ schema, i18nNamespace, formProps, debug) {
12
+ if (formProps === void 0) { formProps = {}; }
13
+ var t = (0, I18n_1.useT)(i18nNamespace);
14
+ // const form = _useForm<InferType<ObjectSchema<T, object>>>({
15
+ var form = (0, react_hook_form_1.useForm)(tslib_1.__assign({
16
+ // @ts-expect-error FIXME:
17
+ resolver: (0, yup_1.yupResolver)(schema) }, formProps));
18
+ // const { control, register, setValue } = form;
19
+ // const field = { control, register, setValue, t };
20
+ // if (process.env["NODE_ENV"] !== "production") {
21
+ // if (debug) {
22
+ // console.log(
23
+ // `Form ${i18nNamespace} data`,
24
+ // form.watch(),
25
+ // `errors: `,
26
+ // form.formState.errors
27
+ // );
28
+ // }
29
+ // }
30
+ // if (formProps.mode === "onChange") {
31
+ // return { field, ...form };
32
+ // }
33
+ return (0, react_1.useMemo)(function () {
34
+ var control = form.control, register = form.register, setValue = form.setValue;
35
+ var field = { control: control, register: register, setValue: setValue, t: t };
36
+ return tslib_1.__assign({ field: field }, form);
37
+ }, [t, form]);
38
+ }
39
+ exports.useForm = useForm;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Head = void 0;
4
+ var head_1 = require("next/head");
5
+ Object.defineProperty(exports, "Head", { enumerable: true, get: function () { return __importDefault(head_1).default; } });
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./Head"), exports);
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ /// <reference types="@koine/next/typings" />
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useDateFormat = exports.translationAsOptions = exports.useT = exports.T = void 0;
5
+ var tslib_1 = require("tslib");
6
+ /* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */
7
+ /**
8
+ * @file
9
+ *
10
+ * About the typescript support for translation strings @see:
11
+ * - https://github.com/vinissimus/next-translate/issues/721
12
+ */
13
+ var react_1 = require("react");
14
+ var router_1 = require("next/router");
15
+ var format_1 = tslib_1.__importDefault(require("date-fns/format"));
16
+ var useTranslation_1 = tslib_1.__importDefault(require("next-translate/useTranslation"));
17
+ var react_2 = require("@koine/react");
18
+ var Trans_1 = require("next-translate/Trans");
19
+ Object.defineProperty(exports, "T", { enumerable: true, get: function () { return tslib_1.__importDefault(Trans_1).default; } });
20
+ /**
21
+ * FIXME: the use of `useMemo` is a hopefully-temporary solution to fix the FOUC
22
+ * problem of untranslated text during page transitions
23
+ *
24
+ * @see https://github.com/vinissimus/next-translate/issues/513#issuecomment-779826418
25
+ */
26
+ function useT(namespace) {
27
+ var t = (0, useTranslation_1.default)().t;
28
+ // const typedT = <
29
+ // // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint
30
+ // R extends unknown = string,
31
+ // // Q extends TranslationQuery = TranslationQuery
32
+ // // O extends TranslationOptions = TranslationOptions
33
+ // >(
34
+ // s: N extends TranslateNamespace
35
+ // ? Paths<Koine.NextTranslations[N]> | AllPaths
36
+ // : AllPaths,
37
+ // q?: TranslationQuery,
38
+ // o?: TranslationOptions
39
+ // ) =>
40
+ // // eslint-disable-next-line
41
+ // t.call(
42
+ // null,
43
+ // namespace ? `${namespace}:${s}` : s,
44
+ // q === "obj" ? null : q,
45
+ // q === "obj" || o === "obj" ? { returnObjects: true } : o
46
+ // // ) as R extends (undefined | never | unknown) ? TranslateReturn<TranslationQuery, TranslationOptions> : R;
47
+ // ) as R;
48
+ // return typedT;
49
+ var tMemoized = (0, react_1.useMemo)(function () {
50
+ return function (s, q, o) {
51
+ return t(namespace ? "".concat(namespace, ":").concat(s) : s, q === "obj" ? null : q, q === "obj" || o === "obj" ? { returnObjects: true } : o
52
+ // ) as R extends (undefined | never | unknown) ? TranslateReturn<TranslationQuery, TranslationOptions> : R;
53
+ );
54
+ };
55
+ }, [t, namespace]);
56
+ // return tMemoized as Translate<N>;
57
+ return tMemoized;
58
+ }
59
+ exports.useT = useT;
60
+ function translationAsOptions(t, i18nKey) {
61
+ var dictionary = t(i18nKey, undefined, {
62
+ returnObjects: true,
63
+ });
64
+ return Object.keys(dictionary).map(function (key) { return ({
65
+ value: key,
66
+ label: dictionary[key],
67
+ }); });
68
+ }
69
+ exports.translationAsOptions = translationAsOptions;
70
+ /**
71
+ * Automatically returns the `date-fns/format` function with the right locale
72
+ * passed as option (grabbed from next router value).
73
+ */
74
+ var useDateFormat = function () {
75
+ var _a = (0, react_1.useState)(function () {
76
+ return function () {
77
+ var args = [];
78
+ for (var _i = 0; _i < arguments.length; _i++) {
79
+ args[_i] = arguments[_i];
80
+ }
81
+ return format_1.default.apply(void 0, args);
82
+ };
83
+ }), formatter = _a[0], setFormatter = _a[1];
84
+ var router = (0, router_1.useRouter)();
85
+ var locale = (0, react_2.useDateLocale)(router.locale);
86
+ (0, react_1.useEffect)(function () {
87
+ if (locale) {
88
+ var newFormatter_1 = function (date, _format, options) { return (0, format_1.default)(date, _format, tslib_1.__assign(tslib_1.__assign({}, (options || {})), { locale: locale })); };
89
+ setFormatter(function () {
90
+ return function () {
91
+ var args = [];
92
+ for (var _i = 0; _i < arguments.length; _i++) {
93
+ args[_i] = arguments[_i];
94
+ }
95
+ return newFormatter_1.apply(void 0, args);
96
+ };
97
+ });
98
+ }
99
+ }, [locale]);
100
+ return formatter;
101
+ };
102
+ exports.useDateFormat = useDateFormat;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./I18n"), exports);
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getNextImgProps = exports.NextImgSmart = exports.NextImg = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var react_1 = require("react");
7
+ var image_1 = tslib_1.__importDefault(require("next/image"));
8
+ exports.NextImg = image_1.default;
9
+ var NextImgSmart = function (props) {
10
+ var _a = (0, react_1.useState)(false), $loaded = _a[0], setLoaded = _a[1];
11
+ var _b = (0, react_1.useState)(false), $error = _b[0], setError = _b[1];
12
+ var _c = getNextImgProps(props), nextImgProps = _c.nextImgProps, restProps = _c.restProps;
13
+ var Wrap = restProps.Wrap;
14
+ return nextImgProps.priority ? ((0, jsx_runtime_1.jsx)(image_1.default, tslib_1.__assign({}, nextImgProps))) : ((0, jsx_runtime_1.jsx)(Wrap, tslib_1.__assign({}, restProps, { "$loaded": $loaded, "$error": $error }, { children: (0, jsx_runtime_1.jsx)(image_1.default, tslib_1.__assign({}, nextImgProps, { onLoadingComplete: function () { return setLoaded(true); }, onError: function () { return setError(true); } })) })));
15
+ };
16
+ exports.NextImgSmart = NextImgSmart;
17
+ function getNextImgProps(_a) {
18
+ var src = _a.src, alt = _a.alt, layout = _a.layout, blurDataURL = _a.blurDataURL, width = _a.width, height = _a.height, priority = _a.priority, objectFit = _a.objectFit, objectPosition = _a.objectPosition, restProps = tslib_1.__rest(_a, ["src", "alt", "layout", "blurDataURL", "width", "height", "priority", "objectFit", "objectPosition"]);
19
+ var nextImgProps = {
20
+ src: src,
21
+ alt: alt,
22
+ layout: layout,
23
+ blurDataURL: blurDataURL,
24
+ width: width,
25
+ height: height,
26
+ priority: priority,
27
+ objectFit: objectFit,
28
+ objectPosition: objectPosition,
29
+ };
30
+ return {
31
+ nextImgProps: nextImgProps,
32
+ restProps: restProps,
33
+ };
34
+ }
35
+ exports.getNextImgProps = getNextImgProps;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./Img"), exports);
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Link = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var react_1 = require("react");
7
+ var link_1 = tslib_1.__importDefault(require("next/link"));
8
+ /**
9
+ * @see https://next.js.org/docs/api-reference/next/link
10
+ */
11
+ exports.Link = (0, react_1.forwardRef)(function Link(_a, ref) {
12
+ var href = _a.href, prefetch = _a.prefetch, replace = _a.replace, scroll = _a.scroll, shallow = _a.shallow, locale = _a.locale, _b = _a.Link, Link = _b === void 0 ? "span" : _b, props = tslib_1.__rest(_a, ["href", "prefetch", "replace", "scroll", "shallow", "locale", "Link"]);
13
+ return ((0, jsx_runtime_1.jsx)(link_1.default, tslib_1.__assign({ href: href, replace: replace, scroll: scroll, shallow: shallow, locale: locale, passHref: true }, { children: (0, jsx_runtime_1.jsx)(Link, tslib_1.__assign({ ref: ref }, props)) })));
14
+ });
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./Link"), exports);
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NextProgress = void 0;
4
+ var jsx_runtime_1 = require("react/jsx-runtime");
5
+ var react_1 = require("react");
6
+ var router_1 = require("next/router");
7
+ var NextProgress = function (_a) {
8
+ var _b = _a.startAt, startAt = _b === void 0 ? 0.3 : _b, _c = _a.showOnShallow, showOnShallow = _c === void 0 ? true : _c, _d = _a.stopDelayMs, stopDelayMs = _d === void 0 ? 200 : _d, _e = _a.Overlay, Overlay = _e === void 0 ? "div" : _e;
9
+ var events = (0, router_1.useRouter)().events;
10
+ // const [progress, setProgress] = useState(0);
11
+ var _f = (0, react_1.useState)(false), running = _f[0], setRunning = _f[1];
12
+ var timer = (0, react_1.useRef)(null);
13
+ var routeChangeStart = (0, react_1.useCallback)(function (_, _a) {
14
+ var shallow = _a.shallow;
15
+ if (!shallow || showOnShallow) {
16
+ // setProgress(startAt);
17
+ setRunning(true);
18
+ }
19
+ }, [showOnShallow]);
20
+ var routeChangeEnd = (0, react_1.useCallback)(function (_, _a) {
21
+ var shallow = _a.shallow;
22
+ if (!shallow || showOnShallow) {
23
+ if (timer.current) {
24
+ clearTimeout(timer.current);
25
+ }
26
+ timer.current = setTimeout(function () {
27
+ // setProgress(100);
28
+ setRunning(false);
29
+ }, stopDelayMs);
30
+ }
31
+ }, [showOnShallow, stopDelayMs, timer]);
32
+ (0, react_1.useEffect)(function () {
33
+ events.on("routeChangeStart", routeChangeStart);
34
+ events.on("routeChangeComplete", routeChangeEnd);
35
+ events.on("routeChangeError", routeChangeEnd);
36
+ return function () {
37
+ events.off("routeChangeStart", routeChangeStart);
38
+ events.off("routeChangeComplete", routeChangeEnd);
39
+ events.off("routeChangeError", routeChangeEnd);
40
+ };
41
+ }, [events, routeChangeStart, routeChangeEnd]);
42
+ return (0, jsx_runtime_1.jsx)(Overlay, { running: running });
43
+ };
44
+ exports.NextProgress = NextProgress;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NextProgress = void 0;
4
+ var NextProgress_1 = require("./NextProgress");
5
+ Object.defineProperty(exports, "NextProgress", { enumerable: true, get: function () { return NextProgress_1.NextProgress; } });
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Seo = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var react_1 = require("react");
7
+ var head_1 = tslib_1.__importDefault(require("next/head"));
8
+ var helpers_1 = require("./helpers");
9
+ var _Seo = function (props) {
10
+ return (0, jsx_runtime_1.jsx)(head_1.default, { children: (0, helpers_1.buildTags)(props) });
11
+ };
12
+ exports.Seo = (0, react_1.memo)(_Seo);
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SeoDefaults = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var react_1 = require("react");
7
+ var head_1 = tslib_1.__importDefault(require("next/head"));
8
+ // import { useRouter } from "next/router";
9
+ // import { getSiteUrl } from "../utils";
10
+ var helpers_1 = require("./helpers");
11
+ var _SeoDefaults = function (props) {
12
+ // const router = useRouter();
13
+ // props.openGraph.url = getSiteUrl(router.asPath);
14
+ return (0, jsx_runtime_1.jsx)(head_1.default, { children: (0, helpers_1.buildTags)(props) });
15
+ };
16
+ exports.SeoDefaults = (0, react_1.memo)(_SeoDefaults);