ghost 6.52.0 → 6.52.1

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 (220) hide show
  1. package/components/tryghost-kg-card-factory-5.2.3.tgz +0 -0
  2. package/components/tryghost-kg-clean-basic-html-4.3.3.tgz +0 -0
  3. package/components/tryghost-kg-converters-1.2.3.tgz +0 -0
  4. package/components/tryghost-kg-default-cards-10.3.3.tgz +0 -0
  5. package/components/tryghost-kg-default-nodes-2.1.3.tgz +0 -0
  6. package/components/tryghost-kg-default-transforms-1.3.3.tgz +0 -0
  7. package/components/tryghost-kg-html-to-lexical-1.3.3.tgz +0 -0
  8. package/components/tryghost-kg-lexical-html-renderer-1.4.3.tgz +0 -0
  9. package/components/tryghost-kg-markdown-html-renderer-7.2.3.tgz +0 -0
  10. package/components/tryghost-kg-utils-1.1.3.tgz +0 -0
  11. package/core/built/admin/assets/Growth-CczbRexv.js +3 -0
  12. package/core/built/admin/assets/Newsletters-rFycX4x8.js +1 -0
  13. package/core/built/admin/assets/Overview-DFubBJaR.js +1 -0
  14. package/core/built/admin/assets/Web-BDE2lN4_.js +2 -0
  15. package/core/built/admin/assets/{account-migration-DiS76mRS.js → account-migration-gvH5a8ea.js} +1 -1
  16. package/core/built/admin/assets/audience-CMWMCxFS.js +1 -0
  17. package/core/built/admin/assets/{automated-emails-Cel18g7S.js → automated-emails-293Lcj5S.js} +1 -1
  18. package/core/built/admin/assets/automations-BxnjfCKn.js +1 -0
  19. package/core/built/admin/assets/automations-kPr44AmD.js +1 -0
  20. package/core/built/admin/assets/bluesky-sharing-Cww54F3Y.js +1 -0
  21. package/core/built/admin/assets/{chunk.912.9d6df5a6da679d905bbf.js → chunk.251.dd82df30188bb633b4ae.js} +9 -9
  22. package/core/built/admin/assets/{chunk.730.2457b7fede040aa52c88.js → chunk.341.20e7d2936dfa5877deea.js} +3 -3
  23. package/core/built/admin/assets/{chunk.524.d6d399b571454ea0234d.js → chunk.524.697bf0ded48e7c994fc3.js} +5 -5
  24. package/core/built/admin/assets/{chunk.582.50a9a5cbab6996daf0fe.js → chunk.582.6b742e9ba932688c442c.js} +6 -6
  25. package/core/built/admin/assets/{code-editor-view-BLGzcLub.js → code-editor-view-DSY5RHLf.js} +1 -1
  26. package/core/built/admin/assets/comments-BwNUmaNM.js +1 -0
  27. package/core/built/admin/assets/constants-c-JNF9c2.js +1 -0
  28. package/core/built/admin/assets/container-CD33Rm0u.js +1 -0
  29. package/core/built/admin/assets/content-helpers-CNBPrwsi.js +1 -0
  30. package/core/built/admin/assets/date-range-select-BkkNN98H.js +1 -0
  31. package/core/built/admin/assets/disabled-sources-indicator-ChHTF69d.js +1 -0
  32. package/core/built/admin/assets/{domain-2REz20SO.js → domain-CGk9SMa-.js} +1 -1
  33. package/core/built/admin/assets/dropzone-9zocztX0.js +5 -0
  34. package/core/built/admin/assets/{edit-profile-7QEh0VtN.js → edit-profile-C0B2Kbsl.js} +1 -1
  35. package/core/built/admin/assets/editor-Bz2Sm2O8.js +8 -0
  36. package/core/built/admin/assets/{esm-CEtFqV1y.js → esm-CsHLKmLh.js} +1 -1
  37. package/core/built/admin/assets/explore-CpRAMnx7.js +1 -0
  38. package/core/built/admin/assets/feed-BRoOWghO.js +1 -0
  39. package/core/built/admin/assets/filter-sources-DhxqZID1.js +1 -0
  40. package/core/built/admin/assets/{filters-DUy8rzI5.js → filters-B8nLLYGO.js} +1 -1
  41. package/core/built/admin/assets/{gh-chart-DdBGmBS8.js → gh-chart-Cqy9gGq7.js} +1 -1
  42. package/core/built/admin/assets/{gift-link-modal-CSgyxenA.js → gift-link-modal-v55u0VUL.js} +1 -1
  43. package/core/built/admin/assets/growth-BIfM3w1p.js +1 -0
  44. package/core/built/admin/assets/{inbox-CTD-ix6u.js → inbox-CDX57fXK.js} +11 -11
  45. package/core/built/admin/assets/index-B5yxmQNp.js +69 -0
  46. package/core/built/admin/assets/inline-DdrWe7D3.js +1 -0
  47. package/core/built/admin/assets/{input-group-DkR63-nk.js → input-group-DUPGQck1.js} +1 -1
  48. package/core/built/admin/assets/{koenig-lexical-D09TwwLs.js → koenig-lexical-CUVpp-dC.js} +1 -1
  49. package/core/built/admin/assets/{kpi-card-Fr_HJH78.js → kpi-card-DyDbok3h.js} +1 -1
  50. package/core/built/admin/assets/kpi-helpers-Bx9IHIMq.js +1 -0
  51. package/core/built/admin/assets/{kpi-tabs-Dc4Nt4a5.js → kpi-tabs-DmUcThFc.js} +1 -1
  52. package/core/built/admin/assets/labels-DLL8dl-7.js +1 -0
  53. package/core/built/admin/assets/layout-B7K3SmL0.js +1 -0
  54. package/core/built/admin/assets/{links-CfAB2Yeq.js → link-helpers-DHG_8GIT.js} +1 -1
  55. package/core/built/admin/assets/list-page-COAUFrmV.js +1 -0
  56. package/core/built/admin/assets/members-BxWs_mjq.js +10 -0
  57. package/core/built/admin/assets/{modals-Bu-1Uxdc.js → modals-DF2sECo6.js} +4 -4
  58. package/core/built/admin/assets/moderation-DYKTx5x0.js +1 -0
  59. package/core/built/admin/assets/newsletter-C-ZD1dI8.js +1 -0
  60. package/core/built/admin/assets/note-oaRdU_5z.js +1 -0
  61. package/core/built/admin/assets/notifications-BF4fAiP1.js +1 -0
  62. package/core/built/admin/assets/{nql-lang-CvCSOQG3.js → nql-lang-BoHzkNg5.js} +1 -1
  63. package/core/built/admin/assets/{onboarding-route-BDaa9hd3.js → onboarding-route-SS-e9Aeb.js} +1 -1
  64. package/core/built/admin/assets/overview-Cbn6bIoR.js +1 -0
  65. package/core/built/admin/assets/post-analytics-Bk9-KEgB.js +1 -0
  66. package/core/built/admin/assets/post-analytics-context-C8t_048I.js +1 -0
  67. package/core/built/admin/assets/post-analytics-header-xTjcg4H0.js +1 -0
  68. package/core/built/admin/assets/post-analytics-provider-CqnWwLMk.js +1 -0
  69. package/core/built/admin/assets/{post-share-modal-59Ujf4t1.js → post-share-modal-ZUCX7JZo.js} +1 -1
  70. package/core/built/admin/assets/preferences-BgjgxiBB.js +5 -0
  71. package/core/built/admin/assets/profile-qIwaxKTm.js +1 -0
  72. package/core/built/admin/assets/{router-provider-DcttGCQn.js → router-provider-S8Wf6jdu.js} +1 -1
  73. package/core/built/admin/assets/select-Cp27ScMR.js +1 -0
  74. package/core/built/admin/assets/{settings-dLraw6et.js → settings-CdDfyF90.js} +1 -1
  75. package/core/built/admin/assets/{settings-CIslWMfh.js → settings-CynBh-YN.js} +4 -4
  76. package/core/built/admin/assets/{share-modal-CI3E67kW.js → share-modal-DTIFYNI1.js} +1 -1
  77. package/core/built/admin/assets/social-urls-DVvRfwEp.js +16 -0
  78. package/core/built/admin/assets/{sort-button-BYwI0xdN.js → sort-button-BHh5Ba1K.js} +1 -1
  79. package/core/built/admin/assets/source-icon--egCE7iN.js +1 -0
  80. package/core/built/admin/assets/stats-DkqCtrPh.js +1 -0
  81. package/core/built/admin/assets/stats-view-BvWWxegf.js +1 -0
  82. package/core/built/admin/assets/step-1-DWjw7rIn.js +1 -0
  83. package/core/built/admin/assets/{step-2-CVOvLQ2n.js → step-2-D1LrETIB.js} +1 -1
  84. package/core/built/admin/assets/{step-3-BsVXcpWU.js → step-3-BAdJdZw4.js} +2 -2
  85. package/core/built/admin/assets/{tabs-Bw8aEqsd.js → tabs-DSrHPjWP.js} +1 -1
  86. package/core/built/admin/assets/tags-BWZqBj19.js +1 -0
  87. package/core/built/admin/assets/{textarea-CNaqhk5P.js → textarea-CUVQjsrM.js} +1 -1
  88. package/core/built/admin/assets/{toggle-group-CMp1taHd.js → toggle-group-CrFpl-Xz.js} +1 -1
  89. package/core/built/admin/assets/{topic-filter-D2_9eEw4.js → topic-filter-jAxwwd9I.js} +1 -1
  90. package/core/built/admin/assets/types-uYQ1HgqL.js +1 -0
  91. package/core/built/admin/assets/url-helpers-CCyfRrKj.js +1 -0
  92. package/core/built/admin/assets/use-analytics-data-DXG7mpgK.js +1 -0
  93. package/core/built/admin/assets/use-filter-params-EoQBXfP3.js +1 -0
  94. package/core/built/admin/assets/use-growth-stats-DJoXxVfD.js +1 -0
  95. package/core/built/admin/assets/use-post-referrers-B-onYbuS.js +1 -0
  96. package/core/built/admin/assets/use-reply-chain-data-D8IFALoz.js +1 -0
  97. package/core/built/admin/assets/{use-tinybird-query-CNCaUn39.js → use-tinybird-query-BSL3iVCc.js} +1 -1
  98. package/core/built/admin/assets/{use-tinybird-token-1T80Odca.js → use-tinybird-token-DHgOnrNu.js} +1 -1
  99. package/core/built/admin/assets/virtual-list-AQrbRAXP.js +1 -0
  100. package/core/built/admin/assets/web-zEFi98DS.js +1 -0
  101. package/core/built/admin/index.html +6 -6
  102. package/core/server/services/automations/automations-api.js +20 -0
  103. package/core/server/services/automations/automations-api.ts +31 -0
  104. package/core/server/services/automations/poll.js +7 -7
  105. package/core/server/services/automations/poll.ts +12 -9
  106. package/core/server/services/email-analytics/email-analytics-provider-mailgun.js +2 -2
  107. package/core/server/services/email-analytics/email-analytics-service-wrapper.js +1 -4
  108. package/core/server/services/email-analytics/email-analytics-service.js +5 -7
  109. package/core/server/services/webhooks/serialize.js +6 -5
  110. package/package.json +1 -1
  111. package/pnpm-lock.yaml +14 -14
  112. package/pnpm-workspace.yaml +5 -0
  113. package/core/built/admin/assets/Growth-Dx0vv-BS.js +0 -3
  114. package/core/built/admin/assets/Newsletters-v1GnbUjW.js +0 -1
  115. package/core/built/admin/assets/Overview-BgM7o-Z8.js +0 -1
  116. package/core/built/admin/assets/Web-DRv-83Ow.js +0 -2
  117. package/core/built/admin/assets/automations-DFLgH14-.js +0 -1
  118. package/core/built/admin/assets/automations-Dc4DUKBb.js +0 -1
  119. package/core/built/admin/assets/bluesky-sharing-Dk1RTUaz.js +0 -1
  120. package/core/built/admin/assets/comments-DgH1rC7w.js +0 -1
  121. package/core/built/admin/assets/constants-BlvYJTqz.js +0 -1
  122. package/core/built/admin/assets/content-helpers-BEgGpvyE.js +0 -1
  123. package/core/built/admin/assets/editor-u3BPqQed.js +0 -8
  124. package/core/built/admin/assets/en-DA2zVD_n.js +0 -1
  125. package/core/built/admin/assets/explore-BgHmdFVz.js +0 -1
  126. package/core/built/admin/assets/feed-Cs7-F3I5.js +0 -1
  127. package/core/built/admin/assets/filter-query-core-D6GjHUFB.js +0 -1
  128. package/core/built/admin/assets/growth-IkQZ1ZV9.js +0 -1
  129. package/core/built/admin/assets/index-BMhs4O3N.js +0 -69
  130. package/core/built/admin/assets/inline-C1CpHxuO.js +0 -1
  131. package/core/built/admin/assets/kpis-BTZ8cyw-.js +0 -1
  132. package/core/built/admin/assets/labels-sA9m188H.js +0 -5
  133. package/core/built/admin/assets/layout-szLkuQ88.js +0 -1
  134. package/core/built/admin/assets/list-page-DWkOdljb.js +0 -1
  135. package/core/built/admin/assets/main-layout-B-K8KliJ.js +0 -1
  136. package/core/built/admin/assets/members-PNNhalbu.js +0 -10
  137. package/core/built/admin/assets/moderation-DqnsNTiw.js +0 -1
  138. package/core/built/admin/assets/newsletter-BhuQeWFL.js +0 -1
  139. package/core/built/admin/assets/note-DFy2JTpP.js +0 -1
  140. package/core/built/admin/assets/notifications-BVu-JOkB.js +0 -1
  141. package/core/built/admin/assets/overview-Bhg8M7VS.js +0 -1
  142. package/core/built/admin/assets/pagemenu-C4paivNj.js +0 -1
  143. package/core/built/admin/assets/post-analytics-BhQUmZyA.js +0 -1
  144. package/core/built/admin/assets/post-analytics-context-Dy17HR1_.js +0 -1
  145. package/core/built/admin/assets/post-analytics-header-DAQep1VQ.js +0 -1
  146. package/core/built/admin/assets/posts/_react-dom-Blmuc0OL.js +0 -21
  147. package/core/built/admin/assets/posts/alert-dialog-DBJeQQTK.js +0 -154
  148. package/core/built/admin/assets/posts/app-provider-BJr9fdEC.js +0 -22
  149. package/core/built/admin/assets/posts/app-utils-9O53Czfw.js +0 -83
  150. package/core/built/admin/assets/posts/automations-BM0oBTjO.js +0 -275
  151. package/core/built/admin/assets/posts/automations-Dbp-gdHS.js +0 -223
  152. package/core/built/admin/assets/posts/avatar-kOk1tTvT.js +0 -144
  153. package/core/built/admin/assets/posts/badge-DnByIHe9.js +0 -25
  154. package/core/built/admin/assets/posts/button-Dd8Xreln.js +0 -40844
  155. package/core/built/admin/assets/posts/chunk-KS7C4IRE-ECXkcZq6.js +0 -7740
  156. package/core/built/admin/assets/posts/comments-D-7hbbdw.js +0 -8032
  157. package/core/built/admin/assets/posts/data-list-DdD_glQ-.js +0 -14219
  158. package/core/built/admin/assets/posts/dialog-DDkTy_np.js +0 -229
  159. package/core/built/admin/assets/posts/editor-D7-01KV_.js +0 -14633
  160. package/core/built/admin/assets/posts/empty-indicator-Ze-bwJ27.js +0 -38
  161. package/core/built/admin/assets/posts/filters-CmKfKtpS.js +0 -5611
  162. package/core/built/admin/assets/posts/get-site-timezone-DVbWc-NA.js +0 -39
  163. package/core/built/admin/assets/posts/growth-DlhFUzVg.js +0 -299
  164. package/core/built/admin/assets/posts/heading-BBl-8tMC.js +0 -92
  165. package/core/built/admin/assets/posts/hooks-gZAmj4Al.js +0 -5429
  166. package/core/built/admin/assets/posts/input-DuPLeCGW.js +0 -16
  167. package/core/built/admin/assets/posts/input-surface-ClwNIxfd.js +0 -17
  168. package/core/built/admin/assets/posts/jsx-runtime-BfZnKD4L.js +0 -95
  169. package/core/built/admin/assets/posts/koenig-lexical-DCHiJJou.js +0 -77579
  170. package/core/built/admin/assets/posts/kpis-Fsx0XmYK.js +0 -2061
  171. package/core/built/admin/assets/posts/label-D1wSl69p.js +0 -32
  172. package/core/built/admin/assets/posts/links-DLozzgMh.js +0 -1243
  173. package/core/built/admin/assets/posts/loading-indicator-BgU2kK3v.js +0 -44
  174. package/core/built/admin/assets/posts/main-layout-DDlTMrnF.js +0 -15
  175. package/core/built/admin/assets/posts/newsletter-DAQJ1GLe.js +0 -736
  176. package/core/built/admin/assets/posts/overview-G3MfRm-S.js +0 -426
  177. package/core/built/admin/assets/posts/page-header-CanFyB95.js +0 -284
  178. package/core/built/admin/assets/posts/popover-Cta8ZDHJ.js +0 -221
  179. package/core/built/admin/assets/posts/post-analytics-cS07-wo_.js +0 -121
  180. package/core/built/admin/assets/posts/post-analytics-context-D868SMoq.js +0 -150
  181. package/core/built/admin/assets/posts/post-analytics-header-CZYiuaEL.js +0 -42249
  182. package/core/built/admin/assets/posts/post-share-modal-BJfswZzf.js +0 -352
  183. package/core/built/admin/assets/posts/posts-CpusjBC0.js +0 -37
  184. package/core/built/admin/assets/posts/posts-app-context-CPC7dOlt.js +0 -26
  185. package/core/built/admin/assets/posts/posts.js +0 -145
  186. package/core/built/admin/assets/posts/router-provider-DrqpOc8m.js +0 -114
  187. package/core/built/admin/assets/posts/separator-DAZNzARU.js +0 -37
  188. package/core/built/admin/assets/posts/settings-CMfUn5Hq.js +0 -66
  189. package/core/built/admin/assets/posts/shade-app-DLbeExcd-NeEZjE3R.js +0 -4764
  190. package/core/built/admin/assets/posts/sheet-CEuv-0a5.js +0 -62
  191. package/core/built/admin/assets/posts/site-WJ6ldary.js +0 -10
  192. package/core/built/admin/assets/posts/skeleton-CO0qCdQF.js +0 -2426
  193. package/core/built/admin/assets/posts/source-icon-Bs6o84W3.js +0 -143
  194. package/core/built/admin/assets/posts/stats-B1Z8H0JT.js +0 -92
  195. package/core/built/admin/assets/posts/table-CbJ9bOpM.js +0 -77
  196. package/core/built/admin/assets/posts/tabs-BvzzwQ4P.js +0 -242
  197. package/core/built/admin/assets/posts/tags-D-4TwsD0.js +0 -462
  198. package/core/built/admin/assets/posts/tooltip-BI7VtFUY.js +0 -380
  199. package/core/built/admin/assets/posts/update-queries-DiUznIQ1.js +0 -60
  200. package/core/built/admin/assets/posts/users-UgRPrTKW.js +0 -83
  201. package/core/built/admin/assets/posts/value-DF_wOhJe.js +0 -415
  202. package/core/built/admin/assets/posts/virtual-list-window-DP63Onpm.js +0 -853
  203. package/core/built/admin/assets/posts/web-axp2l3kK.js +0 -8077
  204. package/core/built/admin/assets/preferences-ChOzBKcF.js +0 -5
  205. package/core/built/admin/assets/profile-DlcrYKay.js +0 -1
  206. package/core/built/admin/assets/select-BbtNHCBq.js +0 -1
  207. package/core/built/admin/assets/social-urls-DVzIHh2W.js +0 -16
  208. package/core/built/admin/assets/source-icon-Uuhttjun.js +0 -1
  209. package/core/built/admin/assets/source-utils-BchD0sF0.js +0 -1
  210. package/core/built/admin/assets/stats-CrlPzgdd.js +0 -1
  211. package/core/built/admin/assets/stats-view-UNMhTMCZ.js +0 -1
  212. package/core/built/admin/assets/step-1-C2HY6pyi.js +0 -1
  213. package/core/built/admin/assets/tags-DjCsJo0X.js +0 -1
  214. package/core/built/admin/assets/typeof-Ca-duI-z.js +0 -1
  215. package/core/built/admin/assets/url-helpers-DxA844rA.js +0 -1
  216. package/core/built/admin/assets/use-growth-stats-DNIGdI8h.js +0 -1
  217. package/core/built/admin/assets/use-reply-chain-data-DtEC2Azp.js +0 -1
  218. package/core/built/admin/assets/virtual-list-window-BTXGwpf5.js +0 -1
  219. package/core/built/admin/assets/web-Cj8VEw3s.js +0 -1
  220. /package/core/built/admin/assets/{chunk.912.9d6df5a6da679d905bbf.js.LICENSE.txt → chunk.251.dd82df30188bb633b4ae.js.LICENSE.txt} +0 -0
