namirasoft-site-react 1.4.565 → 1.4.567

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