@xyo-network/react-address-render 2.81.10 → 2.82.0

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 (183) hide show
  1. package/dist/browser/components/RenderRowBox.d.cts +2 -1
  2. package/dist/browser/components/RenderRowBox.d.cts.map +1 -1
  3. package/dist/browser/components/RenderRowBox.d.mts +2 -1
  4. package/dist/browser/components/RenderRowBox.d.mts.map +1 -1
  5. package/dist/browser/components/RenderRowBox.d.ts +2 -1
  6. package/dist/browser/components/RenderRowBox.d.ts.map +1 -1
  7. package/dist/browser/components/favorite/FavoriteIconButton.d.cts +3 -2
  8. package/dist/browser/components/favorite/FavoriteIconButton.d.cts.map +1 -1
  9. package/dist/browser/components/favorite/FavoriteIconButton.d.mts +3 -2
  10. package/dist/browser/components/favorite/FavoriteIconButton.d.mts.map +1 -1
  11. package/dist/browser/components/favorite/FavoriteIconButton.d.ts +3 -2
  12. package/dist/browser/components/favorite/FavoriteIconButton.d.ts.map +1 -1
  13. package/dist/browser/components/favorite/FavoriteToggleSVG.d.cts +1 -0
  14. package/dist/browser/components/favorite/FavoriteToggleSVG.d.cts.map +1 -1
  15. package/dist/browser/components/favorite/FavoriteToggleSVG.d.mts +1 -0
  16. package/dist/browser/components/favorite/FavoriteToggleSVG.d.mts.map +1 -1
  17. package/dist/browser/components/favorite/FavoriteToggleSVG.d.ts +1 -0
  18. package/dist/browser/components/favorite/FavoriteToggleSVG.d.ts.map +1 -1
  19. package/dist/browser/components/favorite/Popper.d.cts +2 -2
  20. package/dist/browser/components/favorite/Popper.d.cts.map +1 -1
  21. package/dist/browser/components/favorite/Popper.d.mts +2 -2
  22. package/dist/browser/components/favorite/Popper.d.mts.map +1 -1
  23. package/dist/browser/components/favorite/Popper.d.ts +2 -2
  24. package/dist/browser/components/favorite/Popper.d.ts.map +1 -1
  25. package/dist/browser/components/favorite/PopperButtonGroup.d.cts +1 -0
  26. package/dist/browser/components/favorite/PopperButtonGroup.d.cts.map +1 -1
  27. package/dist/browser/components/favorite/PopperButtonGroup.d.mts +1 -0
  28. package/dist/browser/components/favorite/PopperButtonGroup.d.mts.map +1 -1
  29. package/dist/browser/components/favorite/PopperButtonGroup.d.ts +1 -0
  30. package/dist/browser/components/favorite/PopperButtonGroup.d.ts.map +1 -1
  31. package/dist/browser/components/favorite/index.d.cts +1 -1
  32. package/dist/browser/components/favorite/index.d.cts.map +1 -1
  33. package/dist/browser/components/favorite/index.d.mts +1 -1
  34. package/dist/browser/components/favorite/index.d.mts.map +1 -1
  35. package/dist/browser/components/favorite/index.d.ts +1 -1
  36. package/dist/browser/components/favorite/index.d.ts.map +1 -1
  37. package/dist/browser/components/favorite/lib/index.d.cts +1 -1
  38. package/dist/browser/components/favorite/lib/index.d.mts +1 -1
  39. package/dist/browser/components/favorite/lib/index.d.ts +1 -1
  40. package/dist/browser/components/index.d.cts +3 -3
  41. package/dist/browser/components/index.d.cts.map +1 -1
  42. package/dist/browser/components/index.d.mts +3 -3
  43. package/dist/browser/components/index.d.mts.map +1 -1
  44. package/dist/browser/components/index.d.ts +3 -3
  45. package/dist/browser/components/index.d.ts.map +1 -1
  46. package/dist/browser/components/lib/index.d.cts +1 -1
  47. package/dist/browser/components/lib/index.d.mts +1 -1
  48. package/dist/browser/components/lib/index.d.ts +1 -1
  49. package/dist/browser/index.cjs +173 -169
  50. package/dist/browser/index.cjs.map +1 -1
  51. package/dist/browser/index.d.cts +1 -1
  52. package/dist/browser/index.d.mts +1 -1
  53. package/dist/browser/index.d.ts +1 -1
  54. package/dist/browser/index.mjs +214 -0
  55. package/dist/browser/index.mjs.map +1 -0
  56. package/dist/neutral/components/RenderRowBox.d.cts +2 -1
  57. package/dist/neutral/components/RenderRowBox.d.cts.map +1 -1
  58. package/dist/neutral/components/RenderRowBox.d.mts +2 -1
  59. package/dist/neutral/components/RenderRowBox.d.mts.map +1 -1
  60. package/dist/neutral/components/RenderRowBox.d.ts +2 -1
  61. package/dist/neutral/components/RenderRowBox.d.ts.map +1 -1
  62. package/dist/neutral/components/favorite/FavoriteIconButton.d.cts +3 -2
  63. package/dist/neutral/components/favorite/FavoriteIconButton.d.cts.map +1 -1
  64. package/dist/neutral/components/favorite/FavoriteIconButton.d.mts +3 -2
  65. package/dist/neutral/components/favorite/FavoriteIconButton.d.mts.map +1 -1
  66. package/dist/neutral/components/favorite/FavoriteIconButton.d.ts +3 -2
  67. package/dist/neutral/components/favorite/FavoriteIconButton.d.ts.map +1 -1
  68. package/dist/neutral/components/favorite/FavoriteToggleSVG.d.cts +1 -0
  69. package/dist/neutral/components/favorite/FavoriteToggleSVG.d.cts.map +1 -1
  70. package/dist/neutral/components/favorite/FavoriteToggleSVG.d.mts +1 -0
  71. package/dist/neutral/components/favorite/FavoriteToggleSVG.d.mts.map +1 -1
  72. package/dist/neutral/components/favorite/FavoriteToggleSVG.d.ts +1 -0
  73. package/dist/neutral/components/favorite/FavoriteToggleSVG.d.ts.map +1 -1
  74. package/dist/neutral/components/favorite/Popper.d.cts +2 -2
  75. package/dist/neutral/components/favorite/Popper.d.cts.map +1 -1
  76. package/dist/neutral/components/favorite/Popper.d.mts +2 -2
  77. package/dist/neutral/components/favorite/Popper.d.mts.map +1 -1
  78. package/dist/neutral/components/favorite/Popper.d.ts +2 -2
  79. package/dist/neutral/components/favorite/Popper.d.ts.map +1 -1
  80. package/dist/neutral/components/favorite/PopperButtonGroup.d.cts +1 -0
  81. package/dist/neutral/components/favorite/PopperButtonGroup.d.cts.map +1 -1
  82. package/dist/neutral/components/favorite/PopperButtonGroup.d.mts +1 -0
  83. package/dist/neutral/components/favorite/PopperButtonGroup.d.mts.map +1 -1
  84. package/dist/neutral/components/favorite/PopperButtonGroup.d.ts +1 -0
  85. package/dist/neutral/components/favorite/PopperButtonGroup.d.ts.map +1 -1
  86. package/dist/neutral/components/favorite/index.d.cts +1 -1
  87. package/dist/neutral/components/favorite/index.d.cts.map +1 -1
  88. package/dist/neutral/components/favorite/index.d.mts +1 -1
  89. package/dist/neutral/components/favorite/index.d.mts.map +1 -1
  90. package/dist/neutral/components/favorite/index.d.ts +1 -1
  91. package/dist/neutral/components/favorite/index.d.ts.map +1 -1
  92. package/dist/neutral/components/favorite/lib/index.d.cts +1 -1
  93. package/dist/neutral/components/favorite/lib/index.d.mts +1 -1
  94. package/dist/neutral/components/favorite/lib/index.d.ts +1 -1
  95. package/dist/neutral/components/index.d.cts +3 -3
  96. package/dist/neutral/components/index.d.cts.map +1 -1
  97. package/dist/neutral/components/index.d.mts +3 -3
  98. package/dist/neutral/components/index.d.mts.map +1 -1
  99. package/dist/neutral/components/index.d.ts +3 -3
  100. package/dist/neutral/components/index.d.ts.map +1 -1
  101. package/dist/neutral/components/lib/index.d.cts +1 -1
  102. package/dist/neutral/components/lib/index.d.mts +1 -1
  103. package/dist/neutral/components/lib/index.d.ts +1 -1
  104. package/dist/neutral/index.cjs +173 -169
  105. package/dist/neutral/index.cjs.map +1 -1
  106. package/dist/neutral/index.d.cts +1 -1
  107. package/dist/neutral/index.d.mts +1 -1
  108. package/dist/neutral/index.d.ts +1 -1
  109. package/dist/neutral/index.mjs +214 -0
  110. package/dist/neutral/index.mjs.map +1 -0
  111. package/dist/node/components/RenderRowBox.d.cts +2 -1
  112. package/dist/node/components/RenderRowBox.d.cts.map +1 -1
  113. package/dist/node/components/RenderRowBox.d.mts +2 -1
  114. package/dist/node/components/RenderRowBox.d.mts.map +1 -1
  115. package/dist/node/components/RenderRowBox.d.ts +2 -1
  116. package/dist/node/components/RenderRowBox.d.ts.map +1 -1
  117. package/dist/node/components/favorite/FavoriteIconButton.d.cts +3 -2
  118. package/dist/node/components/favorite/FavoriteIconButton.d.cts.map +1 -1
  119. package/dist/node/components/favorite/FavoriteIconButton.d.mts +3 -2
  120. package/dist/node/components/favorite/FavoriteIconButton.d.mts.map +1 -1
  121. package/dist/node/components/favorite/FavoriteIconButton.d.ts +3 -2
  122. package/dist/node/components/favorite/FavoriteIconButton.d.ts.map +1 -1
  123. package/dist/node/components/favorite/FavoriteToggleSVG.d.cts +1 -0
  124. package/dist/node/components/favorite/FavoriteToggleSVG.d.cts.map +1 -1
  125. package/dist/node/components/favorite/FavoriteToggleSVG.d.mts +1 -0
  126. package/dist/node/components/favorite/FavoriteToggleSVG.d.mts.map +1 -1
  127. package/dist/node/components/favorite/FavoriteToggleSVG.d.ts +1 -0
  128. package/dist/node/components/favorite/FavoriteToggleSVG.d.ts.map +1 -1
  129. package/dist/node/components/favorite/Popper.d.cts +2 -2
  130. package/dist/node/components/favorite/Popper.d.cts.map +1 -1
  131. package/dist/node/components/favorite/Popper.d.mts +2 -2
  132. package/dist/node/components/favorite/Popper.d.mts.map +1 -1
  133. package/dist/node/components/favorite/Popper.d.ts +2 -2
  134. package/dist/node/components/favorite/Popper.d.ts.map +1 -1
  135. package/dist/node/components/favorite/PopperButtonGroup.d.cts +1 -0
  136. package/dist/node/components/favorite/PopperButtonGroup.d.cts.map +1 -1
  137. package/dist/node/components/favorite/PopperButtonGroup.d.mts +1 -0
  138. package/dist/node/components/favorite/PopperButtonGroup.d.mts.map +1 -1
  139. package/dist/node/components/favorite/PopperButtonGroup.d.ts +1 -0
  140. package/dist/node/components/favorite/PopperButtonGroup.d.ts.map +1 -1
  141. package/dist/node/components/favorite/index.d.cts +1 -1
  142. package/dist/node/components/favorite/index.d.cts.map +1 -1
  143. package/dist/node/components/favorite/index.d.mts +1 -1
  144. package/dist/node/components/favorite/index.d.mts.map +1 -1
  145. package/dist/node/components/favorite/index.d.ts +1 -1
  146. package/dist/node/components/favorite/index.d.ts.map +1 -1
  147. package/dist/node/components/favorite/lib/index.d.cts +1 -1
  148. package/dist/node/components/favorite/lib/index.d.mts +1 -1
  149. package/dist/node/components/favorite/lib/index.d.ts +1 -1
  150. package/dist/node/components/index.d.cts +3 -3
  151. package/dist/node/components/index.d.cts.map +1 -1
  152. package/dist/node/components/index.d.mts +3 -3
  153. package/dist/node/components/index.d.mts.map +1 -1
  154. package/dist/node/components/index.d.ts +3 -3
  155. package/dist/node/components/index.d.ts.map +1 -1
  156. package/dist/node/components/lib/index.d.cts +1 -1
  157. package/dist/node/components/lib/index.d.mts +1 -1
  158. package/dist/node/components/lib/index.d.ts +1 -1
  159. package/dist/node/index.cjs +173 -169
  160. package/dist/node/index.cjs.map +1 -1
  161. package/dist/node/index.d.cts +1 -1
  162. package/dist/node/index.d.mts +1 -1
  163. package/dist/node/index.d.ts +1 -1
  164. package/dist/node/index.mjs +214 -0
  165. package/dist/node/index.mjs.map +1 -0
  166. package/package.json +15 -15
  167. package/src/components/RenderRowBox.stories.tsx +4 -5
  168. package/src/components/RenderRowBox.tsx +24 -20
  169. package/src/components/favorite/FavoriteIconButton.tsx +6 -6
  170. package/src/components/favorite/FavoriteToggleSVG.tsx +4 -3
  171. package/src/components/favorite/Popper.tsx +8 -10
  172. package/src/components/favorite/PopperButtonGroup.tsx +15 -12
  173. package/src/components/favorite/index.ts +1 -1
  174. package/src/components/favorite/lib/index.ts +1 -1
  175. package/src/components/index.ts +3 -3
  176. package/src/components/lib/index.ts +1 -1
  177. package/src/index.ts +1 -1
  178. package/dist/browser/index.js +0 -218
  179. package/dist/browser/index.js.map +0 -1
  180. package/dist/neutral/index.js +0 -218
  181. package/dist/neutral/index.js.map +0 -1
  182. package/dist/node/index.js +0 -218
  183. package/dist/node/index.js.map +0 -1
