@ttt-productions/chat-react 0.4.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/context/ChatAttachmentUrlContext.d.ts +25 -0
- package/dist/context/ChatAttachmentUrlContext.d.ts.map +1 -0
- package/dist/context/ChatAttachmentUrlContext.js +21 -0
- package/dist/context/ChatAttachmentUrlContext.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/ui/MessageItemDefault.d.ts.map +1 -1
- package/dist/ui/MessageItemDefault.js +13 -8
- package/dist/ui/MessageItemDefault.js.map +1 -1
- package/package.json +12 -12
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ChatAttachment } from "@ttt-productions/chat-core";
|
|
3
|
+
/**
|
|
4
|
+
* Resolves a READY chat attachment to a display URL at render time. The
|
|
5
|
+
* attachment doc stores only `mediaAssetId` (never a URL); the consuming app
|
|
6
|
+
* injects a resolver that builds the protected-gateway URL (or an emulator
|
|
7
|
+
* URL) from `attachment.mediaAssetId` + its variant scheme. chat-react stays
|
|
8
|
+
* app-agnostic — it never knows about gateways, hosts, or Firebase.
|
|
9
|
+
*
|
|
10
|
+
* Return null when no URL can be built yet (e.g. missing assetId) — the
|
|
11
|
+
* renderer shows nothing for that attachment body.
|
|
12
|
+
*/
|
|
13
|
+
export type ChatAttachmentUrlResolver = (attachment: ChatAttachment) => string | null;
|
|
14
|
+
export type ChatAttachmentUrlProviderProps = {
|
|
15
|
+
resolveAttachmentUrl: ChatAttachmentUrlResolver;
|
|
16
|
+
children: React.ReactNode;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Wraps any chat tree that renders attachments. Required alongside
|
|
20
|
+
* <ChatNameResolverProvider> for trees rendering <ChatShell>/<MessageList>.
|
|
21
|
+
*/
|
|
22
|
+
export declare function ChatAttachmentUrlProvider(props: ChatAttachmentUrlProviderProps): React.JSX.Element;
|
|
23
|
+
/** Strict hook — throws if no provider is wrapped (missing setup must surface). */
|
|
24
|
+
export declare function useChatAttachmentUrlResolver(): ChatAttachmentUrlResolver;
|
|
25
|
+
//# sourceMappingURL=ChatAttachmentUrlContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatAttachmentUrlContext.d.ts","sourceRoot":"","sources":["../../src/context/ChatAttachmentUrlContext.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,UAAU,EAAE,cAAc,KAAK,MAAM,GAAG,IAAI,CAAC;AAItF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,oBAAoB,EAAE,yBAAyB,CAAC;IAChD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,8BAA8B,qBAO9E;AAED,mFAAmF;AACnF,wBAAgB,4BAA4B,IAAI,yBAAyB,CAQxE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
const ChatAttachmentUrlContext = React.createContext(null);
|
|
5
|
+
/**
|
|
6
|
+
* Wraps any chat tree that renders attachments. Required alongside
|
|
7
|
+
* <ChatNameResolverProvider> for trees rendering <ChatShell>/<MessageList>.
|
|
8
|
+
*/
|
|
9
|
+
export function ChatAttachmentUrlProvider(props) {
|
|
10
|
+
const { resolveAttachmentUrl, children } = props;
|
|
11
|
+
return (_jsx(ChatAttachmentUrlContext.Provider, { value: resolveAttachmentUrl, children: children }));
|
|
12
|
+
}
|
|
13
|
+
/** Strict hook — throws if no provider is wrapped (missing setup must surface). */
|
|
14
|
+
export function useChatAttachmentUrlResolver() {
|
|
15
|
+
const resolver = React.useContext(ChatAttachmentUrlContext);
|
|
16
|
+
if (!resolver) {
|
|
17
|
+
throw new Error("[chat-react] ChatAttachmentUrlProvider is required. Wrap your ChatShell tree with <ChatAttachmentUrlProvider>.");
|
|
18
|
+
}
|
|
19
|
+
return resolver;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=ChatAttachmentUrlContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatAttachmentUrlContext.js","sourceRoot":"","sources":["../../src/context/ChatAttachmentUrlContext.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAe/B,MAAM,wBAAwB,GAAG,KAAK,CAAC,aAAa,CAAmC,IAAI,CAAC,CAAC;AAO7F;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAqC;IAC7E,MAAM,EAAE,oBAAoB,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACjD,OAAO,CACL,KAAC,wBAAwB,CAAC,QAAQ,IAAC,KAAK,EAAE,oBAAoB,YAC3D,QAAQ,GACyB,CACrC,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,4BAA4B;IAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export type { ChatCoreConfig, ChatAttachmentConfig, ChatUploadAdapter, ChatMentionConfig, MessageRenderer, MessageRendererRegistry, RenderableMentionProvider, MentionResultRenderer, } from "./types.js";
|
|
2
|
+
export type { ChatAttachmentUrlResolver, ChatAttachmentUrlProviderProps, } from "./context/ChatAttachmentUrlContext.js";
|
|
3
|
+
export { ChatAttachmentUrlProvider, useChatAttachmentUrlResolver, } from "./context/ChatAttachmentUrlContext.js";
|
|
2
4
|
export type { ChatNameResolverProviderProps } from "./context/ChatNameResolverContext.js";
|
|
3
5
|
export { ChatNameResolverProvider, useChatNameResolver, useOptionalChatNameResolver, useResolvedSenderName, } from "./context/ChatNameResolverContext.js";
|
|
4
6
|
export type { UseChatMessagesResult } from "./hooks/useChatMessages.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,sCAAsC,CAAC;AAE9C,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,YAAY,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EACL,mBAAmB,EACnB,KAAK,wBAAwB,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,GAC7B,MAAM,wCAAwC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAG/C,YAAY,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,sCAAsC,CAAC;AAE9C,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,YAAY,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EACL,mBAAmB,EACnB,KAAK,wBAAwB,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,GAC7B,MAAM,wCAAwC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
export { ChatAttachmentUrlProvider, useChatAttachmentUrlResolver, } from "./context/ChatAttachmentUrlContext.js";
|
|
2
3
|
export { ChatNameResolverProvider, useChatNameResolver, useOptionalChatNameResolver, useResolvedSenderName, } from "./context/ChatNameResolverContext.js";
|
|
3
4
|
export { useChatMessages } from "./hooks/useChatMessages.js";
|
|
4
5
|
export { canAccessThread } from "./hooks/useChatThreadAccess.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAyBb,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAI/C,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAyB,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EACL,mBAAmB,GAEpB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,sBAAsB,GAKvB,MAAM,wCAAwC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageItemDefault.d.ts","sourceRoot":"","sources":["../../src/ui/MessageItemDefault.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAkB,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageItemDefault.d.ts","sourceRoot":"","sources":["../../src/ui/MessageItemDefault.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAkB,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAiGpG,MAAM,MAAM,uBAAuB,GAAG;IACpC,CAAC,EAAE,aAAa,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAG9B,cAAc,CAAC,EAAE,OAAO,CAAC;IAGzB,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CAEjE,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,+BA4DhE"}
|
|
@@ -6,13 +6,17 @@ import { MediaViewer } from "@ttt-productions/media-viewer/react";
|
|
|
6
6
|
import { FileText, Loader2, AlertTriangle } from "lucide-react";
|
|
7
7
|
import { MessageActions } from "./menus.js";
|
|
8
8
|
import { useResolvedSenderName } from "../context/ChatNameResolverContext.js";
|
|
9
|
+
import { useChatAttachmentUrlResolver } from "../context/ChatAttachmentUrlContext.js";
|
|
9
10
|
// ============================================
|
|
10
11
|
// Attachment rendering
|
|
11
12
|
// ============================================
|
|
12
13
|
function AttachmentView({ att }) {
|
|
14
|
+
// Display URL is built at render time by the app-injected resolver from
|
|
15
|
+
// att.mediaAssetId — attachments never store URLs (protected-gateway model).
|
|
16
|
+
const resolveAttachmentUrl = useChatAttachmentUrlResolver();
|
|
13
17
|
// In-flight placeholder — bytes uploaded, processing/moderation pending. No
|
|
14
|
-
// `
|
|
15
|
-
// pending doc — Firestore rules scope it until `status === 'ready'`).
|
|
18
|
+
// `mediaAssetId` yet. Rendered only to the sender (other participants can't
|
|
19
|
+
// read a pending doc — Firestore rules scope it until `status === 'ready'`).
|
|
16
20
|
if (att.status === "pending") {
|
|
17
21
|
return (_jsxs("div", { className: "chat-attachment-pending", children: [_jsx(Loader2, { className: "h-4 w-4 shrink-0 animate-spin" }), _jsx("span", { className: "truncate", children: att.name }), _jsx("span", { className: "chat-attachment-status-label", children: "Sending\u2026" })] }));
|
|
18
22
|
}
|
|
@@ -20,20 +24,21 @@ function AttachmentView({ att }) {
|
|
|
20
24
|
if (att.status === "failed") {
|
|
21
25
|
return (_jsxs("div", { className: "chat-attachment-rejected", children: [_jsx(AlertTriangle, { className: "h-4 w-4 shrink-0" }), _jsx("span", { className: "truncate", children: att.name }), _jsx("span", { className: "chat-attachment-status-label", children: att.failureReason ?? "Couldn't send this attachment" })] }));
|
|
22
26
|
}
|
|
23
|
-
// ready (or legacy/absent status) —
|
|
24
|
-
|
|
27
|
+
// ready (or legacy/absent status) — resolve the display URL from the asset ref.
|
|
28
|
+
const url = resolveAttachmentUrl(att);
|
|
29
|
+
if (!url)
|
|
25
30
|
return null;
|
|
26
31
|
if (att.type === "image") {
|
|
27
|
-
return _jsx(MediaViewer, { type: "image", url:
|
|
32
|
+
return _jsx(MediaViewer, { type: "image", url: url, alt: att.name, className: "chat-attachment-media" });
|
|
28
33
|
}
|
|
29
34
|
if (att.type === "video") {
|
|
30
|
-
return _jsx(MediaViewer, { type: "video", url:
|
|
35
|
+
return _jsx(MediaViewer, { type: "video", url: url, controls: true, className: "chat-attachment-media" });
|
|
31
36
|
}
|
|
32
37
|
if (att.type === "audio") {
|
|
33
|
-
return _jsx(MediaViewer, { type: "audio", url:
|
|
38
|
+
return _jsx(MediaViewer, { type: "audio", url: url, controls: true, className: "chat-attachment-media" });
|
|
34
39
|
}
|
|
35
40
|
// text/markdown — download link
|
|
36
|
-
return (_jsxs("a", { href:
|
|
41
|
+
return (_jsxs("a", { href: url, target: "_blank", rel: "noopener noreferrer", className: "chat-attachment-text-link", children: [_jsx(FileText, { className: "h-4 w-4 shrink-0" }), _jsx("span", { className: "truncate", children: att.name })] }));
|
|
37
42
|
}
|
|
38
43
|
// ============================================
|
|
39
44
|
// Reply-to quote
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageItemDefault.js","sourceRoot":"","sources":["../../src/ui/MessageItemDefault.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageItemDefault.js","sourceRoot":"","sources":["../../src/ui/MessageItemDefault.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ttt-productions/chat-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "Chat React UI, hooks, and Firebase-client adapter for TTT Productions apps (realtime newest window + infinite older pagination)",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"@tanstack/react-query": ">=5.0.0",
|
|
36
|
-
"@ttt-productions/query-core": "^0.
|
|
36
|
+
"@ttt-productions/query-core": "^0.13.0",
|
|
37
37
|
"firebase": ">=12.0.0",
|
|
38
38
|
"lucide-react": ">=0.0.0",
|
|
39
39
|
"react": ">=19.0.0",
|
|
@@ -60,18 +60,18 @@
|
|
|
60
60
|
}
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
|
-
"@ttt-productions/chat-core": "^0.
|
|
64
|
-
"@ttt-productions/chat-schemas": "^0.
|
|
65
|
-
"@ttt-productions/media-schemas": "^0.
|
|
66
|
-
"@ttt-productions/ui-core": "^0.
|
|
67
|
-
"@ttt-productions/file-input": "^0.
|
|
68
|
-
"@ttt-productions/upload-ui": "^0.
|
|
69
|
-
"@ttt-productions/media-viewer": "^0.
|
|
70
|
-
"@ttt-productions/mobile-core": "^0.
|
|
71
|
-
"@ttt-productions/firebase-helpers": "^0.
|
|
63
|
+
"@ttt-productions/chat-core": "^0.10.0",
|
|
64
|
+
"@ttt-productions/chat-schemas": "^0.9.0",
|
|
65
|
+
"@ttt-productions/media-schemas": "^0.11.0",
|
|
66
|
+
"@ttt-productions/ui-core": "^0.11.0",
|
|
67
|
+
"@ttt-productions/file-input": "^0.9.0",
|
|
68
|
+
"@ttt-productions/upload-ui": "^0.7.0",
|
|
69
|
+
"@ttt-productions/media-viewer": "^0.8.0",
|
|
70
|
+
"@ttt-productions/mobile-core": "^0.9.0",
|
|
71
|
+
"@ttt-productions/firebase-helpers": "^0.11.0"
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
|
-
"@ttt-productions/query-core": "^0.
|
|
74
|
+
"@ttt-productions/query-core": "^0.13.0",
|
|
75
75
|
"@types/react": "^19.0.0",
|
|
76
76
|
"@types/react-dom": "^19.0.0",
|
|
77
77
|
"react": "^19.0.0",
|