namirasoft-site-react 1.3.328 → 1.3.330

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 (366) hide show
  1. package/.dockerignore +86 -86
  2. package/Dockerfile +18 -18
  3. package/config-overrides.js +70 -70
  4. package/dist/App.js +3 -2
  5. package/dist/App.js.map +1 -1
  6. package/dist/assets/images/404 image.svg +9 -9
  7. package/dist/assets/images/404 image_mobile.svg +9 -9
  8. package/dist/assets/images/arrow.svg +3 -3
  9. package/dist/assets/images/danger.svg +3 -3
  10. package/dist/assets/images/exit.svg +3 -3
  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-integer.svg +9 -9
  17. package/dist/assets/images/icon-input-ip.svg +9 -9
  18. package/dist/assets/images/icon-input-phone.svg +9 -9
  19. package/dist/assets/images/icon-input-price.svg +9 -9
  20. package/dist/assets/images/icon-input-search.svg +3 -3
  21. package/dist/assets/images/icon-input-string.svg +9 -9
  22. package/dist/assets/images/icon-input-text.svg +9 -9
  23. package/dist/assets/images/icon-input-time.svg +9 -9
  24. package/dist/assets/images/icon-select-box.svg +3 -3
  25. package/dist/assets/images/logo.svg +9 -9
  26. package/dist/assets/images/menu.svg +3 -3
  27. package/dist/assets/images/namira.svg +9 -9
  28. package/dist/assets/images/rectangle.svg +3 -3
  29. package/dist/components/NSActionMenu.js +2 -2
  30. package/dist/components/NSActionMenu.module.css +75 -75
  31. package/dist/components/NSAssistantButton.module.css +133 -133
  32. package/dist/components/NSBarAction.module.css +87 -87
  33. package/dist/components/NSBarHeroBanner.module.css +42 -42
  34. package/dist/components/NSBarNotification.module.css +34 -34
  35. package/dist/components/NSBarTitle.module.css +9 -9
  36. package/dist/components/NSBox.module.css +123 -123
  37. package/dist/components/NSBoxBoolean.module.css +53 -53
  38. package/dist/components/NSBoxCombo.module.css +16 -16
  39. package/dist/components/NSBoxDate.module.css +39 -39
  40. package/dist/components/NSBoxEntity.module.css +25 -21
  41. package/dist/components/NSBoxErrorNotifier.module.css +2 -2
  42. package/dist/components/NSBoxLabel.module.css +12 -12
  43. package/dist/components/NSBoxOTP.module.css +10 -10
  44. package/dist/components/NSBoxTextArea.module.css +76 -76
  45. package/dist/components/NSButton.module.css +27 -27
  46. package/dist/components/NSButtonBlue.module.css +4 -4
  47. package/dist/components/NSButtonGreen.module.css +4 -4
  48. package/dist/components/NSButtonRed.module.css +4 -4
  49. package/dist/components/NSCard.module.css +108 -108
  50. package/dist/components/NSCopyToClipboard.module.css +39 -39
  51. package/dist/components/NSElectronicCard.module.css +60 -60
  52. package/dist/components/NSEntityBar.module.css +77 -77
  53. package/dist/components/NSEntityCardBackground.module.css +27 -27
  54. package/dist/components/NSFilterBox.module.css +47 -47
  55. package/dist/components/NSFilterBoxDialog.module.css +36 -36
  56. package/dist/components/NSFilterItem.module.css +23 -23
  57. package/dist/components/NSFooter.module.css +123 -123
  58. package/dist/components/NSGroupedList.module.css +72 -72
  59. package/dist/components/NSHeader.module.css +271 -271
  60. package/dist/components/NSLayout.module.css +13 -13
  61. package/dist/components/NSLink.module.css +36 -36
  62. package/dist/components/NSLoading.module.css +29 -29
  63. package/dist/components/NSModal.js +2 -2
  64. package/dist/components/NSModal.module.css +70 -70
  65. package/dist/components/NSNoData.module.css +8 -8
  66. package/dist/components/NSPageSelectionModal.module.css +102 -101
  67. package/dist/components/NSPagination.module.css +101 -101
  68. package/dist/components/NSPanel.module.css +46 -46
  69. package/dist/components/NSRadioButton.d.ts +22 -4
  70. package/dist/components/NSRadioButton.js +38 -13
  71. package/dist/components/NSRadioButton.js.map +1 -1
  72. package/dist/components/NSRadioButton.module.css +53 -28
  73. package/dist/components/NSRadioGroup.d.ts +9 -0
  74. package/dist/components/NSRadioGroup.js +14 -0
  75. package/dist/components/NSRadioGroup.js.map +1 -0
  76. package/dist/components/NSRadioGroup.module.css +29 -0
  77. package/dist/components/NSSection.module.css +10 -10
  78. package/dist/components/NSSectionBars.module.css +10 -10
  79. package/dist/components/NSSectionCards.module.css +38 -38
  80. package/dist/components/NSTabPage.module.css +57 -57
  81. package/dist/components/NSTable.js +3 -0
  82. package/dist/components/NSTable.js.map +1 -1
  83. package/dist/components/NSTable.module.css +230 -229
  84. package/dist/components/NSTag.module.css +44 -44
  85. package/dist/components/NSTitle.module.css +15 -15
  86. package/dist/components/NSVerification.module.css +22 -22
  87. package/dist/main.d.ts +1 -1
  88. package/dist/main.js +1 -1
  89. package/dist/main.js.map +1 -1
  90. package/dist/pages/NSLoginPage.module.css +19 -19
  91. package/dist/pages/NSNotFoundPage.module.css +18 -18
  92. package/package.json +67 -67
  93. package/public/index.html +38 -38
  94. package/src/App.css +16 -16
  95. package/src/App.tsx +168 -166
  96. package/src/CopyToClipboard.ts +6 -6
  97. package/src/Validator.ts +110 -110
  98. package/src/assets/images/404 image.svg +9 -9
  99. package/src/assets/images/404 image_mobile.svg +9 -9
  100. package/src/assets/images/arrow.svg +3 -3
  101. package/src/assets/images/danger.svg +3 -3
  102. package/src/assets/images/exit.svg +3 -3
  103. package/src/assets/images/icon-input-copy.svg +3 -3
  104. package/src/assets/images/icon-input-date.svg +9 -9
  105. package/src/assets/images/icon-input-duration.svg +9 -9
  106. package/src/assets/images/icon-input-email.svg +9 -9
  107. package/src/assets/images/icon-input-float.svg +9 -9
  108. package/src/assets/images/icon-input-integer.svg +9 -9
  109. package/src/assets/images/icon-input-ip.svg +9 -9
  110. package/src/assets/images/icon-input-phone.svg +9 -9
  111. package/src/assets/images/icon-input-price.svg +9 -9
  112. package/src/assets/images/icon-input-search.svg +3 -3
  113. package/src/assets/images/icon-input-string.svg +9 -9
  114. package/src/assets/images/icon-input-text.svg +9 -9
  115. package/src/assets/images/icon-input-time.svg +9 -9
  116. package/src/assets/images/icon-select-box.svg +3 -3
  117. package/src/assets/images/logo.svg +9 -9
  118. package/src/assets/images/menu.svg +3 -3
  119. package/src/assets/images/namira.svg +9 -9
  120. package/src/assets/images/rectangle.svg +3 -3
  121. package/src/components/NSActionMenu.module.css +75 -75
  122. package/src/components/NSActionMenu.tsx +88 -88
  123. package/src/components/NSAssistantButton.module.css +133 -133
  124. package/src/components/NSAssistantButton.tsx +74 -74
  125. package/src/components/NSBarAction.module.css +87 -87
  126. package/src/components/NSBarAction.tsx +86 -86
  127. package/src/components/NSBarHeroBanner.module.css +42 -42
  128. package/src/components/NSBarHeroBanner.tsx +61 -61
  129. package/src/components/NSBarNotification.module.css +34 -34
  130. package/src/components/NSBarNotification.tsx +63 -63
  131. package/src/components/NSBarTitle.module.css +9 -9
  132. package/src/components/NSBarTitle.tsx +28 -28
  133. package/src/components/NSBox.module.css +123 -123
  134. package/src/components/NSBoxBoolean.module.css +53 -53
  135. package/src/components/NSBoxBoolean.tsx +84 -84
  136. package/src/components/NSBoxCombo.module.css +16 -16
  137. package/src/components/NSBoxCombo.tsx +131 -131
  138. package/src/components/NSBoxDate.module.css +39 -39
  139. package/src/components/NSBoxDate.tsx +83 -83
  140. package/src/components/NSBoxDateTime.tsx +83 -83
  141. package/src/components/NSBoxDouble.tsx +88 -88
  142. package/src/components/NSBoxDuration.tsx +88 -88
  143. package/src/components/NSBoxEmail.tsx +104 -104
  144. package/src/components/NSBoxEntity.module.css +25 -21
  145. package/src/components/NSBoxEntity.tsx +134 -134
  146. package/src/components/NSBoxEnum.tsx +56 -56
  147. package/src/components/NSBoxErrorNotifier.module.css +2 -2
  148. package/src/components/NSBoxErrorNotifier.tsx +33 -33
  149. package/src/components/NSBoxIPV4.tsx +93 -93
  150. package/src/components/NSBoxIPV6.tsx +90 -90
  151. package/src/components/NSBoxInteger.tsx +86 -86
  152. package/src/components/NSBoxLabel.module.css +12 -12
  153. package/src/components/NSBoxLabel.tsx +29 -29
  154. package/src/components/NSBoxOTP.module.css +10 -10
  155. package/src/components/NSBoxOTP.tsx +65 -65
  156. package/src/components/NSBoxPassword.tsx +86 -86
  157. package/src/components/NSBoxPhone.tsx +88 -88
  158. package/src/components/NSBoxPrice.tsx +88 -88
  159. package/src/components/NSBoxSearch.tsx +103 -103
  160. package/src/components/NSBoxString.tsx +103 -103
  161. package/src/components/NSBoxTextArea.module.css +76 -76
  162. package/src/components/NSBoxTextArea.tsx +106 -106
  163. package/src/components/NSBoxTime.tsx +88 -88
  164. package/src/components/NSButton.module.css +27 -27
  165. package/src/components/NSButton.tsx +23 -23
  166. package/src/components/NSButtonBlue.module.css +4 -4
  167. package/src/components/NSButtonBlue.tsx +12 -12
  168. package/src/components/NSButtonGreen.module.css +4 -4
  169. package/src/components/NSButtonGreen.tsx +11 -11
  170. package/src/components/NSButtonRed.module.css +4 -4
  171. package/src/components/NSButtonRed.tsx +11 -11
  172. package/src/components/NSCard.module.css +108 -108
  173. package/src/components/NSCard.tsx +70 -70
  174. package/src/components/NSCopyToClipboard.module.css +39 -39
  175. package/src/components/NSCopyToClipboard.tsx +35 -35
  176. package/src/components/NSElectronicCard.module.css +60 -60
  177. package/src/components/NSElectronicCard.tsx +47 -47
  178. package/src/components/NSEntityBar.module.css +77 -77
  179. package/src/components/NSEntityBar.tsx +27 -27
  180. package/src/components/NSEntityCardBackground.module.css +27 -27
  181. package/src/components/NSEntityCardBackground.tsx +34 -34
  182. package/src/components/NSFilterBox.module.css +47 -47
  183. package/src/components/NSFilterBox.tsx +374 -374
  184. package/src/components/NSFilterBoxDialog.module.css +36 -36
  185. package/src/components/NSFilterBoxDialog.tsx +74 -74
  186. package/src/components/NSFilterItem.module.css +23 -23
  187. package/src/components/NSFilterItem.tsx +72 -72
  188. package/src/components/NSFooter.module.css +123 -123
  189. package/src/components/NSFooter.tsx +153 -153
  190. package/src/components/NSGroupedList.module.css +72 -72
  191. package/src/components/NSGroupedList.tsx +107 -107
  192. package/src/components/NSHeader.module.css +271 -271
  193. package/src/components/NSHeader.tsx +191 -191
  194. package/src/components/NSLayout.module.css +13 -13
  195. package/src/components/NSLayout.tsx +75 -75
  196. package/src/components/NSLine.tsx +18 -18
  197. package/src/components/NSLink.module.css +36 -36
  198. package/src/components/NSLink.tsx +25 -25
  199. package/src/components/NSLinkBlue.tsx +20 -20
  200. package/src/components/NSLinkGreen.tsx +5 -5
  201. package/src/components/NSLinkRed.tsx +5 -5
  202. package/src/components/NSLoading.module.css +29 -29
  203. package/src/components/NSLoading.tsx +19 -19
  204. package/src/components/NSModal.module.css +70 -70
  205. package/src/components/NSModal.tsx +49 -49
  206. package/src/components/NSNoData.module.css +8 -8
  207. package/src/components/NSNoData.tsx +24 -24
  208. package/src/components/NSPageSelectionModal.module.css +102 -101
  209. package/src/components/NSPageSelectionModal.tsx +190 -190
  210. package/src/components/NSPagination.module.css +101 -101
  211. package/src/components/NSPagination.tsx +191 -191
  212. package/src/components/NSPanel.module.css +46 -46
  213. package/src/components/NSPanel.tsx +19 -19
  214. package/src/components/NSRadioButton.module.css +53 -28
  215. package/src/components/NSRadioButton.tsx +85 -118
  216. package/src/components/NSRadioGroup.module.css +29 -0
  217. package/src/components/NSRadioGroup.tsx +92 -0
  218. package/src/components/NSSection.module.css +10 -10
  219. package/src/components/NSSection.tsx +23 -23
  220. package/src/components/NSSectionBars.module.css +10 -10
  221. package/src/components/NSSectionBars.tsx +25 -25
  222. package/src/components/NSSectionCards.module.css +38 -38
  223. package/src/components/NSSectionCards.tsx +51 -51
  224. package/src/components/NSSectionTitle.tsx +21 -21
  225. package/src/components/NSSpace.tsx +28 -28
  226. package/src/components/NSTabPage.module.css +57 -57
  227. package/src/components/NSTabPage.tsx +46 -46
  228. package/src/components/NSTable.module.css +230 -229
  229. package/src/components/NSTable.tsx +356 -353
  230. package/src/components/NSTag.module.css +44 -44
  231. package/src/components/NSTag.tsx +49 -49
  232. package/src/components/NSTitle.module.css +15 -15
  233. package/src/components/NSTitle.tsx +19 -19
  234. package/src/components/NSVerification.module.css +22 -22
  235. package/src/components/NSVerification.tsx +41 -41
  236. package/src/index.tsx +7 -7
  237. package/src/main.ts +80 -80
  238. package/src/pages/NSLoginPage.module.css +19 -19
  239. package/src/pages/NSLoginPage.tsx +30 -30
  240. package/src/pages/NSNotFoundPage.module.css +18 -18
  241. package/src/pages/NSNotFoundPage.tsx +11 -11
  242. package/src/props/IBaseComponentProps.ts +8 -8
  243. package/src/props/IHeaderIconProps.ts +9 -9
  244. package/src/props/IHeaderProps.ts +6 -6
  245. package/src/props/IImageProps.ts +4 -4
  246. package/src/props/ILinkProps.ts +5 -5
  247. package/src/props/IValidationNumberProps.ts +4 -4
  248. package/src/props/IValidationProps.ts +7 -7
  249. package/src/props/IValidationRegexProps.ts +4 -4
  250. package/src/props/IValidationStringProps.ts +4 -4
  251. package/src/routing/INSRouterMaker.ts +6 -6
  252. package/src/routing/INSRouterProps.ts +5 -5
  253. package/src/routing/INSRouterState.ts +5 -5
  254. package/src/routing/NSRouterMaker.tsx +33 -33
  255. package/src/routing/Notifier.ts +79 -79
  256. package/tsconfig.json +43 -43
  257. package/dist/App.css +0 -17
  258. package/dist/assets/images/1.png +0 -0
  259. package/dist/assets/images/2.png +0 -0
  260. package/dist/assets/images/3.png +0 -0
  261. package/dist/assets/images/4.png +0 -0
  262. package/dist/assets/images/5.jpg +0 -0
  263. package/dist/assets/images/icon-export.svg +0 -3
  264. package/dist/assets/images/icon-input-id.svg +0 -9
  265. package/dist/assets/images/icon-refresh.svg +0 -3
  266. package/dist/components/NSAccess.d.ts +0 -2
  267. package/dist/components/NSAccess.js +0 -8
  268. package/dist/components/NSAccess.js.map +0 -1
  269. package/dist/components/NSAccess.module.css +0 -39
  270. package/dist/components/NSBoxText.d.ts +0 -25
  271. package/dist/components/NSBoxText.js +0 -56
  272. package/dist/components/NSBoxText.js.map +0 -1
  273. package/dist/components/NSInput.module.css +0 -74
  274. package/dist/components/NSInputDate.d.ts +0 -21
  275. package/dist/components/NSInputDate.js +0 -41
  276. package/dist/components/NSInputDate.js.map +0 -1
  277. package/dist/components/NSInputDate.module.css +0 -42
  278. package/dist/components/NSInputDuration.d.ts +0 -23
  279. package/dist/components/NSInputDuration.js +0 -42
  280. package/dist/components/NSInputDuration.js.map +0 -1
  281. package/dist/components/NSInputEmail.d.ts +0 -22
  282. package/dist/components/NSInputEmail.js +0 -43
  283. package/dist/components/NSInputEmail.js.map +0 -1
  284. package/dist/components/NSInputErrorNotifier.d.ts +0 -5
  285. package/dist/components/NSInputErrorNotifier.js +0 -7
  286. package/dist/components/NSInputErrorNotifier.js.map +0 -1
  287. package/dist/components/NSInputErrorNotifier.module.css +0 -3
  288. package/dist/components/NSInputFloat.d.ts +0 -22
  289. package/dist/components/NSInputFloat.js +0 -41
  290. package/dist/components/NSInputFloat.js.map +0 -1
  291. package/dist/components/NSInputIP.d.ts +0 -22
  292. package/dist/components/NSInputIP.js +0 -43
  293. package/dist/components/NSInputIP.js.map +0 -1
  294. package/dist/components/NSInputInteger.d.ts +0 -22
  295. package/dist/components/NSInputInteger.js +0 -41
  296. package/dist/components/NSInputInteger.js.map +0 -1
  297. package/dist/components/NSInputPassword.d.ts +0 -22
  298. package/dist/components/NSInputPassword.js +0 -42
  299. package/dist/components/NSInputPassword.js.map +0 -1
  300. package/dist/components/NSInputPhone.d.ts +0 -22
  301. package/dist/components/NSInputPhone.js +0 -38
  302. package/dist/components/NSInputPhone.js.map +0 -1
  303. package/dist/components/NSInputPrice.d.ts +0 -22
  304. package/dist/components/NSInputPrice.js +0 -41
  305. package/dist/components/NSInputPrice.js.map +0 -1
  306. package/dist/components/NSInputSearch.d.ts +0 -22
  307. package/dist/components/NSInputSearch.js +0 -41
  308. package/dist/components/NSInputSearch.js.map +0 -1
  309. package/dist/components/NSInputString.d.ts +0 -22
  310. package/dist/components/NSInputString.js +0 -42
  311. package/dist/components/NSInputString.js.map +0 -1
  312. package/dist/components/NSInputText.d.ts +0 -22
  313. package/dist/components/NSInputText.js +0 -42
  314. package/dist/components/NSInputText.js.map +0 -1
  315. package/dist/components/NSInputTime.d.ts +0 -22
  316. package/dist/components/NSInputTime.js +0 -43
  317. package/dist/components/NSInputTime.js.map +0 -1
  318. package/dist/components/NSLayoutAction.d.ts +0 -5
  319. package/dist/components/NSLayoutAction.js +0 -20
  320. package/dist/components/NSLayoutAction.js.map +0 -1
  321. package/dist/components/NSLayoutAction.module.css +0 -88
  322. package/dist/components/NSLayoutHeroBanner.d.ts +0 -2
  323. package/dist/components/NSLayoutHeroBanner.js +0 -8
  324. package/dist/components/NSLayoutHeroBanner.js.map +0 -1
  325. package/dist/components/NSLayoutHeroBanner.module.css +0 -43
  326. package/dist/components/NSLayoutTitle.d.ts +0 -2
  327. package/dist/components/NSLayoutTitle.js +0 -11
  328. package/dist/components/NSLayoutTitle.js.map +0 -1
  329. package/dist/components/NSLayoutTitle.module.css +0 -10
  330. package/dist/components/NSNotification.d.ts +0 -21
  331. package/dist/components/NSNotification.js +0 -37
  332. package/dist/components/NSNotification.js.map +0 -1
  333. package/dist/components/NSNotification.module.css +0 -32
  334. package/dist/components/NSPrintModal.d.ts +0 -15
  335. package/dist/components/NSPrintModal.js +0 -35
  336. package/dist/components/NSPrintModal.js.map +0 -1
  337. package/dist/components/NSPrintModal.module.css +0 -82
  338. package/dist/components/NSSelectBox.d.ts +0 -24
  339. package/dist/components/NSSelectBox.js +0 -61
  340. package/dist/components/NSSelectBox.js.map +0 -1
  341. package/dist/components/NSSelectBox.module.css +0 -42
  342. package/dist/index.css +0 -6
  343. package/dist/props/BaseComponentProps.d.ts +0 -6
  344. package/dist/props/BaseComponentProps.js +0 -2
  345. package/dist/props/BaseComponentProps.js.map +0 -10
  346. package/dist/props/INamirasoftProps.d.ts +0 -4
  347. package/dist/props/INamirasoftProps.js +0 -2
  348. package/dist/props/INamirasoftProps.js.map +0 -1
  349. package/dist/props/ImageProps.d.ts +0 -4
  350. package/dist/props/ImageProps.js +0 -2
  351. package/dist/props/ImageProps.js.map +0 -10
  352. package/dist/props/LinkProps.d.ts +0 -5
  353. package/dist/props/LinkProps.js +0 -2
  354. package/dist/props/LinkProps.js.map +0 -10
  355. package/dist/props/ValidationNumberProps.d.ts +0 -4
  356. package/dist/props/ValidationNumberProps.js +0 -2
  357. package/dist/props/ValidationNumberProps.js.map +0 -10
  358. package/dist/props/ValidationProps.d.ts +0 -6
  359. package/dist/props/ValidationProps.js +0 -2
  360. package/dist/props/ValidationProps.js.map +0 -10
  361. package/dist/props/ValidationRegexProps.d.ts +0 -4
  362. package/dist/props/ValidationRegexProps.js +0 -2
  363. package/dist/props/ValidationRegexProps.js.map +0 -1
  364. package/dist/props/ValidationStringProps.d.ts +0 -4
  365. package/dist/props/ValidationStringProps.js +0 -2
  366. package/dist/props/ValidationStringProps.js.map +0 -10
