@novu/react 3.15.0 → 3.17.0-rc.d0046861c6

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 (151) hide show
  1. package/dist/cjs/components/NovuUI.cjs.map +1 -1
  2. package/dist/cjs/components/NovuUI.d.cts +2 -2
  3. package/dist/cjs/components/connect-chat/ConnectChat.cjs +63 -0
  4. package/dist/cjs/components/connect-chat/ConnectChat.cjs.map +1 -0
  5. package/dist/cjs/components/connect-chat/ConnectChat.d.cts +12 -0
  6. package/dist/cjs/components/connect-chat/DefaultConnectChat.cjs +83 -0
  7. package/dist/cjs/components/connect-chat/DefaultConnectChat.cjs.map +1 -0
  8. package/dist/cjs/components/connect-chat/DefaultConnectChat.d.cts +7 -0
  9. package/dist/cjs/components/index.cjs +8 -0
  10. package/dist/cjs/components/index.cjs.map +1 -1
  11. package/dist/cjs/components/index.d.cts +9 -1
  12. package/dist/cjs/components/msteams-connect-button/DefaultMsTeamsConnectButton.cjs +92 -0
  13. package/dist/cjs/components/msteams-connect-button/DefaultMsTeamsConnectButton.cjs.map +1 -0
  14. package/dist/cjs/components/msteams-connect-button/DefaultMsTeamsConnectButton.d.cts +7 -0
  15. package/dist/cjs/components/msteams-connect-button/MsTeamsConnectButton.cjs +63 -0
  16. package/dist/cjs/components/msteams-connect-button/MsTeamsConnectButton.cjs.map +1 -0
  17. package/dist/cjs/components/msteams-connect-button/MsTeamsConnectButton.d.cts +12 -0
  18. package/dist/cjs/components/msteams-link-user/DefaultMsTeamsLinkUser.cjs +80 -0
  19. package/dist/cjs/components/msteams-link-user/DefaultMsTeamsLinkUser.cjs.map +1 -0
  20. package/dist/cjs/components/msteams-link-user/DefaultMsTeamsLinkUser.d.cts +7 -0
  21. package/dist/cjs/components/msteams-link-user/MsTeamsLinkUser.cjs +63 -0
  22. package/dist/cjs/components/msteams-link-user/MsTeamsLinkUser.cjs.map +1 -0
  23. package/dist/cjs/components/msteams-link-user/MsTeamsLinkUser.d.cts +12 -0
  24. package/dist/cjs/components/slack-connect-button/DefaultSlackConnectButton.cjs +92 -0
  25. package/dist/cjs/components/slack-connect-button/DefaultSlackConnectButton.cjs.map +1 -0
  26. package/dist/cjs/components/slack-connect-button/DefaultSlackConnectButton.d.cts +7 -0
  27. package/dist/cjs/components/slack-connect-button/SlackConnectButton.cjs +63 -0
  28. package/dist/cjs/components/slack-connect-button/SlackConnectButton.cjs.map +1 -0
  29. package/dist/cjs/components/slack-connect-button/SlackConnectButton.d.cts +12 -0
  30. package/dist/cjs/components/slack-link-user/DefaultSlackLinkUser.cjs +80 -0
  31. package/dist/cjs/components/slack-link-user/DefaultSlackLinkUser.cjs.map +1 -0
  32. package/dist/cjs/components/slack-link-user/DefaultSlackLinkUser.d.cts +7 -0
  33. package/dist/cjs/components/slack-link-user/SlackLinkUser.cjs +63 -0
  34. package/dist/cjs/components/slack-link-user/SlackLinkUser.cjs.map +1 -0
  35. package/dist/cjs/components/slack-link-user/SlackLinkUser.d.cts +12 -0
  36. package/dist/cjs/hooks/NovuProvider.cjs +34 -22
  37. package/dist/cjs/hooks/NovuProvider.cjs.map +1 -1
  38. package/dist/cjs/hooks/NovuProvider.d.cts +13 -2
  39. package/dist/cjs/hooks/index.cjs +10 -0
  40. package/dist/cjs/hooks/index.cjs.map +1 -1
  41. package/dist/cjs/hooks/index.d.cts +5 -0
  42. package/dist/cjs/hooks/internal/useBrowserTabsChannel.cjs +5 -2
  43. package/dist/cjs/hooks/internal/useBrowserTabsChannel.cjs.map +1 -1
  44. package/dist/cjs/hooks/internal/useBrowserTabsChannel.d.cts +2 -1
  45. package/dist/cjs/hooks/internal/useWebsocketEvent.cjs +6 -3
  46. package/dist/cjs/hooks/internal/useWebsocketEvent.cjs.map +1 -1
  47. package/dist/cjs/hooks/internal/useWebsocketEvent.d.cts +2 -1
  48. package/dist/cjs/hooks/useChannelConnection.cjs +107 -0
  49. package/dist/cjs/hooks/useChannelConnection.cjs.map +1 -0
  50. package/dist/cjs/hooks/useChannelConnection.d.cts +20 -0
  51. package/dist/cjs/hooks/useChannelConnections.cjs +85 -0
  52. package/dist/cjs/hooks/useChannelConnections.cjs.map +1 -0
  53. package/dist/cjs/hooks/useChannelConnections.d.cts +24 -0
  54. package/dist/cjs/hooks/useChannelEndpoint.cjs +110 -0
  55. package/dist/cjs/hooks/useChannelEndpoint.cjs.map +1 -0
  56. package/dist/cjs/hooks/useChannelEndpoint.d.cts +20 -0
  57. package/dist/cjs/hooks/useCounts.cjs +5 -1
  58. package/dist/cjs/hooks/useCounts.cjs.map +1 -1
  59. package/dist/cjs/hooks/useCounts.d.cts +18 -0
  60. package/dist/cjs/hooks/useCreateChannelEndpoint.cjs +61 -0
  61. package/dist/cjs/hooks/useCreateChannelEndpoint.cjs.map +1 -0
  62. package/dist/cjs/hooks/useCreateChannelEndpoint.d.cts +17 -0
  63. package/dist/cjs/hooks/useDeleteChannelEndpoint.cjs +69 -0
  64. package/dist/cjs/hooks/useDeleteChannelEndpoint.cjs.map +1 -0
  65. package/dist/cjs/hooks/useDeleteChannelEndpoint.d.cts +17 -0
  66. package/dist/cjs/hooks/useNotifications.cjs +4 -0
  67. package/dist/cjs/hooks/useNotifications.cjs.map +1 -1
  68. package/dist/cjs/hooks/useNotifications.d.cts +18 -0
  69. package/dist/cjs/index.cjs +18 -0
  70. package/dist/cjs/index.cjs.map +1 -1
  71. package/dist/cjs/index.d.cts +15 -2
  72. package/dist/cjs/internal/index.d.cts +1 -0
  73. package/dist/cjs/server/index.d.cts +1 -1
  74. package/dist/cjs/themes/index.d.cts +0 -1
  75. package/dist/cjs/utils/appearance.cjs.map +1 -1
  76. package/dist/cjs/utils/appearance.d.cts +2 -2
  77. package/dist/esm/components/NovuUI.d.ts +2 -2
  78. package/dist/esm/components/NovuUI.js.map +1 -1
  79. package/dist/esm/components/connect-chat/ConnectChat.d.ts +12 -0
  80. package/dist/esm/components/connect-chat/ConnectChat.js +28 -0
  81. package/dist/esm/components/connect-chat/ConnectChat.js.map +1 -0
  82. package/dist/esm/components/connect-chat/DefaultConnectChat.d.ts +7 -0
  83. package/dist/esm/components/connect-chat/DefaultConnectChat.js +58 -0
  84. package/dist/esm/components/connect-chat/DefaultConnectChat.js.map +1 -0
  85. package/dist/esm/components/index.d.ts +9 -1
  86. package/dist/esm/components/index.js +4 -0
  87. package/dist/esm/components/index.js.map +1 -1
  88. package/dist/esm/components/msteams-connect-button/DefaultMsTeamsConnectButton.d.ts +7 -0
  89. package/dist/esm/components/msteams-connect-button/DefaultMsTeamsConnectButton.js +67 -0
  90. package/dist/esm/components/msteams-connect-button/DefaultMsTeamsConnectButton.js.map +1 -0
  91. package/dist/esm/components/msteams-connect-button/MsTeamsConnectButton.d.ts +12 -0
  92. package/dist/esm/components/msteams-connect-button/MsTeamsConnectButton.js +28 -0
  93. package/dist/esm/components/msteams-connect-button/MsTeamsConnectButton.js.map +1 -0
  94. package/dist/esm/components/msteams-link-user/DefaultMsTeamsLinkUser.d.ts +7 -0
  95. package/dist/esm/components/msteams-link-user/DefaultMsTeamsLinkUser.js +55 -0
  96. package/dist/esm/components/msteams-link-user/DefaultMsTeamsLinkUser.js.map +1 -0
  97. package/dist/esm/components/msteams-link-user/MsTeamsLinkUser.d.ts +12 -0
  98. package/dist/esm/components/msteams-link-user/MsTeamsLinkUser.js +28 -0
  99. package/dist/esm/components/msteams-link-user/MsTeamsLinkUser.js.map +1 -0
  100. package/dist/esm/components/slack-connect-button/DefaultSlackConnectButton.d.ts +7 -0
  101. package/dist/esm/components/slack-connect-button/DefaultSlackConnectButton.js +67 -0
  102. package/dist/esm/components/slack-connect-button/DefaultSlackConnectButton.js.map +1 -0
  103. package/dist/esm/components/slack-connect-button/SlackConnectButton.d.ts +12 -0
  104. package/dist/esm/components/slack-connect-button/SlackConnectButton.js +28 -0
  105. package/dist/esm/components/slack-connect-button/SlackConnectButton.js.map +1 -0
  106. package/dist/esm/components/slack-link-user/DefaultSlackLinkUser.d.ts +7 -0
  107. package/dist/esm/components/slack-link-user/DefaultSlackLinkUser.js +55 -0
  108. package/dist/esm/components/slack-link-user/DefaultSlackLinkUser.js.map +1 -0
  109. package/dist/esm/components/slack-link-user/SlackLinkUser.d.ts +12 -0
  110. package/dist/esm/components/slack-link-user/SlackLinkUser.js +28 -0
  111. package/dist/esm/components/slack-link-user/SlackLinkUser.js.map +1 -0
  112. package/dist/esm/hooks/NovuProvider.d.ts +13 -2
  113. package/dist/esm/hooks/NovuProvider.js +33 -22
  114. package/dist/esm/hooks/NovuProvider.js.map +1 -1
  115. package/dist/esm/hooks/index.d.ts +5 -0
  116. package/dist/esm/hooks/index.js +5 -0
  117. package/dist/esm/hooks/index.js.map +1 -1
  118. package/dist/esm/hooks/internal/useBrowserTabsChannel.d.ts +2 -1
  119. package/dist/esm/hooks/internal/useBrowserTabsChannel.js +5 -2
  120. package/dist/esm/hooks/internal/useBrowserTabsChannel.js.map +1 -1
  121. package/dist/esm/hooks/internal/useWebsocketEvent.d.ts +2 -1
  122. package/dist/esm/hooks/internal/useWebsocketEvent.js +6 -3
  123. package/dist/esm/hooks/internal/useWebsocketEvent.js.map +1 -1
  124. package/dist/esm/hooks/useChannelConnection.d.ts +20 -0
  125. package/dist/esm/hooks/useChannelConnection.js +81 -0
  126. package/dist/esm/hooks/useChannelConnection.js.map +1 -0
  127. package/dist/esm/hooks/useChannelConnections.d.ts +24 -0
  128. package/dist/esm/hooks/useChannelConnections.js +60 -0
  129. package/dist/esm/hooks/useChannelConnections.js.map +1 -0
  130. package/dist/esm/hooks/useChannelEndpoint.d.ts +20 -0
  131. package/dist/esm/hooks/useChannelEndpoint.js +83 -0
  132. package/dist/esm/hooks/useChannelEndpoint.js.map +1 -0
  133. package/dist/esm/hooks/useCounts.d.ts +18 -0
  134. package/dist/esm/hooks/useCounts.js +6 -2
  135. package/dist/esm/hooks/useCounts.js.map +1 -1
  136. package/dist/esm/hooks/useCreateChannelEndpoint.d.ts +17 -0
  137. package/dist/esm/hooks/useCreateChannelEndpoint.js +36 -0
  138. package/dist/esm/hooks/useCreateChannelEndpoint.js.map +1 -0
  139. package/dist/esm/hooks/useDeleteChannelEndpoint.d.ts +17 -0
  140. package/dist/esm/hooks/useDeleteChannelEndpoint.js +43 -0
  141. package/dist/esm/hooks/useDeleteChannelEndpoint.js.map +1 -0
  142. package/dist/esm/hooks/useNotifications.d.ts +18 -0
  143. package/dist/esm/hooks/useNotifications.js +5 -1
  144. package/dist/esm/hooks/useNotifications.js.map +1 -1
  145. package/dist/esm/index.d.ts +15 -2
  146. package/dist/esm/index.js +18 -0
  147. package/dist/esm/index.js.map +1 -1
  148. package/dist/esm/server/index.d.ts +1 -1
  149. package/dist/esm/utils/appearance.d.ts +2 -2
  150. package/dist/esm/utils/appearance.js.map +1 -1
  151. package/package.json +2 -2
