namirasoft-site-react 1.4.403 → 1.4.404

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 (299) 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/App.css +34 -0
  6. package/dist/components/NSBanner.module.css +47 -47
  7. package/dist/components/NSBarAction.module.css +84 -84
  8. package/dist/components/NSBarAlert.module.css +79 -79
  9. package/dist/components/NSBarNotification.module.css +34 -34
  10. package/dist/components/NSBarTitle.module.css +9 -9
  11. package/dist/components/NSBox.module.css +54 -54
  12. package/dist/components/NSBoxBaseCombo.module.css +6 -6
  13. package/dist/components/NSBoxBoolean.module.css +73 -73
  14. package/dist/components/NSBoxDate.module.css +4 -4
  15. package/dist/components/NSBoxDateTime.module.css +4 -4
  16. package/dist/components/NSBoxDuration.module.css +4 -4
  17. package/dist/components/NSBoxFile.module.css +10 -10
  18. package/dist/components/NSBoxPhone.module.css +35 -35
  19. package/dist/components/NSBoxRadio.module.css +33 -33
  20. package/dist/components/NSBoxSchemaBase.module.css +17 -17
  21. package/dist/components/NSBoxSchemaVariable.module.css +16 -16
  22. package/dist/components/NSBoxTextArea.module.css +12 -12
  23. package/dist/components/NSBoxTime.module.css +4 -4
  24. package/dist/components/NSButton.module.css +57 -57
  25. package/dist/components/NSButtonBlue.module.css +4 -4
  26. package/dist/components/NSButtonGreen.module.css +4 -4
  27. package/dist/components/NSButtonRed.module.css +4 -4
  28. package/dist/components/NSCard.module.css +114 -114
  29. package/dist/components/NSCardScreenshot.module.css +41 -41
  30. package/dist/components/NSChartColumn.module.css +7 -7
  31. package/dist/components/NSChartTable.module.css +21 -21
  32. package/dist/components/NSColumn.module.css +16 -16
  33. package/dist/components/NSCopyBox.module.css +39 -39
  34. package/dist/components/NSDialog.module.css +112 -112
  35. package/dist/components/NSDialogPageSelection.module.css +103 -103
  36. package/dist/components/NSDownTimer.module.css +55 -55
  37. package/dist/components/NSDownload.module.css +46 -46
  38. package/dist/components/NSElectronicCard.module.css +60 -60
  39. package/dist/components/NSEntityCardBackground.module.css +27 -27
  40. package/dist/components/NSFilterBox.module.css +27 -27
  41. package/dist/components/NSFilterBoxItems.module.css +15 -15
  42. package/dist/components/NSFilterItem.module.css +24 -24
  43. package/dist/components/NSFooter.module.css +134 -134
  44. package/dist/components/NSHeader.js +11 -6
  45. package/dist/components/NSHeader.js.map +1 -1
  46. package/dist/components/NSHeader.module.css +291 -291
  47. package/dist/components/NSHeaderScreenshot.module.css +35 -35
  48. package/dist/components/NSLabel.module.css +25 -25
  49. package/dist/components/NSLabelErrorNotifier.module.css +2 -2
  50. package/dist/components/NSLayout.module.css +14 -14
  51. package/dist/components/NSLine.module.css +15 -15
  52. package/dist/components/NSLink.module.css +36 -36
  53. package/dist/components/NSListGrouped.module.css +69 -69
  54. package/dist/components/NSLoading.module.css +38 -38
  55. package/dist/components/NSMenuAction.module.css +88 -88
  56. package/dist/components/NSMenuButton.module.css +44 -44
  57. package/dist/components/NSNoData.module.css +9 -9
  58. package/dist/components/NSPagination.module.css +85 -85
  59. package/dist/components/NSPanel.module.css +19 -19
  60. package/dist/components/NSPanelAccordion.module.css +4 -4
  61. package/dist/components/NSProductSearch.js +18 -7
  62. package/dist/components/NSProductSearch.js.map +1 -1
  63. package/dist/components/NSProductSearch.module.css +73 -68
  64. package/dist/components/NSRange.module.css +66 -66
  65. package/dist/components/NSRow.module.css +17 -17
  66. package/dist/components/NSSection.module.css +4 -4
  67. package/dist/components/NSSectionCards.module.css +38 -38
  68. package/dist/components/NSSectionTiles.module.css +10 -10
  69. package/dist/components/NSTabPage.module.css +59 -59
  70. package/dist/components/NSTable.module.css +263 -263
  71. package/dist/components/NSTile.module.css +76 -76
  72. package/dist/components/NSTimelineMonthly.module.css +71 -71
  73. package/dist/components/NSTitle.module.css +15 -15
  74. package/dist/index.css +6 -0
  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 +216 -216
  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 +428 -428
  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 +95 -95
  107. package/src/components/NSBoxCombo.tsx +91 -91
  108. package/src/components/NSBoxDate.module.css +4 -4
  109. package/src/components/NSBoxDate.tsx +90 -90
  110. package/src/components/NSBoxDateTime.module.css +4 -4
  111. package/src/components/NSBoxDateTime.tsx +103 -103
  112. package/src/components/NSBoxDouble.tsx +94 -94
  113. package/src/components/NSBoxDuration.module.css +4 -4
  114. package/src/components/NSBoxDuration.tsx +95 -95
  115. package/src/components/NSBoxDynamic.tsx +67 -67
  116. package/src/components/NSBoxDynamics.tsx +68 -68
  117. package/src/components/NSBoxEmail.tsx +98 -98
  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 +95 -95
  123. package/src/components/NSBoxFont.tsx +95 -95
  124. package/src/components/NSBoxIPV4.tsx +95 -95
  125. package/src/components/NSBoxIPV4Range.tsx +95 -95
  126. package/src/components/NSBoxIPV6.tsx +92 -92
  127. package/src/components/NSBoxIPV6Range.tsx +95 -95
  128. package/src/components/NSBoxInteger.tsx +91 -91
  129. package/src/components/NSBoxMoney.tsx +95 -95
  130. package/src/components/NSBoxPassword.tsx +108 -108
  131. package/src/components/NSBoxPhone.module.css +35 -35
  132. package/src/components/NSBoxPhone.tsx +107 -107
  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 +97 -97
  140. package/src/components/NSBoxString.tsx +93 -93
  141. package/src/components/NSBoxTextArea.module.css +12 -12
  142. package/src/components/NSBoxTextArea.tsx +98 -98
  143. package/src/components/NSBoxTime.module.css +4 -4
  144. package/src/components/NSBoxTime.tsx +93 -93
  145. package/src/components/NSBoxTimeZone.tsx +95 -95
  146. package/src/components/NSBoxURL.tsx +104 -104
  147. package/src/components/NSBoxVersion.tsx +95 -95
  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 +112 -112
  173. package/src/components/NSDialog.tsx +61 -61
  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 +314 -309
  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 +134 -134
  205. package/src/components/NSLine.module.css +15 -15
  206. package/src/components/NSLine.tsx +13 -13
  207. package/src/components/NSLink.module.css +36 -36
  208. package/src/components/NSLink.tsx +25 -25
  209. package/src/components/NSLinkBlue.tsx +21 -21
  210. package/src/components/NSLinkGreen.tsx +12 -12
  211. package/src/components/NSLinkRed.tsx +12 -12
  212. package/src/components/NSListGrouped.module.css +69 -69
  213. package/src/components/NSListGrouped.tsx +106 -106
  214. package/src/components/NSListProduct.tsx +44 -44
  215. package/src/components/NSLoading.module.css +38 -38
  216. package/src/components/NSLoading.tsx +37 -37
  217. package/src/components/NSMenuAction.module.css +88 -88
  218. package/src/components/NSMenuAction.tsx +106 -106
  219. package/src/components/NSMenuButton.module.css +44 -44
  220. package/src/components/NSMenuButton.tsx +206 -206
  221. package/src/components/NSNoData.module.css +9 -9
  222. package/src/components/NSNoData.tsx +24 -24
  223. package/src/components/NSPagination.module.css +85 -85
  224. package/src/components/NSPagination.tsx +182 -182
  225. package/src/components/NSPanel.module.css +19 -19
  226. package/src/components/NSPanel.tsx +24 -24
  227. package/src/components/NSPanelAccordion.module.css +4 -4
  228. package/src/components/NSPanelAccordion.tsx +51 -51
  229. package/src/components/NSProductSearch.module.css +73 -68
  230. package/src/components/NSProductSearch.tsx +193 -155
  231. package/src/components/NSRange.module.css +66 -66
  232. package/src/components/NSRange.tsx +83 -83
  233. package/src/components/NSRepeater.tsx +254 -254
  234. package/src/components/NSRepeaterNSBoxSchemaVariable.tsx +90 -90
  235. package/src/components/NSRepeaterNSTag.tsx +82 -82
  236. package/src/components/NSRow.module.css +17 -17
  237. package/src/components/NSRow.tsx +24 -24
  238. package/src/components/NSSection.module.css +4 -4
  239. package/src/components/NSSection.tsx +26 -26
  240. package/src/components/NSSectionCards.module.css +38 -38
  241. package/src/components/NSSectionCards.tsx +51 -51
  242. package/src/components/NSSectionTiles.module.css +10 -10
  243. package/src/components/NSSectionTiles.tsx +25 -25
  244. package/src/components/NSSectionTitle.tsx +21 -21
  245. package/src/components/NSSpace.tsx +28 -28
  246. package/src/components/NSTabPage.module.css +59 -59
  247. package/src/components/NSTabPage.tsx +91 -91
  248. package/src/components/NSTable.module.css +263 -263
  249. package/src/components/NSTable.tsx +636 -636
  250. package/src/components/NSTag.tsx +74 -74
  251. package/src/components/NSTile.module.css +76 -76
  252. package/src/components/NSTile.tsx +27 -27
  253. package/src/components/NSTimelineMonthly.module.css +71 -71
  254. package/src/components/NSTimelineMonthly.tsx +44 -44
  255. package/src/components/NSTitle.module.css +15 -15
  256. package/src/components/NSTitle.tsx +19 -19
  257. package/src/formatter/BackColorFormatter.tsx +23 -23
  258. package/src/formatter/BaseColumnFormatter.ts +16 -16
  259. package/src/formatter/BaseURLImageFormatter.tsx +33 -33
  260. package/src/formatter/BooleanFormatter.ts +22 -22
  261. package/src/formatter/DateFormatter.ts +21 -21
  262. package/src/formatter/DateTimeFormatter.ts +21 -21
  263. package/src/formatter/DurationFormatter.ts +13 -13
  264. package/src/formatter/EmailFormatter.tsx +21 -21
  265. package/src/formatter/EnumFormatter.ts +13 -13
  266. package/src/formatter/FloatFormatter.ts +23 -23
  267. package/src/formatter/ForeColorFormatter.tsx +24 -24
  268. package/src/formatter/IDFormatter.tsx +30 -30
  269. package/src/formatter/IPFormatter.ts +13 -13
  270. package/src/formatter/IntegerFormatter.ts +23 -23
  271. package/src/formatter/JsonFormatter.ts +21 -21
  272. package/src/formatter/MoneyFormatter.ts +35 -35
  273. package/src/formatter/PhoneFormatter.tsx +21 -21
  274. package/src/formatter/StringFormatter.tsx +43 -43
  275. package/src/formatter/TimeFormatter.ts +21 -21
  276. package/src/formatter/URLFormatter.tsx +21 -21
  277. package/src/formatter/UnknowFormatter.ts +18 -18
  278. package/src/index.tsx +7 -7
  279. package/src/main.ts +225 -225
  280. package/src/pages/NSNotFoundPage.module.css +18 -18
  281. package/src/pages/NSNotFoundPage.tsx +11 -11
  282. package/src/pages/NSUpdating.module.css +35 -35
  283. package/src/pages/NSUpdating.tsx +32 -32
  284. package/src/props/IBackgroundProps.ts +5 -5
  285. package/src/props/IBaseComponentProps.ts +8 -8
  286. package/src/props/IHeaderIconProps.ts +10 -10
  287. package/src/props/IHeaderLeftProps.ts +6 -6
  288. package/src/props/IHeaderRightProps.ts +6 -6
  289. package/src/props/IImageProps.ts +4 -4
  290. package/src/props/ILinkProps.ts +5 -5
  291. package/src/props/IValidationNumberProps.ts +4 -4
  292. package/src/props/IValidationPrecisionProps.ts +3 -3
  293. package/src/props/IValidationProps.ts +9 -9
  294. package/src/props/IValidationRegexProps.ts +4 -4
  295. package/src/props/IValidationStringProps.ts +4 -4
  296. package/src/routing/NSNotifier.ts +114 -114
  297. package/src/routing/NSRouterMaker.tsx +20 -20
  298. package/src/routing/NSRouterMakerComponent.ts +5 -5
  299. package/src/routing/NSRouterMakerProps.ts +5 -5
