namirasoft-site-react 1.4.145 → 1.4.147

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 (273) hide show
  1. package/.dockerignore +86 -86
  2. package/.env.template +10 -10
  3. package/Dockerfile +18 -18
  4. package/config-overrides.js +72 -72
  5. package/dist/components/NSBarAction.module.css +97 -97
  6. package/dist/components/NSBarAlert.module.css +79 -79
  7. package/dist/components/NSBarNotification.module.css +34 -34
  8. package/dist/components/NSBarTitle.module.css +9 -9
  9. package/dist/components/NSBox.module.css +50 -50
  10. package/dist/components/NSBoxBaseCombo.module.css +6 -6
  11. package/dist/components/NSBoxBoolean.module.css +67 -67
  12. package/dist/components/NSBoxDate.module.css +4 -4
  13. package/dist/components/NSBoxDateTime.module.css +4 -4
  14. package/dist/components/NSBoxDuration.module.css +4 -4
  15. package/dist/components/NSBoxFile.module.css +10 -10
  16. package/dist/components/NSBoxPhone.module.css +35 -35
  17. package/dist/components/NSBoxRadio.module.css +33 -33
  18. package/dist/components/NSBoxTextArea.module.css +12 -12
  19. package/dist/components/NSBoxTime.module.css +4 -4
  20. package/dist/components/NSButton.module.css +41 -41
  21. package/dist/components/NSButtonBlue.module.css +4 -4
  22. package/dist/components/NSButtonGreen.module.css +4 -4
  23. package/dist/components/NSButtonRed.module.css +4 -4
  24. package/dist/components/NSCard.module.css +114 -114
  25. package/dist/components/NSCardScreenshot.module.css +41 -41
  26. package/dist/components/NSChartColumn.module.css +7 -7
  27. package/dist/components/NSChartTable.module.css +21 -21
  28. package/dist/components/NSColumn.d.ts +6 -0
  29. package/dist/components/NSColumn.js +7 -0
  30. package/dist/components/NSColumn.js.map +1 -0
  31. package/dist/components/NSColumn.module.css +17 -0
  32. package/dist/components/NSCopyBox.module.css +43 -43
  33. package/dist/components/NSDialog.module.css +110 -110
  34. package/dist/components/NSDialogPageSelection.module.css +103 -103
  35. package/dist/components/NSDownTimer.module.css +55 -55
  36. package/dist/components/NSDownload.module.css +46 -46
  37. package/dist/components/NSElectronicCard.module.css +60 -60
  38. package/dist/components/NSEntityCardBackground.module.css +27 -27
  39. package/dist/components/NSFilterBox.module.css +55 -55
  40. package/dist/components/NSFilterItem.module.css +23 -23
  41. package/dist/components/NSFooter.module.css +123 -123
  42. package/dist/components/NSHeader.module.css +291 -291
  43. package/dist/components/NSHeaderScreenshot.module.css +35 -35
  44. package/dist/components/NSLabel.module.css +15 -15
  45. package/dist/components/NSLabelErrorNotifier.module.css +2 -2
  46. package/dist/components/NSLayout.js +1 -1
  47. package/dist/components/NSLayout.js.map +1 -1
  48. package/dist/components/NSLayout.module.css +14 -13
  49. package/dist/components/NSLine.module.css +12 -12
  50. package/dist/components/NSLink.module.css +36 -36
  51. package/dist/components/NSListGrouped.module.css +72 -72
  52. package/dist/components/NSListProduct.d.ts +1 -2
  53. package/dist/components/NSListProduct.js +2 -2
  54. package/dist/components/NSListProduct.js.map +1 -1
  55. package/dist/components/NSLoading.module.css +30 -30
  56. package/dist/components/NSMenuAction.js +2 -2
  57. package/dist/components/NSMenuAction.module.css +78 -78
  58. package/dist/components/NSMenuButton.module.css +44 -44
  59. package/dist/components/NSNoData.module.css +9 -9
  60. package/dist/components/NSPagination.module.css +85 -85
  61. package/dist/components/NSPanel.module.css +18 -18
  62. package/dist/components/NSPanelAccordion.module.css +4 -4
  63. package/dist/components/NSRange.module.css +66 -66
  64. package/dist/components/NSRow.module.css +17 -17
  65. package/dist/components/NSSection.module.css +4 -4
  66. package/dist/components/NSSectionCards.module.css +38 -38
  67. package/dist/components/NSSectionTiles.module.css +10 -10
  68. package/dist/components/NSTabPage.module.css +59 -59
  69. package/dist/components/NSTable.module.css +261 -261
  70. package/dist/components/NSTag.module.css +52 -52
  71. package/dist/components/NSTile.module.css +77 -77
  72. package/dist/components/NSTimelineMonthly.module.css +71 -71
  73. package/dist/components/NSTitle.module.css +15 -15
  74. package/dist/main.d.ts +1 -0
  75. package/dist/main.js +1 -0
  76. package/dist/main.js.map +1 -1
  77. package/dist/pages/NSNotFoundPage.module.css +17 -17
  78. package/dist/pages/NSUpdating.module.css +35 -35
  79. package/package.json +76 -76
  80. package/public/index.html +38 -38
  81. package/src/App.css +33 -33
  82. package/src/App.tsx +94 -94
  83. package/src/Color.tsx +10 -10
  84. package/src/CopyToClipboard.ts +6 -6
  85. package/src/Validator.ts +125 -125
  86. package/src/components/NSBarAction.module.css +97 -97
  87. package/src/components/NSBarAction.tsx +91 -91
  88. package/src/components/NSBarAlert.module.css +79 -79
  89. package/src/components/NSBarAlert.tsx +31 -31
  90. package/src/components/NSBarNotification.module.css +34 -34
  91. package/src/components/NSBarNotification.tsx +89 -89
  92. package/src/components/NSBarTitle.module.css +9 -9
  93. package/src/components/NSBarTitle.tsx +29 -29
  94. package/src/components/NSBox.module.css +50 -50
  95. package/src/components/NSBoxBaseCombo.module.css +6 -6
  96. package/src/components/NSBoxBaseCombo.tsx +252 -252
  97. package/src/components/NSBoxBaseLayout.tsx +82 -82
  98. package/src/components/NSBoxBoolean.module.css +67 -67
  99. package/src/components/NSBoxBoolean.tsx +113 -113
  100. package/src/components/NSBoxBooleans.tsx +163 -163
  101. package/src/components/NSBoxCombo.tsx +63 -63
  102. package/src/components/NSBoxDate.module.css +4 -4
  103. package/src/components/NSBoxDate.tsx +87 -87
  104. package/src/components/NSBoxDateTime.module.css +4 -4
  105. package/src/components/NSBoxDateTime.tsx +87 -87
  106. package/src/components/NSBoxDouble.tsx +90 -90
  107. package/src/components/NSBoxDuration.module.css +4 -4
  108. package/src/components/NSBoxDuration.tsx +92 -92
  109. package/src/components/NSBoxEmail.tsx +97 -97
  110. package/src/components/NSBoxEntity.tsx +52 -52
  111. package/src/components/NSBoxEnum.tsx +66 -66
  112. package/src/components/NSBoxFile.module.css +10 -10
  113. package/src/components/NSBoxFile.tsx +111 -111
  114. package/src/components/NSBoxIPV4.tsx +92 -92
  115. package/src/components/NSBoxIPV6.tsx +89 -89
  116. package/src/components/NSBoxInteger.tsx +89 -89
  117. package/src/components/NSBoxMoney.tsx +88 -88
  118. package/src/components/NSBoxPassword.tsx +98 -98
  119. package/src/components/NSBoxPhone.module.css +35 -35
  120. package/src/components/NSBoxPhone.tsx +104 -104
  121. package/src/components/NSBoxRadio.module.css +33 -33
  122. package/src/components/NSBoxRadio.tsx +98 -98
  123. package/src/components/NSBoxSearch.tsx +87 -87
  124. package/src/components/NSBoxString.tsx +80 -80
  125. package/src/components/NSBoxTextArea.module.css +12 -12
  126. package/src/components/NSBoxTextArea.tsx +90 -90
  127. package/src/components/NSBoxTime.module.css +4 -4
  128. package/src/components/NSBoxTime.tsx +84 -84
  129. package/src/components/NSButton.module.css +41 -41
  130. package/src/components/NSButton.tsx +25 -25
  131. package/src/components/NSButtonBlue.module.css +4 -4
  132. package/src/components/NSButtonBlue.tsx +19 -19
  133. package/src/components/NSButtonGreen.module.css +4 -4
  134. package/src/components/NSButtonGreen.tsx +19 -19
  135. package/src/components/NSButtonRed.module.css +4 -4
  136. package/src/components/NSButtonRed.tsx +19 -19
  137. package/src/components/NSCard.module.css +114 -114
  138. package/src/components/NSCard.tsx +63 -63
  139. package/src/components/NSCardScreenshot.module.css +41 -41
  140. package/src/components/NSCardScreenshot.tsx +31 -31
  141. package/src/components/NSChartColumn.module.css +7 -7
  142. package/src/components/NSChartColumn.tsx +106 -106
  143. package/src/components/NSChartDoughnut.tsx +108 -108
  144. package/src/components/NSChartPie.tsx +105 -105
  145. package/src/components/NSChartRange.tsx +14 -14
  146. package/src/components/NSChartTable.module.css +21 -21
  147. package/src/components/NSChartTable.tsx +94 -94
  148. package/src/components/NSColumn.module.css +17 -0
  149. package/src/components/NSColumn.tsx +19 -0
  150. package/src/components/NSCopy.tsx +67 -67
  151. package/src/components/NSCopyBox.module.css +43 -43
  152. package/src/components/NSCopyBox.tsx +41 -41
  153. package/src/components/NSDialog.module.css +110 -110
  154. package/src/components/NSDialog.tsx +57 -57
  155. package/src/components/NSDialogDelete.tsx +26 -26
  156. package/src/components/NSDialogInfo.tsx +36 -36
  157. package/src/components/NSDialogPageSelection.module.css +103 -103
  158. package/src/components/NSDialogPageSelection.tsx +223 -223
  159. package/src/components/NSDownTimer.module.css +55 -55
  160. package/src/components/NSDownTimer.tsx +77 -77
  161. package/src/components/NSDownload.module.css +46 -46
  162. package/src/components/NSDownload.tsx +63 -63
  163. package/src/components/NSElectronicCard.module.css +60 -60
  164. package/src/components/NSElectronicCard.tsx +46 -46
  165. package/src/components/NSEntityCardBackground.module.css +27 -27
  166. package/src/components/NSEntityCardBackground.tsx +36 -36
  167. package/src/components/NSFilterBox.module.css +55 -55
  168. package/src/components/NSFilterBox.tsx +360 -360
  169. package/src/components/NSFilterItem.module.css +23 -23
  170. package/src/components/NSFilterItem.tsx +72 -72
  171. package/src/components/NSFooter.module.css +123 -123
  172. package/src/components/NSFooter.tsx +316 -316
  173. package/src/components/NSHeader.module.css +291 -291
  174. package/src/components/NSHeader.tsx +250 -250
  175. package/src/components/NSHeaderScreenshot.module.css +35 -35
  176. package/src/components/NSHeaderScreenshot.tsx +39 -39
  177. package/src/components/NSLabel.module.css +15 -15
  178. package/src/components/NSLabel.tsx +29 -29
  179. package/src/components/NSLabelErrorNotifier.module.css +2 -2
  180. package/src/components/NSLabelErrorNotifier.tsx +32 -32
  181. package/src/components/NSLayout.module.css +14 -13
  182. package/src/components/NSLayout.tsx +99 -100
  183. package/src/components/NSLine.module.css +12 -12
  184. package/src/components/NSLine.tsx +15 -15
  185. package/src/components/NSLink.module.css +36 -36
  186. package/src/components/NSLink.tsx +25 -25
  187. package/src/components/NSLinkBlue.tsx +20 -20
  188. package/src/components/NSLinkGreen.tsx +5 -5
  189. package/src/components/NSLinkRed.tsx +5 -5
  190. package/src/components/NSListGrouped.module.css +72 -72
  191. package/src/components/NSListGrouped.tsx +112 -112
  192. package/src/components/NSListProduct.tsx +44 -46
  193. package/src/components/NSLoading.module.css +30 -30
  194. package/src/components/NSLoading.tsx +19 -19
  195. package/src/components/NSMenuAction.module.css +78 -78
  196. package/src/components/NSMenuAction.tsx +89 -89
  197. package/src/components/NSMenuButton.module.css +44 -44
  198. package/src/components/NSMenuButton.tsx +148 -148
  199. package/src/components/NSNoData.module.css +9 -9
  200. package/src/components/NSNoData.tsx +24 -24
  201. package/src/components/NSPagination.module.css +85 -85
  202. package/src/components/NSPagination.tsx +183 -183
  203. package/src/components/NSPanel.module.css +18 -18
  204. package/src/components/NSPanel.tsx +18 -18
  205. package/src/components/NSPanelAccordion.module.css +4 -4
  206. package/src/components/NSPanelAccordion.tsx +51 -51
  207. package/src/components/NSRange.module.css +66 -66
  208. package/src/components/NSRange.tsx +83 -83
  209. package/src/components/NSRepeater.tsx +179 -179
  210. package/src/components/NSRow.module.css +17 -17
  211. package/src/components/NSRow.tsx +18 -18
  212. package/src/components/NSSection.module.css +4 -4
  213. package/src/components/NSSection.tsx +20 -20
  214. package/src/components/NSSectionCards.module.css +38 -38
  215. package/src/components/NSSectionCards.tsx +51 -51
  216. package/src/components/NSSectionTiles.module.css +10 -10
  217. package/src/components/NSSectionTiles.tsx +25 -25
  218. package/src/components/NSSectionTitle.tsx +21 -21
  219. package/src/components/NSSpace.tsx +28 -28
  220. package/src/components/NSTabPage.module.css +59 -59
  221. package/src/components/NSTabPage.tsx +77 -77
  222. package/src/components/NSTable.module.css +261 -261
  223. package/src/components/NSTable.tsx +477 -477
  224. package/src/components/NSTag.module.css +52 -52
  225. package/src/components/NSTag.tsx +78 -78
  226. package/src/components/NSTile.module.css +77 -77
  227. package/src/components/NSTile.tsx +27 -27
  228. package/src/components/NSTimelineMonthly.module.css +71 -71
  229. package/src/components/NSTimelineMonthly.tsx +44 -44
  230. package/src/components/NSTitle.module.css +15 -15
  231. package/src/components/NSTitle.tsx +19 -19
  232. package/src/formatter/BackColorFormatter.tsx +23 -23
  233. package/src/formatter/BaseColumnFormatter.ts +16 -16
  234. package/src/formatter/BooleanFormatter.ts +22 -22
  235. package/src/formatter/DateFormatter.ts +20 -20
  236. package/src/formatter/DateTimeFormatter.ts +20 -20
  237. package/src/formatter/DurationFormatter.ts +13 -13
  238. package/src/formatter/EmailFormatter.ts +13 -13
  239. package/src/formatter/EnumFormatter.ts +13 -13
  240. package/src/formatter/FloatFormatter.ts +16 -16
  241. package/src/formatter/ForeColorFormatter.tsx +24 -24
  242. package/src/formatter/IDFormatter.tsx +30 -30
  243. package/src/formatter/IPFormatter.ts +13 -13
  244. package/src/formatter/IntegerFormatter.ts +16 -16
  245. package/src/formatter/JsonFormatter.ts +14 -14
  246. package/src/formatter/MoneyFormatter.ts +16 -16
  247. package/src/formatter/PhoneFormatter.ts +13 -13
  248. package/src/formatter/StringFormatter.ts +22 -22
  249. package/src/formatter/TimeFormatter.ts +21 -21
  250. package/src/formatter/UnknowFormatter.ts +18 -18
  251. package/src/index.tsx +7 -7
  252. package/src/main.ts +191 -187
  253. package/src/pages/NSNotFoundPage.module.css +17 -17
  254. package/src/pages/NSNotFoundPage.tsx +11 -11
  255. package/src/pages/NSUpdating.module.css +35 -35
  256. package/src/pages/NSUpdating.tsx +32 -32
  257. package/src/props/IBaseComponentProps.ts +8 -8
  258. package/src/props/IHeaderIconProps.ts +10 -10
  259. package/src/props/IHeaderProps.ts +7 -7
  260. package/src/props/IImageProps.ts +4 -4
  261. package/src/props/ILinkProps.ts +5 -5
  262. package/src/props/IValidationNumberProps.ts +4 -4
  263. package/src/props/IValidationProps.ts +7 -7
  264. package/src/props/IValidationRegexProps.ts +4 -4
  265. package/src/props/IValidationStringProps.ts +4 -4
  266. package/src/routing/INSRouterMaker.ts +6 -6
  267. package/src/routing/INSRouterProps.ts +5 -5
  268. package/src/routing/INSRouterState.ts +5 -5
  269. package/src/routing/NSRouterMaker.tsx +33 -33
  270. package/src/routing/Notifier.ts +79 -79
  271. package/tsconfig.json +43 -43
  272. package/dist/App.css +0 -34
  273. package/dist/index.css +0 -6
