namirasoft-site-react 1.4.91 → 1.4.92

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 (268) hide show
  1. package/.dockerignore +86 -86
  2. package/.env.template +10 -10
  3. package/Dockerfile +18 -18
  4. package/config-overrides.js +70 -70
  5. package/dist/App.css +58 -0
  6. package/dist/components/NSAccordion.module.css +4 -4
  7. package/dist/components/NSActionMenu.js +2 -2
  8. package/dist/components/NSActionMenu.module.css +98 -98
  9. package/dist/components/NSAssistantButton.module.css +135 -135
  10. package/dist/components/NSBarAction.module.css +97 -97
  11. package/dist/components/NSBarAlert.module.css +69 -69
  12. package/dist/components/NSBarHeroBanner.module.css +42 -42
  13. package/dist/components/NSBarNotification.module.css +34 -34
  14. package/dist/components/NSBarTitle.module.css +9 -9
  15. package/dist/components/NSBox.module.css +126 -126
  16. package/dist/components/NSBoxBoolean.module.css +88 -88
  17. package/dist/components/NSBoxCombo.module.css +6 -6
  18. package/dist/components/NSBoxCopy.module.css +43 -43
  19. package/dist/components/NSBoxDate.module.css +53 -53
  20. package/dist/components/NSBoxDateTime.module.css +48 -48
  21. package/dist/components/NSBoxEntity.module.css +21 -21
  22. package/dist/components/NSBoxErrorNotifier.module.css +2 -2
  23. package/dist/components/NSBoxFile.module.css +4 -4
  24. package/dist/components/NSBoxLabel.module.css +14 -14
  25. package/dist/components/NSBoxRadio.module.css +70 -70
  26. package/dist/components/NSBoxTextArea.module.css +83 -83
  27. package/dist/components/NSButton.module.css +42 -42
  28. package/dist/components/NSButtonBlue.module.css +4 -4
  29. package/dist/components/NSButtonGreen.module.css +4 -4
  30. package/dist/components/NSButtonRed.module.css +4 -4
  31. package/dist/components/NSCard.module.css +114 -114
  32. package/dist/components/NSCardScreenshot.module.css +41 -41
  33. package/dist/components/NSChartColumn.module.css +7 -7
  34. package/dist/components/NSChartPie.module.css +0 -0
  35. package/dist/components/NSChartTable.module.css +21 -21
  36. package/dist/components/NSCopyToClipboard.d.ts +7 -0
  37. package/dist/components/NSCopyToClipboard.js +13 -0
  38. package/dist/components/NSCopyToClipboard.js.map +1 -0
  39. package/dist/components/NSCopyToClipboard.module.css +44 -0
  40. package/dist/components/NSDialog.module.css +106 -106
  41. package/dist/components/NSDownTimer.module.css +55 -55
  42. package/dist/components/NSDownload.module.css +46 -46
  43. package/dist/components/NSElectronicCard.module.css +60 -60
  44. package/dist/components/NSEntityBar.module.css +77 -77
  45. package/dist/components/NSEntityCardBackground.module.css +27 -27
  46. package/dist/components/NSFilterBox.module.css +62 -62
  47. package/dist/components/NSFilterBoxDialog.module.css +36 -36
  48. package/dist/components/NSFilterItem.module.css +23 -23
  49. package/dist/components/NSFooter.module.css +123 -123
  50. package/dist/components/NSGroupedList.module.css +72 -72
  51. package/dist/components/NSHeader.module.css +291 -291
  52. package/dist/components/NSHeaderScreenshot.module.css +35 -35
  53. package/dist/components/NSLayout.module.css +13 -13
  54. package/dist/components/NSLine.module.css +12 -12
  55. package/dist/components/NSLink.module.css +36 -36
  56. package/dist/components/NSLoading.module.css +30 -30
  57. package/dist/components/NSNoData.module.css +8 -8
  58. package/dist/components/NSPageSelectionModal.module.css +103 -103
  59. package/dist/components/NSPagination.module.css +110 -110
  60. package/dist/components/NSPanel.module.css +46 -46
  61. package/dist/components/NSRadioButton.d.ts +25 -0
  62. package/dist/components/NSRadioButton.js +49 -0
  63. package/dist/components/NSRadioButton.js.map +1 -0
  64. package/dist/components/NSRange.module.css +66 -66
  65. package/dist/components/NSSection.module.css +10 -10
  66. package/dist/components/NSSectionBars.module.css +10 -10
  67. package/dist/components/NSSectionCards.module.css +38 -38
  68. package/dist/components/NSTabPage.module.css +59 -59
  69. package/dist/components/NSTable.module.css +291 -291
  70. package/dist/components/NSTag.module.css +52 -52
  71. package/dist/components/NSTimeTable.module.css +6 -6
  72. package/dist/components/NSTimelineMonthly.module.css +71 -71
  73. package/dist/components/NSTitle.module.css +15 -15
  74. package/dist/index.css +6 -0
  75. package/dist/pages/NSNotFoundPage.module.css +17 -17
  76. package/dist/pages/NSUpdating.module.css +35 -35
  77. package/package.json +72 -72
  78. package/public/index.html +38 -38
  79. package/src/App.css +57 -57
  80. package/src/App.tsx +406 -406
  81. package/src/Color.tsx +10 -10
  82. package/src/CopyToClipboard.ts +6 -6
  83. package/src/Validator.ts +117 -117
  84. package/src/components/NSAccordion.module.css +4 -4
  85. package/src/components/NSAccordion.tsx +51 -51
  86. package/src/components/NSActionMenu.module.css +98 -98
  87. package/src/components/NSActionMenu.tsx +90 -90
  88. package/src/components/NSAssistantButton.module.css +135 -135
  89. package/src/components/NSAssistantButton.tsx +70 -70
  90. package/src/components/NSBarAction.module.css +97 -97
  91. package/src/components/NSBarAction.tsx +89 -89
  92. package/src/components/NSBarAlert.module.css +69 -69
  93. package/src/components/NSBarAlert.tsx +30 -30
  94. package/src/components/NSBarHeroBanner.module.css +42 -42
  95. package/src/components/NSBarHeroBanner.tsx +61 -61
  96. package/src/components/NSBarNotification.module.css +34 -34
  97. package/src/components/NSBarNotification.tsx +87 -87
  98. package/src/components/NSBarTitle.module.css +9 -9
  99. package/src/components/NSBarTitle.tsx +29 -29
  100. package/src/components/NSBox.module.css +126 -126
  101. package/src/components/NSBoxBoolean.module.css +88 -88
  102. package/src/components/NSBoxBoolean.tsx +124 -124
  103. package/src/components/NSBoxBooleans.tsx +159 -159
  104. package/src/components/NSBoxCombo.module.css +6 -6
  105. package/src/components/NSBoxCombo.tsx +151 -151
  106. package/src/components/NSBoxCopy.module.css +43 -43
  107. package/src/components/NSBoxCopy.tsx +41 -41
  108. package/src/components/NSBoxDate.module.css +53 -53
  109. package/src/components/NSBoxDate.tsx +88 -88
  110. package/src/components/NSBoxDateTime.module.css +48 -48
  111. package/src/components/NSBoxDateTime.tsx +89 -89
  112. package/src/components/NSBoxDouble.tsx +92 -92
  113. package/src/components/NSBoxDuration.tsx +92 -92
  114. package/src/components/NSBoxEmail.tsx +103 -103
  115. package/src/components/NSBoxEntity.module.css +21 -21
  116. package/src/components/NSBoxEntity.tsx +197 -197
  117. package/src/components/NSBoxEnum.tsx +55 -55
  118. package/src/components/NSBoxErrorNotifier.module.css +2 -2
  119. package/src/components/NSBoxErrorNotifier.tsx +32 -32
  120. package/src/components/NSBoxFile.module.css +4 -4
  121. package/src/components/NSBoxFile.tsx +124 -124
  122. package/src/components/NSBoxIPV4.tsx +97 -97
  123. package/src/components/NSBoxIPV6.tsx +94 -94
  124. package/src/components/NSBoxInteger.tsx +94 -94
  125. package/src/components/NSBoxLabel.module.css +14 -14
  126. package/src/components/NSBoxLabel.tsx +29 -29
  127. package/src/components/NSBoxPassword.tsx +90 -90
  128. package/src/components/NSBoxPhone.tsx +97 -97
  129. package/src/components/NSBoxPrice.tsx +92 -92
  130. package/src/components/NSBoxRadio.module.css +70 -70
  131. package/src/components/NSBoxRadio.tsx +111 -111
  132. package/src/components/NSBoxSearch.tsx +107 -107
  133. package/src/components/NSBoxString.tsx +106 -106
  134. package/src/components/NSBoxTextArea.module.css +83 -83
  135. package/src/components/NSBoxTextArea.tsx +112 -112
  136. package/src/components/NSBoxTime.tsx +92 -92
  137. package/src/components/NSButton.module.css +42 -42
  138. package/src/components/NSButton.tsx +25 -25
  139. package/src/components/NSButtonBlue.module.css +4 -4
  140. package/src/components/NSButtonBlue.tsx +19 -19
  141. package/src/components/NSButtonGreen.module.css +4 -4
  142. package/src/components/NSButtonGreen.tsx +19 -19
  143. package/src/components/NSButtonRed.module.css +4 -4
  144. package/src/components/NSButtonRed.tsx +19 -19
  145. package/src/components/NSCard.module.css +114 -114
  146. package/src/components/NSCard.tsx +63 -63
  147. package/src/components/NSCardScreenshot.module.css +41 -41
  148. package/src/components/NSCardScreenshot.tsx +31 -31
  149. package/src/components/NSChartColumn.module.css +7 -7
  150. package/src/components/NSChartColumn.tsx +106 -106
  151. package/src/components/NSChartDoughnut.tsx +108 -108
  152. package/src/components/NSChartPie.tsx +105 -105
  153. package/src/components/NSChartRange.tsx +16 -16
  154. package/src/components/NSChartTable.module.css +21 -21
  155. package/src/components/NSChartTable.tsx +94 -94
  156. package/src/components/NSCopy.tsx +67 -67
  157. package/src/components/NSDeleteDialog.tsx +26 -26
  158. package/src/components/NSDialog.module.css +106 -106
  159. package/src/components/NSDialog.tsx +47 -47
  160. package/src/components/NSDownTimer.module.css +55 -55
  161. package/src/components/NSDownTimer.tsx +77 -77
  162. package/src/components/NSDownload.module.css +46 -46
  163. package/src/components/NSDownload.tsx +62 -62
  164. package/src/components/NSElectronicCard.module.css +60 -60
  165. package/src/components/NSElectronicCard.tsx +45 -45
  166. package/src/components/NSEntityBar.module.css +77 -77
  167. package/src/components/NSEntityBar.tsx +27 -27
  168. package/src/components/NSEntityCardBackground.module.css +27 -27
  169. package/src/components/NSEntityCardBackground.tsx +34 -34
  170. package/src/components/NSFilterBox.module.css +62 -62
  171. package/src/components/NSFilterBox.tsx +352 -352
  172. package/src/components/NSFilterBoxDialog.module.css +36 -36
  173. package/src/components/NSFilterBoxDialog.tsx +74 -74
  174. package/src/components/NSFilterItem.module.css +23 -23
  175. package/src/components/NSFilterItem.tsx +73 -73
  176. package/src/components/NSFooter.module.css +123 -123
  177. package/src/components/NSFooter.tsx +289 -289
  178. package/src/components/NSGroupedList.module.css +72 -72
  179. package/src/components/NSGroupedList.tsx +115 -115
  180. package/src/components/NSHeader.module.css +291 -291
  181. package/src/components/NSHeader.tsx +250 -250
  182. package/src/components/NSHeaderScreenshot.module.css +35 -35
  183. package/src/components/NSHeaderScreenshot.tsx +38 -38
  184. package/src/components/NSInfoDialog.tsx +36 -36
  185. package/src/components/NSLayout.module.css +13 -13
  186. package/src/components/NSLayout.tsx +109 -109
  187. package/src/components/NSLine.module.css +12 -12
  188. package/src/components/NSLine.tsx +15 -15
  189. package/src/components/NSLink.module.css +36 -36
  190. package/src/components/NSLink.tsx +25 -25
  191. package/src/components/NSLinkBlue.tsx +20 -20
  192. package/src/components/NSLinkGreen.tsx +5 -5
  193. package/src/components/NSLinkRed.tsx +5 -5
  194. package/src/components/NSLoading.module.css +30 -30
  195. package/src/components/NSLoading.tsx +20 -20
  196. package/src/components/NSNoData.module.css +8 -8
  197. package/src/components/NSNoData.tsx +24 -24
  198. package/src/components/NSPageSelectionModal.module.css +103 -103
  199. package/src/components/NSPageSelectionModal.tsx +228 -228
  200. package/src/components/NSPagination.module.css +110 -110
  201. package/src/components/NSPagination.tsx +191 -191
  202. package/src/components/NSPanel.module.css +46 -46
  203. package/src/components/NSPanel.tsx +19 -19
  204. package/src/components/NSProductList.tsx +43 -43
  205. package/src/components/NSRange.module.css +66 -66
  206. package/src/components/NSRange.tsx +81 -81
  207. package/src/components/NSRepeater.tsx +175 -175
  208. package/src/components/NSSection.module.css +10 -10
  209. package/src/components/NSSection.tsx +23 -23
  210. package/src/components/NSSectionBars.module.css +10 -10
  211. package/src/components/NSSectionBars.tsx +25 -25
  212. package/src/components/NSSectionCards.module.css +38 -38
  213. package/src/components/NSSectionCards.tsx +51 -51
  214. package/src/components/NSSectionTitle.tsx +21 -21
  215. package/src/components/NSSpace.tsx +28 -28
  216. package/src/components/NSTabPage.module.css +59 -59
  217. package/src/components/NSTabPage.tsx +78 -78
  218. package/src/components/NSTable.module.css +291 -291
  219. package/src/components/NSTable.tsx +439 -439
  220. package/src/components/NSTag.module.css +52 -52
  221. package/src/components/NSTag.tsx +73 -73
  222. package/src/components/NSTimeTable.module.css +6 -6
  223. package/src/components/NSTimeTable.tsx +49 -49
  224. package/src/components/NSTimelineMonthly.module.css +71 -71
  225. package/src/components/NSTimelineMonthly.tsx +42 -42
  226. package/src/components/NSTitle.module.css +15 -15
  227. package/src/components/NSTitle.tsx +19 -19
  228. package/src/formatter/BackColorFormatter.tsx +20 -20
  229. package/src/formatter/BaseColumnFormatter.ts +14 -14
  230. package/src/formatter/BooleanFormatter.ts +20 -20
  231. package/src/formatter/DateFormatter.ts +15 -15
  232. package/src/formatter/DateTimeFormatter.ts +15 -15
  233. package/src/formatter/DurationFormatter.ts +8 -8
  234. package/src/formatter/EmailFormatter.ts +8 -8
  235. package/src/formatter/EnumFormatter.ts +8 -8
  236. package/src/formatter/FloatFormatter.ts +8 -8
  237. package/src/formatter/ForeColorFormatter.tsx +20 -20
  238. package/src/formatter/ForeignIDFormatter.ts +8 -8
  239. package/src/formatter/IDFormatter.ts +8 -8
  240. package/src/formatter/IPFormatter.ts +8 -8
  241. package/src/formatter/IntegerFormatter.ts +8 -8
  242. package/src/formatter/JsonFormatter.ts +8 -8
  243. package/src/formatter/MoneyFormatter.ts +8 -8
  244. package/src/formatter/PhoneFormatter.ts +8 -8
  245. package/src/formatter/StringFormatter.ts +8 -8
  246. package/src/formatter/TimeFormatter.ts +16 -16
  247. package/src/formatter/UnknowFormatter.ts +8 -8
  248. package/src/index.tsx +7 -7
  249. package/src/main.ts +118 -118
  250. package/src/pages/NSNotFoundPage.module.css +17 -17
  251. package/src/pages/NSNotFoundPage.tsx +11 -11
  252. package/src/pages/NSUpdating.module.css +35 -35
  253. package/src/pages/NSUpdating.tsx +32 -32
  254. package/src/props/IBaseComponentProps.ts +8 -8
  255. package/src/props/IHeaderIconProps.ts +10 -10
  256. package/src/props/IHeaderProps.ts +7 -7
  257. package/src/props/IImageProps.ts +4 -4
  258. package/src/props/ILinkProps.ts +5 -5
  259. package/src/props/IValidationNumberProps.ts +4 -4
  260. package/src/props/IValidationProps.ts +7 -7
  261. package/src/props/IValidationRegexProps.ts +4 -4
  262. package/src/props/IValidationStringProps.ts +4 -4
  263. package/src/routing/INSRouterMaker.ts +6 -6
  264. package/src/routing/INSRouterProps.ts +5 -5
  265. package/src/routing/INSRouterState.ts +5 -5
  266. package/src/routing/NSRouterMaker.tsx +33 -33
  267. package/src/routing/Notifier.ts +79 -79
  268. package/tsconfig.json +43 -43