@@ -0,0 +1,67 @@
1
+ // src/components/msteams-connect-button/DefaultMsTeamsConnectButton.tsx
2
+ import { useCallback } from "react";
3
+ import { useNovuUI } from "../../context/NovuUIContext.js";
4
+ import { Mounter } from "../Mounter.js";
5
+ import { jsx } from "react/jsx-runtime";
6
+ var DefaultMsTeamsConnectButton = (props) => {
7
+ const {
8
+ integrationIdentifier,
9
+ connectionIdentifier,
10
+ subscriberId,
11
+ context,
12
+ scope,
13
+ connectionMode,
14
+ autoLinkUser,
15
+ onConnectSuccess,
16
+ onConnectError,
17
+ onDisconnectSuccess,
18
+ onDisconnectError,
19
+ connectLabel,
20
+ connectedLabel
21
+ } = props;
22
+ const { novuUI } = useNovuUI();
23
+ const mount = useCallback(
24
+ (element) => {
25
+ return novuUI.mountComponent({
26
+ name: "MsTeamsConnectButton",
27
+ props: {
28
+ integrationIdentifier,
29
+ connectionIdentifier,
30
+ subscriberId,
31
+ context,
32
+ scope,
33
+ connectionMode,
34
+ autoLinkUser,
35
+ onConnectSuccess,
36
+ onConnectError,
37
+ onDisconnectSuccess,
38
+ onDisconnectError,
39
+ connectLabel,
40
+ connectedLabel
41
+ },
42
+ element
43
+ });
44
+ },
45
+ [
46
+ novuUI,
47
+ integrationIdentifier,
48
+ connectionIdentifier,
49
+ subscriberId,
50
+ context,
51
+ scope,
52
+ connectionMode,
53
+ autoLinkUser,
54
+ onConnectSuccess,
55
+ onConnectError,
56
+ onDisconnectSuccess,
57
+ onDisconnectError,
58
+ connectLabel,
59
+ connectedLabel
60
+ ]
61
+ );
62
+ return /* @__PURE__ */ jsx(Mounter, { mount });
63
+ };
64
+ export {
65
+ DefaultMsTeamsConnectButton
66
+ };
67
+ //# sourceMappingURL=DefaultMsTeamsConnectButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/msteams-connect-button/DefaultMsTeamsConnectButton.tsx"],"sourcesContent":["import { MsTeamsConnectButtonProps } from '@novu/js/ui';\nimport { useCallback } from 'react';\nimport { useNovuUI } from '../../context/NovuUIContext';\nimport { Mounter } from '../Mounter';\n\nexport type DefaultMsTeamsConnectButtonProps = Pick<\n MsTeamsConnectButtonProps,\n | 'integrationIdentifier'\n | 'connectionIdentifier'\n | 'subscriberId'\n | 'context'\n | 'scope'\n | 'connectionMode'\n | 'autoLinkUser'\n | 'onConnectSuccess'\n | 'onConnectError'\n | 'onDisconnectSuccess'\n | 'onDisconnectError'\n | 'connectLabel'\n | 'connectedLabel'\n>;\n\nexport const DefaultMsTeamsConnectButton = (props: DefaultMsTeamsConnectButtonProps) => {\n const {\n integrationIdentifier,\n connectionIdentifier,\n subscriberId,\n context,\n scope,\n connectionMode,\n autoLinkUser,\n onConnectSuccess,\n onConnectError,\n onDisconnectSuccess,\n onDisconnectError,\n connectLabel,\n connectedLabel,\n } = props;\n const { novuUI } = useNovuUI();\n\n const mount = useCallback(\n (element: HTMLElement) => {\n return novuUI.mountComponent({\n name: 'MsTeamsConnectButton',\n props: {\n integrationIdentifier,\n connectionIdentifier,\n subscriberId,\n context,\n scope,\n connectionMode,\n autoLinkUser,\n onConnectSuccess,\n onConnectError,\n onDisconnectSuccess,\n onDisconnectError,\n connectLabel,\n connectedLabel,\n },\n element,\n });\n },\n [\n novuUI,\n integrationIdentifier,\n connectionIdentifier,\n subscriberId,\n context,\n scope,\n connectionMode,\n autoLinkUser,\n onConnectSuccess,\n onConnectError,\n onDisconnectSuccess,\n onDisconnectError,\n connectLabel,\n connectedLabel,\n ]\n );\n\n return <Mounter mount={mount} />;\n};\n"],"mappings":";AACA,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AA6Ef;AA1DF,IAAM,8BAA8B,CAAC,UAA4C;AACtF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,EAAE,OAAO,IAAI,UAAU;AAE7B,QAAM,QAAQ;AAAA,IACZ,CAAC,YAAyB;AACxB,aAAO,OAAO,eAAe;AAAA,QAC3B,MAAM;AAAA,QACN,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO,oBAAC,WAAQ,OAAc;AAChC;","names":[]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { NovuUIOptions } from '../NovuUI.js';
4
+ import { DefaultMsTeamsConnectButtonProps } from './DefaultMsTeamsConnectButton.js';
5
+ import '@novu/js';
6
+ import '@novu/js/ui';
7
+ import '../../utils/types.js';
8
+
9
+ type MsTeamsConnectButtonProps = DefaultMsTeamsConnectButtonProps & Pick<NovuUIOptions, 'container' | 'appearance'>;
10
+ declare const MsTeamsConnectButton: React__default.MemoExoticComponent<(props: MsTeamsConnectButtonProps) => react_jsx_runtime.JSX.Element>;
11
+
12
+ export { MsTeamsConnectButton, type MsTeamsConnectButtonProps };
@@ -0,0 +1,28 @@
1
+ // src/components/msteams-connect-button/MsTeamsConnectButton.tsx
2
+ import React, { useMemo } from "react";
3
+ import { useNovu } from "../../hooks/NovuProvider.js";
4
+ import { NovuUI } from "../NovuUI.js";
5
+ import { withRenderer } from "../Renderer.js";
6
+ import { DefaultMsTeamsConnectButton } from "./DefaultMsTeamsConnectButton.js";
7
+ import { jsx } from "react/jsx-runtime";
8
+ var MsTeamsConnectButtonInternal = withRenderer((props) => {
9
+ const { container, appearance, ...defaultProps } = props;
10
+ const novu = useNovu();
11
+ const options = useMemo(() => {
12
+ return {
13
+ container,
14
+ appearance,
15
+ options: novu.options
16
+ };
17
+ }, [container, appearance, novu.options]);
18
+ return /* @__PURE__ */ jsx(NovuUI, { options, novu, children: /* @__PURE__ */ jsx(DefaultMsTeamsConnectButton, { ...defaultProps }) });
19
+ });
20
+ MsTeamsConnectButtonInternal.displayName = "MsTeamsConnectButtonInternal";
21
+ var MsTeamsConnectButton = React.memo((props) => {
22
+ return /* @__PURE__ */ jsx(MsTeamsConnectButtonInternal, { ...props });
23
+ });
24
+ MsTeamsConnectButton.displayName = "MsTeamsConnectButton";
25
+ export {
26
+ MsTeamsConnectButton
27
+ };
28
+ //# sourceMappingURL=MsTeamsConnectButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/msteams-connect-button/MsTeamsConnectButton.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useNovu } from '../../hooks/NovuProvider';\nimport { NovuUI, NovuUIOptions } from '../NovuUI';\nimport { withRenderer } from '../Renderer';\nimport { DefaultMsTeamsConnectButton, DefaultMsTeamsConnectButtonProps } from './DefaultMsTeamsConnectButton';\n\nexport type MsTeamsConnectButtonProps = DefaultMsTeamsConnectButtonProps &\n Pick<NovuUIOptions, 'container' | 'appearance'>;\n\nconst MsTeamsConnectButtonInternal = withRenderer<MsTeamsConnectButtonProps>((props) => {\n const { container, appearance, ...defaultProps } = props;\n const novu = useNovu();\n\n const options: NovuUIOptions = useMemo(() => {\n return {\n container,\n appearance,\n options: novu.options,\n };\n }, [container, appearance, novu.options]);\n\n return (\n <NovuUI options={options} novu={novu}>\n <DefaultMsTeamsConnectButton {...defaultProps} />\n </NovuUI>\n );\n});\n\nMsTeamsConnectButtonInternal.displayName = 'MsTeamsConnectButtonInternal';\n\nexport const MsTeamsConnectButton = React.memo((props: MsTeamsConnectButtonProps) => {\n return <MsTeamsConnectButtonInternal {...props} />;\n});\n\nMsTeamsConnectButton.displayName = 'MsTeamsConnectButton';\n"],"mappings":";AAAA,OAAO,SAAS,eAAe;AAC/B,SAAS,eAAe;AACxB,SAAS,cAA6B;AACtC,SAAS,oBAAoB;AAC7B,SAAS,mCAAqE;AAmBxE;AAdN,IAAM,+BAA+B,aAAwC,CAAC,UAAU;AACtF,QAAM,EAAE,WAAW,YAAY,GAAG,aAAa,IAAI;AACnD,QAAM,OAAO,QAAQ;AAErB,QAAM,UAAyB,QAAQ,MAAM;AAC3C,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,KAAK;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,WAAW,YAAY,KAAK,OAAO,CAAC;AAExC,SACE,oBAAC,UAAO,SAAkB,MACxB,8BAAC,+BAA6B,GAAG,cAAc,GACjD;AAEJ,CAAC;AAED,6BAA6B,cAAc;AAEpC,IAAM,uBAAuB,MAAM,KAAK,CAAC,UAAqC;AACnF,SAAO,oBAAC,gCAA8B,GAAG,OAAO;AAClD,CAAC;AAED,qBAAqB,cAAc;","names":[]}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { MsTeamsLinkUserProps } from '@novu/js/ui';
3
+
4
+ type DefaultMsTeamsLinkUserProps = Pick<MsTeamsLinkUserProps, 'integrationIdentifier' | 'connectionIdentifier' | 'context' | 'onLinkSuccess' | 'onLinkError' | 'onUnlinkSuccess' | 'onUnlinkError' | 'linkLabel' | 'unlinkLabel'>;
5
+ declare const DefaultMsTeamsLinkUser: (props: DefaultMsTeamsLinkUserProps) => react_jsx_runtime.JSX.Element;
6
+
7
+ export { DefaultMsTeamsLinkUser, type DefaultMsTeamsLinkUserProps };
@@ -0,0 +1,55 @@
1
+ // src/components/msteams-link-user/DefaultMsTeamsLinkUser.tsx
2
+ import { useCallback } from "react";
3
+ import { useNovuUI } from "../../context/NovuUIContext.js";
4
+ import { Mounter } from "../Mounter.js";
5
+ import { jsx } from "react/jsx-runtime";
6
+ var DefaultMsTeamsLinkUser = (props) => {
7
+ const {
8
+ integrationIdentifier,
9
+ connectionIdentifier,
10
+ context,
11
+ onLinkSuccess,
12
+ onLinkError,
13
+ onUnlinkSuccess,
14
+ onUnlinkError,
15
+ linkLabel,
16
+ unlinkLabel
17
+ } = props;
18
+ const { novuUI } = useNovuUI();
19
+ const mount = useCallback(
20
+ (element) => {
21
+ return novuUI.mountComponent({
22
+ name: "MsTeamsLinkUser",
23
+ props: {
24
+ integrationIdentifier,
25
+ connectionIdentifier,
26
+ context,
27
+ onLinkSuccess,
28
+ onLinkError,
29
+ onUnlinkSuccess,
30
+ onUnlinkError,
31
+ linkLabel,
32
+ unlinkLabel
33
+ },
34
+ element
35
+ });
36
+ },
37
+ [
38
+ novuUI,
39
+ integrationIdentifier,
40
+ connectionIdentifier,
41
+ context,
42
+ onLinkSuccess,
43
+ onLinkError,
44
+ onUnlinkSuccess,
45
+ onUnlinkError,
46
+ linkLabel,
47
+ unlinkLabel
48
+ ]
49
+ );
50
+ return /* @__PURE__ */ jsx(Mounter, { mount });
51
+ };
52
+ export {
53
+ DefaultMsTeamsLinkUser
54
+ };
55
+ //# sourceMappingURL=DefaultMsTeamsLinkUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/msteams-link-user/DefaultMsTeamsLinkUser.tsx"],"sourcesContent":["import { MsTeamsLinkUserProps } from '@novu/js/ui';\nimport { useCallback } from 'react';\nimport { useNovuUI } from '../../context/NovuUIContext';\nimport { Mounter } from '../Mounter';\n\nexport type DefaultMsTeamsLinkUserProps = Pick<\n MsTeamsLinkUserProps,\n | 'integrationIdentifier'\n | 'connectionIdentifier'\n | 'context'\n | 'onLinkSuccess'\n | 'onLinkError'\n | 'onUnlinkSuccess'\n | 'onUnlinkError'\n | 'linkLabel'\n | 'unlinkLabel'\n>;\n\nexport const DefaultMsTeamsLinkUser = (props: DefaultMsTeamsLinkUserProps) => {\n const {\n integrationIdentifier,\n connectionIdentifier,\n context,\n onLinkSuccess,\n onLinkError,\n onUnlinkSuccess,\n onUnlinkError,\n linkLabel,\n unlinkLabel,\n } = props;\n const { novuUI } = useNovuUI();\n\n const mount = useCallback(\n (element: HTMLElement) => {\n return novuUI.mountComponent({\n name: 'MsTeamsLinkUser',\n props: {\n integrationIdentifier,\n connectionIdentifier,\n context,\n onLinkSuccess,\n onLinkError,\n onUnlinkSuccess,\n onUnlinkError,\n linkLabel,\n unlinkLabel,\n },\n element,\n });\n },\n [\n novuUI,\n integrationIdentifier,\n connectionIdentifier,\n context,\n onLinkSuccess,\n onLinkError,\n onUnlinkSuccess,\n onUnlinkError,\n linkLabel,\n unlinkLabel,\n ]\n );\n\n return <Mounter mount={mount} />;\n};\n"],"mappings":";AACA,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AA6Df;AA9CF,IAAM,yBAAyB,CAAC,UAAuC;AAC5E,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,EAAE,OAAO,IAAI,UAAU;AAE7B,QAAM,QAAQ;AAAA,IACZ,CAAC,YAAyB;AACxB,aAAO,OAAO,eAAe;AAAA,QAC3B,MAAM;AAAA,QACN,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO,oBAAC,WAAQ,OAAc;AAChC;","names":[]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { NovuUIOptions } from '../NovuUI.js';
4
+ import { DefaultMsTeamsLinkUserProps } from './DefaultMsTeamsLinkUser.js';
5
+ import '@novu/js';
6
+ import '@novu/js/ui';
7
+ import '../../utils/types.js';
8
+
9
+ type MsTeamsLinkUserProps = DefaultMsTeamsLinkUserProps & Pick<NovuUIOptions, 'container' | 'appearance'>;
10
+ declare const MsTeamsLinkUser: React__default.MemoExoticComponent<(props: MsTeamsLinkUserProps) => react_jsx_runtime.JSX.Element>;
11
+
12
+ export { MsTeamsLinkUser, type MsTeamsLinkUserProps };
@@ -0,0 +1,28 @@
1
+ // src/components/msteams-link-user/MsTeamsLinkUser.tsx
2
+ import React, { useMemo } from "react";
3
+ import { useNovu } from "../../hooks/NovuProvider.js";
4
+ import { NovuUI } from "../NovuUI.js";
5
+ import { withRenderer } from "../Renderer.js";
6
+ import { DefaultMsTeamsLinkUser } from "./DefaultMsTeamsLinkUser.js";
7
+ import { jsx } from "react/jsx-runtime";
8
+ var MsTeamsLinkUserInternal = withRenderer((props) => {
9
+ const { container, appearance, ...defaultProps } = props;
10
+ const novu = useNovu();
11
+ const options = useMemo(() => {
12
+ return {
13
+ container,
14
+ appearance,
15
+ options: novu.options
16
+ };
17
+ }, [container, appearance, novu.options]);
18
+ return /* @__PURE__ */ jsx(NovuUI, { options, novu, children: /* @__PURE__ */ jsx(DefaultMsTeamsLinkUser, { ...defaultProps }) });
19
+ });
20
+ MsTeamsLinkUserInternal.displayName = "MsTeamsLinkUserInternal";
21
+ var MsTeamsLinkUser = React.memo((props) => {
22
+ return /* @__PURE__ */ jsx(MsTeamsLinkUserInternal, { ...props });
23
+ });
24
+ MsTeamsLinkUser.displayName = "MsTeamsLinkUser";
25
+ export {
26
+ MsTeamsLinkUser
27
+ };
28
+ //# sourceMappingURL=MsTeamsLinkUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/msteams-link-user/MsTeamsLinkUser.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useNovu } from '../../hooks/NovuProvider';\nimport { NovuUI, NovuUIOptions } from '../NovuUI';\nimport { withRenderer } from '../Renderer';\nimport { DefaultMsTeamsLinkUser, DefaultMsTeamsLinkUserProps } from './DefaultMsTeamsLinkUser';\n\nexport type MsTeamsLinkUserProps = DefaultMsTeamsLinkUserProps & Pick<NovuUIOptions, 'container' | 'appearance'>;\n\nconst MsTeamsLinkUserInternal = withRenderer<MsTeamsLinkUserProps>((props) => {\n const { container, appearance, ...defaultProps } = props;\n const novu = useNovu();\n\n const options: NovuUIOptions = useMemo(() => {\n return {\n container,\n appearance,\n options: novu.options,\n };\n }, [container, appearance, novu.options]);\n\n return (\n <NovuUI options={options} novu={novu}>\n <DefaultMsTeamsLinkUser {...defaultProps} />\n </NovuUI>\n );\n});\n\nMsTeamsLinkUserInternal.displayName = 'MsTeamsLinkUserInternal';\n\nexport const MsTeamsLinkUser = React.memo((props: MsTeamsLinkUserProps) => {\n return <MsTeamsLinkUserInternal {...props} />;\n});\n\nMsTeamsLinkUser.displayName = 'MsTeamsLinkUser';\n"],"mappings":";AAAA,OAAO,SAAS,eAAe;AAC/B,SAAS,eAAe;AACxB,SAAS,cAA6B;AACtC,SAAS,oBAAoB;AAC7B,SAAS,8BAA2D;AAkB9D;AAdN,IAAM,0BAA0B,aAAmC,CAAC,UAAU;AAC5E,QAAM,EAAE,WAAW,YAAY,GAAG,aAAa,IAAI;AACnD,QAAM,OAAO,QAAQ;AAErB,QAAM,UAAyB,QAAQ,MAAM;AAC3C,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,KAAK;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,WAAW,YAAY,KAAK,OAAO,CAAC;AAExC,SACE,oBAAC,UAAO,SAAkB,MACxB,8BAAC,0BAAwB,GAAG,cAAc,GAC5C;AAEJ,CAAC;AAED,wBAAwB,cAAc;AAE/B,IAAM,kBAAkB,MAAM,KAAK,CAAC,UAAgC;AACzE,SAAO,oBAAC,2BAAyB,GAAG,OAAO;AAC7C,CAAC;AAED,gBAAgB,cAAc;","names":[]}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { SlackConnectButtonProps } from '@novu/js/ui';
3
+
4
+ type DefaultSlackConnectButtonProps = Pick<SlackConnectButtonProps, 'integrationIdentifier' | 'connectionIdentifier' | 'subscriberId' | 'context' | 'scope' | 'connectionMode' | 'autoLinkUser' | 'onConnectSuccess' | 'onConnectError' | 'onDisconnectSuccess' | 'onDisconnectError' | 'connectLabel' | 'connectedLabel'>;
5
+ declare const DefaultSlackConnectButton: (props: DefaultSlackConnectButtonProps) => react_jsx_runtime.JSX.Element;
6
+
7
+ export { DefaultSlackConnectButton, type DefaultSlackConnectButtonProps };
@@ -0,0 +1,67 @@
1
+ // src/components/slack-connect-button/DefaultSlackConnectButton.tsx
2
+ import { useCallback } from "react";
3
+ import { useNovuUI } from "../../context/NovuUIContext.js";
4
+ import { Mounter } from "../Mounter.js";
5
+ import { jsx } from "react/jsx-runtime";
6
+ var DefaultSlackConnectButton = (props) => {
7
+ const {
8
+ integrationIdentifier,
9
+ connectionIdentifier,
10
+ subscriberId,
11
+ context,
12
+ scope,
13
+ connectionMode,
14
+ autoLinkUser,
15
+ onConnectSuccess,
16
+ onConnectError,
17
+ onDisconnectSuccess,
18
+ onDisconnectError,
19
+ connectLabel,
20
+ connectedLabel
21
+ } = props;
22
+ const { novuUI } = useNovuUI();
23
+ const mount = useCallback(
24
+ (element) => {
25
+ return novuUI.mountComponent({
26
+ name: "SlackConnectButton",
27
+ props: {
28
+ integrationIdentifier,
29
+ connectionIdentifier,
30
+ subscriberId,
31
+ context,
32
+ scope,
33
+ connectionMode,
34
+ autoLinkUser,
35
+ onConnectSuccess,
36
+ onConnectError,
37
+ onDisconnectSuccess,
38
+ onDisconnectError,
39
+ connectLabel,
40
+ connectedLabel
41
+ },
42
+ element
43
+ });
44
+ },
45
+ [
46
+ novuUI,
47
+ integrationIdentifier,
48
+ connectionIdentifier,
49
+ subscriberId,
50
+ context,
51
+ scope,
52
+ connectionMode,
53
+ autoLinkUser,
54
+ onConnectSuccess,
55
+ onConnectError,
56
+ onDisconnectSuccess,
57
+ onDisconnectError,
58
+ connectLabel,
59
+ connectedLabel
60
+ ]
61
+ );
62
+ return /* @__PURE__ */ jsx(Mounter, { mount });
63
+ };
64
+ export {
65
+ DefaultSlackConnectButton
66
+ };
67
+ //# sourceMappingURL=DefaultSlackConnectButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/slack-connect-button/DefaultSlackConnectButton.tsx"],"sourcesContent":["import { SlackConnectButtonProps } from '@novu/js/ui';\nimport { useCallback } from 'react';\nimport { useNovuUI } from '../../context/NovuUIContext';\nimport { Mounter } from '../Mounter';\n\nexport type DefaultSlackConnectButtonProps = Pick<\n SlackConnectButtonProps,\n | 'integrationIdentifier'\n | 'connectionIdentifier'\n | 'subscriberId'\n | 'context'\n | 'scope'\n | 'connectionMode'\n | 'autoLinkUser'\n | 'onConnectSuccess'\n | 'onConnectError'\n | 'onDisconnectSuccess'\n | 'onDisconnectError'\n | 'connectLabel'\n | 'connectedLabel'\n>;\n\nexport const DefaultSlackConnectButton = (props: DefaultSlackConnectButtonProps) => {\n const {\n integrationIdentifier,\n connectionIdentifier,\n subscriberId,\n context,\n scope,\n connectionMode,\n autoLinkUser,\n onConnectSuccess,\n onConnectError,\n onDisconnectSuccess,\n onDisconnectError,\n connectLabel,\n connectedLabel,\n } = props;\n const { novuUI } = useNovuUI();\n\n const mount = useCallback(\n (element: HTMLElement) => {\n return novuUI.mountComponent({\n name: 'SlackConnectButton',\n props: {\n integrationIdentifier,\n connectionIdentifier,\n subscriberId,\n context,\n scope,\n connectionMode,\n autoLinkUser,\n onConnectSuccess,\n onConnectError,\n onDisconnectSuccess,\n onDisconnectError,\n connectLabel,\n connectedLabel,\n },\n element,\n });\n },\n [\n novuUI,\n integrationIdentifier,\n connectionIdentifier,\n subscriberId,\n context,\n scope,\n connectionMode,\n autoLinkUser,\n onConnectSuccess,\n onConnectError,\n onDisconnectSuccess,\n onDisconnectError,\n connectLabel,\n connectedLabel,\n ]\n );\n\n return <Mounter mount={mount} />;\n};\n"],"mappings":";AACA,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AA6Ef;AA1DF,IAAM,4BAA4B,CAAC,UAA0C;AAClF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,EAAE,OAAO,IAAI,UAAU;AAE7B,QAAM,QAAQ;AAAA,IACZ,CAAC,YAAyB;AACxB,aAAO,OAAO,eAAe;AAAA,QAC3B,MAAM;AAAA,QACN,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO,oBAAC,WAAQ,OAAc;AAChC;","names":[]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { NovuUIOptions } from '../NovuUI.js';
4
+ import { DefaultSlackConnectButtonProps } from './DefaultSlackConnectButton.js';
5
+ import '@novu/js';
6
+ import '@novu/js/ui';
7
+ import '../../utils/types.js';
8
+
9
+ type SlackConnectButtonProps = DefaultSlackConnectButtonProps & Pick<NovuUIOptions, 'container' | 'appearance'>;
10
+ declare const SlackConnectButton: React__default.MemoExoticComponent<(props: SlackConnectButtonProps) => react_jsx_runtime.JSX.Element>;
11
+
12
+ export { SlackConnectButton, type SlackConnectButtonProps };
@@ -0,0 +1,28 @@
1
+ // src/components/slack-connect-button/SlackConnectButton.tsx
2
+ import React, { useMemo } from "react";
3
+ import { useNovu } from "../../hooks/NovuProvider.js";
4
+ import { NovuUI } from "../NovuUI.js";
5
+ import { withRenderer } from "../Renderer.js";
6
+ import { DefaultSlackConnectButton } from "./DefaultSlackConnectButton.js";
7
+ import { jsx } from "react/jsx-runtime";
8
+ var SlackConnectButtonInternal = withRenderer((props) => {
9
+ const { container, appearance, ...defaultProps } = props;
10
+ const novu = useNovu();
11
+ const options = useMemo(() => {
12
+ return {
13
+ container,
14
+ appearance,
15
+ options: novu.options
16
+ };
17
+ }, [container, appearance, novu.options]);
18
+ return /* @__PURE__ */ jsx(NovuUI, { options, novu, children: /* @__PURE__ */ jsx(DefaultSlackConnectButton, { ...defaultProps }) });
19
+ });
20
+ SlackConnectButtonInternal.displayName = "SlackConnectButtonInternal";
21
+ var SlackConnectButton = React.memo((props) => {
22
+ return /* @__PURE__ */ jsx(SlackConnectButtonInternal, { ...props });
23
+ });
24
+ SlackConnectButton.displayName = "SlackConnectButton";
25
+ export {
26
+ SlackConnectButton
27
+ };
28
+ //# sourceMappingURL=SlackConnectButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/slack-connect-button/SlackConnectButton.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useNovu } from '../../hooks/NovuProvider';\nimport { NovuUI, NovuUIOptions } from '../NovuUI';\nimport { withRenderer } from '../Renderer';\nimport { DefaultSlackConnectButton, DefaultSlackConnectButtonProps } from './DefaultSlackConnectButton';\n\nexport type SlackConnectButtonProps = DefaultSlackConnectButtonProps & Pick<NovuUIOptions, 'container' | 'appearance'>;\n\nconst SlackConnectButtonInternal = withRenderer<SlackConnectButtonProps>((props) => {\n const { container, appearance, ...defaultProps } = props;\n const novu = useNovu();\n\n const options: NovuUIOptions = useMemo(() => {\n return {\n container,\n appearance,\n options: novu.options,\n };\n }, [container, appearance, novu.options]);\n\n return (\n <NovuUI options={options} novu={novu}>\n <DefaultSlackConnectButton {...defaultProps} />\n </NovuUI>\n );\n});\n\nSlackConnectButtonInternal.displayName = 'SlackConnectButtonInternal';\n\nexport const SlackConnectButton = React.memo((props: SlackConnectButtonProps) => {\n return <SlackConnectButtonInternal {...props} />;\n});\n\nSlackConnectButton.displayName = 'SlackConnectButton';\n"],"mappings":";AAAA,OAAO,SAAS,eAAe;AAC/B,SAAS,eAAe;AACxB,SAAS,cAA6B;AACtC,SAAS,oBAAoB;AAC7B,SAAS,iCAAiE;AAkBpE;AAdN,IAAM,6BAA6B,aAAsC,CAAC,UAAU;AAClF,QAAM,EAAE,WAAW,YAAY,GAAG,aAAa,IAAI;AACnD,QAAM,OAAO,QAAQ;AAErB,QAAM,UAAyB,QAAQ,MAAM;AAC3C,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,KAAK;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,WAAW,YAAY,KAAK,OAAO,CAAC;AAExC,SACE,oBAAC,UAAO,SAAkB,MACxB,8BAAC,6BAA2B,GAAG,cAAc,GAC/C;AAEJ,CAAC;AAED,2BAA2B,cAAc;AAElC,IAAM,qBAAqB,MAAM,KAAK,CAAC,UAAmC;AAC/E,SAAO,oBAAC,8BAA4B,GAAG,OAAO;AAChD,CAAC;AAED,mBAAmB,cAAc;","names":[]}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { SlackLinkUserProps } from '@novu/js/ui';
3
+
4
+ type DefaultSlackLinkUserProps = Pick<SlackLinkUserProps, 'integrationIdentifier' | 'connectionIdentifier' | 'context' | 'onLinkSuccess' | 'onLinkError' | 'onUnlinkSuccess' | 'onUnlinkError' | 'linkLabel' | 'unlinkLabel'>;
5
+ declare const DefaultSlackLinkUser: (props: DefaultSlackLinkUserProps) => react_jsx_runtime.JSX.Element;
6
+
7
+ export { DefaultSlackLinkUser, type DefaultSlackLinkUserProps };
@@ -0,0 +1,55 @@
1
+ // src/components/slack-link-user/DefaultSlackLinkUser.tsx
2
+ import { useCallback } from "react";
3
+ import { useNovuUI } from "../../context/NovuUIContext.js";
4
+ import { Mounter } from "../Mounter.js";
5
+ import { jsx } from "react/jsx-runtime";
6
+ var DefaultSlackLinkUser = (props) => {
7
+ const {
8
+ integrationIdentifier,
9
+ connectionIdentifier,
10
+ context,
11
+ onLinkSuccess,
12
+ onLinkError,
13
+ onUnlinkSuccess,
14
+ onUnlinkError,
15
+ linkLabel,
16
+ unlinkLabel
17
+ } = props;
18
+ const { novuUI } = useNovuUI();
19
+ const mount = useCallback(
20
+ (element) => {
21
+ return novuUI.mountComponent({
22
+ name: "SlackLinkUser",
23
+ props: {
24
+ integrationIdentifier,
25
+ connectionIdentifier,
26
+ context,
27
+ onLinkSuccess,
28
+ onLinkError,
29
+ onUnlinkSuccess,
30
+ onUnlinkError,
31
+ linkLabel,
32
+ unlinkLabel
33
+ },
34
+ element
35
+ });
36
+ },
37
+ [
38
+ novuUI,
39
+ integrationIdentifier,
40
+ connectionIdentifier,
41
+ context,
42
+ onLinkSuccess,
43
+ onLinkError,
44
+ onUnlinkSuccess,
45
+ onUnlinkError,
46
+ linkLabel,
47
+ unlinkLabel
48
+ ]
49
+ );
50
+ return /* @__PURE__ */ jsx(Mounter, { mount });
51
+ };
52
+ export {
53
+ DefaultSlackLinkUser
54
+ };
55
+ //# sourceMappingURL=DefaultSlackLinkUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/slack-link-user/DefaultSlackLinkUser.tsx"],"sourcesContent":["import { SlackLinkUserProps } from '@novu/js/ui';\nimport { useCallback } from 'react';\nimport { useNovuUI } from '../../context/NovuUIContext';\nimport { Mounter } from '../Mounter';\n\nexport type DefaultSlackLinkUserProps = Pick<\n SlackLinkUserProps,\n | 'integrationIdentifier'\n | 'connectionIdentifier'\n | 'context'\n | 'onLinkSuccess'\n | 'onLinkError'\n | 'onUnlinkSuccess'\n | 'onUnlinkError'\n | 'linkLabel'\n | 'unlinkLabel'\n>;\n\nexport const DefaultSlackLinkUser = (props: DefaultSlackLinkUserProps) => {\n const {\n integrationIdentifier,\n connectionIdentifier,\n context,\n onLinkSuccess,\n onLinkError,\n onUnlinkSuccess,\n onUnlinkError,\n linkLabel,\n unlinkLabel,\n } = props;\n const { novuUI } = useNovuUI();\n\n const mount = useCallback(\n (element: HTMLElement) => {\n return novuUI.mountComponent({\n name: 'SlackLinkUser',\n props: {\n integrationIdentifier,\n connectionIdentifier,\n context,\n onLinkSuccess,\n onLinkError,\n onUnlinkSuccess,\n onUnlinkError,\n linkLabel,\n unlinkLabel,\n },\n element,\n });\n },\n [\n novuUI,\n integrationIdentifier,\n connectionIdentifier,\n context,\n onLinkSuccess,\n onLinkError,\n onUnlinkSuccess,\n onUnlinkError,\n linkLabel,\n unlinkLabel,\n ]\n );\n\n return <Mounter mount={mount} />;\n};\n"],"mappings":";AACA,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AA6Df;AA9CF,IAAM,uBAAuB,CAAC,UAAqC;AACxE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,EAAE,OAAO,IAAI,UAAU;AAE7B,QAAM,QAAQ;AAAA,IACZ,CAAC,YAAyB;AACxB,aAAO,OAAO,eAAe;AAAA,QAC3B,MAAM;AAAA,QACN,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO,oBAAC,WAAQ,OAAc;AAChC;","names":[]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
3
+ import { NovuUIOptions } from '../NovuUI.js';
4
+ import { DefaultSlackLinkUserProps } from './DefaultSlackLinkUser.js';
5
+ import '@novu/js';
6
+ import '@novu/js/ui';
7
+ import '../../utils/types.js';
8
+
9
+ type SlackLinkUserProps = DefaultSlackLinkUserProps & Pick<NovuUIOptions, 'container' | 'appearance'>;
10
+ declare const SlackLinkUser: React__default.MemoExoticComponent<(props: SlackLinkUserProps) => react_jsx_runtime.JSX.Element>;
11
+
12
+ export { SlackLinkUser, type SlackLinkUserProps };
@@ -0,0 +1,28 @@
1
+ // src/components/slack-link-user/SlackLinkUser.tsx
2
+ import React, { useMemo } from "react";
3
+ import { useNovu } from "../../hooks/NovuProvider.js";
4
+ import { NovuUI } from "../NovuUI.js";
5
+ import { withRenderer } from "../Renderer.js";
6
+ import { DefaultSlackLinkUser } from "./DefaultSlackLinkUser.js";
7
+ import { jsx } from "react/jsx-runtime";
8
+ var SlackLinkUserInternal = withRenderer((props) => {
9
+ const { container, appearance, ...defaultProps } = props;
10
+ const novu = useNovu();
11
+ const options = useMemo(() => {
12
+ return {
13
+ container,
14
+ appearance,
15
+ options: novu.options
16
+ };
17
+ }, [container, appearance, novu.options]);
18
+ return /* @__PURE__ */ jsx(NovuUI, { options, novu, children: /* @__PURE__ */ jsx(DefaultSlackLinkUser, { ...defaultProps }) });
19
+ });
20
+ SlackLinkUserInternal.displayName = "SlackLinkUserInternal";
21
+ var SlackLinkUser = React.memo((props) => {
22
+ return /* @__PURE__ */ jsx(SlackLinkUserInternal, { ...props });
23
+ });
24
+ SlackLinkUser.displayName = "SlackLinkUser";
25
+ export {
26
+ SlackLinkUser
27
+ };
28
+ //# sourceMappingURL=SlackLinkUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/slack-link-user/SlackLinkUser.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useNovu } from '../../hooks/NovuProvider';\nimport { NovuUI, NovuUIOptions } from '../NovuUI';\nimport { withRenderer } from '../Renderer';\nimport { DefaultSlackLinkUser, DefaultSlackLinkUserProps } from './DefaultSlackLinkUser';\n\nexport type SlackLinkUserProps = DefaultSlackLinkUserProps & Pick<NovuUIOptions, 'container' | 'appearance'>;\n\nconst SlackLinkUserInternal = withRenderer<SlackLinkUserProps>((props) => {\n const { container, appearance, ...defaultProps } = props;\n const novu = useNovu();\n\n const options: NovuUIOptions = useMemo(() => {\n return {\n container,\n appearance,\n options: novu.options,\n };\n }, [container, appearance, novu.options]);\n\n return (\n <NovuUI options={options} novu={novu}>\n <DefaultSlackLinkUser {...defaultProps} />\n </NovuUI>\n );\n});\n\nSlackLinkUserInternal.displayName = 'SlackLinkUserInternal';\n\nexport const SlackLinkUser = React.memo((props: SlackLinkUserProps) => {\n return <SlackLinkUserInternal {...props} />;\n});\n\nSlackLinkUser.displayName = 'SlackLinkUser';\n"],"mappings":";AAAA,OAAO,SAAS,eAAe;AAC/B,SAAS,eAAe;AACxB,SAAS,cAA6B;AACtC,SAAS,oBAAoB;AAC7B,SAAS,4BAAuD;AAkB1D;AAdN,IAAM,wBAAwB,aAAiC,CAAC,UAAU;AACxE,QAAM,EAAE,WAAW,YAAY,GAAG,aAAa,IAAI;AACnD,QAAM,OAAO,QAAQ;AAErB,QAAM,UAAyB,QAAQ,MAAM;AAC3C,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS,KAAK;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,WAAW,YAAY,KAAK,OAAO,CAAC;AAExC,SACE,oBAAC,UAAO,SAAkB,MACxB,8BAAC,wBAAsB,GAAG,cAAc,GAC1C;AAEJ,CAAC;AAED,sBAAsB,cAAc;AAE7B,IAAM,gBAAgB,MAAM,KAAK,CAAC,UAA8B;AACrE,SAAO,oBAAC,yBAAuB,GAAG,OAAO;AAC3C,CAAC;AAED,cAAc,cAAc;","names":[]}
@@ -3,6 +3,16 @@ import { NovuOptions, Novu } from '@novu/js';
3
3
  import { ReactNode } from 'react';