@@ -1,78 +1,78 @@
1
- import { useEffect, useState } from 'react';
2
- import { IBaseComponentProps } from '../props/IBaseComponentProps';
3
- import Styles from './NSDownTimer.module.css';
4
- export interface NSDownTimerProps extends IBaseComponentProps
5
- {
6
- date: Date;
7
- text: string;
8
- expire_text?: string
9
- }
10
-
11
- export function NSDownTimer(props: NSDownTimerProps)
12
- {
13
- const [timeLeft, setTimeLeft] = useState(calculateTimeLeft(props.date));
14
-
15
- useEffect(() =>
16
- {
17
- const timer = setInterval(() =>
18
- {
19
- setTimeLeft(calculateTimeLeft(props.date));
20
- }, 1000);
21
- return () => clearInterval(timer);
22
- }, [props.date]);
23
-
24
- function calculateTimeLeft(date: Date)
25
- {
26
- const now = new Date();
27
- const difference = date.getTime() - now.getTime();
28
-
29
- let timeLeft: { days?: number; hours?: number; minutes?: number; seconds?: number } = {};
30
- if (difference > 0)
31
- {
32
- timeLeft = {
33
- days: Math.floor(difference / (1000 * 60 * 60 * 24)),
34
- hours: Math.floor((difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)),
35
- minutes: Math.floor((difference % (1000 * 60 * 60)) / (1000 * 60)),
36
- seconds: Math.floor((difference % (1000 * 60)) / 1000),
37
- };
38
- }
39
- return timeLeft;
40
- }
41
- return (
42
- <div
43
- id={props.id}
44
- className={`${Styles.ns_down_timer_container} ${props.classList?.join(" ")}`}
45
- style={props.style}
46
- >
47
- <figure className={Styles.ns_figure}>
48
- <img
49
- src='https://static.namirasoft.com/image/concept/countdown/grey.svg'
50
- alt='CountDown'
51
- width={48}
52
- height={48} />
53
- <figcaption>{props.text}</figcaption>
54
- </figure>
55
- <div className={Styles.ns_down_timer_time_container}>
56
- <div className='d-flex flex-column justify-content-center align-items-center'>
57
- <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.days} `}</span>
58
- <span className={Styles.ns_down_timer_time_left_unit}>DAY</span>
59
- </div>
60
- <span className={`${Styles.ns_semi_colon} `}>:</span>
61
- <div className='d-flex flex-column justify-content-center align-items-center'>
62
- <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.hours}`}</span>
63
- <span className={Styles.ns_down_timer_time_left_unit}>HOUR</span>
64
- </div>
65
- <span className={`${Styles.ns_semi_colon} `}>:</span>
66
- <div className='d-flex flex-column justify-content-center align-items-center'>
67
- <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.minutes}`}</span>
68
- <span className={Styles.ns_down_timer_time_left_unit}>MIN</span>
69
- </div>
70
- <span className={`${Styles.ns_semi_colon} `}>:</span>
71
- <div className='d-flex flex-column justify-content-center align-items-center'>
72
- <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.seconds} `}</span>
73
- <span className={Styles.ns_down_timer_time_left_unit}>SEC</span>
74
- </div>
75
- </div>
76
- </div>
77
- );
1
+ import { useEffect, useState } from 'react';
2
+ import { IBaseComponentProps } from '../props/IBaseComponentProps';
3
+ import Styles from './NSDownTimer.module.css';
4
+ export interface NSDownTimerProps extends IBaseComponentProps
5
+ {
6
+ date: Date;
7
+ text: string;
8
+ expire_text?: string
9
+ }
10
+
11
+ export function NSDownTimer(props: NSDownTimerProps)
12
+ {
13
+ const [timeLeft, setTimeLeft] = useState(calculateTimeLeft(props.date));
14
+
15
+ useEffect(() =>
16
+ {
17
+ const timer = setInterval(() =>
18
+ {
19
+ setTimeLeft(calculateTimeLeft(props.date));
20
+ }, 1000);
21
+ return () => clearInterval(timer);
22
+ }, [props.date]);
23
+
24
+ function calculateTimeLeft(date: Date)
25
+ {
26
+ const now = new Date();
27
+ const difference = date.getTime() - now.getTime();
28
+
29
+ let timeLeft: { days?: number; hours?: number; minutes?: number; seconds?: number } = {};
30
+ if (difference > 0)
31
+ {
32
+ timeLeft = {
33
+ days: Math.floor(difference / (1000 * 60 * 60 * 24)),
34
+ hours: Math.floor((difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)),
35
+ minutes: Math.floor((difference % (1000 * 60 * 60)) / (1000 * 60)),
36
+ seconds: Math.floor((difference % (1000 * 60)) / 1000),
37
+ };
38
+ }
39
+ return timeLeft;
40
+ }
41
+ return (
42
+ <div
43
+ id={props.id}
44
+ className={`${Styles.ns_down_timer_container} ${props.classList?.join(" ")}`}
45
+ style={props.style}
46
+ >
47
+ <figure className={Styles.ns_figure}>
48
+ <img
49
+ src='https://static.namirasoft.com/image/concept/countdown/grey.svg'
50
+ alt='CountDown'
51
+ width={48}
52
+ height={48} />
53
+ <figcaption>{props.text}</figcaption>
54
+ </figure>
55
+ <div className={Styles.ns_down_timer_time_container}>
56
+ <div className='d-flex flex-column justify-content-center align-items-center'>
57
+ <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.days} `}</span>
58
+ <span className={Styles.ns_down_timer_time_left_unit}>DAY</span>
59
+ </div>
60
+ <span className={`${Styles.ns_semi_colon} `}>:</span>
61
+ <div className='d-flex flex-column justify-content-center align-items-center'>
62
+ <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.hours}`}</span>
63
+ <span className={Styles.ns_down_timer_time_left_unit}>HOUR</span>
64
+ </div>
65
+ <span className={`${Styles.ns_semi_colon} `}>:</span>
66
+ <div className='d-flex flex-column justify-content-center align-items-center'>
67
+ <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.minutes}`}</span>
68
+ <span className={Styles.ns_down_timer_time_left_unit}>MIN</span>
69
+ </div>
70
+ <span className={`${Styles.ns_semi_colon} `}>:</span>
71
+ <div className='d-flex flex-column justify-content-center align-items-center'>
72
+ <span className={Styles.ns_down_timer_time_left}>{`${timeLeft.seconds} `}</span>
73
+ <span className={Styles.ns_down_timer_time_left_unit}>SEC</span>
74
+ </div>
75
+ </div>
76
+ </div>
77
+ );
78
78
  };
@@ -1,47 +1,47 @@
1
- .download_parent {
2
- padding: 32px 16px;
3
- }
4
-
5
- .download_header {
6
- display: flex;
7
- justify-content: flex-start;
8
- flex-wrap: wrap;
9
- align-items: center;
10
- gap: 16px;
11
- }
12
-
13
- .radio_group {
14
- display: flex;
15
- justify-content: flex-start;
16
- align-items: center;
17
- }
18
-
19
- .radio_button {
20
- background-color: transparent !important;
21
- border: none !important;
22
- max-width: 97px !important;
23
- }
24
-
25
- .download_detail {
26
- display: flex;
27
- flex-direction: column;
28
- align-items: flex-start;
29
- justify-content: flex-start;
30
- gap: 24px;
31
- }
32
-
33
- .download_button {
34
- max-width: unset !important;
35
- width: 100% !important;
36
- }
37
-
38
- @media screen and (min-width: 554px) {
39
- .download_header {
40
- gap: 64px;
41
- }
42
-
43
- .download_button {
44
- max-width: 272px !important;
45
- width: 272px !important;
46
- }
1
+ .download_parent {
2
+ padding: 32px 16px;
3
+ }
4
+
5
+ .download_header {
6
+ display: flex;
7
+ justify-content: flex-start;
8
+ flex-wrap: wrap;
9
+ align-items: center;
10
+ gap: 16px;
11
+ }
12
+
13
+ .radio_group {
14
+ display: flex;
15
+ justify-content: flex-start;
16
+ align-items: center;
17
+ }
18
+
19
+ .radio_button {
20
+ background-color: transparent !important;
21
+ border: none !important;
22
+ max-width: 97px !important;
23
+ }
24
+
25
+ .download_detail {
26
+ display: flex;
27
+ flex-direction: column;
28
+ align-items: flex-start;
29
+ justify-content: flex-start;
30
+ gap: 24px;
31
+ }
32
+
33
+ .download_button {
34
+ max-width: unset !important;
35
+ width: 100% !important;
36
+ }
37
+
38
+ @media screen and (min-width: 554px) {
39
+ .download_header {
40
+ gap: 64px;
41
+ }
42
+
43
+ .download_button {
44
+ max-width: 272px !important;
45
+ width: 272px !important;
46
+ }
47
47
  }
@@ -1,64 +1,64 @@
1
- // todo move to its own probject: I guess this is Timify
2
- import { useState } from "react";
3
- import { IBaseComponentProps } from "../props/IBaseComponentProps";
4
- import { NSBoxRadio } from "./NSBoxRadio";
5
- import { NSLine } from "./NSLine";
6
- import { NSButtonBlue } from "./NSButtonBlue";
7
- import Styles from "./NSDownload.module.css"
8
-
9
- export interface NSDownloadProps extends IBaseComponentProps
10
- {
11
- releaseDate: string;
12
- }
13
-
14
- export function NSDownload(props: NSDownloadProps)
15
- {
16
- const [state, setState] = useState("32-bit");
17
-
18
- return (
19
- <div className={`${Styles.download_parent} ${props.classList?.join(' ')}`}>
20
- <div className={Styles.download_header}>
21
- <h3 style={{ color: "#141B5C" }}>Choose Your Windows Architecture</h3>
22
- <div className={Styles.radio_group}>
23
- <NSBoxRadio
24
- title={"32-bit"}
25
- required={false}
26
- checked={state === "32-bit"}
27
- onChanged={(event) =>
28
- {
29
- let value = event.getValue();
30
- if (value)
31
- {
32
- setState("32-bit");
33
- }
34
- }}
35
- classList={[Styles.radio_button]}
36
- />
37
- <NSBoxRadio
38
- title={"64-bit"}
39
- required={false}
40
- checked={state === "64-bit"}
41
- onChanged={(event) =>
42
- {
43
- let value = event.getValue();
44
- if (value)
45
- {
46
- setState("64-bit");
47
- }
48
- }}
49
- classList={[Styles.radio_button]}
50
- />
51
- </div>
52
- </div>
53
- <NSLine />
54
- <div className={Styles.download_detail}>
55
- <h4 style={{ color: "#141B5C" }}>For Windows 7 and higher, Windows Server 2008 R2 and higher.</h4>
56
- <div style={{ color: "#141B5C" }}>
57
- <p style={{ marginBottom: "0" }}>Latest Version</p>
58
- <p style={{ marginBottom: "0" }}>Release Date: {props.releaseDate}</p>
59
- </div>
60
- <NSButtonBlue title="Download" onClick={() => { }} classList={[Styles.download_button]} />
61
- </div>
62
- </div>
63
- );
1
+ // todo move to its own probject: I guess this is Timify
2
+ import { useState } from "react";
3
+ import { IBaseComponentProps } from "../props/IBaseComponentProps";
4
+ import { NSBoxRadio } from "./NSBoxRadio";
5
+ import { NSLine } from "./NSLine";
6
+ import { NSButtonBlue } from "./NSButtonBlue";
7
+ import Styles from "./NSDownload.module.css"
8
+
9
+ export interface NSDownloadProps extends IBaseComponentProps
10
+ {
11
+ releaseDate: string;
12
+ }
13
+
14
+ export function NSDownload(props: NSDownloadProps)
15
+ {
16
+ const [state, setState] = useState("32-bit");
17
+
18
+ return (
19
+ <div className={`${Styles.download_parent} ${props.classList?.join(' ')}`}>
20
+ <div className={Styles.download_header}>
21
+ <h3 style={{ color: "#141B5C" }}>Choose Your Windows Architecture</h3>
22
+ <div className={Styles.radio_group}>
23
+ <NSBoxRadio
24
+ title={"32-bit"}
25
+ required={false}
26
+ checked={state === "32-bit"}
27
+ onChanged={(event) =>
28
+ {
29
+ let value = event.getValue();
30
+ if (value)
31
+ {
32
+ setState("32-bit");
33
+ }
34
+ }}
35
+ classList={[Styles.radio_button]}
36
+ />
37
+ <NSBoxRadio
38
+ title={"64-bit"}
39
+ required={false}
40
+ checked={state === "64-bit"}
41
+ onChanged={(event) =>
42
+ {
43
+ let value = event.getValue();
44
+ if (value)
45
+ {
46
+ setState("64-bit");
47
+ }
48
+ }}
49
+ classList={[Styles.radio_button]}
50
+ />
51
+ </div>
52
+ </div>
53
+ <NSLine />
54
+ <div className={Styles.download_detail}>
55
+ <h4 style={{ color: "#141B5C" }}>For Windows 7 and higher, Windows Server 2008 R2 and higher.</h4>
56
+ <div style={{ color: "#141B5C" }}>
57
+ <p style={{ marginBottom: "0" }}>Latest Version</p>
58
+ <p style={{ marginBottom: "0" }}>Release Date: {props.releaseDate}</p>
59
+ </div>
60
+ <NSButtonBlue title="Download" onClick={() => { }} classList={[Styles.download_button]} />
61
+ </div>
62
+ </div>
63
+ );
64
64
  };
@@ -1,61 +1,61 @@
1
- .ns_border {
2
- width: 358px;
3
- height: fit-content;
4
- border: 1px solid rgba(161, 164, 176, 1);
5
- border-radius: 8px;
6
- background-color: rgba(255, 255, 255, 1);
7
- }
8
-
9
- .ns_image_text {
10
- padding: 16px;
11
- display: flex;
12
- flex-direction: row;
13
- align-items: center;
14
- }
15
-
16
- .ns_information {
17
- display: flex;
18
- flex-direction: column;
19
- padding-left: 16px;
20
- gap: 8px;
21
- }
22
-
23
- .ns_card_items {
24
- display: flex;
25
- flex-direction: row;
26
- justify-content: space-between;
27
- padding: 16px;
28
- }
29
-
30
- .ns_right_card_items {
31
- display: flex;
32
- flex-direction: row;
33
- gap: 16px;
34
- }
35
-
36
- .ns_electronic_card h4 {
37
- color: rgba(20, 27, 92, 1);
38
- font-size: 16px;
39
- font-weight: 600;
40
- margin: 0;
41
- }
42
-
43
- .ns_electronic_card h5 {
44
- color: rgba(20, 27, 92, 1);
45
- font-size: 12px;
46
- font-weight: 700;
47
- margin: 0;
48
- }
49
-
50
- .ns_electronic_card a {
51
- text-decoration: none;
52
- cursor: pointer;
53
- color: rgba(20, 27, 92, 1);
54
- }
55
-
56
- .ns_line {
57
- margin: 0 16px;
58
- border: 1px solid linear-gradient(to right, rgba(47, 0, 236, 0.6), rgba(118, 255, 181, 0.42));
59
- background: linear-gradient(to right, rgba(47, 0, 236, 0.6), rgba(118, 255, 181, 0.42));
60
- height: 2px;
1
+ .ns_border {
2
+ width: 358px;
3
+ height: fit-content;
4
+ border: 1px solid rgba(161, 164, 176, 1);
5
+ border-radius: 8px;
6
+ background-color: rgba(255, 255, 255, 1);
7
+ }
8
+
9
+ .ns_image_text {
10
+ padding: 16px;
11
+ display: flex;
12
+ flex-direction: row;
13
+ align-items: center;
14
+ }
15
+
16
+ .ns_information {
17
+ display: flex;
18
+ flex-direction: column;
19
+ padding-left: 16px;
20
+ gap: 8px;
21
+ }
22
+
23
+ .ns_card_items {
24
+ display: flex;
25
+ flex-direction: row;
26
+ justify-content: space-between;
27
+ padding: 16px;
28
+ }
29
+
30
+ .ns_right_card_items {
31
+ display: flex;
32
+ flex-direction: row;
33
+ gap: 16px;
34
+ }
35
+
36
+ .ns_electronic_card h4 {
37
+ color: rgba(20, 27, 92, 1);
38
+ font-size: 16px;
39
+ font-weight: 600;
40
+ margin: 0;
41
+ }
42
+
43
+ .ns_electronic_card h5 {
44
+ color: rgba(20, 27, 92, 1);
45
+ font-size: 12px;
46
+ font-weight: 700;
47
+ margin: 0;
48
+ }
49
+
50
+ .ns_electronic_card a {
51
+ text-decoration: none;
52
+ cursor: pointer;
53
+ color: rgba(20, 27, 92, 1);
54
+ }
55
+
56
+ .ns_line {
57
+ margin: 0 16px;
58
+ border: 1px solid linear-gradient(to right, rgba(47, 0, 236, 0.6), rgba(118, 255, 181, 0.42));
59
+ background: linear-gradient(to right, rgba(47, 0, 236, 0.6), rgba(118, 255, 181, 0.42));
60
+ height: 2px;
61
61
  }
@@ -1,47 +1,47 @@
1
- // todo move to its own probject: It's for Payment to add credit card
2
- import { useState } from 'react';
3
- import Styles from './NSElectronicCard.module.css';
4
- export interface NSElectronicCardProps
5
- {
6
- src: string;
7
- title: string | number;
8
- cardNumber: string;
9
- info?: string;
10
- alt?: string;
11
- }
12
- export function NSElectronicCard(props: NSElectronicCardProps)
13
- {
14
- if (props.cardNumber.length < 15)
15
- {
16
- alert("Please enter 16 number at least")
17
- }
18
- let last4Number = props.cardNumber.substr(-4);
19
- let [cardNumber, setCardNumber] = useState("");
20
- return (
21
- <section className={Styles.ns_electronic_card}>
22
- <div className={Styles.ns_border}>
23
- <div className={Styles.ns_image_text}>
24
- <img
25
- src={props.src}
26
- width={68}
27
- height={48}
28
- alt={props.alt ? props.alt : "E-Card Image"}
29
- />
30
- <div className={Styles.ns_information}>
31
- <h4>{props.title}</h4>
32
- <h5>{`0000 0000 0000 ${props.cardNumber ? last4Number : cardNumber}`}</h5>
33
- </div>
34
- </div>
35
- <hr className={Styles.ns_line}></hr>
36
- <div className={Styles.ns_card_items}>
37
- <a href='#'><h4 style={{ color: "rgba(3, 119, 255, 1)" }}>{props.info}</h4></a>
38
- <div className={Styles.ns_right_card_items}>
39
- <a href='#'><h4 onClick={() => setCardNumber("0000")}>Default</h4></a>
40
- <a href='#'><h4 onClick={() => setCardNumber("0000")}>Remove</h4></a>
41
- <a href='#'><h4>Edit</h4></a>
42
- </div>
43
- </div>
44
- </div>
45
- </section >
46
- );
1
+ // todo move to its own probject: It's for Payment to add credit card
2
+ import { useState } from 'react';
3
+ import Styles from './NSElectronicCard.module.css';
4
+ export interface NSElectronicCardProps
5
+ {
6
+ src: string;
7
+ title: string | number;
8
+ cardNumber: string;
9
+ info?: string;
10
+ alt?: string;
11
+ }
12
+ export function NSElectronicCard(props: NSElectronicCardProps)
13
+ {
14
+ if (props.cardNumber.length < 15)
15
+ {
16
+ alert("Please enter 16 number at least")
17
+ }
18
+ let last4Number = props.cardNumber.substr(-4);
19
+ let [cardNumber, setCardNumber] = useState("");
20
+ return (
21
+ <section className={Styles.ns_electronic_card}>
22
+ <div className={Styles.ns_border}>
23
+ <div className={Styles.ns_image_text}>
24
+ <img
25
+ src={props.src}
26
+ width={68}
27
+ height={48}
28
+ alt={props.alt ? props.alt : "E-Card Image"}
29
+ />
30
+ <div className={Styles.ns_information}>
31
+ <h4>{props.title}</h4>
32
+ <h5>{`0000 0000 0000 ${props.cardNumber ? last4Number : cardNumber}`}</h5>
33
+ </div>
34
+ </div>
35
+ <hr className={Styles.ns_line}></hr>
36
+ <div className={Styles.ns_card_items}>
37
+ <a href='#'><h4 style={{ color: "rgba(3, 119, 255, 1)" }}>{props.info}</h4></a>
38
+ <div className={Styles.ns_right_card_items}>
39
+ <a href='#'><h4 onClick={() => setCardNumber("0000")}>Default</h4></a>
40
+ <a href='#'><h4 onClick={() => setCardNumber("0000")}>Remove</h4></a>
41
+ <a href='#'><h4>Edit</h4></a>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ </section >
46
+ );
47
47
  }
@@ -1,28 +1,28 @@
1
- .card_background {
2
- display: flex;
3
- flex-direction: column;
4
- align-items: flex-end;
5
- justify-content: flex-end;
6
- box-shadow: 0 2px 10px 4px #00000040;
7
- padding: 24px;
8
- border-radius: 24px;
9
- width: 100%;
10
- max-width: 304px;
11
- position: relative;
12
- color: #fff;
13
- background-repeat: no-repeat;
14
- background-size: cover;
15
- background-position: center;
16
- min-height: 216px;
17
- }
18
-
19
- .card_background_text {
20
- font-size: 16px;
21
- font-weight: 400;
22
- line-height: inherit;
23
- font-family: inherit;
24
- }
25
-
26
- .ns_card_link_container {
27
- width: 100%;
1
+ .card_background {
2
+ display: flex;
3
+ flex-direction: column;
4
+ align-items: flex-end;
5
+ justify-content: flex-end;
6
+ box-shadow: 0 2px 10px 4px #00000040;
7
+ padding: 24px;
8
+ border-radius: 24px;
9
+ width: 100%;
10
+ max-width: 304px;
11
+ position: relative;
12
+ color: #fff;
13
+ background-repeat: no-repeat;
14
+ background-size: cover;
15
+ background-position: center;
16
+ min-height: 216px;
17
+ }
18
+
19
+ .card_background_text {
20
+ font-size: 16px;
21
+ font-weight: 400;
22
+ line-height: inherit;
23
+ font-family: inherit;
24
+ }
25
+
26
+ .ns_card_link_container {
27
+ width: 100%;
28
28
  }