namirasoft-site-react 1.3.159 → 1.3.160

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.
package/dist/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":";AAAA,OAAO,WAAW,CAAC;AACnB,OAAO,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,MAAM,UAAU,GAAG;IAGlB,IAAI,KAAK,GAAG,MAAM,CAAe,IAAI,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG;QACb,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;KAClB,CAAA;IACD,IAAI,IAAI,GAAG,CAAC;YACX,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,oBAAoB;YAC7B,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,SAAS;SACjB;QACD;YACC,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,oBAAoB;YAC7B,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,MAAM;SACd;QACD;YACC,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,oBAAoB;YAC7B,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,MAAM;SACd;KACA,CAAA;IAWD,SAAS,OAAO,CAAC,GAAQ,EAAE,MAAc;QAExC,IAAI,MAAM,KAAK,OAAO,EACtB;YACC,OAAO,gBAAO,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAC,UAAU,GAAG,CAAC;SAClD;aACD;YACC,OAAQ,GAAW,CAAC,MAAM,CAAC,CAAC;SAC5B;IACF,CAAC;IACD,SAAS,OAAO,CAAC,IAAY;QAE5B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,SAAS,QAAQ,KACf,CAAC;IAEH,OAAO,CACN,8BACC,KAAC,OAAO,IACP,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,mBAAmB,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAA,CAAC,CAAC,EACxC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EACnC,SAAS,EAAE,QAAQ,EACnB,QAAQ,EAAE,CAAC,EACX,UAAU,EAAE,GAAG,EACf,OAAO,EAAE,OAAO,GACf,EACF,KAAC,aAAa,IACb,KAAK,EAAC,aAAa,EACnB,WAAW,EAAC,EAAE,EACd,QAAQ,EAAE,KAAK,GACd,IACA,CACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":";AAAA,OAAO,WAAW,CAAC;AACnB,OAAO,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,MAAM,UAAU,GAAG;IAGlB,IAAI,KAAK,GAAG,MAAM,CAAe,IAAI,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG;QACb,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;KAClB,CAAA;IACD,IAAI,IAAI,GAAG,CAAC;YACX,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,oBAAoB;YAC7B,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,SAAS;SACjB;QACD;YACC,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,oBAAoB;YAC7B,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,MAAM;SACd;QACD;YACC,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,oBAAoB;YAC7B,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,MAAM;SACd;KACA,CAAA;IAWD,SAAS,OAAO,CAAC,GAAQ,EAAE,MAAc;QAExC,IAAI,MAAM,KAAK,OAAO,EACtB;YACC,OAAO,gBAAO,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAC,UAAU,GAAG,CAAC;SAClD;aACD;YACC,OAAQ,GAAW,CAAC,MAAM,CAAC,CAAC;SAC5B;IACF,CAAC;IACD,SAAS,OAAO,CAAC,IAAY;QAE5B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,SAAS,QAAQ,KACf,CAAC;IACH,OAAO,CACN,8BACC,KAAC,OAAO,IACP,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,mBAAmB,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAA,CAAC,CAAC,EACxC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EACnC,SAAS,EAAE,QAAQ,EACnB,QAAQ,EAAE,CAAC,EACX,UAAU,EAAE,GAAG,EACf,OAAO,EAAE,OAAO,GACf,EACF,KAAC,aAAa,IACb,KAAK,EAAC,aAAa,EACnB,WAAW,EAAC,EAAE,EACd,QAAQ,EAAE,KAAK,GACd,IACA,CACH,CAAC;AACH,CAAC"}
@@ -1,13 +1,25 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState } from 'react';
2
+ import { useState, useEffect, useRef } from 'react';
3
3
  import { NSButtonBlue } from '../main';
4
4
  import Styles from './NSActionMenu.module.css';
