@redneckz/wildless-cms-uni-blocks 0.9.15 → 0.9.16
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/bundle/bundle.umd.js +14 -12
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/hooks/useLink.d.ts +5 -1
- package/bundle/services/sitemap/SitemapData.d.ts +2 -2
- package/bundle/ui-kit/SearchDialog/SearchDialog.d.ts +2 -2
- package/bundle/ui-kit/Sitemap/Sitemap.d.ts +2 -2
- package/bundle/utils/adjustHref.d.ts +1 -1
- package/dist/components/Calculator/useDepositCalculatorParams.js +1 -1
- package/dist/components/Calculator/useDepositCalculatorParams.js.map +1 -1
- package/dist/components/Footer/TextInformationLink.js +1 -1
- package/dist/components/Footer/TextInformationLink.js.map +1 -1
- package/dist/hooks/useLink.d.ts +5 -1
- package/dist/hooks/useLink.js +3 -2
- package/dist/hooks/useLink.js.map +1 -1
- package/dist/services/sitemap/SitemapData.d.ts +2 -2
- package/dist/ui-kit/SearchDialog/SearchDialog.d.ts +2 -2
- package/dist/ui-kit/SearchDialog/SearchDialog.js.map +1 -1
- package/dist/ui-kit/Sitemap/Sitemap.d.ts +2 -2
- package/dist/ui-kit/Sitemap/Sitemap.js +3 -4
- package/dist/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/dist/ui-kit/TopItem/TopItem.js +1 -1
- package/dist/ui-kit/TopItem/TopItem.js.map +1 -1
- package/dist/utils/adjustHref.d.ts +1 -1
- package/dist/utils/adjustHref.js +4 -3
- package/dist/utils/adjustHref.js.map +1 -1
- package/lib/components/Calculator/useDepositCalculatorParams.js +1 -1
- package/lib/components/Calculator/useDepositCalculatorParams.js.map +1 -1
- package/lib/components/Footer/TextInformationLink.js +1 -1
- package/lib/components/Footer/TextInformationLink.js.map +1 -1
- package/lib/hooks/useLink.d.ts +5 -1
- package/lib/hooks/useLink.js +3 -2
- package/lib/hooks/useLink.js.map +1 -1
- package/lib/services/sitemap/SitemapData.d.ts +2 -2
- package/lib/ui-kit/SearchDialog/SearchDialog.d.ts +2 -2
- package/lib/ui-kit/SearchDialog/SearchDialog.js.map +1 -1
- package/lib/ui-kit/Sitemap/Sitemap.d.ts +2 -2
- package/lib/ui-kit/Sitemap/Sitemap.js +3 -4
- package/lib/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/lib/ui-kit/TopItem/TopItem.js +1 -1
- package/lib/ui-kit/TopItem/TopItem.js.map +1 -1
- package/lib/utils/adjustHref.d.ts +1 -1
- package/lib/utils/adjustHref.js +4 -3
- package/lib/utils/adjustHref.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +12 -10
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/hooks/useLink.d.ts +5 -1
- package/mobile/bundle/services/sitemap/SitemapData.d.ts +2 -2
- package/mobile/bundle/ui-kit/SearchDialog/SearchDialog.d.ts +2 -2
- package/mobile/bundle/ui-kit/Sitemap/Sitemap.d.ts +2 -2
- package/mobile/bundle/utils/adjustHref.d.ts +1 -1
- package/mobile/dist/components/Calculator/useDepositCalculatorParams.js +1 -1
- package/mobile/dist/components/Calculator/useDepositCalculatorParams.js.map +1 -1
- package/mobile/dist/components/Footer/TextInformationLink.js +1 -1
- package/mobile/dist/components/Footer/TextInformationLink.js.map +1 -1
- package/mobile/dist/hooks/useLink.d.ts +5 -1
- package/mobile/dist/hooks/useLink.js +3 -2
- package/mobile/dist/hooks/useLink.js.map +1 -1
- package/mobile/dist/services/sitemap/SitemapData.d.ts +2 -2
- package/mobile/dist/ui-kit/SearchDialog/SearchDialog.d.ts +2 -2
- package/mobile/dist/ui-kit/SearchDialog/SearchDialog.js.map +1 -1
- package/mobile/dist/ui-kit/Sitemap/Sitemap.d.ts +2 -2
- package/mobile/dist/ui-kit/Sitemap/Sitemap.js +3 -4
- package/mobile/dist/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/mobile/dist/ui-kit/TopItem/TopItem.js +1 -1
- package/mobile/dist/ui-kit/TopItem/TopItem.js.map +1 -1
- package/mobile/dist/utils/adjustHref.d.ts +1 -1
- package/mobile/dist/utils/adjustHref.js +4 -3
- package/mobile/dist/utils/adjustHref.js.map +1 -1
- package/mobile/lib/components/Calculator/useDepositCalculatorParams.js +1 -1
- package/mobile/lib/components/Calculator/useDepositCalculatorParams.js.map +1 -1
- package/mobile/lib/components/Footer/TextInformationLink.js +1 -1
- package/mobile/lib/components/Footer/TextInformationLink.js.map +1 -1
- package/mobile/lib/hooks/useLink.d.ts +5 -1
- package/mobile/lib/hooks/useLink.js +3 -2
- package/mobile/lib/hooks/useLink.js.map +1 -1
- package/mobile/lib/services/sitemap/SitemapData.d.ts +2 -2
- package/mobile/lib/ui-kit/SearchDialog/SearchDialog.d.ts +2 -2
- package/mobile/lib/ui-kit/SearchDialog/SearchDialog.js.map +1 -1
- package/mobile/lib/ui-kit/Sitemap/Sitemap.d.ts +2 -2
- package/mobile/lib/ui-kit/Sitemap/Sitemap.js +3 -4
- package/mobile/lib/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/mobile/lib/ui-kit/TopItem/TopItem.js +1 -1
- package/mobile/lib/ui-kit/TopItem/TopItem.js.map +1 -1
- package/mobile/lib/utils/adjustHref.d.ts +1 -1
- package/mobile/lib/utils/adjustHref.js +4 -3
- package/mobile/lib/utils/adjustHref.js.map +1 -1
- package/mobile/src/components/Calculator/useDepositCalculatorParams.ts +1 -1
- package/mobile/src/components/Footer/TextInformationLink.tsx +1 -1
- package/mobile/src/hooks/useLink.ts +9 -2
- package/mobile/src/services/sitemap/SitemapData.ts +2 -2
- package/mobile/src/ui-kit/SearchDialog/SearchDialog.tsx +5 -5
- package/mobile/src/ui-kit/Sitemap/Sitemap.tsx +6 -7
- package/mobile/src/ui-kit/TopItem/TopItem.tsx +1 -1
- package/mobile/src/utils/adjustHref.ts +16 -11
- package/package.json +1 -1
- package/src/components/Calculator/useDepositCalculatorParams.ts +1 -1
- package/src/components/Footer/TextInformationLink.tsx +1 -1
- package/src/hooks/useLink.ts +9 -2
- package/src/services/sitemap/SitemapData.ts +2 -2
- package/src/ui-kit/SearchDialog/SearchDialog.tsx +5 -5
- package/src/ui-kit/Sitemap/Sitemap.tsx +6 -7
- package/src/ui-kit/TopItem/TopItem.tsx +1 -1
- package/src/utils/adjustHref.ts +16 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDepositCalculatorParams.js","sourceRoot":"","sources":["../../../src/components/Calculator/useDepositCalculatorParams.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useDepositCalculatorParams.js","sourceRoot":"","sources":["../../../src/components/Calculator/useDepositCalculatorParams.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
|
|
|
2
2
|
import { JSX } from '@redneckz/uni-jsx';
|
|
3
3
|
import { useLink } from '../../hooks/useLink.js';
|
|
4
4
|
export const TextInformationLink = JSX(({ className = '', index, ...rest }) => {
|
|
5
|
-
const link = useLink();
|
|
5
|
+
const link = useLink({ isRemote: true });
|
|
6
6
|
const { href, target, text, onClick } = link(rest);
|
|
7
7
|
return (_jsx("a", { className: `text-xs-light text-secondary-text visited:text-secondary-text hover:text-primary-main inline-block no-underline max-w-[292px] ${className}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` }));
|
|
8
8
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInformationLink.js","sourceRoot":"","sources":["../../../src/components/Footer/TextInformationLink.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAS9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CACpC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACrC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"TextInformationLink.js","sourceRoot":"","sources":["../../../src/components/Footer/TextInformationLink.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAS9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CACpC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACrC,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAEnD,OAAO,CACL,YACE,SAAS,EAAE,iIAAiI,SAAS,EAAE,EACvJ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAEf,IAAI,IAAI,YAAY,KAAK,EAAE,GAC1B,CACL,CAAC;AACJ,CAAC,CACF,CAAC"}
|
|
@@ -3,5 +3,9 @@ import type { PreventableEvent } from '../ui-kit/PreventableEvent';
|
|
|
3
3
|
interface Clickable {
|
|
4
4
|
onClick(ev?: PreventableEvent): void;
|
|
5
5
|
}
|
|
6
|
-
|
|
6
|
+
interface UseLinkParams {
|
|
7
|
+
isRemote?: boolean;
|
|
8
|
+
basePath?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function useLink(params?: UseLinkParams): <L extends Partial<LinkProps & Clickable>>(props: L) => L & Clickable;
|
|
7
11
|
export {};
|
|
@@ -3,12 +3,13 @@ import { adjustHref } from '../utils/adjustHref.js';
|
|
|
3
3
|
import { isLocalURL } from '../utils/url.js';
|
|
4
4
|
import { handlerDecorator } from './handlerDecorator.js';
|
|
5
5
|
import { useRouter } from './useRouter.js';
|
|
6
|
-
export function useLink(
|
|
6
|
+
export function useLink(params = {}) {
|
|
7
|
+
const { isRemote, basePath } = params;
|
|
7
8
|
const router = useRouter();
|
|
8
9
|
const { close } = useDialog();
|
|
9
10
|
return (props) => ({
|
|
10
11
|
...props,
|
|
11
|
-
href: isRemote ? props.href : adjustHref(router)(props.href),
|
|
12
|
+
href: isRemote ? props.href : adjustHref(router)(props.href, basePath),
|
|
12
13
|
'aria-label': props.text,
|
|
13
14
|
onClick: handlerDecorator(handleHref(props), props),
|
|
14
15
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLink.js","sourceRoot":"","sources":["../../src/hooks/useLink.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"useLink.js","sourceRoot":"","sources":["../../src/hooks/useLink.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAWxC,MAAM,UAAU,OAAO,CAAC,SAAwB,EAAE;IAChD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,CAAC;IAE9B,OAAO,CAA2C,KAAQ,EAAiB,EAAE,CAAC,CAAC;QAC7E,GAAG,KAAK;QACR,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC;QACtE,YAAY,EAAE,KAAK,CAAC,IAAI;QACxB,OAAO,EAAE,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;KACpD,CAAC,CAAC;IAEH,SAAS,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAkC;QAC3E,OAAO,CAAC,EAAqB,EAAE,EAAE;YAC/B,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;YAEvB,IAAI,CAAC,IAAI,IAAI,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE;gBAClD,kBAAkB;gBAClB,OAAO;aACR;YAED,KAAK,EAAE,CAAC;YAER,iBAAiB;YACjB,EAAE,EAAE,cAAc,EAAE,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -5,7 +5,7 @@ import type { IconProps, Picture } from '../../model/Picture';
|
|
|
5
5
|
* @title Ссылка
|
|
6
6
|
* @required ["text", "href"]
|
|
7
7
|
*/
|
|
8
|
-
export interface
|
|
8
|
+
export interface TopMenuItemProps extends LinkProps {
|
|
9
9
|
/** @hidden */
|
|
10
10
|
items?: LinkProps[];
|
|
11
11
|
}
|
|
@@ -23,7 +23,7 @@ export interface DispositionItem extends LinkProps {
|
|
|
23
23
|
*/
|
|
24
24
|
export declare type ForeignOffice = LinkProps & IconProps;
|
|
25
25
|
export interface SitemapData {
|
|
26
|
-
topItems?:
|
|
26
|
+
topItems?: TopMenuItemProps[];
|
|
27
27
|
dispositions?: DispositionItem[];
|
|
28
28
|
logo?: LogoType;
|
|
29
29
|
foreignOffices?: ForeignOffice[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TopMenuItemProps } from '../../services/sitemap/SitemapData';
|
|
2
2
|
export interface SearchDialogProps {
|
|
3
|
-
topItems?:
|
|
3
|
+
topItems?: TopMenuItemProps[];
|
|
4
4
|
}
|
|
5
5
|
export declare const SEARCH_DIALOG_ID = "search";
|
|
6
6
|
export declare const SearchDialog: import("@redneckz/uni-jsx").UNIComponent<SearchDialogProps, any, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchDialog.js","sourceRoot":"","sources":["../../../src/ui-kit/SearchDialog/SearchDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,SAAS,EAAqB,MAAM,iCAAiC,CAAC;AAE/E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAClE,MAAM,WAAW,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAErD,MAAM,YAAY,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAAC;QACjD,YAAY;QACZ,YAAY,EAAE,WAAW,CAAC,OAAO;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,EAC5D,CAAC,QAAQ,EAAE,YAAY,CAAC,CACzB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO;IAEtE,OAAO,CACL,KAAC,MAAM,OACD,WAAW,EACf,IAAI,EAAE,KAAC,WAAW,IAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,KAAM,gBAAgB,GAAI,YAE7E,KAAC,OAAO,IAAC,QAAQ,EAAE,WAAW,GAAI,GAC3B,CACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,8BAA8B,GAClC,CAAC,
|
|
1
|
+
{"version":3,"file":"SearchDialog.js","sourceRoot":"","sources":["../../../src/ui-kit/SearchDialog/SearchDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,SAAS,EAAqB,MAAM,iCAAiC,CAAC;AAE/E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAClE,MAAM,WAAW,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAErD,MAAM,YAAY,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAAC;QACjD,YAAY;QACZ,YAAY,EAAE,WAAW,CAAC,OAAO;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,EAC5D,CAAC,QAAQ,EAAE,YAAY,CAAC,CACzB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO;IAEtE,OAAO,CACL,KAAC,MAAM,OACD,WAAW,EACf,IAAI,EAAE,KAAC,WAAW,IAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,KAAM,gBAAgB,GAAI,YAE7E,KAAC,OAAO,IAAC,QAAQ,EAAE,WAAW,GAAI,GAC3B,CACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,8BAA8B,GAClC,CAAC,QAAwC,EAAE,EAAE,CAC7C,CAAC,YAA6C,EAAsB,EAAE,CACpE,QAAQ,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM;IACtC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,GAAG,CAAC;QACJ,KAAK,EAAE,kBAAkB,EAAE,GAAG,CAC5B,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAa,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAC3E;KACF,CAAC,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;AAEX,OAAO;AACP,SAAS,gBAAgB,CAAC,QAA4B;IACpD,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE;QAC7D,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,QAAQ,EAAE,CAAC;KACpB;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TopMenuItemProps } from '../../services/sitemap/SitemapData';
|
|
2
2
|
export interface SitemapProps {
|
|
3
3
|
className?: string;
|
|
4
|
-
topItems?:
|
|
4
|
+
topItems?: TopMenuItemProps[];
|
|
5
5
|
}
|
|
6
6
|
export declare const Sitemap: import("@redneckz/uni-jsx").UNIComponent<SitemapProps, any, any>;
|
|
@@ -3,9 +3,8 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
3
3
|
import { useLink } from '../../hooks/useLink.js';
|
|
4
4
|
import { projectSettings } from '../../ProjectSettings.js';
|
|
5
5
|
import { style } from '../../utils/style.js';
|
|
6
|
-
import { joinPath } from '../../utils/url.js';
|
|
7
6
|
export const Sitemap = JSX(({ className, topItems }) => {
|
|
8
|
-
const link = useLink(true);
|
|
7
|
+
const link = useLink({ isRemote: true });
|
|
9
8
|
return (_jsx("div", { className: style('flex items-start justify-between', className), children: topItems?.map(link).map(renderColumn) }));
|
|
10
9
|
});
|
|
11
10
|
const renderColumn = (menuItem, index) => {
|
|
@@ -14,8 +13,8 @@ const renderColumn = (menuItem, index) => {
|
|
|
14
13
|
};
|
|
15
14
|
const ColumnItem = JSX(({ text, index, basePath, ...rest }) => {
|
|
16
15
|
const isAnotherPortal = projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
|
|
17
|
-
const link = useLink(isAnotherPortal);
|
|
16
|
+
const link = useLink({ isRemote: isAnotherPortal });
|
|
18
17
|
const { href, target, onClick } = link(rest);
|
|
19
|
-
return (_jsx("a", { className: style('text-l-light text-secondary-text hover:text-primary-main no-underline', 'overflow-x-hidden overflow-ellipsis whitespace-nowrap'), href:
|
|
18
|
+
return (_jsx("a", { className: style('text-l-light text-secondary-text hover:text-primary-main no-underline', 'overflow-x-hidden overflow-ellipsis whitespace-nowrap'), href: href, target: target || '_self', onClick: onClick, children: text || `Раздел ${index}` }));
|
|
20
19
|
});
|
|
21
20
|
//# sourceMappingURL=Sitemap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sitemap.js","sourceRoot":"","sources":["../../../src/ui-kit/Sitemap/Sitemap.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Sitemap.js","sourceRoot":"","sources":["../../../src/ui-kit/Sitemap/Sitemap.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAO1C,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAe,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACnE,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,OAAO,CACL,cAAK,SAAS,EAAE,KAAK,CAAC,kCAAkC,EAAE,SAAS,CAAC,YACjE,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,GAClC,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,QAAoD,EAAE,KAAa,EAAE,EAAE;IAC3F,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAExD,OAAO,CACL,eAAyB,SAAS,EAAC,6BAA6B,aAC9D,YACE,SAAS,EAAC,yEAAyE,EACnF,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,IAAI,OAAO,EACzB,OAAO,EAAE,OAAO,YAEf,IAAI,IAAI,UAAU,KAAK,EAAE,GACxB,EACH,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACpB,KAAC,UAAU,OAAqB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAA1C,MAAM,CAAC,CAAC,CAAC,CAAqC,CAChE,CAAC,KAXM,MAAM,CAAC,KAAK,CAAC,CAYjB,CACP,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,UAAU,GAAG,GAAG,CAAkB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAC7E,MAAM,eAAe,GACnB,eAAe,CAAC,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAElG,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;IACpD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7C,OAAO,CACL,YACE,SAAS,EAAE,KAAK,CACd,uEAAuE,EACvE,uDAAuD,CACxD,EACD,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,IAAI,OAAO,EACzB,OAAO,EAAE,OAAO,YAEf,IAAI,IAAI,UAAU,KAAK,EAAE,GACxB,CACL,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
3
3
|
import { useLink } from '../../hooks/useLink.js';
|
|
4
4
|
import { style } from '../../utils/style.js';
|
|
5
5
|
export const TopItem = JSX(({ className = '', active, flat, children, ...rest }) => {
|
|
6
|
-
const link = useLink(true);
|
|
6
|
+
const link = useLink({ isRemote: true });
|
|
7
7
|
const { href, target, text, onClick } = link(rest);
|
|
8
8
|
return (_jsx("a", { className: style(getLinkStyle(active, flat), className), href: href, target: target, onClick: onClick, rel: "noopener noreferrer", "aria-label": text, children: _jsx("span", { className: getTextStyle(active, flat), children: text || children }) }));
|
|
9
9
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TopItem.js","sourceRoot":"","sources":["../../../src/ui-kit/TopItem/TopItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAa1C,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAe,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAC/F,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"TopItem.js","sourceRoot":"","sources":["../../../src/ui-kit/TopItem/TopItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAa1C,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAe,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAC/F,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAEnD,OAAO,CACL,YACE,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,EACvD,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,GAAG,EAAC,qBAAqB,gBACb,IAAI,YAEhB,eAAM,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,YAAG,IAAI,IAAI,QAAQ,GAAQ,GACpE,CACL,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,MAAM,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE,CACpD,KAAK,CACH,0EAA0E,EAC1E,MAAM;IACJ,CAAC,CAAC,oEAAoE;IACtE,CAAC,CAAC,oBAAoB,EACxB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CACxB,CAAC;AAEJ,MAAM,YAAY,GAAG,CAAC,MAAM,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE,CACpD,KAAK,CACH,wBAAwB,EACxB,MAAM;IACJ,CAAC,CAAC,mBAAmB;IACrB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,qBAAqB,EAAE,yBAAyB,CAAC,EACxF,mFAAmF,CACpF,CAAC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { projectSettings } from '../ProjectSettings.js';
|
|
2
2
|
import { dirname } from './dirname.js';
|
|
3
3
|
import { isURL, joinPath } from './url.js';
|
|
4
|
-
export const adjustHref = (router) => (href) => {
|
|
5
|
-
if (!href || isURL(href) || (
|
|
4
|
+
export const adjustHref = (router) => (href, basePath = projectSettings.BASE_PATH) => {
|
|
5
|
+
if (!href || isURL(href) || hasPrefix(href, projectSettings.CDN)) {
|
|
6
6
|
return href;
|
|
7
7
|
}
|
|
8
8
|
const isRelativeToBase = href.startsWith('/');
|
|
9
|
-
return joinPath(
|
|
9
|
+
return joinPath(hasPrefix(href, basePath) ? '' : basePath, isRelativeToBase ? '/' : dirname(router.pathname), href);
|
|
10
10
|
};
|
|
11
|
+
const hasPrefix = (href, prefix) => prefix && href && href.startsWith(prefix);
|
|
11
12
|
//# sourceMappingURL=adjustHref.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adjustHref.js","sourceRoot":"","sources":["../../src/utils/adjustHref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"adjustHref.js","sourceRoot":"","sources":["../../src/utils/adjustHref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GACrB,CAAC,MAA4B,EAAE,EAAE,CACjC,CAAC,IAAwB,EAAE,QAAQ,GAAG,eAAe,CAAC,SAAS,EAAE,EAAE;IACjE,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE;QAChE,OAAO,IAAI,CAAC;KACb;IAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAE9C,OAAO,QAAQ,CACb,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EACzC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EACjD,IAAI,CACL,CAAC;AACJ,CAAC,CAAC;AAEJ,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,MAA0B,EAAE,EAAE,CAC7D,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -112,4 +112,4 @@ const checkRowByParam = ({ row, userInputParams, paramKey, isExclude }: CheckRow
|
|
|
112
112
|
isExclude || userInputParams[paramKey] === row[paramKey];
|
|
113
113
|
|
|
114
114
|
const getMiddleMonth = (minMonths: number, maxMonths: number): number =>
|
|
115
|
-
Math.round((maxMonths - minMonths) / 2);
|
|
115
|
+
minMonths + Math.round((maxMonths - minMonths) / 2);
|
|
@@ -10,7 +10,7 @@ interface TextInformationLinkProps extends LinkProps {
|
|
|
10
10
|
|
|
11
11
|
export const TextInformationLink = JSX<Partial<TextInformationLinkProps>>(
|
|
12
12
|
({ className = '', index, ...rest }) => {
|
|
13
|
-
const link = useLink();
|
|
13
|
+
const link = useLink({ isRemote: true });
|
|
14
14
|
const { href, target, text, onClick } = link(rest);
|
|
15
15
|
|
|
16
16
|
return (
|
|
@@ -10,13 +10,20 @@ interface Clickable {
|
|
|
10
10
|
onClick(ev?: PreventableEvent): void;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
interface UseLinkParams {
|
|
14
|
+
isRemote?: boolean;
|
|
15
|
+
basePath?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function useLink(params: UseLinkParams = {}) {
|
|
19
|
+
const { isRemote, basePath } = params;
|
|
20
|
+
|
|
14
21
|
const router = useRouter();
|
|
15
22
|
const { close } = useDialog();
|
|
16
23
|
|
|
17
24
|
return <L extends Partial<LinkProps & Clickable>>(props: L): L & Clickable => ({
|
|
18
25
|
...props,
|
|
19
|
-
href: isRemote ? props.href : adjustHref(router)(props.href),
|
|
26
|
+
href: isRemote ? props.href : adjustHref(router)(props.href, basePath),
|
|
20
27
|
'aria-label': props.text,
|
|
21
28
|
onClick: handlerDecorator(handleHref(props), props),
|
|
22
29
|
});
|
|
@@ -6,7 +6,7 @@ import type { IconProps, Picture } from '../../model/Picture';
|
|
|
6
6
|
* @title Ссылка
|
|
7
7
|
* @required ["text", "href"]
|
|
8
8
|
*/
|
|
9
|
-
export interface
|
|
9
|
+
export interface TopMenuItemProps extends LinkProps {
|
|
10
10
|
/** @hidden */
|
|
11
11
|
items?: LinkProps[];
|
|
12
12
|
}
|
|
@@ -27,7 +27,7 @@ export interface DispositionItem extends LinkProps {
|
|
|
27
27
|
export type ForeignOffice = LinkProps & IconProps;
|
|
28
28
|
|
|
29
29
|
export interface SitemapData {
|
|
30
|
-
topItems?:
|
|
30
|
+
topItems?: TopMenuItemProps[];
|
|
31
31
|
dispositions?: DispositionItem[];
|
|
32
32
|
logo?: LogoType;
|
|
33
33
|
foreignOffices?: ForeignOffice[];
|
|
@@ -2,7 +2,7 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
2
2
|
import { useEffect, useMemo } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
3
|
import type { LinkProps } from '../../model/LinkProps';
|
|
4
4
|
import { useSearch, type SearchResult } from '../../services/search/useSearch';
|
|
5
|
-
import type {
|
|
5
|
+
import type { TopMenuItemProps } from '../../services/sitemap/SitemapData';
|
|
6
6
|
import { joinPath } from '../../utils/url';
|
|
7
7
|
import { zip } from '../../utils/zip';
|
|
8
8
|
import { Dialog } from '../Dialog/Dialog';
|
|
@@ -11,7 +11,7 @@ import { Sitemap } from '../Sitemap/Sitemap';
|
|
|
11
11
|
import { SearchInput } from './SearchInput';
|
|
12
12
|
|
|
13
13
|
export interface SearchDialogProps {
|
|
14
|
-
topItems?:
|
|
14
|
+
topItems?: TopMenuItemProps[];
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export const SEARCH_DIALOG_ID = 'search';
|
|
@@ -44,8 +44,8 @@ export const SearchDialog = JSX<SearchDialogProps>(({ topItems }) => {
|
|
|
44
44
|
});
|
|
45
45
|
|
|
46
46
|
const combineTopItemsAndSearchResult =
|
|
47
|
-
(topItems:
|
|
48
|
-
(searchResult: SearchResult | null | undefined):
|
|
47
|
+
(topItems: TopMenuItemProps[] | undefined) =>
|
|
48
|
+
(searchResult: SearchResult | null | undefined): TopMenuItemProps[] =>
|
|
49
49
|
topItems?.length && searchResult?.length
|
|
50
50
|
? zip(topItems, searchResult).map(([_, portalSearchResult]) => ({
|
|
51
51
|
..._,
|
|
@@ -56,7 +56,7 @@ const combineTopItemsAndSearchResult =
|
|
|
56
56
|
: [];
|
|
57
57
|
|
|
58
58
|
// Temp
|
|
59
|
-
function printSearchItems(topItems:
|
|
59
|
+
function printSearchItems(topItems: TopMenuItemProps[]) {
|
|
60
60
|
for (const _ of topItems.filter(({ items }) => items?.length)) {
|
|
61
61
|
console.group(_.text);
|
|
62
62
|
console.table(_.items, ['text', 'href']);
|
|
@@ -2,17 +2,16 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
2
2
|
import { useLink } from '../../hooks/useLink';
|
|
3
3
|
import type { LinkProps } from '../../model/LinkProps';
|
|
4
4
|
import { projectSettings } from '../../ProjectSettings';
|
|
5
|
-
import type {
|
|
5
|
+
import type { TopMenuItemProps } from '../../services/sitemap/SitemapData';
|
|
6
6
|
import { style } from '../../utils/style';
|
|
7
|
-
import { joinPath } from '../../utils/url';
|
|
8
7
|
|
|
9
8
|
export interface SitemapProps {
|
|
10
9
|
className?: string;
|
|
11
|
-
topItems?:
|
|
10
|
+
topItems?: TopMenuItemProps[];
|
|
12
11
|
}
|
|
13
12
|
|
|
14
13
|
export const Sitemap = JSX<SitemapProps>(({ className, topItems }) => {
|
|
15
|
-
const link = useLink(true);
|
|
14
|
+
const link = useLink({ isRemote: true });
|
|
16
15
|
|
|
17
16
|
return (
|
|
18
17
|
<div className={style('flex items-start justify-between', className)}>
|
|
@@ -21,7 +20,7 @@ export const Sitemap = JSX<SitemapProps>(({ className, topItems }) => {
|
|
|
21
20
|
);
|
|
22
21
|
});
|
|
23
22
|
|
|
24
|
-
const renderColumn = (menuItem:
|
|
23
|
+
const renderColumn = (menuItem: TopMenuItemProps & { onClick: () => void }, index: number) => {
|
|
25
24
|
const { text, items, href, target, onClick } = menuItem;
|
|
26
25
|
|
|
27
26
|
return (
|
|
@@ -50,7 +49,7 @@ const ColumnItem = JSX<ColumnItemProps>(({ text, index, basePath, ...rest }) =>
|
|
|
50
49
|
const isAnotherPortal =
|
|
51
50
|
projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
|
|
52
51
|
|
|
53
|
-
const link = useLink(isAnotherPortal);
|
|
52
|
+
const link = useLink({ isRemote: isAnotherPortal });
|
|
54
53
|
const { href, target, onClick } = link(rest);
|
|
55
54
|
|
|
56
55
|
return (
|
|
@@ -59,7 +58,7 @@ const ColumnItem = JSX<ColumnItemProps>(({ text, index, basePath, ...rest }) =>
|
|
|
59
58
|
'text-l-light text-secondary-text hover:text-primary-main no-underline',
|
|
60
59
|
'overflow-x-hidden overflow-ellipsis whitespace-nowrap',
|
|
61
60
|
)}
|
|
62
|
-
href={
|
|
61
|
+
href={href}
|
|
63
62
|
target={target || '_self'}
|
|
64
63
|
onClick={onClick}
|
|
65
64
|
>
|
|
@@ -15,7 +15,7 @@ export interface TopItemProps extends TopItemContent {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export const TopItem = JSX<TopItemProps>(({ className = '', active, flat, children, ...rest }) => {
|
|
18
|
-
const link = useLink(true);
|
|
18
|
+
const link = useLink({ isRemote: true });
|
|
19
19
|
const { href, target, text, onClick } = link(rest);
|
|
20
20
|
|
|
21
21
|
return (
|
|
@@ -2,16 +2,21 @@ import { projectSettings } from '../ProjectSettings';
|
|
|
2
2
|
import { dirname } from './dirname';
|
|
3
3
|
import { isURL, joinPath } from './url';
|
|
4
4
|
|
|
5
|
-
export const adjustHref =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
export const adjustHref =
|
|
6
|
+
(router: { pathname: string }) =>
|
|
7
|
+
(href: string | undefined, basePath = projectSettings.BASE_PATH) => {
|
|
8
|
+
if (!href || isURL(href) || hasPrefix(href, projectSettings.CDN)) {
|
|
9
|
+
return href;
|
|
10
|
+
}
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
const isRelativeToBase = href.startsWith('/');
|
|
11
13
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
};
|
|
14
|
+
return joinPath(
|
|
15
|
+
hasPrefix(href, basePath) ? '' : basePath,
|
|
16
|
+
isRelativeToBase ? '/' : dirname(router.pathname),
|
|
17
|
+
href,
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const hasPrefix = (href: string, prefix: string | undefined) =>
|
|
22
|
+
prefix && href && href.startsWith(prefix);
|
package/package.json
CHANGED
|
@@ -112,4 +112,4 @@ const checkRowByParam = ({ row, userInputParams, paramKey, isExclude }: CheckRow
|
|
|
112
112
|
isExclude || userInputParams[paramKey] === row[paramKey];
|
|
113
113
|
|
|
114
114
|
const getMiddleMonth = (minMonths: number, maxMonths: number): number =>
|
|
115
|
-
Math.round((maxMonths - minMonths) / 2);
|
|
115
|
+
minMonths + Math.round((maxMonths - minMonths) / 2);
|
|
@@ -10,7 +10,7 @@ interface TextInformationLinkProps extends LinkProps {
|
|
|
10
10
|
|
|
11
11
|
export const TextInformationLink = JSX<Partial<TextInformationLinkProps>>(
|
|
12
12
|
({ className = '', index, ...rest }) => {
|
|
13
|
-
const link = useLink();
|
|
13
|
+
const link = useLink({ isRemote: true });
|
|
14
14
|
const { href, target, text, onClick } = link(rest);
|
|
15
15
|
|
|
16
16
|
return (
|
package/src/hooks/useLink.ts
CHANGED
|
@@ -10,13 +10,20 @@ interface Clickable {
|
|
|
10
10
|
onClick(ev?: PreventableEvent): void;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
interface UseLinkParams {
|
|
14
|
+
isRemote?: boolean;
|
|
15
|
+
basePath?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function useLink(params: UseLinkParams = {}) {
|
|
19
|
+
const { isRemote, basePath } = params;
|
|
20
|
+
|
|
14
21
|
const router = useRouter();
|
|
15
22
|
const { close } = useDialog();
|
|
16
23
|
|
|
17
24
|
return <L extends Partial<LinkProps & Clickable>>(props: L): L & Clickable => ({
|
|
18
25
|
...props,
|
|
19
|
-
href: isRemote ? props.href : adjustHref(router)(props.href),
|
|
26
|
+
href: isRemote ? props.href : adjustHref(router)(props.href, basePath),
|
|
20
27
|
'aria-label': props.text,
|
|
21
28
|
onClick: handlerDecorator(handleHref(props), props),
|
|
22
29
|
});
|
|
@@ -6,7 +6,7 @@ import type { IconProps, Picture } from '../../model/Picture';
|
|
|
6
6
|
* @title Ссылка
|
|
7
7
|
* @required ["text", "href"]
|
|
8
8
|
*/
|
|
9
|
-
export interface
|
|
9
|
+
export interface TopMenuItemProps extends LinkProps {
|
|
10
10
|
/** @hidden */
|
|
11
11
|
items?: LinkProps[];
|
|
12
12
|
}
|
|
@@ -27,7 +27,7 @@ export interface DispositionItem extends LinkProps {
|
|
|
27
27
|
export type ForeignOffice = LinkProps & IconProps;
|
|
28
28
|
|
|
29
29
|
export interface SitemapData {
|
|
30
|
-
topItems?:
|
|
30
|
+
topItems?: TopMenuItemProps[];
|
|
31
31
|
dispositions?: DispositionItem[];
|
|
32
32
|
logo?: LogoType;
|
|
33
33
|
foreignOffices?: ForeignOffice[];
|
|
@@ -2,7 +2,7 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
2
2
|
import { useEffect, useMemo } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
3
|
import type { LinkProps } from '../../model/LinkProps';
|
|
4
4
|
import { useSearch, type SearchResult } from '../../services/search/useSearch';
|
|
5
|
-
import type {
|
|
5
|
+
import type { TopMenuItemProps } from '../../services/sitemap/SitemapData';
|
|
6
6
|
import { joinPath } from '../../utils/url';
|
|
7
7
|
import { zip } from '../../utils/zip';
|
|
8
8
|
import { Dialog } from '../Dialog/Dialog';
|
|
@@ -11,7 +11,7 @@ import { Sitemap } from '../Sitemap/Sitemap';
|
|
|
11
11
|
import { SearchInput } from './SearchInput';
|
|
12
12
|
|
|
13
13
|
export interface SearchDialogProps {
|
|
14
|
-
topItems?:
|
|
14
|
+
topItems?: TopMenuItemProps[];
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export const SEARCH_DIALOG_ID = 'search';
|
|
@@ -44,8 +44,8 @@ export const SearchDialog = JSX<SearchDialogProps>(({ topItems }) => {
|
|
|
44
44
|
});
|
|
45
45
|
|
|
46
46
|
const combineTopItemsAndSearchResult =
|
|
47
|
-
(topItems:
|
|
48
|
-
(searchResult: SearchResult | null | undefined):
|
|
47
|
+
(topItems: TopMenuItemProps[] | undefined) =>
|
|
48
|
+
(searchResult: SearchResult | null | undefined): TopMenuItemProps[] =>
|
|
49
49
|
topItems?.length && searchResult?.length
|
|
50
50
|
? zip(topItems, searchResult).map(([_, portalSearchResult]) => ({
|
|
51
51
|
..._,
|
|
@@ -56,7 +56,7 @@ const combineTopItemsAndSearchResult =
|
|
|
56
56
|
: [];
|
|
57
57
|
|
|
58
58
|
// Temp
|
|
59
|
-
function printSearchItems(topItems:
|
|
59
|
+
function printSearchItems(topItems: TopMenuItemProps[]) {
|
|
60
60
|
for (const _ of topItems.filter(({ items }) => items?.length)) {
|
|
61
61
|
console.group(_.text);
|
|
62
62
|
console.table(_.items, ['text', 'href']);
|
|
@@ -2,17 +2,16 @@ import { JSX } from '@redneckz/uni-jsx';
|
|
|
2
2
|
import { useLink } from '../../hooks/useLink';
|
|
3
3
|
import type { LinkProps } from '../../model/LinkProps';
|
|
4
4
|
import { projectSettings } from '../../ProjectSettings';
|
|
5
|
-
import type {
|
|
5
|
+
import type { TopMenuItemProps } from '../../services/sitemap/SitemapData';
|
|
6
6
|
import { style } from '../../utils/style';
|
|
7
|
-
import { joinPath } from '../../utils/url';
|
|
8
7
|
|
|
9
8
|
export interface SitemapProps {
|
|
10
9
|
className?: string;
|
|
11
|
-
topItems?:
|
|
10
|
+
topItems?: TopMenuItemProps[];
|
|
12
11
|
}
|
|
13
12
|
|
|
14
13
|
export const Sitemap = JSX<SitemapProps>(({ className, topItems }) => {
|
|
15
|
-
const link = useLink(true);
|
|
14
|
+
const link = useLink({ isRemote: true });
|
|
16
15
|
|
|
17
16
|
return (
|
|
18
17
|
<div className={style('flex items-start justify-between', className)}>
|
|
@@ -21,7 +20,7 @@ export const Sitemap = JSX<SitemapProps>(({ className, topItems }) => {
|
|
|
21
20
|
);
|
|
22
21
|
});
|
|
23
22
|
|
|
24
|
-
const renderColumn = (menuItem:
|
|
23
|
+
const renderColumn = (menuItem: TopMenuItemProps & { onClick: () => void }, index: number) => {
|
|
25
24
|
const { text, items, href, target, onClick } = menuItem;
|
|
26
25
|
|
|
27
26
|
return (
|
|
@@ -50,7 +49,7 @@ const ColumnItem = JSX<ColumnItemProps>(({ text, index, basePath, ...rest }) =>
|
|
|
50
49
|
const isAnotherPortal =
|
|
51
50
|
projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
|
|
52
51
|
|
|
53
|
-
const link = useLink(isAnotherPortal);
|
|
52
|
+
const link = useLink({ isRemote: isAnotherPortal });
|
|
54
53
|
const { href, target, onClick } = link(rest);
|
|
55
54
|
|
|
56
55
|
return (
|
|
@@ -59,7 +58,7 @@ const ColumnItem = JSX<ColumnItemProps>(({ text, index, basePath, ...rest }) =>
|
|
|
59
58
|
'text-l-light text-secondary-text hover:text-primary-main no-underline',
|
|
60
59
|
'overflow-x-hidden overflow-ellipsis whitespace-nowrap',
|
|
61
60
|
)}
|
|
62
|
-
href={
|
|
61
|
+
href={href}
|
|
63
62
|
target={target || '_self'}
|
|
64
63
|
onClick={onClick}
|
|
65
64
|
>
|
|
@@ -15,7 +15,7 @@ export interface TopItemProps extends TopItemContent {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export const TopItem = JSX<TopItemProps>(({ className = '', active, flat, children, ...rest }) => {
|
|
18
|
-
const link = useLink(true);
|
|
18
|
+
const link = useLink({ isRemote: true });
|
|
19
19
|
const { href, target, text, onClick } = link(rest);
|
|
20
20
|
|
|
21
21
|
return (
|
package/src/utils/adjustHref.ts
CHANGED
|
@@ -2,16 +2,21 @@ import { projectSettings } from '../ProjectSettings';
|
|
|
2
2
|
import { dirname } from './dirname';
|
|
3
3
|
import { isURL, joinPath } from './url';
|
|
4
4
|
|
|
5
|
-
export const adjustHref =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
export const adjustHref =
|
|
6
|
+
(router: { pathname: string }) =>
|
|
7
|
+
(href: string | undefined, basePath = projectSettings.BASE_PATH) => {
|
|
8
|
+
if (!href || isURL(href) || hasPrefix(href, projectSettings.CDN)) {
|
|
9
|
+
return href;
|
|
10
|
+
}
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
const isRelativeToBase = href.startsWith('/');
|
|
11
13
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
};
|
|
14
|
+
return joinPath(
|
|
15
|
+
hasPrefix(href, basePath) ? '' : basePath,
|
|
16
|
+
isRelativeToBase ? '/' : dirname(router.pathname),
|
|
17
|
+
href,
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const hasPrefix = (href: string, prefix: string | undefined) =>
|
|
22
|
+
prefix && href && href.startsWith(prefix);
|