namirasoft-site-react 1.4.567 → 1.4.569

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 (485) hide show
  1. package/.dockerignore +86 -86
  2. package/.env.template +10 -10
  3. package/Dockerfile +18 -18
  4. package/SKILL.md +307 -307
  5. package/config-overrides.js +72 -72
  6. package/dist/App.d.ts +1 -1
  7. package/dist/NSBoxBuilder.d.ts +25 -25
  8. package/dist/components/NSBanner.d.ts +1 -1
  9. package/dist/components/NSBanner.module.css +47 -47
  10. package/dist/components/NSBarAction.d.ts +1 -1
  11. package/dist/components/NSBarAction.module.css +91 -91
  12. package/dist/components/NSBarAlert.d.ts +1 -1
  13. package/dist/components/NSBarAlert.module.css +79 -79
  14. package/dist/components/NSBarNotification.d.ts +1 -1
  15. package/dist/components/NSBarNotification.js +2 -1
  16. package/dist/components/NSBarNotification.js.map +1 -1
  17. package/dist/components/NSBarNotification.module.css +34 -34
  18. package/dist/components/NSBarTitle.d.ts +1 -1
  19. package/dist/components/NSBarTitle.module.css +9 -9
  20. package/dist/components/NSBox.module.css +87 -87
  21. package/dist/components/NSBoxBaseCombo.d.ts +1 -1
  22. package/dist/components/NSBoxBaseCombo.module.css +6 -6
  23. package/dist/components/NSBoxBaseLayout.d.ts +1 -1
  24. package/dist/components/NSBoxBaseLayoutRecursive.d.ts +1 -1
  25. package/dist/components/NSBoxBoolean.d.ts +1 -1
  26. package/dist/components/NSBoxBoolean.module.css +73 -73
  27. package/dist/components/NSBoxBooleans.d.ts +1 -1
  28. package/dist/components/NSBoxColor.d.ts +1 -1
  29. package/dist/components/NSBoxCombo.d.ts +1 -1
  30. package/dist/components/NSBoxDate.d.ts +1 -1
  31. package/dist/components/NSBoxDate.module.css +4 -4
  32. package/dist/components/NSBoxDateRange.d.ts +1 -1
  33. package/dist/components/NSBoxDateRangeBase.d.ts +1 -1
  34. package/dist/components/NSBoxDateRangeBase.module.css +73 -73
  35. package/dist/components/NSBoxDateTime.d.ts +1 -1
  36. package/dist/components/NSBoxDateTime.module.css +4 -4
  37. package/dist/components/NSBoxDateTimeRange.d.ts +1 -1
  38. package/dist/components/NSBoxDouble.d.ts +1 -1
  39. package/dist/components/NSBoxDuration.d.ts +1 -1
  40. package/dist/components/NSBoxDuration.module.css +4 -4
  41. package/dist/components/NSBoxDynamic.d.ts +1 -1
  42. package/dist/components/NSBoxDynamics.d.ts +1 -1
  43. package/dist/components/NSBoxEmail.d.ts +1 -1
  44. package/dist/components/NSBoxEntity.d.ts +1 -1
  45. package/dist/components/NSBoxEnum.d.ts +1 -1
  46. package/dist/components/NSBoxFile.d.ts +1 -1
  47. package/dist/components/NSBoxFile.module.css +10 -10
  48. package/dist/components/NSBoxFilePath.d.ts +1 -1
  49. package/dist/components/NSBoxFont.d.ts +1 -1
  50. package/dist/components/NSBoxIPV4.d.ts +1 -1
  51. package/dist/components/NSBoxIPV4Range.d.ts +1 -1
  52. package/dist/components/NSBoxIPV6.d.ts +1 -1
  53. package/dist/components/NSBoxIPV6Range.d.ts +1 -1
  54. package/dist/components/NSBoxInteger.d.ts +1 -1
  55. package/dist/components/NSBoxInteger.module.css +16 -16
  56. package/dist/components/NSBoxMoney.d.ts +1 -1
  57. package/dist/components/NSBoxOptions.d.ts +1 -1
  58. package/dist/components/NSBoxOptions.module.css +53 -53
  59. package/dist/components/NSBoxPhone.d.ts +1 -1
  60. package/dist/components/NSBoxPhone.module.css +35 -35
  61. package/dist/components/NSBoxRadio.d.ts +1 -1
  62. package/dist/components/NSBoxRadio.module.css +33 -33
  63. package/dist/components/NSBoxSchemaBase.d.ts +1 -1
  64. package/dist/components/NSBoxSchemaBase.module.css +17 -17
  65. package/dist/components/NSBoxSchemaVariable.d.ts +1 -1
  66. package/dist/components/NSBoxSchemaVariable.module.css +16 -16
  67. package/dist/components/NSBoxSearch.d.ts +1 -1
  68. package/dist/components/NSBoxSensitive.d.ts +1 -1
  69. package/dist/components/NSBoxString.d.ts +1 -1
  70. package/dist/components/NSBoxTextArea.d.ts +1 -1
  71. package/dist/components/NSBoxTextArea.module.css +12 -12
  72. package/dist/components/NSBoxTime.d.ts +1 -1
  73. package/dist/components/NSBoxTime.module.css +4 -4
  74. package/dist/components/NSBoxTimeRange.d.ts +1 -1
  75. package/dist/components/NSBoxTimeZone.d.ts +1 -1
  76. package/dist/components/NSBoxURL.d.ts +1 -1
  77. package/dist/components/NSBoxVersion.d.ts +1 -1
  78. package/dist/components/NSButton.module.css +57 -57
  79. package/dist/components/NSButtonBlue.d.ts +1 -1
  80. package/dist/components/NSButtonBlue.module.css +4 -4
  81. package/dist/components/NSButtonGreen.d.ts +1 -1
  82. package/dist/components/NSButtonGreen.module.css +4 -4
  83. package/dist/components/NSButtonRed.d.ts +1 -1
  84. package/dist/components/NSButtonRed.module.css +4 -4
  85. package/dist/components/NSCard.d.ts +1 -1
  86. package/dist/components/NSCard.module.css +113 -113
  87. package/dist/components/NSCardScreenshot.d.ts +1 -1
  88. package/dist/components/NSCardScreenshot.module.css +41 -41
  89. package/dist/components/NSChartBar.d.ts +1 -1
  90. package/dist/components/NSChartDoughnut.d.ts +1 -1
  91. package/dist/components/NSChartLine.d.ts +1 -1
  92. package/dist/components/NSChartPie.d.ts +1 -1
  93. package/dist/components/NSChartRange.d.ts +1 -1
  94. package/dist/components/NSColumn.d.ts +1 -1
  95. package/dist/components/NSColumn.module.css +16 -16
  96. package/dist/components/NSCopy.d.ts +1 -1
  97. package/dist/components/NSCopyBox.d.ts +1 -1
  98. package/dist/components/NSCopyBox.module.css +39 -39
  99. package/dist/components/NSDialog.d.ts +1 -1
  100. package/dist/components/NSDialog.module.css +105 -105
  101. package/dist/components/NSDialogBox.d.ts +1 -1
  102. package/dist/components/NSDialogBoxDate.d.ts +1 -1
  103. package/dist/components/NSDialogBoxDateTime.d.ts +1 -1
  104. package/dist/components/NSDialogBoxPhone.d.ts +1 -1
  105. package/dist/components/NSDialogBoxString.d.ts +1 -1
  106. package/dist/components/NSDialogDelete.d.ts +1 -1
  107. package/dist/components/NSDialogInfo.d.ts +1 -1
  108. package/dist/components/NSDialogPageSelection.d.ts +2 -2
  109. package/dist/components/NSDialogPageSelection.module.css +103 -103
  110. package/dist/components/NSDownTimer.d.ts +1 -1
  111. package/dist/components/NSDownTimer.module.css +55 -55
  112. package/dist/components/NSDownload.d.ts +1 -1
  113. package/dist/components/NSDownload.module.css +46 -46
  114. package/dist/components/NSElectronicCard.d.ts +1 -1
  115. package/dist/components/NSElectronicCard.module.css +60 -60
  116. package/dist/components/NSEntityCardBackground.d.ts +1 -1
  117. package/dist/components/NSEntityCardBackground.module.css +27 -27
  118. package/dist/components/NSFilterBox.d.ts +2 -2
  119. package/dist/components/NSFilterBox.module.css +27 -27
  120. package/dist/components/NSFilterBoxItems.d.ts +1 -1
  121. package/dist/components/NSFilterBoxItems.module.css +15 -15
  122. package/dist/components/NSFilterItem.d.ts +1 -1
  123. package/dist/components/NSFilterItem.module.css +24 -24
  124. package/dist/components/NSFooter.d.ts +1 -1
  125. package/dist/components/NSFooter.module.css +140 -140
  126. package/dist/components/NSGauge.d.ts +1 -1
  127. package/dist/components/NSGauge.module.css +67 -67
  128. package/dist/components/NSGaugeDate.d.ts +1 -1
  129. package/dist/components/NSGaugeDate.module.css +57 -57
  130. package/dist/components/NSGaugeNumber.d.ts +1 -1
  131. package/dist/components/NSGaugeNumber.module.css +66 -66
  132. package/dist/components/NSHeader.d.ts +1 -1
  133. package/dist/components/NSHeader.module.css +316 -316
  134. package/dist/components/NSHeaderScreenshot.d.ts +1 -1
  135. package/dist/components/NSHeaderScreenshot.module.css +35 -35
  136. package/dist/components/NSID.d.ts +5 -4
  137. package/dist/components/NSID.js +14 -4
  138. package/dist/components/NSID.js.map +1 -1
  139. package/dist/components/NSInfo.d.ts +1 -1
  140. package/dist/components/NSLabel.d.ts +1 -1
  141. package/dist/components/NSLabel.module.css +25 -25
  142. package/dist/components/NSLabelErrorNotifier.d.ts +1 -1
  143. package/dist/components/NSLabelErrorNotifier.module.css +2 -2
  144. package/dist/components/NSLabelSensitive.d.ts +1 -1
  145. package/dist/components/NSLabelSensitive.module.css +9 -9
  146. package/dist/components/NSLayout.d.ts +1 -1
  147. package/dist/components/NSLayout.module.css +22 -22
  148. package/dist/components/NSLine.d.ts +1 -1
  149. package/dist/components/NSLine.module.css +15 -15
  150. package/dist/components/NSLineText.d.ts +1 -1
  151. package/dist/components/NSLineText.module.css +38 -38
  152. package/dist/components/NSLink.d.ts +1 -1
  153. package/dist/components/NSLink.module.css +36 -36
  154. package/dist/components/NSLinkBlue.d.ts +1 -1
  155. package/dist/components/NSLinkGreen.d.ts +1 -1
  156. package/dist/components/NSLinkRed.d.ts +1 -1
  157. package/dist/components/NSListGrouped.d.ts +1 -1
  158. package/dist/components/NSListGrouped.module.css +69 -69
  159. package/dist/components/NSListProduct.d.ts +1 -1
  160. package/dist/components/NSLoading.d.ts +1 -1
  161. package/dist/components/NSLoading.module.css +10 -10
  162. package/dist/components/NSMegaMenu.d.ts +1 -1
  163. package/dist/components/NSMegaMenu.module.css +133 -133
  164. package/dist/components/NSMenuAction.d.ts +1 -1
  165. package/dist/components/NSMenuAction.module.css +88 -88
  166. package/dist/components/NSMenuButton.d.ts +1 -1
  167. package/dist/components/NSMenuButton.module.css +44 -44
  168. package/dist/components/NSNoData.d.ts +1 -1
  169. package/dist/components/NSNoData.module.css +11 -11
  170. package/dist/components/NSPagination.d.ts +1 -1
  171. package/dist/components/NSPagination.module.css +87 -87
  172. package/dist/components/NSPanel.d.ts +1 -1
  173. package/dist/components/NSPanel.module.css +19 -19
  174. package/dist/components/NSPanelAccordion.d.ts +1 -1
  175. package/dist/components/NSPanelAccordion.module.css +4 -4
  176. package/dist/components/NSProductSearch.d.ts +1 -1
  177. package/dist/components/NSProductSearch.module.css +73 -73
  178. package/dist/components/NSProgressBar.d.ts +1 -1
  179. package/dist/components/NSProgressBar.module.css +38 -38
  180. package/dist/components/NSRange.d.ts +1 -1
  181. package/dist/components/NSRange.module.css +66 -66
  182. package/dist/components/NSRepeater.d.ts +1 -1
  183. package/dist/components/NSRepeaterNSBoxSchemaVariable.d.ts +1 -1
  184. package/dist/components/NSRepeaterNSTag.d.ts +1 -1
  185. package/dist/components/NSRow.d.ts +1 -1
  186. package/dist/components/NSRow.module.css +17 -17
  187. package/dist/components/NSSection.d.ts +1 -1
  188. package/dist/components/NSSection.module.css +4 -4
  189. package/dist/components/NSSectionCards.d.ts +1 -1
  190. package/dist/components/NSSectionCards.module.css +38 -38
  191. package/dist/components/NSSectionTiles.d.ts +1 -1
  192. package/dist/components/NSSectionTiles.module.css +10 -10
  193. package/dist/components/NSSectionTitle.d.ts +1 -1
  194. package/dist/components/NSSpace.d.ts +1 -1
  195. package/dist/components/NSSplitter.d.ts +1 -1
  196. package/dist/components/NSSplitter.module.css +59 -59
  197. package/dist/components/NSTabPage.d.ts +1 -1
  198. package/dist/components/NSTabPage.module.css +59 -59
  199. package/dist/components/NSTable.d.ts +1 -2
  200. package/dist/components/NSTable.js +1 -6
  201. package/dist/components/NSTable.js.map +1 -1
  202. package/dist/components/NSTable.module.css +371 -371
  203. package/dist/components/NSTableChart.d.ts +1 -1
  204. package/dist/components/NSTableChart.module.css +119 -119
  205. package/dist/components/NSTag.d.ts +1 -1
  206. package/dist/components/NSTile.d.ts +1 -1
  207. package/dist/components/NSTile.module.css +76 -76
  208. package/dist/components/NSTimelineMonthly.d.ts +1 -1
  209. package/dist/components/NSTimelineMonthly.module.css +71 -71
  210. package/dist/components/NSTitle.d.ts +1 -1
  211. package/dist/components/NSTitle.module.css +15 -15
  212. package/dist/formatter/StringFormatter.d.ts +1 -1
  213. package/dist/pages/NSImplementing.d.ts +1 -1
  214. package/dist/pages/NSImplementing.module.css +35 -35
  215. package/dist/pages/NSNotFoundPage.d.ts +1 -1
  216. package/dist/pages/NSNotFoundPage.module.css +18 -18
  217. package/dist/pages/NSUpdating.d.ts +1 -1
  218. package/dist/pages/NSUpdating.module.css +35 -35
  219. package/package.json +86 -86
  220. package/public/index.html +38 -38
  221. package/src/App.css +33 -33
  222. package/src/App.tsx +167 -167
  223. package/src/Color.tsx +10 -10
  224. package/src/CopyToClipboard.ts +6 -6
  225. package/src/EncryptionOperation.ts +98 -98
  226. package/src/KeyOperation.ts +109 -109
  227. package/src/LinkOperation.ts +101 -101
  228. package/src/NSBoxBuilder.tsx +922 -922
  229. package/src/ProductCacheService.ts +15 -15
  230. package/src/Validator.ts +199 -199
  231. package/src/components/INSBox.tsx +7 -7
  232. package/src/components/NSBanner.module.css +47 -47
  233. package/src/components/NSBanner.tsx +80 -80
  234. package/src/components/NSBarAction.module.css +91 -91
  235. package/src/components/NSBarAction.tsx +95 -95
  236. package/src/components/NSBarAlert.module.css +79 -79
  237. package/src/components/NSBarAlert.tsx +35 -35
  238. package/src/components/NSBarNotification.module.css +34 -34
  239. package/src/components/NSBarNotification.tsx +89 -86
  240. package/src/components/NSBarTitle.module.css +9 -9
  241. package/src/components/NSBarTitle.tsx +23 -23
  242. package/src/components/NSBox.module.css +87 -87
  243. package/src/components/NSBox.tsx +19 -19
  244. package/src/components/NSBoxBaseCombo.module.css +6 -6
  245. package/src/components/NSBoxBaseCombo.tsx +488 -488
  246. package/src/components/NSBoxBaseLayout.tsx +163 -163
  247. package/src/components/NSBoxBaseLayoutRecursive.tsx +59 -59
  248. package/src/components/NSBoxBoolean.module.css +73 -73
  249. package/src/components/NSBoxBoolean.tsx +152 -152
  250. package/src/components/NSBoxBooleans.tsx +181 -181
  251. package/src/components/NSBoxColor.tsx +107 -107
  252. package/src/components/NSBoxCombo.tsx +95 -95
  253. package/src/components/NSBoxDate.module.css +4 -4
  254. package/src/components/NSBoxDate.tsx +119 -119
  255. package/src/components/NSBoxDateRange.tsx +88 -88
  256. package/src/components/NSBoxDateRangeBase.module.css +73 -73
  257. package/src/components/NSBoxDateRangeBase.tsx +198 -198
  258. package/src/components/NSBoxDateTime.module.css +4 -4
  259. package/src/components/NSBoxDateTime.tsx +116 -116
  260. package/src/components/NSBoxDateTimeRange.tsx +65 -65
  261. package/src/components/NSBoxDouble.tsx +110 -110
  262. package/src/components/NSBoxDuration.module.css +4 -4
  263. package/src/components/NSBoxDuration.tsx +107 -107
  264. package/src/components/NSBoxDynamic.tsx +77 -77
  265. package/src/components/NSBoxDynamics.tsx +68 -68
  266. package/src/components/NSBoxEmail.tsx +117 -117
  267. package/src/components/NSBoxEntity.tsx +181 -181
  268. package/src/components/NSBoxEnum.tsx +113 -113
  269. package/src/components/NSBoxFile.module.css +10 -10
  270. package/src/components/NSBoxFile.tsx +106 -106
  271. package/src/components/NSBoxFilePath.tsx +106 -106
  272. package/src/components/NSBoxFont.tsx +107 -107
  273. package/src/components/NSBoxIPV4.tsx +107 -107
  274. package/src/components/NSBoxIPV4Range.tsx +107 -107
  275. package/src/components/NSBoxIPV6.tsx +104 -104
  276. package/src/components/NSBoxIPV6Range.tsx +107 -107
  277. package/src/components/NSBoxInteger.module.css +16 -16
  278. package/src/components/NSBoxInteger.tsx +126 -126
  279. package/src/components/NSBoxMoney.tsx +115 -115
  280. package/src/components/NSBoxOptions.module.css +53 -53
  281. package/src/components/NSBoxOptions.tsx +182 -182
  282. package/src/components/NSBoxPhone.module.css +35 -35
  283. package/src/components/NSBoxPhone.tsx +120 -120
  284. package/src/components/NSBoxRadio.module.css +33 -33
  285. package/src/components/NSBoxRadio.tsx +104 -104
  286. package/src/components/NSBoxSchemaBase.module.css +17 -17
  287. package/src/components/NSBoxSchemaBase.tsx +562 -562
  288. package/src/components/NSBoxSchemaVariable.module.css +16 -16
  289. package/src/components/NSBoxSchemaVariable.tsx +263 -263
  290. package/src/components/NSBoxSearch.tsx +112 -112
  291. package/src/components/NSBoxSensitive.tsx +133 -133
  292. package/src/components/NSBoxString.tsx +106 -106
  293. package/src/components/NSBoxTextArea.module.css +12 -12
  294. package/src/components/NSBoxTextArea.tsx +136 -136
  295. package/src/components/NSBoxTime.module.css +4 -4
  296. package/src/components/NSBoxTime.tsx +106 -106
  297. package/src/components/NSBoxTimeRange.tsx +220 -220
  298. package/src/components/NSBoxTimeZone.tsx +122 -122
  299. package/src/components/NSBoxURL.tsx +117 -117
  300. package/src/components/NSBoxVersion.tsx +107 -107
  301. package/src/components/NSButton.module.css +57 -57
  302. package/src/components/NSButton.tsx +74 -74
  303. package/src/components/NSButtonBlue.module.css +4 -4
  304. package/src/components/NSButtonBlue.tsx +29 -29
  305. package/src/components/NSButtonGreen.module.css +4 -4
  306. package/src/components/NSButtonGreen.tsx +29 -29
  307. package/src/components/NSButtonRed.module.css +4 -4
  308. package/src/components/NSButtonRed.tsx +29 -29
  309. package/src/components/NSCard.module.css +113 -113
  310. package/src/components/NSCard.tsx +67 -67
  311. package/src/components/NSCardScreenshot.module.css +41 -41
  312. package/src/components/NSCardScreenshot.tsx +31 -31
  313. package/src/components/NSChartBar.tsx +134 -134
  314. package/src/components/NSChartDoughnut.tsx +114 -114
  315. package/src/components/NSChartLine.tsx +110 -110
  316. package/src/components/NSChartPie.tsx +105 -105
  317. package/src/components/NSChartRange.tsx +14 -14
  318. package/src/components/NSColumn.module.css +16 -16
  319. package/src/components/NSColumn.tsx +24 -24
  320. package/src/components/NSCopy.tsx +58 -58
  321. package/src/components/NSCopyBox.module.css +39 -39
  322. package/src/components/NSCopyBox.tsx +53 -53
  323. package/src/components/NSDialog.module.css +105 -105
  324. package/src/components/NSDialog.tsx +72 -72
  325. package/src/components/NSDialogBox.tsx +38 -38
  326. package/src/components/NSDialogBoxDate.tsx +28 -28
  327. package/src/components/NSDialogBoxDateTime.tsx +28 -28
  328. package/src/components/NSDialogBoxPhone.tsx +28 -28
  329. package/src/components/NSDialogBoxString.tsx +28 -28
  330. package/src/components/NSDialogDelete.tsx +36 -36
  331. package/src/components/NSDialogInfo.tsx +49 -49
  332. package/src/components/NSDialogPageSelection.module.css +103 -103
  333. package/src/components/NSDialogPageSelection.tsx +219 -219
  334. package/src/components/NSDownTimer.module.css +55 -55
  335. package/src/components/NSDownTimer.tsx +91 -91
  336. package/src/components/NSDownload.module.css +46 -46
  337. package/src/components/NSDownload.tsx +69 -69
  338. package/src/components/NSElectronicCard.module.css +60 -60
  339. package/src/components/NSElectronicCard.tsx +46 -46
  340. package/src/components/NSEntityCardBackground.module.css +27 -27
  341. package/src/components/NSEntityCardBackground.tsx +36 -36
  342. package/src/components/NSFilterBox.module.css +27 -27
  343. package/src/components/NSFilterBox.tsx +477 -477
  344. package/src/components/NSFilterBoxItems.module.css +15 -15
  345. package/src/components/NSFilterBoxItems.tsx +52 -52
  346. package/src/components/NSFilterItem.module.css +24 -24
  347. package/src/components/NSFilterItem.tsx +27 -27
  348. package/src/components/NSFooter.module.css +140 -140
  349. package/src/components/NSFooter.tsx +321 -321
  350. package/src/components/NSGauge.module.css +67 -67
  351. package/src/components/NSGauge.tsx +52 -52
  352. package/src/components/NSGaugeDate.module.css +57 -57
  353. package/src/components/NSGaugeDate.tsx +125 -125
  354. package/src/components/NSGaugeNumber.module.css +66 -66
  355. package/src/components/NSGaugeNumber.tsx +90 -90
  356. package/src/components/NSHeader.module.css +316 -316
  357. package/src/components/NSHeader.tsx +334 -334
  358. package/src/components/NSHeaderScreenshot.module.css +35 -35
  359. package/src/components/NSHeaderScreenshot.tsx +39 -39
  360. package/src/components/NSID.tsx +188 -167
  361. package/src/components/NSInfo.tsx +50 -50
  362. package/src/components/NSLabel.module.css +25 -25
  363. package/src/components/NSLabel.tsx +47 -47
  364. package/src/components/NSLabelErrorNotifier.module.css +2 -2
  365. package/src/components/NSLabelErrorNotifier.tsx +35 -35
  366. package/src/components/NSLabelSensitive.module.css +9 -9
  367. package/src/components/NSLabelSensitive.tsx +85 -85
  368. package/src/components/NSLayout.module.css +22 -22
  369. package/src/components/NSLayout.tsx +140 -140
  370. package/src/components/NSLine.module.css +15 -15
  371. package/src/components/NSLine.tsx +13 -13
  372. package/src/components/NSLineText.module.css +38 -38
  373. package/src/components/NSLineText.tsx +17 -17
  374. package/src/components/NSLink.module.css +36 -36
  375. package/src/components/NSLink.tsx +26 -26
  376. package/src/components/NSLinkBlue.tsx +22 -22
  377. package/src/components/NSLinkGreen.tsx +13 -13
  378. package/src/components/NSLinkRed.tsx +13 -13
  379. package/src/components/NSListGrouped.module.css +69 -69
  380. package/src/components/NSListGrouped.tsx +106 -106
  381. package/src/components/NSListProduct.tsx +78 -78
  382. package/src/components/NSLoading.module.css +10 -10
  383. package/src/components/NSLoading.tsx +43 -43
  384. package/src/components/NSMegaMenu.module.css +133 -133
  385. package/src/components/NSMegaMenu.tsx +188 -188
  386. package/src/components/NSMenuAction.module.css +88 -88
  387. package/src/components/NSMenuAction.tsx +106 -106
  388. package/src/components/NSMenuButton.module.css +44 -44
  389. package/src/components/NSMenuButton.tsx +197 -197
  390. package/src/components/NSNoData.module.css +11 -11
  391. package/src/components/NSNoData.tsx +24 -24
  392. package/src/components/NSPagination.module.css +87 -87
  393. package/src/components/NSPagination.tsx +183 -183
  394. package/src/components/NSPanel.module.css +19 -19
  395. package/src/components/NSPanel.tsx +24 -24
  396. package/src/components/NSPanelAccordion.module.css +4 -4
  397. package/src/components/NSPanelAccordion.tsx +51 -51
  398. package/src/components/NSProductSearch.module.css +73 -73
  399. package/src/components/NSProductSearch.tsx +193 -193
  400. package/src/components/NSProgressBar.module.css +38 -38
  401. package/src/components/NSProgressBar.tsx +29 -29
  402. package/src/components/NSRange.module.css +66 -66
  403. package/src/components/NSRange.tsx +83 -83
  404. package/src/components/NSRepeater.tsx +328 -328
  405. package/src/components/NSRepeaterNSBoxSchemaVariable.tsx +94 -94
  406. package/src/components/NSRepeaterNSTag.tsx +86 -86
  407. package/src/components/NSRow.module.css +17 -17
  408. package/src/components/NSRow.tsx +24 -24
  409. package/src/components/NSSection.module.css +4 -4
  410. package/src/components/NSSection.tsx +26 -26
  411. package/src/components/NSSectionCards.module.css +38 -38
  412. package/src/components/NSSectionCards.tsx +51 -51
  413. package/src/components/NSSectionTiles.module.css +10 -10
  414. package/src/components/NSSectionTiles.tsx +25 -25
  415. package/src/components/NSSectionTitle.tsx +19 -19
  416. package/src/components/NSSpace.tsx +28 -28
  417. package/src/components/NSSplitter.module.css +59 -59
  418. package/src/components/NSSplitter.tsx +211 -211
  419. package/src/components/NSTabPage.module.css +59 -59
  420. package/src/components/NSTabPage.tsx +122 -122
  421. package/src/components/NSTable.module.css +371 -371
  422. package/src/components/NSTable.tsx +1109 -1115
  423. package/src/components/NSTableChart.module.css +119 -119
  424. package/src/components/NSTableChart.tsx +732 -732
  425. package/src/components/NSTag.tsx +74 -74
  426. package/src/components/NSTile.module.css +76 -76
  427. package/src/components/NSTile.tsx +27 -27
  428. package/src/components/NSTimelineMonthly.module.css +71 -71
  429. package/src/components/NSTimelineMonthly.tsx +44 -44
  430. package/src/components/NSTitle.module.css +15 -15
  431. package/src/components/NSTitle.tsx +19 -19
  432. package/src/formatter/BackColorFormatter.tsx +23 -23
  433. package/src/formatter/BaseColumnFormatter.ts +18 -18
  434. package/src/formatter/BaseURLImageFormatter.tsx +33 -33
  435. package/src/formatter/BooleanFormatter.ts +22 -22
  436. package/src/formatter/BytesFormatter.tsx +15 -15
  437. package/src/formatter/DateFormatter.ts +22 -22
  438. package/src/formatter/DateTimeFormatter.ts +22 -22
  439. package/src/formatter/DurationFormatter.ts +13 -13
  440. package/src/formatter/EmailFormatter.tsx +21 -21
  441. package/src/formatter/EnumFormatter.ts +13 -13
  442. package/src/formatter/FloatFormatter.ts +23 -23
  443. package/src/formatter/ForeColorFormatter.tsx +24 -24
  444. package/src/formatter/IDFormatter.tsx +53 -53
  445. package/src/formatter/IPFormatter.ts +13 -13
  446. package/src/formatter/IntegerFormatter.ts +23 -23
  447. package/src/formatter/JsonFormatter.tsx +58 -58
  448. package/src/formatter/MoneyFormatter.ts +35 -35
  449. package/src/formatter/PercentFormatter.tsx +39 -39
  450. package/src/formatter/PhoneFormatter.tsx +21 -21
  451. package/src/formatter/SensitiveFormatter.tsx +33 -33
  452. package/src/formatter/StringFormatter.tsx +43 -43
  453. package/src/formatter/TimeFormatter.ts +21 -21
  454. package/src/formatter/URLFormatter.tsx +24 -24
  455. package/src/formatter/UnknowFormatter.ts +18 -18
  456. package/src/index.tsx +7 -7
  457. package/src/main.ts +262 -262
  458. package/src/pages/NSImplementing.module.css +35 -35
  459. package/src/pages/NSImplementing.tsx +32 -32
  460. package/src/pages/NSNotFoundPage.module.css +18 -18
  461. package/src/pages/NSNotFoundPage.tsx +14 -14
  462. package/src/pages/NSUpdating.module.css +35 -35
  463. package/src/pages/NSUpdating.tsx +32 -32
  464. package/src/props/IBackgroundProps.ts +5 -5
  465. package/src/props/IBaseComponentProps.ts +8 -8
  466. package/src/props/IHeaderIconProps.ts +10 -10
  467. package/src/props/IHeaderLeftProps.ts +6 -6
  468. package/src/props/IHeaderRightProps.ts +8 -8
  469. package/src/props/IImageProps.ts +4 -4
  470. package/src/props/ILinkProps.ts +4 -4
  471. package/src/props/IValidationNumberProps.ts +4 -4
  472. package/src/props/IValidationPrecisionProps.ts +3 -3
  473. package/src/props/IValidationProps.ts +9 -9
  474. package/src/props/IValidationRegexProps.ts +4 -4
  475. package/src/props/IValidationStringProps.ts +4 -4
  476. package/src/routing/NSNotifier.ts +114 -114
  477. package/src/routing/NSRouterMaker.tsx +20 -20
  478. package/src/routing/NSRouterMakerComponent.ts +5 -5
  479. package/src/routing/NSRouterMakerProps.ts +5 -5
  480. package/tsconfig.json +43 -43
  481. package/dist/App.css +0 -34
  482. package/dist/ColorOperation.d.ts +0 -27
  483. package/dist/ColorOperation.js +0 -145
  484. package/dist/ColorOperation.js.map +0 -1
  485. package/dist/index.css +0 -6