package/src/App.tsx CHANGED
@@ -1,217 +1,217 @@
1
- import './App.css';
2
- import 'bootstrap/dist/css/bootstrap.min.css';
3
- import { NSPanel } from './components/NSPanel';
4
- import { NSSection } from './components/NSSection';
5
- import { NSLayout } from './components/NSLayout';
6
- import { MoneyFormatter, NSBoxDynamic, NSBoxEntity, NSBoxString, NSButtonBlue, NSColumn, NSFilterBox, NSTable } from './main';
7
- import { FilterItemColumnType } from 'namirasoft-core';
8
- import { NSRepeaterNSTag } from './components/NSRepeaterNSTag';
9
- import { BaseVariableSchema, StringSchema } from 'namirasoft-schema';
10
-
11
- export function App()
12
- {
13
- return (
14
- <>
15
- <NSLayout
16
- header={{
17
- right: {
18
- icons: [
19
- {
20
- onClicked: () => { },
21
- src: "https://static.namirasoft.com/image/namirasoft/access/logo/base.png",
22
- count: 2
23
- }
24
- ],
25
- title: "",
26
- }
27
- }}
28
- isLoggedIn={() => true}
29
- logo='https://static.namirasoft.com/image/namirasoft/access/logo/base.png'
30
- background={{ image: "https://static.namirasoft.com/image/namirasoft/access/background/base.svg" }}
31
- notifications={[]}
32
- notifier={{} as any}
33
- scope=''
34
- alerts={[
35
- {
36
- isVisible: () => true,
37
- title: { title: "Verify your email", description: "Please login to your profile and fill out your email address to continue. This does not take more than 2 minutes to finish." },
38
- },
39
- {
40
- isVisible: () => true,
41
- title: { title: "Verify", description: "Please login to your profile" },
42
- }
43
- ]}
44
- title={{ title: "Namirasoft Account", description: "Amir Abolhasani" }}
45
- action={{
46
- title: "Namirasoft Account",
47
- description: "asdasd",
48
- menus:
49
- {
50
- "t": [{
51
- isActive: () => true,
52
- onClick: {
53
- action: () => { },
54
- showLoading: false
55
- },
56
- menu_item: "Item",
57
- id: "Item"
58
- }],
59
- "x": [{
60
- isActive: () => true,
61
- onClick: {
62
- action: () => { },
63
- showLoading: false
64
- },
65
- menu_item: "Test",
66
- id: "Test"
67
- }]
68
- }
69
- }}
70
- >
71
- <NSTable<{ id: string, name: string }>
72
- checkbox
73
- columns={[
74
- {
75
- index: 0,
76
- name: "id",
77
- text: "ID",
78
- table: {
79
- name: "x",
80
- text: "x"
81
- },
82
- formatter: new MoneyFormatter()
83
- },
84
- {
85
- index: 1,
86
- name: "name",
87
- text: "Name",
88
- table: {
89
- name: "x",
90
- text: "x"
91
- },
92
- formatter: new MoneyFormatter()
93
- }
94
- ]}
95
- getRowKey={row => row.value.id}
96
- getRows={async (p, s, sorts) =>
97
- {
98
- console.log({ p, s, sorts });
99
- return { count: 0, rows: [] };
100
- }}
101
- name='test'
102
- />
103
- <NSBoxEntity<{ name: string }>
104
- list={async (filters, page, size) =>
105
- {
106
- await new Promise(v =>
107
- {
108
- setTimeout(() =>
109
- {
110
- v(null);
111
- }, 1000);
112
- })
113
- let count = 999;
114
- let rows = [];
115
- for (let i = 0; i < count; i++)
116
- rows.push({ name: i.toString().padStart(3, "0") });
117
- if (filters)
118
- if (filters.length === 1)
119
- rows = rows.filter(r => r.name.includes(filters[0].values[0]));
120
- count = rows.length;
121
-
122
- if (page)
123
- if (size)
124
- rows = rows.slice((page - 1) * size, page * size);
125
- return { count, rows };
126
- }
127
- }
128
- table_name=''
129
- getSort={() => null}
130
- getTitle={a => a.name}
131
- getValue={a => a.name}
132
- multiple={false}
133
- required
134
- title='Test'
135
- ></NSBoxEntity>
136
- <NSButtonBlue
137
- onClick={{
138
- action: () => { }
139
- }}
140
- title='Ok'
141
- ></NSButtonBlue>
142
- <NSBoxDynamic
143
- name='name'
144
- variable={new BaseVariableSchema("x", new StringSchema(true))}
145
- title='IPV4 Range'
146
- />
147
- <NSSection
148
- >
149
- <NSPanel
150
- >
151
- <NSFilterBox
152
- getTables={() =>
153
- {
154
- return [{
155
- name: "product",
156
- text: "Product",
157
- required: true,
158
- columns: [{
159
- id: "id",
160
- name: "id",
161
- text: "ID",
162
- type: FilterItemColumnType.String,
163
- }, {
164
- id: "name",
165
- name: "name",
166
- text: "Name",
167
- type: FilterItemColumnType.String,
168
- }, {
169
- id: "title",
170
- name: "title",
171
- text: "Title",
172
- type: FilterItemColumnType.String,
173
- }]
174
- }];
175
- }}
176
- getMoreTables={async () => []}
177
- getValues={async (_, __, value) =>
178
- {
179
- return new Promise(resolve =>
180
- {
181
- setTimeout(() =>
182
- {
183
- resolve([
184
- { value: "Amir", title: "Amir" },
185
- { value: "Negar", title: "Negar" },
186
- { value: "Ilia", title: "Ilia" },
187
- { value: "Shahab", title: "Shahab" },
188
- { value: "Ali", title: "Ali" },
189
- { value: "Hamed", title: "Hamed" },
190
- { value: "Hadi", title: "Hadi" },
191
- { value: "Leila", title: "Leila" },
192
- { value: "Sahar", title: "Sahar" },
193
- { value: "Mehrad", title: "Mehrad" },
194
- { value: "Ehsan", title: "Ehsan" }
195
- ].filter(x => x.value.includes(value)));
196
- }, 1000);
197
- })
198
- }}
199
- />
200
- <NSBoxString
201
- required
202
- title=''
203
- ></NSBoxString>
204
- </NSPanel>
205
-
206
- <NSColumn>
207
- <NSRepeaterNSTag
208
- name=''
209
- title=''
210
- required
211
- />
212
- </NSColumn>
213
- </NSSection>
214
- </NSLayout >
215
- </>
216
- );
1
+ import './App.css';
2
+ import 'bootstrap/dist/css/bootstrap.min.css';
3
+ import { NSPanel } from './components/NSPanel';
4
+ import { NSSection } from './components/NSSection';
5
+ import { NSLayout } from './components/NSLayout';
6
+ import { MoneyFormatter, NSBoxDynamic, NSBoxEntity, NSBoxString, NSButtonBlue, NSColumn, NSFilterBox, NSTable } from './main';
7
+ import { FilterItemColumnType } from 'namirasoft-core';
8
+ import { NSRepeaterNSTag } from './components/NSRepeaterNSTag';
9
+ import { BaseVariableSchema, StringSchema } from 'namirasoft-schema';
10
+
11
+ export function App()
12
+ {
13
+ return (
14
+ <>
15
+ <NSLayout
16
+ header={{
17
+ right: {
18
+ icons: [
19
+ {
20
+ onClicked: () => { },
21
+ src: "https://static.namirasoft.com/image/namirasoft/access/logo/base.png",
22
+ count: 2
23
+ }
24
+ ],
25
+ title: "",
26
+ }
27
+ }}
28
+ isLoggedIn={() => true}
29
+ logo='https://static.namirasoft.com/image/namirasoft/access/logo/base.png'
30
+ background={{ image: "https://static.namirasoft.com/image/namirasoft/access/background/base.svg" }}
31
+ notifications={[]}
32
+ notifier={{} as any}
33
+ scope=''
34
+ alerts={[
35
+ {
36
+ isVisible: () => true,
37
+ title: { title: "Verify your email", description: "Please login to your profile and fill out your email address to continue. This does not take more than 2 minutes to finish." },
38
+ },
39
+ {
40
+ isVisible: () => true,
41
+ title: { title: "Verify", description: "Please login to your profile" },
42
+ }
43
+ ]}
44
+ title={{ title: "Namirasoft Account", description: "Amir Abolhasani" }}
45
+ action={{
46
+ title: "Namirasoft Account",
47
+ description: "asdasd",
48
+ menus:
49
+ {
50
+ "t": [{
51
+ isActive: () => true,
52
+ onClick: {
53
+ action: () => { },
54
+ showLoading: false
55
+ },
56
+ menu_item: "Item",
57
+ id: "Item"
58
+ }],
59
+ "x": [{
60
+ isActive: () => true,
61
+ onClick: {
62
+ action: () => { },
63
+ showLoading: false
64
+ },
65
+ menu_item: "Test",
66
+ id: "Test"
67
+ }]
68
+ }
69
+ }}
70
+ >
71
+ <NSTable<{ id: string, name: string }>
72
+ checkbox
73
+ columns={[
74
+ {
75
+ index: 0,
76
+ name: "id",
77
+ text: "ID",
78
+ table: {
79
+ name: "x",
80
+ text: "x"
81
+ },
82
+ formatter: new MoneyFormatter()
83
+ },
84
+ {
85
+ index: 1,
86
+ name: "name",
87
+ text: "Name",
88
+ table: {
89
+ name: "x",
90
+ text: "x"
91
+ },
92
+ formatter: new MoneyFormatter()
93
+ }
94
+ ]}
95
+ getRowKey={row => row.value.id}
96
+ getRows={async (p, s, sorts) =>
97
+ {
98
+ console.log({ p, s, sorts });
99
+ return { count: 0, rows: [] };
100
+ }}
101
+ name='test'
102
+ />
103
+ <NSBoxEntity<{ name: string }>
104
+ list={async (filters, page, size) =>
105
+ {
106
+ await new Promise(v =>
107
+ {
108
+ setTimeout(() =>
109
+ {
110
+ v(null);
111
+ }, 1000);
112
+ })
113
+ let count = 999;
114
+ let rows = [];
115
+ for (let i = 0; i < count; i++)
116
+ rows.push({ name: i.toString().padStart(3, "0") });
117
+ if (filters)
118
+ if (filters.length === 1)
119
+ rows = rows.filter(r => r.name.includes(filters[0].values[0]));
120
+ count = rows.length;
121
+
122
+ if (page)
123
+ if (size)
124
+ rows = rows.slice((page - 1) * size, page * size);
125
+ return { count, rows };
126
+ }
127
+ }
128
+ table_name=''
129
+ getSort={() => null}
130
+ getTitle={a => a.name}
131
+ getValue={a => a.name}
132
+ multiple={false}
133
+ required
134
+ title='Test'
135
+ ></NSBoxEntity>
136
+ <NSButtonBlue
137
+ onClick={{
138
+ action: () => { }
139
+ }}
140
+ title='Ok'
141
+ ></NSButtonBlue>
142
+ <NSBoxDynamic
143
+ name='name'
144
+ variable={new BaseVariableSchema("x", new StringSchema(true))}
145
+ title='IPV4 Range'
146
+ />
147
+ <NSSection
148
+ >
149
+ <NSPanel
150
+ >
151
+ <NSFilterBox
152
+ getTables={() =>
153
+ {
154
+ return [{
155
+ name: "product",
156
+ text: "Product",
157
+ required: true,
158
+ columns: [{
159
+ id: "id",
160
+ name: "id",
161
+ text: "ID",
162
+ type: FilterItemColumnType.String,
163
+ }, {
164
+ id: "name",
165
+ name: "name",
166
+ text: "Name",
167
+ type: FilterItemColumnType.String,
168
+ }, {
169
+ id: "title",
170
+ name: "title",
171
+ text: "Title",
172
+ type: FilterItemColumnType.String,
173
+ }]
174
+ }];
175
+ }}
176
+ getMoreTables={async () => []}
177
+ getValues={async (_, __, value) =>
178
+ {
179
+ return new Promise(resolve =>
180
+ {
181
+ setTimeout(() =>
182
+ {
183
+ resolve([
184
+ { value: "Amir", title: "Amir" },
185
+ { value: "Negar", title: "Negar" },
186
+ { value: "Ilia", title: "Ilia" },
187
+ { value: "Shahab", title: "Shahab" },
188
+ { value: "Ali", title: "Ali" },
189
+ { value: "Hamed", title: "Hamed" },
190
+ { value: "Hadi", title: "Hadi" },
191
+ { value: "Leila", title: "Leila" },
192
+ { value: "Sahar", title: "Sahar" },
193
+ { value: "Mehrad", title: "Mehrad" },
194
+ { value: "Ehsan", title: "Ehsan" }
195
+ ].filter(x => x.value.includes(value)));
196
+ }, 1000);
197
+ })
198
+ }}
199
+ />
200
+ <NSBoxString
201
+ required
202
+ title=''
203
+ ></NSBoxString>
204
+ </NSPanel>
205
+
206
+ <NSColumn>
207
+ <NSRepeaterNSTag
208
+ name=''
209
+ title=''
210
+ required
211
+ />
212
+ </NSColumn>
213
+ </NSSection>
214
+ </NSLayout >
215
+ </>
216
+ );
217
217
  }
package/src/Color.tsx CHANGED
@@ -1,11 +1,11 @@
1
- export class Color
2
- {
3
- static getColor(percentage: number): string
4
- {
5
- if (percentage >= 75) return '#368F01';
6
- if (percentage >= 60) return ' #44B400';
7
- if (percentage >= 50) return '#56E500';
8
- if (percentage >= 25) return '#FAFF00';
9
- return 'red';
10
- }
1
+ export class Color
2
+ {
3
+ static getColor(percentage: number): string
4
+ {
5
+ if (percentage >= 75) return '#368F01';
6
+ if (percentage >= 60) return ' #44B400';
7
+ if (percentage >= 50) return '#56E500';
8
+ if (percentage >= 25) return '#FAFF00';
9
+ return 'red';
10
+ }
11
11
  }
@@ -1,7 +1,7 @@
1
- export class CopyToClipboard
2
- {
3
- static copyToClipboard(value: string): void
4
- {
5
- navigator.clipboard.writeText(value);
6
- }
1
+ export class CopyToClipboard
2
+ {
3
+ static copyToClipboard(value: string): void
4
+ {
5
+ navigator.clipboard.writeText(value);
6
+ }
7
7
  };