@ya-accelerators/nextjs-framework 0.0.63 → 0.0.65

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.
@@ -43,7 +43,7 @@ export declare const Layout: {
43
43
  rowSelect?: (data: TData) => void;
44
44
  }) => import("react").JSX.Element;
45
45
  Tab: ({ items, title, children, className, contentClassName, }: {
46
- items: import("react").ComponentProps<typeof import("./tab/component").TabItem>[];
46
+ items: Omit<import("react").ComponentProps<typeof import("./tab/component").TabItem>, "ignoreCurrent">[];
47
47
  title?: import("react").ComponentProps<({ routes, title, actions, back, keepRoutesSpace, showTitle, className, }: {
48
48
  routes?: {
49
49
  label: string;
@@ -1,4 +1,5 @@
1
- export declare const TabItem: ({ label, href }: {
1
+ export declare const TabItem: ({ label, href, ignoreCurrent }: {
2
2
  label: string;
3
3
  href: string;
4
+ ignoreCurrent?: boolean;
4
5
  }) => import("react").JSX.Element;
@@ -4,9 +4,9 @@ import Link from 'next/link';
4
4
  import { usePathname } from 'next/navigation';
5
5
  import { Component } from '../../component';
6
6
  import { getTextColorTypeClassName, TextColorTypes } from '../../theme';
7
- export const TabItem = ({ label, href }) => {
7
+ export const TabItem = ({ label, href, ignoreCurrent }) => {
8
8
  const pathname = usePathname();
9
- const isCurrent = href === '/' ? pathname === '/' : pathname.startsWith(href);
9
+ const isCurrent = ignoreCurrent === true ? false : href === '/' ? pathname === '/' : pathname.startsWith(href);
10
10
  return (<Link data-current={isCurrent} href={href} className={classNames(getTextColorTypeClassName(TextColorTypes.sub, false), 'flex items-center justify-center whitespace-nowrap', 'px-control-padding-base py-control-padding-md', 'hover:opacity-60', 'border-b-2 border-transparent', 'data-[current=true]:border-primary-default-bg data-[current=true]:text-primary-default-bg', 'data-[current=false]:opacity-40', {
11
11
  'pointer-events-none': isCurrent,
12
12
  })} aria-disabled={isCurrent} tabIndex={isCurrent ? -1 : undefined}>
@@ -1 +1 @@
1
- {"version":3,"file":"component.jsx","sourceRoot":"","sources":["../../../../../src/ui/layout/tab/component.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEvE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAmC,EAAE,EAAE;IAC1E,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC7E,OAAO,CACL,CAAC,IAAI,CACH,YAAY,CAAC,CAAC,SAAS,CAAC,CACxB,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,SAAS,CAAC,CAAC,UAAU,CACnB,yBAAyB,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,EACpD,oDAAoD,EACpD,+CAA+C,EAC/C,kBAAkB,EAClB,+BAA+B,EAC/B,2FAA2F,EAC3F,iCAAiC,EACjC;YACE,qBAAqB,EAAE,SAAS;SACjC,CACF,CAAC,CACF,aAAa,CAAC,CAAC,SAAS,CAAC,CACzB,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAErC;MAAA,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CACzD;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"component.jsx","sourceRoot":"","sources":["../../../../../src/ui/layout/tab/component.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEvE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAA4D,EAAE,EAAE;IAClH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC9G,OAAO,CACL,CAAC,IAAI,CACH,YAAY,CAAC,CAAC,SAAS,CAAC,CACxB,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,SAAS,CAAC,CAAC,UAAU,CACnB,yBAAyB,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,EACpD,oDAAoD,EACpD,+CAA+C,EAC/C,kBAAkB,EAClB,+BAA+B,EAC/B,2FAA2F,EAC3F,iCAAiC,EACjC;YACE,qBAAqB,EAAE,SAAS;SACjC,CACF,CAAC,CACF,aAAa,CAAC,CAAC,SAAS,CAAC,CACzB,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAErC;MAAA,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CACzD;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC,CAAA"}
@@ -3,7 +3,7 @@ import type { ComponentProps, ReactNode } from 'react';
3
3
  import { Composite } from '../../composite';
4
4
  import { TabItem } from './component';
5
5
  export declare const Tab: ({ items, title, children, className, contentClassName, }: {
6
- items: ComponentProps<typeof TabItem>[];
6
+ items: Omit<ComponentProps<typeof TabItem>, "ignoreCurrent">[];
7
7
  title?: ComponentProps<typeof Composite.PageTitle>;
8
8
  children: ReactNode;
9
9
  className?: string;
@@ -6,15 +6,17 @@ import { usePathname } from 'next/navigation';
6
6
  import { Composite } from '../../composite';
7
7
  import { getBackgroundColorTypeClassName } from '../../theme';
8
8
  import { TabItem } from './component';
9
+ const isShadowed = (allHrefs, href, pathname) => allHrefs.some((other) => other.length > href.length && pathname.startsWith(other));
9
10
  export const Tab = ({ items, title, children, className, contentClassName, }) => {
10
11
  const pathname = usePathname();
12
+ const allHrefs = items.map((x) => x.href);
11
13
  return (<div className={classNames('flex size-full flex-col overflow-y-scroll', getBackgroundColorTypeClassName('default'), className)}>
12
14
  {title !== undefined && (<div className='mt-base'>
13
15
  <Composite.PageTitle {...title}/>
14
16
  </div>)}
15
17
  <div className={classNames('p-base gap-base flex h-fit flex-col w-full', contentClassName)}>
16
18
  <div className='gap-md border-outline-default flex w-full border-b'>
17
- {items.map((x, i) => (<TabItem key={i} {...x}/>))}
19
+ {items.map((x, i) => (<TabItem key={i} {...x} ignoreCurrent={isShadowed(allHrefs, x.href, pathname)}/>))}
18
20
  </div>
19
21
  <motion.main key={pathname} initial={{ opacity: 0 }} animate={{ opacity: 1 }} exit={{ opacity: 0 }} transition={{ duration: 0.3 }}>
20
22
  {children}
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/ui/layout/tab/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,cAAc,WAAW,CAAA;AAEzB,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAClB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,SAAS,EACT,gBAAgB,GAOjB,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,OAAO,CACL,CAAC,GAAG,CACF,SAAS,CAAC,CAAC,UAAU,CACnB,2CAA2C,EAC3C,+BAA+B,CAAC,SAAS,CAAC,EAC1C,SAAS,CACV,CAAC,CAEF;MAAA,CAAC,KAAK,KAAK,SAAS,IAAI,CACtB,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CACtB;UAAA,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EACjC;QAAA,EAAE,GAAG,CAAC,CACP,CACD;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,4CAA4C,EAAE,gBAAgB,CAAC,CAAC,CACzF;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,oDAAoD,CACjE;UAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACnB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAG,CAC3B,CAAC,CACJ;QAAA,EAAE,GAAG,CACL;QAAA,CAAC,MAAM,CAAC,IAAI,CACV,GAAG,CAAC,CAAC,QAAQ,CAAC,CACd,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACxB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACxB,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACrB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAE9B;UAAA,CAAC,QAAQ,CACX;QAAA,EAAE,MAAM,CAAC,IAAI,CACf;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/ui/layout/tab/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,cAAc,WAAW,CAAA;AAEzB,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAE,IAAY,EAAE,QAAgB,EAAW,EAAE,CACjF,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;AAEpF,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAClB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,SAAS,EACT,gBAAgB,GAOjB,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACzC,OAAO,CACL,CAAC,GAAG,CACF,SAAS,CAAC,CAAC,UAAU,CACnB,2CAA2C,EAC3C,+BAA+B,CAAC,SAAS,CAAC,EAC1C,SAAS,CACV,CAAC,CAEF;MAAA,CAAC,KAAK,KAAK,SAAS,IAAI,CACtB,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CACtB;UAAA,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EACjC;QAAA,EAAE,GAAG,CAAC,CACP,CACD;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,4CAA4C,EAAE,gBAAgB,CAAC,CAAC,CACzF;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,oDAAoD,CACjE;UAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACnB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAG,CAClF,CAAC,CACJ;QAAA,EAAE,GAAG,CACL;QAAA,CAAC,MAAM,CAAC,IAAI,CACV,GAAG,CAAC,CAAC,QAAQ,CAAC,CACd,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACxB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACxB,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACrB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAE9B;UAAA,CAAC,QAAQ,CACX;QAAA,EAAE,MAAM,CAAC,IAAI,CACf;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAA;AACH,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ya-accelerators/nextjs-framework",
3
- "version": "0.0.63",
3
+ "version": "0.0.65",
4
4
  "type": "module",
5
5
  "description": "",
6
6
  "author": "YA Technologies OÜ",