@@ -1,218 +0,0 @@
1
- // src/components/favorite/FavoriteIconButton.tsx
2
- import { IconButton, styled as styled2 } from "@mui/material";
3
- import { useEvent } from "@xyo-network/react-event";
4
- import { useShareForwardedRef } from "@xyo-network/react-shared";
5
- import { forwardRef as forwardRef2, useEffect as useEffect2, useRef, useState as useState2 } from "react";
6
-
7
- // src/components/lib/FavoriteItemEvent.ts
8
- var generateFavoriteEvent = (favorite, favoriteType, favoriteValue, name) => ({
9
- favorite: !!favorite,
10
- favoriteType,
11
- favoriteValue,
12
- name
13
- });
14
-
15
- // src/components/favorite/FavoriteToggleSVG.tsx
16
- import { Star as StarIcon, StarBorder as StarBorderIcon } from "@mui/icons-material";
17
- import { Fragment, jsx } from "react/jsx-runtime";
18
- var FavoriteToggleSVG = ({ favorite }) => /* @__PURE__ */ jsx(Fragment, { children: favorite ? /* @__PURE__ */ jsx(StarIcon, { className: "favorite-icon", component: "svg", color: "secondary", fontSize: "small" }) : /* @__PURE__ */ jsx(StarBorderIcon, { className: "favorite-icon", fontSize: "small" }) });
19
-
20
- // src/components/favorite/lib/PopperId.ts
21
- var popperId = "favorite-popper";
22
-
23
- // src/components/favorite/Popper.tsx
24
- import { Card, CardContent, ClickAwayListener, Fade, Popper, styled, TextField } from "@mui/material";
25
- import { forwardRef, useEffect, useState } from "react";
26
-
27
- // src/components/favorite/PopperButtonGroup.tsx
28
- import { Delete as DeleteIcon, Star as StarIcon2 } from "@mui/icons-material";
29
- import { Button, ButtonGroup } from "@mui/material";
30
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
31
- var PopperButtonGroup = ({ name, onConfirmFavorite, favorite, ...props }) => {
32
- return /* @__PURE__ */ jsxs(ButtonGroup, { ...props, children: [
33
- /* @__PURE__ */ jsx2(
34
- Button,
35
- {
36
- title: "Save Favorite",
37
- variant: "contained",
38
- onClick: (e) => {
39
- e.stopPropagation();
40
- onConfirmFavorite == null ? void 0 : onConfirmFavorite(name, true);
41
- },
42
- children: /* @__PURE__ */ jsx2(StarIcon2, {})
43
- }
44
- ),
45
- favorite ? /* @__PURE__ */ jsx2(
46
- Button,
47
- {
48
- title: "Remove Favorite",
49
- variant: "contained",
50
- onClick: (e) => {
51
- e.stopPropagation();
52
- onConfirmFavorite == null ? void 0 : onConfirmFavorite(name, false);
53
- },
54
- children: /* @__PURE__ */ jsx2(DeleteIcon, {})
55
- }
56
- ) : null
57
- ] });
58
- };
59
-
60
- // src/components/favorite/Popper.tsx
61
- import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
62
- var FavoritePopper = forwardRef(
63
- ({
64
- name: nameProp,
65
- favorite,
66
- favoriteRef,
67
- onClickAway = () => {
68
- return;
69
- },
70
- onConfirmFavorite,
71
- ...props
72
- }, ref) => {
73
- const [name, setName] = useState(nameProp);
74
- useEffect(() => {
75
- setName(nameProp);
76
- }, [nameProp]);
77
- return /* @__PURE__ */ jsx3(ClickAwayListener, { onClickAway, children: /* @__PURE__ */ jsx3(
78
- PopperStyled,
79
- {
80
- id: popperId,
81
- anchorEl: favoriteRef == null ? void 0 : favoriteRef.current,
82
- onClick: (e) => e.stopPropagation(),
83
- onTouchStart: (e) => e.stopPropagation(),
84
- transition: true,
85
- ref,
86
- ...props,
87
- children: ({ TransitionProps }) => /* @__PURE__ */ jsx3(Fade, { ...TransitionProps, timeout: 350, children: /* @__PURE__ */ jsx3(Card, { children: /* @__PURE__ */ jsxs2(CardContent, { sx: { display: "flex", gap: 1 }, children: [
88
- /* @__PURE__ */ jsx3(
89
- TextField,
90
- {
91
- autoFocus: true,
92
- label: "Favorite Name",
93
- placeholder: "optional",
94
- size: "small",
95
- value: name ?? "",
96
- onChange: (e) => setName(e.target.value)
97
- }
98
- ),
99
- /* @__PURE__ */ jsx3(PopperButtonGroup, { favorite, onConfirmFavorite, name })
100
- ] }) }) })
101
- }
102
- ) });
103
- }
104
- );
105
- FavoritePopper.displayName = "FavoritePopper";
106
- var PopperStyled = styled(Popper, { name: "PopperStyled" })(() => ({ zIndex: 9999 }));
107
-
108
- // src/components/favorite/FavoriteIconButton.tsx
109
- import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
110
- var FavoriteIconButton = forwardRef2(
111
- ({ children, favorite: favoriteProp, name, valueType, value, ...props }, ref) => {
112
- const [openPopper, setOpenPopper] = useState2(false);
113
- const [favorite, setFavorite] = useState2(favoriteProp);
114
- useEffect2(() => {
115
- setFavorite(favoriteProp);
116
- }, [favoriteProp]);
117
- const sharedRef = useShareForwardedRef(ref);
118
- const [buttonRef, dispatch] = useEvent(void 0, sharedRef);
119
- const onConfirmFavorite = (name2, newFavoriteState) => {
120
- const favoriteEvent = generateFavoriteEvent(!!newFavoriteState, valueType, value, name2);
121
- dispatch("address", "favorite", JSON.stringify(favoriteEvent));
122
- setFavorite(newFavoriteState);
123
- setOpenPopper(false);
124
- };
125
- const starRef = useRef(null);
126
- return /* @__PURE__ */ jsxs3(
127
- IconButtonCondensed,
128
- {
129
- "aria-describedby": popperId,
130
- ref: buttonRef,
131
- onClick: (event) => {
132
- event.stopPropagation();
133
- setOpenPopper(!openPopper);
134
- },
135
- onTouchStart: (event) => {
136
- event.stopPropagation();
137
- setOpenPopper(!openPopper);
138
- },
139
- onMouseDown: (e) => e.stopPropagation(),
140
- sx: { lineHeight: 0, p: 0.25 },
141
- ...props,
142
- children: [
143
- /* @__PURE__ */ jsx4("span", { ref: starRef, children: /* @__PURE__ */ jsx4(FavoriteToggleSVG, { favorite }) }),
144
- /* @__PURE__ */ jsx4(
145
- FavoritePopper,
146
- {
147
- sx: { zIndex: 1301 },
148
- name,
149
- favorite,
150
- favoriteRef: starRef,
151
- open: openPopper,
152
- onConfirmFavorite,
153
- onClickAway: () => setOpenPopper(false)
154
- }
155
- ),
156
- children
157
- ]
158
- }
159
- );
160
- }
161
- );
162
- FavoriteIconButton.displayName = "FavoriteIconButton";
163
- var IconButtonCondensed = styled2(IconButton, { name: "IconButtonCondensed" })(({ theme }) => ({
164
- lineHeight: 0,
165
- padding: theme.spacing(0.25)
166
- }));
167
-
168
- // src/components/RenderRowBox.tsx
169
- import { ListItemIcon, useTheme } from "@mui/material";
170
- import { FlexRow } from "@xylabs/react-flexbox";
171
- import { Identicon } from "@xylabs/react-identicon";
172
- import { useEvent as useEvent2 } from "@xyo-network/react-event";
173
- import { EllipsizeBox, useShareForwardedRef as useShareForwardedRef2 } from "@xyo-network/react-shared";
174
- import { forwardRef as forwardRef3 } from "react";
175
- import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
176
- var AddressRenderRowBox = forwardRef3(
177
- ({ address, children, disableSharedRef, favorite: favoriteProp = false, iconOnly, iconSize = 24, icons, name, showFavorite = false, ...props }, ref) => {
178
- const theme = useTheme();
179
- const sharedRef = useShareForwardedRef2(ref);
180
- const [elementRef, dispatch] = useEvent2(void 0, sharedRef);
181
- return /* @__PURE__ */ jsxs4(
182
- FlexRow,
183
- {
184
- gap: 2,
185
- justifyContent: "flex-start",
186
- ref: elementRef,
187
- onClick: () => {
188
- if (address) {
189
- dispatch("address", "click", address);
190
- }
191
- },
192
- ...props,
193
- children: [
194
- icons && address ? /* @__PURE__ */ jsx5(ListItemIcon, { sx: { minWidth: 0 }, children: /* @__PURE__ */ jsx5(Identicon, { size: iconSize, value: address }) }) : null,
195
- iconOnly ? null : /* @__PURE__ */ jsx5(
196
- EllipsizeBox,
197
- {
198
- disableSharedRef,
199
- ellipsisPosition: "end",
200
- width: "100%",
201
- typographyProps: { fontSize: theme.typography.body1.fontSize },
202
- children: name ?? address
203
- }
204
- ),
205
- children,
206
- showFavorite && address ? /* @__PURE__ */ jsx5(FavoriteIconButton, { name, size: "small", value: address, valueType: "address", favorite: favoriteProp }) : null
207
- ]
208
- }
209
- );
210
- }
211
- );
212
- AddressRenderRowBox.displayName = "AddressRenderRowBox";
213
- export {
214
- AddressRenderRowBox,
215
- FavoriteIconButton,
216
- generateFavoriteEvent
217
- };
218
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/favorite/FavoriteIconButton.tsx","../../src/components/lib/FavoriteItemEvent.ts","../../src/components/favorite/FavoriteToggleSVG.tsx","../../src/components/favorite/lib/PopperId.ts","../../src/components/favorite/Popper.tsx","../../src/components/favorite/PopperButtonGroup.tsx","../../src/components/RenderRowBox.tsx"],"sourcesContent":["import { IconButton, IconButtonProps, styled } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { useEvent } from '@xyo-network/react-event'\nimport { useShareForwardedRef } from '@xyo-network/react-shared'\nimport { forwardRef, useEffect, useRef, useState } from 'react'\n\nimport { FavoriteItemEvent, generateFavoriteEvent } from '../lib/index.js'\nimport { FavoriteToggleSVG } from './FavoriteToggleSVG.js'\nimport { popperId } from './lib/index.js'\nimport { FavoritePopper } from './Popper.js'\n\nexport interface FavoriteIconButtonProps extends WithChildren, IconButtonProps {\n favorite?: FavoriteItemEvent['favorite']\n name?: FavoriteItemEvent['name']\n value?: string\n valueType?: FavoriteItemEvent['favoriteType']\n}\n\nexport const FavoriteIconButton = forwardRef<HTMLButtonElement, FavoriteIconButtonProps>(\n ({ children, favorite: favoriteProp, name, valueType, value, ...props }, ref) => {\n const [openPopper, setOpenPopper] = useState(false)\n\n const [favorite, setFavorite] = useState(favoriteProp)\n useEffect(() => {\n setFavorite(favoriteProp)\n }, [favoriteProp])\n\n const sharedRef = useShareForwardedRef(ref)\n const [buttonRef, dispatch] = useEvent(undefined, sharedRef)\n\n const onConfirmFavorite = (name?: string, newFavoriteState?: boolean) => {\n const favoriteEvent = generateFavoriteEvent(!!newFavoriteState, valueType, value, name)\n dispatch('address', 'favorite', JSON.stringify(favoriteEvent))\n setFavorite(newFavoriteState)\n setOpenPopper(false)\n }\n\n const starRef = useRef<HTMLSpanElement>(null)\n\n return (\n <IconButtonCondensed\n aria-describedby={popperId}\n ref={buttonRef}\n onClick={(event) => {\n event.stopPropagation()\n setOpenPopper(!openPopper)\n }}\n onTouchStart={(event) => {\n event.stopPropagation()\n setOpenPopper(!openPopper)\n }}\n onMouseDown={(e) => e.stopPropagation()}\n sx={{ lineHeight: 0, p: 0.25 }}\n {...props}\n >\n <span ref={starRef}>\n <FavoriteToggleSVG favorite={favorite} />\n </span>\n <FavoritePopper\n sx={{ zIndex: 1301 }}\n name={name}\n favorite={favorite}\n favoriteRef={starRef}\n open={openPopper}\n onConfirmFavorite={onConfirmFavorite}\n onClickAway={() => setOpenPopper(false)}\n />\n {children}\n </IconButtonCondensed>\n )\n },\n)\n\nFavoriteIconButton.displayName = 'FavoriteIconButton'\n\nconst IconButtonCondensed = styled(IconButton, { name: 'IconButtonCondensed' })(({ theme }) => ({\n lineHeight: 0,\n padding: theme.spacing(0.25),\n}))\n","export interface FavoriteItemEvent {\n favorite?: boolean\n favoriteType?: FavoriteType\n favoriteValue?: string\n name?: string\n}\n\nexport type FavoriteType = 'address' | 'schema' | 'hash'\n\nexport const generateFavoriteEvent = (favorite?: boolean, favoriteType?: FavoriteType, favoriteValue?: string, name?: string): FavoriteItemEvent => ({\n favorite: !!favorite,\n favoriteType,\n favoriteValue,\n name,\n})\n","import { Star as StarIcon, StarBorder as StarBorderIcon } from '@mui/icons-material'\n\nexport const FavoriteToggleSVG: React.FC<{ favorite?: boolean }> = ({ favorite }) => (\n <>\n {favorite ?\n <StarIcon className=\"favorite-icon\" component={'svg'} color=\"secondary\" fontSize=\"small\" />\n : <StarBorderIcon className=\"favorite-icon\" fontSize=\"small\" />}\n </>\n)\n","export const popperId = 'favorite-popper'\n","import { Card, CardContent, ClickAwayListener, Fade, Popper, PopperProps, styled, TextField } from '@mui/material'\nimport { forwardRef, RefObject, useEffect, useState } from 'react'\n\nimport { popperId } from './lib/index.js'\nimport { PopperButtonGroup } from './PopperButtonGroup.js'\n\nexport interface FavoritePopperProps extends PopperProps {\n favorite?: boolean\n favoriteRef?: RefObject<HTMLElement>\n name?: string\n onClickAway?: (event: MouseEvent | TouchEvent) => void\n onConfirmFavorite?: (name?: string, newFavoriteState?: boolean) => void\n}\nexport const FavoritePopper = forwardRef<HTMLDivElement, FavoritePopperProps>(\n (\n {\n name: nameProp,\n favorite,\n favoriteRef,\n onClickAway = () => {\n return\n },\n onConfirmFavorite,\n ...props\n },\n ref,\n ) => {\n const [name, setName] = useState(nameProp)\n useEffect(() => {\n setName(nameProp)\n }, [nameProp])\n\n return (\n <ClickAwayListener onClickAway={onClickAway}>\n <PopperStyled\n id={popperId}\n anchorEl={favoriteRef?.current}\n onClick={(e) => e.stopPropagation()}\n onTouchStart={(e) => e.stopPropagation()}\n transition\n ref={ref}\n {...props}\n >\n {({ TransitionProps }) => (\n <Fade {...TransitionProps} timeout={350}>\n <Card>\n <CardContent sx={{ display: 'flex', gap: 1 }}>\n <TextField\n autoFocus\n label=\"Favorite Name\"\n placeholder=\"optional\"\n size=\"small\"\n value={name ?? ''}\n onChange={(e) => setName(e.target.value)}\n />\n <PopperButtonGroup favorite={favorite} onConfirmFavorite={onConfirmFavorite} name={name} />\n </CardContent>\n </Card>\n </Fade>\n )}\n </PopperStyled>\n </ClickAwayListener>\n )\n },\n)\n\nFavoritePopper.displayName = 'FavoritePopper'\n\n// Ensure the popper is over all other mui portal elements\nconst PopperStyled = styled(Popper, { name: 'PopperStyled' })(() => ({ zIndex: 9999 }))\n","import { Delete as DeleteIcon, Star as StarIcon } from '@mui/icons-material'\nimport { Button, ButtonGroup, ButtonGroupProps } from '@mui/material'\n\nexport interface FavoritePopperProps extends ButtonGroupProps {\n favorite?: boolean\n name?: string\n onConfirmFavorite?: (name?: string, newFavoriteState?: boolean) => void\n}\n\nexport const PopperButtonGroup: React.FC<FavoritePopperProps> = ({ name, onConfirmFavorite, favorite, ...props }) => {\n return (\n <ButtonGroup {...props}>\n <Button\n title=\"Save Favorite\"\n variant=\"contained\"\n onClick={(e) => {\n e.stopPropagation()\n onConfirmFavorite?.(name, true)\n }}\n >\n <StarIcon />\n </Button>\n {favorite ?\n <Button\n title=\"Remove Favorite\"\n variant=\"contained\"\n onClick={(e) => {\n e.stopPropagation()\n onConfirmFavorite?.(name, false)\n }}\n >\n <DeleteIcon />\n </Button>\n : null}\n </ButtonGroup>\n )\n}\n","import { ListItemIcon, useTheme } from '@mui/material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\nimport { Identicon } from '@xylabs/react-identicon'\nimport { useEvent } from '@xyo-network/react-event'\nimport { EllipsizeBox, useShareForwardedRef } from '@xyo-network/react-shared'\nimport { forwardRef } from 'react'\n\nimport { FavoriteIconButton } from './favorite/index.js'\n\nexport interface AddressRenderRowBoxProps extends FlexBoxProps {\n address?: string | null\n disableSharedRef?: boolean\n favorite?: boolean\n iconOnly?: boolean\n iconSize?: number\n icons?: boolean\n name?: string\n showFavorite?: boolean\n}\n\nexport const AddressRenderRowBox = forwardRef<HTMLElement, AddressRenderRowBoxProps>(\n (\n { address, children, disableSharedRef, favorite: favoriteProp = false, iconOnly, iconSize = 24, icons, name, showFavorite = false, ...props },\n ref,\n ) => {\n const theme = useTheme()\n\n const sharedRef = useShareForwardedRef(ref)\n const [elementRef, dispatch] = useEvent(undefined, sharedRef)\n\n return (\n <FlexRow\n gap={2}\n justifyContent=\"flex-start\"\n ref={elementRef}\n onClick={() => {\n if (address) {\n dispatch('address', 'click', address)\n }\n }}\n {...props}\n >\n {icons && address ?\n <ListItemIcon sx={{ minWidth: 0 }}>\n <Identicon size={iconSize} value={address} />\n </ListItemIcon>\n : null}\n {iconOnly ? null : (\n <EllipsizeBox\n disableSharedRef={disableSharedRef}\n ellipsisPosition={'end'}\n width=\"100%\"\n typographyProps={{ fontSize: theme.typography.body1.fontSize }}\n >\n {name ?? address}\n </EllipsizeBox>\n )}\n {children}\n {showFavorite && address ?\n <FavoriteIconButton name={name} size={'small'} value={address} valueType={'address'} favorite={favoriteProp} />\n : null}\n </FlexRow>\n )\n },\n)\n\nAddressRenderRowBox.displayName = 'AddressRenderRowBox'\n"],"mappings":"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","names":["styled","forwardRef","useEffect","useState","StarIcon","jsx","jsx","jsxs","jsx","jsxs","forwardRef","useState","useEffect","name","styled","useEvent","useShareForwardedRef","forwardRef","jsx","jsxs","forwardRef","useShareForwardedRef","useEvent"]}