namirasoft-site-react 1.4.407 → 1.4.409

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 (303) hide show
  1. package/.dockerignore +86 -86
  2. package/.env.template +10 -10
  3. package/Dockerfile +18 -18
  4. package/config-overrides.js +72 -72
  5. package/dist/components/NSBanner.module.css +47 -47
  6. package/dist/components/NSBarAction.module.css +84 -84
  7. package/dist/components/NSBarAlert.module.css +79 -79
  8. package/dist/components/NSBarNotification.module.css +34 -34
  9. package/dist/components/NSBarTitle.module.css +9 -9
  10. package/dist/components/NSBox.module.css +54 -54
  11. package/dist/components/NSBoxBaseCombo.module.css +6 -6
  12. package/dist/components/NSBoxBoolean.module.css +73 -73
  13. package/dist/components/NSBoxDate.module.css +4 -4
  14. package/dist/components/NSBoxDateTime.module.css +4 -4
  15. package/dist/components/NSBoxDuration.module.css +4 -4
  16. package/dist/components/NSBoxFile.module.css +10 -10
  17. package/dist/components/NSBoxPhone.module.css +35 -35
  18. package/dist/components/NSBoxRadio.module.css +33 -33
  19. package/dist/components/NSBoxSchemaBase.module.css +17 -17
  20. package/dist/components/NSBoxSchemaVariable.module.css +16 -16
  21. package/dist/components/NSBoxTextArea.module.css +12 -12
  22. package/dist/components/NSBoxTime.module.css +4 -4
  23. package/dist/components/NSButton.module.css +57 -57
  24. package/dist/components/NSButtonBlue.module.css +4 -4
  25. package/dist/components/NSButtonGreen.module.css +4 -4
  26. package/dist/components/NSButtonRed.module.css +4 -4
  27. package/dist/components/NSCard.module.css +114 -114
  28. package/dist/components/NSCardScreenshot.module.css +41 -41
  29. package/dist/components/NSChartColumn.module.css +7 -7
  30. package/dist/components/NSChartTable.module.css +21 -21
  31. package/dist/components/NSColumn.module.css +16 -16
  32. package/dist/components/NSCopyBox.module.css +39 -39
  33. package/dist/components/NSDialog.module.css +108 -108
  34. package/dist/components/NSDialogPageSelection.module.css +103 -103
  35. package/dist/components/NSDownTimer.module.css +55 -55
  36. package/dist/components/NSDownload.module.css +46 -46
  37. package/dist/components/NSElectronicCard.module.css +60 -60
  38. package/dist/components/NSEntityCardBackground.module.css +27 -27
  39. package/dist/components/NSFilterBox.module.css +27 -27
  40. package/dist/components/NSFilterBoxItems.module.css +15 -15
  41. package/dist/components/NSFilterItem.module.css +24 -24
  42. package/dist/components/NSFooter.module.css +134 -134
  43. package/dist/components/NSHeader.module.css +291 -291
  44. package/dist/components/NSHeaderScreenshot.module.css +35 -35
  45. package/dist/components/NSLabel.module.css +25 -25
  46. package/dist/components/NSLabelErrorNotifier.module.css +2 -2
  47. package/dist/components/NSLayout.d.ts +1 -0
  48. package/dist/components/NSLayout.js +13 -12
  49. package/dist/components/NSLayout.js.map +1 -1
  50. package/dist/components/NSLayout.module.css +14 -14
  51. package/dist/components/NSLine.module.css +15 -15
  52. package/dist/components/NSLineText.module.css +38 -38
  53. package/dist/components/NSLink.module.css +36 -36
  54. package/dist/components/NSListGrouped.module.css +69 -69
  55. package/dist/components/NSLoading.module.css +38 -38
  56. package/dist/components/NSMenuAction.module.css +88 -88
  57. package/dist/components/NSMenuButton.module.css +44 -44
  58. package/dist/components/NSNoData.module.css +9 -9
  59. package/dist/components/NSPagination.module.css +85 -85
  60. package/dist/components/NSPanel.module.css +19 -19
  61. package/dist/components/NSPanelAccordion.module.css +4 -4
  62. package/dist/components/NSProductSearch.module.css +73 -73
  63. package/dist/components/NSRange.module.css +66 -66
  64. package/dist/components/NSRow.module.css +17 -17
  65. package/dist/components/NSSection.module.css +4 -4
  66. package/dist/components/NSSectionCards.module.css +38 -38
  67. package/dist/components/NSSectionTiles.module.css +10 -10
  68. package/dist/components/NSTabPage.module.css +59 -59
  69. package/dist/components/NSTable.js +1 -1
  70. package/dist/components/NSTable.js.map +1 -1
  71. package/dist/components/NSTable.module.css +263 -263
  72. package/dist/components/NSTile.module.css +76 -76
  73. package/dist/components/NSTimelineMonthly.module.css +71 -71
  74. package/dist/components/NSTitle.module.css +15 -15
  75. package/dist/pages/NSNotFoundPage.module.css +18 -18
  76. package/dist/pages/NSUpdating.module.css +35 -35
  77. package/package.json +82 -82
  78. package/public/index.html +38 -38
  79. package/src/App.css +33 -33
  80. package/src/App.tsx +269 -269
  81. package/src/Color.tsx +10 -10
  82. package/src/CopyToClipboard.ts +6 -6
  83. package/src/NSBoxBuilder.tsx +912 -912
  84. package/src/ProductCacheService.ts +15 -15
  85. package/src/Validator.ts +166 -166
  86. package/src/components/INSBox.tsx +6 -6
  87. package/src/components/NSBanner.module.css +47 -47
  88. package/src/components/NSBanner.tsx +80 -80
  89. package/src/components/NSBarAction.module.css +84 -84
  90. package/src/components/NSBarAction.tsx +91 -91
  91. package/src/components/NSBarAlert.module.css +79 -79
  92. package/src/components/NSBarAlert.tsx +35 -35
  93. package/src/components/NSBarNotification.module.css +34 -34
  94. package/src/components/NSBarNotification.tsx +86 -86
  95. package/src/components/NSBarTitle.module.css +9 -9
  96. package/src/components/NSBarTitle.tsx +23 -23
  97. package/src/components/NSBox.module.css +54 -54
  98. package/src/components/NSBox.tsx +19 -19
  99. package/src/components/NSBoxBaseCombo.module.css +6 -6
  100. package/src/components/NSBoxBaseCombo.tsx +429 -429
  101. package/src/components/NSBoxBaseLayout.tsx +88 -88
  102. package/src/components/NSBoxBaseLayoutRecursive.tsx +54 -54
  103. package/src/components/NSBoxBoolean.module.css +73 -73
  104. package/src/components/NSBoxBoolean.tsx +128 -128
  105. package/src/components/NSBoxBooleans.tsx +178 -178
  106. package/src/components/NSBoxColor.tsx +96 -96
  107. package/src/components/NSBoxCombo.tsx +91 -91
  108. package/src/components/NSBoxDate.module.css +4 -4
  109. package/src/components/NSBoxDate.tsx +91 -91
  110. package/src/components/NSBoxDateTime.module.css +4 -4
  111. package/src/components/NSBoxDateTime.tsx +104 -104
  112. package/src/components/NSBoxDouble.tsx +95 -95
  113. package/src/components/NSBoxDuration.module.css +4 -4
  114. package/src/components/NSBoxDuration.tsx +96 -96
  115. package/src/components/NSBoxDynamic.tsx +67 -67
  116. package/src/components/NSBoxDynamics.tsx +68 -68
  117. package/src/components/NSBoxEmail.tsx +106 -106
  118. package/src/components/NSBoxEntity.tsx +174 -174
  119. package/src/components/NSBoxEnum.tsx +108 -108
  120. package/src/components/NSBoxFile.module.css +10 -10
  121. package/src/components/NSBoxFile.tsx +101 -101
  122. package/src/components/NSBoxFilePath.tsx +96 -96
  123. package/src/components/NSBoxFont.tsx +96 -96
  124. package/src/components/NSBoxIPV4.tsx +96 -96
  125. package/src/components/NSBoxIPV4Range.tsx +96 -96
  126. package/src/components/NSBoxIPV6.tsx +93 -93
  127. package/src/components/NSBoxIPV6Range.tsx +96 -96
  128. package/src/components/NSBoxInteger.tsx +92 -92
  129. package/src/components/NSBoxMoney.tsx +96 -96
  130. package/src/components/NSBoxPassword.tsx +108 -108
  131. package/src/components/NSBoxPhone.module.css +35 -35
  132. package/src/components/NSBoxPhone.tsx +108 -108
  133. package/src/components/NSBoxRadio.module.css +33 -33
  134. package/src/components/NSBoxRadio.tsx +91 -91
  135. package/src/components/NSBoxSchemaBase.module.css +17 -17
  136. package/src/components/NSBoxSchemaBase.tsx +540 -540
  137. package/src/components/NSBoxSchemaVariable.module.css +16 -16
  138. package/src/components/NSBoxSchemaVariable.tsx +247 -247
  139. package/src/components/NSBoxSearch.tsx +99 -99
  140. package/src/components/NSBoxString.tsx +95 -95
  141. package/src/components/NSBoxTextArea.module.css +12 -12
  142. package/src/components/NSBoxTextArea.tsx +105 -105
  143. package/src/components/NSBoxTime.module.css +4 -4
  144. package/src/components/NSBoxTime.tsx +94 -94
  145. package/src/components/NSBoxTimeZone.tsx +96 -96
  146. package/src/components/NSBoxURL.tsx +106 -106
  147. package/src/components/NSBoxVersion.tsx +96 -96
  148. package/src/components/NSButton.module.css +57 -57
  149. package/src/components/NSButton.tsx +75 -75
  150. package/src/components/NSButtonBlue.module.css +4 -4
  151. package/src/components/NSButtonBlue.tsx +29 -29
  152. package/src/components/NSButtonGreen.module.css +4 -4
  153. package/src/components/NSButtonGreen.tsx +29 -29
  154. package/src/components/NSButtonRed.module.css +4 -4
  155. package/src/components/NSButtonRed.tsx +29 -29
  156. package/src/components/NSCard.module.css +114 -114
  157. package/src/components/NSCard.tsx +63 -63
  158. package/src/components/NSCardScreenshot.module.css +41 -41
  159. package/src/components/NSCardScreenshot.tsx +31 -31
  160. package/src/components/NSChartColumn.module.css +7 -7
  161. package/src/components/NSChartColumn.tsx +106 -106
  162. package/src/components/NSChartDoughnut.tsx +112 -112
  163. package/src/components/NSChartPie.tsx +105 -105
  164. package/src/components/NSChartRange.tsx +14 -14
  165. package/src/components/NSChartTable.module.css +21 -21
  166. package/src/components/NSChartTable.tsx +94 -94
  167. package/src/components/NSColumn.module.css +16 -16
  168. package/src/components/NSColumn.tsx +24 -24
  169. package/src/components/NSCopy.tsx +58 -58
  170. package/src/components/NSCopyBox.module.css +39 -39
  171. package/src/components/NSCopyBox.tsx +53 -53
  172. package/src/components/NSDialog.module.css +108 -108
  173. package/src/components/NSDialog.tsx +72 -72
  174. package/src/components/NSDialogDelete.tsx +27 -27
  175. package/src/components/NSDialogInfo.tsx +49 -49
  176. package/src/components/NSDialogPageSelection.module.css +103 -103
  177. package/src/components/NSDialogPageSelection.tsx +234 -234
  178. package/src/components/NSDownTimer.module.css +55 -55
  179. package/src/components/NSDownTimer.tsx +91 -91
  180. package/src/components/NSDownload.module.css +46 -46
  181. package/src/components/NSDownload.tsx +69 -69
  182. package/src/components/NSElectronicCard.module.css +60 -60
  183. package/src/components/NSElectronicCard.tsx +46 -46
  184. package/src/components/NSEntityCardBackground.module.css +27 -27
  185. package/src/components/NSEntityCardBackground.tsx +36 -36
  186. package/src/components/NSFilterBox.module.css +27 -27
  187. package/src/components/NSFilterBox.tsx +477 -477
  188. package/src/components/NSFilterBoxItems.module.css +15 -15
  189. package/src/components/NSFilterBoxItems.tsx +52 -52
  190. package/src/components/NSFilterItem.module.css +24 -24
  191. package/src/components/NSFilterItem.tsx +27 -27
  192. package/src/components/NSFooter.module.css +134 -134
  193. package/src/components/NSFooter.tsx +321 -321
  194. package/src/components/NSHeader.module.css +291 -291
  195. package/src/components/NSHeader.tsx +315 -315
  196. package/src/components/NSHeaderScreenshot.module.css +35 -35
  197. package/src/components/NSHeaderScreenshot.tsx +39 -39
  198. package/src/components/NSID.tsx +158 -158
  199. package/src/components/NSLabel.module.css +25 -25
  200. package/src/components/NSLabel.tsx +47 -47
  201. package/src/components/NSLabelErrorNotifier.module.css +2 -2
  202. package/src/components/NSLabelErrorNotifier.tsx +35 -35
  203. package/src/components/NSLayout.module.css +14 -14
  204. package/src/components/NSLayout.tsx +138 -134
  205. package/src/components/NSLine.module.css +15 -15
  206. package/src/components/NSLine.tsx +13 -13
  207. package/src/components/NSLineText.module.css +38 -38
  208. package/src/components/NSLineText.tsx +17 -17
  209. package/src/components/NSLink.module.css +36 -36
  210. package/src/components/NSLink.tsx +25 -25
  211. package/src/components/NSLinkBlue.tsx +21 -21
  212. package/src/components/NSLinkGreen.tsx +12 -12
  213. package/src/components/NSLinkRed.tsx +12 -12
  214. package/src/components/NSListGrouped.module.css +69 -69
  215. package/src/components/NSListGrouped.tsx +106 -106
  216. package/src/components/NSListProduct.tsx +44 -44
  217. package/src/components/NSLoading.module.css +38 -38
  218. package/src/components/NSLoading.tsx +37 -37
  219. package/src/components/NSMenuAction.module.css +88 -88
  220. package/src/components/NSMenuAction.tsx +106 -106
  221. package/src/components/NSMenuButton.module.css +44 -44
  222. package/src/components/NSMenuButton.tsx +206 -206
  223. package/src/components/NSNoData.module.css +9 -9
  224. package/src/components/NSNoData.tsx +24 -24
  225. package/src/components/NSPagination.module.css +85 -85
  226. package/src/components/NSPagination.tsx +182 -182
  227. package/src/components/NSPanel.module.css +19 -19
  228. package/src/components/NSPanel.tsx +24 -24
  229. package/src/components/NSPanelAccordion.module.css +4 -4
  230. package/src/components/NSPanelAccordion.tsx +51 -51
  231. package/src/components/NSProductSearch.module.css +73 -73
  232. package/src/components/NSProductSearch.tsx +193 -193
  233. package/src/components/NSRange.module.css +66 -66
  234. package/src/components/NSRange.tsx +83 -83
  235. package/src/components/NSRepeater.tsx +254 -254
  236. package/src/components/NSRepeaterNSBoxSchemaVariable.tsx +90 -90
  237. package/src/components/NSRepeaterNSTag.tsx +82 -82
  238. package/src/components/NSRow.module.css +17 -17
  239. package/src/components/NSRow.tsx +24 -24
  240. package/src/components/NSSection.module.css +4 -4
  241. package/src/components/NSSection.tsx +26 -26
  242. package/src/components/NSSectionCards.module.css +38 -38
  243. package/src/components/NSSectionCards.tsx +51 -51
  244. package/src/components/NSSectionTiles.module.css +10 -10
  245. package/src/components/NSSectionTiles.tsx +25 -25
  246. package/src/components/NSSectionTitle.tsx +21 -21
  247. package/src/components/NSSpace.tsx +28 -28
  248. package/src/components/NSTabPage.module.css +59 -59
  249. package/src/components/NSTabPage.tsx +91 -91
  250. package/src/components/NSTable.module.css +263 -263
  251. package/src/components/NSTable.tsx +636 -636
  252. package/src/components/NSTag.tsx +74 -74
  253. package/src/components/NSTile.module.css +76 -76
  254. package/src/components/NSTile.tsx +27 -27
  255. package/src/components/NSTimelineMonthly.module.css +71 -71
  256. package/src/components/NSTimelineMonthly.tsx +44 -44
  257. package/src/components/NSTitle.module.css +15 -15
  258. package/src/components/NSTitle.tsx +19 -19
  259. package/src/formatter/BackColorFormatter.tsx +23 -23
  260. package/src/formatter/BaseColumnFormatter.ts +16 -16
  261. package/src/formatter/BaseURLImageFormatter.tsx +33 -33
  262. package/src/formatter/BooleanFormatter.ts +22 -22
  263. package/src/formatter/DateFormatter.ts +21 -21
  264. package/src/formatter/DateTimeFormatter.ts +21 -21
  265. package/src/formatter/DurationFormatter.ts +13 -13
  266. package/src/formatter/EmailFormatter.tsx +21 -21
  267. package/src/formatter/EnumFormatter.ts +13 -13
  268. package/src/formatter/FloatFormatter.ts +23 -23
  269. package/src/formatter/ForeColorFormatter.tsx +24 -24
  270. package/src/formatter/IDFormatter.tsx +30 -30
  271. package/src/formatter/IPFormatter.ts +13 -13
  272. package/src/formatter/IntegerFormatter.ts +23 -23
  273. package/src/formatter/JsonFormatter.ts +21 -21
  274. package/src/formatter/MoneyFormatter.ts +35 -35
  275. package/src/formatter/PhoneFormatter.tsx +21 -21
  276. package/src/formatter/StringFormatter.tsx +43 -43
  277. package/src/formatter/TimeFormatter.ts +21 -21
  278. package/src/formatter/URLFormatter.tsx +21 -21
  279. package/src/formatter/UnknowFormatter.ts +18 -18
  280. package/src/index.tsx +7 -7
  281. package/src/main.ts +226 -226
  282. package/src/pages/NSNotFoundPage.module.css +18 -18
  283. package/src/pages/NSNotFoundPage.tsx +11 -11
  284. package/src/pages/NSUpdating.module.css +35 -35
  285. package/src/pages/NSUpdating.tsx +32 -32
  286. package/src/props/IBackgroundProps.ts +5 -5
  287. package/src/props/IBaseComponentProps.ts +8 -8
  288. package/src/props/IHeaderIconProps.ts +10 -10
  289. package/src/props/IHeaderLeftProps.ts +6 -6
  290. package/src/props/IHeaderRightProps.ts +6 -6
  291. package/src/props/IImageProps.ts +4 -4
  292. package/src/props/ILinkProps.ts +5 -5
  293. package/src/props/IValidationNumberProps.ts +4 -4
  294. package/src/props/IValidationPrecisionProps.ts +3 -3
  295. package/src/props/IValidationProps.ts +9 -9
  296. package/src/props/IValidationRegexProps.ts +4 -4
  297. package/src/props/IValidationStringProps.ts +4 -4
  298. package/src/routing/NSNotifier.ts +114 -114
  299. package/src/routing/NSRouterMaker.tsx +20 -20
  300. package/src/routing/NSRouterMakerComponent.ts +5 -5
  301. package/src/routing/NSRouterMakerProps.ts +5 -5
  302. package/dist/App.css +0 -34
  303. package/dist/index.css +0 -6
