namirasoft-site-react 1.3.177 → 1.3.178

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 (339) hide show
  1. package/config-overrides.js +70 -70
  2. package/dist/App.css +15 -0
  3. package/dist/App.js +4 -5
  4. package/dist/App.js.map +1 -1
  5. package/dist/assets/images/404 image.svg +9 -9
  6. package/dist/assets/images/404 image_mobile.svg +9 -9
  7. package/dist/assets/images/arrow.svg +3 -3
  8. package/dist/assets/images/danger.svg +3 -3
  9. package/dist/assets/images/exit.svg +3 -3
  10. package/dist/assets/images/icon-export.svg +3 -0
  11. package/dist/assets/images/icon-input-copy.svg +3 -3
  12. package/dist/assets/images/icon-input-date.svg +9 -9
  13. package/dist/assets/images/icon-input-duration.svg +9 -9
  14. package/dist/assets/images/icon-input-email.svg +9 -9
  15. package/dist/assets/images/icon-input-float.svg +9 -9
  16. package/dist/assets/images/icon-input-id.svg +9 -0
  17. package/dist/assets/images/icon-input-integer.svg +9 -9
  18. package/dist/assets/images/icon-input-ip.svg +9 -9
  19. package/dist/assets/images/icon-input-phone.svg +9 -9
  20. package/dist/assets/images/icon-input-price.svg +9 -9
  21. package/dist/assets/images/icon-input-search.svg +3 -3
  22. package/dist/assets/images/icon-input-string.svg +9 -9
  23. package/dist/assets/images/icon-input-text.svg +9 -9
  24. package/dist/assets/images/icon-input-time.svg +9 -9
  25. package/dist/assets/images/icon-refresh.svg +3 -0
  26. package/dist/assets/images/icon-select-box.svg +3 -3
  27. package/dist/assets/images/logo.svg +9 -9
  28. package/dist/assets/images/menu.svg +3 -3
  29. package/dist/assets/images/namira.svg +9 -9
  30. package/dist/assets/images/rectangle.svg +3 -3
  31. package/dist/components/NSActionMenu.js +2 -2
  32. package/dist/components/NSActionMenu.module.css +75 -75
  33. package/dist/components/NSBarAction.d.ts +10 -0
  34. package/dist/components/NSBarAction.js +20 -0
  35. package/dist/components/NSBarAction.js.map +1 -0
  36. package/dist/components/NSBarHeroBanner.d.ts +7 -0
  37. package/dist/components/NSBarHeroBanner.js +8 -0
  38. package/dist/components/NSBarHeroBanner.js.map +1 -0
  39. package/dist/components/NSBarNotification.d.ts +21 -0
  40. package/dist/components/NSBarNotification.js +37 -0
  41. package/dist/components/NSBarNotification.js.map +1 -0
  42. package/dist/components/NSBarTitle.d.ts +5 -0
  43. package/dist/components/NSBarTitle.js +11 -0
  44. package/dist/components/NSBarTitle.js.map +1 -0
  45. package/dist/components/NSBox.module.css +75 -76
  46. package/dist/components/NSBoxBoolean.module.css +54 -54
  47. package/dist/components/NSBoxDate.module.css +39 -39
  48. package/dist/components/NSBoxEnum.module.css +41 -38
  49. package/dist/components/NSBoxErrorNotifier.module.css +2 -2
  50. package/dist/components/NSButton.module.css +27 -27
  51. package/dist/components/NSButtonBlue.module.css +4 -4
  52. package/dist/components/NSButtonGreen.module.css +4 -4
  53. package/dist/components/NSButtonRed.module.css +4 -4
  54. package/dist/components/NSCard.module.css +110 -110
  55. package/dist/components/NSCopyToClipboard.module.css +39 -39
  56. package/dist/components/NSElectronicCard.module.css +60 -60
  57. package/dist/components/NSEntityBar.module.css +77 -77
  58. package/dist/components/NSEntityCardBackground.module.css +27 -27
  59. package/dist/components/NSFilterBox.module.css +38 -38
  60. package/dist/components/NSFilterBoxDialog.module.css +36 -36
  61. package/dist/components/NSFilterItem.module.css +23 -23
  62. package/dist/components/NSFooter.module.css +123 -123
  63. package/dist/components/NSGroupedList.module.css +70 -70
  64. package/dist/components/NSHeader.js +2 -2
  65. package/dist/components/NSHeader.js.map +1 -1
  66. package/dist/components/NSHeader.module.css +237 -249
  67. package/dist/components/NSInput.module.css +74 -0
  68. package/dist/components/NSInputDate.d.ts +21 -0
  69. package/dist/components/NSInputDate.js +41 -0
  70. package/dist/components/NSInputDate.js.map +1 -0
  71. package/dist/components/NSInputDate.module.css +42 -0
  72. package/dist/components/NSInputDuration.d.ts +23 -0
  73. package/dist/components/NSInputDuration.js +42 -0
  74. package/dist/components/NSInputDuration.js.map +1 -0
  75. package/dist/components/NSInputEmail.d.ts +22 -0
  76. package/dist/components/NSInputEmail.js +43 -0
  77. package/dist/components/NSInputEmail.js.map +1 -0
  78. package/dist/components/NSInputErrorNotifier.d.ts +5 -0
  79. package/dist/components/NSInputErrorNotifier.js +7 -0
  80. package/dist/components/NSInputErrorNotifier.js.map +1 -0
  81. package/dist/components/NSInputErrorNotifier.module.css +3 -0
  82. package/dist/components/NSInputFloat.d.ts +22 -0
  83. package/dist/components/NSInputFloat.js +41 -0
  84. package/dist/components/NSInputFloat.js.map +1 -0
  85. package/dist/components/NSInputIP.d.ts +22 -0
  86. package/dist/components/NSInputIP.js +43 -0
  87. package/dist/components/NSInputIP.js.map +1 -0
  88. package/dist/components/NSInputInteger.d.ts +22 -0
  89. package/dist/components/NSInputInteger.js +41 -0
  90. package/dist/components/NSInputInteger.js.map +1 -0
  91. package/dist/components/NSInputPassword.d.ts +22 -0
  92. package/dist/components/NSInputPassword.js +42 -0
  93. package/dist/components/NSInputPassword.js.map +1 -0
  94. package/dist/components/NSInputPhone.d.ts +22 -0
  95. package/dist/components/NSInputPhone.js +38 -0
  96. package/dist/components/NSInputPhone.js.map +1 -0
  97. package/dist/components/NSInputPrice.d.ts +22 -0
  98. package/dist/components/NSInputPrice.js +41 -0
  99. package/dist/components/NSInputPrice.js.map +1 -0
  100. package/dist/components/NSInputSearch.d.ts +22 -0
  101. package/dist/components/NSInputSearch.js +41 -0
  102. package/dist/components/NSInputSearch.js.map +1 -0
  103. package/dist/components/NSInputString.d.ts +22 -0
  104. package/dist/components/NSInputString.js +42 -0
  105. package/dist/components/NSInputString.js.map +1 -0
  106. package/dist/components/NSInputText.d.ts +22 -0
  107. package/dist/components/NSInputText.js +42 -0
  108. package/dist/components/NSInputText.js.map +1 -0
  109. package/dist/components/NSInputTime.d.ts +22 -0
  110. package/dist/components/NSInputTime.js +43 -0
  111. package/dist/components/NSInputTime.js.map +1 -0
  112. package/dist/components/NSLayout.d.ts +12 -3
  113. package/dist/components/NSLayout.js +5 -2
  114. package/dist/components/NSLayout.js.map +1 -1
  115. package/dist/components/NSLayout.module.css +13 -13
  116. package/dist/components/NSLayoutAction.d.ts +1 -10
  117. package/dist/components/NSLayoutAction.js +4 -5
  118. package/dist/components/NSLayoutAction.js.map +1 -1
  119. package/dist/components/NSLayoutAction.module.css +87 -87
  120. package/dist/components/NSLayoutHeroBanner.d.ts +1 -10
  121. package/dist/components/NSLayoutHeroBanner.js +1 -2
  122. package/dist/components/NSLayoutHeroBanner.js.map +1 -1
  123. package/dist/components/NSLayoutHeroBanner.module.css +42 -42
  124. package/dist/components/NSLayoutTitle.d.ts +1 -8
  125. package/dist/components/NSLayoutTitle.js +4 -6
  126. package/dist/components/NSLayoutTitle.js.map +1 -1
  127. package/dist/components/NSLayoutTitle.module.css +9 -9
  128. package/dist/components/NSLink.module.css +36 -36
  129. package/dist/components/NSLoading.module.css +26 -26
  130. package/dist/components/NSModal.js +2 -2
  131. package/dist/components/NSModal.module.css +66 -70
  132. package/dist/components/NSNotification.module.css +31 -31
  133. package/dist/components/NSPagination.module.css +37 -37
  134. package/dist/components/NSPanel.module.css +45 -45
  135. package/dist/components/NSSection.module.css +10 -10
  136. package/dist/components/NSSectionBars.module.css +10 -10
  137. package/dist/components/NSSectionCards.module.css +38 -38
  138. package/dist/components/NSSelectBox.d.ts +24 -0
  139. package/dist/components/NSSelectBox.js +61 -0
  140. package/dist/components/NSSelectBox.js.map +1 -0
  141. package/dist/components/NSSelectBox.module.css +42 -0
  142. package/dist/components/NSTabPage.module.css +44 -44
  143. package/dist/components/NSTable.module.css +163 -165
  144. package/dist/components/NSTitle.module.css +15 -15
  145. package/dist/index.css +6 -0
  146. package/dist/main.d.ts +4 -4
  147. package/dist/main.js +4 -4
  148. package/dist/main.js.map +1 -1
  149. package/dist/pages/NSLoginPage.module.css +19 -19
  150. package/dist/pages/NSNotFoundPage.module.css +18 -18
  151. package/dist/props/BaseComponentProps.d.ts +6 -0
  152. package/dist/props/BaseComponentProps.js +2 -0
  153. package/dist/props/BaseComponentProps.js.map +10 -0
  154. package/dist/props/IHeaderIconProps.d.ts +6 -0
  155. package/dist/props/IHeaderIconProps.js +2 -0
  156. package/dist/props/IHeaderIconProps.js.map +1 -0
  157. package/dist/props/IHeaderProps.d.ts +2 -6
  158. package/dist/props/INamirasoftProps.d.ts +4 -0
  159. package/dist/props/INamirasoftProps.js +2 -0
  160. package/dist/props/INamirasoftProps.js.map +1 -0
  161. package/dist/props/ImageProps.d.ts +4 -0
  162. package/dist/props/ImageProps.js +2 -0
  163. package/dist/props/ImageProps.js.map +10 -0
  164. package/dist/props/LinkProps.d.ts +5 -0
  165. package/dist/props/LinkProps.js +2 -0
  166. package/dist/props/LinkProps.js.map +10 -0
  167. package/dist/props/ValidationNumberProps.d.ts +4 -0
  168. package/dist/props/ValidationNumberProps.js +2 -0
  169. package/dist/props/ValidationNumberProps.js.map +10 -0
  170. package/dist/props/ValidationProps.d.ts +6 -0
  171. package/dist/props/ValidationProps.js +2 -0
  172. package/dist/props/ValidationProps.js.map +10 -0
  173. package/dist/props/ValidationRegexProps.d.ts +4 -0
  174. package/dist/props/ValidationRegexProps.js +2 -0
  175. package/dist/props/ValidationRegexProps.js.map +1 -0
  176. package/dist/props/ValidationStringProps.d.ts +4 -0
  177. package/dist/props/ValidationStringProps.js +2 -0
  178. package/dist/props/ValidationStringProps.js.map +10 -0
  179. package/dist/routing/INSRouterState.d.ts +2 -2
  180. package/dist/routing/Notifier.d.ts +2 -2
  181. package/dist/routing/Notifier.js +5 -5
  182. package/dist/routing/Notifier.js.map +1 -1
  183. package/package.json +65 -65
  184. package/public/index.html +38 -38
  185. package/public/manifest.json +24 -24
  186. package/public/robots.txt +3 -3
  187. package/src/App.css +15 -15
  188. package/src/App.tsx +40 -44
  189. package/src/Validator.ts +110 -110
  190. package/src/assets/images/404 image.svg +9 -9
  191. package/src/assets/images/404 image_mobile.svg +9 -9
  192. package/src/assets/images/arrow.svg +3 -3
  193. package/src/assets/images/danger.svg +3 -3
  194. package/src/assets/images/exit.svg +3 -3
  195. package/src/assets/images/icon-input-copy.svg +3 -3
  196. package/src/assets/images/icon-input-date.svg +9 -9
  197. package/src/assets/images/icon-input-duration.svg +9 -9
  198. package/src/assets/images/icon-input-email.svg +9 -9
  199. package/src/assets/images/icon-input-float.svg +9 -9
  200. package/src/assets/images/icon-input-integer.svg +9 -9
  201. package/src/assets/images/icon-input-ip.svg +9 -9
  202. package/src/assets/images/icon-input-phone.svg +9 -9
  203. package/src/assets/images/icon-input-price.svg +9 -9
  204. package/src/assets/images/icon-input-search.svg +3 -3
  205. package/src/assets/images/icon-input-string.svg +9 -9
  206. package/src/assets/images/icon-input-text.svg +9 -9
  207. package/src/assets/images/icon-input-time.svg +9 -9
  208. package/src/assets/images/icon-select-box.svg +3 -3
  209. package/src/assets/images/logo.svg +9 -9
  210. package/src/assets/images/menu.svg +3 -3
  211. package/src/assets/images/namira.svg +9 -9
  212. package/src/assets/images/rectangle.svg +3 -3
  213. package/src/components/NSActionMenu.module.css +75 -75
  214. package/src/components/NSActionMenu.tsx +85 -85
  215. package/src/components/{NSLayoutAction.module.css → NSBarAction.module.css} +87 -87
  216. package/src/components/{NSLayoutAction.tsx → NSBarAction.tsx} +86 -89
  217. package/src/components/{NSLayoutHeroBanner.module.css → NSBarHeroBanner.module.css} +42 -42
  218. package/src/components/NSBarHeroBanner.tsx +62 -0
  219. package/src/components/{NSNotification.module.css → NSBarNotification.module.css} +31 -31
  220. package/src/components/{NSNotification.tsx → NSBarNotification.tsx} +63 -63
  221. package/src/components/{NSLayoutTitle.module.css → NSBarTitle.module.css} +9 -9
  222. package/src/components/NSBarTitle.tsx +29 -0
  223. package/src/components/NSBox.module.css +76 -76
  224. package/src/components/NSBoxBoolean.module.css +54 -54
  225. package/src/components/NSBoxBoolean.tsx +88 -88
  226. package/src/components/NSBoxDate.module.css +39 -39
  227. package/src/components/NSBoxDate.tsx +80 -80
  228. package/src/components/NSBoxDateTime.tsx +80 -80
  229. package/src/components/NSBoxDouble.tsx +91 -91
  230. package/src/components/NSBoxDuration.tsx +90 -90
  231. package/src/components/NSBoxEmail.tsx +89 -89
  232. package/src/components/NSBoxEntity.tsx +120 -120
  233. package/src/components/NSBoxEnum.module.css +38 -38
  234. package/src/components/NSBoxEnum.tsx +123 -123
  235. package/src/components/NSBoxErrorNotifier.module.css +2 -2
  236. package/src/components/NSBoxErrorNotifier.tsx +27 -27
  237. package/src/components/NSBoxIPV4.tsx +95 -95
  238. package/src/components/NSBoxIPV6.tsx +92 -92
  239. package/src/components/NSBoxInteger.tsx +88 -88
  240. package/src/components/NSBoxOTP.module.css +10 -10
  241. package/src/components/NSBoxOTP.tsx +52 -52
  242. package/src/components/NSBoxPassword.tsx +88 -88
  243. package/src/components/NSBoxPhone.tsx +82 -82
  244. package/src/components/NSBoxPrice.tsx +90 -90
  245. package/src/components/NSBoxSearch.tsx +91 -91
  246. package/src/components/NSBoxString.tsx +88 -88
  247. package/src/components/NSBoxText.tsx +88 -88
  248. package/src/components/NSBoxTextArea.module.css +37 -37
  249. package/src/components/NSBoxTextArea.tsx +97 -97
  250. package/src/components/NSBoxTime.tsx +90 -90
  251. package/src/components/NSButton.module.css +27 -27
  252. package/src/components/NSButton.tsx +23 -23
  253. package/src/components/NSButtonBlue.module.css +4 -4
  254. package/src/components/NSButtonBlue.tsx +12 -12
  255. package/src/components/NSButtonGreen.module.css +4 -4
  256. package/src/components/NSButtonGreen.tsx +11 -11
  257. package/src/components/NSButtonRed.module.css +4 -4
  258. package/src/components/NSButtonRed.tsx +11 -11
  259. package/src/components/NSCard.module.css +110 -110
  260. package/src/components/NSCard.tsx +69 -69
  261. package/src/components/NSCopyToClipboard.module.css +39 -39
  262. package/src/components/NSCopyToClipboard.tsx +35 -35
  263. package/src/components/NSElectronicCard.module.css +60 -60
  264. package/src/components/NSElectronicCard.tsx +47 -47
  265. package/src/components/NSEntityBar.module.css +77 -77
  266. package/src/components/NSEntityBar.tsx +27 -27
  267. package/src/components/NSEntityCardBackground.module.css +27 -27
  268. package/src/components/NSEntityCardBackground.tsx +34 -34
  269. package/src/components/NSFilterBox.module.css +38 -38
  270. package/src/components/NSFilterBox.tsx +277 -277
  271. package/src/components/NSFilterBoxDialog.module.css +36 -36
  272. package/src/components/NSFilterBoxDialog.tsx +74 -74
  273. package/src/components/NSFilterItem.module.css +23 -23
  274. package/src/components/NSFilterItem.tsx +71 -71
  275. package/src/components/NSFooter.module.css +123 -123
  276. package/src/components/NSFooter.tsx +144 -144
  277. package/src/components/NSGroupedList.module.css +70 -70
  278. package/src/components/NSGroupedList.tsx +56 -56
  279. package/src/components/NSHeader.module.css +247 -249
  280. package/src/components/NSHeader.tsx +184 -185
  281. package/src/components/NSLayout.module.css +13 -13
  282. package/src/components/NSLayout.tsx +60 -46
  283. package/src/components/NSLine.tsx +18 -18
  284. package/src/components/NSLink.module.css +36 -36
  285. package/src/components/NSLink.tsx +25 -25
  286. package/src/components/NSLinkBlue.tsx +20 -20
  287. package/src/components/NSLinkGreen.tsx +5 -5
  288. package/src/components/NSLinkRed.tsx +5 -5
  289. package/src/components/NSLoading.module.css +26 -26
  290. package/src/components/NSLoading.tsx +17 -17
  291. package/src/components/NSModal.module.css +70 -70
  292. package/src/components/NSModal.tsx +62 -62
  293. package/src/components/NSPagination.module.css +37 -37
  294. package/src/components/NSPagination.tsx +116 -116
  295. package/src/components/NSPanel.module.css +45 -45
  296. package/src/components/NSPanel.tsx +19 -19
  297. package/src/components/NSSection.module.css +10 -10
  298. package/src/components/NSSection.tsx +23 -23
  299. package/src/components/NSSectionBars.module.css +10 -10
  300. package/src/components/NSSectionBars.tsx +25 -25
  301. package/src/components/NSSectionCards.module.css +38 -38
  302. package/src/components/NSSectionCards.tsx +51 -51
  303. package/src/components/NSSectionTitle.tsx +21 -21
  304. package/src/components/NSSpace.tsx +28 -28
  305. package/src/components/NSTabPage.module.css +44 -44
  306. package/src/components/NSTabPage.tsx +45 -45
  307. package/src/components/NSTable.module.css +165 -165
  308. package/src/components/NSTable.tsx +171 -171
  309. package/src/components/NSTitle.module.css +15 -15
  310. package/src/components/NSTitle.tsx +19 -19
  311. package/src/components/NSVerification.module.css +22 -22
  312. package/src/components/NSVerification.tsx +41 -41
  313. package/src/index.tsx +7 -7
  314. package/src/main.ts +67 -67
  315. package/src/pages/NSLoginPage.module.css +19 -19
  316. package/src/pages/NSLoginPage.tsx +45 -45
  317. package/src/pages/NSNotFoundPage.module.css +18 -18
  318. package/src/pages/NSNotFoundPage.tsx +11 -11
  319. package/src/props/IBaseComponentProps.ts +7 -7
  320. package/src/props/IHeaderIconProps.ts +7 -0
  321. package/src/props/IHeaderProps.ts +6 -9
  322. package/src/props/IImageProps.ts +4 -4
  323. package/src/props/ILinkProps.ts +5 -5
  324. package/src/props/IValidationNumberProps.ts +4 -4
  325. package/src/props/IValidationProps.ts +7 -7
  326. package/src/props/IValidationRegexProps.ts +4 -4
  327. package/src/props/IValidationStringProps.ts +4 -4
  328. package/src/routing/INSRouterMaker.ts +6 -6
  329. package/src/routing/INSRouterProps.ts +5 -5
  330. package/src/routing/INSRouterState.ts +5 -5
  331. package/src/routing/NSRouterMaker.tsx +33 -33
  332. package/src/routing/Notifier.ts +79 -79
  333. package/tsconfig.json +43 -43
  334. package/dist/assets/images/verify.png +0 -0
  335. package/dist/components/NSBoxOTP.module.css +0 -11
  336. package/dist/components/NSBoxTextArea.module.css +0 -38
  337. package/dist/components/NSVerification.module.css +0 -23
  338. package/src/components/NSLayoutHeroBanner.tsx +0 -69
  339. package/src/components/NSLayoutTitle.tsx +0 -39
