@chrryai/chrry 1.4.53 → 1.4.55

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/App.module.scss CHANGED
@@ -34,10 +34,6 @@
34
34
  padding: 0 toRem.toRem(10);
35
35
  }
36
36
 
37
- .focus {
38
- position: relative;
39
- }
40
-
41
37
  .focusTime {
42
38
  position: absolute;
43
39
  top: toRem.toRem(-5);
@@ -64,13 +60,12 @@
64
60
  }
65
61
 
66
62
  .spaceInvader,
67
- .atlas,
68
- .focus {
63
+ .atlas {
69
64
  position: relative;
70
65
  margin-left: toRem.toRem(10);
71
66
 
72
67
  &.focus {
73
- right: toRem.toRem(-3.5);
68
+ right: toRem.toRem(0);
74
69
  }
75
70
  &.spaceInvader {
76
71
  animation: float 2.5s ease-in-out forwards;
@@ -78,6 +73,11 @@
78
73
  }
79
74
  }
80
75
 
76
+ .focus {
77
+ position: relative;
78
+ margin-left: toRem.toRem(5);
79
+ }
80
+
81
81
  .atlas {
82
82
  position: relative;
83
83
  margin-left: toRem.toRem(10);
@@ -27,3 +27,7 @@
27
27
  .characterProfileButton {
28
28
  animation: pulse 1s ease-in-out;
29
29
  }
30
+
31
+ .characterProfile {
32
+ margin: 0;
33
+ }
package/dist/index.js CHANGED
@@ -1899,7 +1899,7 @@ var init_utils = __esm({
1899
1899
  };
1900
1900
  isFirefox = typeof navigator !== "undefined" && navigator?.userAgent?.includes("Firefox");
1901
1901
  config = getSiteConfig(getClientHostname());
1902
- VERSION = config.version || "1.4.53";
1902
+ VERSION = config.version || "1.4.55";
1903
1903
  getSlugFromPathname = (path) => {
1904
1904
  return getAppAndStoreSlugs(path, {
1905
1905
  defaultAppSlug: config.slug,
@@ -24079,7 +24079,7 @@ function DataProvider({ children, ...rest }) {
24079
24079
  const [instructions, setInstructions] = (0, import_react20.useState)([]);
24080
24080
  const [affiliateStats, setAffiliateStats] = (0, import_react20.useState)(null);
24081
24081
  const [loadingAffiliateStats, setLoadingAffiliateStats] = (0, import_react20.useState)(false);
24082
- const VERSION4 = "1.4.53";
24082
+ const VERSION4 = "1.4.55";
24083
24083
  const [weather, setWeather] = useLocalStorage2("weather", user?.weather || guest?.weather || void 0);
24084
24084
  const {
24085
24085
  API_URL: API_URL2,
@@ -25418,13 +25418,13 @@ function AppProvider({ children }) {
25418
25418
  ]
25419
25419
  );
25420
25420
  const [instructions, setInstructions] = (0, import_react27.useState)(instructionsInternal);
25421
- const [showingCustom, setShowingCustom] = (0, import_react27.useState)(false);
25422
25421
  (0, import_react27.useEffect)(() => {
25423
25422
  setInstructions(instructionsInternal);
25424
25423
  }, [instructionsInternal]);
25425
25424
  const hasCustomInstructions = contextInstructions.some(
25426
25425
  (i) => !app?.highlights?.some((h) => h.id === i.id)
25427
25426
  );
25427
+ const [showingCustom, setShowingCustom] = (0, import_react27.useState)(hasCustomInstructions);
25428
25428
  const isAppInstructions = contextInstructions.every(
25429
25429
  (i) => app?.highlights?.some((h) => h.id === i.id)
25430
25430
  );
@@ -27053,10 +27053,6 @@ var init_App_styles = __esm({
27053
27053
  width: "100%",
27054
27054
  padding: "0 10px"
27055
27055
  },
27056
- focus: {
27057
- position: "relative",
27058
- marginLeft: 10
27059
- },
27060
27056
  focusTime: {
27061
27057
  position: "absolute",
27062
27058
  top: -5,
@@ -27083,7 +27079,7 @@ var init_App_styles = __esm({
27083
27079
  marginLeft: 10
27084
27080
  },
27085
27081
  spaceInvaderFocus: {
27086
- right: -3
27082
+ right: 0
27087
27083
  },
27088
27084
  spaceInvaderSpaceInvader: {},
27089
27085
  atlas: {
@@ -27092,13 +27088,13 @@ var init_App_styles = __esm({
27092
27088
  top: -5
27093
27089
  },
27094
27090
  atlasFocus: {
27095
- right: -3
27091
+ right: 0
27096
27092
  },
27097
27093
  atlasSpaceInvader: {},
27098
- focusFocus: {
27099
- right: -3
27094
+ focus: {
27095
+ position: "relative",
27096
+ marginLeft: 5
27100
27097
  },
27101
- focusSpaceInvader: {},
27102
27098
  appItem: {
27103
27099
  position: "relative",
27104
27100
  flex: 1,
@@ -27403,7 +27399,7 @@ var init_breakpoints = __esm({
27403
27399
 
27404
27400
  // styles/createStyleProxy.ts
27405
27401
  function createStyleProxy(options) {
27406
- const { styles: styles4, theme, dimensions, styleCache: styleCache2 } = options;
27402
+ const { styles: styles4, theme, dimensions, styleCache: styleCache2, isWeb: isWeb2 = true } = options;
27407
27403
  if (!styles4 || typeof styles4 !== "object") {
27408
27404
  console.warn("createStyleProxy: styles object is undefined or invalid");
27409
27405
  return new Proxy({}, {
@@ -27427,7 +27423,9 @@ function createStyleProxy(options) {
27427
27423
  if (isResponsiveValue(value)) {
27428
27424
  resolvedValue = getResponsiveValue(dimensions.width, value);
27429
27425
  }
27430
- resolvedValue = resolveThemeValue(resolvedValue, theme);
27426
+ if (!isWeb2) {
27427
+ resolvedValue = resolveThemeValue(resolvedValue, theme);
27428
+ }
27431
27429
  if (key === "fontSize" && typeof resolvedValue === "string" && resolvedValue.includes("vw")) {
27432
27430
  const vwValue = parseFloat(resolvedValue);
27433
27431
  const calculatedSize = dimensions.width * vwValue / 100;
@@ -27499,7 +27497,9 @@ function createStyleHook(styles4) {
27499
27497
  styles: styles4.native,
27500
27498
  theme,
27501
27499
  dimensions,
27502
- styleCache: styleCache2
27500
+ styleCache: styleCache2,
27501
+ isWeb: platform?.isWeb ?? true
27502
+ // Default to web if platform not available
27503
27503
  });
27504
27504
  };
27505
27505
  }
@@ -29520,7 +29520,7 @@ var init_Sidebar_styles = __esm({
29520
29520
  justifyContent: "center",
29521
29521
  alignItems: "center",
29522
29522
  position: "fixed",
29523
- backgroundColor: "#000",
29523
+ backgroundColor: "var(--background)",
29524
29524
  zIndex: 999999
29525
29525
  },
29526
29526
  splashHidden: {
@@ -29940,6 +29940,7 @@ function Modal({
29940
29940
  /* @__PURE__ */ import_react41.default.createElement(
29941
29941
  Div,
29942
29942
  {
29943
+ className: "slideUp",
29943
29944
  "data-testid": dataTestId,
29944
29945
  style: styles4.inner.style,
29945
29946
  ref: innerRef
@@ -35900,7 +35901,7 @@ function App({
35900
35901
  ) : showPacmanHere && /* @__PURE__ */ import_react56.default.createElement(
35901
35902
  Button,
35902
35903
  {
35903
- className: "link",
35904
+ className: "link slideInFromLeft",
35904
35905
  onClick: () => setAppStatus({
35905
35906
  step: canEditApp ? "update" : "add",
35906
35907
  part: "highlights"
@@ -35982,7 +35983,7 @@ function App({
35982
35983
  ), showFocusHere && /* @__PURE__ */ import_react56.default.createElement(FocusButton, { time }), showSpaceInvaderHere && /* @__PURE__ */ import_react56.default.createElement(
35983
35984
  Button,
35984
35985
  {
35985
- className: "link",
35986
+ className: "link float",
35986
35987
  key: showingCustom ? "customInstructions" : "appInstructions",
35987
35988
  style: {
35988
35989
  ...styles4.spaceInvader.style
@@ -36009,9 +36010,8 @@ function App({
36009
36010
  style: {
36010
36011
  position: "absolute",
36011
36012
  bottom: 1,
36012
- right: -13,
36013
- zIndex: -1,
36014
- color: "var(--accent-1)"
36013
+ right: -5,
36014
+ color: "#f87171"
36015
36015
  }
36016
36016
  }
36017
36017
  )
@@ -41074,7 +41074,7 @@ function Menu({
41074
41074
  icons_exports.PanelRight,
41075
41075
  {
41076
41076
  strokeWidth: 1.5,
41077
- color: colors2.accent1,
41077
+ color: "var(--accent-1)",
41078
41078
  size: 20
41079
41079
  }
41080
41080
  )
@@ -41556,7 +41556,10 @@ var init_CharacterProfiles_styles = __esm({
41556
41556
  flexDirection: "column",
41557
41557
  gap: 5
41558
41558
  },
41559
- characterProfileButton: {}
41559
+ characterProfileButton: {},
41560
+ characterProfile: {
41561
+ margin: 0
41562
+ }
41560
41563
  };
41561
41564
  CharacterProfilesStyles = createUnifiedStyles(
41562
41565
  CharacterProfilesStyleDefs
@@ -41568,6 +41571,7 @@ var init_CharacterProfiles_styles = __esm({
41568
41571
  // CharacterProfile.tsx
41569
41572
  function CharacterProfile({
41570
41573
  onCharacterProfileUpdate,
41574
+ style: style2,
41571
41575
  ...props
41572
41576
  }) {
41573
41577
  const [characterProfile, setCharacterProfile] = (0, import_react64.useState)(
@@ -41638,62 +41642,57 @@ function CharacterProfile({
41638
41642
  onCharacterProfileUpdate?.();
41639
41643
  }
41640
41644
  };
41641
- return /* @__PURE__ */ import_react64.default.createElement(Div, null, /* @__PURE__ */ import_react64.default.createElement(Div, { key: characterProfile.id }, /* @__PURE__ */ import_react64.default.createElement(Div, { style: styles4.characterProfilesActions.style }, characterProfile.pinned && showActions && /* @__PURE__ */ import_react64.default.createElement(
41642
- Button,
41643
- {
41644
- title: t6("Share"),
41645
- onClick: () => setIsSharing(!isSharing),
41646
- className: "small link"
41647
- },
41648
- characterProfile.visibility === "public" && !isSharing ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.Unlock, { size: 16, color: "var(--accent-6)" }) : isSharing ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.CircleX, { size: 16, color: "var(--accent-6)" }) : /* @__PURE__ */ import_react64.default.createElement(icons_exports.Share, { size: 16, color: "var(--accent-6)" })
41649
- ), isSharing ? /* @__PURE__ */ import_react64.default.createElement(
41650
- Button,
41645
+ return /* @__PURE__ */ import_react64.default.createElement(
41646
+ Div,
41651
41647
  {
41652
- className: characterProfile.visibility === "public" ? "transparent" : "inverted",
41653
- onClick: () => handleShare(),
41654
- disabled: isChangingVisibility
41648
+ key: characterProfile.id,
41649
+ style: { ...styles4.characterProfilesActions.style, ...style2 }
41655
41650
  },
41656
- /* @__PURE__ */ import_react64.default.createElement(import_react64.default.Fragment, null, isChangingVisibility ? /* @__PURE__ */ import_react64.default.createElement(Loading, { color: "var(--accent-1)", width: 14, height: 14 }) : characterProfile.visibility === "public" ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.Lock, { size: 16 }) : /* @__PURE__ */ import_react64.default.createElement(icons_exports.Unlock, { size: 16 }), t6(
41657
- characterProfile.visibility === "public" ? "Make it private" : "Make it public"
41658
- ))
41659
- ) : /* @__PURE__ */ import_react64.default.createElement(
41660
- Button,
41661
- {
41662
- onClick: () => {
41663
- if (props.showActions) {
41664
- setShowCharacterProfiles(true);
41665
- return;
41666
- }
41667
- setShowActions(!showActions);
41651
+ characterProfile.pinned && showActions && /* @__PURE__ */ import_react64.default.createElement(
41652
+ Button,
41653
+ {
41654
+ title: t6("Share"),
41655
+ onClick: () => setIsSharing(!isSharing),
41656
+ className: "small link"
41668
41657
  },
41669
- className: "inverted inverted"
41670
- },
41671
- /* @__PURE__ */ import_react64.default.createElement(
41672
- icons_exports.Sparkles,
41658
+ characterProfile.visibility === "public" && !isSharing ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.Unlock, { size: 16, color: "var(--accent-6)" }) : isSharing ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.CircleX, { size: 16, color: "var(--accent-6)" }) : /* @__PURE__ */ import_react64.default.createElement(icons_exports.Share, { size: 16, color: "var(--accent-6)" })
41659
+ ),
41660
+ isSharing ? /* @__PURE__ */ import_react64.default.createElement(
41661
+ Button,
41673
41662
  {
41674
- size: 16,
41675
- color: "var(--accent-1)",
41676
- fill: "var(--accent-1)"
41677
- }
41663
+ className: characterProfile.visibility === "public" ? "transparent" : "inverted",
41664
+ onClick: () => handleShare(),
41665
+ disabled: isChangingVisibility
41666
+ },
41667
+ /* @__PURE__ */ import_react64.default.createElement(import_react64.default.Fragment, null, isChangingVisibility ? /* @__PURE__ */ import_react64.default.createElement(Loading, { color: "var(--accent-1)", width: 14, height: 14 }) : characterProfile.visibility === "public" ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.Lock, { size: 16 }) : /* @__PURE__ */ import_react64.default.createElement(icons_exports.Unlock, { size: 16 }), t6(
41668
+ characterProfile.visibility === "public" ? "Make it private" : "Make it public"
41669
+ ))
41670
+ ) : /* @__PURE__ */ import_react64.default.createElement(
41671
+ Button,
41672
+ {
41673
+ onClick: () => {
41674
+ if (props.showActions) {
41675
+ setShowCharacterProfiles(true);
41676
+ return;
41677
+ }
41678
+ setShowActions(!showActions);
41679
+ },
41680
+ className: "inverted inverted"
41681
+ },
41682
+ /* @__PURE__ */ import_react64.default.createElement(icons_exports.Sparkles, { size: 16, color: "var(--accent-1)", fill: "var(--accent-1)" }),
41683
+ characterProfile.name
41678
41684
  ),
41679
- characterProfile.name
41680
- ), showActions && /* @__PURE__ */ import_react64.default.createElement(
41681
- Button,
41682
- {
41683
- disabled: isPinning,
41684
- onClick: () => handlePin(),
41685
- className: "small link",
41686
- title: characterProfile.pinned ? t6("Unpin") : t6("Pin")
41687
- },
41688
- isPinning ? /* @__PURE__ */ import_react64.default.createElement(Loading, { color: "var(--accent-1)", width: 14, height: 14 }) : characterProfile.pinned ? /* @__PURE__ */ import_react64.default.createElement(
41689
- icons_exports.PinOff,
41685
+ showActions && /* @__PURE__ */ import_react64.default.createElement(
41686
+ Button,
41690
41687
  {
41691
- size: 16,
41692
- color: "var(--accent-1)",
41693
- fill: "var(--accent-1)"
41694
- }
41695
- ) : /* @__PURE__ */ import_react64.default.createElement(icons_exports.Pin, { size: 16, color: "var(--accent-1)", fill: "var(--accent-1)" })
41696
- ))));
41688
+ disabled: isPinning,
41689
+ onClick: () => handlePin(),
41690
+ className: "small link",
41691
+ title: characterProfile.pinned ? t6("Unpin") : t6("Pin")
41692
+ },
41693
+ isPinning ? /* @__PURE__ */ import_react64.default.createElement(Loading, { color: "var(--accent-1)", width: 14, height: 14 }) : characterProfile.pinned ? /* @__PURE__ */ import_react64.default.createElement(icons_exports.PinOff, { size: 16, color: "var(--accent-1)", fill: "var(--accent-1)" }) : /* @__PURE__ */ import_react64.default.createElement(icons_exports.Pin, { size: 16, color: "var(--accent-1)", fill: "var(--accent-1)" })
41694
+ )
41695
+ );
41697
41696
  }
41698
41697
  var import_react64;
41699
41698
  var init_CharacterProfile = __esm({
@@ -41736,7 +41735,7 @@ function CharacterProfiles() {
41736
41735
  Button,
41737
41736
  {
41738
41737
  title: t6("Character Profile"),
41739
- className: "link",
41738
+ className: "link pulse",
41740
41739
  onClick: () => setIsModalOpen(true),
41741
41740
  style: styles4.characterProfileButton.style
41742
41741
  },
@@ -41758,7 +41757,8 @@ function CharacterProfiles() {
41758
41757
  CharacterProfile,
41759
41758
  {
41760
41759
  key: characterProfile.id,
41761
- characterProfile
41760
+ characterProfile,
41761
+ style: styles4.characterProfile.style
41762
41762
  }
41763
41763
  )) : !characterProfilesEnabled ? /* @__PURE__ */ import_react65.default.createElement(import_react65.default.Fragment, null, /* @__PURE__ */ import_react65.default.createElement("div", null, t6(
41764
41764
  "Enable character profiling in your conversations to start building your collection of AI-generated personality insights."