@chrryai/chrry 1.4.82 → 1.4.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -932,6 +932,10 @@ declare const PDF_LIMITS: {
932
932
  increment: number;
933
933
  max: number;
934
934
  };
935
+ declare const MAX_FILE_LIMITS: {
936
+ artifacts: number;
937
+ chat: number;
938
+ };
935
939
  declare const MAX_FILE_SIZES: {
936
940
  deepSeek: {
937
941
  pdf: number;
@@ -1737,4 +1741,4 @@ interface HistoryRouterProviderProps {
1737
1741
  */
1738
1742
  declare function HistoryRouterProvider({ children, }: HistoryRouterProviderProps): React.ReactElement;
1739
1743
 
1740
- export { ADDITIONAL_CREDITS, API_URL, type AgentCapabilities, type AgentModel, type AiAgent, type AiAgentCapabilities, type ApiActions, BrowserInstance, CHRRY_URL, CREDITS_PRICE, type CalendarEventFormData, type CreateCustomAiAgent, FREE_DAYS, FRONTEND_URL, type FileValidationResult, GUEST_TASKS_COUNT, HistoryRouterProvider, MAX_FILE_SIZES, MAX_TOOL_CALLS_PER_MESSAGE, MEMBER_TASKS_COUNT, OWNER_CREDITS, PDF_LIMITS, PLUS_PRICE, PLUS_TASKS_COUNT, PROD_FRONTEND_URL, PROMPT_LIMITS, PRO_PRICE, Sidebar, Store, VERSION, WS_URL, addParam, aiAgentCapabilitiesSchema, aiAgentSchema, apiFetch, type appFormData, appSchema, budgetCategory, capitalizeFirstLetter, checkIsExtension, checkThreadSummaryLimit, createApp, createCalendarEvent, createCustomAiAgentSchema, deleteApp, deleteCalendarEvent, deleteMemories, deleteMessage, deleteSubscription, exampleInstructions, expenseCategory, type expenseCategoryType, exportToGoogleCalendar, extensionSuggestions, formatFileSize, generateAppMetadata, generateStoreMetadata, getActions, getApps, getBrowserAPI, getBrowserIdentity, getCalendarEvents, getDailyImageLimit, getExampleInstructions, getExtensionUrl, getExtensionUrls, getFlag, getGuest, getHourlyLimit, getImageSrc, getInstructionConfig, getLastMessage, getMaxFileSize, getMetadata, getRedirectURL, getSession, getSlugFromPathname, getThread, getThreadId, getThreads, getTranslations, getUser, getUsers, getWeatherCacheTime, type instructionBase, isCI, isCollaborator, isDeepEqual, isDevelopment, isE2E, isFirefox, isOwner, isProduction, isSameDay, isTestingDevice, isTextFile, isValidUsername, isValidUuidV4, pageSizes, removeParam, removeUser, reorderApps, replaceLinks, storage, syncGoogleCalendar, updateApp, updateCalendarEvent, updateCollaboration, updateGuest, updateMessage, updateThread, updateUser, uploadUserImage, useAppMetadata, useCookieOrLocalStorage, useCountdown, useDeviceInfo, useHasHydrated, useLocalStorage, usePWAInstall, useStoreMetadata, useThreadMetadata, utcToday, validateFile };
1744
+ export { ADDITIONAL_CREDITS, API_URL, type AgentCapabilities, type AgentModel, type AiAgent, type AiAgentCapabilities, type ApiActions, BrowserInstance, CHRRY_URL, CREDITS_PRICE, type CalendarEventFormData, type CreateCustomAiAgent, FREE_DAYS, FRONTEND_URL, type FileValidationResult, GUEST_TASKS_COUNT, HistoryRouterProvider, MAX_FILE_LIMITS, MAX_FILE_SIZES, MAX_TOOL_CALLS_PER_MESSAGE, MEMBER_TASKS_COUNT, OWNER_CREDITS, PDF_LIMITS, PLUS_PRICE, PLUS_TASKS_COUNT, PROD_FRONTEND_URL, PROMPT_LIMITS, PRO_PRICE, Sidebar, Store, VERSION, WS_URL, addParam, aiAgentCapabilitiesSchema, aiAgentSchema, apiFetch, type appFormData, appSchema, budgetCategory, capitalizeFirstLetter, checkIsExtension, checkThreadSummaryLimit, createApp, createCalendarEvent, createCustomAiAgentSchema, deleteApp, deleteCalendarEvent, deleteMemories, deleteMessage, deleteSubscription, exampleInstructions, expenseCategory, type expenseCategoryType, exportToGoogleCalendar, extensionSuggestions, formatFileSize, generateAppMetadata, generateStoreMetadata, getActions, getApps, getBrowserAPI, getBrowserIdentity, getCalendarEvents, getDailyImageLimit, getExampleInstructions, getExtensionUrl, getExtensionUrls, getFlag, getGuest, getHourlyLimit, getImageSrc, getInstructionConfig, getLastMessage, getMaxFileSize, getMetadata, getRedirectURL, getSession, getSlugFromPathname, getThread, getThreadId, getThreads, getTranslations, getUser, getUsers, getWeatherCacheTime, type instructionBase, isCI, isCollaborator, isDeepEqual, isDevelopment, isE2E, isFirefox, isOwner, isProduction, isSameDay, isTestingDevice, isTextFile, isValidUsername, isValidUuidV4, pageSizes, removeParam, removeUser, reorderApps, replaceLinks, storage, syncGoogleCalendar, updateApp, updateCalendarEvent, updateCollaboration, updateGuest, updateMessage, updateThread, updateUser, uploadUserImage, useAppMetadata, useCookieOrLocalStorage, useCountdown, useDeviceInfo, useHasHydrated, useLocalStorage, usePWAInstall, useStoreMetadata, useThreadMetadata, utcToday, validateFile };
package/dist/index.d.ts CHANGED
@@ -932,6 +932,10 @@ declare const PDF_LIMITS: {
932
932
  increment: number;
933
933
  max: number;
934
934
  };
935
+ declare const MAX_FILE_LIMITS: {
936
+ artifacts: number;
937
+ chat: number;
938
+ };
935
939
  declare const MAX_FILE_SIZES: {
936
940
  deepSeek: {
937
941
  pdf: number;
@@ -1737,4 +1741,4 @@ interface HistoryRouterProviderProps {
1737
1741
  */
1738
1742
  declare function HistoryRouterProvider({ children, }: HistoryRouterProviderProps): React.ReactElement;
1739
1743
 
1740
- export { ADDITIONAL_CREDITS, API_URL, type AgentCapabilities, type AgentModel, type AiAgent, type AiAgentCapabilities, type ApiActions, BrowserInstance, CHRRY_URL, CREDITS_PRICE, type CalendarEventFormData, type CreateCustomAiAgent, FREE_DAYS, FRONTEND_URL, type FileValidationResult, GUEST_TASKS_COUNT, HistoryRouterProvider, MAX_FILE_SIZES, MAX_TOOL_CALLS_PER_MESSAGE, MEMBER_TASKS_COUNT, OWNER_CREDITS, PDF_LIMITS, PLUS_PRICE, PLUS_TASKS_COUNT, PROD_FRONTEND_URL, PROMPT_LIMITS, PRO_PRICE, Sidebar, Store, VERSION, WS_URL, addParam, aiAgentCapabilitiesSchema, aiAgentSchema, apiFetch, type appFormData, appSchema, budgetCategory, capitalizeFirstLetter, checkIsExtension, checkThreadSummaryLimit, createApp, createCalendarEvent, createCustomAiAgentSchema, deleteApp, deleteCalendarEvent, deleteMemories, deleteMessage, deleteSubscription, exampleInstructions, expenseCategory, type expenseCategoryType, exportToGoogleCalendar, extensionSuggestions, formatFileSize, generateAppMetadata, generateStoreMetadata, getActions, getApps, getBrowserAPI, getBrowserIdentity, getCalendarEvents, getDailyImageLimit, getExampleInstructions, getExtensionUrl, getExtensionUrls, getFlag, getGuest, getHourlyLimit, getImageSrc, getInstructionConfig, getLastMessage, getMaxFileSize, getMetadata, getRedirectURL, getSession, getSlugFromPathname, getThread, getThreadId, getThreads, getTranslations, getUser, getUsers, getWeatherCacheTime, type instructionBase, isCI, isCollaborator, isDeepEqual, isDevelopment, isE2E, isFirefox, isOwner, isProduction, isSameDay, isTestingDevice, isTextFile, isValidUsername, isValidUuidV4, pageSizes, removeParam, removeUser, reorderApps, replaceLinks, storage, syncGoogleCalendar, updateApp, updateCalendarEvent, updateCollaboration, updateGuest, updateMessage, updateThread, updateUser, uploadUserImage, useAppMetadata, useCookieOrLocalStorage, useCountdown, useDeviceInfo, useHasHydrated, useLocalStorage, usePWAInstall, useStoreMetadata, useThreadMetadata, utcToday, validateFile };
1744
+ export { ADDITIONAL_CREDITS, API_URL, type AgentCapabilities, type AgentModel, type AiAgent, type AiAgentCapabilities, type ApiActions, BrowserInstance, CHRRY_URL, CREDITS_PRICE, type CalendarEventFormData, type CreateCustomAiAgent, FREE_DAYS, FRONTEND_URL, type FileValidationResult, GUEST_TASKS_COUNT, HistoryRouterProvider, MAX_FILE_LIMITS, MAX_FILE_SIZES, MAX_TOOL_CALLS_PER_MESSAGE, MEMBER_TASKS_COUNT, OWNER_CREDITS, PDF_LIMITS, PLUS_PRICE, PLUS_TASKS_COUNT, PROD_FRONTEND_URL, PROMPT_LIMITS, PRO_PRICE, Sidebar, Store, VERSION, WS_URL, addParam, aiAgentCapabilitiesSchema, aiAgentSchema, apiFetch, type appFormData, appSchema, budgetCategory, capitalizeFirstLetter, checkIsExtension, checkThreadSummaryLimit, createApp, createCalendarEvent, createCustomAiAgentSchema, deleteApp, deleteCalendarEvent, deleteMemories, deleteMessage, deleteSubscription, exampleInstructions, expenseCategory, type expenseCategoryType, exportToGoogleCalendar, extensionSuggestions, formatFileSize, generateAppMetadata, generateStoreMetadata, getActions, getApps, getBrowserAPI, getBrowserIdentity, getCalendarEvents, getDailyImageLimit, getExampleInstructions, getExtensionUrl, getExtensionUrls, getFlag, getGuest, getHourlyLimit, getImageSrc, getInstructionConfig, getLastMessage, getMaxFileSize, getMetadata, getRedirectURL, getSession, getSlugFromPathname, getThread, getThreadId, getThreads, getTranslations, getUser, getUsers, getWeatherCacheTime, type instructionBase, isCI, isCollaborator, isDeepEqual, isDevelopment, isE2E, isFirefox, isOwner, isProduction, isSameDay, isTestingDevice, isTextFile, isValidUsername, isValidUuidV4, pageSizes, removeParam, removeUser, reorderApps, replaceLinks, storage, syncGoogleCalendar, updateApp, updateCalendarEvent, updateCollaboration, updateGuest, updateMessage, updateThread, updateUser, uploadUserImage, useAppMetadata, useCookieOrLocalStorage, useCountdown, useDeviceInfo, useHasHydrated, useLocalStorage, usePWAInstall, useStoreMetadata, useThreadMetadata, utcToday, validateFile };
package/dist/index.js CHANGED
@@ -1669,7 +1669,7 @@ function checkThreadSummaryLimit({
1669
1669
  function isValidUsername(username) {
1670
1670
  return /^[a-zA-Z0-9]{3,20}$/.test(username);
1671
1671
  }
1672
- var import_i18n_iso_countries, isSameDay, GUEST_TASKS_COUNT, MEMBER_TASKS_COUNT, PLUS_TASKS_COUNT, getClientHostname, hostname, CHRRY_URL, FREE_DAYS, PLUS_PRICE, PRO_PRICE, CREDITS_PRICE, ADDITIONAL_CREDITS, MAX_TOOL_CALLS_PER_MESSAGE, WS_URL, addParam, FE_PORT, API_PORT, FRONTEND_URL, PROD_FRONTEND_URL, API_URL, apiFetch, PROMPT_LIMITS, expenseCategory, budgetCategory, isCI, isE2E, extensionSuggestions, storage, pageSizes, now, utcToday, getExtensionUrls, getBrowserAPI, BrowserInstance, getMetadata, removeParam, isFirefox, config, VERSION, getSlugFromPathname, getInstructionConfig, getBrowserIdentity, THREAD_SUMMARY_LIMITS, getRedirectURL, getDailyImageLimit, isCollaborator, PDF_LIMITS, MAX_FILE_SIZES, OWNER_CREDITS, isDeepEqual;
1672
+ var import_i18n_iso_countries, isSameDay, GUEST_TASKS_COUNT, MEMBER_TASKS_COUNT, PLUS_TASKS_COUNT, getClientHostname, hostname, CHRRY_URL, FREE_DAYS, PLUS_PRICE, PRO_PRICE, CREDITS_PRICE, ADDITIONAL_CREDITS, MAX_TOOL_CALLS_PER_MESSAGE, WS_URL, addParam, FE_PORT, API_PORT, FRONTEND_URL, PROD_FRONTEND_URL, API_URL, apiFetch, PROMPT_LIMITS, expenseCategory, budgetCategory, isCI, isE2E, extensionSuggestions, storage, pageSizes, now, utcToday, getExtensionUrls, getBrowserAPI, BrowserInstance, getMetadata, removeParam, isFirefox, config, VERSION, getSlugFromPathname, getInstructionConfig, getBrowserIdentity, THREAD_SUMMARY_LIMITS, getRedirectURL, getDailyImageLimit, isCollaborator, PDF_LIMITS, MAX_FILE_LIMITS, MAX_FILE_SIZES, OWNER_CREDITS, isDeepEqual;
1673
1673
  var init_utils = __esm({
1674
1674
  "utils/index.ts"() {
1675
1675
  "use strict";
@@ -1901,7 +1901,7 @@ var init_utils = __esm({
1901
1901
  };
1902
1902
  isFirefox = typeof navigator !== "undefined" && navigator?.userAgent?.includes("Firefox");
1903
1903
  config = getSiteConfig(getClientHostname());
1904
- VERSION = config.version || "1.4.82";
1904
+ VERSION = config.version || "1.4.84";
1905
1905
  getSlugFromPathname = (path) => {
1906
1906
  return getAppAndStoreSlugs(path, {
1907
1907
  defaultAppSlug: config.slug,
@@ -1996,6 +1996,10 @@ var init_utils = __esm({
1996
1996
  max: 2 * 1024 * 1024
1997
1997
  // Absolute max 2MB
1998
1998
  };
1999
+ MAX_FILE_LIMITS = {
2000
+ artifacts: 10,
2001
+ chat: 5
2002
+ };
1999
2003
  MAX_FILE_SIZES = {
2000
2004
  deepSeek: {
2001
2005
  pdf: 22 * 1024 * 1024,
@@ -24063,7 +24067,7 @@ function DataProvider({ children, ...rest }) {
24063
24067
  const [instructions, setInstructions] = (0, import_react21.useState)([]);
24064
24068
  const [affiliateStats, setAffiliateStats] = (0, import_react21.useState)(null);
24065
24069
  const [loadingAffiliateStats, setLoadingAffiliateStats] = (0, import_react21.useState)(false);
24066
- const VERSION4 = "1.4.82";
24070
+ const VERSION4 = "1.4.84";
24067
24071
  const [weather, setWeather] = useLocalStorage2("weather", user?.weather || guest?.weather || void 0);
24068
24072
  const {
24069
24073
  API_URL: API_URL2,
@@ -34653,20 +34657,20 @@ function Instructions({
34653
34657
  })), /* @__PURE__ */ import_react54.default.createElement(Div, { style: styles4.actions.style }, /* @__PURE__ */ import_react54.default.createElement(Div, { style: styles4.fileUploader.style }, /* @__PURE__ */ import_react54.default.createElement(import_react54.default.Fragment, null, /* @__PURE__ */ import_react54.default.createElement(
34654
34658
  Button,
34655
34659
  {
34656
- className: "link",
34660
+ className: "transparent",
34657
34661
  "data-testid": `${dataTestId}-artifacts-back-button`,
34658
34662
  onClick: () => {
34659
34663
  addHapticFeedback();
34660
34664
  setIsArtifactsOpen(false);
34661
34665
  setIsOpen(true);
34662
34666
  },
34663
- style: { ...utilities.link.style }
34667
+ style: { ...utilities.transparent.style }
34664
34668
  },
34665
34669
  /* @__PURE__ */ import_react54.default.createElement(icons_exports.ArrowLeft, { size: 16 })
34666
34670
  ), /* @__PURE__ */ import_react54.default.createElement(
34667
34671
  Button,
34668
34672
  {
34669
- className: "link",
34673
+ className: "transparent",
34670
34674
  "data-testid": `${dataTestId}-artifacts-paste-button`,
34671
34675
  onClick: async () => {
34672
34676
  addHapticFeedback();
@@ -34693,19 +34697,19 @@ function Instructions({
34693
34697
  );
34694
34698
  }
34695
34699
  },
34696
- style: { ...utilities.link.style }
34700
+ style: { ...utilities.transparent.style }
34697
34701
  },
34698
34702
  /* @__PURE__ */ import_react54.default.createElement(icons_exports.Copy, { size: 16 }),
34699
34703
  t6("Paste")
34700
34704
  ), /* @__PURE__ */ import_react54.default.createElement(
34701
34705
  Button,
34702
34706
  {
34703
- className: "link",
34707
+ className: "transparent",
34704
34708
  "data-testid": `${dataTestId}-artifacts-upload-button`,
34705
34709
  onClick: () => triggerFileInput(
34706
34710
  "image/*,video/*,audio/*,.pdf,.txt,.md,.json,.csv,.xml,.html,.css,.js,.ts,.tsx,.jsx,.py,.java,.c,.cpp,.h,.hpp,.cs,.php,.rb,.go,.rs,.swift,.kt,.scala,.sh,.yaml,.yml,.toml,.ini,.conf,.log"
34707
34711
  ),
34708
- style: { ...utilities.link.style }
34712
+ style: { ...utilities.transparent.style }
34709
34713
  },
34710
34714
  /* @__PURE__ */ import_react54.default.createElement(icons_exports.FileUp, { size: 16 }),
34711
34715
  t6("Upload")
@@ -37843,6 +37847,7 @@ Return ONLY ONE WORD: ${apps.map((a) => a.name).join(", ")}, or "none"`;
37843
37847
  setIsPrivacyApproved(true);
37844
37848
  }
37845
37849
  addHapticFeedback();
37850
+ clearFiles();
37846
37851
  if (!selectedAgent?.capabilities?.image && files.some((file) => file.type.startsWith("image/"))) {
37847
37852
  setIsAgentModalOpen(true);
37848
37853
  return;
@@ -38008,7 +38013,6 @@ Return ONLY ONE WORD: ${apps.map((a) => a.name).join(", ")}, or "none"`;
38008
38013
  if (collaborationStep === 2) {
38009
38014
  setCollaborationStep(3);
38010
38015
  }
38011
- clearFiles();
38012
38016
  onMessage?.({
38013
38017
  content: userMessageText,
38014
38018
  isUser: true,
@@ -39920,7 +39924,7 @@ var init_Chat = __esm({
39920
39924
  init_Chat_styles();
39921
39925
  init_StylesContext();
39922
39926
  init_A();
39923
- MAX_FILES = 3;
39927
+ MAX_FILES = MAX_FILE_LIMITS.chat;
39924
39928
  }
39925
39929
  });
39926
39930
 
@@ -45712,6 +45716,7 @@ function Message({
45712
45716
  data.message?.message.images?.length && setImages(data.message?.message.images);
45713
45717
  data.message?.message.video?.length && setVideo(data.message?.message.video);
45714
45718
  data.message?.message.audio?.length && setAudio(data.message?.message.audio);
45719
+ data.message?.message.files?.length && setFiles(data.message?.message.files);
45715
45720
  await refetchThread();
45716
45721
  }
45717
45722
  if (message2?.message?.id && message2?.message?.id !== data?.message?.message?.clientId)
@@ -49819,7 +49824,7 @@ var init_Thread = __esm({
49819
49824
  // paddingBottom: 195,
49820
49825
  // paddingLeft: isMobileDevice ? 0 : 10,
49821
49826
  ...styles4.thread.style,
49822
- ...isEmpty && hasHydrated && styles4.threadEmpty.style,
49827
+ ...isEmpty && !threadId && hasHydrated && styles4.threadEmpty.style,
49823
49828
  ...{
49824
49829
  maxWidth: isSmallDevice ? BREAKPOINTS.tablet : BREAKPOINTS.desktop
49825
49830
  }
@@ -49894,7 +49899,7 @@ var init_Thread = __esm({
49894
49899
  onToggleLike: (liked2) => {
49895
49900
  refetch();
49896
49901
  },
49897
- emptyMessage: liked && messages2.length === 0 ? t6("No more liked messages") : void 0,
49902
+ emptyMessage: liked && messages2.length === 0 ? t6("Nothing here yet") : void 0,
49898
49903
  showEmptyState: !!thread2,
49899
49904
  onDelete: async ({ id: id2 }) => {
49900
49905
  if (messages2.length === 1) {
@@ -81392,6 +81397,7 @@ __export(index_exports, {
81392
81397
  FRONTEND_URL: () => FRONTEND_URL,
81393
81398
  GUEST_TASKS_COUNT: () => GUEST_TASKS_COUNT,
81394
81399
  HistoryRouterProvider: () => HistoryRouterProvider,
81400
+ MAX_FILE_LIMITS: () => MAX_FILE_LIMITS,
81395
81401
  MAX_FILE_SIZES: () => MAX_FILE_SIZES,
81396
81402
  MAX_TOOL_CALLS_PER_MESSAGE: () => MAX_TOOL_CALLS_PER_MESSAGE,
81397
81403
  MEMBER_TASKS_COUNT: () => MEMBER_TASKS_COUNT,
@@ -81579,6 +81585,7 @@ function HistoryRouterProvider({
81579
81585
  FRONTEND_URL,
81580
81586
  GUEST_TASKS_COUNT,
81581
81587
  HistoryRouterProvider,
81588
+ MAX_FILE_LIMITS,
81582
81589
  MAX_FILE_SIZES,
81583
81590
  MAX_TOOL_CALLS_PER_MESSAGE,
81584
81591
  MEMBER_TASKS_COUNT,