5
5
  export function NSActionMenu(props) {
6
6
  const [state, setState] = useState({
7
7
  isShow: false
8
8
  });
9
+ const menuRef = useRef(null);
10
+ useEffect(() => {
11
+ function handleClickOutside(event) {
12
+ if (menuRef.current && !menuRef.current.contains(event.target)) {
13
+ setState({ isShow: false });
14
+ }
15
+ }
16
+ document.addEventListener('mousedown', handleClickOutside);
17
+ return () => {
18
+ document.removeEventListener('mousedown', handleClickOutside);
19
+ };
20
+ }, [menuRef]);
9
21
  return (_jsx(_Fragment, { children: props.items.length >= 1 ?
10
- _jsxs("div", { className: Styles.ns_action_bar, children: [_jsxs("button", { onClick: () => setState((prevState) => (Object.assign(Object.assign({}, prevState), { isShow: !state.isShow }))), children: ["Action Menu", _jsx("img", { className: Styles.ns_action_menu_icon, src: "https://static.namirasoft.com/image/concept/ellipsis/vertical-blue.png", alt: "Icon", width: 8, height: 24 })] }), _jsx("ul", { className: `${Styles.ns_action_item_holder} ${state.isShow ? Styles.ns_show : Styles.ns_hide} `, children: props.items.map((item) => _jsx("li", { onClick: item.handler, className: `${Styles.ns_action_item}
22
+ _jsxs("div", { className: Styles.ns_action_bar, ref: menuRef, children: [_jsxs("button", { onClick: () => setState((prevState) => (Object.assign(Object.assign({}, prevState), { isShow: !state.isShow }))), children: ["Action Menu", _jsx("img", { className: Styles.ns_action_menu_icon, src: "https://static.namirasoft.com/image/concept/ellipsis/vertical-blue.png", alt: "Icon", width: 8, height: 24 })] }), _jsx("ul", { className: `${Styles.ns_action_item_holder} ${state.isShow ? Styles.ns_show : Styles.ns_hide} `, children: props.items.map((item) => _jsx("li", { onClick: item.handler, className: `${Styles.ns_action_item}
11
23
  ${item.isActive() ? Styles.ns_active_item : Styles.ns_deActive_item}
12
24
  `, children: item.menu_item }, item.id)) })] })
13
25
  :
@@ -1 +1 @@
1
- {"version":3,"file":"NSActionMenu.js","sourceRoot":"","sources":["../../src/components/NSActionMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAuB,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAkB/C,MAAM,UAAU,YAAY,CAAC,KAAyB;IAErD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB;QACtD,MAAM,EAAE,KAAK;KACb,CAAC,CAAA;IACF,OAAO,CACN,4BACE,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAEzB,eAAK,SAAS,EAAE,MAAM,CAAC,aAAa,aACnC,kBAAQ,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,iCAC3C,SAAS,KAAE,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,IAClC,CAAC,4BAEF,cACC,SAAS,EAAE,MAAM,CAAC,mBAAmB,EACrC,GAAG,EAAC,wEAAwE,EAC5E,GAAG,EAAC,MAAM,EACV,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,EAAE,GACT,IACM,EACT,aAAI,SAAS,EAAE,GAAG,MAAM,CAAC,qBAAqB,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,YACjG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACzB,aAEC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAE,GAAG,MAAM,CAAC,cAAc;UACjC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB;SAClE,YAEA,IAAI,CAAC,SAAS,IANV,IAAI,CAAC,EAAE,CAOR,CACL,GACG,IACA;YACN,CAAC;gBACD,4BACC,KAAC,YAAY,IACZ,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAC/B,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,GAC9B,GACA,GAEF,CACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"NSActionMenu.js","sourceRoot":"","sources":["../../src/components/NSActionMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAuB,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAkB/C,MAAM,UAAU,YAAY,CAAC,KAAyB;IAErD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB;QACtD,MAAM,EAAE,KAAK;KACb,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,SAAS,CAAC,GAAG,EAAE;QAEd,SAAS,kBAAkB,CAAC,KAAiB;YAE5C,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EACtE;gBACC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;aAC5B;QACF,CAAC;QAED,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAC3D,OAAO,GAAG,EAAE;YAEX,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAC/D,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,CACN,4BACE,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YACzB,eAAK,SAAS,EAAE,MAAM,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,aACjD,kBAAQ,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,iCAC3C,SAAS,KAAE,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,IAClC,CAAC,4BAEF,cACC,SAAS,EAAE,MAAM,CAAC,mBAAmB,EACrC,GAAG,EAAC,wEAAwE,EAC5E,GAAG,EAAC,MAAM,EACV,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,EAAE,GACT,IACM,EACT,aAAI,SAAS,EAAE,GAAG,MAAM,CAAC,qBAAqB,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,YACjG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACzB,aAEC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAE,GAAG,MAAM,CAAC,cAAc;UACjC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB;SAClE,YAEA,IAAI,CAAC,SAAS,IANV,IAAI,CAAC,EAAE,CAOR,CACL,GACG,IACA;YACN,CAAC;gBACD,4BACC,KAAC,YAAY,IACZ,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAC/B,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,GAC9B,GACA,GAEF,CACH,CAAC;AACH,CAAC"}
@@ -95,7 +95,9 @@
95
95
  border: 0;
96
96
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
97
97
  }
98
-
98
+ .ns_navbar_first_level_item {
99
+ color: #fff;
100
+ }
99
101
  @media (max-width: 768px) {
100
102
  .ns_navbar_elements ul li:not(:last-child) {
101
103
  margin-right: 30px;
@@ -112,6 +114,7 @@
112
114
  border-bottom: 0.5px solid transparent;
113
115
  border-image: linear-gradient(90deg, #ffffff00 0%, rgb(0, 0, 0, 40%), #ffffff00 100%);
114
116
  border-image-slice: 1;
117
+
115
118
  }
116
119
 
117
120
  .ns_navbar_menu_icon {
@@ -155,6 +158,11 @@
155
158
  transform: translate3d(0px, 0, 0px) !important;
156
159
  position: relative !important;
157
160
  }
161
+
162
+ .ns_navbar_second_level_item {
163
+ color: #fff !important;
164
+
165
+ }
158
166
  }
159
167
 
160
168
  .ns_navbar_parent_content {
@@ -204,9 +212,7 @@
204
212
  padding: 10px;
205
213
  }
206
214
 
207
- .ns_navbar_first_level_item {
208
- color: #fff;
209
- }
215
+
210
216
 
211
217
  .ns_navbar_second_level_item {
212
218
  color: #000 !important;
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.3.159",
11
+ "version": "1.3.160",
12
12
  "author": "Amir Abolhasani, Alireza Esmaeeli, Sepideh Mazloumi, Hooman Shashaeh",
13
13
  "license": "MIT",
14
14
  "main": "./dist/main.js",
package/src/App.tsx CHANGED
@@ -67,7 +67,6 @@ export function App()
67
67
  }
68
68
  function onChange(): void
69
69
  { }
70
-
71
70
  return (
72
71
  <>
73
72
  <NSTable
@@ -1,4 +1,4 @@
1
- import { useState } from 'react';
1
+ import { useState, useEffect, useRef } from 'react';
2
2
  import { IBaseComponentProps, NSButtonBlue } from '../main';
3
3
  import Styles from './NSActionMenu.module.css';
4
4
 
@@ -22,12 +22,31 @@ export function NSActionMenu(props: INSActionMenuProps)
22
22
  {
23
23
  const [state, setState] = useState<INSActionMenuState>({
24
24
  isShow: false
25
- })
25
+ });
26
+
27
+ const menuRef = useRef<HTMLDivElement>(null);
28
+
29
+ useEffect(() =>
30
+ {
31
+ function handleClickOutside(event: MouseEvent)
32
+ {
33
+ if (menuRef.current && !menuRef.current.contains(event.target as Node))
34
+ {
35
+ setState({ isShow: false });
36
+ }
37
+ }
38
+
39
+ document.addEventListener('mousedown', handleClickOutside);
40
+ return () =>
41
+ {
42
+ document.removeEventListener('mousedown', handleClickOutside);
43
+ };
44
+ }, [menuRef]);
45
+
26
46
  return (
27
47
  <>
28
48
  {props.items.length >= 1 ?
29
-
30
- <div className={Styles.ns_action_bar}>
49
+ <div className={Styles.ns_action_bar} ref={menuRef}>
31
50
  <button onClick={() => setState((prevState) => ({
32
51
  ...prevState, isShow: !state.isShow
33
52
  }))}>
@@ -95,7 +95,9 @@
95
95
  border: 0;
96
96
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
97
97
  }
98
-
98
+ .ns_navbar_first_level_item {
99
+ color: #fff;
100
+ }
99
101
  @media (max-width: 768px) {
100
102
  .ns_navbar_elements ul li:not(:last-child) {
101
103
  margin-right: 30px;
@@ -112,6 +114,7 @@
112
114
  border-bottom: 0.5px solid transparent;
113
115
  border-image: linear-gradient(90deg, #ffffff00 0%, rgb(0, 0, 0, 40%), #ffffff00 100%);
114
116
  border-image-slice: 1;
117
+
115
118
  }
116
119
 
117
120
  .ns_navbar_menu_icon {
@@ -155,6 +158,11 @@
155
158
  transform: translate3d(0px, 0, 0px) !important;
156
159
  position: relative !important;
157
160
  }
161
+
162
+ .ns_navbar_second_level_item {
163
+ color: #fff !important;
164
+
165
+ }
158
166
  }
159
167
 
160
168
  .ns_navbar_parent_content {
@@ -204,9 +212,7 @@
204
212
  padding: 10px;
205
213
  }
206
214
 
207
- .ns_navbar_first_level_item {
208
- color: #fff;
209
- }
215
+
210
216
 
211
217
  .ns_navbar_second_level_item {
212
218
  color: #000 !important;