@licklist/design 0.78.20 → 0.78.25

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 (193) hide show
  1. package/dist/assets/Trend-Down.svg +3 -0
  2. package/dist/assets/Trend-Up.svg +3 -0
  3. package/dist/auth/Authorizer.d.ts.map +1 -1
  4. package/dist/auth/Authorizer.js +47 -12
  5. package/dist/auth/Layout/UserNavDropDown.js +1 -1
  6. package/dist/auth/Login/LoginComponent.d.ts.map +1 -1
  7. package/dist/auth/Login/LoginComponent.js +8 -6
  8. package/dist/auth/Logout/Logout.js +1 -1
  9. package/dist/index.d.ts +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +5 -0
  12. package/dist/v2/components/EntityHeader/EntityHeader.d.ts +13 -0
  13. package/dist/v2/components/EntityHeader/EntityHeader.d.ts.map +1 -0
  14. package/dist/v2/components/EntityHeader/EntityHeader.js +85 -0
  15. package/dist/v2/components/EntityHeader/EntityHeader.scss.js +6 -0
  16. package/dist/v2/components/EntityHeader/index.d.ts +2 -0
  17. package/dist/v2/components/EntityHeader/index.d.ts.map +1 -0
  18. package/dist/v2/components/NPSScore/NPSScore.d.ts +18 -0
  19. package/dist/v2/components/NPSScore/NPSScore.d.ts.map +1 -0
  20. package/dist/v2/components/NPSScore/index.d.ts +3 -0
  21. package/dist/v2/components/NPSScore/index.d.ts.map +1 -0
  22. package/dist/v2/components/Select/Select.d.ts +10 -0
  23. package/dist/v2/components/Select/Select.d.ts.map +1 -0
  24. package/dist/v2/components/Select/index.d.ts +3 -0
  25. package/dist/v2/components/Select/index.d.ts.map +1 -0
  26. package/dist/v2/components/Tooltip/Tooltip.d.ts +21 -0
  27. package/dist/v2/components/Tooltip/Tooltip.d.ts.map +1 -0
  28. package/dist/v2/components/Tooltip/Tooltip.js +103 -0
  29. package/dist/v2/components/Tooltip/Tooltip.scss.js +6 -0
  30. package/dist/v2/components/Tooltip/index.d.ts +2 -0
  31. package/dist/v2/components/Tooltip/index.d.ts.map +1 -0
  32. package/dist/v2/components/UserAvatar/UserAvatar.d.ts +12 -0
  33. package/dist/v2/components/UserAvatar/UserAvatar.d.ts.map +1 -0
  34. package/dist/v2/components/UserAvatar/UserAvatar.js +77 -0
  35. package/dist/v2/components/UserAvatar/UserAvatar.scss.js +6 -0
  36. package/dist/v2/components/UserAvatar/index.d.ts +2 -0
  37. package/dist/v2/components/UserAvatar/index.d.ts.map +1 -0
  38. package/dist/v2/components/UserPanel/UserPanel.d.ts +17 -0
  39. package/dist/v2/components/UserPanel/UserPanel.d.ts.map +1 -0
  40. package/dist/v2/components/UserPanel/UserPanel.js +168 -0
  41. package/dist/v2/components/UserPanel/UserPanel.scss.js +6 -0
  42. package/dist/v2/components/UserPanel/index.d.ts +3 -0
  43. package/dist/v2/components/UserPanel/index.d.ts.map +1 -0
  44. package/dist/v2/dashboard-analytics/blog-posts/Blog.d.ts +15 -0
  45. package/dist/v2/dashboard-analytics/blog-posts/Blog.d.ts.map +1 -0
  46. package/dist/v2/dashboard-analytics/blog-posts/index.d.ts +3 -0
  47. package/dist/v2/dashboard-analytics/blog-posts/index.d.ts.map +1 -0
  48. package/dist/v2/dashboard-analytics/chart/Chart.d.ts +21 -0
  49. package/dist/v2/dashboard-analytics/chart/Chart.d.ts.map +1 -0
  50. package/dist/v2/dashboard-analytics/chart/index.d.ts +3 -0
  51. package/dist/v2/dashboard-analytics/chart/index.d.ts.map +1 -0
  52. package/dist/v2/dashboard-analytics/dashboard/Dashboard.d.ts +57 -0
  53. package/dist/v2/dashboard-analytics/dashboard/Dashboard.d.ts.map +1 -0
  54. package/dist/v2/dashboard-analytics/dashboard/index.d.ts +3 -0
  55. package/dist/v2/dashboard-analytics/dashboard/index.d.ts.map +1 -0
  56. package/dist/v2/dashboard-analytics/index.d.ts +13 -0
  57. package/dist/v2/dashboard-analytics/index.d.ts.map +1 -0
  58. package/dist/v2/dashboard-analytics/metric-card/MetricCard.d.ts +17 -0
  59. package/dist/v2/dashboard-analytics/metric-card/MetricCard.d.ts.map +1 -0
  60. package/dist/v2/dashboard-analytics/metric-card/index.d.ts +3 -0
  61. package/dist/v2/dashboard-analytics/metric-card/index.d.ts.map +1 -0
  62. package/dist/v2/dashboard-analytics/venue-card/VenueCard.d.ts +12 -0
  63. package/dist/v2/dashboard-analytics/venue-card/VenueCard.d.ts.map +1 -0
  64. package/dist/v2/dashboard-analytics/venue-card/index.d.ts +3 -0
  65. package/dist/v2/dashboard-analytics/venue-card/index.d.ts.map +1 -0
  66. package/dist/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.d.ts +25 -0
  67. package/dist/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.d.ts.map +1 -0
  68. package/dist/v2/dashboard-analytics/venue-closed-card/index.d.ts +3 -0
  69. package/dist/v2/dashboard-analytics/venue-closed-card/index.d.ts.map +1 -0
  70. package/dist/v2/index.d.ts +11 -5
  71. package/dist/v2/index.d.ts.map +1 -1
  72. package/dist/v2/navigation/DashboardLayout/AdminSidebar.d.ts +10 -0
  73. package/dist/v2/navigation/DashboardLayout/AdminSidebar.d.ts.map +1 -0
  74. package/dist/v2/navigation/DashboardLayout/AdminSidebar.js +296 -0
  75. package/dist/v2/navigation/DashboardLayout/AdminSidebar.scss.js +6 -0
  76. package/dist/v2/navigation/DashboardLayout/DashboardFooter.d.ts +7 -0
  77. package/dist/v2/navigation/DashboardLayout/DashboardFooter.d.ts.map +1 -0
  78. package/dist/v2/navigation/DashboardLayout/DashboardFooter.js +34 -0
  79. package/dist/v2/navigation/DashboardLayout/DashboardFooter.scss.js +6 -0
  80. package/dist/v2/navigation/DashboardLayout/DashboardLayout.d.ts +42 -0
  81. package/dist/v2/navigation/DashboardLayout/DashboardLayout.d.ts.map +1 -0
  82. package/dist/v2/navigation/DashboardLayout/DashboardLayout.js +154 -0
  83. package/dist/v2/navigation/DashboardLayout/DashboardLayout.scss.js +6 -0
  84. package/dist/v2/navigation/DashboardLayout/ProviderSidebar.d.ts +35 -0
  85. package/dist/v2/navigation/DashboardLayout/ProviderSidebar.d.ts.map +1 -0
  86. package/dist/v2/navigation/DashboardLayout/ProviderSidebar.js +344 -0
  87. package/dist/v2/navigation/DashboardLayout/ProviderSidebar.scss.js +6 -0
  88. package/dist/v2/navigation/DashboardLayout/TopNavigation.d.ts +26 -0
  89. package/dist/v2/navigation/DashboardLayout/TopNavigation.d.ts.map +1 -0
  90. package/dist/v2/navigation/DashboardLayout/TopNavigation.js +468 -0
  91. package/dist/v2/navigation/DashboardLayout/TopNavigation.scss.js +6 -0
  92. package/dist/v2/navigation/DashboardLayout/assets/AdminLogo.png.js +3 -0
  93. package/dist/v2/navigation/DashboardLayout/assets/BookedLogo_Mark.png.js +3 -0
  94. package/dist/v2/navigation/DashboardLayout/index.d.ts +7 -0
  95. package/dist/v2/navigation/DashboardLayout/index.d.ts.map +1 -0
  96. package/package.json +7 -5
  97. package/src/assets/Trend-Down.svg +3 -0
  98. package/src/assets/Trend-Up.svg +3 -0
  99. package/src/auth/Authorizer.tsx +49 -20
  100. package/src/auth/Layout/UserNavDropDown.tsx +1 -1
  101. package/src/auth/Login/LoginComponent.tsx +7 -5
  102. package/src/auth/Logout/Logout.tsx +1 -1
  103. package/src/index.ts +2 -1
  104. package/src/v2/components/EntityHeader/EntityHeader.scss +133 -0
  105. package/src/v2/components/EntityHeader/EntityHeader.stories.tsx +103 -0
  106. package/src/v2/components/EntityHeader/EntityHeader.tsx +76 -0
  107. package/src/v2/components/EntityHeader/index.ts +1 -0
  108. package/src/v2/components/NPSScore/NPSScore.scss +330 -0
  109. package/src/v2/components/NPSScore/NPSScore.stories.tsx +29 -0
  110. package/src/v2/components/NPSScore/NPSScore.tsx +209 -0
  111. package/src/v2/components/NPSScore/index.ts +2 -0
  112. package/src/v2/components/Select/Select.scss +188 -0
  113. package/src/v2/components/Select/Select.stories.tsx +164 -0
  114. package/src/v2/components/Select/Select.tsx +56 -0
  115. package/src/v2/components/Select/index.ts +2 -0
  116. package/src/v2/components/Tooltip/Tooltip.scss +92 -0
  117. package/src/v2/components/Tooltip/Tooltip.stories.tsx +164 -0
  118. package/src/v2/components/Tooltip/Tooltip.tsx +64 -0
  119. package/src/v2/components/Tooltip/index.ts +8 -0
  120. package/src/v2/components/UserAvatar/UserAvatar.scss +62 -0
  121. package/src/v2/components/UserAvatar/UserAvatar.stories.tsx +94 -0
  122. package/src/v2/components/UserAvatar/UserAvatar.tsx +96 -0
  123. package/src/v2/components/UserAvatar/index.ts +1 -0
  124. package/src/v2/components/UserPanel/UserPanel.scss +195 -0
  125. package/src/v2/components/UserPanel/UserPanel.stories.tsx +66 -0
  126. package/src/v2/components/UserPanel/UserPanel.tsx +132 -0
  127. package/src/v2/components/UserPanel/index.ts +2 -0
  128. package/src/v2/dashboard-analytics/blog-posts/Blog.scss +92 -0
  129. package/src/v2/dashboard-analytics/blog-posts/Blog.stories.tsx +57 -0
  130. package/src/v2/dashboard-analytics/blog-posts/Blog.tsx +91 -0
  131. package/src/v2/dashboard-analytics/blog-posts/index.ts +2 -0
  132. package/src/v2/dashboard-analytics/chart/Chart.scss +424 -0
  133. package/src/v2/dashboard-analytics/chart/Chart.stories.tsx +157 -0
  134. package/src/v2/dashboard-analytics/chart/Chart.tsx +623 -0
  135. package/src/v2/dashboard-analytics/chart/index.ts +2 -0
  136. package/src/v2/dashboard-analytics/dashboard/Dashboard.scss +254 -0
  137. package/src/v2/dashboard-analytics/dashboard/Dashboard.stories.tsx +298 -0
  138. package/src/v2/dashboard-analytics/dashboard/Dashboard.tsx +248 -0
  139. package/src/v2/dashboard-analytics/dashboard/index.ts +2 -0
  140. package/src/v2/dashboard-analytics/index.ts +12 -0
  141. package/src/v2/dashboard-analytics/metric-card/MetricCard.scss +125 -0
  142. package/src/v2/dashboard-analytics/metric-card/MetricCard.stories.tsx +106 -0
  143. package/src/v2/dashboard-analytics/metric-card/MetricCard.tsx +72 -0
  144. package/src/v2/dashboard-analytics/metric-card/index.ts +2 -0
  145. package/src/v2/dashboard-analytics/venue-card/VenueCard.scss +112 -0
  146. package/src/v2/dashboard-analytics/venue-card/VenueCard.stories.tsx +40 -0
  147. package/src/v2/dashboard-analytics/venue-card/VenueCard.tsx +62 -0
  148. package/src/v2/dashboard-analytics/venue-card/index.ts +2 -0
  149. package/src/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.scss +129 -0
  150. package/src/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.stories.tsx +31 -0
  151. package/src/v2/dashboard-analytics/venue-closed-card/VenueClosedCard.tsx +61 -0
  152. package/src/v2/dashboard-analytics/venue-closed-card/index.ts +2 -0
  153. package/src/v2/design-system/colors/ColorSystem.scss +439 -0
  154. package/src/v2/design-system/colors/ColorSystem.stories.tsx +730 -0
  155. package/src/v2/design-system/typography/Typography.scss +295 -0
  156. package/src/v2/design-system/typography/Typography.stories.tsx +109 -0
  157. package/src/v2/index.ts +43 -7
  158. package/src/v2/navigation/DashboardLayout/AdminSidebar.scss +207 -0
  159. package/src/v2/navigation/DashboardLayout/AdminSidebar.tsx +171 -0
  160. package/src/v2/navigation/DashboardLayout/DashboardFooter.scss +30 -0
  161. package/src/v2/navigation/DashboardLayout/DashboardFooter.tsx +25 -0
  162. package/src/v2/navigation/DashboardLayout/DashboardLayout.scss +91 -0
  163. package/src/v2/navigation/DashboardLayout/DashboardLayout.stories.tsx +370 -0
  164. package/src/v2/navigation/DashboardLayout/DashboardLayout.tsx +215 -0
  165. package/src/v2/navigation/DashboardLayout/ProviderSidebar.scss +266 -0
  166. package/src/v2/navigation/DashboardLayout/ProviderSidebar.tsx +252 -0
  167. package/src/v2/navigation/DashboardLayout/Sidebar.stories.tsx +220 -0
  168. package/src/v2/navigation/DashboardLayout/TopNavigation.scss +206 -0
  169. package/src/v2/navigation/DashboardLayout/TopNavigation.tsx +270 -0
  170. package/src/v2/navigation/DashboardLayout/assets/AdminLogo.png +0 -0
  171. package/src/v2/navigation/DashboardLayout/assets/BookedLogo_Mark.png +0 -0
  172. package/src/v2/navigation/DashboardLayout/index.ts +20 -0
  173. package/src/v2/styles/index.scss +0 -1
  174. package/src/v2/styles/tokens/_colors.scss +531 -98
  175. package/dist/v2/components/Colors/Colors.d.ts +0 -21
  176. package/dist/v2/components/Colors/Colors.d.ts.map +0 -1
  177. package/dist/v2/components/Colors/index.d.ts +0 -3
  178. package/dist/v2/components/Colors/index.d.ts.map +0 -1
  179. package/dist/v2/components/Typography/Typography.d.ts +0 -11
  180. package/dist/v2/components/Typography/Typography.d.ts.map +0 -1
  181. package/dist/v2/components/Typography/index.d.ts +0 -3
  182. package/dist/v2/components/Typography/index.d.ts.map +0 -1
  183. package/src/v2/components/Colors/Colors.scss +0 -64
  184. package/src/v2/components/Colors/Colors.stories.tsx +0 -143
  185. package/src/v2/components/Colors/Colors.tsx +0 -51
  186. package/src/v2/components/Colors/ColorsAliases.stories.tsx +0 -285
  187. package/src/v2/components/Colors/Sizes.stories.tsx +0 -141
  188. package/src/v2/components/Colors/index.ts +0 -2
  189. package/src/v2/components/Typography/Typography.scss +0 -72
  190. package/src/v2/components/Typography/Typography.stories.tsx +0 -266
  191. package/src/v2/components/Typography/Typography.tsx +0 -56
  192. package/src/v2/components/Typography/index.ts +0 -2
  193. package/src/v2/styles/tokens/_aliases.scss +0 -199