@@ -1,36 +1,36 @@
1
- .ns_header_screenshot {
2
- background-color: hsla(91, 100%, 31%, 1);
3
- width: 100%;
4
- min-height: 48px;
5
- border-radius: 8px;
6
- padding: 14px 16px;
7
- color: #fff;
8
- font-size: 16px;
9
- display: flex;
10
- justify-content: flex-end;
11
- flex-wrap: wrap;
12
- }
13
-
14
- .ns_header_screenshot_left {
15
- display: flex;
16
- gap: 32px;
17
- flex-direction: row;
18
- flex-wrap: wrap;
19
- justify-content: space-between;
20
- }
21
-
22
- .ns_header_screenshot_item {
23
- gap: 4px;
24
- display: flex;
25
- align-items: center;
26
- }
27
-
28
- @media only screen and (min-width: 580px) {
29
- .ns_header_screenshot {
30
- justify-content: space-between;
31
- }
32
-
33
- .ns_header_screenshot_left {
34
- justify-content: left
35
- }
1
+ .ns_header_screenshot {
2
+ background-color: hsla(91, 100%, 31%, 1);
3
+ width: 100%;
4
+ min-height: 48px;
5
+ border-radius: 8px;
6
+ padding: 14px 16px;
7
+ color: #fff;
8
+ font-size: 16px;
9
+ display: flex;
10
+ justify-content: flex-end;
11
+ flex-wrap: wrap;
12
+ }
13
+
14
+ .ns_header_screenshot_left {
15
+ display: flex;
16
+ gap: 32px;
17
+ flex-direction: row;
18
+ flex-wrap: wrap;
19
+ justify-content: space-between;
20
+ }
21
+
22
+ .ns_header_screenshot_item {
23
+ gap: 4px;
24
+ display: flex;
25
+ align-items: center;
26
+ }
27
+
28
+ @media only screen and (min-width: 580px) {
29
+ .ns_header_screenshot {
30
+ justify-content: space-between;
31
+ }
32
+
33
+ .ns_header_screenshot_left {
34
+ justify-content: left
35
+ }
36
36
  }
@@ -1,40 +1,40 @@
1
- // todo move to its own probject: this is Timify
2
- import { IBaseComponentProps } from "../props/IBaseComponentProps";
3
- import Styles from "./NSHeaderScreenshot.module.css"
4
-
5
- export interface NSHeaderScreenshotProps extends IBaseComponentProps
6
- {
7
- project: string;
8
- task: string;
9
- time: string;
10
- Countdown: string;
11
- }
12
-
13
- export function NSHeaderScreenshot(props: NSHeaderScreenshotProps)
14
- {
15
- return (
16
- <section className={Styles.ns_header_screenshot}>
17
- <div className={Styles.ns_header_screenshot_left}>
18
- <div className={Styles.ns_header_screenshot_item}>
19
- <img src="https://static.namirasoft.com/image/concept/project/white.svg" alt='' width={20} height={20} />
20
- <span>{props.project}</span>
21
- </div>
22
- <div className={Styles.ns_header_screenshot_item}>
23
- <img src="https://static.namirasoft.com/image/concept/gear/white.svg" alt='' width={20} height={20} />
24
- <span>{props.task}</span>
25
- </div>
26
- <div className={Styles.ns_header_screenshot_item}>
27
- <img src="https://static.namirasoft.com/image/concept/time/white.svg" alt='' width={20} height={20} />
28
- <span>{props.time}</span>
29
- </div>
30
- <div className={Styles.ns_header_screenshot_item}>
31
- <img src="https://static.namirasoft.com/image/concept/countdown/white.svg" alt='' width={20} height={20} />
32
- <span>{props.Countdown}</span>
33
- </div>
34
- </div>
35
- <div>
36
- <img src="https://static.namirasoft.com/image/concept/delete/blue.svg" alt='' width={20} height={20} />
37
- </div>
38
- </section >
39
- );
1
+ // todo move to its own probject: this is Timify
2
+ import { IBaseComponentProps } from "../props/IBaseComponentProps";
3
+ import Styles from "./NSHeaderScreenshot.module.css"
4
+
5
+ export interface NSHeaderScreenshotProps extends IBaseComponentProps
6
+ {
7
+ project: string;
8
+ task: string;
9
+ time: string;
10
+ Countdown: string;
11
+ }
12
+
13
+ export function NSHeaderScreenshot(props: NSHeaderScreenshotProps)
14
+ {
15
+ return (
16
+ <section className={Styles.ns_header_screenshot}>
17
+ <div className={Styles.ns_header_screenshot_left}>
18
+ <div className={Styles.ns_header_screenshot_item}>
19
+ <img src="https://static.namirasoft.com/image/concept/project/white.svg" alt='' width={20} height={20} />
20
+ <span>{props.project}</span>
21
+ </div>
22
+ <div className={Styles.ns_header_screenshot_item}>
23
+ <img src="https://static.namirasoft.com/image/concept/gear/white.svg" alt='' width={20} height={20} />
24
+ <span>{props.task}</span>
25
+ </div>
26
+ <div className={Styles.ns_header_screenshot_item}>
27
+ <img src="https://static.namirasoft.com/image/concept/time/white.svg" alt='' width={20} height={20} />
28
+ <span>{props.time}</span>
29
+ </div>
30
+ <div className={Styles.ns_header_screenshot_item}>
31
+ <img src="https://static.namirasoft.com/image/concept/countdown/white.svg" alt='' width={20} height={20} />
32
+ <span>{props.Countdown}</span>
33
+ </div>
34
+ </div>
35
+ <div>
36
+ <img src="https://static.namirasoft.com/image/concept/delete/blue.svg" alt='' width={20} height={20} />
37
+ </div>
38
+ </section >
39
+ );
40
40
  }
@@ -1,159 +1,159 @@
1
- import React from 'react';
2
- import { BaseURLImageFormatter, IBaseComponentProps, NSCopy } from '../main';
3
- import { BaseUUID, CacheService, IStorage } from 'namirasoft-core';
4
- import { NamirasoftMap } from 'namirasoft-site-map';
5
- import { NSBaseMetaTable, NSBaseServer } from 'namirasoft-site';
6
- import { Mutex } from 'async-mutex';
7
-
8
- export interface NSIDProps extends IBaseComponentProps
9
- {
10
- id: string;
11
- map: NamirasoftMap | null;
12
- storage: IStorage | null;
13
- }
14
-
15
- export interface NSIDState
16
- {
17
- text?: string;
18
- }
19
- export interface NSIDInfo
20
- {
21
- product: {
22
- id: string;
23
- name: string;
24
- headline: string;
25
- description: string;
26
- logo: string;
27
- link: string;
28
- };
29
- table: NSBaseMetaTable<NSBaseServer, any>;
30
- }
31
-
32
- export class NSID extends React.Component<NSIDProps, NSIDState>
33
- {
34
- private static mutex: Mutex = new Mutex();
35
- private static mutexes: { [product_id: string]: Mutex } = {};
36
- private info: NSIDInfo | null;
37
- public static getKey(info: NSIDInfo, id: string)
38
- {
39
- return `${info.product.id}:${info.table.name}:${id}`
40
- }
41
- public static getInfo(id: string, map?: NamirasoftMap | null)
42
- {
43
- try
44
- {
45
- let short = BaseUUID.getShort(id);
46
- let namriasoft = map ?? new NamirasoftMap();
47
- return namriasoft.getByShortName(short);
48
- } catch (error)
49
- {
50
- }
51
- return null;
52
- }
53
- public static getCache(info: NSIDInfo, storage: IStorage, id: string)
54
- {
55
- let key = NSID.getKey(info, id);
56
- return new CacheService<string>(key, storage, 60, async () => "0.0.0", async () =>
57
- {
58
- if (info.table.back_end.get)
59
- {
60
- try
61
- {
62
- let columns: string[] = [];
63
- info.table.forEachColumn(column =>
64
- {
65
- if (column.name.includes("name"))
66
- columns.push(column.name);
67
- });
68
- let row = await info.table.back_end.get(id);
69
- let values = columns.map(column => row[column]).filter(x => x);
70
- if (values.length > 0)
71
- return values.join(" ");
72
- return row.name ?? row.description ?? "";
73
- } catch (error)
74
- {
75
- console.error(error);
76
- }
77
- }
78
- return "";
79
- });
80
- }
81
- public static clearID(storage: IStorage, id: string, map?: NamirasoftMap | null)
82
- {
83
- let info = NSID.getInfo(id, map);
84
- if (info)
85
- {
86
- let cache = NSID.getCache(info, storage, id);
87
- cache.del();
88
- }
89
- }
90
- constructor(props: NSIDProps)
91
- {
92
- super(props);
93
- this.state = {};
94
- this.info = NSID.getInfo(this.props.id, this.props.map);
95
- }
96
- override componentDidMount(): void
97
- {
98
- this.reload();
99
- }
100
- async reload()
101
- {
102
- if (!this.info)
103
- return;
104
- if (!this.props.id)
105
- return;
106
- let info = this.info;
107
- let cache = null;
108
- if (this.props.storage)
109
- {
110
- cache = NSID.getCache(info, this.props.storage, this.props.id);
111
- cache.runGetOn = await NSID.mutex.runExclusive(async () =>
112
- {
113
- if (!NSID.mutexes[info.product.id])
114
- NSID.mutexes[info.product.id] = new Mutex();
115
- return NSID.mutexes[info.product.id];
116
- });
117
- }
118
- if (cache)
119
- cache.get().then(text =>
120
- {
121
- this.setState({ text });
122
- });
123
- }
124
-
125
- override render()
126
- {
127
- if (!this.props.id)
128
- return <></>;
129
- if (!this.info)
130
- return this.props.id;
131
-
132
- let text = this.state.text;
133
- if (!text)
134
- text = this.props.id;
135
-
136
- let href = "";
137
- try
138
- {
139
- href = this.info.table.front_end.getViewLink(this.props.id + "");
140
- } catch (error)
141
- {
142
- }
143
- let formatter = new BaseURLImageFormatter();
144
- return (
145
- <NSCopy
146
- value={this.props.id}
147
- classList={["justify-content-start"]}
148
- >
149
- {
150
- formatter.format({
151
- text,
152
- href,
153
- image: { url: this.info.product.logo, alt: this.info?.product.logo }
154
- })
155
- }
156
- </NSCopy>
157
- );
158
- }
1
+ import React from 'react';
2
+ import { BaseURLImageFormatter, IBaseComponentProps, NSCopy } from '../main';
3
+ import { BaseUUID, CacheService, IStorage } from 'namirasoft-core';
4
+ import { NamirasoftMap } from 'namirasoft-site-map';
5
+ import { NSBaseMetaTable, NSBaseServer } from 'namirasoft-site';
6
+ import { Mutex } from 'async-mutex';
7
+
8
+ export interface NSIDProps extends IBaseComponentProps
9
+ {
10
+ id: string;
11
+ map: NamirasoftMap | null;
12
+ storage: IStorage | null;
13
+ }
14
+
15
+ export interface NSIDState
16
+ {
17
+ text?: string;
18
+ }
19
+ export interface NSIDInfo
20
+ {
21
+ product: {
22
+ id: string;
23
+ name: string;
24
+ headline: string;
25
+ description: string;
26
+ logo: string;
27
+ link: string;
28
+ };
29
+ table: NSBaseMetaTable<NSBaseServer, any>;
30
+ }
31
+
32
+ export class NSID extends React.Component<NSIDProps, NSIDState>
33
+ {
34
+ private static mutex: Mutex = new Mutex();
35
+ private static mutexes: { [product_id: string]: Mutex } = {};
36
+ private info: NSIDInfo | null;
37
+ public static getKey(info: NSIDInfo, id: string)
38
+ {
39
+ return `${info.product.id}:${info.table.name}:${id}`
40
+ }
41
+ public static getInfo(id: string, map?: NamirasoftMap | null)
42
+ {
43
+ try
44
+ {
45
+ let short = BaseUUID.getShort(id);
46
+ let namriasoft = map ?? new NamirasoftMap();
47
+ return namriasoft.getByShortName(short);
48
+ } catch (error)
49
+ {
50
+ }
51
+ return null;
52
+ }
53
+ public static getCache(info: NSIDInfo, storage: IStorage, id: string)
54
+ {
55
+ let key = NSID.getKey(info, id);
56
+ return new CacheService<string>(key, storage, 60, async () => "0.0.0", async () =>
57
+ {
58
+ if (info.table.back_end.get)
59
+ {
60
+ try
61
+ {
62
+ let columns: string[] = [];
63
+ info.table.forEachColumn(column =>
64
+ {
65
+ if (column.name.includes("name"))
66
+ columns.push(column.name);
67
+ });
68
+ let row = await info.table.back_end.get(id);
69
+ let values = columns.map(column => row[column]).filter(x => x);
70
+ if (values.length > 0)
71
+ return values.join(" ");
72
+ return row.name ?? row.description ?? "";
73
+ } catch (error)
74
+ {
75
+ console.error(error);
76
+ }
77
+ }
78
+ return "";
79
+ });
80
+ }
81
+ public static clearID(storage: IStorage, id: string, map?: NamirasoftMap | null)
82
+ {
83
+ let info = NSID.getInfo(id, map);
84
+ if (info)
85
+ {
86
+ let cache = NSID.getCache(info, storage, id);
87
+ cache.del();
88
+ }
89
+ }
90
+ constructor(props: NSIDProps)
91
+ {
92
+ super(props);
93
+ this.state = {};
94
+ this.info = NSID.getInfo(this.props.id, this.props.map);
95
+ }
96
+ override componentDidMount(): void
97
+ {
98
+ this.reload();
99
+ }
100
+ async reload()
101
+ {
102
+ if (!this.info)
103
+ return;
104
+ if (!this.props.id)
105
+ return;
106
+ let info = this.info;
107
+ let cache = null;
108
+ if (this.props.storage)
109
+ {
110
+ cache = NSID.getCache(info, this.props.storage, this.props.id);
111
+ cache.runGetOn = await NSID.mutex.runExclusive(async () =>
112
+ {
113
+ if (!NSID.mutexes[info.product.id])
114
+ NSID.mutexes[info.product.id] = new Mutex();
115
+ return NSID.mutexes[info.product.id];
116
+ });
117
+ }
118
+ if (cache)
119
+ cache.get().then(text =>
120
+ {
121
+ this.setState({ text });
122
+ });
123
+ }
124
+
125
+ override render()
126
+ {
127
+ if (!this.props.id)
128
+ return <></>;
129
+ if (!this.info)
130
+ return this.props.id;
131
+
132
+ let text = this.state.text;
133
+ if (!text)
134
+ text = this.props.id;
135
+
136
+ let href = "";
137
+ try
138
+ {
139
+ href = this.info.table.front_end.getViewLink(this.props.id + "");
140
+ } catch (error)
141
+ {
142
+ }
143
+ let formatter = new BaseURLImageFormatter();
144
+ return (
145
+ <NSCopy
146
+ value={this.props.id}
147
+ classList={["justify-content-start"]}
148
+ >
149
+ {
150
+ formatter.format({
151
+ text,
152
+ href,
153
+ image: { url: this.info.product.logo, alt: this.info?.product.logo }
154
+ })
155
+ }
156
+ </NSCopy>
157
+ );
158
+ }
159
159
  }
@@ -1,26 +1,26 @@
1
- .ns_label_title {
2
- color: hsla(234, 64%, 22%, 1);
3
- margin-bottom: 8px;
4
- font-size: 16px;
5
- font-weight: bold;
6
- padding: 0px;
7
- margin: 0px;
8
- align-content: center;
9
- }
10
-
11
- .ns_label_desciption {
12
- color: hsla(234, 64%, 22%, 1);
13
- font-size: 16px;
14
- padding: 0px;
15
- margin: 0px;
16
- }
17
-
18
- .ns_label_item {
19
- padding: 8px;
20
- border-right: none !important;
21
- align-content: center;
22
- }
23
-
24
- .ns_label_item:not(:last-child) {
25
- border-right: 1px solid #ccc;
1
+ .ns_label_title {
2
+ color: hsla(234, 64%, 22%, 1);
3
+ margin-bottom: 8px;
4
+ font-size: 16px;
5
+ font-weight: bold;
6
+ padding: 0px;
7
+ margin: 0px;
8
+ align-content: center;
9
+ }
10
+
11
+ .ns_label_desciption {
12
+ color: hsla(234, 64%, 22%, 1);
13
+ font-size: 16px;
14
+ padding: 0px;
15
+ margin: 0px;
16
+ }
17
+
18
+ .ns_label_item {
19
+ padding: 8px;
20
+ border-right: none !important;
21
+ align-content: center;
22
+ }
23
+
24
+ .ns_label_item:not(:last-child) {
25
+ border-right: 1px solid #ccc;
26
26
  }
@@ -1,48 +1,48 @@
1
- "use client";
2
-
3
- import Styles from './NSLabel.module.css'
4
- import React from "react";
5
- import { ReactNode } from "react";
6
- import { IBaseComponentProps } from '../props/IBaseComponentProps';
7
- import { StringFormatter } from '../main';
8
-
9
- export interface NSLabelProps extends IBaseComponentProps
10
- {
11
- title: string;
12
- desciption?: string;
13
- children?: ReactNode;
14
- }
15
-
16
- export interface NSLabelState
17
- { }
18
-
19
- export class NSLabel extends React.Component<NSLabelProps, NSLabelState>
20
- {
21
- override render()
22
- {
23
- return (
24
- <div id={this.props.id} className={`${Styles.ns_label_item} ${this.props.classList?.join(" ") ?? ""}`} style={this.props.style}>
25
- <span className={`${Styles.ns_label_title} ns_font_16_bold`}>
26
- {this.props.title}
27
- </span>
28
- {
29
- this.props.desciption &&
30
- <div>
31
- <span className={`${Styles.ns_label_desciption}`}>
32
- {StringFormatter.toHTML(this.props.desciption)}
33
- </span>
34
- </div>
35
- }
36
- {
37
-
38
- this.props.children &&
39
- <>
40
- <div>
41
- {this.props.children}
42
- </div>
43
- </>
44
- }
45
- </div >
46
- );
47
- }
1
+ "use client";
2
+
3
+ import Styles from './NSLabel.module.css'
4
+ import React from "react";
5
+ import { ReactNode } from "react";
6
+ import { IBaseComponentProps } from '../props/IBaseComponentProps';
7
+ import { StringFormatter } from '../main';
8
+
9
+ export interface NSLabelProps extends IBaseComponentProps
10
+ {
11
+ title: string;
12
+ desciption?: string;
13
+ children?: ReactNode;
14
+ }
15
+
16
+ export interface NSLabelState
17
+ { }
18
+
19
+ export class NSLabel extends React.Component<NSLabelProps, NSLabelState>
20
+ {
21
+ override render()
22
+ {
23
+ return (
24
+ <div id={this.props.id} className={`${Styles.ns_label_item} ${this.props.classList?.join(" ") ?? ""}`} style={this.props.style}>
25
+ <span className={`${Styles.ns_label_title} ns_font_16_bold`}>
26
+ {this.props.title}
27
+ </span>
28
+ {
29
+ this.props.desciption &&
30
+ <div>
31
+ <span className={`${Styles.ns_label_desciption}`}>
32
+ {StringFormatter.toHTML(this.props.desciption)}
33
+ </span>
34
+ </div>
35
+ }
36
+ {
37
+
38
+ this.props.children &&
39
+ <>
40
+ <div>
41
+ {this.props.children}
42
+ </div>
43
+ </>
44
+ }
45
+ </div >
46
+ );
47
+ }
48
48
  }
@@ -1,3 +1,3 @@
1
- .ns_label_error_notifier_text {
2
- color: #FF3F3F !important;
1
+ .ns_label_error_notifier_text {
2
+ color: #FF3F3F !important;
3
3
  }