4
4
 
5
5
  type NovuProviderProps = NovuOptions & {
6
+ /**
7
+ * When `false`, disables the WebSocket subscription that auto-injects
8
+ * newly received notifications into the list and subscription that auto-resync
9
+ * notification counts. Built-in mutations like
10
+ * `readAll`, `seenAll`, `archiveAll`, and `archiveAllRead` continue to
11
+ * update local state. Use this when you want to drive new-notification updates yourself (e.g.
12
+ * via your own `novu.on('notifications.notification_received', ...)`
13
+ * handler combined with `refetch()`). Defaults to `true`.
14
+ */
15
+ realtime?: boolean;
6
16
  children: ReactNode;
7
17
  };
8
18
  declare const NovuProvider: (props: NovuProviderProps) => react_jsx_runtime.JSX.Element;
@@ -11,6 +21,7 @@ declare const NovuProvider: (props: NovuProviderProps) => react_jsx_runtime.JSX.
11
21
  */
12
22
  declare const InternalNovuProvider: (props: NovuProviderProps) => react_jsx_runtime.JSX.Element;
13
23
  declare const useNovu: () => Novu;
14
- declare const useUnsafeNovu: () => Novu | undefined;
24
+ declare const useUnsafeNovu: () => Novu;
25
+ declare const useRealtime: () => boolean;
15
26
 
