@messenger-box/tailwind-ui-inbox 10.0.3-alpha.71 → 10.0.3-alpha.73

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 (143) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/lib/components/AIAgent/AIAgent.d.ts +14 -0
  3. package/lib/components/AIAgent/AIAgent.d.ts.map +1 -0
  4. package/lib/components/AIAgent/AIAgent.js +1148 -0
  5. package/lib/components/AIAgent/AIAgent.js.map +1 -0
  6. package/lib/components/AIAgent/index.d.ts +2 -0
  7. package/lib/components/AIAgent/index.d.ts.map +1 -0
  8. package/lib/components/InboxMessage/InputComponent.d.ts +9 -0
  9. package/lib/components/InboxMessage/InputComponent.d.ts.map +1 -0
  10. package/lib/components/InboxMessage/InputComponent.js +210 -0
  11. package/lib/components/InboxMessage/InputComponent.js.map +1 -0
  12. package/lib/components/InboxMessage/MessageInput.d.ts.map +1 -1
  13. package/lib/components/InboxMessage/MessageInput.js +14 -10
  14. package/lib/components/InboxMessage/MessageInput.js.map +1 -1
  15. package/lib/components/InboxMessage/MessageInputComponent.d.ts +9 -0
  16. package/lib/components/InboxMessage/MessageInputComponent.d.ts.map +1 -0
  17. package/lib/components/InboxMessage/Messages.d.ts.map +1 -1
  18. package/lib/components/InboxMessage/Messages.js +4 -54
  19. package/lib/components/InboxMessage/Messages.js.map +1 -1
  20. package/lib/components/InboxMessage/MessagesBuilderUi.d.ts +17 -0
  21. package/lib/components/InboxMessage/MessagesBuilderUi.d.ts.map +1 -0
  22. package/lib/components/InboxMessage/UploadImageButton.d.ts +1 -0
  23. package/lib/components/InboxMessage/UploadImageButton.d.ts.map +1 -1
  24. package/lib/components/InboxMessage/UploadImageButton.js +3 -3
  25. package/lib/components/InboxMessage/UploadImageButton.js.map +1 -1
  26. package/lib/components/InboxMessage/index.d.ts +3 -0
  27. package/lib/components/InboxMessage/index.d.ts.map +1 -1
  28. package/lib/components/InboxMessage/message-widgets/CommonMessage.d.ts.map +1 -1
  29. package/lib/components/InboxMessage/message-widgets/CommonMessage.js +11 -6
  30. package/lib/components/InboxMessage/message-widgets/CommonMessage.js.map +1 -1
  31. package/lib/components/InboxMessage/message-widgets/ModernMessageGroup.d.ts +14 -0
  32. package/lib/components/InboxMessage/message-widgets/ModernMessageGroup.d.ts.map +1 -0
  33. package/lib/components/InboxMessage/message-widgets/ModernMessageGroup.js +1525 -0
  34. package/lib/components/InboxMessage/message-widgets/ModernMessageGroup.js.map +1 -0
  35. package/lib/components/InboxMessage/message-widgets/PlainMessage.d.ts.map +1 -1
  36. package/lib/components/InboxMessage/message-widgets/PlainMessage.js +6 -3
  37. package/lib/components/InboxMessage/message-widgets/PlainMessage.js.map +1 -1
  38. package/lib/components/InboxMessage/message-widgets/SlackLikeMessageGroup.d.ts.map +1 -1
  39. package/lib/components/InboxMessage/message-widgets/SlackLikeMessageGroup.js +207 -12
  40. package/lib/components/InboxMessage/message-widgets/SlackLikeMessageGroup.js.map +1 -1
  41. package/lib/components/InboxMessage/message-widgets/index.d.ts +1 -0
  42. package/lib/components/InboxMessage/message-widgets/index.d.ts.map +1 -1
  43. package/lib/components/index.d.ts +2 -1
  44. package/lib/components/index.d.ts.map +1 -1
  45. package/lib/compute.d.ts.map +1 -1
  46. package/lib/compute.js +79 -3
  47. package/lib/compute.js.map +1 -1
  48. package/lib/config/env-config.d.ts +6 -0
  49. package/lib/config/env-config.d.ts.map +1 -1
  50. package/lib/config/env-config.js +19 -1
  51. package/lib/config/env-config.js.map +1 -1
  52. package/lib/container/AiInbox.d.ts +15 -0
  53. package/lib/container/AiInbox.d.ts.map +1 -0
  54. package/lib/container/AiInboxWithLoader.d.ts +36 -0
  55. package/lib/container/AiInboxWithLoader.d.ts.map +1 -0
  56. package/lib/container/AiLandingInput.d.ts +4 -0
  57. package/lib/container/AiLandingInput.d.ts.map +1 -0
  58. package/lib/container/AiLandingInput.js +164 -0
  59. package/lib/container/AiLandingInput.js.map +1 -0
  60. package/lib/container/Inbox.d.ts.map +1 -1
  61. package/lib/container/Inbox.js +6 -4
  62. package/lib/container/Inbox.js.map +1 -1
  63. package/lib/container/InboxAiMessagesLoader.d.ts +36 -0
  64. package/lib/container/InboxAiMessagesLoader.d.ts.map +1 -0
  65. package/lib/container/InboxAiMessagesLoader.js +44 -0
  66. package/lib/container/InboxAiMessagesLoader.js.map +1 -0
  67. package/lib/container/InboxContainer.d.ts +12 -0
  68. package/lib/container/InboxContainer.d.ts.map +1 -0
  69. package/lib/container/InboxContainer.js +31 -0
  70. package/lib/container/InboxContainer.js.map +1 -0
  71. package/lib/container/InboxTemplate1.d.ts +15 -0
  72. package/lib/container/InboxTemplate1.d.ts.map +1 -0
  73. package/lib/container/InboxTemplate1WithLoader.d.ts +36 -0
  74. package/lib/container/InboxTemplate1WithLoader.d.ts.map +1 -0
  75. package/lib/container/InboxTemplate2.d.ts +15 -0
  76. package/lib/container/InboxTemplate2.d.ts.map +1 -0
  77. package/lib/container/InboxWithAiLoader.d.ts +15 -0
  78. package/lib/container/InboxWithAiLoader.d.ts.map +1 -0
  79. package/lib/container/InboxWithAiLoader.js +56 -0
  80. package/lib/container/InboxWithAiLoader.js.map +1 -0
  81. package/lib/container/ServiceInbox.js +1 -1
  82. package/lib/container/ServiceInbox.js.map +1 -1
  83. package/lib/container/ThreadMessages.js +1 -1
  84. package/lib/container/ThreadMessages.js.map +1 -1
  85. package/lib/container/ThreadMessagesInbox.js +1 -1
  86. package/lib/container/ThreadMessagesInbox.js.map +1 -1
  87. package/lib/container/Threads.js +1 -1
  88. package/lib/container/Threads.js.map +1 -1
  89. package/lib/container/index.d.ts +4 -1
  90. package/lib/container/index.d.ts.map +1 -1
  91. package/lib/index.d.ts +3 -2
  92. package/lib/index.d.ts.map +1 -1
  93. package/lib/index.js +1 -1
  94. package/lib/machines/aiAgentMachine.d.ts +3 -0
  95. package/lib/machines/aiAgentMachine.d.ts.map +1 -0
  96. package/lib/machines/aiAgentMachine.js +1040 -0
  97. package/lib/machines/aiAgentMachine.js.map +1 -0
  98. package/lib/machines/types.d.ts +77 -0
  99. package/lib/machines/types.d.ts.map +1 -0
  100. package/lib/routes.json +40 -0
  101. package/lib/templates/InboxWithAi.d.ts +15 -0
  102. package/lib/templates/InboxWithAi.d.ts.map +1 -0
  103. package/lib/templates/InboxWithAi.js +405 -0
  104. package/lib/templates/InboxWithAi.js.map +1 -0
  105. package/lib/templates/InboxWithAi.tsx +502 -0
  106. package/lib/templates/index.d.ts +2 -0
  107. package/lib/templates/index.d.ts.map +1 -0
  108. package/lib/templates/index.ts +1 -0
  109. package/package.json +7 -5
  110. package/src/components/AIAgent/AIAgent.tsx +1351 -0
  111. package/src/components/AIAgent/README.md +82 -0
  112. package/src/components/AIAgent/index.ts +1 -0
  113. package/src/components/InboxMessage/InputComponent.tsx +263 -0
  114. package/src/components/InboxMessage/MessageInput.tsx +73 -66
  115. package/src/components/InboxMessage/MessageInputComponent.tsx +245 -0
  116. package/src/components/InboxMessage/Messages.tsx +2 -56
  117. package/src/components/InboxMessage/MessagesBuilderUi.tsx +205 -0
  118. package/src/components/InboxMessage/UploadImageButton.tsx +3 -2
  119. package/src/components/InboxMessage/index.ts +3 -0
  120. package/src/components/InboxMessage/message-widgets/CommonMessage.tsx +39 -21
  121. package/src/components/InboxMessage/message-widgets/ModernMessageGroup.tsx +1968 -0
  122. package/src/components/InboxMessage/message-widgets/PlainMessage.tsx +6 -2
  123. package/src/components/InboxMessage/message-widgets/SlackLikeMessageGroup.tsx +306 -54
  124. package/src/components/InboxMessage/message-widgets/index.ts +1 -0
  125. package/src/components/index.ts +4 -0
  126. package/src/compute.ts +83 -2
  127. package/src/config/env-config.ts +6 -0
  128. package/src/container/AiInbox.tsx +1796 -0
  129. package/src/container/AiInboxWithLoader.tsx +356 -0
  130. package/src/container/AiLandingInput.tsx +168 -0
  131. package/src/container/Inbox.tsx +8 -5
  132. package/src/container/InboxAiMessagesLoader.tsx +58 -0
  133. package/src/container/InboxContainer.tsx +35 -0
  134. package/src/container/InboxTemplate1.tsx +1542 -0
  135. package/src/container/InboxTemplate1WithLoader.tsx +338 -0
  136. package/src/container/InboxTemplate2.tsx +1606 -0
  137. package/src/container/InboxWithAiLoader.tsx +76 -0
  138. package/src/container/index.ts +21 -1
  139. package/src/index.ts +12 -1
  140. package/src/machines/aiAgentMachine.ts +1248 -0
  141. package/src/machines/types.ts +59 -0
  142. package/src/templates/InboxWithAi.tsx +502 -0
  143. package/src/templates/index.ts +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiAgentMachine.js","sources":["../../src/machines/aiAgentMachine.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ export interface Message {
2
+ id: string;
3
+ content: string;
4
+ sender: 'user' | 'ai';
5
+ timestamp: Date;
6
+ }
7
+ export interface MCPData {
8
+ searchResults?: Array<{
9
+ title: string;
10
+ url: string;
11
+ snippet: string;
12
+ source?: string;
13
+ }>;
14
+ newsArticles?: Array<{
15
+ title: string;
16
+ url: string;
17
+ description: string;
18
+ publishedAt: string;
19
+ source: {
20
+ name: string;
21
+ };
22
+ }>;
23
+ summary: string;
24
+ sources: string[];
25
+ searchTime: number;
26
+ }
27
+ export interface AIAgentContext {
28
+ messages: Message[];
29
+ currentInput: string;
30
+ error: string | null;
31
+ isTyping: boolean;
32
+ mcpData?: MCPData;
33
+ multiMessageMode?: boolean;
34
+ currentMultiStep?: number;
35
+ totalMultiSteps?: number;
36
+ multiMessagePlan?: string[];
37
+ regularMessages?: any[];
38
+ messageToRespondTo?: string;
39
+ }
40
+ export type UpdateEvent = {
41
+ type: 'UPDATE';
42
+ value?: Partial<AIAgentContext>;
43
+ };
44
+ export type AIAgentEvent = {
45
+ type: 'SEND_MESSAGE';
46
+ message: string;
47
+ } | {
48
+ type: 'INPUT_CHANGE';
49
+ value: string;
50
+ } | {
51
+ type: 'AI_RESPONSE_SUCCESS';
52
+ response: string;
53
+ } | {
54
+ type: 'AI_RESPONSE_ERROR';
55
+ error: string;
56
+ } | {
57
+ type: 'RETRY';
58
+ } | {
59
+ type: 'CLEAR_ERROR';
60
+ } | {
61
+ type: 'CONTINUE_MULTI_MESSAGE';
62
+ } | {
63
+ type: 'FORCE_MULTI_MESSAGE';
64
+ message: string;
65
+ } | {
66
+ type: 'UPDATE_REGULAR_MESSAGES';
67
+ messages: any[];
68
+ } | {
69
+ type: 'ANALYZE_EXISTING_CONTEXT';
70
+ } | {
71
+ type: 'AUTO_RESPOND_TO_MESSAGE';
72
+ message: string;
73
+ isAutoResponse?: boolean;
74
+ } | {
75
+ type: 'CONTINUE_PROCESSING';
76
+ } | UpdateEvent;
77
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/machines/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,OAAO;IACpB,aAAa,CAAC,EAAE,KAAK,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,KAAK,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAC5B,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,GAAG,EAAE,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,WAAW,GAAG;IACtB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,YAAY,GAClB;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,wBAAwB,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,yBAAyB,CAAC;IAAC,QAAQ,EAAE,GAAG,EAAE,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,0BAA0B,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,yBAAyB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9E;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,GAC/B,WAAW,CAAC"}
package/lib/routes.json CHANGED
@@ -55,5 +55,45 @@
55
55
  "ViewChannelDetailDocument": "{}"