@@ -1,275 +0,0 @@
1
- import { D as e, E as t, _ as n, b as r, p as i, t as a } from "./jsx-runtime-BfZnKD4L.js";
2
- import { t as o } from "./chunk-KS7C4IRE-ECXkcZq6.js";
3
- import { a as s, r as c } from "./hooks-gZAmj4Al.js";
4
- import { i as l, z as u } from "./button-Dd8Xreln.js";
5
- import { t as d } from "./skeleton-CO0qCdQF.js";
6
- import { c as f, i as p, t as m } from "./settings-CMfUn5Hq.js";
7
- import { s as h } from "./shade-app-DLbeExcd-NeEZjE3R.js";
8
- import { n as g, t as _ } from "./page-header-CanFyB95.js";
9
- import { n as v } from "./users-UgRPrTKW.js";
10
- import { d as y, o as b } from "./automations-Dbp-gdHS.js";
11
- import { t as x } from "./badge-DnByIHe9.js";
12
- import { n as S, o as C, r as w, t as T } from "./table-CbJ9bOpM.js";
13
- import { t as E } from "./main-layout-DDlTMrnF.js";
14
- //#region ../admin-x-framework/dist/api/featurebase.js
15
- var D = "FeaturebaseTokenResponseType", O = {
16
- staleTime: 7200 * 60 * 1e3,
17
- refetchInterval: 8640 * 60 * 1e3,
18
- refetchIntervalInBackground: !0
19
- }, k = c({
20
- dataType: D,
21
- path: "/featurebase/token/"
22
- }), A = (e = {}) => k({
23
- ...O,
24
- ...e
25
- }), j = function() {
26
- let e, t;
27
- return {
28
- promise: new Promise((n, r) => {
29
- e = n, t = r;
30
- }),
31
- resolve: e,
32
- reject: t
33
- };
34
- };
35
- //#endregion
36
- //#region ../admin-x-framework/dist/hooks/use-featurebase.js
37
- i();
38
- var M = "https://do.featurebase.app/js/sdk.js", N = null;
39
- function P() {
40
- return N ||= new Promise((e, t) => {
41
- let n = document.querySelector(`script[src="${M}"]`);
42
- if (n) {
43
- if (window.Featurebase) {
44
- e();
45
- return;
46
- }
47
- n.addEventListener("load", () => e(), { once: !0 }), n.addEventListener("error", t, { once: !0 });
48
- return;
49
- }
50
- let r = document.createElement("script");
51
- r.src = M, r.onload = () => e(), r.onerror = (e) => {
52
- r.remove(), N = null;
53
- let n = Error(`[Featurebase] Failed to load SDK from ${M}`, { cause: e });
54
- console.error(n), t(n);
55
- }, document.head.appendChild(r);
56
- }), N;
57
- }
58
- var F = () => typeof document > "u" ? "light" : document.documentElement.classList.contains("dark") ? "dark" : "light", I = null;
59
- function L(e, t, n) {
60
- return I || (I = P().then(() => new Promise((r, i) => {
61
- window.Featurebase?.("initialize_feedback_widget", {
62
- organization: e,
63
- theme: t,
64
- featurebaseJwt: n
65
- }, (e) => {
66
- e ? (I = null, i(e)) : r();
67
- });
68
- })), I.catch(() => {
69
- I = null;
70
- }), I);
71
- }
72
- function R() {
73
- let { data: i } = f(), [a, o] = e(!1), { organization: s, enabled: c } = i?.config.featurebase ?? {}, l = !!c, { data: u } = A({ enabled: l && a }), d = u?.featurebase?.token;
74
- r(() => {
75
- a && P().catch((e) => {
76
- console.error("[Featurebase] Failed to load SDK:", e);
77
- });
78
- }, [a]);
79
- let p = t(j());
80
- r(() => {
81
- !a || !s || !d || L(s, F(), d).then(() => p.current.resolve(), (e) => {
82
- console.error("[Featurebase] Failed to initialize widget:", e), p.current.reject(e), p.current = j(), o(!1);
83
- });
84
- }, [
85
- s,
86
- d,
87
- a
88
- ]);
89
- let m = n(() => {
90
- l && o(!0);
91
- }, [l]);
92
- return {
93
- isAvailable: l,
94
- openFeedbackWidget: n((e) => {
95
- l && (o(!0), p.current.promise.then(() => {
96
- window.postMessage({
97
- target: "FeaturebaseWidget",
98
- data: {
99
- action: "openFeedbackWidget",
100
- ...e?.board && { setBoard: e.board }
101
- }
102
- }, "*");
103
- }));
104
- }, [l]),
105
- preloadFeedbackWidget: m
106
- };
107
- }
108
- //#endregion
109
- //#region src/views/Automations/components/automations-help-cards.tsx
110
- i();
111
- var z = a(), B = "https://forum.ghost.org", V = "https://ghost.org/help/automations-beta", H = "block w-full rounded-xl border border-border bg-card p-6 text-left transition-all hover:shadow-xs hover:bg-table-row-hover group/card", U = ({ title: e, description: t, children: n }) => /* @__PURE__ */ (0, z.jsxs)("div", {
112
- className: "flex items-center gap-6",
113
- children: [n, /* @__PURE__ */ (0, z.jsxs)("div", {
114
- className: "flex flex-col gap-0.5 leading-tight",
115
- children: [/* @__PURE__ */ (0, z.jsx)("span", {
116
- className: "text-base font-semibold",
117
- children: e
118
- }), /* @__PURE__ */ (0, z.jsx)("span", {
119
- className: "text-sm font-normal text-gray-700",
120
- children: t
121
- })]
122
- })]
123
- }), W = ({ url: e, className: t, title: n, description: r, children: i }) => /* @__PURE__ */ (0, z.jsx)("a", {
124
- className: h(H, t),
125
- href: e,
126
- rel: "noreferrer",
127
- target: "_blank",
128
- children: /* @__PURE__ */ (0, z.jsx)(U, {
129
- description: r,
130
- title: n,
131
- children: i
132
- })
133
- }), G = ({ className: e, title: t, description: n, children: r, onClick: i, onMouseEnter: a, onFocus: o }) => /* @__PURE__ */ (0, z.jsx)("button", {
134
- className: h(H, "cursor-pointer appearance-none", e),
135
- type: "button",
136
- onClick: i,
137
- onFocus: o,
138
- onMouseEnter: a,
139
- children: /* @__PURE__ */ (0, z.jsx)(U, {
140
- description: n,
141
- title: t,
142
- children: r
143
- })
144
- }), K = () => /* @__PURE__ */ (0, z.jsx)("div", {
145
- className: "flex h-18 w-[100px] min-w-[100px] items-center justify-center rounded-md bg-gradient-to-tr from-[#8B5CF6]/20 to-[#EC4899]/20 p-4 opacity-80 transition-all group-hover/card:opacity-100",
146
- children: /* @__PURE__ */ (0, z.jsx)(l, {
147
- className: "text-[#8B5CF6]",
148
- size: 20,
149
- strokeWidth: 1.5
150
- })
151
- }), q = () => /* @__PURE__ */ (0, z.jsx)("div", {
152
- className: "flex h-18 w-[100px] min-w-[100px] items-center justify-center rounded-md bg-gradient-to-tl from-[#10B981]/20 to-[#0EA5E9]/20 p-4 opacity-80 transition-all group-hover/card:opacity-100",
153
- children: /* @__PURE__ */ (0, z.jsx)(u, {
154
- className: "text-[#0EA5E9]",
155
- size: 20,
156
- strokeWidth: 1.5
157
- })
158
- }), J = "Share your feedback", Y = "Tell us what’s working and what’s missing — your input shapes what we build next.", X = () => {
159
- let { data: e } = s(), { isAvailable: t, openFeedbackWidget: n, preloadFeedbackWidget: r } = R(), i = t && e && !v(e);
160
- return /* @__PURE__ */ (0, z.jsxs)("div", {
161
- className: "mt-auto grid grid-cols-1 gap-6 pt-10 lg:grid-cols-2",
162
- children: [/* @__PURE__ */ (0, z.jsx)(W, {
163
- description: "Learn how to set up automations, customize your emails, and get the most out of the beta.",
164
- title: "Automations in Ghost",
165
- url: V,
166
- children: /* @__PURE__ */ (0, z.jsx)(K, {})
167
- }), i ? /* @__PURE__ */ (0, z.jsx)(G, {
168
- description: Y,
169
- title: J,
170
- onClick: () => n(),
171
- onFocus: r,
172
- onMouseEnter: r,
173
- children: /* @__PURE__ */ (0, z.jsx)(q, {})
174
- }) : /* @__PURE__ */ (0, z.jsx)(W, {
175
- description: Y,
176
- title: J,
177
- url: B,
178
- children: /* @__PURE__ */ (0, z.jsx)(q, {})
179
- })]
180
- });
181
- };
182
- //#endregion
183
- //#region src/views/Automations/components/automations-list.tsx
184
- i();
185
- var Z = {
186
- "member-welcome-email-free": "Welcome new free members after they sign up.",
187
- "member-welcome-email-paid": "Welcome new paid members after they start their subscription."
188
- }, Q = () => /* @__PURE__ */ (0, z.jsx)(T, {
189
- className: "flex flex-col border-t",
190
- "data-testid": "automations-list-loading",
191
- children: /* @__PURE__ */ (0, z.jsx)(S, {
192
- className: "flex flex-col",
193
- children: Array.from({ length: 2 }, (e, t) => /* @__PURE__ */ (0, z.jsxs)(C, {
194
- "aria-hidden": "true",
195
- className: "grid w-full grid-cols-[1fr_auto] items-center gap-x-4 p-2 lg:p-0",
196
- children: [/* @__PURE__ */ (0, z.jsxs)(w, {
197
- className: "min-w-0 lg:p-4",
198
- children: [/* @__PURE__ */ (0, z.jsx)(d, { className: "mb-1 h-3 w-48 max-w-full " }), /* @__PURE__ */ (0, z.jsx)(d, { className: "h-3 w-80 max-w-full" })]
199
- }), /* @__PURE__ */ (0, z.jsx)(w, {
200
- className: "text-right lg:w-32 lg:p-4",
201
- children: /* @__PURE__ */ (0, z.jsx)(d, { className: "ml-auto h-3 w-16" })
202
- })]
203
- }, t))
204
- })
205
- }), $ = ({ automations: e = [], isLoading: t = !1 }) => t ? /* @__PURE__ */ (0, z.jsx)(Q, {}) : /* @__PURE__ */ (0, z.jsx)(T, {
206
- className: "flex flex-col border-t",
207
- "data-testid": "automations-list",
208
- children: /* @__PURE__ */ (0, z.jsx)(S, {
209
- className: "flex flex-col",
210
- children: e.map((e) => {
211
- let t = Z[e.slug];
212
- return /* @__PURE__ */ (0, z.jsxs)(C, {
213
- className: "grid w-full cursor-pointer grid-cols-[1fr_auto] items-center gap-x-4 p-2 hover:bg-table-row-hover lg:p-0",
214
- "data-testid": "automation-list-row",
215
- children: [/* @__PURE__ */ (0, z.jsxs)(w, {
216
- className: "static min-w-0 lg:p-4",
217
- children: [/* @__PURE__ */ (0, z.jsx)(o, {
218
- className: "before:absolute before:inset-0 before:z-10 before:rounded-sm focus-visible:outline-hidden focus-visible:before:ring-2 focus-visible:before:ring-focus-ring",
219
- to: `/automations/${e.id}`,
220
- children: /* @__PURE__ */ (0, z.jsx)("span", {
221
- className: "block text-md font-semibold",
222
- children: e.name
223
- })
224
- }), t && /* @__PURE__ */ (0, z.jsx)("span", {
225
- className: "block text-muted-foreground",
226
- children: t
227
- })]
228
- }), /* @__PURE__ */ (0, z.jsx)(w, {
229
- className: "text-right lg:w-32 lg:p-4",
230
- children: /* @__PURE__ */ (0, z.jsx)(y, { status: e.status })
231
- })]
232
- }, e.slug);
233
- })
234
- })
235
- }), ee = {
236
- free: "member-welcome-email-free",
237
- paid: "member-welcome-email-paid"
238
- }, te = () => {
239
- let { data: e, error: t, isError: n, isLoading: r } = b({ defaultErrorHandler: !1 }), { data: i, isLoading: a } = p(), { data: o, isLoading: s } = f();
240
- return {
241
- automations: m(i?.settings || [], o?.config || {}) ? e?.automations : e?.automations?.filter((e) => e.slug !== ee.paid),
242
- error: t,
243
- isError: n,
244
- isLoading: r || a || s
245
- };
246
- };
247
- //#endregion
248
- //#region src/views/Automations/automations.tsx
249
- i();
250
- var ne = () => {
251
- let { automations: e, error: t, isError: n, isLoading: r } = te();
252
- if (n) throw t || /* @__PURE__ */ Error("Failed to load automations");
253
- return /* @__PURE__ */ (0, z.jsx)(E, { children: /* @__PURE__ */ (0, z.jsxs)(g, {
254
- "data-testid": "automations-page",
255
- children: [/* @__PURE__ */ (0, z.jsx)(g.Header, { children: /* @__PURE__ */ (0, z.jsx)(_, {
256
- blurredBackground: !1,
257
- sticky: !1,
258
- children: /* @__PURE__ */ (0, z.jsx)(_.Left, { children: /* @__PURE__ */ (0, z.jsx)(_.Title, { children: /* @__PURE__ */ (0, z.jsxs)("span", {
259
- className: "inline-flex items-baseline gap-2",
260
- children: ["Automations", /* @__PURE__ */ (0, z.jsx)(x, {
261
- className: "px-1 py-px text-[10px] leading-none tracking-wider uppercase",
262
- variant: "secondary",
263
- children: "Beta"
264
- })]
265
- }) }) })
266
- }) }), /* @__PURE__ */ (0, z.jsxs)(g.Body, { children: [/* @__PURE__ */ (0, z.jsx)($, {
267
- automations: e,
268
- isLoading: r
269
- }), /* @__PURE__ */ (0, z.jsx)(X, {})] })]
270
- }) });
271
- };
272
- //#endregion
273
- export { ne as default };
274
-
275
- //# sourceMappingURL=automations-BM0oBTjO.js.map
@@ -1,223 +0,0 @@
1
- import { A as e, F as t, p as n, t as r } from "./jsx-runtime-BfZnKD4L.js";
2
- import { i, n as a, r as o } from "./hooks-gZAmj4Al.js";
3
- //#region src/views/Automations/components/automation-status-badge.tsx
4
- n();
5
- var s = r(), c = ({ status: e }) => {
6
- switch (e) {
7
- case "active": return /* @__PURE__ */ (0, s.jsxs)("span", {
8
- className: "inline-flex items-center gap-1.5 rounded-full bg-green/20 px-2 py-0.5 text-xs font-medium text-green uppercase",
9
- children: [/* @__PURE__ */ (0, s.jsx)("span", { className: "size-1.5 rounded-full bg-green" }), "Live"]
10
- });
11
- case "inactive": return /* @__PURE__ */ (0, s.jsx)("span", {
12
- className: "inline-flex items-center gap-1.5 rounded-full bg-muted px-2 py-0.5 text-xs font-medium text-muted-foreground uppercase",
13
- children: "Off"
14
- });
15
- default: throw Error(`Unhandled status: ${e}`);
16
- }
17
- }, l = /* @__PURE__ */ t((/* @__PURE__ */ e(((e, t) => {
18
- for (var n = Math.floor(Math.random() * 16777215), r = d.index = parseInt(Math.random() * 16777215, 10), i = (typeof process > "u" || typeof process.pid != "number" ? Math.floor(Math.random() * 1e5) : process.pid) % 65535, a = (() => {
19
- try {
20
- return _Buffer;
21
- } catch {
22
- try {
23
- return Buffer;
24
- } catch {
25
- return null;
26
- }
27
- }
28
- })(), o = function(e) {
29
- return !!(e != null && e.constructor && typeof e.constructor.isBuffer == "function" && e.constructor.isBuffer(e));
30
- }, s = [], c = 0; c < 256; c++) s[c] = (c <= 15 ? "0" : "") + c.toString(16);
31
- var l = /* @__PURE__ */ RegExp("^[0-9a-fA-F]{24}$"), u = [];
32
- for (c = 0; c < 10;) u[48 + c] = c++;
33
- for (; c < 16;) u[55 + c] = u[87 + c] = c++;
34
- function d(e) {
35
- if (!(this instanceof d)) return new d(e);
36
- if (e && (e instanceof d || e._bsontype === "ObjectID")) return e;
37
- if (this._bsontype = "ObjectID", e == null || typeof e == "number") {
38
- this.id = this.generate(e);
39
- return;
40
- }
41
- var t = d.isValid(e);
42
- if (!t && e != null) throw Error("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");
43
- if (t && typeof e == "string" && e.length === 24) return d.createFromHexString(e);
44
- if (e != null && e.length === 12) this.id = e;
45
- else if (e != null && typeof e.toHexString == "function") return e;
46
- else throw Error("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");
47
- }
48
- t.exports = d, d.default = d, d.createFromTime = function(e) {
49
- return e = parseInt(e, 10) % 4294967295, new d(p(8, e) + "0000000000000000");
50
- }, d.createFromHexString = function(e) {
51
- if (e === void 0 || e != null && e.length !== 24) throw Error("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");
52
- for (var t = "", n = 0; n < 24;) t += String.fromCharCode(u[e.charCodeAt(n++)] << 4 | u[e.charCodeAt(n++)]);
53
- return new d(t);
54
- }, d.isValid = function(e) {
55
- return e == null ? !1 : typeof e == "number" ? !0 : typeof e == "string" ? e.length === 12 || e.length === 24 && l.test(e) : e instanceof d ? !0 : o(e) ? d.isValid(e.toString("hex")) : typeof e.toHexString == "function" && a && (e.id instanceof a || typeof e.id == "string") ? e.id.length === 12 || e.id.length === 24 && l.test(e.id) : !1;
56
- }, d.prototype = {
57
- constructor: d,
58
- toHexString: function() {
59
- if (!this.id || !this.id.length) throw Error("invalid ObjectId, ObjectId.id must be either a string or a Buffer, but is [" + JSON.stringify(this.id) + "]");
60
- if (this.id.length === 24) return this.id;
61
- if (o(this.id)) return this.id.toString("hex");
62
- for (var e = "", t = 0; t < this.id.length; t++) e += s[this.id.charCodeAt(t)];
63
- return e;
64
- },
65
- equals: function(e) {
66
- return e instanceof d ? this.toString() === e.toString() : typeof e == "string" && d.isValid(e) && e.length === 12 && o(this.id) ? e === this.id.toString("binary") : typeof e == "string" && d.isValid(e) && e.length === 24 ? e.toLowerCase() === this.toHexString() : typeof e == "string" && d.isValid(e) && e.length === 12 ? e === this.id : e != null && (e instanceof d || e.toHexString) ? e.toHexString() === this.toHexString() : !1;
67
- },
68
- getTimestamp: function() {
69
- var e = /* @__PURE__ */ new Date(), t = o(this.id) ? this.id[3] | this.id[2] << 8 | this.id[1] << 16 | this.id[0] << 24 : this.id.charCodeAt(3) | this.id.charCodeAt(2) << 8 | this.id.charCodeAt(1) << 16 | this.id.charCodeAt(0) << 24;
70
- return e.setTime(Math.floor(t) * 1e3), e;
71
- },
72
- generate: function(e) {
73
- typeof e != "number" && (e = ~~(Date.now() / 1e3)), e = parseInt(e, 10) % 4294967295;
74
- var t = f();
75
- return String.fromCharCode(e >> 24 & 255, e >> 16 & 255, e >> 8 & 255, e & 255, n >> 16 & 255, n >> 8 & 255, n & 255, i >> 8 & 255, i & 255, t >> 16 & 255, t >> 8 & 255, t & 255);
76
- }
77
- };
78
- function f() {
79
- return r = (r + 1) % 16777215;
80
- }
81
- function p(e, t) {
82
- return t = t.toString(16), t.length === e ? t : "00000000".substring(t.length, e) + t;
83
- }
84
- var m = Symbol && Symbol.for && Symbol.for("nodejs.util.inspect.custom") || "inspect";
85
- d.prototype[m] = function() {
86
- return "ObjectID(" + this + ")";
87
- }, d.prototype.toJSON = d.prototype.toHexString, d.prototype.toString = d.prototype.toHexString;
88
- })))(), 1), u = "AutomationsResponseType", d = o({
89
- dataType: u,
90
- path: "/automations/"
91
- }), f = i({
92
- dataType: u,
93
- path: (e) => `/automations/${e}/`
94
- }), p = a({
95
- method: "PUT",
96
- path: ({ id: e }) => `/automations/${e}/`,
97
- body: ({ status: e, actions: t, edges: n }) => ({ automations: [{
98
- status: e,
99
- actions: t,
100
- edges: n
101
- }] }),
102
- invalidateQueries: { dataType: u }
103
- }), m = a({
104
- method: "POST",
105
- path: ({ id: e }) => `/automations/${e}/email_preview`,
106
- body: ({ subject: e, lexical: t }) => ({
107
- subject: e,
108
- lexical: t
109
- })
110
- }), h = a({
111
- method: "POST",
112
- path: ({ id: e }) => `/automations/${e}/email_test`,
113
- body: ({ email: e, subject: t, lexical: n }) => ({
114
- email: e,
115
- subject: t,
116
- lexical: n
117
- })
118
- }), g = () => (0, l.default)().toHexString(), _ = "default-automated-email", v = JSON.stringify({ root: {
119
- children: [],
120
- direction: null,
121
- format: "",
122
- indent: 0,
123
- type: "root",
124
- version: 1
125
- } }), y = () => ({
126
- id: g(),
127
- type: "wait",
128
- data: { wait_hours: 24 }
129
- }), b = () => ({
130
- id: g(),
131
- type: "send_email",
132
- data: {
133
- email_subject: "",
134
- email_lexical: v,
135
- email_design_setting_id: _
136
- }
137
- }), x = (e, t) => {
138
- if (!e.actions.some((e) => e.id === t)) throw Error(`spliceAction: anchor references unknown action id "${t}"`);
139
- }, S = (e, t, n) => e.edges.some((e) => e.source_action_id === t && e.target_action_id === n), C = ({ detail: e, action: t, anchor: n }) => {
140
- let { previousActionId: r, nextActionId: i } = n;
141
- if (r !== void 0 && x(e, r), i !== void 0 && x(e, i), r === void 0 && i === void 0 && e.actions.length > 0) throw Error("spliceAction: anchor is required when inserting into a non-empty automation");
142
- if (r !== void 0 && i !== void 0 && !S(e, r, i)) throw Error(`spliceAction: anchor edge "${r}" -> "${i}" does not exist`);
143
- if (r !== void 0 && i === void 0 && e.edges.some((e) => e.source_action_id === r)) throw Error(`spliceAction: anchor previousActionId "${r}" is not the tail action`);
144
- if (r === void 0 && i !== void 0 && e.edges.some((e) => e.target_action_id === i)) throw Error(`spliceAction: anchor nextActionId "${i}" is not the head action`);
145
- let a = [...e.actions, t], o = e.edges.filter((e) => !(e.source_action_id === r && e.target_action_id === i));
146
- return r !== void 0 && o.push({
147
- source_action_id: r,
148
- target_action_id: t.id
149
- }), i !== void 0 && o.push({
150
- source_action_id: t.id,
151
- target_action_id: i
152
- }), {
153
- ...e,
154
- actions: a,
155
- edges: o
156
- };
157
- }, w = ({ detail: e, anchor: t }) => C({
158
- detail: e,
159
- action: y(),
160
- anchor: t
161
- }), T = ({ detail: e, anchor: t }) => C({
162
- detail: e,
163
- action: b(),
164
- anchor: t
165
- }), E = ({ detail: e, actionId: t, waitHours: n }) => {
166
- if (!Number.isSafeInteger(n) || n <= 0) throw Error(`updateWaitAction: waitHours must be a safe positive integer, received "${n}"`);
167
- let r = !1, i = e.actions.map((e) => {
168
- if (e.id === t) {
169
- if (e.type !== "wait") throw Error(`updateWaitAction: action "${t}" is not a wait action`);
170
- return r = !0, {
171
- ...e,
172
- data: {
173
- ...e.data,
174
- wait_hours: n
175
- }
176
- };
177
- }
178
- return e;
179
- });
180
- if (!r) throw Error(`updateWaitAction: unknown action id "${t}"`);
181
- return {
182
- ...e,
183
- actions: i,
184
- edges: [...e.edges]
185
- };
186
- }, D = ({ detail: e, actionId: t, emailSubject: n, emailLexical: r }) => {
187
- let i = !1, a = e.actions.map((e) => {
188
- if (e.id === t) {
189
- if (e.type !== "send_email") throw Error(`updateSendEmailAction: action "${t}" is not a send_email action`);
190
- return i = !0, {
191
- ...e,
192
- data: {
193
- ...e.data,
194
- email_subject: n,
195
- email_lexical: r
196
- }
197
- };
198
- }
199
- return e;
200
- });
201
- if (!i) throw Error(`updateSendEmailAction: unknown action id "${t}"`);
202
- return {
203
- ...e,
204
- actions: a,
205
- edges: [...e.edges]
206
- };
207
- }, O = ({ detail: e, actionId: t }) => {
208
- let n = e.actions.filter((e) => e.id !== t);
209
- if (!(n.length < e.actions.length)) throw Error(`removeAction: unknown action id "${t}"`);
210
- let r = e.edges.find((e) => e.target_action_id === t), i = e.edges.find((e) => e.source_action_id === t), a = e.edges.filter((e) => e.source_action_id !== t && e.target_action_id !== t);
211
- return r && i && a.push({
212
- source_action_id: r.source_action_id,
213
- target_action_id: i.target_action_id
214
- }), {
215
- ...e,
216
- actions: n,
217
- edges: a
218
- };
219
- };
220
- //#endregion
221
- export { E as a, m as c, c as d, D as i, f as l, w as n, d as o, O as r, p as s, T as t, h as u };
222
-
223
- //# sourceMappingURL=automations-Dbp-gdHS.js.map
@@ -1,144 +0,0 @@
1
- import { D as e, E as t, b as n, f as r, p as i, t as a } from "./jsx-runtime-BfZnKD4L.js";
2
- import { At as o, Ft as s, Mt as c, Nt as l, c as u } from "./button-Dd8Xreln.js";
3
- import { h as d, s as f } from "./shade-app-DLbeExcd-NeEZjE3R.js";
4
- import { a as p, r as m } from "./app-utils-9O53Czfw.js";
5
- //#region ../../node_modules/.pnpm/@radix-ui+react-avatar@1.2.1_@types+react-dom@18.3.7_@types+react@18.3.31__@types+react_618495bb42525b350fac96e721ad44e8/node_modules/@radix-ui/react-avatar/dist/index.mjs
6
- i();
7
- var h = a(), g = "Avatar", [_, v] = l(g), y = [0, () => void 0], [b, x] = _(g), S = r((t, n) => {
8
- let { __scopeAvatar: r, ...i } = t, [a, o] = e("idle"), [c, l] = k();
9
- return /* @__PURE__ */ (0, h.jsx)(b, {
10
- scope: r,
11
- imageLoadingStatus: a,
12
- setImageLoadingStatus: o,
13
- imageCount: c,
14
- setImageCount: l,
15
- children: /* @__PURE__ */ (0, h.jsx)(s.span, {
16
- ...i,
17
- ref: n
18
- })
19
- });
20
- });
21
- S.displayName = g;
22
- var C = "AvatarImage", w = r((e, n) => {
23
- let { __scopeAvatar: r, src: i, onLoadingStatusChange: a, ...l } = e, u = x(C, r);
24
- A(u.setImageCount);
25
- let d = D(i, {
26
- referrerPolicy: l.referrerPolicy,
27
- crossOrigin: l.crossOrigin,
28
- loadingStatus: u.imageLoadingStatus,
29
- setLoadingStatus: u.setImageLoadingStatus
30
- }), f = o((e) => {
31
- a?.(e);
32
- }), p = t(d);
33
- return c(() => {
34
- let e = p.current;
35
- p.current = d, d !== e && f(d);
36
- }, [d, f]), d === "loaded" ? /* @__PURE__ */ (0, h.jsx)(s.img, {
37
- ...l,
38
- ref: n,
39
- src: i
40
- }) : null;
41
- });
42
- w.displayName = C;
43
- var T = "AvatarFallback", E = r((t, r) => {
44
- let { __scopeAvatar: i, delayMs: a, ...o } = t, c = x(T, i), [l, u] = e(a === void 0);
45
- return n(() => {
46
- if (a !== void 0) {
47
- let e = window.setTimeout(() => u(!0), a);
48
- return () => window.clearTimeout(e);
49
- }
50
- }, [a]), l && c.imageLoadingStatus !== "loaded" ? /* @__PURE__ */ (0, h.jsx)(s.span, {
51
- ...o,
52
- ref: r
53
- }) : null;
54
- });
55
- E.displayName = T;
56
- function D(e, { loadingStatus: t, setLoadingStatus: n, referrerPolicy: r, crossOrigin: i }) {
57
- return c(() => {
58
- if (!e) {
59
- n("error");
60
- return;
61
- }
62
- let t = new window.Image(), a = (e) => {
63
- let t = e.currentTarget;
64
- n(O(t));
65
- }, o = () => n("error");
66
- return t.addEventListener("load", a), t.addEventListener("error", o), r && (t.referrerPolicy = r), t.crossOrigin = i ?? null, t.src = e, n(O(t)), () => {
67
- t.removeEventListener("load", a), t.removeEventListener("error", o), n("idle");
68
- };
69
- }, [
70
- e,
71
- i,
72
- r,
73
- n
74
- ]), t;
75
- }
76
- function O(e) {
77
- return e.complete ? e.naturalWidth > 0 ? "loaded" : "error" : "loading";
78
- }
79
- function k() {
80
- let r = y;
81
- {
82
- r = e(0);
83
- let [i] = r, a = t(!1);
84
- n(() => {
85
- i > 1 && !a.current && (a.current = !0, console.warn("Avatar: Only one `Avatar.Image` component should be rendered per `Avatar.Root`, but multiple were detected. This will lead to unexpected behavior."));
86
- }, [i]);
87
- }
88
- return r;
89
- }
90
- function A(e) {
91
- n(() => (e((e) => e + 1), () => {
92
- e((e) => e - 1);
93
- }), [e]);
94
- }
95
- //#endregion
96
- //#region ../shade/es/components/ui/avatar.js
97
- i();
98
- var j = r(({ className: e, ...t }, n) => /* @__PURE__ */ (0, h.jsx)(w, {
99
- ref: n,
100
- className: f("aspect-square size-full", e),
101
- ...t
102
- }));
103
- j.displayName = w.displayName;
104
- var M = r(({ className: e, ...t }, n) => /* @__PURE__ */ (0, h.jsx)(E, {
105
- ref: n,
106
- className: f("flex size-full items-center justify-center rounded-full bg-muted [&_svg]:size-4", e),
107
- ...t
108
- }));
109
- M.displayName = E.displayName;
110
- function N({ src: t }) {
111
- let [r, i] = e(!1);
112
- return n(() => {
113
- i(!1);
114
- }, [t]), /* @__PURE__ */ (0, h.jsx)("img", {
115
- alt: "",
116
- className: f("absolute inset-0 size-full object-cover", !r && "invisible"),
117
- src: t,
118
- onLoad: (e) => {
119
- let { naturalWidth: t, naturalHeight: n } = e.currentTarget;
120
- t > 1 && n > 1 && i(!0);
121
- }
122
- });
123
- }
124
- var P = r(({ className: e, children: t, src: n, name: r, email: i, ...a }, o) => {
125
- let s = {
126
- name: r || void 0,
127
- email: i || void 0
128
- }, c = !!(r || i), l = c ? p(s) : null, g = c ? d(m(s), "45", "55") : void 0;
129
- return /* @__PURE__ */ (0, h.jsx)(S, {
130
- ref: o,
131
- className: f("relative flex size-8 shrink-0 overflow-hidden rounded-full", e),
132
- ...a,
133
- children: t ?? /* @__PURE__ */ (0, h.jsxs)(h.Fragment, { children: [/* @__PURE__ */ (0, h.jsx)(M, {
134
- className: f("text-xs text-muted-foreground md:text-sm [&_svg]:size-3 md:[&_svg]:size-4", c && "font-semibold text-white"),
135
- style: c ? { backgroundColor: g } : void 0,
136
- children: l ?? /* @__PURE__ */ (0, h.jsx)(u, {})
137
- }), n && /* @__PURE__ */ (0, h.jsx)(N, { src: n })] })
138
- });
139
- });
140
- P.displayName = S.displayName;
141
- //#endregion
142
- export { M as n, P as t };
143
-
144
- //# sourceMappingURL=avatar-kOk1tTvT.js.map
@@ -1,25 +0,0 @@
1
- import { p as e, t } from "./jsx-runtime-BfZnKD4L.js";
2
- import { o as n, s as r } from "./shade-app-DLbeExcd-NeEZjE3R.js";
3
- //#region ../shade/es/components/ui/badge.js
4
- e();
5
- var i = t(), a = n("inline-flex items-center rounded-xs border px-1.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-focus-ring focus:ring-offset-2 focus:outline-hidden", {
6
- variants: { variant: {
7
- default: "border-transparent bg-primary text-primary-foreground",
8
- secondary: "border-transparent bg-secondary text-secondary-foreground/70",
9
- destructive: "border-transparent bg-destructive/20 text-destructive",
10
- success: "border-transparent bg-green/20 text-green",
11
- warning: "border-transparent bg-state-warning/20 text-yellow-600",
12
- outline: "text-foreground"
13
- } },
14
- defaultVariants: { variant: "default" }
15
- });
16
- function o({ className: e, variant: t, ...n }) {
17
- return /* @__PURE__ */ (0, i.jsx)("div", {
18
- className: r(a({ variant: t }), e),
19
- ...n
20
- });
21
- }
22
- //#endregion
23
- export { a as n, o as t };
24
-
25
- //# sourceMappingURL=badge-DnByIHe9.js.map