@@ -1,62 +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
- );
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
62
  }
@@ -1,35 +1,35 @@
1
- .ns_messenger {
2
- background-color: #fff;
3
- padding: 12px 15px;
4
- display: flex;
5
- justify-content: space-between;
6
- align-items: center;
7
- }
8
-
9
- .ns_gray {
10
- border: 3px solid gray;
11
- box-shadow: 1px 1px 8px 0px gray;
12
- }
13
-
14
- .ns_blue {
15
- border: 3px solid blue;
16
- box-shadow: 1px 1px 8px 0px blue;
17
- }
18
-
19
- .ns_green {
20
- border: 3px solid rgba(112, 224, 0, 1);
21
- box-shadow: 1px 1px 8px 0px rgba(112, 224, 0, 1);
22
- }
23
-
24
- .ns_yellow {
25
- border: 3px solid yellow;
26
- box-shadow: 1px 1px 8px 0px yellow;
27
- }
28
-
29
- .ns_red {
30
- border: 3px solid red;
31
- box-shadow: 1px 1px 8px 0px red;
32
- }
33
- .ns_exit_icon{
34
- cursor: pointer;
1
+ .ns_messenger {
2
+ background-color: #fff;
3
+ padding: 12px 15px;
4
+ display: flex;
5
+ justify-content: space-between;
6
+ align-items: center;
7
+ }
8
+
9
+ .ns_gray {
10
+ border: 3px solid gray;
11
+ box-shadow: 1px 1px 8px 0px gray;
12
+ }
13
+
14
+ .ns_blue {
15
+ border: 3px solid blue;
16
+ box-shadow: 1px 1px 8px 0px blue;
17
+ }
18
+
19
+ .ns_green {
20
+ border: 3px solid rgba(112, 224, 0, 1);
21
+ box-shadow: 1px 1px 8px 0px rgba(112, 224, 0, 1);
22
+ }
23
+
24
+ .ns_yellow {
25
+ border: 3px solid yellow;
26
+ box-shadow: 1px 1px 8px 0px yellow;
27
+ }
28
+
29
+ .ns_red {
30
+ border: 3px solid red;
31
+ box-shadow: 1px 1px 8px 0px red;
32
+ }
33
+ .ns_exit_icon{
34
+ cursor: pointer;
35
35
  }
@@ -1,88 +1,88 @@
1
- import Styles from "./NSBarNotification.module.css";
2
- import { IBaseComponentProps } from "../props/IBaseComponentProps";
3
- import { useState } from "react"
4
-
5
- export interface INSBarNotificationProps extends IBaseComponentProps
6
- {
7
- text: string;
8
- type: NotificationType;
9
- color: NSBarNotificationColor;
10
- onClose: () => void;
11
- }
12
- export interface INSBarNotificationState
13
- {
14
- show: boolean
15
- }
16
- export enum NSBarNotificationColor
17
- {
18
- GRAY = "GRAY",
19
- BLUE = "BLUE",
20
- GREEN = "GREEN",
21
- YELLOW = "YELLOW",
22
- RED = "RED",
23
- }
24
-
25
- export enum NotificationType
26
- {
27
- Information = "Information",
28
- Warning = "Warning",
29
- Success = "Success",
30
- Error = "Error",
31
- }
32
-
33
- export function NSBarNotification(props: INSBarNotificationProps)
34
- {
35
- const [state, setState] = useState<INSBarNotificationState>({ show: true });
36
- let className = Styles["ns_" + props.color.toString().toLowerCase()];
37
- let type = props.type;
38
- let src = "";
39
-
40
-
41
- function onClose()
42
- {
43
- setState({ show: false });
44
- props.onClose();
45
- }
46
- switch (type)
47
- {
48
- case "Error":
49
- src = "https://static.namirasoft.com/image/concept/close/error.svg";
50
- break;
51
- case "Success":
52
- src = "https://static.namirasoft.com/image/concept/close/success.svg";
53
- break;
54
- case "Warning":
55
- src = "https://static.namirasoft.com/image/concept/close/warning.svg";
56
- break;
57
- case "Information":
58
- src = "https://static.namirasoft.com/image/concept/close/info.svg";
59
- }
60
- if (state.show)
61
- setTimeout(() =>
62
- {
63
- setState({ show: false })
64
- }, 8000);
65
- return (
66
- <>
67
- {
68
- state.show &&
69
- <>
70
- <div id={props.id}
71
- className={`${Styles.ns_messenger} ${className}`}
72
- style={props.style}
73
- >
74
- <p className={`mb-0 ns-font-16-normal`}>{props.text}</p>
75
- <img
76
- className={Styles.ns_exit_icon}
77
- src={src}
78
- alt="exit"
79
- width={32}
80
- height={32}
81
- onClick={onClose}
82
- />
83
- </div>
84
- </>
85
- }
86
- </>
87
- )
1
+ import Styles from "./NSBarNotification.module.css";
2
+ import { IBaseComponentProps } from "../props/IBaseComponentProps";
3
+ import { useState } from "react"
4
+
5
+ export interface INSBarNotificationProps extends IBaseComponentProps
6
+ {
7
+ text: string;
8
+ type: NotificationType;
9
+ color: NSBarNotificationColor;
10
+ onClose: () => void;
11
+ }
12
+ export interface INSBarNotificationState
13
+ {
14
+ show: boolean
15
+ }
16
+ export enum NSBarNotificationColor
17
+ {
18
+ GRAY = "GRAY",
19
+ BLUE = "BLUE",
20
+ GREEN = "GREEN",
21
+ YELLOW = "YELLOW",
22
+ RED = "RED",
23
+ }
24
+
25
+ export enum NotificationType
26
+ {
27
+ Information = "Information",
28
+ Warning = "Warning",
29
+ Success = "Success",
30
+ Error = "Error",
31
+ }
32
+
33
+ export function NSBarNotification(props: INSBarNotificationProps)
34
+ {
35
+ const [state, setState] = useState<INSBarNotificationState>({ show: true });
36
+ let className = Styles["ns_" + props.color.toString().toLowerCase()];
37
+ let type = props.type;
38
+ let src = "";
39
+
40
+
41
+ function onClose()
42
+ {
43
+ setState({ show: false });
44
+ props.onClose();
45
+ }
46
+ switch (type)
47
+ {
48
+ case "Error":
49
+ src = "https://static.namirasoft.com/image/concept/close/error.svg";
50
+ break;
51
+ case "Success":
52
+ src = "https://static.namirasoft.com/image/concept/close/success.svg";
53
+ break;
54
+ case "Warning":
55
+ src = "https://static.namirasoft.com/image/concept/close/warning.svg";
56
+ break;
57
+ case "Information":
58
+ src = "https://static.namirasoft.com/image/concept/close/info.svg";
59
+ }
60
+ if (state.show)
61
+ setTimeout(() =>
62
+ {
63
+ setState({ show: false })
64
+ }, 8000);
65
+ return (
66
+ <>
67
+ {
68
+ state.show &&
69
+ <>
70
+ <div id={props.id}
71
+ className={`${Styles.ns_messenger} ${className}`}
72
+ style={props.style}
73
+ >
74
+ <p className={`mb-0 ns-font-16-normal`}>{props.text}</p>
75
+ <img
76
+ className={Styles.ns_exit_icon}
77
+ src={src}
78
+ alt="exit"
79
+ width={32}
80
+ height={32}
81
+ onClick={onClose}
82
+ />
83
+ </div>
84
+ </>
85
+ }
86
+ </>
87
+ )
88
88
  }
@@ -1,10 +1,10 @@
1
- .title {
2
- text-align: center;
3
- color: rgba(20, 27, 92, 1);
4
- }
5
-
6
- .description {
7
- text-align: center;
8
- color: rgba(20, 27, 92, 1);
9
- margin: 0px;
1
+ .title {
2
+ text-align: center;
3
+ color: rgba(20, 27, 92, 1);
4
+ }
5
+
6
+ .description {
7
+ text-align: center;
8
+ color: rgba(20, 27, 92, 1);
9
+ margin: 0px;
10
10
  }
@@ -1,30 +1,30 @@
1
- import { Fragment } from 'react/jsx-runtime';
2
- import Styles from './NSBarTitle.module.css';
3
-
4
- export interface INSBarTitleProps
5
- {
6
- title: string;
7
- description?: string;
8
- }
9
-
10
- export function NSBarTitle(props: INSBarTitleProps)
11
- {
12
- let lines = (props.description ?? "").split(/(\n|\\n|<br>|<br\s*\/>)/gm);
13
- return (
14
- <div className="container">
15
- <h1 className={Styles.title}>{props.title}</h1>
16
- {
17
- props.description && lines &&
18
- <p className={Styles.description}>{
19
- lines.map((line, index) =>
20
- {
21
- return <Fragment key={`NSBarTitle_fragment_key_${index}`}>
22
- {line.trim()}
23
- {index !== lines.length - 1 && <br />}
24
- </Fragment>;
25
- })
26
- }</p>
27
- }
28
- </div>
29
- );
1
+ import { Fragment } from 'react/jsx-runtime';
2
+ import Styles from './NSBarTitle.module.css';
3
+
4
+ export interface INSBarTitleProps
5
+ {
6
+ title: string;
7
+ description?: string;
8
+ }
9
+
10
+ export function NSBarTitle(props: INSBarTitleProps)
11
+ {
12
+ let lines = (props.description ?? "").split(/(\n|\\n|<br>|<br\s*\/>)/gm);
13
+ return (
14
+ <div className="container">
15
+ <h1 className={Styles.title}>{props.title}</h1>
16
+ {
17
+ props.description && lines &&
18
+ <p className={Styles.description}>{
19
+ lines.map((line, index) =>
20
+ {
21
+ return <Fragment key={`NSBarTitle_fragment_key_${index}`}>
22
+ {line.trim()}
23
+ {index !== lines.length - 1 && <br />}
24
+ </Fragment>;
25
+ })
26
+ }</p>
27
+ }
28
+ </div>
29
+ );
30
30
  }