56
56
  }
57
57
  }
58
+ },
59
+ {
60
+ "/ai-messenger": {
61
+ "exact": false,
62
+ "icon": "AiOutlineInbox",
63
+ "key": "ai-messenger",
64
+ "tab": "Ai Messenger",
65
+ "position": "MIDDLE",
66
+ "name": "AiMessenger",
67
+ "path": "/ai-messenger",
68
+ "componentPath": "@messenger-box/tailwind-ui-inbox/lib/container/InboxWithAiLoader.js",
69
+ "hasComponent": true
70
+ }
71
+ },
72
+ {
73
+ "//o/:orgName/ai-messenger": {
74
+ "exact": false,
75
+ "icon": "AiOutlineInbox",
76
+ "key": "ai-messenger-with-org-name",
77
+ "tab": "Ai Messenger",
78
+ "position": "MIDDLE",
79
+ "name": "AiMessengerWithOrgName",
80
+ "path": "//o/:orgName/ai-messenger",
81
+ "componentPath": "@messenger-box/tailwind-ui-inbox/lib/container/InboxWithAiLoader.js",
82
+ "hasComponent": true
83
+ }
84
+ },
85
+ {
86
+ "/ai-messenger/app": {
87
+ "exact": false,
88
+ "icon": "AiOutlineInbox",
89
+ "key": "ai-messenger-with-message-app",
90
+ "tab": "Ai Messenger",
91
+ "position": "MIDDLE",
92
+ "name": "AiMessengerWithMessageApp",
93
+ "path": "/ai-messenger/app",
94
+ "componentPath": "@messenger-box/tailwind-ui-inbox/lib/container/InboxAiMessagesLoader.js",
95
+ "hasComponent": true,
96
+ "queryParamsGenerator": true
97
+ }
58
98
  }