16
- export { InternalNovuProvider, NovuProvider, type NovuProviderProps, useNovu, useUnsafeNovu };
27
+ export { InternalNovuProvider, NovuProvider, type NovuProviderProps, useNovu, useRealtime, useUnsafeNovu };
@@ -3,9 +3,9 @@ import { Novu } from "@novu/js";
3
3
  import { buildSubscriber } from "@novu/js/internal";
4
4
  import { createContext, useContext, useMemo } from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
- var NovuContext = createContext(void 0);
6
+ var NovuContext = createContext({ novu: void 0, realtime: true });
7
7
  var NovuProvider = (props) => {
8
- const { subscriberId, ...propsWithoutSubscriberId } = props;
8
+ const { subscriberId, realtime = true, ...propsWithoutSubscriberId } = props;
9
9
  const subscriberObj = useMemo(
10
10
  () => buildSubscriber({ subscriberId, subscriber: props.subscriber }),
11
11
  [subscriberId, props.subscriber]
@@ -14,7 +14,8 @@ var NovuProvider = (props) => {
14
14
  const providerProps = {
15
15
  ...propsWithoutSubscriberId,
16
16
  applicationIdentifier,
17
- subscriber: subscriberObj
17
+ subscriber: subscriberObj,
18
+ realtime
18
19
  };
19
20
  return /* @__PURE__ */ jsx(InternalNovuProvider, { ...providerProps, applicationIdentifier, children: props.children });
20
21
  };
@@ -34,21 +35,25 @@ var InternalNovuProvider = (props) => {
34
35
  socketOptions,
35
36
  useCache,
36
37
  defaultSchedule,
37
- context
38
+ context,
39
+ realtime = true
38
40
  } = props;
39
- const novu = useMemo(
40
- () => new Novu({
41
- applicationIdentifier,
42
- subscriberHash,
43
- contextHash,
44
- backendUrl,
45
- apiUrl,
46
- socketUrl,
47
- socketOptions,
48
- useCache,
49
- subscriber: subscriberObj,
50
- defaultSchedule,
51
- context
41
+ const value = useMemo(
42
+ () => ({
43
+ novu: new Novu({
44
+ applicationIdentifier,
45
+ subscriberHash,
46
+ contextHash,
47
+ backendUrl,
48
+ apiUrl,
49
+ socketUrl,
50
+ socketOptions,
51
+ useCache,
52
+ subscriber: subscriberObj,
53
+ defaultSchedule,
54
+ context
55
+ }),
56
+ realtime
52
57
  }),
53
58
  [
54
59
  applicationIdentifier,
@@ -60,26 +65,32 @@ var InternalNovuProvider = (props) => {
60
65
  apiUrl,
61
66
  socketUrl,
62
67
  socketOptions,
63
- useCache
68
+ useCache,
69
+ realtime
64
70
  ]
65
71
  );
66
- return /* @__PURE__ */ jsx(NovuContext.Provider, { value: novu, children });
72
+ return /* @__PURE__ */ jsx(NovuContext.Provider, { value, children });
67
73
  };
68
74
  var useNovu = () => {
69
75
  const context = useContext(NovuContext);
70
- if (!context) {
76
+ if (!context.novu) {
71
77
  throw new Error("useNovu must be used within a <NovuProvider />");
72
78
  }
73
- return context;
79
+ return context.novu;
74
80
  };
75
81
  var useUnsafeNovu = () => {
76
82
  const context = useContext(NovuContext);
77
- return context;
83
+ return context.novu;
84
+ };
85
+ var useRealtime = () => {
86
+ const context = useContext(NovuContext);
87
+ return context.realtime;
78
88
  };
79
89
  export {
80
90
  InternalNovuProvider,
81
91
  NovuProvider,
82
92
  useNovu,
93
+ useRealtime,
83
94
  useUnsafeNovu
84
95
  };
85
96
  //# sourceMappingURL=NovuProvider.js.map