@@ -0,0 +1,3 @@
1
+ <svg width="16" height="16" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M27 23V16H25V19.4375L15.7686 8.35938C15.5453 8.0916 15.1984 7.95968 14.8535 8.01074C14.5086 8.06191 14.215 8.2892 14.0791 8.61035L9.30176 19.9014L5.33203 13.9453L3.66797 15.0547L8.66797 22.5547L8.75098 22.6631C8.96072 22.9001 9.2733 23.0253 9.59375 22.9951C9.95991 22.9606 10.2776 22.7284 10.4209 22.3896L15.2812 10.9014L23.6973 21H19V23H27Z" fill="currentColor"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="16" height="16" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M27 9.99982V16.9998H25V13.5623L15.7686 24.6404C15.5453 24.9082 15.1984 25.0401 14.8535 24.9891C14.5086 24.9379 14.215 24.7106 14.0791 24.3895L9.06934 12.5486L4.58789 15.8084L3.41211 14.1912L8.91211 10.1912L9.00781 10.1297C9.23732 9.99988 9.51055 9.9646 9.76758 10.0359C10.0615 10.1176 10.302 10.3293 10.4209 10.6102L15.2812 22.0984L23.6973 11.9998H19V9.99982H27Z" fill="currentColor"/>
3
+ </svg>
@@ -1 +1 @@
1
- {"version":3,"file":"Authorizer.d.ts","sourceRoot":"","sources":["../../src/auth/Authorizer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoC,MAAM,OAAO,CAAA;AASnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;CACnC;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,eAAe,2CAiFzC;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"Authorizer.d.ts","sourceRoot":"","sources":["../../src/auth/Authorizer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAwD,MAAM,OAAO,CAAA;AAYvF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;CACnC;AAID,iBAAS,UAAU,CAAC,KAAK,EAAE,eAAe,2CAyGzC;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -1,11 +1,13 @@
1
1
  import { jsx, Fragment } from 'react/jsx-runtime';
2
- import { useState, useCallback, useEffect } from 'react';
3
- import { useLocation, matchPath } from 'react-router-dom';
2
+ import { useContext, useRef, useState, useCallback, useEffect } from 'react';
3
+ import { useLocation, useNavigate, matchPath } from 'react-router-dom';
4
4
  import useUser from '@licklist/plugins/dist/context/user/hooks/useUser';
5
5
  import { MATCH_ROUTE_PATTERNS, ROUTES } from '@licklist/core/dist/Config';
6
6
  import useAuthApi from '@licklist/plugins/dist/hooks/Api/useAuthApi';
7
7
  import useAuth from '@licklist/plugins/dist/context/user/hooks/useAuth';
8
8
  import RouteService from '@licklist/plugins/dist/services/Route/RouteService';
9
+ import StorageContext from '@licklist/plugins/dist/context/app/StorageContext';
10
+ import JsonService from '@licklist/plugins/dist/services/Json/JsonService';
9
11
  import { BlockLoader } from '../static/loader/BlockLoader.js';
10
12
 
11
13
  function _array_like_to_array(arr, len) {
@@ -66,12 +68,16 @@ function _unsupported_iterable_to_array(o, minLen) {
66
68
  if (n === "Map" || n === "Set") return Array.from(n);
67
69
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
68
70
  }
71
+ var AUTH_CONTEXT_KEY = 'auth';
69
72
  function Authorizer(props) {
70
73
  var children = props.children;
71
74
  var auth = useAuth();
72
75
  var user = useUser();
73
76
  var useProfile = useAuthApi().useProfile;
77
+ var storage = useContext(StorageContext);
78
+ var isLoggingOut = useRef(false);
74
79
  var pathname = useLocation().pathname;
80
+ var navigate = useNavigate();
75
81
  // This will re-fetch user's profile
76
82
  var profile = useProfile();
77
83
  var _useState = _sliced_to_array(useState(false), 2), isValidated = _useState[0], setIsValidated = _useState[1];
@@ -84,6 +90,32 @@ function Authorizer(props) {
84
90
  return matched.pathname;
85
91
  });
86
92
  }, []);
93
+ // Check auth on every route change - if storage was cleared, logout immediately
94
+ useEffect(function() {
95
+ if (isLoggingOut.current) return;
96
+ var storedAuth = storage.get(AUTH_CONTEXT_KEY);
97
+ var parsedAuth = storedAuth ? JsonService.decode(storedAuth) : null;
98
+ // If we have auth in memory but not in storage, session was cleared
99
+ if (auth.secrets !== null && !parsedAuth) {
100
+ isLoggingOut.current = true;
101
+ auth.setSecrets(null);
102
+ user.setProfile(null);
103
+ var route = RouteService.getCurrentRoute();
104
+ navigate([
105
+ ROUTES.LOGIN_PAGE,
106
+ "returnUrl=".concat(escape(route))
107
+ ].join('?'), {
108
+ replace: true
109
+ });
110
+ }
111
+ }, [
112
+ pathname,
113
+ auth.secrets,
114
+ storage,
115
+ navigate,
116
+ auth,
117
+ user
118
+ ]);
87
119
  useEffect(function() {
88
120
  if (profile.isLoading || profile.isFetching) {
89
121
  return;
@@ -94,7 +126,7 @@ function Authorizer(props) {
94
126
  });
95
127
  return;
96
128
  }
97
- if ([
129
+ var publicRoutes = [
98
130
  ROUTES.LOGIN_PAGE,
99
131
  ROUTES.REGISTER_PAGE,
100
132
  ROUTES.PRIVACY_PAGE,
@@ -104,26 +136,29 @@ function Authorizer(props) {
104
136
  ROUTES.FORGOT_PASSWORD,
105
137
  ROUTES.SSO_LOGIN,
106
138
  ROUTES.MAINTENANCE_PAGE
107
- ].concat(_to_consumable_array(matchedPathPatternUrls())).includes(pathname)) {
108
- setIsValidated(function() {
109
- return true;
110
- });
139
+ ].concat(_to_consumable_array(matchedPathPatternUrls()));
140
+ // If we're on a public route (e.g. /login), mark as validated and never redirect
141
+ if (publicRoutes.includes(pathname)) {
142
+ setIsValidated(true);
111
143
  return;
112
144
  }
113
145
  var route = RouteService.getCurrentRoute();
114
- RouteService.redirectTo([
115
- ROUTES.MAINTENANCE_PAGE,
146
+ navigate([
147
+ ROUTES.LOGIN_PAGE,
116
148
  "returnUrl=".concat(escape(route))
117
- ].join('?'));
149
+ ].join('?'), {
150
+ replace: true
151
+ });
118
152
  }, [
119
153
  auth.secrets,
120
154
  user.profile,
121
155
  profile.data,
122
- matchedPathPatternUrls,
123
156
  profile.isError,
124
157
  profile.isLoading,
125
158
  profile.isFetching,
126
- pathname
159
+ pathname,
160
+ matchedPathPatternUrls,
161
+ navigate
127
162
  ]);
128
163
  if (profile.isFetching || profile.isLoading || !isValidated) return /*#__PURE__*/ jsx(BlockLoader, {});
129
164
  return /*#__PURE__*/ jsx(Fragment, {
@@ -10,7 +10,7 @@ function UserNavDropDown() {
10
10
  var navigate = useNavigate();
11
11
  var onLogoutHandler = function() {
12
12
  user.logout();
13
- navigate('/');
13
+ navigate('/login');
14
14
  };
15
15
  return /*#__PURE__*/ jsx(Dropdown.Item, {
16
16
  eventKey: "1",
@@ -1 +1 @@
1
- {"version":3,"file":"LoginComponent.d.ts","sourceRoot":"","sources":["../../../src/auth/Login/LoginComponent.tsx"],"names":[],"mappings":"AAqBA,KAAK,mBAAmB,GAAG;IACzB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,QAAA,MAAM,cAAc,GAAI,sCAGrB,mBAAmB,4CAgHrB,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"LoginComponent.d.ts","sourceRoot":"","sources":["../../../src/auth/Login/LoginComponent.tsx"],"names":[],"mappings":"AAqBA,KAAK,mBAAmB,GAAG;IACzB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,QAAA,MAAM,cAAc,GAAI,sCAGrB,mBAAmB,4CAkHrB,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -6,7 +6,7 @@ import { useTranslation, Trans } from 'react-i18next';
6
6
  import { useNavigate, Link } from 'react-router-dom';
7
7
  import RequestContext from '@licklist/plugins/dist/context/app/RequestContext';
8
8
  import useUserApi from '@licklist/plugins/dist/hooks/Api/useUserApi';
9
- import useNotification from '@licklist/plugins/dist/context/app/hooks/useNotification';
9
+ import useAlert from '@licklist/plugins/dist/context/app/hooks/useAlert';
10
10
  import useAuth from '@licklist/plugins/dist/context/user/hooks/useAuth';
11
11
  import useUser from '@licklist/plugins/dist/context/user/hooks/useUser';
12
12
  import useInvite from '@licklist/plugins/dist/context/user/hooks/useInvite';
@@ -194,7 +194,7 @@ var LoginComponent = function(param) {
194
194
  'User'
195
195
  ]).t;
196
196
  var request = useContext(RequestContext);
197
- var notification = useNotification();
197
+ var showAlert = useAlert().showAlert;
198
198
  var auth = useAuth();
199
199
  var user = useUser();
200
200
  var invite = useInvite();
@@ -202,9 +202,10 @@ var LoginComponent = function(param) {
202
202
  var _useState = _sliced_to_array(useState(false), 2), isLoading = _useState[0], setIsLoading = _useState[1];
203
203
  var userApiService = useUserApi(request);
204
204
  var handleError = function(error) {
205
- notification.danger({
206
- title: 'Error',
207
- message: error.message
205
+ showAlert({
206
+ type: 'error',
207
+ message: error.message,
208
+ mount: 'container'
208
209
  });
209
210
  };
210
211
  var storeSecrets = function(secrets) {
@@ -271,7 +272,8 @@ var LoginComponent = function(param) {
271
272
  // Store user profile
272
273
  user.login(profile.data);
273
274
  invite.clearInvitation();
274
- notification.success({
275
+ showAlert({
276
+ type: 'success',
275
277
  title: 'Success',
276
278
  message: t('Notification:loggedSuccessfully')
277
279
  });
@@ -14,7 +14,7 @@ var Logout = function() {
14
14
  var navigate = useNavigate();
15
15
  useEffect(function() {
16
16
  user.logout();
17
- navigate('/');
17
+ navigate('/login');
18
18
  }, [
19
19
  navigate,
20
20
  user
package/dist/index.d.ts CHANGED
@@ -46,4 +46,5 @@ export * from './pages';
46
46
  export { default as RadioButton } from './customRadioButton/RadioButton';
47
47
  export * from './PageNotFound';
48
48
  export * from './UnderMaintenance';
49
+ export * from './v2/navigation/DashboardLayout';
49
50
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,2BAA2B,CAAA;AACzC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iCAAiC,CAAA;AACxE,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,2BAA2B,CAAA;AACzC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iCAAiC,CAAA;AACxE,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,iCAAiC,CAAA"}
package/dist/index.js CHANGED
@@ -208,6 +208,11 @@ export { TermsComponent } from './pages/TermsComponent.js';
208
208
  export { default as RadioButton } from './customRadioButton/RadioButton.js';
209
209
  export { PageNotFound } from './PageNotFound/PageNotFound.js';
210
210
  export { UnderMaintenance } from './UnderMaintenance/UnderMaintenance.js';
211
+ export { DashboardLayout } from './v2/navigation/DashboardLayout/DashboardLayout.js';
212
+ export { AnalyticsIcon, CustomersIcon, FlowsIcon, HomeIcon, InventoryIcon, LoyaltyIcon, MarketingIcon, ProviderSidebar, ReportsIcon, SettingsIcon, WaiversIcon } from './v2/navigation/DashboardLayout/ProviderSidebar.js';
213
+ export { AdminSidebar } from './v2/navigation/DashboardLayout/AdminSidebar.js';
214
+ export { TopNavigation } from './v2/navigation/DashboardLayout/TopNavigation.js';
215
+ export { DashboardFooter } from './v2/navigation/DashboardLayout/DashboardFooter.js';
211
216
  export { default as CountrySelect } from './static/CountrySelect.js';
212
217
  export { default as FormCard } from './static/FormCard.js';
213
218
  export { default as Image } from './static/Image.js';
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import './EntityHeader.scss';
3
+ export interface EntityHeaderProps {
4
+ name: string;
5
+ id?: string;
6
+ idLabel?: string;
7
+ imageUrl?: string;
8
+ size?: 'sm' | 'md' | 'lg';
9
+ collapsed?: boolean;
10
+ className?: string;
11
+ }
12
+ export declare const EntityHeader: React.FC<EntityHeaderProps>;
13
+ //# sourceMappingURL=EntityHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityHeader.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/EntityHeader/EntityHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,qBAAqB,CAAA;AAE5B,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA8DpD,CAAA"}
@@ -0,0 +1,85 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import 'react';
3
+ import './EntityHeader.scss.js';
4
+
5
+ var EntityHeader = function(param) {
6
+ var name = param.name, id = param.id, _param_idLabel = param.idLabel, idLabel = _param_idLabel === void 0 ? 'ID' : _param_idLabel, imageUrl = param.imageUrl, _param_size = param.size, size = _param_size === void 0 ? 'md' : _param_size, _param_collapsed = param.collapsed, collapsed = _param_collapsed === void 0 ? false : _param_collapsed, _param_className = param.className, className = _param_className === void 0 ? '' : _param_className;
7
+ var _name_;
8
+ var sizeMap = {
9
+ sm: 32,
10
+ md: 47,
11
+ lg: 64
12
+ };
13
+ var fontSizeMap = {
14
+ sm: 12,
15
+ md: 18,
16
+ lg: 24
17
+ };
18
+ var dimension = sizeMap[size];
19
+ var initialFontSize = fontSizeMap[size];
20
+ var circleRadius = dimension / 2 - 1 // Account for stroke width
21
+ ;
22
+ return /*#__PURE__*/ jsxs("div", {
23
+ className: "entity-header entity-header--".concat(size, " ").concat(collapsed ? 'entity-header--collapsed' : '', " ").concat(className).trim(),
24
+ children: [
25
+ /*#__PURE__*/ jsx("div", {
26
+ className: "entity-header__avatar",
27
+ style: {
28
+ width: dimension,
29
+ height: dimension
30
+ },
31
+ children: imageUrl ? /*#__PURE__*/ jsx("img", {
32
+ src: imageUrl,
33
+ alt: name,
34
+ className: "entity-header__image"
35
+ }) : /*#__PURE__*/ jsxs("div", {
36
+ className: "entity-header__placeholder",
37
+ children: [
38
+ /*#__PURE__*/ jsx("svg", {
39
+ width: dimension,
40
+ height: dimension,
41
+ viewBox: "0 0 ".concat(dimension, " ").concat(dimension),
42
+ fill: "none",
43
+ children: /*#__PURE__*/ jsx("circle", {
44
+ cx: dimension / 2,
45
+ cy: dimension / 2,
46
+ r: circleRadius,
47
+ fill: "var(--fills-main-fill-secondary, #626A90)",
48
+ fillOpacity: "0.2",
49
+ stroke: "var(--fills-main-fill-secondary, #626A90)",
50
+ strokeWidth: "2"
51
+ })
52
+ }),
53
+ /*#__PURE__*/ jsx("span", {
54
+ style: {
55
+ fontSize: initialFontSize
56
+ },
57
+ children: (name === null || name === void 0 ? void 0 : (_name_ = name[0]) === null || _name_ === void 0 ? void 0 : _name_.toUpperCase()) || 'S'
58
+ })
59
+ ]
60
+ })
61
+ }),
62
+ !collapsed && /*#__PURE__*/ jsxs("div", {
63
+ className: "entity-header__text",
64
+ children: [
65
+ /*#__PURE__*/ jsx("h3", {
66
+ className: "entity-header__name",
67
+ children: name
68
+ }),
69
+ id && /*#__PURE__*/ jsx("div", {
70
+ className: "entity-header__badge",
71
+ children: /*#__PURE__*/ jsxs("span", {
72
+ children: [
73
+ idLabel,
74
+ ": ",
75
+ id
76
+ ]
77
+ })
78
+ })
79
+ ]
80
+ })
81
+ ]
82
+ });
83
+ };
84
+
85
+ export { EntityHeader };
@@ -0,0 +1,6 @@
1
+ import styleInject from '/opt/atlassian/pipelines/agent/build/node_modules/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = ".entity-header{align-items:center;background:var(--surfaces-main-surface-secondary,#f4f4f7);border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;gap:8px;padding:8px;transition:background .2s ease;width:100%}.entity-header:hover{background:var(--surfaces-main-surface-secondary-hover,#ecedf2)}.entity-header:hover .entity-header__badge{background:var(--surfaces-main-surface-tertiary-hover,#fff)}.entity-header:active{background:var(--surfaces-main-surface-secondary-pressed,#e4e5ec)}.entity-header--collapsed{justify-content:center}.entity-header__avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;justify-content:center;overflow:hidden;position:relative}.entity-header__image{height:100%;object-fit:cover;width:100%}.entity-header__placeholder{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.entity-header__placeholder svg{left:0;position:absolute;top:0}.entity-header__placeholder span{color:var(--labels-main-label-secondary,#626a90);font-family:var(--font-family-sans);font-weight:700;position:relative;z-index:1}.entity-header__text{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.entity-header__name{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:15px;font-weight:600;line-height:18px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-header__badge{align-items:center;background:var(--surfaces-main-surface-tertiary,#e8e9ef);border-radius:8px;display:inline-flex;justify-content:center;padding:4px 8px;transition:background .2s ease;width:fit-content}.entity-header__badge span{color:var(--labels-main-label-secondary,#626a90);font-family:var(--font-family-mono);font-size:10px;font-weight:600;line-height:12px;white-space:nowrap}.entity-header--sm{gap:8px}.entity-header--sm .entity-header__name{font-size:13px;line-height:16px}.entity-header--sm .entity-header__badge span{font-size:9px}.entity-header--lg{gap:16px}.entity-header--lg .entity-header__name{font-size:18px;line-height:24px}.entity-header--lg .entity-header__badge span{font-size:11px}";
4
+ styleInject(css_248z);
5
+
6
+ export { css_248z as default };
@@ -0,0 +1,2 @@
1
+ export { EntityHeader, type EntityHeaderProps } from './EntityHeader';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/EntityHeader/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import './NPSScore.scss';
3
+ export interface NPSScoreProps {
4
+ /** User's first name for personalized greeting */
5
+ firstName?: string;
6
+ /** Callback when NPS is submitted */
7
+ onSubmit?: (data: NPSSubmitData) => void;
8
+ /** Callback when dismissed */
9
+ onDismiss?: () => void;
10
+ }
11
+ export interface NPSSubmitData {
12
+ score: number;
13
+ role: string;
14
+ reason?: string;
15
+ }
16
+ export declare const NPSScore: React.FC<NPSScoreProps>;
17
+ export default NPSScore;
18
+ //# sourceMappingURL=NPSScore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NPSScore.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/NPSScore/NPSScore.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,iBAAiB,CAAA;AAExB,MAAM,WAAW,aAAa;IAC1B,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAA;IACxC,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AAwBD,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAsK5C,CAAA;AAED,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,3 @@
1
+ export { NPSScore } from './NPSScore';
2
+ export type { NPSScoreProps, NPSSubmitData } from './NPSScore';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/NPSScore/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { HTMLAttributes } from 'react';
2
+ import './Select.scss';
3
+ export interface SelectProps extends HTMLAttributes<HTMLSelectElement> {
4
+ variant?: 'default' | 'hover' | 'focus' | 'error' | 'disabled';
5
+ size?: 'sm' | 'md' | 'lg';
6
+ disabled?: boolean;
7
+ }
8
+ export declare function Select({ variant, size, disabled, className, children, ...props }: SelectProps): import("react/jsx-runtime").JSX.Element;
9
+ export default Select;
10
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC7C,OAAO,eAAe,CAAA;AAEtB,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,iBAAiB,CAAC;IACpE,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAE,OAAO,GAAG,OAAO,GAAG,UAAU,CAAA;IAC7D,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,wBAAgB,MAAM,CAAC,EACrB,OAAmB,EACnB,IAAW,EACX,QAAgB,EAChB,SAAc,EACd,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,WAAW,2CAqCb;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,3 @@
1
+ export { Select } from './Select';
2
+ export type { SelectProps } from './Select';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,21 @@
1
+ import * as React from 'react';
2
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
3
+ import './Tooltip.scss';
4
+ declare const TooltipProvider: React.FC<TooltipPrimitive.TooltipProviderProps>;
5
+ declare const TooltipRoot: React.FC<TooltipPrimitive.TooltipProps>;
6
+ declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
7
+ declare const TooltipContent: React.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ export interface TooltipProps {
9
+ content: React.ReactNode;
10
+ children: React.ReactNode;
11
+ side?: 'top' | 'bottom' | 'left' | 'right';
12
+ sideOffset?: number;
13
+ delayDuration?: number;
14
+ disabled?: boolean;
15
+ className?: string;
16
+ open?: boolean;
17
+ }
18
+ declare const Tooltip: React.FC<TooltipProps>;
19
+ export { Tooltip, TooltipProvider, TooltipRoot, TooltipTrigger, TooltipContent };
20
+ export type { TooltipProps };
21
+ //# sourceMappingURL=Tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,gBAAgB,CAAA;AAEvB,QAAA,MAAM,eAAe,iDAA4B,CAAA;AAEjD,QAAA,MAAM,WAAW,yCAAwB,CAAA;AAEzC,QAAA,MAAM,cAAc,gHAA2B,CAAA;AAE/C,QAAA,MAAM,cAAc,gKAUlB,CAAA;AAGF,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA0BnC,CAAA;AAED,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,CAAA;AAChF,YAAY,EAAE,YAAY,EAAE,CAAA"}
@@ -0,0 +1,103 @@
1
+ import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
4
+ import './Tooltip.scss.js';
5
+
6
+ function _define_property(obj, key, value) {
7
+ if (key in obj) {
8
+ Object.defineProperty(obj, key, {
9
+ value: value,
10
+ enumerable: true,
11
+ configurable: true,
12
+ writable: true
13
+ });
14
+ } else {
15
+ obj[key] = value;
16
+ }
17
+ return obj;
18
+ }
19
+ function _object_spread(target) {
20
+ for(var i = 1; i < arguments.length; i++){
21
+ var source = arguments[i] != null ? arguments[i] : {};
22
+ var ownKeys = Object.keys(source);
23
+ if (typeof Object.getOwnPropertySymbols === "function") {
24
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
25
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
26
+ }));
27
+ }
28
+ ownKeys.forEach(function(key) {
29
+ _define_property(target, key, source[key]);
30
+ });
31
+ }
32
+ return target;
33
+ }
34
+ function _object_without_properties(source, excluded) {
35
+ if (source == null) return {};
36
+ var target = _object_without_properties_loose(source, excluded);
37
+ var key, i;
38
+ if (Object.getOwnPropertySymbols) {
39
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
40
+ for(i = 0; i < sourceSymbolKeys.length; i++){
41
+ key = sourceSymbolKeys[i];
42
+ if (excluded.indexOf(key) >= 0) continue;
43
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
44
+ target[key] = source[key];
45
+ }
46
+ }
47
+ return target;
48
+ }
49
+ function _object_without_properties_loose(source, excluded) {
50
+ if (source == null) return {};
51
+ var target = {};
52
+ var sourceKeys = Object.keys(source);
53
+ var key, i;
54
+ for(i = 0; i < sourceKeys.length; i++){
55
+ key = sourceKeys[i];
56
+ if (excluded.indexOf(key) >= 0) continue;
57
+ target[key] = source[key];
58
+ }
59
+ return target;
60
+ }
61
+ var TooltipProvider = TooltipPrimitive.Provider;
62
+ var TooltipRoot = TooltipPrimitive.Root;
63
+ var TooltipTrigger = TooltipPrimitive.Trigger;
64
+ var TooltipContent = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
65
+ var className = _param.className, _param_sideOffset = _param.sideOffset, sideOffset = _param_sideOffset === void 0 ? 8 : _param_sideOffset, props = _object_without_properties(_param, [
66
+ "className",
67
+ "sideOffset"
68
+ ]);
69
+ return /*#__PURE__*/ jsx(TooltipPrimitive.Content, _object_spread({
70
+ ref: ref,
71
+ sideOffset: sideOffset,
72
+ className: "tooltip-content ".concat(className || '').trim()
73
+ }, props));
74
+ });
75
+ TooltipContent.displayName = TooltipPrimitive.Content.displayName;
76
+ var Tooltip = function(param) {
77
+ var content = param.content, children = param.children, _param_side = param.side, side = _param_side === void 0 ? 'bottom' : _param_side, _param_sideOffset = param.sideOffset, sideOffset = _param_sideOffset === void 0 ? 8 : _param_sideOffset, _param_delayDuration = param.delayDuration, delayDuration = _param_delayDuration === void 0 ? 200 : _param_delayDuration, _param_disabled = param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_className = param.className, className = _param_className === void 0 ? '' : _param_className, open = param.open;
78
+ if (disabled) {
79
+ return /*#__PURE__*/ jsx(Fragment, {
80
+ children: children
81
+ });
82
+ }
83
+ return /*#__PURE__*/ jsx(TooltipProvider, {
84
+ delayDuration: delayDuration,
85
+ children: /*#__PURE__*/ jsxs(TooltipRoot, {
86
+ open: open,
87
+ children: [
88
+ /*#__PURE__*/ jsx(TooltipTrigger, {
89
+ asChild: true,
90
+ children: children
91
+ }),
92
+ /*#__PURE__*/ jsx(TooltipContent, {
93
+ side: side,
94
+ sideOffset: sideOffset,
95
+ className: className,
96
+ children: content
97
+ })
98
+ ]
99
+ })
100
+ });
101
+ };
102
+
103
+ export { Tooltip, TooltipContent, TooltipProvider, TooltipRoot, TooltipTrigger };
@@ -0,0 +1,6 @@
1
+ import styleInject from '/opt/atlassian/pipelines/agent/build/node_modules/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = ".tooltip-content{animation-duration:.2s;animation-timing-function:ease-out;background:var(--surfaces-main-surface-primary,#fff);border:1px solid var(--borders-main-border-primary,#e8e9ef);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:14px;font-weight:400;line-height:20px;overflow:hidden;padding:6px 12px;white-space:nowrap;z-index:50}.tooltip-content[data-state=delayed-open][data-side=top]{animation-name:tooltip-slide-down}.tooltip-content[data-state=delayed-open][data-side=bottom]{animation-name:tooltip-slide-up}.tooltip-content[data-state=delayed-open][data-side=left]{animation-name:tooltip-slide-right}.tooltip-content[data-state=delayed-open][data-side=right]{animation-name:tooltip-slide-left}.tooltip-content[data-state=closed]{animation-duration:.1s;animation-name:tooltip-fade-out}@keyframes tooltip-fade-out{0%{opacity:1}to{opacity:0}}@keyframes tooltip-slide-up{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltip-slide-down{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltip-slide-left{0%{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}@keyframes tooltip-slide-right{0%{opacity:0;transform:translateX(4px)}to{opacity:1;transform:translateX(0)}}";
4
+ styleInject(css_248z);
5
+
6
+ export { css_248z as default };
@@ -0,0 +1,2 @@
1
+ export { Tooltip, TooltipProvider, TooltipRoot, TooltipTrigger, TooltipContent, type TooltipProps } from './Tooltip';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/Tooltip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,eAAe,EACf,WAAW,EACX,cAAc,EACd,cAAc,EACd,KAAK,YAAY,EACpB,MAAM,WAAW,CAAA"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import './UserAvatar.scss';
3
+ export interface UserAvatarProps {
4
+ initials?: string;
5
+ avatarUrl?: string;
6
+ size?: 'sm' | 'md' | 'lg';
7
+ isActive?: boolean;
8
+ onClick?: () => void;
9
+ className?: string;
10
+ }
11
+ export declare const UserAvatar: React.FC<UserAvatarProps>;
12
+ //# sourceMappingURL=UserAvatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserAvatar.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/UserAvatar/UserAvatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,mBAAmB,CAAA;AAE1B,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAmFhD,CAAA"}