namirasoft-site-react 1.4.569 → 1.4.571

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