@chrryai/chrry 1.3.11 → 1.3.12

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
@@ -448,7 +448,7 @@ type app = {
448
448
  guestId: string | null;
449
449
  mainThreadId: string | null;
450
450
  teamId: string | null;
451
- tools: ("calendar" | "location" | "weather")[] | null;
451
+ tools: ("calendar" | "location" | "weather" | "focus")[] | null;
452
452
  name: string;
453
453
  subtitle: string | null;
454
454
  title: string;
@@ -801,7 +801,7 @@ declare const isFirefox: boolean;
801
801
  declare function getFlag({ code }: {
802
802
  code?: string;
803
803
  }): string;
804
- declare const VERSION = "1.3.11";
804
+ declare const VERSION = "1.3.12";
805
805
  type instructionBase = {
806
806
  id: string;
807
807
  title: string;
@@ -1096,6 +1096,7 @@ declare const appSchema: z.ZodObject<{
1096
1096
  calendar: "calendar";
1097
1097
  location: "location";
1098
1098
  weather: "weather";
1099
+ focus: "focus";
1099
1100
  }>, z.ZodUUID]>>>;
1100
1101
  capabilities: z.ZodOptional<z.ZodObject<{
1101
1102
  text: z.ZodBoolean;
package/dist/index.d.ts CHANGED
@@ -448,7 +448,7 @@ type app = {
448
448
  guestId: string | null;
449
449
  mainThreadId: string | null;
450
450
  teamId: string | null;
451
- tools: ("calendar" | "location" | "weather")[] | null;
451
+ tools: ("calendar" | "location" | "weather" | "focus")[] | null;
452
452
  name: string;
453
453
  subtitle: string | null;
454
454
  title: string;
@@ -801,7 +801,7 @@ declare const isFirefox: boolean;
801
801
  declare function getFlag({ code }: {
802
802
  code?: string;
803
803
  }): string;
804
- declare const VERSION = "1.3.11";
804
+ declare const VERSION = "1.3.12";
805
805
  type instructionBase = {
806
806
  id: string;
807
807
  title: string;
@@ -1096,6 +1096,7 @@ declare const appSchema: z.ZodObject<{
1096
1096
  calendar: "calendar";
1097
1097
  location: "location";
1098
1098
  weather: "weather";
1099
+ focus: "focus";
1099
1100
  }>, z.ZodUUID]>>>;
1100
1101
  capabilities: z.ZodOptional<z.ZodObject<{
1101
1102
  text: z.ZodBoolean;
package/dist/index.js CHANGED
@@ -21427,7 +21427,7 @@ function DataProvider({
21427
21427
  const [instructions, setInstructions] = (0, import_react14.useState)([]);
21428
21428
  const [affiliateStats, setAffiliateStats] = (0, import_react14.useState)(null);
21429
21429
  const [loadingAffiliateStats, setLoadingAffiliateStats] = (0, import_react14.useState)(false);
21430
- const VERSION3 = "1.3.11";
21430
+ const VERSION3 = "1.3.12";
21431
21431
  const [weather, setWeather] = useLocalStorage("weather", user?.weather || guest?.weather || void 0);
21432
21432
  const {
21433
21433
  API_URL: API_URL2,
@@ -22520,7 +22520,7 @@ var init_utils = __esm({
22520
22520
  window.history.replaceState({}, "", newUrl);
22521
22521
  };
22522
22522
  isFirefox = typeof navigator !== "undefined" && navigator?.userAgent.includes("Firefox");
22523
- VERSION = "1.3.11";
22523
+ VERSION = "1.3.12";
22524
22524
  getSlugFromPathname = (path) => {
22525
22525
  const siteConfig = getSiteConfig();
22526
22526
  return getAppAndStoreSlugs(path, {
@@ -23011,7 +23011,7 @@ var init_appSchema = __esm({
23011
23011
  temperature: import_zod2.z.number().min(0, "Temperature must be 0-2").max(2, "Temperature must be 0-2").optional(),
23012
23012
  tools: import_zod2.z.array(
23013
23013
  import_zod2.z.union([
23014
- import_zod2.z.enum(["calendar", "location", "weather"]),
23014
+ import_zod2.z.enum(["calendar", "location", "weather", "focus"]),
23015
23015
  import_zod2.z.uuid("Invalid tool ID")
23016
23016
  ])
23017
23017
  ).optional(),
@@ -29002,6 +29002,9 @@ function Agent({
29002
29002
  const weatherRequiredApp = apps.find(
29003
29003
  (app2) => appForm?.watch("extends")?.includes(app2.name) && app2.tools?.includes("weather")
29004
29004
  );
29005
+ const focusRequiredApp = apps.find(
29006
+ (app2) => appForm?.watch("extends")?.includes(app2.name) && app2.tools?.includes("focus")
29007
+ );
29005
29008
  const aiAgent = aiAgents?.find(
29006
29009
  (a) => a.name.toLowerCase() === appForm?.watch("defaultModel")?.toLowerCase()
29007
29010
  );
@@ -29059,6 +29062,9 @@ function Agent({
29059
29062
  if (calendarRequiredApp) {
29060
29063
  requiredTools.add("calendar");
29061
29064
  }
29065
+ if (focusRequiredApp) {
29066
+ requiredTools.add("focus");
29067
+ }
29062
29068
  const newTools = Array.from(requiredTools);
29063
29069
  if (JSON.stringify(currentTools.sort()) !== JSON.stringify(newTools.sort())) {
29064
29070
  appForm?.setValue("tools", newTools);
@@ -29069,7 +29075,8 @@ function Agent({
29069
29075
  isWeatherRequired,
29070
29076
  calendarRequiredApp,
29071
29077
  locationRequiredApp,
29072
- weatherRequiredApp
29078
+ weatherRequiredApp,
29079
+ focusRequiredApp
29073
29080
  ]);
29074
29081
  const [tab, setTabInternal] = (0, import_react45.useState)(
29075
29082
  searchParams.get("tab") || void 0
@@ -29720,6 +29727,42 @@ function Agent({
29720
29727
  )
29721
29728
  ))
29722
29729
  }
29730
+ ), /* @__PURE__ */ import_react45.default.createElement(
29731
+ import_react_hook_form2.Controller,
29732
+ {
29733
+ name: "tools",
29734
+ control,
29735
+ render: ({ field }) => /* @__PURE__ */ import_react45.default.createElement(import_react45.default.Fragment, null, /* @__PURE__ */ import_react45.default.createElement(
29736
+ "label",
29737
+ {
29738
+ className: import_Agent_module.default.checkboxLabel,
29739
+ onClick: (e) => {
29740
+ if (focusRequiredApp) {
29741
+ e.preventDefault();
29742
+ import_react_hot_toast6.default.error(
29743
+ t6(
29744
+ "Focus required because you are using {{app}}",
29745
+ { app: focusRequiredApp.name }
29746
+ )
29747
+ );
29748
+ }
29749
+ }
29750
+ },
29751
+ /* @__PURE__ */ import_react45.default.createElement(
29752
+ Checkbox_default,
29753
+ {
29754
+ checked: field.value?.includes("focus") || false,
29755
+ disabled: !!focusRequiredApp,
29756
+ onChange: (e) => {
29757
+ const newValue = e.target.checked ? [...field.value || [], "focus"] : field.value?.filter((t7) => t7 !== "focus");
29758
+ field.onChange(newValue);
29759
+ }
29760
+ },
29761
+ "\u{1F3AF} ",
29762
+ t6("Focus")
29763
+ )
29764
+ ))
29765
+ }
29723
29766
  )))), tab === "systemPrompt" && /* @__PURE__ */ import_react45.default.createElement("div", { className: import_Agent_module.default.field }, /* @__PURE__ */ import_react45.default.createElement(
29724
29767
  "textarea",
29725
29768
  {
@@ -39303,7 +39346,6 @@ function Skeleton({
39303
39346
  Anchor,
39304
39347
  {
39305
39348
  href: `/blossom`,
39306
- openInNewTab: true,
39307
39349
  style: {
39308
39350
  ...utilities.button.style,
39309
39351
  ...utilities.transparent.style,