package/src/App.tsx CHANGED
@@ -1,167 +1,169 @@
1
- import './App.css';
2
- import 'bootstrap/dist/css/bootstrap.min.css';
3
- import { NSBarAction, NSBoxBoolean, NSBoxEmail, NSBoxEnum, NSBoxSearch, NSBoxString, NSEntityBar, NSLayout, NSNoData, NSPagination, NSSpace, NSSpaceSizeType, NSTabPage, NSTable } from './main';
4
- import { NSBoxLabel } from './components/NSBoxLabel';
5
- import NSRadioButton from './components/NSRadioButton';
6
- import NSTag from './components/NSTag';
7
- import NSButton from './components/NSButton';
8
- import { useRef } from 'react';
9
-
10
- export interface INSBarActionState
11
- {
12
- id: string;
13
- menu_item: string;
14
- handler: () => void;
15
- isActive: () => boolean;
16
- }
17
- export function App()
18
- {
19
- const onClicked = () =>
20
- {
21
- console.log("clicked")
22
- }
23
- let icons = [
24
- { src: "https://static.namirasoft.com/image/namirasoft/message/logo/base.png", alt: "", onClicked, count: 1 },
25
- { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
26
- { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
27
- { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
28
- { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
29
- { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
30
- { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
31
- ];
32
- let content1 = () => <>
33
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
34
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
35
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
36
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
37
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
38
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
39
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
40
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
41
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
42
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
43
- <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
44
- </>;
45
- let content2 = () => <div>Content for Tab2</div>;
46
- let content3 = () => <div>Content for Tab3</div>;
47
- const tabs = [
48
- { title: 'Information', getContent: content1 },
49
- { title: 'Price History', getContent: content2 },
50
- { title: 'Price Estimator', getContent: content3 }
51
- ];
52
-
53
- const getColumns = (): { [key: string]: string } =>
54
- {
55
- return {
56
- id: "ID",
57
- name: "Name",
58
- user_id: "User Id",
59
- os: "OS"
60
- };
61
- };
62
- let rows = [
63
- {
64
- id: 1,
65
- name: "Accountant",
66
- policy: "Lorem ipsum dolor sit amet, consetetur ",
67
- },
68
- {
69
- id: 2,
70
- name: "Accountant",
71
- policy: "Lorem ipsum dolor sit amet, consetetur ",
72
- },
73
- {
74
- id: 3,
75
- name: "Accountant",
76
- policy: "Lorem ipsum dolor sit amet, consetetur ",
77
- },
78
- {
79
- id: 4,
80
- name: "Accountant",
81
- policy: "Lorem ipsum dolor sit amet, consetetur ",
82
- },
83
- ]
84
- let group: any = [
85
- [
86
- {
87
- id: "1",
88
- handler: () => { },
89
- isActive: () => false,
90
- menu_item: "1"
91
- }, {
92
- id: "2",
93
- handler: () => { },
94
- isActive: () => true,
95
- menu_item: "2"
96
- },
97
- {
98
- id: "2",
99
- handler: () => { },
100
- isActive: () => true,
101
- menu_item: "3"
102
- }
103
- ]
104
- ]
105
- let table = useRef<NSTable<any>>(null);
106
- function getCell(row: any, column: string): any
107
- {
108
- if (column === "check")
109
- {
110
- return <>
111
- <input id={`checkbox_${row.id}`} type="checkbox" className="table_checkbox" />
112
- <label htmlFor={`checkbox_${row.id}`}></label>
113
- </>
114
- } else
115
- {
116
- return (row as any)[column];
117
- }
118
- }
119
- return (
120
- <>
121
- <NSLayout
122
- header={{
123
- title: "any",
124
- icons: icons
125
- }}
126
- scope="Namirasoft Account Console"
127
- logo="exampleLogoUrl"
128
- notifications={[]}
129
- background=""
130
- >
131
- <>
132
- <NSTabPage tabs={tabs} />
133
- <NSSpace size={NSSpaceSizeType.SMALL} />
134
- <NSPagination totalItems={100} onPageChange={() => { }} />
135
- </>
136
- <NSTable
137
- ref={table}
138
- columns={getColumns()}
139
- getCell={getCell}
140
- getRowKey={row => row.id.toString()}
141
- getColumnAttributes={() => { return {} }}
142
- totalItems={0}
143
- getRows={async () => { return rows; }}
144
- checkbox={true}
145
- />
146
- <NSBarAction title='' menus={group} />
147
- <NSBoxEmail title='Email' required />
148
- <NSBoxString title='String' required />
149
- <NSRadioButton title={"Radio Button"} />
150
- <NSSpace size={NSSpaceSizeType.LARGE} />
151
- <NSBoxBoolean defaultValue={true} title='' required />
152
- <NSButton title='Clear Filters' onClick={() => window.location.reload()} style={{ width: "136px", border: "2px solid #001664" }} />
153
- <NSTag />
154
- <NSNoData lable="No New Message" />
155
- <div className="d-flex flex-row gap-2 w-100">
156
- <NSBoxString title="Name" required />
157
- <NSBoxEnum options={[]} required title='Notification_sender_topic_id' multiple />
158
- <NSBoxEmail title="Name" required />
159
- <NSBoxSearch title="Name" required />
160
- </div>
161
- <NSSpace size={NSSpaceSizeType.MEDUIM} />
162
- <NSBoxBoolean title='CheckBox' required />
163
- <NSEntityBar title='' description='' image={{ src: "" }} />
164
- </NSLayout>
165
- </>
166
- );
1
+ import './App.css';
2
+ import 'bootstrap/dist/css/bootstrap.min.css';
3
+ import { NSBarAction, NSBoxBoolean, NSBoxEmail, NSBoxEnum, NSBoxSearch, NSBoxString, NSEntityBar, NSLayout, NSNoData, NSPagination, NSSpace, NSSpaceSizeType, NSTabPage, NSTable } from './main';
4
+ import { NSBoxLabel } from './components/NSBoxLabel';
5
+ import {NSRadioButton} from './components/NSRadioButton';
6
+ import NSTag from './components/NSTag';
7
+ import NSButton from './components/NSButton';
8
+ import { useRef } from 'react';
9
+ import NSRadioGroup from './components/NSRadioGroup';
10
+
11
+ export interface INSBarActionState
12
+ {
13
+ id: string;
14
+ menu_item: string;
15
+ handler: () => void;
16
+ isActive: () => boolean;
17
+ }
18
+ export function App()
19
+ {
20
+ const onClicked = () =>
21
+ {
22
+ console.log("clicked")
23
+ }
24
+ let icons = [
25
+ { src: "https://static.namirasoft.com/image/namirasoft/message/logo/base.png", alt: "", onClicked, count: 1 },
26
+ { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
27
+ { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
28
+ { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
29
+ { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
30
+ { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
31
+ { src: "https://static.namirasoft.com/image/concept/logout/white.svg", alt: "", onClicked },
32
+ ];
33
+ let content1 = () => <>
34
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
35
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
36
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
37
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
38
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
39
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
40
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
41
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
42
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
43
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
44
+ <NSBoxLabel title="URL"><p style={{ color: "#000" }}>http://URL.com</p></NSBoxLabel>
45
+ </>;
46
+ let content2 = () => <div>Content for Tab2</div>;
47
+ let content3 = () => <div>Content for Tab3</div>;
48
+ const tabs = [
49
+ { title: 'Information', getContent: content1 },
50
+ { title: 'Price History', getContent: content2 },
51
+ { title: 'Price Estimator', getContent: content3 }
52
+ ];
53
+
54
+ const getColumns = (): { [key: string]: string } =>
55
+ {
56
+ return {
57
+ id: "ID",
58
+ name: "Name",
59
+ user_id: "User Id",
60
+ os: "OS"
61
+ };
62
+ };
63
+ let rows = [
64
+ {
65
+ id: 1,
66
+ name: "Accountant",
67
+ policy: "Lorem ipsum dolor sit amet, consetetur ",
68
+ },
69
+ {
70
+ id: 2,
71
+ name: "Accountant",
72
+ policy: "Lorem ipsum dolor sit amet, consetetur ",
73
+ },
74
+ {
75
+ id: 3,
76
+ name: "Accountant",
77
+ policy: "Lorem ipsum dolor sit amet, consetetur ",
78
+ },
79
+ {
80
+ id: 4,
81
+ name: "Accountant",
82
+ policy: "Lorem ipsum dolor sit amet, consetetur ",
83
+ },
84
+ ]
85
+ let group: any = [
86
+ [
87
+ {
88
+ id: "1",
89
+ handler: () => { },
90
+ isActive: () => false,
91
+ menu_item: "1"
92
+ }, {
93
+ id: "2",
94
+ handler: () => { },
95
+ isActive: () => true,
96
+ menu_item: "2"
97
+ },
98
+ {
99
+ id: "2",
100
+ handler: () => { },
101
+ isActive: () => true,
102
+ menu_item: "3"
103
+ }
104
+ ]
105
+ ]
106
+ let table = useRef<NSTable<any>>(null);
107
+ function getCell(row: any, column: string): any
108
+ {
109
+ if (column === "check")
110
+ {
111
+ return <>
112
+ <input id={`checkbox_${row.id}`} type="checkbox" className="table_checkbox" />
113
+ <label htmlFor={`checkbox_${row.id}`}></label>
114
+ </>
115
+ } else
116
+ {
117
+ return (row as any)[column];
118
+ }
119
+ }
120
+ return (
121
+ <>
122
+ <NSLayout
123
+ header={{
124
+ title: "any",
125
+ icons: icons
126
+ }}
127
+ scope="Namirasoft Account Console"
128
+ logo="exampleLogoUrl"
129
+ notifications={[]}
130
+ background=""
131
+ >
132
+ <>
133
+ <NSTabPage tabs={tabs} />
134
+ <NSSpace size={NSSpaceSizeType.SMALL} />
135
+ <NSPagination totalItems={100} onPageChange={() => { }} />
136
+ </>
137
+ <NSTable
138
+ ref={table}
139
+ columns={getColumns()}
140
+ getCell={getCell}
141
+ getRowKey={row => row.id.toString()}
142
+ getColumnAttributes={() => { return {} }}
143
+ totalItems={0}
144
+ getRows={async () => { return rows; }}
145
+ checkbox={true}
146
+ />
147
+ <NSBarAction title='' menus={group} />
148
+ <NSBoxEmail title='Email' required />
149
+ <NSBoxString title='String' required />
150
+ <NSRadioButton title={"Radio Button"} required={false}/>
151
+ <NSSpace size={NSSpaceSizeType.LARGE} />
152
+ <NSBoxBoolean defaultValue={true} title='' required />
153
+ <NSButton title='Clear Filters' onClick={() => window.location.reload()} style={{ width: "136px", border: "2px solid #001664" }} />
154
+ <NSTag />
155
+ <NSNoData lable="No New Message" />
156
+ <div className="d-flex flex-row gap-2 w-100">
157
+ <NSBoxString title="Name" required />
158
+ <NSBoxEnum options={[]} required title='Notification_sender_topic_id' multiple />
159
+ <NSBoxEmail title="Name" required />
160
+ <NSBoxSearch title="Name" required />
161
+ </div>
162
+ <NSSpace size={NSSpaceSizeType.MEDUIM} />
163
+ <NSBoxBoolean title='CheckBox' required />
164
+ <NSEntityBar title='' description='' image={{ src: "" }} />
165
+ <NSRadioGroup title={"test"} data={[{ title: "test2", value: "" },{ title: "test3", value: "" }]} />
166
+ </NSLayout>
167
+ </>
168
+ );
167
169
  }
@@ -1,7 +1,7 @@
1
- export default class CopyToClipboard
2
- {
3
- static copyToClipboard(value: string): void
4
- {
5
- navigator.clipboard.writeText(value);
6
- }
1
+ export default class CopyToClipboard
2
+ {
3
+ static copyToClipboard(value: string): void
4
+ {
5
+ navigator.clipboard.writeText(value);
6
+ }
7
7
  };
package/src/Validator.ts CHANGED
@@ -1,111 +1,111 @@
1
- import { PhoneOperation, RegexTemplate } from "namirasoft-core";
2
- import { IValidationNumberProps } from "./props/IValidationNumberProps";
3
- import { IValidationProps } from "./props/IValidationProps";
4
- import { IValidationStringProps } from "./props/IValidationStringProps";
5
-
6
- export class Validator
7
- {
8
- static getError(name: string, value: string | number | null | undefined, validator: IValidationProps): string | null
9
- {
10
- if (validator.required)
11
- if (!value)
12
- return `${name} is required.`;
13
- if (value != null)
14
- if (validator.regex)
15
- if (!validator.regex.regex.test(value + ""))
16
- return `${name} is not a valid ${validator.regex.name}.`;
17
- if (value != null)
18
- if (validator.validator)
19
- {
20
- let error = validator.validator(name, value);
21
- if (error)
22
- return error;
23
- }
24
- return null;
25
- }
26
- static getErrorString(name: string, value: string | null | undefined, validator: IValidationStringProps): string | null
27
- {
28
- if (value != null)
29
- {
30
- if (validator.max_length != null)
31
- if (validator.max_length < value.length)
32
- return `Max length of ${name} should be ${validator.max_length} characters.`;
33
- if (validator.min_length != null)
34
- if (validator.min_length > value.length)
35
- return `Minlength of ${name} should be ${validator.min_length} characters.`;
36
- }
37
- return null;
38
- }
39
- static getErrorNumber(name: string, value: number | null | undefined, validator: IValidationNumberProps): string | null
40
- {
41
- if (value != null)
42
- {
43
- if (isNaN(value))
44
- return `${name} is not a number.`;
45
- if (validator.max != null)
46
- if (validator.max < value)
47
- return `Max value of ${name} should be ${validator.max} characters.`;
48
- if (validator.min != null)
49
- if (validator.min > value)
50
- return `Min value of ${name} should be ${validator.min} characters.`;
51
- }
52
- return null;
53
- }
54
- static getErrorEmail(name: string, value: string | null | undefined): string | null
55
- {
56
- return Validator.getError(name, value, {
57
- required: true, regex: {
58
- name: "Email",
59
- regex: RegexTemplate.Email
60
- }
61
- });
62
- }
63
- static getErrorDate(name: string, value: string | null | undefined): string | null
64
- {
65
- return Validator.getError(name, value, {
66
- required: true, regex: {
67
- name: "Date",
68
- regex: RegexTemplate.Date
69
- }
70
- });
71
- }
72
- static getErrorTime(name: string, value: string | null | undefined): string | null
73
- {
74
- return Validator.getError(name, value, {
75
- required: true, regex: {
76
- name: "Time",
77
- regex: RegexTemplate.Time
78
- }
79
- });
80
- }
81
- static getErrorDuration(name: string, value: string | null | undefined): string | null
82
- {
83
- return Validator.getError(name, value, {
84
- required: true, regex: {
85
- name: "Duration",
86
- regex: RegexTemplate.Duration
87
- }
88
- });
89
- }
90
- static getErrorIP(name: string, value: string | null | undefined): string | null
91
- {
92
- return Validator.getError(name, value, {
93
- required: true, regex: {
94
- name: "IP",
95
- regex: RegexTemplate.IP
96
- }
97
- });
98
- }
99
- static getErrorPhone(name: string, value: string | null | undefined): string | null
100
- {
101
- return Validator.getError(name, value, {
102
- required: true, validator: () =>
103
- {
104
- if (value)
105
- if (!PhoneOperation.isValid(value))
106
- return `${name} is not a valid phone number`;
107
- return null;
108
- }
109
- });
110
- }
1
+ import { PhoneOperation, RegexTemplate } from "namirasoft-core";
2
+ import { IValidationNumberProps } from "./props/IValidationNumberProps";
3
+ import { IValidationProps } from "./props/IValidationProps";
4
+ import { IValidationStringProps } from "./props/IValidationStringProps";
5
+
6
+ export class Validator
7
+ {
8
+ static getError(name: string, value: string | number | null | undefined, validator: IValidationProps): string | null
9
+ {
10
+ if (validator.required)
11
+ if (!value)
12
+ return `${name} is required.`;
13
+ if (value != null)
14
+ if (validator.regex)
15
+ if (!validator.regex.regex.test(value + ""))
16
+ return `${name} is not a valid ${validator.regex.name}.`;
17
+ if (value != null)
18
+ if (validator.validator)
19
+ {
20
+ let error = validator.validator(name, value);
21
+ if (error)
22
+ return error;
23
+ }
24
+ return null;
25
+ }
26
+ static getErrorString(name: string, value: string | null | undefined, validator: IValidationStringProps): string | null
27
+ {
28
+ if (value != null)
29
+ {
30
+ if (validator.max_length != null)
31
+ if (validator.max_length < value.length)
32
+ return `Max length of ${name} should be ${validator.max_length} characters.`;
33
+ if (validator.min_length != null)
34
+ if (validator.min_length > value.length)
35
+ return `Minlength of ${name} should be ${validator.min_length} characters.`;
36
+ }
37
+ return null;
38
+ }
39
+ static getErrorNumber(name: string, value: number | null | undefined, validator: IValidationNumberProps): string | null
40
+ {
41
+ if (value != null)
42
+ {
43
+ if (isNaN(value))
44
+ return `${name} is not a number.`;
45
+ if (validator.max != null)
46
+ if (validator.max < value)
47
+ return `Max value of ${name} should be ${validator.max} characters.`;
48
+ if (validator.min != null)
49
+ if (validator.min > value)
50
+ return `Min value of ${name} should be ${validator.min} characters.`;
51
+ }
52
+ return null;
53
+ }
54
+ static getErrorEmail(name: string, value: string | null | undefined): string | null
55
+ {
56
+ return Validator.getError(name, value, {
57
+ required: true, regex: {
58
+ name: "Email",
59
+ regex: RegexTemplate.Email
60
+ }
61
+ });
62
+ }
63
+ static getErrorDate(name: string, value: string | null | undefined): string | null
64
+ {
65
+ return Validator.getError(name, value, {
66
+ required: true, regex: {
67
+ name: "Date",
68
+ regex: RegexTemplate.Date
69
+ }
70
+ });
71
+ }
72
+ static getErrorTime(name: string, value: string | null | undefined): string | null
73
+ {
74
+ return Validator.getError(name, value, {
75
+ required: true, regex: {
76
+ name: "Time",
77
+ regex: RegexTemplate.Time
78
+ }
79
+ });
80
+ }
81
+ static getErrorDuration(name: string, value: string | null | undefined): string | null
82
+ {
83
+ return Validator.getError(name, value, {
84
+ required: true, regex: {
85
+ name: "Duration",
86
+ regex: RegexTemplate.Duration
87
+ }
88
+ });
89
+ }
90
+ static getErrorIP(name: string, value: string | null | undefined): string | null
91
+ {
92
+ return Validator.getError(name, value, {
93
+ required: true, regex: {
94
+ name: "IP",
95
+ regex: RegexTemplate.IP
96
+ }
97
+ });
98
+ }
99
+ static getErrorPhone(name: string, value: string | null | undefined): string | null
100
+ {
101
+ return Validator.getError(name, value, {
102
+ required: true, validator: () =>
103
+ {
104
+ if (value)
105
+ if (!PhoneOperation.isValid(value))
106
+ return `${name} is not a valid phone number`;
107
+ return null;
108
+ }
109
+ });
110
+ }
111
111
  }