namirasoft-site-react 1.3.177 → 1.3.179
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/dist/App.js +3 -3
- package/dist/App.js.map +1 -1
- package/dist/components/NSBarAction.d.ts +10 -0
- package/dist/components/{NSLayoutAction.js → NSBarAction.js} +7 -8
- package/dist/components/NSBarAction.js.map +1 -0
- package/dist/components/NSBarHeroBanner.d.ts +7 -0
- package/dist/components/NSBarHeroBanner.js +8 -0
- package/dist/components/NSBarHeroBanner.js.map +1 -0
- package/dist/components/{NSNotification.d.ts → NSBarNotification.d.ts} +4 -4
- package/dist/components/{NSNotification.js → NSBarNotification.js} +11 -11
- package/dist/components/NSBarNotification.js.map +1 -0
- package/dist/components/NSBarTitle.d.ts +5 -0
- package/dist/components/NSBarTitle.js +11 -0
- package/dist/components/NSBarTitle.js.map +1 -0
- package/dist/components/NSHeader.js +2 -2
- package/dist/components/NSHeader.js.map +1 -1
- package/dist/components/NSLayout.d.ts +12 -3
- package/dist/components/NSLayout.js +5 -2
- package/dist/components/NSLayout.js.map +1 -1
- package/dist/components/NSLayout.module.css +4 -4
- package/dist/main.d.ts +4 -4
- package/dist/main.js +4 -4
- package/dist/main.js.map +1 -1
- package/dist/props/IHeaderIconProps.d.ts +6 -0
- package/dist/props/IHeaderIconProps.js +2 -0
- package/dist/props/IHeaderIconProps.js.map +1 -0
- package/dist/props/IHeaderProps.d.ts +2 -6
- package/dist/routing/INSRouterState.d.ts +2 -2
- package/dist/routing/Notifier.d.ts +2 -2
- package/dist/routing/Notifier.js +5 -5
- package/dist/routing/Notifier.js.map +1 -1
- package/package.json +1 -1
- package/src/App.tsx +3 -5
- package/src/components/{NSLayoutAction.tsx → NSBarAction.tsx} +13 -16
- package/src/components/NSBarHeroBanner.tsx +62 -0
- package/src/components/{NSNotification.tsx → NSBarNotification.tsx} +7 -7
- package/src/components/NSBarTitle.tsx +29 -0
- package/src/components/NSHeader.tsx +6 -7
- package/src/components/NSLayout.module.css +4 -4
- package/src/components/NSLayout.tsx +18 -4
- package/src/components/NSLink.tsx +1 -1
- package/src/main.ts +4 -4
- package/src/props/IHeaderIconProps.ts +7 -0
- package/src/props/IHeaderProps.ts +3 -6
- package/src/routing/INSRouterState.ts +2 -2
- package/src/routing/Notifier.ts +9 -9
- package/dist/components/NSLayoutAction.d.ts +0 -14
- package/dist/components/NSLayoutAction.js.map +0 -1
- package/dist/components/NSLayoutHeroBanner.d.ts +0 -11
- package/dist/components/NSLayoutHeroBanner.js +0 -9
- package/dist/components/NSLayoutHeroBanner.js.map +0 -1
- package/dist/components/NSLayoutTitle.d.ts +0 -9
- package/dist/components/NSLayoutTitle.js +0 -13
- package/dist/components/NSLayoutTitle.js.map +0 -1
- package/dist/components/NSNotification.js.map +0 -1
- package/src/components/NSLayoutHeroBanner.tsx +0 -69
- package/src/components/NSLayoutTitle.tsx +0 -39
- /package/dist/components/{NSLayoutAction.module.css → NSBarAction.module.css} +0 -0
- /package/dist/components/{NSLayoutHeroBanner.module.css → NSBarHeroBanner.module.css} +0 -0
- /package/dist/components/{NSNotification.module.css → NSBarNotification.module.css} +0 -0
- /package/dist/components/{NSLayoutTitle.module.css → NSBarTitle.module.css} +0 -0
- /package/src/components/{NSLayoutAction.module.css → NSBarAction.module.css} +0 -0
- /package/src/components/{NSLayoutHeroBanner.module.css → NSBarHeroBanner.module.css} +0 -0
- /package/src/components/{NSNotification.module.css → NSBarNotification.module.css} +0 -0
- /package/src/components/{NSLayoutTitle.module.css → NSBarTitle.module.css} +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import Styles from './NSBarHeroBanner.module.css'
|
|
4
|
+
import { Link } from 'react-router-dom';
|
|
5
|
+
|
|
6
|
+
export interface INSBarHeroBannerProps
|
|
7
|
+
{
|
|
8
|
+
title: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
description_last?: string;
|
|
11
|
+
banner: string;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export function NSBarHeroBanner(props: INSBarHeroBannerProps)
|
|
15
|
+
{
|
|
16
|
+
return (
|
|
17
|
+
<div className={Styles.hero_holder}>
|
|
18
|
+
<section className={Styles.hero_wraper}>
|
|
19
|
+
<div className="container mx-auto px-4 lg:px-12">
|
|
20
|
+
<div className="flex flex-wrap lg:flex-nowrap justify-center lg:justify-between">
|
|
21
|
+
<article className={`mb-6 lg:mb-0 lg:mb-12lg:pe-12 ${Styles.hero_text_container}`} >
|
|
22
|
+
<h1 className="ns-font-32-bold ns_font_lg_40_bold mb-6">
|
|
23
|
+
{props.title}
|
|
24
|
+
</h1>
|
|
25
|
+
<p className="ns-font-16-normal lg:mb-4">
|
|
26
|
+
{props.description}
|
|
27
|
+
</p>
|
|
28
|
+
<p className="ns-font-16-normal">
|
|
29
|
+
{props.description_last}
|
|
30
|
+
</p>
|
|
31
|
+
<div className="hidden lg:block mt-6">
|
|
32
|
+
<Link to="#" style={{ width: "100%", marginBottom: "24px" }} >
|
|
33
|
+
Contact US
|
|
34
|
+
</Link>
|
|
35
|
+
<Link to="#" style={{ width: "100%" }} >
|
|
36
|
+
Book a Meeting With Us
|
|
37
|
+
</Link>
|
|
38
|
+
</div>
|
|
39
|
+
</article>
|
|
40
|
+
<div style={{ backgroundImage: `url(${props.banner})` }} className={`hidden lg:block lg:w-full xl:w-1/2 ${Styles.hero_image_bg}`}>
|
|
41
|
+
<div className={Styles.ns_hero_vector_bg}></div>
|
|
42
|
+
</div>
|
|
43
|
+
<div className={`block lg:hidden ${Styles.hero_img_container}`}>
|
|
44
|
+
<img
|
|
45
|
+
src={props.banner}
|
|
46
|
+
alt=""
|
|
47
|
+
/>
|
|
48
|
+
</div>
|
|
49
|
+
<div className="w-full mt-6 block lg:hidden">
|
|
50
|
+
<Link to="#" style={{ width: "100%", marginBottom: "24px" }} >
|
|
51
|
+
Contact US
|
|
52
|
+
</Link>
|
|
53
|
+
<Link to="#" style={{ width: "100%" }} >
|
|
54
|
+
Book a Meeting With Us
|
|
55
|
+
</Link>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</section>
|
|
60
|
+
</div>
|
|
61
|
+
);
|
|
62
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import Styles from "./
|
|
1
|
+
import Styles from "./NSBarNotification.module.css";
|
|
2
2
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
3
3
|
|
|
4
|
-
export interface
|
|
4
|
+
export interface INSBarNotificationProps extends IBaseComponentProps
|
|
5
5
|
{
|
|
6
6
|
text: string;
|
|
7
7
|
type: NotificationType;
|
|
8
|
-
color:
|
|
8
|
+
color: NSBarNotificationColor;
|
|
9
9
|
onClose: () => void;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
export enum
|
|
12
|
+
export enum NSBarNotificationColor
|
|
13
13
|
{
|
|
14
14
|
GRAY = "GRAY",
|
|
15
15
|
BLUE = "BLUE",
|
|
@@ -26,11 +26,11 @@ export enum NotificationType
|
|
|
26
26
|
Error = "Error",
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
export function
|
|
29
|
+
export function NSBarNotification(props: INSBarNotificationProps)
|
|
30
30
|
{
|
|
31
31
|
let className = Styles["ns_" + props.color.toString().toLowerCase()];
|
|
32
|
-
let type= props.type;
|
|
33
|
-
let src="";
|
|
32
|
+
let type = props.type;
|
|
33
|
+
let src = "";
|
|
34
34
|
switch (type)
|
|
35
35
|
{
|
|
36
36
|
case "Error":
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import Styles from './NSBarTitle.module.css';
|
|
2
|
+
|
|
3
|
+
export interface INSBarTitleProps
|
|
4
|
+
{
|
|
5
|
+
title: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function NSBarTitle(props: INSBarTitleProps)
|
|
10
|
+
{
|
|
11
|
+
let lines = (props.description ?? "").split(/(\n|\\n|<br>|<br\s*\/>)/gm);
|
|
12
|
+
return (
|
|
13
|
+
<div>
|
|
14
|
+
<h1 className={Styles.title}>{props.title}</h1>
|
|
15
|
+
{
|
|
16
|
+
props.description && lines &&
|
|
17
|
+
<p className={Styles.description}>{
|
|
18
|
+
lines.map((line, index) =>
|
|
19
|
+
{
|
|
20
|
+
return <>
|
|
21
|
+
{line.trim()}
|
|
22
|
+
{index != lines.length - 1 && <br />}
|
|
23
|
+
</>;
|
|
24
|
+
})
|
|
25
|
+
}</p>
|
|
26
|
+
}
|
|
27
|
+
</div>
|
|
28
|
+
);
|
|
29
|
+
}
|
|
@@ -6,6 +6,7 @@ import NavDropdown from 'react-bootstrap/NavDropdown';
|
|
|
6
6
|
import { NamirasoftAPILinkServer, FilterLinkFullRow } from 'namirasoft-api-link';
|
|
7
7
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
8
8
|
import { IHeaderProps } from "../props/IHeaderProps";
|
|
9
|
+
|
|
9
10
|
export interface INSHeaderProps extends IBaseComponentProps
|
|
10
11
|
{
|
|
11
12
|
scope: string;
|
|
@@ -97,14 +98,15 @@ export class NSHeader extends React.Component<INSHeaderProps, NSHeaderState>
|
|
|
97
98
|
<span className={Styles.ns_navbar_title}>{this.props.header?.title}</span>
|
|
98
99
|
{
|
|
99
100
|
this.props.header.icons.map((icon) =>
|
|
100
|
-
<button className={Styles.ns_header_icon} onClick={icon.onClicked}>
|
|
101
|
+
<button className={Styles.ns_header_icon} onClick={() => icon.onClicked(icon)}>
|
|
101
102
|
<img
|
|
102
103
|
src={icon.src}
|
|
103
104
|
alt={icon.alt}
|
|
104
105
|
width={20}
|
|
105
106
|
height={20}
|
|
106
107
|
/>
|
|
107
|
-
{
|
|
108
|
+
{
|
|
109
|
+
icon.count &&
|
|
108
110
|
<span className={Styles.ns_navbar_notification_count}>{icon.count}</span>
|
|
109
111
|
}
|
|
110
112
|
</button>
|
|
@@ -125,9 +127,7 @@ export class NSHeader extends React.Component<INSHeaderProps, NSHeaderState>
|
|
|
125
127
|
height={24}
|
|
126
128
|
/>
|
|
127
129
|
</div>
|
|
128
|
-
|
|
129
130
|
</div>
|
|
130
|
-
|
|
131
131
|
</div>
|
|
132
132
|
</nav>
|
|
133
133
|
</header>
|
|
@@ -156,7 +156,7 @@ export class NSHeader extends React.Component<INSHeaderProps, NSHeaderState>
|
|
|
156
156
|
{this.render_menu(1, this.state.selected.id)}
|
|
157
157
|
</div >
|
|
158
158
|
}
|
|
159
|
-
return
|
|
159
|
+
return <>
|
|
160
160
|
<NavDropdown
|
|
161
161
|
onToggle={(checked) => this.onMenuItemToggled(checked, filter)}
|
|
162
162
|
className={level === 0 ? Styles.ns_navbar_first_level_item : Styles.ns_navbar_second_level_item}
|
|
@@ -164,8 +164,7 @@ export class NSHeader extends React.Component<INSHeaderProps, NSHeaderState>
|
|
|
164
164
|
id={`dropdown_parent${filter.id}`}>
|
|
165
165
|
{sub_menus}
|
|
166
166
|
</NavDropdown >
|
|
167
|
-
|
|
168
|
-
);
|
|
167
|
+
</>;
|
|
169
168
|
}
|
|
170
169
|
else
|
|
171
170
|
{
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
.ns_container {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
justify-content: center;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
.ns_layout_main {
|
|
7
|
+
.ns_layout_main {
|
|
8
8
|
display: flex;
|
|
9
9
|
flex-direction: column;
|
|
10
10
|
color: #fff;
|
|
@@ -3,17 +3,28 @@ import { ReactNode } from 'react';
|
|
|
3
3
|
import { NSHeader } from './NSHeader';
|
|
4
4
|
import { NSFooter } from './NSFooter';
|
|
5
5
|
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
6
|
-
import {
|
|
6
|
+
import { NSBarNotification, INSBarNotificationProps } from './NSBarNotification';
|
|
7
7
|
import { IHeaderProps } from '../props/IHeaderProps';
|
|
8
|
+
import { INSBarActionProps, NSBarAction } from './NSBarAction';
|
|
9
|
+
import { INSBarHeroBannerProps, NSBarHeroBanner } from './NSBarHeroBanner';
|
|
10
|
+
import { INSBarTitleProps, NSBarTitle } from './NSBarTitle';
|
|
8
11
|
|
|
9
12
|
export interface INSLayoutProps extends IBaseComponentProps
|
|
10
13
|
{
|
|
11
14
|
scope: string;
|
|
12
15
|
logo: string;
|
|
13
16
|
background?: string;
|
|
14
|
-
notifications: INSNotificationProps[];
|
|
15
|
-
children: ReactNode;
|
|
16
17
|
header: IHeaderProps;
|
|
18
|
+
notifications: INSBarNotificationProps[];
|
|
19
|
+
action?: INSBarActionProps;
|
|
20
|
+
banner?: INSBarHeroBannerProps;
|
|
21
|
+
title?: INSBarTitleProps;
|
|
22
|
+
children: ReactNode;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export interface NSLayoutState
|
|
26
|
+
{
|
|
27
|
+
action_show: boolean
|
|
17
28
|
}
|
|
18
29
|
|
|
19
30
|
export function NSLayout(props: INSLayoutProps)
|
|
@@ -37,7 +48,10 @@ export function NSLayout(props: INSLayoutProps)
|
|
|
37
48
|
logo={props.logo}
|
|
38
49
|
header={props.header}
|
|
39
50
|
/>
|
|
40
|
-
{props.notifications.map(props => <
|
|
51
|
+
{props.notifications.map(props => <NSBarNotification {...props}></NSBarNotification>)}
|
|
52
|
+
{props.action && <NSBarAction {...props.action} ></NSBarAction >}
|
|
53
|
+
{props.banner && <NSBarHeroBanner {...props.banner} ></NSBarHeroBanner >}
|
|
54
|
+
{props.title && <NSBarTitle {...props.title} ></NSBarTitle >}
|
|
41
55
|
<main className={`d-flex flex-column text-white ${Styles.ns_layout_main}`}>
|
|
42
56
|
{props.children}
|
|
43
57
|
</main>
|
|
@@ -12,7 +12,7 @@ export function NSLink(props: INSILinkProps)
|
|
|
12
12
|
<div
|
|
13
13
|
id={props.id}
|
|
14
14
|
className={`${Styles.ns_link_parent} ${props.classList?.join(" ")}`}
|
|
15
|
-
|
|
15
|
+
>
|
|
16
16
|
<a
|
|
17
17
|
className={`text-white text-decoration-none ${props.title ? Styles.ns_link : Styles.ns_link_absolute}`}
|
|
18
18
|
href={props.href}
|
package/src/main.ts
CHANGED
|
@@ -32,11 +32,11 @@ export * from "./components/NSFooter";
|
|
|
32
32
|
export * from "./components/NSHeader";
|
|
33
33
|
export * from "./components/NSCopyToClipboard";
|
|
34
34
|
export * from "./components/NSLayout";
|
|
35
|
-
export * from "./components/
|
|
36
|
-
export * from "./components/
|
|
37
|
-
export * from "./components/
|
|
35
|
+
export * from "./components/NSBarAction";
|
|
36
|
+
export * from "./components/NSBarHeroBanner";
|
|
37
|
+
export * from "./components/NSBarTitle";
|
|
38
38
|
export * from "./components/NSLoading";
|
|
39
|
-
export * from "./components/
|
|
39
|
+
export * from "./components/NSBarNotification";
|
|
40
40
|
export * from "./components/NSSpace";
|
|
41
41
|
export * from "./components/NSSection";
|
|
42
42
|
export * from "./components/NSSectionBars";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { INSBarNotificationProps } from "../components/NSBarNotification";
|
|
2
2
|
|
|
3
3
|
export interface INSRouterState
|
|
4
4
|
{
|
|
5
|
-
notifications?:
|
|
5
|
+
notifications?: INSBarNotificationProps[];
|
|
6
6
|
}
|
package/src/routing/Notifier.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import axios from "axios";
|
|
2
|
-
import {
|
|
2
|
+
import { NSBarNotificationColor, INSBarNotificationProps, NotificationType } from "../components/NSBarNotification";
|
|
3
3
|
import { INSRouterState } from "./INSRouterState";
|
|
4
4
|
|
|
5
5
|
export class Notifier
|
|
@@ -19,9 +19,9 @@ export class Notifier
|
|
|
19
19
|
this.delNotification = this.delNotification.bind(this);
|
|
20
20
|
this.getNotifications = this.getNotifications.bind(this);
|
|
21
21
|
}
|
|
22
|
-
private notify(message:
|
|
22
|
+
private notify(message: INSBarNotificationProps)
|
|
23
23
|
{
|
|
24
|
-
let notifications:
|
|
24
|
+
let notifications: INSBarNotificationProps[] = [];
|
|
25
25
|
if (this.state?.notifications)
|
|
26
26
|
notifications.push(...this.state.notifications);
|
|
27
27
|
notifications.push(message);
|
|
@@ -35,17 +35,17 @@ export class Notifier
|
|
|
35
35
|
onInformation(text: string)
|
|
36
36
|
{
|
|
37
37
|
let id = Notifier.Counter++ + "";
|
|
38
|
-
this.notify({ id, text, type: NotificationType.Information, color:
|
|
38
|
+
this.notify({ id, text, type: NotificationType.Information, color: NSBarNotificationColor.GRAY, onClose: () => this.delNotification(id) });
|
|
39
39
|
}
|
|
40
40
|
onSuccess(text: string)
|
|
41
41
|
{
|
|
42
42
|
let id = Notifier.Counter++ + "";
|
|
43
|
-
this.notify({ id, text, type: NotificationType.Success, color:
|
|
43
|
+
this.notify({ id, text, type: NotificationType.Success, color: NSBarNotificationColor.GREEN, onClose: () => this.delNotification(id) });
|
|
44
44
|
}
|
|
45
45
|
onWarning(text: string)
|
|
46
46
|
{
|
|
47
47
|
let id = Notifier.Counter++ + "";
|
|
48
|
-
this.notify({ id, text, type: NotificationType.Warning, color:
|
|
48
|
+
this.notify({ id, text, type: NotificationType.Warning, color: NSBarNotificationColor.YELLOW, onClose: () => this.delNotification(id) });
|
|
49
49
|
}
|
|
50
50
|
onError(error: Error | string)
|
|
51
51
|
{
|
|
@@ -60,20 +60,20 @@ export class Notifier
|
|
|
60
60
|
}
|
|
61
61
|
else
|
|
62
62
|
text = error;
|
|
63
|
-
this.notify({ id, text, type: NotificationType.Error, color:
|
|
63
|
+
this.notify({ id, text, type: NotificationType.Error, color: NSBarNotificationColor.RED, onClose: () => this.delNotification(id) });
|
|
64
64
|
}
|
|
65
65
|
delNotification(id: string): void
|
|
66
66
|
{
|
|
67
67
|
if (!this.state)
|
|
68
68
|
return;
|
|
69
69
|
|
|
70
|
-
let notifications:
|
|
70
|
+
let notifications: INSBarNotificationProps[] = [];
|
|
71
71
|
if (this.state.notifications)
|
|
72
72
|
notifications.push(...this.state.notifications);
|
|
73
73
|
notifications = notifications.filter(x => x.id !== id);
|
|
74
74
|
this.setState({ notifications });
|
|
75
75
|
}
|
|
76
|
-
getNotifications():
|
|
76
|
+
getNotifications(): INSBarNotificationProps[]
|
|
77
77
|
{
|
|
78
78
|
return this.state?.notifications ?? [];
|
|
79
79
|
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
2
|
-
import { INSLayoutProps } from './NSLayout';
|
|
3
|
-
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
4
|
-
import { INSActionMenuProps } from './NSActionMenu';
|
|
5
|
-
export interface INSLayoutActionProps extends INSLayoutProps, IBaseComponentProps {
|
|
6
|
-
title: string;
|
|
7
|
-
description?: string;
|
|
8
|
-
actions: INSActionMenuProps[];
|
|
9
|
-
children: ReactNode;
|
|
10
|
-
}
|
|
11
|
-
export interface INSLaoutActionState {
|
|
12
|
-
show: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare function NSLayoutAction(props: INSLayoutActionProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NSLayoutAction.js","sourceRoot":"","sources":["../../src/components/NSLayoutAction.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAa,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAErD,OAAO,MAAM,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,MAAM,UAAU,cAAc,CAAC,KAA2B;;IAEzD,IAAI,KAAK,GAAG,CAAC,MAAA,KAAK,CAAC,WAAW,mCAAI,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACzE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsB;QACvD,IAAI,EAAE,KAAK;KACX,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEvE,OAAO,CACN,MAAC,QAAQ,oBAAK,KAAK,eAClB,eAAK,SAAS,EAAE,MAAM,CAAC,oBAAoB,aAE1C,eAAK,SAAS,EAAE,oBAAoB,MAAM,CAAC,2BAA2B,EAAE,aACvE,aAAI,SAAS,EAAE,MAAM,CAAC,KAAK,YAAG,KAAK,CAAC,KAAK,GAAM,EAE9C,KAAK,CAAC,WAAW,KAAK,EAAE;gCACxB,kBAAQ,SAAS,EAAE,MAAM,CAAC,iBAAiB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,aACnF,cAAK,GAAG,EAAC,iEAAiE,EAAC,GAAG,EAAC,WAAW,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI,EACpH,oCAAmB,IACX,EAEV,KAAC,OAAO,IACP,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GACvC,IACG,EACN,cACC,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,EAC/D,SAAS,EAAE,MAAM,CAAC,iBAAiB,YAElC,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAChC,KAAC,YAAY,IAEZ,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAFd,MAAM,CAAC,EAAE,CAGb,CACF,GACI,IACD,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EAExC,eAAK,SAAS,EAAE,+BAA+B,MAAM,CAAC,0BAA0B,EAAE,aACjF,aAAI,SAAS,EAAE,MAAM,CAAC,KAAK,YAAG,KAAK,CAAC,KAAK,GAAM,EAE9C,KAAK,CAAC,WAAW,IAAI,KAAK;wBAC1B,8BACC,YAAG,SAAS,EAAE,MAAM,CAAC,WAAW,YAE9B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;wCAEzB,OAAO,CACN,MAAC,KAAK,CAAC,QAAQ,eACb,IAAI,CAAC,IAAI,EAAE,EACX,KAAK,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,cAAM,KAFjB,KAAK,CAGT,CACjB,CAAA;oCACF,CAAC,CAAC,GAEA,EACJ,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,IAAI,GAAI,IACrC,IAEC,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACvC,KAAK,CAAC,QAAQ,KACL,CACX,CAAC;AACH,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
2
|
-
import { INSLayoutProps } from './NSLayout';
|
|
3
|
-
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
4
|
-
export interface INSLayoutHeroBannerProps extends INSLayoutProps, IBaseComponentProps {
|
|
5
|
-
title: string;
|
|
6
|
-
description?: string;
|
|
7
|
-
description_last?: string;
|
|
8
|
-
banner: string;
|
|
9
|
-
children: ReactNode;
|
|
10
|
-
}
|
|
11
|
-
export declare function NSLayoutHeroBanner(props: INSLayoutHeroBannerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { NSLayout } from './NSLayout';
|
|
4
|
-
import Styles from './NSLayoutHeroBanner.module.css';
|
|
5
|
-
import { Link } from 'react-router-dom';
|
|
6
|
-
export function NSLayoutHeroBanner(props) {
|
|
7
|
-
return (_jsxs(NSLayout, Object.assign({}, props, { children: [_jsx("div", { className: Styles.hero_holder, children: _jsx("section", { className: Styles.hero_wraper, children: _jsx("div", { className: "container mx-auto px-4 lg:px-12", children: _jsxs("div", { className: "flex flex-wrap lg:flex-nowrap justify-center lg:justify-between", children: [_jsxs("article", { className: `mb-6 lg:mb-0 lg:mb-12lg:pe-12 ${Styles.hero_text_container}`, children: [_jsx("h1", { className: "ns-font-32-bold ns_font_lg_40_bold mb-6", children: props.title }), _jsx("p", { className: "ns-font-16-normal lg:mb-4", children: props.description }), _jsx("p", { className: "ns-font-16-normal", children: props.description_last }), _jsxs("div", { className: "hidden lg:block mt-6", children: [_jsx(Link, { to: "#", style: { width: "100%", marginBottom: "24px" }, children: "Contact US" }), _jsx(Link, { to: "#", style: { width: "100%" }, children: "Book a Meeting With Us" })] })] }), _jsx("div", { style: { backgroundImage: `url(${props.banner})` }, className: `hidden lg:block lg:w-full xl:w-1/2 ${Styles.hero_image_bg}`, children: _jsx("div", { className: Styles.ns_hero_vector_bg }) }), _jsx("div", { className: `block lg:hidden ${Styles.hero_img_container}`, children: _jsx("img", { src: props.banner, alt: "" }) }), _jsxs("div", { className: "w-full mt-6 block lg:hidden", children: [_jsx(Link, { to: "#", style: { width: "100%", marginBottom: "24px" }, children: "Contact US" }), _jsx(Link, { to: "#", style: { width: "100%" }, children: "Book a Meeting With Us" })] })] }) }) }) }), props.children] })));
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=NSLayoutHeroBanner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NSLayoutHeroBanner.js","sourceRoot":"","sources":["../../src/components/NSLayoutHeroBanner.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AACtD,OAAO,MAAM,MAAM,iCAAiC,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAYxC,MAAM,UAAU,kBAAkB,CAAC,KAA+B;IAEjE,OAAO,CACN,MAAC,QAAQ,oBAAK,KAAK,eAClB,cAAK,SAAS,EAAE,MAAM,CAAC,WAAW,YACjC,kBAAS,SAAS,EAAE,MAAM,CAAC,WAAW,YACrC,cAAK,SAAS,EAAC,iCAAiC,YAC/C,eAAK,SAAS,EAAC,iEAAiE,aAC/E,mBAAS,SAAS,EAAE,iCAAiC,MAAM,CAAC,mBAAmB,EAAE,aAChF,aAAI,SAAS,EAAC,0CAA0C,YACtD,KAAK,CAAC,KAAK,GACR,EACL,YAAG,SAAS,EAAC,4BAA4B,YACvC,KAAK,CAAC,WAAW,GACf,EACJ,YAAG,SAAS,EAAC,mBAAmB,YAC9B,KAAK,CAAC,gBAAgB,GACpB,EACJ,eAAK,SAAS,EAAC,sBAAsB,aACpC,KAAC,IAAI,IAAC,EAAE,EAAC,GAAG,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,2BAEpD,EACP,KAAC,IAAI,IAAC,EAAE,EAAC,GAAG,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uCAE9B,IACF,IACG,EACV,cAAK,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,SAAS,EAAE,sCAAsC,MAAM,CAAC,aAAa,EAAE,YAC/H,cAAK,SAAS,EAAE,MAAM,CAAC,iBAAiB,GAAQ,GAC3C,EACN,cAAK,SAAS,EAAE,mBAAmB,MAAM,CAAC,kBAAkB,EAAE,YAC7D,cACC,GAAG,EAAE,KAAK,CAAC,MAAM,EACjB,GAAG,EAAC,EAAE,GACL,GACG,EACN,eAAK,SAAS,EAAC,6BAA6B,aAC3C,KAAC,IAAI,IAAC,EAAE,EAAC,GAAG,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,2BAEpD,EACP,KAAC,IAAI,IAAC,EAAE,EAAC,GAAG,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uCAE9B,IACF,IACD,GACD,GACG,GACL,EACL,KAAK,CAAC,QAAQ,KACL,CACX,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
2
|
-
import { INSLayoutProps } from './NSLayout';
|
|
3
|
-
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
4
|
-
export interface INSLayoutTitleProps extends INSLayoutProps, IBaseComponentProps {
|
|
5
|
-
title: string;
|
|
6
|
-
description?: string;
|
|
7
|
-
children: ReactNode;
|
|
8
|
-
}
|
|
9
|
-
export declare function NSLayoutTitle(props: INSLayoutTitleProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import Styles from './NSLayoutTitle.module.css';
|
|
3
|
-
import { NSLayout } from './NSLayout';
|
|
4
|
-
import { NSSpace, NSSpaceSizeType } from './NSSpace';
|
|
5
|
-
export function NSLayoutTitle(props) {
|
|
6
|
-
var _a;
|
|
7
|
-
let lines = ((_a = props.description) !== null && _a !== void 0 ? _a : "").split(/(\n|\\n|<br>|<br\s*\/>)/gm);
|
|
8
|
-
return (_jsxs(NSLayout, Object.assign({}, props, { children: [_jsx(NSSpace, { size: NSSpaceSizeType.SMALL }), _jsxs("div", { children: [_jsx("h1", { className: Styles.title, children: props.title }), props.description && lines &&
|
|
9
|
-
_jsx("p", { className: Styles.description, children: lines.map((line, index) => {
|
|
10
|
-
return _jsxs(_Fragment, { children: [line.trim(), index != lines.length - 1 && _jsx("br", {})] });
|
|
11
|
-
}) }), _jsx(NSSpace, { size: NSSpaceSizeType.NORMAL })] }), props.children] })));
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=NSLayoutTitle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NSLayoutTitle.js","sourceRoot":"","sources":["../../src/components/NSLayoutTitle.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAUrD,MAAM,UAAU,aAAa,CAAC,KAA0B;;IAEvD,IAAI,KAAK,GAAG,CAAC,MAAA,KAAK,CAAC,WAAW,mCAAI,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACzE,OAAO,CACN,MAAC,QAAQ,oBAAK,KAAK,eAClB,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAY,EAChD,0BACC,aAAI,SAAS,EAAE,MAAM,CAAC,KAAK,YAAG,KAAK,CAAC,KAAK,GAAM,EAE9C,KAAK,CAAC,WAAW,IAAI,KAAK;wBAC1B,YAAG,SAAS,EAAE,MAAM,CAAC,WAAW,YAC/B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gCAEzB,OAAO,8BACL,IAAI,CAAC,IAAI,EAAE,EACX,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,cAAM,IAClC,CAAC;4BACL,CAAC,CAAC,GACE,EAEN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,MAAM,GAAY,IAC5C,EACL,KAAK,CAAC,QAAQ,KACL,CACX,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NSNotification.js","sourceRoot":"","sources":["../../src/components/NSNotification.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,6BAA6B,CAAC;AAWjD,MAAM,CAAN,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAE3B,oCAAa,CAAA;IACb,oCAAa,CAAA;IACb,sCAAe,CAAA;IACf,wCAAiB,CAAA;IACjB,kCAAW,CAAA;AACf,CAAC,EAPW,mBAAmB,KAAnB,mBAAmB,QAO9B;AAED,MAAM,CAAN,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAExB,+CAA2B,CAAA;IAC3B,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;IACnB,mCAAe,CAAA;AACnB,CAAC,EANW,gBAAgB,KAAhB,gBAAgB,QAM3B;AAED,MAAM,UAAU,cAAc,CAAC,KAA2B;IAEtD,IAAI,SAAS,GAAG,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACrE,IAAI,IAAI,GAAE,KAAK,CAAC,IAAI,CAAC;IACrB,IAAI,GAAG,GAAC,EAAE,CAAC;IACX,QAAQ,IAAI,EACZ;QACI,KAAK,OAAO;YACR,GAAG,GAAG,6DAA6D,CAAC;YACpE,MAAM;QACV,KAAK,SAAS;YACV,GAAG,GAAG,+DAA+D,CAAC;YACtE,MAAM;QACV,KAAK,SAAS;YACV,GAAG,GAAG,+DAA+D,CAAC;YACtE,MAAM;QACV,KAAK,aAAa;YACd,GAAG,GAAG,4DAA4D,CAAC;KAC1E;IACD,OAAO,CACH,eAAK,EAAE,EAAE,KAAK,CAAC,EAAE,EACb,SAAS,EAAE,GAAG,MAAM,CAAC,YAAY,IAAI,SAAS,EAAE,EAChD,KAAK,EAAE,KAAK,CAAC,KAAK,aAElB,YAAG,SAAS,EAAE,wBAAwB,YAAG,KAAK,CAAC,IAAI,GAAK,EACxD,cACI,SAAS,EAAE,MAAM,CAAC,YAAY,EAC9B,GAAG,EAAE,GAAG,EACR,GAAG,EAAC,MAAM,EACV,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,OAAO,EAAE,KAAK,CAAC,OAAO,GACxB,IACA,CACT,CAAC;AACN,CAAC"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import { ReactNode } from 'react';
|
|
4
|
-
import { NSLayout, INSLayoutProps } from './NSLayout';
|
|
5
|
-
import Styles from './NSLayoutHeroBanner.module.css'
|
|
6
|
-
import { Link } from 'react-router-dom';
|
|
7
|
-
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
8
|
-
|
|
9
|
-
export interface INSLayoutHeroBannerProps extends INSLayoutProps, IBaseComponentProps
|
|
10
|
-
{
|
|
11
|
-
title: string;
|
|
12
|
-
description?: string;
|
|
13
|
-
description_last?: string;
|
|
14
|
-
banner: string;
|
|
15
|
-
children: ReactNode;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function NSLayoutHeroBanner(props: INSLayoutHeroBannerProps)
|
|
19
|
-
{
|
|
20
|
-
return (
|
|
21
|
-
<NSLayout {...props} >
|
|
22
|
-
<div className={Styles.hero_holder}>
|
|
23
|
-
<section className={Styles.hero_wraper}>
|
|
24
|
-
<div className="container mx-auto px-4 lg:px-12">
|
|
25
|
-
<div className="flex flex-wrap lg:flex-nowrap justify-center lg:justify-between">
|
|
26
|
-
<article className={`mb-6 lg:mb-0 lg:mb-12lg:pe-12 ${Styles.hero_text_container}`} >
|
|
27
|
-
<h1 className="ns-font-32-bold ns_font_lg_40_bold mb-6">
|
|
28
|
-
{props.title}
|
|
29
|
-
</h1>
|
|
30
|
-
<p className="ns-font-16-normal lg:mb-4">
|
|
31
|
-
{props.description}
|
|
32
|
-
</p>
|
|
33
|
-
<p className="ns-font-16-normal">
|
|
34
|
-
{props.description_last}
|
|
35
|
-
</p>
|
|
36
|
-
<div className="hidden lg:block mt-6">
|
|
37
|
-
<Link to="#" style={{ width: "100%", marginBottom: "24px" }} >
|
|
38
|
-
Contact US
|
|
39
|
-
</Link>
|
|
40
|
-
<Link to="#" style={{ width: "100%" }} >
|
|
41
|
-
Book a Meeting With Us
|
|
42
|
-
</Link>
|
|
43
|
-
</div>
|
|
44
|
-
</article>
|
|
45
|
-
<div style={{ backgroundImage: `url(${props.banner})` }} className={`hidden lg:block lg:w-full xl:w-1/2 ${Styles.hero_image_bg}`}>
|
|
46
|
-
<div className={Styles.ns_hero_vector_bg}></div>
|
|
47
|
-
</div>
|
|
48
|
-
<div className={`block lg:hidden ${Styles.hero_img_container}`}>
|
|
49
|
-
<img
|
|
50
|
-
src={props.banner}
|
|
51
|
-
alt=""
|
|
52
|
-
/>
|
|
53
|
-
</div>
|
|
54
|
-
<div className="w-full mt-6 block lg:hidden">
|
|
55
|
-
<Link to="#" style={{ width: "100%", marginBottom: "24px" }} >
|
|
56
|
-
Contact US
|
|
57
|
-
</Link>
|
|
58
|
-
<Link to="#" style={{ width: "100%" }} >
|
|
59
|
-
Book a Meeting With Us
|
|
60
|
-
</Link>
|
|
61
|
-
</div>
|
|
62
|
-
</div>
|
|
63
|
-
</div>
|
|
64
|
-
</section>
|
|
65
|
-
</div>
|
|
66
|
-
{props.children}
|
|
67
|
-
</NSLayout>
|
|
68
|
-
);
|
|
69
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import Styles from './NSLayoutTitle.module.css';
|
|
2
|
-
import { ReactNode } from 'react';
|
|
3
|
-
import { NSLayout, INSLayoutProps } from './NSLayout';
|
|
4
|
-
import { NSSpace, NSSpaceSizeType } from './NSSpace';
|
|
5
|
-
import { IBaseComponentProps } from '../props/IBaseComponentProps';
|
|
6
|
-
|
|
7
|
-
export interface INSLayoutTitleProps extends INSLayoutProps, IBaseComponentProps
|
|
8
|
-
{
|
|
9
|
-
title: string;
|
|
10
|
-
description?: string;
|
|
11
|
-
children: ReactNode;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export function NSLayoutTitle(props: INSLayoutTitleProps)
|
|
15
|
-
{
|
|
16
|
-
let lines = (props.description ?? "").split(/(\n|\\n|<br>|<br\s*\/>)/gm);
|
|
17
|
-
return (
|
|
18
|
-
<NSLayout {...props}>
|
|
19
|
-
<NSSpace size={NSSpaceSizeType.SMALL}></NSSpace>
|
|
20
|
-
<div>
|
|
21
|
-
<h1 className={Styles.title}>{props.title}</h1>
|
|
22
|
-
{
|
|
23
|
-
props.description && lines &&
|
|
24
|
-
<p className={Styles.description}>{
|
|
25
|
-
lines.map((line, index) =>
|
|
26
|
-
{
|
|
27
|
-
return <>
|
|
28
|
-
{line.trim()}
|
|
29
|
-
{index != lines.length - 1 && <br />}
|
|
30
|
-
</>;
|
|
31
|
-
})
|
|
32
|
-
}</p>
|
|
33
|
-
}
|
|
34
|
-
<NSSpace size={NSSpaceSizeType.NORMAL}></NSSpace>
|
|
35
|
-
</div>
|
|
36
|
-
{props.children}
|
|
37
|
-
</NSLayout>
|
|
38
|
-
);
|
|
39
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|