@@ -1,121 +1,121 @@
1
- "use client";
2
- import React from "react";
3
- import Styles from "./NSBoxEnum.module.css";
4
- import { Select, Space } from 'antd';
5
- import IconSelectBox from '../assets/images/icon-select-box.svg';
6
- import { IBaseComponentProps } from "../props/IBaseComponentProps";
7
- import { IValidationProps } from "../props/IValidationProps";
8
- import { Validator } from "../Validator";
9
- import { NSBoxErrorNotifier } from "./NSBoxErrorNotifier";
10
- import { BaseOptionType } from "antd/es/select";
11
-
12
- export interface INSBoxEntitOption extends BaseOptionType
13
- {
14
- desc: string;
15
- value: string;
16
- }
17
-
18
- export interface INSBoxEntityProps extends IBaseComponentProps, IValidationProps
19
- {
20
- title: string;
21
- options: INSBoxEntitOption[];
22
- multiple: boolean;
23
- placeHolder?: string;
24
- }
25
-
26
- export interface INSBoxEntityState
27
- {
28
- value: string | null;
29
- values: string[];
30
- error?: string;
31
- }
32
-
33
- export class NSBoxEntity extends React.Component<INSBoxEntityProps, INSBoxEntityState>
34
- {
35
- constructor(props: INSBoxEntityProps)
36
- {
37
- super(props);
38
- this.state = {
39
- value: null,
40
- values: [],
41
- };
42
- this.getValues = this.getValues.bind(this);
43
- this.setValues = this.setValues.bind(this);
44
- this.setValue = this.setValue.bind(this);
45
- this.getValue = this.getValue.bind(this);
46
- this.handleChange = this.handleChange.bind(this);
47
- }
48
- getError(value: string): string | null
49
- {
50
- return (
51
- Validator.getError(this.props.title, value, this.props)
52
- );
53
- }
54
- getValue(): string | null
55
- {
56
- let error = this.getError(this.state.value || "");
57
- if (error)
58
- {
59
- this.setState({ error });
60
- throw new Error(error);
61
- }
62
- return this.state.value;
63
- }
64
- getValues(): string[]
65
- {
66
- this.state.values.forEach(value =>
67
- {
68
- let error = this.getError(value || "");
69
- if (error)
70
- {
71
- this.setState({ error });
72
- throw new Error(error);
73
- }
74
- });
75
- return this.state.values;
76
- }
77
- setValue(value: string | null): void
78
- {
79
- this.setState({ value });
80
- }
81
- setValues(values: string[]): void
82
- {
83
- this.setState({ values });
84
- }
85
- handleChange(value: string | null | string[]): void
86
- {
87
- if (this.props.multiple)
88
- {
89
- this.setValues(value as string[]);
90
- } else
91
- {
92
- this.setValue(value as string | null);
93
- }
94
- }
95
- override render()
96
- {
97
- return (
98
- <>
99
- <div className={`${Styles.ns_input_parent}`}>
100
- <span className={Styles.ns_input_title}> {this.props.required && <span style={{ color: "red" }} >*</span>} {this.props.title} </span>
101
- <Select
102
- mode={this.props.multiple ? "multiple" : undefined}
103
- style={{ width: '100%' }}
104
- className={Styles.ns_input_select}
105
- placeholder={this.props.placeHolder ?? "Combo Box"}
106
- onChange={this.handleChange}
107
- optionLabelProp="label"
108
- options={this.props.options}
109
- optionRender={(option) => (
110
- <Space className={Styles.ns_input_select_option}>
111
- {option.data.desc}
112
- </Space>
113
- )}
114
- suffixIcon={<img src={IconSelectBox} alt="SelectBox Icon" />}
115
- />
116
- </div>
117
- <NSBoxErrorNotifier error={this.state.error} />
118
- </>
119
- );
120
- }
1
+ "use client";
2
+ import React from "react";
3
+ import Styles from "./NSBoxEnum.module.css";
4
+ import { Select, Space } from 'antd';
5
+ import IconSelectBox from '../assets/images/icon-select-box.svg';
6
+ import { IBaseComponentProps } from "../props/IBaseComponentProps";
7
+ import { IValidationProps } from "../props/IValidationProps";
8
+ import { Validator } from "../Validator";
9
+ import { NSBoxErrorNotifier } from "./NSBoxErrorNotifier";
10
+ import { BaseOptionType } from "antd/es/select";
11
+
12
+ export interface INSBoxEntitOption extends BaseOptionType
13
+ {
14
+ desc: string;
15
+ value: string;
16
+ }
17
+
18
+ export interface INSBoxEntityProps extends IBaseComponentProps, IValidationProps
19
+ {
20
+ title: string;
21
+ options: INSBoxEntitOption[];
22
+ multiple: boolean;
23
+ placeHolder?: string;
24
+ }
25
+
26
+ export interface INSBoxEntityState
27
+ {
28
+ value: string | null;
29
+ values: string[];
30
+ error?: string;
31
+ }
32
+
33
+ export class NSBoxEntity extends React.Component<INSBoxEntityProps, INSBoxEntityState>
34
+ {
35
+ constructor(props: INSBoxEntityProps)
36
+ {
37
+ super(props);
38
+ this.state = {
39
+ value: null,
40
+ values: [],
41
+ };
42
+ this.getValues = this.getValues.bind(this);
43
+ this.setValues = this.setValues.bind(this);
44
+ this.setValue = this.setValue.bind(this);
45
+ this.getValue = this.getValue.bind(this);
46
+ this.handleChange = this.handleChange.bind(this);
47
+ }
48
+ getError(value: string): string | null
49
+ {
50
+ return (
51
+ Validator.getError(this.props.title, value, this.props)
52
+ );
53
+ }
54
+ getValue(): string | null
55
+ {
56
+ let error = this.getError(this.state.value || "");
57
+ if (error)
58
+ {
59
+ this.setState({ error });
60
+ throw new Error(error);
61
+ }
62
+ return this.state.value;
63
+ }
64
+ getValues(): string[]
65
+ {
66
+ this.state.values.forEach(value =>
67
+ {
68
+ let error = this.getError(value || "");
69
+ if (error)
70
+ {
71
+ this.setState({ error });
72
+ throw new Error(error);
73
+ }
74
+ });
75
+ return this.state.values;
76
+ }
77
+ setValue(value: string | null): void
78
+ {
79
+ this.setState({ value });
80
+ }
81
+ setValues(values: string[]): void
82
+ {
83
+ this.setState({ values });
84
+ }
85
+ handleChange(value: string | null | string[]): void
86
+ {
87
+ if (this.props.multiple)
88
+ {
89
+ this.setValues(value as string[]);
90
+ } else
91
+ {
92
+ this.setValue(value as string | null);
93
+ }
94
+ }
95
+ override render()
96
+ {
97
+ return (
98
+ <>
99
+ <div className={`${Styles.ns_input_parent}`}>
100
+ <span className={Styles.ns_input_title}> {this.props.required && <span style={{ color: "red" }} >*</span>} {this.props.title} </span>
101
+ <Select
102
+ mode={this.props.multiple ? "multiple" : undefined}
103
+ style={{ width: '100%' }}
104
+ className={Styles.ns_input_select}
105
+ placeholder={this.props.placeHolder ?? "Combo Box"}
106
+ onChange={this.handleChange}
107
+ optionLabelProp="label"
108
+ options={this.props.options}
109
+ optionRender={(option) => (
110
+ <Space className={Styles.ns_input_select_option}>
111
+ {option.data.desc}
112
+ </Space>
113
+ )}
114
+ suffixIcon={<img src={IconSelectBox} alt="SelectBox Icon" />}
115
+ />
116
+ </div>
117
+ <NSBoxErrorNotifier error={this.state.error} />
118
+ </>
119
+ );
120
+ }
121
121
  }
@@ -1,39 +1,39 @@
1
- .ns_input_parent {
2
- width: 100%;
3
- max-width: 100%;
4
- color: #141B5C;
5
- }
6
-
7
- .ns_input_select {
8
- height: 48px;
9
- border: 1px solid #000 !important;
10
- border-radius: 8px;
11
- overflow: hidden;
12
- width: 100% !important;
13
- }
14
-
15
- .ns_input_select span span svg path {
16
- height: 24px !important;
17
- width: 24px !important;
18
- }
19
-
20
- .ns_input_select span span svg {
21
- height: 24px !important;
22
- width: 24px !important;
23
- }
24
-
25
- .ns_input_select span span span svg path {
26
- height: 12px !important;
27
- width: 12px !important;
28
- }
29
-
30
- .ns_input_select span span span svg {
31
- height: 12px !important;
32
- width: 12px !important;
33
- }
34
-
35
- @media only screen and (min-width: 380px) {
36
- .ns_input_parent {
37
- width: 272px;
38
- }
1
+ .ns_input_parent {
2
+ width: 100%;
3
+ max-width: 100%;
4
+ color: #141B5C;
5
+ }
6
+
7
+ .ns_input_select {
8
+ height: 48px;
9
+ border: 1px solid #000 !important;
10
+ border-radius: 8px;
11
+ overflow: hidden;
12
+ width: 100% !important;
13
+ }
14
+
15
+ .ns_input_select span span svg path {
16
+ height: 24px !important;
17
+ width: 24px !important;
18
+ }
19
+
20
+ .ns_input_select span span svg {
21
+ height: 24px !important;
22
+ width: 24px !important;
23
+ }
24
+
25
+ .ns_input_select span span span svg path {
26
+ height: 12px !important;
27
+ width: 12px !important;
28
+ }
29
+
30
+ .ns_input_select span span span svg {
31
+ height: 12px !important;
32
+ width: 12px !important;
33
+ }
34
+
35
+ @media only screen and (min-width: 380px) {
36
+ .ns_input_parent {
37
+ width: 272px;
38
+ }
39
39
  }
@@ -1,124 +1,124 @@
1
- "use client";
2
-
3
- import React from "react";
4
- import Styles from "./NSBoxEnum.module.css";
5
- import { Select, Space } from 'antd';
6
- import IconSelectBox from '../assets/images/icon-select-box.svg';
7
- import { IBaseComponentProps } from "../props/IBaseComponentProps";
8
- import { IValidationProps } from "../props/IValidationProps";
9
- import { Validator } from "../Validator";
10
- import { NSBoxErrorNotifier } from "./NSBoxErrorNotifier";
11
- import { BaseOptionType } from "antd/es/select";
12
-
13
- export interface INSBoxEnumOption extends BaseOptionType
14
- {
15
- desc: string;
16
- value: string;
17
- }
18
-
19
- export interface INSBoxEnumProps extends IBaseComponentProps, IValidationProps
20
- {
21
- title: string;
22
- options: INSBoxEnumOption[];
23
- multiple: boolean;
24
- placeHolder?: string;
25
- customClass?: string;
26
- }
27
-
28
- export interface INSBoxEnumState
29
- {
30
- value: string | null;
31
- values: string[];
32
- error?: string;
33
- }
34
-
35
- export class NSBoxEnum extends React.Component<INSBoxEnumProps, INSBoxEnumState>
36
- {
37
- constructor(props: INSBoxEnumProps)
38
- {
39
- super(props);
40
- this.state = {
41
- value: null,
42
- values: [],
43
- };
44
- this.getValues = this.getValues.bind(this);
45
- this.setValues = this.setValues.bind(this);
46
- this.setValue = this.setValue.bind(this);
47
- this.getValue = this.getValue.bind(this);
48
- this.handleChange = this.handleChange.bind(this);
49
- }
50
- getError(value: string): string | null
51
- {
52
- return (
53
- Validator.getError(this.props.title, value, this.props)
54
- );
55
- }
56
- getValue(): string | null
57
- {
58
- let error = this.getError(this.state.value || "");
59
- if (error)
60
- {
61
- this.setState({ error });
62
- throw new Error(error);
63
- }
64
- return this.state.value;
65
- }
66
- getValues(): string[]
67
- {
68
- this.state.values.forEach(value =>
69
- {
70
- let error = this.getError(value || "");
71
- if (error)
72
- {
73
- this.setState({ error });
74
- throw new Error(error);
75
- }
76
- });
77
- return this.state.values;
78
- }
79
- setValue(value: string | null): void
80
- {
81
- this.setState({ value });
82
- }
83
- setValues(values: string[]): void
84
- {
85
- this.setState({ values });
86
- }
87
- handleChange(value: string | null | string[]): void
88
- {
89
- if (this.props.multiple)
90
- {
91
- this.setValues(value as string[]);
92
- } else
93
- {
94
- this.setValue(value as string | null);
95
- }
96
- }
97
- override render()
98
- {
99
- return (
100
- <>
101
- <div className={`${Styles.ns_input_parent} ${this.props.customClass}`}>
102
- <span className={Styles.ns_input_title}> {this.props.required && <span style={{ color: "red" }} >*</span>} {this.props.title} </span>
103
- <Select
104
- showSearch
105
- mode={this.props.multiple ? "multiple" : undefined}
106
- style={{ width: '100%' }}
107
- className={Styles.ns_input_select}
108
- placeholder={this.props.placeHolder ?? "Combo Box"}
109
- onChange={this.handleChange}
110
- optionLabelProp="label"
111
- options={this.props.options}
112
- optionRender={(option) => (
113
- <Space className={Styles.ns_input_select_option}>
114
- {option.data.desc}
115
- </Space>
116
- )}
117
- suffixIcon={<img src={IconSelectBox} alt="SelectBox Icon" />}
118
- />
119
- </div>
120
- <NSBoxErrorNotifier error={this.state.error} />
121
- </>
122
- );
123
- }
1
+ "use client";
2
+
3
+ import React from "react";
4
+ import Styles from "./NSBoxEnum.module.css";
5
+ import { Select, Space } from 'antd';
6
+ import IconSelectBox from '../assets/images/icon-select-box.svg';
7
+ import { IBaseComponentProps } from "../props/IBaseComponentProps";
8
+ import { IValidationProps } from "../props/IValidationProps";
9
+ import { Validator } from "../Validator";
10
+ import { NSBoxErrorNotifier } from "./NSBoxErrorNotifier";
11
+ import { BaseOptionType } from "antd/es/select";
12
+
13
+ export interface INSBoxEnumOption extends BaseOptionType
14
+ {
15
+ desc: string;
16
+ value: string;
17
+ }
18
+
19
+ export interface INSBoxEnumProps extends IBaseComponentProps, IValidationProps
20
+ {
21
+ title: string;
22
+ options: INSBoxEnumOption[];
23
+ multiple: boolean;
24
+ placeHolder?: string;
25
+ customClass?: string;
26
+ }
27
+
28
+ export interface INSBoxEnumState
29
+ {
30
+ value: string | null;
31
+ values: string[];
32
+ error?: string;
33
+ }
34
+
35
+ export class NSBoxEnum extends React.Component<INSBoxEnumProps, INSBoxEnumState>
36
+ {
37
+ constructor(props: INSBoxEnumProps)
38
+ {
39
+ super(props);
40
+ this.state = {
41
+ value: null,
42
+ values: [],
43
+ };
44
+ this.getValues = this.getValues.bind(this);
45
+ this.setValues = this.setValues.bind(this);
46
+ this.setValue = this.setValue.bind(this);
47
+ this.getValue = this.getValue.bind(this);
48
+ this.handleChange = this.handleChange.bind(this);
49
+ }
50
+ getError(value: string): string | null
51
+ {
52
+ return (
53
+ Validator.getError(this.props.title, value, this.props)
54
+ );
55
+ }
56
+ getValue(): string | null
57
+ {
58
+ let error = this.getError(this.state.value || "");
59
+ if (error)
60
+ {
61
+ this.setState({ error });
62
+ throw new Error(error);
63
+ }
64
+ return this.state.value;
65
+ }
66
+ getValues(): string[]
67
+ {
68
+ this.state.values.forEach(value =>
69
+ {
70
+ let error = this.getError(value || "");
71
+ if (error)
72
+ {
73
+ this.setState({ error });
74
+ throw new Error(error);
75
+ }
76
+ });
77
+ return this.state.values;
78
+ }
79
+ setValue(value: string | null): void
80
+ {
81
+ this.setState({ value });
82
+ }
83
+ setValues(values: string[]): void
84
+ {
85
+ this.setState({ values });
86
+ }
87
+ handleChange(value: string | null | string[]): void
88
+ {
89
+ if (this.props.multiple)
90
+ {
91
+ this.setValues(value as string[]);
92
+ } else
93
+ {
94
+ this.setValue(value as string | null);
95
+ }
96
+ }
97
+ override render()
98
+ {
99
+ return (
100
+ <>
101
+ <div className={`${Styles.ns_input_parent} ${this.props.customClass}`}>
102
+ <span className={Styles.ns_input_title}> {this.props.required && <span style={{ color: "red" }} >*</span>} {this.props.title} </span>
103
+ <Select
104
+ showSearch
105
+ mode={this.props.multiple ? "multiple" : undefined}
106
+ style={{ width: '100%' }}
107
+ className={Styles.ns_input_select}
108
+ placeholder={this.props.placeHolder ?? "Combo Box"}
109
+ onChange={this.handleChange}
110
+ optionLabelProp="label"
111
+ options={this.props.options}
112
+ optionRender={(option) => (
113
+ <Space className={Styles.ns_input_select_option}>
114
+ {option.data.desc}
115
+ </Space>
116
+ )}
117
+ suffixIcon={<img src={IconSelectBox} alt="SelectBox Icon" />}
118
+ />
119
+ </div>
120
+ <NSBoxErrorNotifier error={this.state.error} />
121
+ </>
122
+ );
123
+ }
124
124
  }
@@ -1,3 +1,3 @@
1
- .ns_input_error {
2
- color: #FF3F3F !important;
1
+ .ns_input_error {
2
+ color: #FF3F3F !important;
3
3
  }
@@ -1,28 +1,28 @@
1
- import Styles from "./NSBoxErrorNotifier.module.css";
2
- import Danger from '../assets/images/danger.svg';
3
- import { IBaseComponentProps } from "../props/IBaseComponentProps";
4
-
5
- export interface INSBoxErrorNotifierProps extends IBaseComponentProps
6
- {
7
- error?: string;
8
- }
9
-
10
- export function NSBoxErrorNotifier(props: INSBoxErrorNotifierProps)
11
- {
12
- return <>
13
- {
14
- props.error && (
15
- <div className="d-flex justify-content-start align-items-center gap-2 ms-2">
16
- <img
17
- className={""}
18
- src={Danger}
19
- alt="Error Icon"
20
- width={13}
21
- height={13}
22
- />
23
- <span className={Styles.ns_input_error}>{props.error}</span>
24
- </div >
25
- )
26
- }
27
- </>;
1
+ import Styles from "./NSBoxErrorNotifier.module.css";
2
+ import Danger from '../assets/images/danger.svg';
3
+ import { IBaseComponentProps } from "../props/IBaseComponentProps";
4
+
5
+ export interface INSBoxErrorNotifierProps extends IBaseComponentProps
6
+ {
7
+ error?: string;
8
+ }
9
+
10
+ export function NSBoxErrorNotifier(props: INSBoxErrorNotifierProps)
11
+ {
12
+ return <>
13
+ {
14
+ props.error && (
15
+ <div className="d-flex justify-content-start align-items-center gap-2 ms-2">
16
+ <img
17
+ className={""}
18
+ src={Danger}
19
+ alt="Error Icon"
20
+ width={13}
21
+ height={13}
22
+ />
23
+ <span className={Styles.ns_input_error}>{props.error}</span>
24
+ </div >
25
+ )
26
+ }
27
+ </>;
28
28
  }