namirasoft-site-react 1.4.568 → 1.4.570

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 (483) 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.css +34 -0
  7. package/dist/App.d.ts +1 -1
  8. package/dist/ColorOperation.d.ts +27 -0
  9. package/dist/ColorOperation.js +145 -0
  10. package/dist/ColorOperation.js.map +1 -0
  11. package/dist/NSBoxBuilder.d.ts +25 -25
  12. package/dist/components/NSBanner.d.ts +1 -1
  13. package/dist/components/NSBanner.module.css +47 -47
  14. package/dist/components/NSBarAction.d.ts +1 -1
  15. package/dist/components/NSBarAction.module.css +91 -91
  16. package/dist/components/NSBarAlert.d.ts +1 -1
  17. package/dist/components/NSBarAlert.module.css +79 -79
  18. package/dist/components/NSBarNotification.d.ts +1 -1
  19. package/dist/components/NSBarNotification.module.css +34 -34
  20. package/dist/components/NSBarTitle.d.ts +1 -1
  21. package/dist/components/NSBarTitle.module.css +9 -9
  22. package/dist/components/NSBox.module.css +87 -87
  23. package/dist/components/NSBoxBaseCombo.d.ts +1 -1
  24. package/dist/components/NSBoxBaseCombo.module.css +6 -6
  25. package/dist/components/NSBoxBaseLayout.d.ts +1 -1
  26. package/dist/components/NSBoxBaseLayoutRecursive.d.ts +1 -1
  27. package/dist/components/NSBoxBoolean.d.ts +1 -1
  28. package/dist/components/NSBoxBoolean.module.css +73 -73
  29. package/dist/components/NSBoxBooleans.d.ts +1 -1
  30. package/dist/components/NSBoxColor.d.ts +1 -1
  31. package/dist/components/NSBoxCombo.d.ts +1 -1
  32. package/dist/components/NSBoxDate.d.ts +1 -1
  33. package/dist/components/NSBoxDate.module.css +4 -4
  34. package/dist/components/NSBoxDateRange.d.ts +1 -1
  35. package/dist/components/NSBoxDateRangeBase.d.ts +1 -1
  36. package/dist/components/NSBoxDateRangeBase.module.css +73 -73
  37. package/dist/components/NSBoxDateTime.d.ts +1 -1
  38. package/dist/components/NSBoxDateTime.module.css +4 -4
  39. package/dist/components/NSBoxDateTimeRange.d.ts +1 -1
  40. package/dist/components/NSBoxDouble.d.ts +1 -1
  41. package/dist/components/NSBoxDuration.d.ts +1 -1
  42. package/dist/components/NSBoxDuration.module.css +4 -4
  43. package/dist/components/NSBoxDynamic.d.ts +1 -1
  44. package/dist/components/NSBoxDynamics.d.ts +1 -1
  45. package/dist/components/NSBoxEmail.d.ts +1 -1
  46. package/dist/components/NSBoxEntity.d.ts +1 -1
  47. package/dist/components/NSBoxEnum.d.ts +1 -1
  48. package/dist/components/NSBoxFile.d.ts +1 -1
  49. package/dist/components/NSBoxFile.module.css +10 -10
  50. package/dist/components/NSBoxFilePath.d.ts +1 -1
  51. package/dist/components/NSBoxFont.d.ts +1 -1
  52. package/dist/components/NSBoxIPV4.d.ts +1 -1
  53. package/dist/components/NSBoxIPV4Range.d.ts +1 -1
  54. package/dist/components/NSBoxIPV6.d.ts +1 -1
  55. package/dist/components/NSBoxIPV6Range.d.ts +1 -1
  56. package/dist/components/NSBoxInteger.d.ts +1 -1
  57. package/dist/components/NSBoxInteger.module.css +16 -16
  58. package/dist/components/NSBoxMoney.d.ts +1 -1
  59. package/dist/components/NSBoxOptions.d.ts +1 -1
  60. package/dist/components/NSBoxOptions.module.css +53 -53
  61. package/dist/components/NSBoxPhone.d.ts +1 -1
  62. package/dist/components/NSBoxPhone.module.css +35 -35
  63. package/dist/components/NSBoxRadio.d.ts +1 -1
  64. package/dist/components/NSBoxRadio.module.css +33 -33
  65. package/dist/components/NSBoxSchemaBase.d.ts +1 -1
  66. package/dist/components/NSBoxSchemaBase.module.css +17 -17
  67. package/dist/components/NSBoxSchemaVariable.d.ts +1 -1
  68. package/dist/components/NSBoxSchemaVariable.module.css +16 -16
  69. package/dist/components/NSBoxSearch.d.ts +1 -1
  70. package/dist/components/NSBoxSensitive.d.ts +1 -1
  71. package/dist/components/NSBoxString.d.ts +1 -1
  72. package/dist/components/NSBoxTextArea.d.ts +1 -1
  73. package/dist/components/NSBoxTextArea.module.css +12 -12
  74. package/dist/components/NSBoxTime.d.ts +1 -1
  75. package/dist/components/NSBoxTime.module.css +4 -4
  76. package/dist/components/NSBoxTimeRange.d.ts +1 -1
  77. package/dist/components/NSBoxTimeZone.d.ts +1 -1
  78. package/dist/components/NSBoxURL.d.ts +1 -1
  79. package/dist/components/NSBoxVersion.d.ts +1 -1
  80. package/dist/components/NSButton.module.css +57 -57
  81. package/dist/components/NSButtonBlue.d.ts +1 -1
  82. package/dist/components/NSButtonBlue.module.css +4 -4
  83. package/dist/components/NSButtonGreen.d.ts +1 -1
  84. package/dist/components/NSButtonGreen.module.css +4 -4
  85. package/dist/components/NSButtonRed.d.ts +1 -1
  86. package/dist/components/NSButtonRed.module.css +4 -4
  87. package/dist/components/NSCard.d.ts +1 -1
  88. package/dist/components/NSCard.module.css +113 -113
  89. package/dist/components/NSCardScreenshot.d.ts +1 -1
  90. package/dist/components/NSCardScreenshot.module.css +41 -41
  91. package/dist/components/NSChartBar.d.ts +1 -1
  92. package/dist/components/NSChartDoughnut.d.ts +1 -1
  93. package/dist/components/NSChartLine.d.ts +1 -1
  94. package/dist/components/NSChartPie.d.ts +1 -1
  95. package/dist/components/NSChartRange.d.ts +1 -1
  96. package/dist/components/NSColumn.d.ts +1 -1
  97. package/dist/components/NSColumn.module.css +16 -16
  98. package/dist/components/NSCopy.d.ts +1 -1
  99. package/dist/components/NSCopyBox.d.ts +1 -1
  100. package/dist/components/NSCopyBox.module.css +39 -39
  101. package/dist/components/NSDialog.d.ts +1 -1
  102. package/dist/components/NSDialog.module.css +105 -105
  103. package/dist/components/NSDialogBox.d.ts +1 -1
  104. package/dist/components/NSDialogBoxDate.d.ts +1 -1
  105. package/dist/components/NSDialogBoxDateTime.d.ts +1 -1
  106. package/dist/components/NSDialogBoxPhone.d.ts +1 -1
  107. package/dist/components/NSDialogBoxString.d.ts +1 -1
  108. package/dist/components/NSDialogDelete.d.ts +1 -1
  109. package/dist/components/NSDialogInfo.d.ts +1 -1
  110. package/dist/components/NSDialogPageSelection.d.ts +2 -2
  111. package/dist/components/NSDialogPageSelection.module.css +103 -103
  112. package/dist/components/NSDownTimer.d.ts +1 -1
  113. package/dist/components/NSDownTimer.module.css +55 -55
  114. package/dist/components/NSDownload.d.ts +1 -1
  115. package/dist/components/NSDownload.module.css +46 -46
  116. package/dist/components/NSElectronicCard.d.ts +1 -1
  117. package/dist/components/NSElectronicCard.module.css +60 -60
  118. package/dist/components/NSEntityCardBackground.d.ts +1 -1
  119. package/dist/components/NSEntityCardBackground.module.css +27 -27
  120. package/dist/components/NSFilterBox.d.ts +2 -2
  121. package/dist/components/NSFilterBox.module.css +27 -27
  122. package/dist/components/NSFilterBoxItems.d.ts +1 -1
  123. package/dist/components/NSFilterBoxItems.module.css +15 -15
  124. package/dist/components/NSFilterItem.d.ts +1 -1
  125. package/dist/components/NSFilterItem.module.css +24 -24
  126. package/dist/components/NSFooter.d.ts +1 -1
  127. package/dist/components/NSFooter.module.css +140 -140
  128. package/dist/components/NSGauge.d.ts +1 -1
  129. package/dist/components/NSGauge.module.css +67 -67
  130. package/dist/components/NSGaugeDate.d.ts +1 -1
  131. package/dist/components/NSGaugeDate.module.css +57 -57
  132. package/dist/components/NSGaugeNumber.d.ts +1 -1
  133. package/dist/components/NSGaugeNumber.module.css +66 -66
  134. package/dist/components/NSHeader.d.ts +1 -1
  135. package/dist/components/NSHeader.module.css +316 -316
  136. package/dist/components/NSHeaderScreenshot.d.ts +1 -1
  137. package/dist/components/NSHeaderScreenshot.module.css +35 -35
  138. package/dist/components/NSID.d.ts +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 +2 -1
  173. package/dist/components/NSPanel.js +3 -3
  174. package/dist/components/NSPanel.js.map +1 -1
  175. package/dist/components/NSPanel.module.css +28 -19
  176. package/dist/components/NSPanelAccordion.d.ts +1 -1
  177. package/dist/components/NSPanelAccordion.module.css +4 -4
  178. package/dist/components/NSProductSearch.d.ts +1 -1
  179. package/dist/components/NSProductSearch.module.css +73 -73
  180. package/dist/components/NSProgressBar.d.ts +1 -1
  181. package/dist/components/NSProgressBar.module.css +38 -38
  182. package/dist/components/NSRange.d.ts +1 -1
  183. package/dist/components/NSRange.module.css +66 -66
  184. package/dist/components/NSRepeater.d.ts +1 -1
  185. package/dist/components/NSRepeaterNSBoxSchemaVariable.d.ts +1 -1
  186. package/dist/components/NSRepeaterNSTag.d.ts +1 -1
  187. package/dist/components/NSRow.d.ts +1 -1
  188. package/dist/components/NSRow.module.css +17 -17
  189. package/dist/components/NSSection.d.ts +1 -1
  190. package/dist/components/NSSection.module.css +4 -4
  191. package/dist/components/NSSectionCards.d.ts +1 -1
  192. package/dist/components/NSSectionCards.module.css +38 -38
  193. package/dist/components/NSSectionTiles.d.ts +1 -1
  194. package/dist/components/NSSectionTiles.module.css +10 -10
  195. package/dist/components/NSSectionTitle.d.ts +1 -1
  196. package/dist/components/NSSpace.d.ts +1 -1
  197. package/dist/components/NSSplitter.d.ts +1 -1
  198. package/dist/components/NSSplitter.module.css +59 -59
  199. package/dist/components/NSTabPage.d.ts +1 -1
  200. package/dist/components/NSTabPage.module.css +59 -59
  201. package/dist/components/NSTable.d.ts +1 -2
  202. package/dist/components/NSTable.js +1 -6
  203. package/dist/components/NSTable.js.map +1 -1
  204. package/dist/components/NSTable.module.css +371 -371
  205. package/dist/components/NSTableChart.d.ts +1 -1
  206. package/dist/components/NSTableChart.module.css +119 -119
  207. package/dist/components/NSTag.d.ts +1 -1
  208. package/dist/components/NSTile.d.ts +1 -1
  209. package/dist/components/NSTile.module.css +76 -76
  210. package/dist/components/NSTimelineMonthly.d.ts +1 -1
  211. package/dist/components/NSTimelineMonthly.module.css +71 -71
  212. package/dist/components/NSTitle.d.ts +1 -1
  213. package/dist/components/NSTitle.module.css +15 -15
  214. package/dist/formatter/StringFormatter.d.ts +1 -1
  215. package/dist/index.css +6 -0
  216. package/dist/pages/NSImplementing.d.ts +1 -1
  217. package/dist/pages/NSImplementing.module.css +35 -35
  218. package/dist/pages/NSNotFoundPage.d.ts +1 -1
  219. package/dist/pages/NSNotFoundPage.module.css +18 -18
  220. package/dist/pages/NSUpdating.d.ts +1 -1
  221. package/dist/pages/NSUpdating.module.css +35 -35
  222. package/package.json +86 -86
  223. package/public/index.html +38 -38
  224. package/src/App.css +33 -33
  225. package/src/App.tsx +167 -167
  226. package/src/Color.tsx +10 -10
  227. package/src/CopyToClipboard.ts +6 -6
  228. package/src/EncryptionOperation.ts +98 -98
  229. package/src/KeyOperation.ts +109 -109
  230. package/src/LinkOperation.ts +101 -101
  231. package/src/NSBoxBuilder.tsx +922 -922
  232. package/src/ProductCacheService.ts +15 -15
  233. package/src/Validator.ts +199 -199
  234. package/src/components/INSBox.tsx +7 -7
  235. package/src/components/NSBanner.module.css +47 -47
  236. package/src/components/NSBanner.tsx +80 -80
  237. package/src/components/NSBarAction.module.css +91 -91
  238. package/src/components/NSBarAction.tsx +95 -95
  239. package/src/components/NSBarAlert.module.css +79 -79
  240. package/src/components/NSBarAlert.tsx +35 -35
  241. package/src/components/NSBarNotification.module.css +34 -34
  242. package/src/components/NSBarNotification.tsx +89 -89
  243. package/src/components/NSBarTitle.module.css +9 -9
  244. package/src/components/NSBarTitle.tsx +23 -23
  245. package/src/components/NSBox.module.css +87 -87
  246. package/src/components/NSBox.tsx +19 -19
  247. package/src/components/NSBoxBaseCombo.module.css +6 -6
  248. package/src/components/NSBoxBaseCombo.tsx +488 -488
  249. package/src/components/NSBoxBaseLayout.tsx +163 -163
  250. package/src/components/NSBoxBaseLayoutRecursive.tsx +59 -59
  251. package/src/components/NSBoxBoolean.module.css +73 -73
  252. package/src/components/NSBoxBoolean.tsx +152 -152
  253. package/src/components/NSBoxBooleans.tsx +181 -181
  254. package/src/components/NSBoxColor.tsx +107 -107
  255. package/src/components/NSBoxCombo.tsx +95 -95
  256. package/src/components/NSBoxDate.module.css +4 -4
  257. package/src/components/NSBoxDate.tsx +119 -119
  258. package/src/components/NSBoxDateRange.tsx +88 -88
  259. package/src/components/NSBoxDateRangeBase.module.css +73 -73
  260. package/src/components/NSBoxDateRangeBase.tsx +198 -198
  261. package/src/components/NSBoxDateTime.module.css +4 -4
  262. package/src/components/NSBoxDateTime.tsx +116 -116
  263. package/src/components/NSBoxDateTimeRange.tsx +65 -65
  264. package/src/components/NSBoxDouble.tsx +110 -110
  265. package/src/components/NSBoxDuration.module.css +4 -4
  266. package/src/components/NSBoxDuration.tsx +107 -107
  267. package/src/components/NSBoxDynamic.tsx +77 -77
  268. package/src/components/NSBoxDynamics.tsx +68 -68
  269. package/src/components/NSBoxEmail.tsx +117 -117
  270. package/src/components/NSBoxEntity.tsx +181 -181
  271. package/src/components/NSBoxEnum.tsx +113 -113
  272. package/src/components/NSBoxFile.module.css +10 -10
  273. package/src/components/NSBoxFile.tsx +106 -106
  274. package/src/components/NSBoxFilePath.tsx +106 -106
  275. package/src/components/NSBoxFont.tsx +107 -107
  276. package/src/components/NSBoxIPV4.tsx +107 -107
  277. package/src/components/NSBoxIPV4Range.tsx +107 -107
  278. package/src/components/NSBoxIPV6.tsx +104 -104
  279. package/src/components/NSBoxIPV6Range.tsx +107 -107
  280. package/src/components/NSBoxInteger.module.css +16 -16
  281. package/src/components/NSBoxInteger.tsx +126 -126
  282. package/src/components/NSBoxMoney.tsx +115 -115
  283. package/src/components/NSBoxOptions.module.css +53 -53
  284. package/src/components/NSBoxOptions.tsx +182 -182
  285. package/src/components/NSBoxPhone.module.css +35 -35
  286. package/src/components/NSBoxPhone.tsx +120 -120
  287. package/src/components/NSBoxRadio.module.css +33 -33
  288. package/src/components/NSBoxRadio.tsx +104 -104
  289. package/src/components/NSBoxSchemaBase.module.css +17 -17
  290. package/src/components/NSBoxSchemaBase.tsx +562 -562
  291. package/src/components/NSBoxSchemaVariable.module.css +16 -16
  292. package/src/components/NSBoxSchemaVariable.tsx +263 -263
  293. package/src/components/NSBoxSearch.tsx +112 -112
  294. package/src/components/NSBoxSensitive.tsx +133 -133
  295. package/src/components/NSBoxString.tsx +106 -106
  296. package/src/components/NSBoxTextArea.module.css +12 -12
  297. package/src/components/NSBoxTextArea.tsx +136 -136
  298. package/src/components/NSBoxTime.module.css +4 -4
  299. package/src/components/NSBoxTime.tsx +106 -106
  300. package/src/components/NSBoxTimeRange.tsx +220 -220
  301. package/src/components/NSBoxTimeZone.tsx +122 -122
  302. package/src/components/NSBoxURL.tsx +117 -117
  303. package/src/components/NSBoxVersion.tsx +107 -107
  304. package/src/components/NSButton.module.css +57 -57
  305. package/src/components/NSButton.tsx +74 -74
  306. package/src/components/NSButtonBlue.module.css +4 -4
  307. package/src/components/NSButtonBlue.tsx +29 -29
  308. package/src/components/NSButtonGreen.module.css +4 -4
  309. package/src/components/NSButtonGreen.tsx +29 -29
  310. package/src/components/NSButtonRed.module.css +4 -4
  311. package/src/components/NSButtonRed.tsx +29 -29
  312. package/src/components/NSCard.module.css +113 -113
  313. package/src/components/NSCard.tsx +67 -67
  314. package/src/components/NSCardScreenshot.module.css +41 -41
  315. package/src/components/NSCardScreenshot.tsx +31 -31
  316. package/src/components/NSChartBar.tsx +134 -134
  317. package/src/components/NSChartDoughnut.tsx +114 -114
  318. package/src/components/NSChartLine.tsx +110 -110
  319. package/src/components/NSChartPie.tsx +105 -105
  320. package/src/components/NSChartRange.tsx +14 -14
  321. package/src/components/NSColumn.module.css +16 -16
  322. package/src/components/NSColumn.tsx +24 -24
  323. package/src/components/NSCopy.tsx +58 -58
  324. package/src/components/NSCopyBox.module.css +39 -39
  325. package/src/components/NSCopyBox.tsx +53 -53
  326. package/src/components/NSDialog.module.css +105 -105
  327. package/src/components/NSDialog.tsx +72 -72
  328. package/src/components/NSDialogBox.tsx +38 -38
  329. package/src/components/NSDialogBoxDate.tsx +28 -28
  330. package/src/components/NSDialogBoxDateTime.tsx +28 -28
  331. package/src/components/NSDialogBoxPhone.tsx +28 -28
  332. package/src/components/NSDialogBoxString.tsx +28 -28
  333. package/src/components/NSDialogDelete.tsx +36 -36
  334. package/src/components/NSDialogInfo.tsx +49 -49
  335. package/src/components/NSDialogPageSelection.module.css +103 -103
  336. package/src/components/NSDialogPageSelection.tsx +219 -219
  337. package/src/components/NSDownTimer.module.css +55 -55
  338. package/src/components/NSDownTimer.tsx +91 -91
  339. package/src/components/NSDownload.module.css +46 -46
  340. package/src/components/NSDownload.tsx +69 -69
  341. package/src/components/NSElectronicCard.module.css +60 -60
  342. package/src/components/NSElectronicCard.tsx +46 -46
  343. package/src/components/NSEntityCardBackground.module.css +27 -27
  344. package/src/components/NSEntityCardBackground.tsx +36 -36
  345. package/src/components/NSFilterBox.module.css +27 -27
  346. package/src/components/NSFilterBox.tsx +477 -477
  347. package/src/components/NSFilterBoxItems.module.css +15 -15
  348. package/src/components/NSFilterBoxItems.tsx +52 -52
  349. package/src/components/NSFilterItem.module.css +24 -24
  350. package/src/components/NSFilterItem.tsx +27 -27
  351. package/src/components/NSFooter.module.css +140 -140
  352. package/src/components/NSFooter.tsx +321 -321
  353. package/src/components/NSGauge.module.css +67 -67
  354. package/src/components/NSGauge.tsx +52 -52
  355. package/src/components/NSGaugeDate.module.css +57 -57
  356. package/src/components/NSGaugeDate.tsx +125 -125
  357. package/src/components/NSGaugeNumber.module.css +66 -66
  358. package/src/components/NSGaugeNumber.tsx +90 -90
  359. package/src/components/NSHeader.module.css +316 -316
  360. package/src/components/NSHeader.tsx +334 -334
  361. package/src/components/NSHeaderScreenshot.module.css +35 -35
  362. package/src/components/NSHeaderScreenshot.tsx +39 -39
  363. package/src/components/NSID.tsx +188 -188
  364. package/src/components/NSInfo.tsx +50 -50
  365. package/src/components/NSLabel.module.css +25 -25
  366. package/src/components/NSLabel.tsx +47 -47
  367. package/src/components/NSLabelErrorNotifier.module.css +2 -2
  368. package/src/components/NSLabelErrorNotifier.tsx +35 -35
  369. package/src/components/NSLabelSensitive.module.css +9 -9
  370. package/src/components/NSLabelSensitive.tsx +85 -85
  371. package/src/components/NSLayout.module.css +22 -22
  372. package/src/components/NSLayout.tsx +140 -140
  373. package/src/components/NSLine.module.css +15 -15
  374. package/src/components/NSLine.tsx +13 -13
  375. package/src/components/NSLineText.module.css +38 -38
  376. package/src/components/NSLineText.tsx +17 -17
  377. package/src/components/NSLink.module.css +36 -36
  378. package/src/components/NSLink.tsx +26 -26
  379. package/src/components/NSLinkBlue.tsx +22 -22
  380. package/src/components/NSLinkGreen.tsx +13 -13
  381. package/src/components/NSLinkRed.tsx +13 -13
  382. package/src/components/NSListGrouped.module.css +69 -69
  383. package/src/components/NSListGrouped.tsx +106 -106
  384. package/src/components/NSListProduct.tsx +78 -78
  385. package/src/components/NSLoading.module.css +10 -10
  386. package/src/components/NSLoading.tsx +43 -43
  387. package/src/components/NSMegaMenu.module.css +133 -133
  388. package/src/components/NSMegaMenu.tsx +188 -188
  389. package/src/components/NSMenuAction.module.css +88 -88
  390. package/src/components/NSMenuAction.tsx +106 -106
  391. package/src/components/NSMenuButton.module.css +44 -44
  392. package/src/components/NSMenuButton.tsx +197 -197
  393. package/src/components/NSNoData.module.css +11 -11
  394. package/src/components/NSNoData.tsx +24 -24
  395. package/src/components/NSPagination.module.css +87 -87
  396. package/src/components/NSPagination.tsx +183 -183
  397. package/src/components/NSPanel.module.css +28 -19
  398. package/src/components/NSPanel.tsx +26 -24
  399. package/src/components/NSPanelAccordion.module.css +4 -4
  400. package/src/components/NSPanelAccordion.tsx +51 -51
  401. package/src/components/NSProductSearch.module.css +73 -73
  402. package/src/components/NSProductSearch.tsx +193 -193
  403. package/src/components/NSProgressBar.module.css +38 -38
  404. package/src/components/NSProgressBar.tsx +29 -29
  405. package/src/components/NSRange.module.css +66 -66
  406. package/src/components/NSRange.tsx +83 -83
  407. package/src/components/NSRepeater.tsx +328 -328
  408. package/src/components/NSRepeaterNSBoxSchemaVariable.tsx +94 -94
  409. package/src/components/NSRepeaterNSTag.tsx +86 -86
  410. package/src/components/NSRow.module.css +17 -17
  411. package/src/components/NSRow.tsx +24 -24
  412. package/src/components/NSSection.module.css +4 -4
  413. package/src/components/NSSection.tsx +26 -26
  414. package/src/components/NSSectionCards.module.css +38 -38
  415. package/src/components/NSSectionCards.tsx +51 -51
  416. package/src/components/NSSectionTiles.module.css +10 -10
  417. package/src/components/NSSectionTiles.tsx +25 -25
  418. package/src/components/NSSectionTitle.tsx +19 -19
  419. package/src/components/NSSpace.tsx +28 -28
  420. package/src/components/NSSplitter.module.css +59 -59
  421. package/src/components/NSSplitter.tsx +211 -211
  422. package/src/components/NSTabPage.module.css +59 -59
  423. package/src/components/NSTabPage.tsx +122 -122
  424. package/src/components/NSTable.module.css +371 -371
  425. package/src/components/NSTable.tsx +1109 -1115
  426. package/src/components/NSTableChart.module.css +119 -119
  427. package/src/components/NSTableChart.tsx +732 -732
  428. package/src/components/NSTag.tsx +74 -74
  429. package/src/components/NSTile.module.css +76 -76
  430. package/src/components/NSTile.tsx +27 -27
  431. package/src/components/NSTimelineMonthly.module.css +71 -71
  432. package/src/components/NSTimelineMonthly.tsx +44 -44
  433. package/src/components/NSTitle.module.css +15 -15
  434. package/src/components/NSTitle.tsx +19 -19
  435. package/src/formatter/BackColorFormatter.tsx +23 -23
  436. package/src/formatter/BaseColumnFormatter.ts +18 -18
  437. package/src/formatter/BaseURLImageFormatter.tsx +33 -33
  438. package/src/formatter/BooleanFormatter.ts +22 -22
  439. package/src/formatter/BytesFormatter.tsx +15 -15
  440. package/src/formatter/DateFormatter.ts +22 -22
  441. package/src/formatter/DateTimeFormatter.ts +22 -22
  442. package/src/formatter/DurationFormatter.ts +13 -13
  443. package/src/formatter/EmailFormatter.tsx +21 -21
  444. package/src/formatter/EnumFormatter.ts +13 -13
  445. package/src/formatter/FloatFormatter.ts +23 -23
  446. package/src/formatter/ForeColorFormatter.tsx +24 -24
  447. package/src/formatter/IDFormatter.tsx +53 -53
  448. package/src/formatter/IPFormatter.ts +13 -13
  449. package/src/formatter/IntegerFormatter.ts +23 -23
  450. package/src/formatter/JsonFormatter.tsx +58 -58
  451. package/src/formatter/MoneyFormatter.ts +35 -35
  452. package/src/formatter/PercentFormatter.tsx +39 -39
  453. package/src/formatter/PhoneFormatter.tsx +21 -21
  454. package/src/formatter/SensitiveFormatter.tsx +33 -33
  455. package/src/formatter/StringFormatter.tsx +43 -43
  456. package/src/formatter/TimeFormatter.ts +21 -21
  457. package/src/formatter/URLFormatter.tsx +24 -24
  458. package/src/formatter/UnknowFormatter.ts +18 -18
  459. package/src/index.tsx +7 -7
  460. package/src/main.ts +262 -262
  461. package/src/pages/NSImplementing.module.css +35 -35
  462. package/src/pages/NSImplementing.tsx +32 -32
  463. package/src/pages/NSNotFoundPage.module.css +18 -18
  464. package/src/pages/NSNotFoundPage.tsx +14 -14
  465. package/src/pages/NSUpdating.module.css +35 -35
  466. package/src/pages/NSUpdating.tsx +32 -32
  467. package/src/props/IBackgroundProps.ts +5 -5
  468. package/src/props/IBaseComponentProps.ts +8 -8
  469. package/src/props/IHeaderIconProps.ts +10 -10
  470. package/src/props/IHeaderLeftProps.ts +6 -6
  471. package/src/props/IHeaderRightProps.ts +8 -8
  472. package/src/props/IImageProps.ts +4 -4
  473. package/src/props/ILinkProps.ts +4 -4
  474. package/src/props/IValidationNumberProps.ts +4 -4
  475. package/src/props/IValidationPrecisionProps.ts +3 -3
  476. package/src/props/IValidationProps.ts +9 -9
  477. package/src/props/IValidationRegexProps.ts +4 -4
  478. package/src/props/IValidationStringProps.ts +4 -4
  479. package/src/routing/NSNotifier.ts +114 -114
  480. package/src/routing/NSRouterMaker.tsx +20 -20
  481. package/src/routing/NSRouterMakerComponent.ts +5 -5
  482. package/src/routing/NSRouterMakerProps.ts +5 -5
  483. package/tsconfig.json +43 -43
@@ -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 />);