59
99
  ]
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export interface InboxProps {
3
+ channelFilters?: Record<string, unknown>;
4
+ channelRole?: string;
5
+ supportServices?: boolean;
6
+ pathPrefix?: string;
7
+ data?: any;
8
+ orgName?: string;
9
+ }
10
+ declare const _default: React.MemoExoticComponent<{
11
+ (props: InboxProps): React.JSX.Element;
12
+ displayName: string;
13
+ }>;
14
+ export default _default;
15
+ //# sourceMappingURL=InboxWithAi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InboxWithAi.d.ts","sourceRoot":"","sources":["../../src/templates/InboxWithAi.tsx"],"names":[],"mappings":"AAAA,OAAO,KAUN,MAAM,OAAO,CAAC;AAYf,MAAM,WAAW,UAAU;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;;YA0D2B,UAAU;;;AA8ZtC,wBAAuC"}
@@ -0,0 +1,405 @@
1
+ import React__default,{createContext,useContext,useCallback,useMemo,useEffect}from'react';import {useParams,useLocation,Outlet}from'@remix-run/react';// Context for sharing tab state between header and sidebar
2
+ const TabContext = createContext({
3
+ activeTab: 'design',
4
+ setActiveTab: () => {}
5
+ });
6
+ // Static utility hooks and components
7
+ const useMediaQuery = query => {
8
+ const [matches, setMatches] = React__default.useState(false);
9
+ useEffect(() => {
10
+ if (typeof window === 'undefined') return;
11
+ const mediaQuery = window.matchMedia(query);
12
+ const updateMatches = () => setMatches(mediaQuery.matches);
13
+ updateMatches();
14
+ mediaQuery.addEventListener('change', updateMatches);
15
+ return () => mediaQuery.removeEventListener('change', updateMatches);
16
+ }, [query]);
17
+ return matches;
18
+ };
19
+ // Hook to get window dimensions
20
+ const useWindowDimensions = () => {
21
+ const [windowDimensions, setWindowDimensions] = React__default.useState({
22
+ width: typeof window !== 'undefined' ? window.innerWidth : 1024,
23
+ height: typeof window !== 'undefined' ? window.innerHeight : 768
24
+ });
25
+ useEffect(() => {
26
+ if (typeof window === 'undefined') return;
27
+ const handleResize = () => {
28
+ setWindowDimensions({
29
+ width: window.innerWidth,
30
+ height: window.innerHeight
31
+ });
32
+ };
33
+ window.addEventListener('resize', handleResize);
34
+ handleResize(); // Set initial dimensions
35
+ return () => window.removeEventListener('resize', handleResize);
36
+ }, []);
37
+ return windowDimensions;
38
+ };
39
+ const EmptyState = React__default.memo(() => React__default.createElement("div", {
40
+ className: "h-full flex items-center justify-center bg-gray-100 p-4 sm:p-6 overflow-hidden"
41
+ }, React__default.createElement("div", {
42
+ className: "text-center max-w-sm mx-auto"
43
+ }, React__default.createElement("div", {
44
+ className: "text-3xl sm:text-4xl text-gray-400 mb-4"
45
+ }, "\uD83D\uDCAC"), React__default.createElement("h3", {
46
+ className: "text-lg sm:text-xl font-semibold text-gray-600 mb-2"
47
+ }, "Welcome to Messenger"), React__default.createElement("p", {
48
+ className: "text-sm sm:text-base text-gray-500 leading-relaxed"
49
+ }, "Select a conversation from the sidebar to start messaging"))));
50
+ const InboxWithAi = props => {
51
+ const [activeTab, setActiveTab] = React__default.useState('design');
52
+ return React__default.createElement(TabContext.Provider, {
53
+ value: {
54
+ activeTab,
55
+ setActiveTab
56
+ }
57
+ }, React__default.createElement(InboxWithAiInternal, {
58
+ ...props
59
+ }));
60
+ };
61
+ const InboxWithAiInternal = props => {
62
+ // const { channelFilters: channelFilterProp, channelRole, supportServices, data, orgName, pathPrefix = null } = props;
63
+ const {
64
+ id: pathChannelId,
65
+ postId: pathPostId
66
+ } = useParams();
67
+ const location = useLocation();
68
+ const urlParams = location?.search ? new URLSearchParams(location.search) : null;
69
+ const {
70
+ activeTab,
71
+ setActiveTab
72
+ } = useContext(TabContext);
73
+ // Extract channelId from query parameters (priority) or path parameters (fallback)
74
+ const channelId = urlParams?.get('id') || pathChannelId;
75
+ // Handle refresh sandbox
76
+ const handleRefreshSandbox = useCallback(() => {
77
+ console.log('Refreshing sandbox...');
78
+ }, []);
79
+ // Hooks - improved responsive breakpoints with better granularity
80
+ const {
81
+ width: windowWidth,
82
+ height: windowHeight
83
+ } = useWindowDimensions();
84
+ const isMobileView = useMediaQuery('(max-width: 640px)');
85
+ const isSmallTabletView = useMediaQuery('(min-width: 641px) and (max-width: 900px)');
86
+ const isTabletView = useMediaQuery('(min-width: 901px) and (max-width: 1024px)');
87
+ const isDesktopView = useMediaQuery('(min-width: 1025px)');
88
+ const isLargeDesktopView = useMediaQuery('(min-width: 1440px)');
89
+ const isSmallScreen = useMediaQuery('(max-width: 900px)');
90
+ // const auth = useSelector(userSelector);
91
+ const detailSidebarOptions = useMemo(() => ({
92
+ isMobileView,
93
+ isSmallTabletView,
94
+ isTabletView,
95
+ isDesktopView,
96
+ isLargeDesktopView,
97
+ isSmallScreen
98
+ }), [isMobileView, isSmallTabletView, isTabletView, isDesktopView, isLargeDesktopView, isSmallScreen]);
99
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
100
+ className: "flex flex-col h-screen overflow-hidden"
101
+ }, channelId && React__default.createElement("div", {
102
+ className: "flex-shrink-0 bg-white "
103
+ }, React__default.createElement("div", {
104
+ className: "flex items-center justify-between px-4 py-3"
105
+ }, React__default.createElement("div", {
106
+ className: "flex items-center"
107
+ }, !isSmallScreen && React__default.createElement("div", {
108
+ className: "flex bg-gray-100 p-2",
109
+ style: {
110
+ borderRadius: '10px'
111
+ }
112
+ }, React__default.createElement("button", {
113
+ onClick: () => setActiveTab('design'),
114
+ className: `flex items-center space-x-2 px-4 py-2 text-xs font-medium transition-all duration-200 ${activeTab === 'design' ? 'bg-blue-500 text-white shadow-sm' : 'text-gray-600 hover:text-gray-900'}`,
115
+ style: {
116
+ borderRadius: '10px'
117
+ }
118
+ }, React__default.createElement("svg", {
119
+ className: "w-4 h-4",
120
+ fill: "none",
121
+ stroke: "currentColor",
122
+ viewBox: "0 0 24 24"
123
+ }, React__default.createElement("path", {
124
+ strokeLinecap: "round",
125
+ strokeLinejoin: "round",
126
+ strokeWidth: 2,
127
+ d: "M4 5a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1H5a1 1 0 01-1-1V5zM4 13a1 1 0 011-1h6a1 1 0 011 1v6a1 1 0 01-1 1H5a1 1 0 01-1-1v-6zM16 13a1 1 0 011-1h2a1 1 0 011 1v6a1 1 0 01-1 1h-2a1 1 0 01-1-1v-6z"
128
+ })), React__default.createElement("span", null, "Design")), React__default.createElement("button", {
129
+ onClick: () => setActiveTab('interact'),
130
+ className: `flex items-center space-x-2 px-4 py-2 text-xs font-medium transition-all duration-200 ${activeTab === 'interact' ? 'bg-blue-500 text-white shadow-sm' : 'text-gray-600 hover:text-gray-900'}`,
131
+ style: {
132
+ borderRadius: '10px'
133
+ }
134
+ }, React__default.createElement("svg", {
135
+ className: "w-4 h-4",
136
+ fill: "none",
137
+ stroke: "currentColor",
138
+ viewBox: "0 0 24 24"
139
+ }, React__default.createElement("path", {
140
+ strokeLinecap: "round",
141
+ strokeLinejoin: "round",
142
+ strokeWidth: 2,
143
+ d: "M15 12a3 3 0 11-6 0 3 3 0 016 0z"
144
+ }), React__default.createElement("path", {
145
+ strokeLinecap: "round",
146
+ strokeLinejoin: "round",
147
+ strokeWidth: 2,
148
+ d: "M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"
149
+ })), React__default.createElement("span", null, "Interact")), React__default.createElement("button", {
150
+ onClick: () => setActiveTab('code'),
151
+ className: `flex items-center space-x-2 px-4 py-2 text-xs font-medium transition-all duration-200 ${activeTab === 'code' ? 'bg-blue-500 text-white shadow-sm' : 'text-gray-600 hover:text-gray-900'}`,
152
+ style: {
153
+ borderRadius: '10px'
154
+ }
155
+ }, React__default.createElement("svg", {
156
+ className: "w-4 h-4",
157
+ fill: "none",
158
+ stroke: "currentColor",
159
+ viewBox: "0 24 24"
160
+ }, React__default.createElement("path", {
161
+ strokeLinecap: "round",
162
+ strokeLinejoin: "round",
163
+ strokeWidth: 2,
164
+ d: "M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4"
165
+ })), React__default.createElement("span", null, "Code")))), isDesktopView && React__default.createElement("button", {
166
+ onClick: handleRefreshSandbox,
167
+ className: "p-2 text-gray-600 hover:text-gray-900 hover:bg-gray-50 rounded-lg transition-colors",
168
+ title: "Refresh Sandbox"
169
+ }, React__default.createElement("svg", {
170
+ className: "w-4 h-4",
171
+ fill: "none",
172
+ stroke: "currentColor",
173
+ viewBox: "0 0 24 24"
174
+ }, React__default.createElement("path", {
175
+ strokeLinecap: "round",
176
+ strokeLinejoin: "round",
177
+ strokeWidth: 2,
178
+ d: "M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"
179
+ }))))), React__default.createElement("div", {
180
+ className: "flex-1 grid overflow-hidden",
181
+ style: {
182
+ gridTemplateColumns: isDesktopView ? '35% 65%' : '1fr',
183
+ height: 'calc(100vh - 80px)' // Subtract header height
184
+ }
185
+ }, React__default.createElement("div", {
186
+ className: `
187
+ ${isMobileView && !channelId ? 'hidden' : 'flex'}
188
+ flex flex-col overflow-hidden transition-all duration-300 ease-in-out
189
+ `,
190
+ style: {
191
+ paddingTop: '15px'
192
+ }
193
+ }, channelId ? React__default.createElement(ContentComponent, {
194
+ channelId: channelId
195
+ }) : React__default.createElement(EmptyState, null)), channelId && isDesktopView && React__default.createElement("div", {
196
+ className: "overflow-hidden border",
197
+ style: {
198
+ marginBottom: 10,
199
+ marginRight: 10,
200
+ borderRadius: 10
201
+ }
202
+ }, React__default.createElement(RightSidebarContent, {
203
+ detailSidebarOptions: detailSidebarOptions,
204
+ windowWidth: windowWidth,
205
+ windowHeight: windowHeight
206
+ })))));
207
+ };
208
+ const ContentComponent = React__default.memo(props => {
209
+ const {
210
+ channelId
211
+ } = props;
212
+ return React__default.createElement("div", {
213
+ className: "flex overflow-hidden h-full"
214
+ }, React__default.createElement("div", {
215
+ className: "flex-1 flex flex-col min-w-0 overflow-hidden border-t border-gray-300"
216
+ }, React__default.createElement("div", {
217
+ className: "flex-1 flex flex-col min-h-0 overflow-hidden"
218
+ }, channelId && React__default.createElement(React__default.Fragment, null, React__default.createElement(MessagesComponent, {
219
+ ...props
220
+ })))));
221
+ });
222
+ const RightSidebarWrapper = React__default.memo(({
223
+ detailSidebarOptions
224
+ }) => {
225
+ const {
226
+ activeTab
227
+ } = useContext(TabContext);
228
+ return React__default.createElement("div", {
229
+ className: "h-full flex flex-col overflow-hidden bg-white"
230
+ }, React__default.createElement("div", {
231
+ className: "flex-1 overflow-hidden"
232
+ }, activeTab === 'design' ? React__default.createElement("div", {
233
+ className: "h-full flex items-center justify-center bg-gray-50"
234
+ }, React__default.createElement("div", {
235
+ className: "text-center"
236
+ }, React__default.createElement("div", {
237
+ className: "mb-8"
238
+ }, React__default.createElement("svg", {
239
+ className: "w-32 h-16 mx-auto text-black",
240
+ viewBox: "0 0 394 80",
241
+ fill: "currentColor"
242
+ }, React__default.createElement("path", {
243
+ d: "M262 0h68.5v12.7h-27.2v66.6h-13.6V12.7H262V0ZM149 0v12.7H94v20.4h44.3v12.6H94v21h55v12.6H80.5V0h68.4zm34.3 0h-17.8l63.8 79.4h17.9l-32-39.7 32-39.7h-17.9l-23 28.6-23-28.6zm18.3 56.7-9-11-27.1 33.7h17.8l18.3-22.7z"
244
+ }), React__default.createElement("path", {
245
+ d: "M81 79.3 17 0H0v79.3h13.6V17l50.2 62.3H81Zm252.6-.4c-1 0-1.8-.4-2.5-1s-1.1-1.6-1.1-2.6.3-1.8 1-2.5 1.6-1 2.6-1 1.8.3 2.5 1a3.4 3.4 0 0 1 .6 4.3 3.7 3.7 0 0 1-3 1.8zm23.2-33.5h6v23.3c0 2.1-.4 4-1.3 5.5a9.1 9.1 0 0 1-3.8 3.5c-1.6.8-3.5 1.3-5.7 1.3-2 0-3.7-.4-5.3-1s-2.8-1.8-3.7-3.2c-.9-1.3-1.4-3-1.4-5h6c.1.8.3 1.6.7 2.2s1 1.2 1.6 1.5c.7.4 1.5.5 2.4.5 1 0 1.8-.2 2.4-.6a4 4 0 0 0 1.6-1.8c.3-.8.5-1.8.5-3V45.5zm30.9 9.1a4.4 4.4 0 0 0-2-3.3 7.5 7.5 0 0 0-4.3-1.1c-1.3 0-2.4.2-3.3.5-.9.4-1.6 1-2 1.6a3.5 3.5 0 0 0-.3 4c.3.5.7.9 1.3 1.2l1.8 1 2 .5 3.2.8c1.3.3 2.5.7 3.7 1.2a13 13 0 0 1 3.2 1.8 8.1 8.1 0 0 1 3 6.5c0 2-.5 3.7-1.5 5.1a10 10 0 0 1-4.4 3.5c-1.8.8-4.1 1.2-6.8 1.2-2.6 0-4.9-.4-6.8-1.2-2-.8-3.4-2-4.5-3.5a10 10 0 0 1-1.7-5.6h6a5 5 0 0 0 3.5 4.6c1 .4 2.2.6 3.4.6 1.3 0 2.5-.2 3.5-.6 1-.4 1.8-1 2.4-1.7a4 4 0 0 0 .8-2.4c0-.9-.2-1.6-.7-2.2a11 11 0 0 0-2.1-1.4l-3.2-1-3.8-1c-2.8-.7-5-1.7-6.6-3.2a7.2 7.2 0 0 1-2.4-5.7 8 8 0 0 1 1.7-5 10 10 0 0 1 4.3-3.5c2-.8 4-1.2 6.4-1.2 2.3 0 4.4.4 6.2 1.2 1.8.8 3.2 2 4.2 3.4 1 1.4 1.5 3 1.5 5h-5.8z"
246
+ }))), React__default.createElement("div", {
247
+ className: "space-y-4 text-gray-600"
248
+ }, React__default.createElement("h3", {
249
+ className: "text-lg font-semibold text-gray-900"
250
+ }, "Design View"), React__default.createElement("p", {
251
+ className: "font-mono text-sm bg-gray-100 px-3 py-1 rounded"
252
+ }, "Design components and UI"), React__default.createElement("p", null, "Customize and preview your design changes.")), React__default.createElement("div", {
253
+ className: "mt-8 space-y-4"
254
+ }, React__default.createElement("button", {
255
+ className: "bg-black text-white px-6 py-3 rounded-full hover:bg-gray-800 transition-colors flex items-center space-x-2 mx-auto"
256
+ }, React__default.createElement("svg", {
257
+ className: "w-4 h-4",
258
+ fill: "currentColor",
259
+ viewBox: "0 0 24 24"
260
+ }, React__default.createElement("path", {
261
+ d: "M12 2L2 7v10c0 5.55 3.84 9.739 9 11 5.16-1.261 9-5.45 9-11V7l-10-5z"
262
+ })), React__default.createElement("span", null, "Design now")), React__default.createElement("p", {
263
+ className: "text-sm text-gray-500 underline cursor-pointer hover:text-gray-700"
264
+ }, "View design docs")))) : activeTab === 'interact' ? React__default.createElement("div", {
265
+ className: "h-full flex items-center justify-center bg-blue-50"
266
+ }, React__default.createElement("div", {
267
+ className: "text-center"
268
+ }, React__default.createElement("div", {
269
+ className: "mb-8"
270
+ }, React__default.createElement("svg", {
271
+ className: "w-32 h-32 mx-auto text-blue-500",
272
+ fill: "none",
273
+ stroke: "currentColor",
274
+ viewBox: "0 0 24 24"
275
+ }, React__default.createElement("path", {
276
+ strokeLinecap: "round",
277
+ strokeLinejoin: "round",
278
+ strokeWidth: 1,
279
+ d: "M15 12a3 3 0 11-6 0 3 3 0 016 0z"
280
+ }), React__default.createElement("path", {
281
+ strokeLinecap: "round",
282
+ strokeLinejoin: "round",
283
+ strokeWidth: 1,
284
+ d: "M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"
285
+ }))), React__default.createElement("div", {
286
+ className: "space-y-4 text-gray-600"
287
+ }, React__default.createElement("h3", {
288
+ className: "text-lg font-semibold text-gray-900"
289
+ }, "Interactive Mode"), React__default.createElement("p", {
290
+ className: "font-mono text-sm bg-blue-100 px-3 py-1 rounded"
291
+ }, "Live interaction and testing"), React__default.createElement("p", null, "Test and interact with your components in real-time.")), React__default.createElement("div", {
292
+ className: "mt-8 space-y-4"
293
+ }, React__default.createElement("button", {
294
+ className: "bg-blue-500 text-white px-6 py-3 rounded-full hover:bg-blue-600 transition-colors flex items-center space-x-2 mx-auto"
295
+ }, React__default.createElement("svg", {
296
+ className: "w-4 h-4",
297
+ fill: "currentColor",
298
+ viewBox: "0 0 24 24"
299
+ }, React__default.createElement("path", {
300
+ d: "M8 5v14l11-7z"
301
+ })), React__default.createElement("span", null, "Start Interacting")), React__default.createElement("p", {
302
+ className: "text-sm text-gray-500 underline cursor-pointer hover:text-gray-700"
303
+ }, "Learn about interactions")))) : React__default.createElement("div", {
304
+ className: "h-full bg-gray-900 text-gray-300 p-4 overflow-auto"
305
+ }, React__default.createElement("div", {
306
+ className: "font-mono text-sm"
307
+ }, React__default.createElement("div", {
308
+ className: "mb-4"
309
+ }, React__default.createElement("div", {
310
+ className: "text-green-400"
311
+ }, "// app/page.tsx")), React__default.createElement("div", {
312
+ className: "space-y-2"
313
+ }, React__default.createElement("div", null, React__default.createElement("span", {
314
+ className: "text-purple-400"
315
+ }, "export"), ' ', React__default.createElement("span", {
316
+ className: "text-purple-400"
317
+ }, "default"), ' ', React__default.createElement("span", {
318
+ className: "text-blue-400"
319
+ }, "function"), ' ', React__default.createElement("span", {
320
+ className: "text-yellow-400"
321
+ }, "Home"), "() ", '{'), React__default.createElement("div", {
322
+ className: "ml-4"
323
+ }, React__default.createElement("span", {
324
+ className: "text-purple-400"
325
+ }, "return"), " ("), React__default.createElement("div", {
326
+ className: "ml-8"
327
+ }, '<', React__default.createElement("span", {
328
+ className: "text-red-400"
329
+ }, "main"), ' ', React__default.createElement("span", {
330
+ className: "text-green-400"
331
+ }, "className"), "=", React__default.createElement("span", {
332
+ className: "text-yellow-400"
333
+ }, "\"flex min-h-screen flex-col items-center justify-between p-24\""), '>'), React__default.createElement("div", {
334
+ className: "ml-12"
335
+ }, '<', React__default.createElement("span", {
336
+ className: "text-red-400"
337
+ }, "div"), ' ', React__default.createElement("span", {
338
+ className: "text-green-400"
339
+ }, "className"), "=", React__default.createElement("span", {
340
+ className: "text-yellow-400"
341
+ }, "\"z-10 max-w-5xl w-full items-center justify-between font-mono text-sm lg:flex\""), '>'), React__default.createElement("div", {
342
+ className: "ml-16"
343
+ }, '<', React__default.createElement("span", {
344
+ className: "text-red-400"
345
+ }, "p"), ' ', React__default.createElement("span", {
346
+ className: "text-green-400"
347
+ }, "className"), "=", React__default.createElement("span", {
348
+ className: "text-yellow-400"
349
+ }, "\"fixed left-0 top-0 flex w-full justify-center border-b border-gray-300 bg-gradient-to-b from-zinc-200 pb-6 pt-8 backdrop-blur-2xl dark:border-neutral-800 dark:bg-zinc-800/30 dark:from-inherit lg:static lg:w-auto lg:rounded-xl lg:border lg:bg-gray-200 lg:p-4 lg:dark:bg-zinc-800/30\""), '>'), React__default.createElement("div", {
350
+ className: "ml-20 text-gray-400"
351
+ }, "Get started by editing\u00A0"), React__default.createElement("div", {
352
+ className: "ml-20"
353
+ }, '<', React__default.createElement("span", {
354
+ className: "text-red-400"
355
+ }, "code"), ' ', React__default.createElement("span", {
356
+ className: "text-green-400"
357
+ }, "className"), "=", React__default.createElement("span", {
358
+ className: "text-yellow-400"
359
+ }, "\"font-mono font-bold\""), '>', "app/page.tsx", '</', React__default.createElement("span", {
360
+ className: "text-red-400"
361
+ }, "code"), '>'), React__default.createElement("div", {
362
+ className: "ml-16"
363
+ }, '</', React__default.createElement("span", {
364
+ className: "text-red-400"
365
+ }, "p"), '>'), React__default.createElement("div", {
366
+ className: "ml-12"
367
+ }, '</', React__default.createElement("span", {
368
+ className: "text-red-400"
369
+ }, "div"), '>'), React__default.createElement("div", {
370
+ className: "ml-8"
371
+ }, '</', React__default.createElement("span", {
372
+ className: "text-red-400"
373
+ }, "main"), '>'), React__default.createElement("div", {
374
+ className: "ml-4"
375
+ }, ");"), React__default.createElement("div", null, '}'))))));
376
+ });
377
+ const RightSidebarContent = React__default.memo(({
378
+ detailSidebarOptions,
379
+ windowWidth,
380
+ windowHeight
381
+ }) => {
382
+ return React__default.createElement("div", {
383
+ className: "border-l border-gray-200 bg-white flex-shrink-0 overflow-hidden",
384
+ style: {
385
+ // width: `${windowWidth * 0.35}px`, // 35% of window width
386
+ height: `${windowHeight}px`,
387
+ maxHeight: '100vh'
388
+ }
389
+ }, React__default.createElement(RightSidebarWrapper, {
390
+ detailSidebarOptions: detailSidebarOptions
391
+ }));
392
+ });
393
+ const MessagesComponent = React__default.memo(props => {
394
+ return React__default.createElement(Outlet, {
395
+ context: "app"
396
+ });
397
+ });
398
+ // Display names for debugging
399
+ InboxWithAi.displayName = 'Inbox';
400
+ InboxWithAiInternal.displayName = 'InboxWithAiInternal';
401
+ ContentComponent.displayName = 'ContentComponent';
402
+ MessagesComponent.displayName = 'MessagesComponent';
403
+ RightSidebarWrapper.displayName = 'RightSidebarWrapper';
404
+ RightSidebarContent.displayName = 'RightSidebarContent';
405
+ var Inbox = React__default.memo(InboxWithAi);export{Inbox as default};//# sourceMappingURL=InboxWithAi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InboxWithAi.js","sources":["../../src/templates/InboxWithAi.tsx"],"sourcesContent":[null],"names":["React"],"mappings":"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"}