Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
Reviewer's GuideThis PR centralizes and upgrades Markdown rendering by replacing disparate plugin setups with a unified MemoizedReactMarkdown component that supports GitHub flavored Markdown and KaTeX math, adjusts hook and chat logic dependencies, and flips the default thread publicity flag via code removal and database migrations. Sequence Diagram: Markdown Rendering with KaTeX in
|
| Change | Details | Files |
|---|---|---|
| Centralized and enhanced Markdown rendering pipeline |
|
apps/masterbots.ai/components/shared/markdown.tsx |
| Removed per-component Markdown plugin configurations |
|
apps/masterbots.ai/components/routes/browse/browse-chat-message.tsxapps/masterbots.ai/components/routes/chat/reasoning/reasoning-chat-message.tsxapps/masterbots.ai/components/shared/short-message.tsxapps/masterbots.ai/components/shared/thread-blog-markdown.tsxapps/masterbots.ai/components/routes/chat/chat-message.tsx |
| Updated Markdown-related dependencies |
|
apps/masterbots.ai/package.json |
| Refined use-chat-attachments hook dependencies |
|
apps/masterbots.ai/lib/hooks/use-chat-attachments.ts |
| Removed hardcoded public flag in chat provider |
|
apps/masterbots.ai/lib/hooks/use-mb-chat.tsx |
| Added migrations to change default thread publicity |
|
apps/hasura/migrations/masterbots/1747434920420_alter_table_public_thread_alter_column_is_public/up.sqlapps/hasura/migrations/masterbots/1747434920420_alter_table_public_thread_alter_column_is_public/down.sql |
Tips and commands
Interacting with Sourcery
- Trigger a new review: Comment
@sourcery-ai reviewon the pull request. - Continue discussions: Reply directly to Sourcery's review comments.
- Generate a GitHub issue from a review comment: Ask Sourcery to create an
issue from a review comment by replying to it. You can also reply to a
review comment with@sourcery-ai issueto create an issue from it. - Generate a pull request title: Write
@sourcery-aianywhere in the pull
request title to generate a title at any time. You can also comment
@sourcery-ai titleon the pull request to (re-)generate the title at any time. - Generate a pull request summary: Write
@sourcery-ai summaryanywhere in
the pull request body to generate a PR summary at any time exactly where you
want it. You can also comment@sourcery-ai summaryon the pull request to
(re-)generate the summary at any time. - Generate reviewer's guide: Comment
@sourcery-ai guideon the pull
request to (re-)generate the reviewer's guide at any time. - Resolve all Sourcery comments: Comment
@sourcery-ai resolveon the
pull request to resolve all Sourcery comments. Useful if you've already
addressed all the comments and don't want to see them anymore. - Dismiss all Sourcery reviews: Comment
@sourcery-ai dismisson the pull
request to dismiss all existing Sourcery reviews. Especially useful if you
want to start fresh with a new review - don't forget to comment
@sourcery-ai reviewto trigger a new review!
Customizing Your Experience
Access your dashboard to:
- Enable or disable review features such as the Sourcery-generated pull request
summary, the reviewer's guide, and others. - Change the review language.
- Add, remove or edit custom review instructions.
- Adjust other review settings.
Getting Help
- Contact our support team for questions or feedback.
- Visit our documentation for detailed guides and information.
- Keep in touch with the Sourcery team by following us on X/Twitter, LinkedIn or GitHub.
|
Warning Rate limit exceeded@AndlerRL has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 3 minutes and 4 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
WalkthroughThis change updates the default value of the "is_public" column in the "public.thread" table via a SQL migration. It also refactors markdown rendering in several frontend components by centralizing plugin usage within a shared component, removing redundant plugin imports elsewhere, and updating dependencies related to math and markdown processing. Additionally, minor logic adjustments were made in chat-related hooks and prompt processing. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant FrontendComponent
participant MemoizedReactMarkdown
participant ReactMarkdown
participant Plugins
User->>FrontendComponent: View chat/message content
FrontendComponent->>MemoizedReactMarkdown: Render markdown (content)
MemoizedReactMarkdown->>Plugins: Preprocess markdown (GFM, math, KaTeX)
Plugins->>ReactMarkdown: Pass transformed content
ReactMarkdown->>FrontendComponent: Rendered HTML output
Possibly related PRs
Suggested labels
Poem
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Hey @AndlerRL - I've reviewed your changes - here's some feedback:
- In use-chat-attachments, you removed activeThread from the hook’s dependency list—ensure this doesn’t lead to stale attachment data when switching threads.
- MemoizedReactMarkdown is still typed as FC but now only handles string children; refining its props interface to explicitly require string children would improve type safety.
- transformLatexBlocks runs regex replacements on every render—consider memoizing the transformed markdown (e.g. with useMemo) to avoid redundant processing of large inputs.
Here's what I looked at during the review
- 🟡 General issues: 1 issue found
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
There was a problem hiding this comment.
Actionable comments posted: 2
🔭 Outside diff range comments (1)
apps/masterbots.ai/lib/hooks/use-chat-attachments.ts (1)
76-89:⚠️ Potential issueMissing
activeThreadin dependency array may stale attachment list
useAsync()still readsactiveThread?.metadata?.attachments(line 78) butactiveThreadwas removed from the dependency list (line 88).
If the user switches threads, the hook will not re-execute and will continue showing the attachments of the previous thread.-}, [session?.user, mounted, isLoading]) +}, [session?.user, mounted, isLoading, activeThread])Unless this was an intentional optimisation and the value is guaranteed never to change during a session, please add it back or refactor to avoid referencing it inside the async fn.
🧹 Nitpick comments (3)
apps/hasura/migrations/masterbots/1747434920420_alter_table_public_thread_alter_column_is_public/up.sql (1)
1-1: Use unquoted boolean literal for default and verify existing data.Instead of
set default 'false', prefer the boolean literalfalse(without quotes) to match the column’s type exactly. Also, changing the default only affects new rows—ensure there are no existingNULLvalues (or backfill them) if you expect all threads to have a defined visibility.apps/hasura/migrations/masterbots/1747434920420_alter_table_public_thread_alter_column_is_public/down.sql (1)
1-1: Mirror the literal style and confirm rollback behavior.Similar to the up migration, use the unquoted boolean literal
truefor the default in the rollback. Also confirm that reverting the default doesn’t leave unexpectedNULLvalues or violate downstream assumptions.apps/masterbots.ai/components/shared/markdown.tsx (1)
8-18: Transform helper converts inline math to display math
\( … \)is intended for inline equations; replacing it with$$ … $$
switches to display style, which alters layout and may break line flow.
Consider:
- keep
\( … \)as inline ($ ... $) instead of$$ … $$, or- let KaTeX handle the original delimiters (
throwOnError: false).
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
bun.lockis excluded by!**/*.lock
📒 Files selected for processing (11)
apps/hasura/migrations/masterbots/1747434920420_alter_table_public_thread_alter_column_is_public/down.sql(1 hunks)apps/hasura/migrations/masterbots/1747434920420_alter_table_public_thread_alter_column_is_public/up.sql(1 hunks)apps/masterbots.ai/components/routes/browse/browse-chat-message.tsx(0 hunks)apps/masterbots.ai/components/routes/chat/chat-message.tsx(0 hunks)apps/masterbots.ai/components/routes/chat/reasoning/reasoning-chat-message.tsx(0 hunks)apps/masterbots.ai/components/shared/markdown.tsx(1 hunks)apps/masterbots.ai/components/shared/short-message.tsx(0 hunks)apps/masterbots.ai/components/shared/thread-blog-markdown.tsx(0 hunks)apps/masterbots.ai/lib/hooks/use-chat-attachments.ts(1 hunks)apps/masterbots.ai/lib/hooks/use-mb-chat.tsx(0 hunks)apps/masterbots.ai/package.json(1 hunks)
💤 Files with no reviewable changes (6)
- apps/masterbots.ai/components/routes/chat/chat-message.tsx
- apps/masterbots.ai/components/routes/browse/browse-chat-message.tsx
- apps/masterbots.ai/lib/hooks/use-mb-chat.tsx
- apps/masterbots.ai/components/routes/chat/reasoning/reasoning-chat-message.tsx
- apps/masterbots.ai/components/shared/short-message.tsx
- apps/masterbots.ai/components/shared/thread-blog-markdown.tsx
🧰 Additional context used
🧠 Learnings (2)
apps/masterbots.ai/package.json (2)
Learnt from: Bran18
PR: bitcashorg/masterbots#337
File: package.json:32-34
Timestamp: 2025-01-21T16:52:47.056Z
Learning: The markdown rendering in this codebase uses `react-markdown` with `remark-gfm` and `remark-math` plugins for standard markdown and GitHub Flavored Markdown support. Raw HTML parsing through `rehype-raw` is not needed.
Learnt from: AndlerRL
PR: bitcashorg/masterbots#0
File: :0-0
Timestamp: 2025-01-30T21:56:31.907Z
Learning: The react-markdown package version ^9.0.3 and its related dependencies (remark-gfm ^4.0.0, remark-math ^6.0.0) caused component crashes in the markdown rendering components. The packages were downgraded to react-markdown ^8.0.7, remark-gfm ^3.0.1, and remark-math ^5.1.1 to fix the issues.
apps/masterbots.ai/components/shared/markdown.tsx (1)
Learnt from: Bran18
PR: bitcashorg/masterbots#337
File: package.json:32-34
Timestamp: 2025-01-21T16:52:47.056Z
Learning: The markdown rendering in this codebase uses `react-markdown` with `remark-gfm` and `remark-math` plugins for standard markdown and GitHub Flavored Markdown support. Raw HTML parsing through `rehype-raw` is not needed.
🧬 Code Graph Analysis (1)
apps/masterbots.ai/lib/hooks/use-chat-attachments.ts (1)
apps/masterbots.ai/auth.ts (1)
session(174-189)
🔇 Additional comments (1)
apps/masterbots.ai/package.json (1)
79-87:Details
❓ Verification inconclusive
Potential regression: bumped
react-markdownback to v9 & mixed math renderers
- v9+ is pure-ESM. We previously learnt (see long-term note) that upgrading past 8.0.7 crashed several markdown components. Please confirm those issues are no longer reproducible with 9.1.0 under Next 15.
remark-mathis now^6.0.0, butrehype-katex7 still depends onremark-math@^5. Double-check for peer-dependency warnings at install time.- Both
rehype-katexandrehype-mathjaxare listed. Keeping MathJax while moving to KaTeX bloats the bundle (~300 kB). If MathJax is no longer referenced you can safely drop it.- "rehype-mathjax": "^7.1.0", + // remove if unused
🏁 Script executed:
# Check peerDependencies for rehype-katex@7.0.1 to confirm remark-math version requirement npm view rehype-katex@7.0.1 peerDependenciesLength of output: 157
🏁 Script executed:
#!/bin/bash # Fetch peerDependencies for rehype-katex@7.0.1 to confirm remark-math version requirement curl -s https://unpkg.com/rehype-katex@7.0.1/package.json | jq '.peerDependencies'Length of output: 87
Verify React-Markdown v9 under Next.js 15 and adjust math plugins
- Manual runtime check: v9+ of react-markdown is pure ESM and we previously saw crashes on v9.0+ in components (long-term note). Please confirm that upgrading to 9.1.0 no longer causes rendering failures under Next.js 15.
- Peer-dependency check:
rehype-katex@7.0.1does not declare aremark-mathpeer, so you shouldn’t see install-time warnings forremark-math@^6.0.0.- Bundle size: you’re including both KaTeX and MathJax renderers. If you’re no longer using MathJax anywhere, drop it to shave off ~300 kB:
- "rehype-mathjax": "^7.1.0", + // remove if unused
There was a problem hiding this comment.
Actionable comments posted: 3
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
apps/masterbots.ai/lib/constants/prompts.ts(1 hunks)apps/masterbots.ai/lib/hooks/use-mb-chat.tsx(4 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- apps/masterbots.ai/lib/hooks/use-mb-chat.tsx
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (3)
apps/masterbots.ai/app/actions/ai-main-call.actions.ts (1)
344-346: Unnecessaryawaiton a synchronous helper
convertToCoreMessagesis a synchronous function that returnsCoreMessage[].
await-ing a non-Promise value has no runtime benefit and may mislead readers into thinking the helper is asynchronous.- const coreMessages = await convertToCoreMessages( + const coreMessages = convertToCoreMessages(Removing the
awaitkeeps the intent clear and eliminates a micro-overhead.
If you plan to makeconvertToCoreMessagesasynchronous later, consider documenting that intent with a TODO instead.packages/mb-lib/src/jwt/jwt.lib.ts (1)
179-181: Minor: preferconsole.debugoverconsole.login dev logging
console.debug(or a dedicated logger) keeps stdout cleaner while still surfacing the message when needed.apps/masterbots.ai/components/routes/chat/chat-list/message-pairs.tsx (1)
64-70: Avoid mutatinguserMessage.contentdirectlyDirectly altering props (
userMessage.content = ...) can cause subtle React bugs. Derive a local variable instead:- if (userMessage.content.includes(...)) { - userMessage.content = '(continued...)' - } +const userContent = /continued prompt regex/.test(userMessage.content) + ? '(continued...)' + : userMessage.content
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (11)
apps/masterbots.ai/app/actions/ai-main-call.actions.ts(1 hunks)apps/masterbots.ai/components/routes/chat/chat-list/attachment-cards.tsx(1 hunks)apps/masterbots.ai/components/routes/chat/chat-list/message-pairs.tsx(2 hunks)apps/masterbots.ai/components/shared/markdown.tsx(1 hunks)apps/masterbots.ai/lib/constants/prompts.ts(2 hunks)apps/masterbots.ai/lib/helpers/ai-helpers.ts(1 hunks)apps/masterbots.ai/lib/hooks/use-chat-attachments.ts(2 hunks)apps/masterbots.ai/lib/hooks/use-indexed-db.ts(3 hunks)apps/masterbots.ai/lib/hooks/use-mb-chat.tsx(13 hunks)apps/masterbots.ai/next.config.js(1 hunks)packages/mb-lib/src/jwt/jwt.lib.ts(1 hunks)
✅ Files skipped from review due to trivial changes (2)
- apps/masterbots.ai/components/routes/chat/chat-list/attachment-cards.tsx
- apps/masterbots.ai/next.config.js
🚧 Files skipped from review as they are similar to previous changes (4)
- apps/masterbots.ai/lib/hooks/use-chat-attachments.ts
- apps/masterbots.ai/lib/constants/prompts.ts
- apps/masterbots.ai/components/shared/markdown.tsx
- apps/masterbots.ai/lib/hooks/use-mb-chat.tsx
🧰 Additional context used
🧬 Code Graph Analysis (4)
packages/mb-lib/src/jwt/jwt.lib.ts (1)
packages/mb-env/src/config.env.ts (1)
appConfig(2-58)
apps/masterbots.ai/app/actions/ai-main-call.actions.ts (1)
apps/masterbots.ai/lib/helpers/ai-helpers.ts (1)
convertToCoreMessages(116-179)
apps/masterbots.ai/lib/helpers/ai-helpers.ts (1)
packages/mb-drizzle/src/drizzle/schema.ts (1)
message(640-690)
apps/masterbots.ai/components/routes/chat/chat-list/message-pairs.tsx (2)
apps/masterbots.ai/lib/hooks/use-thread.tsx (1)
useThread(37-43)apps/masterbots.ai/lib/hooks/use-chat-attachments.ts (1)
FileAttachment(12-24)
🔇 Additional comments (1)
apps/masterbots.ai/components/routes/chat/chat-list/message-pairs.tsx (1)
95-103: MissingactiveThreadinuseMemodependency array
filteredUserAttachmentsfalls back toactiveThread?.metadata?.attachments, but changes toactiveThreadwon’t re-compute the memo. Add it to the dependency list to avoid stale attachment displays.-], [ +], [ messagesData.previous, userAttachments, + activeThread,
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (2)
apps/masterbots.ai/lib/hooks/use-indexed-db.ts (2)
185-190:⚠️ Potential issueState update may use stale snapshot (same issue raised earlier)
updatedProcessedIdsis built from the capturedprocessedAttachmentIdsvariable.
If another concurrent invocation ofgetAllItems()updates the list first, this write will silently drop the other changes.This is the exact problem flagged in the previous review but not yet addressed.
- setProcessedAttachmentIds(updatedProcessedIds) + setProcessedAttachmentIds(prev => [...prev, ...remoteProcessingIds])
310-315:⚠️ Potential issueSame stale-state pattern reappears
updatedProcessedIdsis again derived from a possibly outdated closure value. Use the functional form here as well.- setProcessedAttachmentIds(updatedProcessedIds) + setProcessedAttachmentIds(prev => [...prev, ...newProcessingIds])
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
apps/masterbots.ai/lib/hooks/use-chat-attachments.ts(2 hunks)apps/masterbots.ai/lib/hooks/use-indexed-db.ts(3 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- apps/masterbots.ai/lib/hooks/use-chat-attachments.ts
* fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
…512) * fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build * fix(impr): continuos thread render, 2nd ai res, ui tweaks (#511) * chore(impr): mb logo wip + threads add order by update at * feat(impr): update thread on message activity + fix order by updated at * fix: thread pop-up default opened accordion * perf(impr): add user promo code track + chatbot disabled flag * fix: 2nd ai concurrent request + continuous thread context & render --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
* fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build * fix(impr): continuos thread render, 2nd ai res, ui tweaks (#511) * chore(impr): mb logo wip + threads add order by update at * feat(impr): update thread on message activity + fix order by updated at * fix: thread pop-up default opened accordion * perf(impr): add user promo code track + chatbot disabled flag * fix: 2nd ai concurrent request + continuous thread context & render * [masterbots.ai] perf(impr): chat opt state mngt and enhance attach metadata sync (#514) * fix: toggle visibility fn state upt * fix: file attach message ids upt * fix: after update guard state * fix: ts typo * fix: thread visibility update permissions * chore(fix): enable image gen to whitelist users --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
…rrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments
* fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
…512) * fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build * fix(impr): continuos thread render, 2nd ai res, ui tweaks (#511) * chore(impr): mb logo wip + threads add order by update at * feat(impr): update thread on message activity + fix order by updated at * fix: thread pop-up default opened accordion * perf(impr): add user promo code track + chatbot disabled flag * fix: 2nd ai concurrent request + continuous thread context & render --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
* fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build * fix(impr): continuos thread render, 2nd ai res, ui tweaks (#511) * chore(impr): mb logo wip + threads add order by update at * feat(impr): update thread on message activity + fix order by updated at * fix: thread pop-up default opened accordion * perf(impr): add user promo code track + chatbot disabled flag * fix: 2nd ai concurrent request + continuous thread context & render * [masterbots.ai] perf(impr): chat opt state mngt and enhance attach metadata sync (#514) * fix: toggle visibility fn state upt * fix: file attach message ids upt * fix: after update guard state * fix: ts typo * fix: thread visibility update permissions * chore(fix): enable image gen to whitelist users --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
…rrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments
* fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
…512) * fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build * fix(impr): continuos thread render, 2nd ai res, ui tweaks (#511) * chore(impr): mb logo wip + threads add order by update at * feat(impr): update thread on message activity + fix order by updated at * fix: thread pop-up default opened accordion * perf(impr): add user promo code track + chatbot disabled flag * fix: 2nd ai concurrent request + continuous thread context & render --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
* fix: change toggler wording + util hook (#424) * impr: makes threads open on profile page and profile tweaks (#421) * update * fix: update * update * update * update * update * fix: opening threads * fix: rm threads dropdwon & added back link to bot page thread view page * fix: rm threads dropdwon & added back link to bot page thread view page * fix: update * fix: added back to profile page * fix: added sticky and color * fix: codeblock ctas refactor markdown rendering, sidebar nav, code block & clipboard hook (#425) * fix: codeblock ctas * fix: ts build * fix: continue thread + allMessages sequence + mobile chat css tweak (#426) * fix: css handleCLick condition * fix: get latest search params, continuous thread * fix(impr): all messages sorting * perf(impr): sign in & up redirection tweak * perf(impr): mobile chat css * chore: next + react security ver upt (#427) * refactor: use chat and continue thread + continue conversation fallback (#432) * refactor: use chat and continue generation * fix: uniq slug and id gen (#433) * fix: uniq thread + msg slug gen * style: formatting * fix: thread user attachments state upt * perf: impr thread component at all pages + mobile tweaks * refactor: thread-component card * chore: restore continue generation v1 * feat(impr): thread component card * fix: admin panel n actions * fix: fetch getThreads * chore: continue conversation v1.2 * chore: continue and update thread content * chore: add ui control continue generation state * chore: fix infinity loop * chore(impr): enable upt msg table permission * fix: seo thread fetch * chore: style formating * fix(impr): continued thread title + thread component reusability * chore: refactor loadings + extending sonners --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add gemini provider (#437) * feat: add gemini provider * chore: update icons * feat: impr continuing thread tags + accordion first msg toggle (#435) * feat(wip): impr continuing thread tags + accordion first msg toggle * feat(impr): continuing thread tags + accordion at first message + header mobile tweak * style(impr): mobile thread-component x-axis space * perf(style): coderabbitai feedbacks * fix: css typo * perf: sendMessageFromResponse clicked guard + continued thread tags label tweak * chore: user thread panel clean up * fix: user-thread-panel infinite loader * perf: impr shared accordion animation and ux * style: defaultAccordionState comments loc * fix: record type warning, hasura updateMessage * fix: getThread user data, shared-accordion * fix: coderabbitai observations * fix: impr file management per llm, multimodel feat flag, chat tool labels, parent thread guard * fix: tunningUserContent parentThread condition * fix: feature flag typo * feat: profile page thread popup feature flag and tweaks (#434) * update * fix: update * update * update * update * update * refactor: profile page threads pop up * fix: update config * fix: update * fix: update * fix: make profile page scroll on hero * fix: bot make popup and scroll * fix: make profile page sidebar scroll independently * fix: make profile page sidebar scroll independently * fix: check the category along the chatbot when it's not checked * fix: check the category along the chatbot when it's not checked --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> Co-authored-by: Roberto Lucas <andler@bitcash.org> * feat: add new llm models (#444) * feat-add-models * feat-add-models * feat-add-models * chore: add model * fix: typo * chore: add toggler color * perf(impr): thread llm context, last question & response + new models seeds (#447) * feat(wip): thread llm context, prev questions * fix: previousQuestionsString slice * fix: clickedContentId in followingQuestionsPrompt * feat: isContinued + model type in message table * fix: ts typo + sendMessageFromResponse callback call * fix: ts typo * fix: bot profile page view (#449) * fix(wip): bot profile thread list * style: formatting * fix: new chats and share + og img (#451) * fix: new chat state reset * fix: genql gen + share link check * fix: og img * fix: duplicate role permission in msg table * feat: initial continuation logic flow (#450) * chore: restore base version * chore: add new logic and hooks * chore: fix providers file * chore: improve continuation prompt * chore: add exlucision flag * chore: add better handler * chore: updated flow + experimental delay * chore: extended time * chore(impr): streamDelayMs experimental feat flag * style: formatting --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * fix: profile sidebar cat opt render (#453) * fix: profile sidebar cat opt render * chore: clean-up * [masterbots.ai] refactor: slug generation logic with improved uniqueness and type support (#456) * fix: slugify fn * chore: devMode logs * fix: uniq slug gen fn nanoid flag typo * feat: sentry logs in webapp (#457) * fix(impr): llm enum data, thread creation, ts, and log behavior (#458) * fix: slugify first request delay incr + genql ts, seeds & model migration upt * fix: create thread & msg ts * fix(impr): profile page bugs & tweaks v1 4/15/25 (#455) * update * fix: update * update * update * update * update * fix: use the user avatar or robohash * fix: added avater to user menu * fix: user avatar * fix: reset search input when filter by category or chatbot * fix: personal chat browse provider + username chk in sign up * chore: clean duplicated if condition signup --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * refactor: continuation flow (#460) * impr: continuation logic flow * impr: continuation logic flow * chore: update createImprovementPrompt * chore: upt logs --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat: models table, enum type, and refactor chat msg deduplication logic (#462) * feat: models table * style: formatting * fix: continuation accordion content * fix: sql + metadata typo * fix: db migrations and messages uniqby condition (#463) * fix: db migrations + messages uniqby condition * fix: typo * perf(impr): verify duplicate message return condition * chore: upt default available models * perf(impr): reassign continued prompt * chore: incr fn stream max duration * fix: mob prof sidebar + sign-up pw verif + username chk (#464) * fix: mob prof sidebar + sign-up pw verif + username chk * chore: upt genql gen * perf(impr): profile navigation * feat: model selector (#466) * wip: model selector query * wip: model selector query * chore: improve funtions * chore: add coderabbit suggestion * chore: add hasura permissions, models table * style: formatting * chore: fix get model client type * chore: add model --------- Co-authored-by: Roberto Romero Lucas <contact@andler.dev> * chore: impr models (#472) * chore: fix model name and condition (#473) * refactor: user fetching code (#471) * refactor: profile sidebar ui, upt styling, and disable prefetch (#470) * chore: remove prefetch on sidebar & profile navigation * perf: impr profile sidebar * fix: infinite scroll load more fetch * perf(impr): google sign-in * perf(impr): session loaders tweak * perf: impr categoriesId obtention * fix: tailwind typo * chore(impr): pro user guard in model selector * chore: category label upt to topic * chore: rm dev mode guard (#476) * feat: add reasoning compatibility (#480) * feat: add resoning stable * chore: add reasoning stable v * chore: activate reasoning * chore: activate reasoning * feat: pro users whitelist (#481) * feat(wip): whitelist pro users * chore: add whitelist pro users + page size fetch * perf(impr): following question impr prompt * fix: pro whitelist users clean up * feat: user account setting (#468) * update * fix: update * update * update * update * update * feat: imple account setting * feat: added dialog to delete button * feat: update user deletion func * fix: move back exmaples files * fix: update * fix: user account scheduling api * fix: user account deletion request function * refactor: account deletion request api * fix: user account request and thread deletion * fix: added permission and account deletion page * fix: update on permission * fix: enable new col permission * fix: profile side bar * fix: update * fix: function rerendering * fix: update route * chore(impr): preferences actions and ui tweaks --------- Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * chore: enable twitter pixel track (#479) * chore: enable twitter pixel track * perf(impr): twitter ads availability + dynamic config * feat: impr profile navigation page (#478) * fix(wip): subscriptions page render * feat(impr): profile navigation + page ui tweaks * style: lintin + formatting * style(css): nav links px on mob * fix: goToProfile in mob prof sidebar * fix: build * fix: thread popup opening at nav * chore: enable preferences nav on prod * feat: image generation (#486) * feat: add image generation support - gemini provider * chore: add mineType * chore: add conditional checks * chore: upt model enums & list * chore: hasura, set icl seeds chunks (#484) * chore: hasura, set icl seeds chunks * chore: track backup icl seed loc to lfs * chore(seeds): uncomment phase 3 topics & add new chatbots + icl metadata rel * chore: upt phase 3 init config seeds, adding rel * fix: example seeds integrity * test: incr hasura max req body * revert: cloudbuild og config * chore: restore skipped seed lines * fix: thread rendering (#487) * fix: thread list render states * chore: linting & format * fix: thread pop-up on refresh * fix: user table selection * fix(impr): type safety for image data and refactor model enums in chat (#489) * fix: image generation flow * chore: impr gemini generation logic * fix: build issue * chore: change subscription page * chore: change subscription page + lint * chore: user pref disable options --------- Co-authored-by: bran18 <andreyfdez18@gmail.com> * fix: add hotfix image generation * chore: add more image models * fix: models_enum values + genql upt * feat: improved subscription section (#491) * feat: add improved subscription section * feat: add type * chore: add conditional dislay * feat: add username tags * chore: add new order and benefits * fix: thread empty state on user profile (#490) * update * fix: update * update * update * update * update * feat: added empty state to user profile page * feat: added empty state to user profile page * fix: update * fix: update * fix: account creation slug issue * chore: restore public models table select permissions + clean up --------- Co-authored-by: Roberto Lucas <andler@bitcash.org> Co-authored-by: Roberto Lucas <andler.dev@gmail.com> * feat(wip): web search v2 (#494) * feat(wip): web search * feat(wip): thread config actions * feat(wip): share cta impr * chore: upt domain slugs list * chore: comment legacy getWebSearchTool * fix: preference insert * wip: user preferences set * fix: typo * fix: updateUser data upt * fix: pref table sel (#496) * fix: og render + tweaks (#492) * fix: og render + tweaks * fix: zIndex in og * perf: impr defaultOgImage chk * chore: bun lock upt * chore: next-auth patch upt * fix: app build by mv uuidregexp loc * fix: drizzle service actions loc + msg slug check + msg uniqueness (#499) * [masterbots.ai] chore: standarize pop-up on profile & bot page for thread display (#500) * update * fix: update * update * update * update * update * fix: added popup to thread view page on user profile(both on page reload) * fix: added popup to thread view page on user profile(both on page reload) * fix: added profile link to thread share * fix: update * fix: chatbot page thread pop-up * fix: update * fix: appendMessage concurrency + getBrowseThreads admin mode chk (#505) * feat: attachment thread metadata (#502) * feat(wip): track thread attch data * chore: upt drizzle & genql schemas * feat(wip): save user attachments on load chk * perf: file upload throughout indexed db hook * feat(wip): gcp bucket setup * feat: enlarge thread attachment * fix: attachment upload loop * fix: gcloud storage + thread metadata check & upload * fix: bucket upload + after upload mutations * feat: store remote thread metadata to indexeddb * fix: read file content instead url * fix(wip): get attachments on chat onFinish * fix: attach new stack of files to chat * [masterbots.ai] fix: og card dimensions and spacing + profile props (#506) * fix: og card dimensions and spacing + profile props * fix: og card dimensions + profile props * perf(impr): rm long usernames + autogen num + form input control * perf: dynamic short username number gen * chore(impr): update default thread publicity flag + attachments concurrency & render (#508) * chore(impr): update default thread publicity flag * fix: default thread publicity * fix: ai generated formulas * fix: eslint rule, display name in markdown * fix: eslint rule, display name in markdown * fix: following questions prompt + isNewThread guard * fix: attachments render && concurrency + optimistic activeThread updates * fix: build * perf(impr): earlier downloadedAttachments array upt * chore(impr): clean remote processed ids, indexeddb attachments * fix: user should be able to delete threads (#507) * update * fix: update * update * update * update * update * fix: user can delete thread * fix: delete thread messages * fix: update * fix: obs update * chore: file clean up --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * [masterbots.ai] feat: image generation support (#504) * feat: add support to image generation * feat: add GPT-image-1 support route * feat: fix biome lint * feat: add edit mode * chore: enable img gen feature flag * style: format n lint --------- Co-authored-by: Roberto 'Andler' Lucas <contact@andler.dev> * fix: bun lock * fix: ts build * fix(impr): continuos thread render, 2nd ai res, ui tweaks (#511) * chore(impr): mb logo wip + threads add order by update at * feat(impr): update thread on message activity + fix order by updated at * fix: thread pop-up default opened accordion * perf(impr): add user promo code track + chatbot disabled flag * fix: 2nd ai concurrent request + continuous thread context & render * [masterbots.ai] perf(impr): chat opt state mngt and enhance attach metadata sync (#514) * fix: toggle visibility fn state upt * fix: file attach message ids upt * fix: after update guard state * fix: ts typo * fix: thread visibility update permissions * chore(fix): enable image gen to whitelist users --------- Co-authored-by: Brandon Fernández <31634868+Bran18@users.noreply.github.com> Co-authored-by: Jimoh sherifdeen <63134009+sheriffjimoh@users.noreply.github.com> Co-authored-by: bran18 <andreyfdez18@gmail.com> Co-authored-by: Brandon fernandez <brandonfernandez@Brandons-Mac-mini.local>
Summary by Sourcery
Implement KaTeX-based math rendering in markdown components, centralize and simplify markdown plugin usage, streamline hook dependencies, and update the default thread publicity flag through database migrations
New Features:
Enhancements:
Build:
Deployment:
Summary by CodeRabbit
New Features
Bug Fixes
Refactor
Chores
Style