@@ -1,24 +1,24 @@
1
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
-
3
- export class IntegerFormatter extends BaseColumnFormatter
4
- {
5
- constructor(width: string = "125px")
6
- {
7
- super();
8
- this.width = width;
9
- }
10
- override format(value: any): any
11
- {
12
- try
13
- {
14
- if (value != null)
15
- return (value as number).toLocaleString(undefined, {
16
- minimumFractionDigits: 0,
17
- maximumFractionDigits: 0
18
- });
19
- } catch (e)
20
- {
21
- }
22
- return value;
23
- }
1
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
+
3
+ export class IntegerFormatter extends BaseColumnFormatter
4
+ {
5
+ constructor(width: string = "125px")
6
+ {
7
+ super();
8
+ this.width = width;
9
+ }
10
+ override format(value: any): any
11
+ {
12
+ try
13
+ {
14
+ if (value != null)
15
+ return (value as number).toLocaleString(undefined, {
16
+ minimumFractionDigits: 0,
17
+ maximumFractionDigits: 0
18
+ });
19
+ } catch (e)
20
+ {
21
+ }
22
+ return value;
23
+ }
24
24
  }
@@ -1,59 +1,59 @@
1
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
- import { TableColumnInfo, TableRowInfo } from "../main";
3
- import JsonView from "@uiw/react-json-view";
4
-
5
- export class JsonFormatter extends BaseColumnFormatter
6
- {
7
- constructor(width: string = "320px")
8
- {
9
- super();
10
- if (width)
11
- this.width = width;
12
- }
13
-
14
- private isJsonSerializable(v: unknown): boolean
15
- {
16
- try
17
- {
18
- JSON.stringify(v);
19
- return true;
20
- }
21
- catch
22
- {
23
- return false;
24
- }
25
- }
26
-
27
- override format(value: any, _: TableColumnInfo, __: TableRowInfo<any>, printable: boolean): any
28
- {
29
- let parsed = value;
30
-
31
- if (typeof value === "string")
32
- try
33
- {
34
- parsed = JSON.parse(value.trim());
35
- }
36
- catch
37
- {
38
- return value;
39
- }
40
-
41
- if (printable)
42
- return parsed;
43
-
44
- if (parsed === null || typeof parsed !== "object")
45
- return parsed;
46
-
47
- if (!this.isJsonSerializable(parsed))
48
- return value;
49
-
50
- try
51
- {
52
- return <JsonView value={parsed} />;
53
- }
54
- catch
55
- {
56
- return value;
57
- }
58
- }
1
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
+ import { TableColumnInfo, TableRowInfo } from "../main";
3
+ import JsonView from "@uiw/react-json-view";
4
+
5
+ export class JsonFormatter extends BaseColumnFormatter
6
+ {
7
+ constructor(width: string = "320px")
8
+ {
9
+ super();
10
+ if (width)
11
+ this.width = width;
12
+ }
13
+
14
+ private isJsonSerializable(v: unknown): boolean
15
+ {
16
+ try
17
+ {
18
+ JSON.stringify(v);
19
+ return true;
20
+ }
21
+ catch
22
+ {
23
+ return false;
24
+ }
25
+ }
26
+
27
+ override format(value: any, _: TableColumnInfo, __: TableRowInfo<any>, printable: boolean): any
28
+ {
29
+ let parsed = value;
30
+
31
+ if (typeof value === "string")
32
+ try
33
+ {
34
+ parsed = JSON.parse(value.trim());
35
+ }
36
+ catch
37
+ {
38
+ return value;
39
+ }
40
+
41
+ if (printable)
42
+ return parsed;
43
+
44
+ if (parsed === null || typeof parsed !== "object")
45
+ return parsed;
46
+
47
+ if (!this.isJsonSerializable(parsed))
48
+ return value;
49
+
50
+ try
51
+ {
52
+ return <JsonView value={parsed} />;
53
+ }
54
+ catch
55
+ {
56
+ return value;
57
+ }
58
+ }
59
59
  }
@@ -1,36 +1,36 @@
1
- import { PriceOperation } from "namirasoft-core";
2
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
3
-
4
- export class MoneyFormatter extends BaseColumnFormatter
5
- {
6
- private currency: string;
7
- private minimumFractionDigits: number;
8
- private maximumFractionDigits: number;
9
- constructor(width: string = "160px", currency: string = "$", minimumFractionDigits: number = 0, maximumFractionDigits: number = 2)
10
- {
11
- super();
12
- this.width = width;
13
- this.currency = currency;
14
- this.minimumFractionDigits = minimumFractionDigits;
15
- this.maximumFractionDigits = maximumFractionDigits;
16
- }
17
- override format(value: any): any
18
- {
19
- try
20
- {
21
- if (value != null)
22
- {
23
- return [
24
- this.currency?.trim() ?? "",
25
- PriceOperation.millicent_to_fiat(value as number, this.maximumFractionDigits).toLocaleString(undefined, {
26
- minimumFractionDigits: this.minimumFractionDigits,
27
- maximumFractionDigits: this.maximumFractionDigits
28
- })
29
- ].join(" ");
30
- }
31
- } catch (e)
32
- {
33
- }
34
- return value;
35
- }
1
+ import { PriceOperation } from "namirasoft-core";
2
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
3
+
4
+ export class MoneyFormatter extends BaseColumnFormatter
5
+ {
6
+ private currency: string;
7
+ private minimumFractionDigits: number;
8
+ private maximumFractionDigits: number;
9
+ constructor(width: string = "160px", currency: string = "$", minimumFractionDigits: number = 0, maximumFractionDigits: number = 2)
10
+ {
11
+ super();
12
+ this.width = width;
13
+ this.currency = currency;
14
+ this.minimumFractionDigits = minimumFractionDigits;
15
+ this.maximumFractionDigits = maximumFractionDigits;
16
+ }
17
+ override format(value: any): any
18
+ {
19
+ try
20
+ {
21
+ if (value != null)
22
+ {
23
+ return [
24
+ this.currency?.trim() ?? "",
25
+ PriceOperation.millicent_to_fiat(value as number, this.maximumFractionDigits).toLocaleString(undefined, {
26
+ minimumFractionDigits: this.minimumFractionDigits,
27
+ maximumFractionDigits: this.maximumFractionDigits
28
+ })
29
+ ].join(" ");
30
+ }
31
+ } catch (e)
32
+ {
33
+ }
34
+ return value;
35
+ }
36
36
  }
@@ -1,40 +1,40 @@
1
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
-
3
- export class PercentFormatter extends BaseColumnFormatter
4
- {
5
- private from_value?: number;
6
- private symbol: string = "%";
7
-
8
- constructor(from_value?: number, width: string = "120px")
9
- {
10
- super();
11
- this.from_value = from_value;
12
- this.width = width;
13
- }
14
-
15
- override format(value: any): any
16
- {
17
- try
18
- {
19
- if (value != null && !isNaN(Number(value)))
20
- {
21
- let percentage: number;
22
-
23
- if (this.from_value && this.from_value !== 0)
24
- percentage = (Number(value) / this.from_value) * 100;
25
- else
26
- percentage = Number(value);
27
-
28
- const formatted = percentage.toLocaleString(undefined, { minimumFractionDigits: 0, maximumFractionDigits: 2 });
29
-
30
- return formatted + this.symbol;
31
- }
32
- }
33
- catch (error)
34
- {
35
- console.error("Error in PercentFormatter:", error);
36
- }
37
-
38
- return value;
39
- }
1
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
+
3
+ export class PercentFormatter extends BaseColumnFormatter
4
+ {
5
+ private from_value?: number;
6
+ private symbol: string = "%";
7
+
8
+ constructor(from_value?: number, width: string = "120px")
9
+ {
10
+ super();
11
+ this.from_value = from_value;
12
+ this.width = width;
13
+ }
14
+
15
+ override format(value: any): any
16
+ {
17
+ try
18
+ {
19
+ if (value != null && !isNaN(Number(value)))
20
+ {
21
+ let percentage: number;
22
+
23
+ if (this.from_value && this.from_value !== 0)
24
+ percentage = (Number(value) / this.from_value) * 100;
25
+ else
26
+ percentage = Number(value);
27
+
28
+ const formatted = percentage.toLocaleString(undefined, { minimumFractionDigits: 0, maximumFractionDigits: 2 });
29
+
30
+ return formatted + this.symbol;
31
+ }
32
+ }
33
+ catch (error)
34
+ {
35
+ console.error("Error in PercentFormatter:", error);
36
+ }
37
+
38
+ return value;
39
+ }
40
40
  }
@@ -1,22 +1,22 @@
1
- import { TableColumnInfo, TableRowInfo } from "../main";
2
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
3
- import { BaseURLImageFormatter } from "./BaseURLImageFormatter";
4
-
5
- export class PhoneFormatter extends BaseColumnFormatter
6
- {
7
- private formatter: BaseURLImageFormatter = new BaseURLImageFormatter();
8
- constructor(width: string = "150px")
9
- {
10
- super();
11
- this.onclick_overrided = true;
12
- this.width = width;
13
- }
14
- override format(value: any, column: TableColumnInfo, row: TableRowInfo<any>, printable: boolean): any
15
- {
16
- return this.formatter.format({
17
- text: value,
18
- href: `tel:${value}`,
19
- image: { url: "https://static.namirasoft.com/image/concept/type/phone.png", alt: "phone" }
20
- }, column, row, printable);
21
- }
1
+ import { TableColumnInfo, TableRowInfo } from "../main";
2
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
3
+ import { BaseURLImageFormatter } from "./BaseURLImageFormatter";
4
+
5
+ export class PhoneFormatter extends BaseColumnFormatter
6
+ {
7
+ private formatter: BaseURLImageFormatter = new BaseURLImageFormatter();
8
+ constructor(width: string = "150px")
9
+ {
10
+ super();
11
+ this.onclick_overrided = true;
12
+ this.width = width;
13
+ }
14
+ override format(value: any, column: TableColumnInfo, row: TableRowInfo<any>, printable: boolean): any
15
+ {
16
+ return this.formatter.format({
17
+ text: value,
18
+ href: `tel:${value}`,
19
+ image: { url: "https://static.namirasoft.com/image/concept/type/phone.png", alt: "phone" }
20
+ }, column, row, printable);
21
+ }
22
22
  }
@@ -1,34 +1,34 @@
1
- import NSLabelSensitive from "../components/NSLabelSensitive";
2
- import { TableColumnInfo, TableRowInfo } from "../main";
3
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
4
-
5
- export class SensitiveFormatter<RowType = any> extends BaseColumnFormatter
6
- {
7
- decryptor: (value: string) => Promise<string>;
8
- isSensitive: (col: TableColumnInfo, row: TableRowInfo<RowType>) => boolean;
9
-
10
- constructor(decryptor: (value: string) => Promise<string>, isSensitive: (col: TableColumnInfo, row: TableRowInfo<RowType>) => boolean, width: string = "240px")
11
- {
12
- super();
13
- this.decryptor = decryptor;
14
- this.isSensitive = isSensitive;
15
- this.width = width;
16
- }
17
- override format(value: any, col: TableColumnInfo, row: TableRowInfo<RowType>, printable: boolean): any
18
- {
19
- try
20
- {
21
- if (!printable)
22
- return (
23
- <NSLabelSensitive
24
- value={value}
25
- sensitive={this.isSensitive(col, row)}
26
- decryptor={this.decryptor}
27
- />
28
- );
29
- }
30
- catch (error) { }
31
-
32
- return value;
33
- }
1
+ import NSLabelSensitive from "../components/NSLabelSensitive";
2
+ import { TableColumnInfo, TableRowInfo } from "../main";
3
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
4
+
5
+ export class SensitiveFormatter<RowType = any> extends BaseColumnFormatter
6
+ {
7
+ decryptor: (value: string) => Promise<string>;
8
+ isSensitive: (col: TableColumnInfo, row: TableRowInfo<RowType>) => boolean;
9
+
10
+ constructor(decryptor: (value: string) => Promise<string>, isSensitive: (col: TableColumnInfo, row: TableRowInfo<RowType>) => boolean, width: string = "240px")
11
+ {
12
+ super();
13
+ this.decryptor = decryptor;
14
+ this.isSensitive = isSensitive;
15
+ this.width = width;
16
+ }
17
+ override format(value: any, col: TableColumnInfo, row: TableRowInfo<RowType>, printable: boolean): any
18
+ {
19
+ try
20
+ {
21
+ if (!printable)
22
+ return (
23
+ <NSLabelSensitive
24
+ value={value}
25
+ sensitive={this.isSensitive(col, row)}
26
+ decryptor={this.decryptor}
27
+ />
28
+ );
29
+ }
30
+ catch (error) { }
31
+
32
+ return value;
33
+ }
34
34
  }
@@ -1,44 +1,44 @@
1
- import { NamingConvention } from "namirasoft-core";
2
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
3
-
4
- export enum StringFormatterSizeType
5
- {
6
- Word = "75px",
7
- TwoWords = "150px",
8
- FullName = "225px",
9
- Sentence = "350px",
10
- Description = "500px",
11
- }
12
-
13
- export class StringFormatter extends BaseColumnFormatter
14
- {
15
- static toHTML(value: string | null | undefined)
16
- {
17
- value = value?.trim() ?? "";
18
- let toks = value.split(/(\n|\\n|<br>|<br\s*\/>)/gm);
19
- toks = toks.filter(x => x.replace(/(\n|\\n|<br>|<br\s*\/>)/gm, "").trim().length > 0);
20
- if (toks.length === 1)
21
- return value;
22
- let ans = [];
23
- for (let i = 0; i < toks.length; i++)
24
- {
25
- if (i > 0)
26
- ans.push(<br key={i} />);
27
- ans.push(toks[i].trim());
28
- }
29
- return ans;
30
- }
31
- private naming: NamingConvention | null;
32
- constructor(width: string = StringFormatterSizeType.Sentence, naming: NamingConvention | null = null)
33
- {
34
- super();
35
- this.width = width;
36
- this.naming = naming;
37
- }
38
- override format(value: any): any
39
- {
40
- if (this.naming)
41
- value = NamingConvention.auto.convert(value, this.naming);
42
- return value;
43
- }
1
+ import { NamingConvention } from "namirasoft-core";
2
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
3
+
4
+ export enum StringFormatterSizeType
5
+ {
6
+ Word = "75px",
7
+ TwoWords = "150px",
8
+ FullName = "225px",
9
+ Sentence = "350px",
10
+ Description = "500px",
11
+ }
12
+
13
+ export class StringFormatter extends BaseColumnFormatter
14
+ {
15
+ static toHTML(value: string | null | undefined)
16
+ {
17
+ value = value?.trim() ?? "";
18
+ let toks = value.split(/(\n|\\n|<br>|<br\s*\/>)/gm);
19
+ toks = toks.filter(x => x.replace(/(\n|\\n|<br>|<br\s*\/>)/gm, "").trim().length > 0);
20
+ if (toks.length === 1)
21
+ return value;
22
+ let ans = [];
23
+ for (let i = 0; i < toks.length; i++)
24
+ {
25
+ if (i > 0)
26
+ ans.push(<br key={i} />);
27
+ ans.push(toks[i].trim());
28
+ }
29
+ return ans;
30
+ }
31
+ private naming: NamingConvention | null;
32
+ constructor(width: string = StringFormatterSizeType.Sentence, naming: NamingConvention | null = null)
33
+ {
34
+ super();
35
+ this.width = width;
36
+ this.naming = naming;
37
+ }
38
+ override format(value: any): any
39
+ {
40
+ if (this.naming)
41
+ value = NamingConvention.auto.convert(value, this.naming);
42
+ return value;
43
+ }
44
44
  }
@@ -1,22 +1,22 @@
1
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
-
3
- export class TimeFormatter extends BaseColumnFormatter
4
- {
5
- constructor(width: string = "95px")
6
- {
7
- super();
8
- this.width = width;
9
- }
10
- override format(value: any): any
11
- {
12
- if (value)
13
- try
14
- {
15
- let date = new Date(value);
16
- return date.toLocaleTimeString();
17
- } catch (e)
18
- {
19
- }
20
- return value;
21
- }
1
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
+
3
+ export class TimeFormatter extends BaseColumnFormatter
4
+ {
5
+ constructor(width: string = "95px")
6
+ {
7
+ super();
8
+ this.width = width;
9
+ }
10
+ override format(value: any): any
11
+ {
12
+ if (value)
13
+ try
14
+ {
15
+ let date = new Date(value);
16
+ return date.toLocaleTimeString();
17
+ } catch (e)
18
+ {
19
+ }
20
+ return value;
21
+ }
22
22
  }
@@ -1,25 +1,25 @@
1
- import { HTMLAttributeAnchorTarget } from "react";
2
- import { TableColumnInfo, TableRowInfo } from "../main";
3
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
4
- import { BaseURLImageFormatter } from "./BaseURLImageFormatter";
5
-
6
- export class URLFormatter extends BaseColumnFormatter
7
- {
8
- private formatter: BaseURLImageFormatter;
9
- constructor(target: HTMLAttributeAnchorTarget = "_blank", width: string = "250px")
10
- {
11
- super();
12
- this.onclick_overrided = true;
13
- this.width = width;
14
- this.formatter = new BaseURLImageFormatter(target, width);
15
- }
16
- override format(value: any, column: TableColumnInfo, row: TableRowInfo<any>, printable: boolean): any
17
- {
18
- const href = value && !/^https?:\/\//i.test(value) ? `https://${value}` : value;
19
- return this.formatter.format({
20
- text: value,
21
- href: href,
22
- image: { url: "https://static.namirasoft.com/image/concept/type/url.png", alt: "url" }
23
- }, column, row, printable);
24
- }
1
+ import { HTMLAttributeAnchorTarget } from "react";
2
+ import { TableColumnInfo, TableRowInfo } from "../main";
3
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
4
+ import { BaseURLImageFormatter } from "./BaseURLImageFormatter";
5
+
6
+ export class URLFormatter extends BaseColumnFormatter
7
+ {
8
+ private formatter: BaseURLImageFormatter;
9
+ constructor(target: HTMLAttributeAnchorTarget = "_blank", width: string = "250px")
10
+ {
11
+ super();
12
+ this.onclick_overrided = true;
13
+ this.width = width;
14
+ this.formatter = new BaseURLImageFormatter(target, width);
15
+ }
16
+ override format(value: any, column: TableColumnInfo, row: TableRowInfo<any>, printable: boolean): any
17
+ {
18
+ const href = value && !/^https?:\/\//i.test(value) ? `https://${value}` : value;
19
+ return this.formatter.format({
20
+ text: value,
21
+ href: href,
22
+ image: { url: "https://static.namirasoft.com/image/concept/type/url.png", alt: "url" }
23
+ }, column, row, printable);
24
+ }
25
25
  }
@@ -1,19 +1,19 @@
1
- import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
-
3
- export class UnknowFormatter extends BaseColumnFormatter
4
- {
5
- private formatter: (value: any) => any;
6
- constructor(formatter: (value: any) => any, width?: string)
7
- {
8
- super();
9
- this.formatter = formatter;
10
- if (width)
11
- this.width = width;
12
- }
13
- override format(value: any): any
14
- {
15
- if (this.formatter)
16
- value = this.formatter(value);
17
- return value;
18
- }
1
+ import { BaseColumnFormatter } from "./BaseColumnFormatter";
2
+
3
+ export class UnknowFormatter extends BaseColumnFormatter
4
+ {
5
+ private formatter: (value: any) => any;
6
+ constructor(formatter: (value: any) => any, width?: string)
7
+ {
8
+ super();
9
+ this.formatter = formatter;
10
+ if (width)
11
+ this.width = width;
12
+ }
13
+ override format(value: any): any
14
+ {
15
+ if (this.formatter)
16
+ value = this.formatter(value);
17
+ return value;
18
+ }
19
19
  }
package/src/index.tsx CHANGED
@@ -1,8 +1,8 @@
1
- import ReactDOM from 'react-dom/client';
2
- import './index.css';
3
- import { App } from './App';
4
-
5
- const root = ReactDOM.createRoot(
6
- document.getElementById('root') as HTMLElement
7
- );
1
+ import ReactDOM from 'react-dom/client';
2
+ import './index.css';
3
+ import { App } from './App';
4
+
5
+ const root = ReactDOM.createRoot(
6
+ document.getElementById('root') as HTMLElement
7
+ );
8
8
  root.render(<App />);