@stnd/launcher 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @stnd/launcher
2
2
 
3
+ ## 1.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Auto-bumped @stnd/launcher due to modified code.
8
+
3
9
  ## 1.1.0
4
10
 
5
11
  ### Minor Changes
package/Launcher.svelte CHANGED
@@ -5,7 +5,6 @@
5
5
  * Integrated with the Standard Garden OS aesthetic.
6
6
  */
7
7
  import Icon from "@stnd/icon/Icon.svelte";
8
- import Avatar from "@stnd/account/ui/Avatar.svelte";
9
8
  import {
10
9
  registry,
11
10
  palette,
@@ -36,21 +35,6 @@
36
35
  // Props exist only for backward compat or one-off overrides.
37
36
  let { WelcomeView = null, load = null, hideLogin = false } = $props();
38
37
 
39
- // Login only makes sense if an app actually wired up authentication —
40
- // otherwise this is the same assumption-bleed as a hardcoded "ask AI"
41
- // item: a button pointing at a "::login" view that doesn't exist for
42
- // apps with no account system at all (presence-of-data = mode).
43
- let hasAuthProvider = $derived(
44
- has("user") ||
45
- (typeof window !== "undefined" && !!window.__INITIAL_USER__),
46
- );
47
-
48
- // Check global window variable as fallback (set via window.__HIDE_LAUNCHER_LOGIN__)
49
- let shouldHideLogin = $derived(
50
- hideLogin ||
51
- (typeof window !== "undefined" && window.__HIDE_LAUNCHER_LOGIN__),
52
- );
53
-
54
38
  // --- STATE (Synced with Engine) ---
55
39
  let pState = $state({
56
40
  open: false,
@@ -655,68 +639,6 @@
655
639
  <div class="std-launcher-empty">Nothing came up.</div>
656
640
  {/if}
657
641
  </div>
658
-
659
- <!-- Footer (shown in search / palette mode, hidden in full view mode) -->
660
- {#if !ActiveViewComponent}
661
- <footer class="std-launcher-footer mt-0">
662
- <div>
663
- {#if currentUser && currentUser.isAuthenticated}
664
- <div
665
- class="std-launcher-user flex items-center gap-xs"
666
- role="button"
667
- tabindex="0"
668
- onclick={() => {
669
- if (registryState.views["::account-settings"]) {
670
- launcherView("::account-settings");
671
- } else if (registryState.views["::settings"]) {
672
- launcherView("::settings");
673
- } else {
674
- launcherView("::my-space");
675
- }
676
- }}
677
- onkeydown={(e) => {
678
- if (e.key === "Enter" || e.key === " ") {
679
- if (registryState.views["::account-settings"]) {
680
- launcherView("::account-settings");
681
- } else if (registryState.views["::settings"]) {
682
- launcherView("::settings");
683
- } else {
684
- launcherView("::my-space");
685
- }
686
- }
687
- }}
688
- style="cursor: pointer;"
689
- >
690
- <Avatar
691
- src={currentUser.image}
692
- name={currentUser.username || currentUser.name}
693
- email={currentUser.email}
694
- size="18px"
695
- border={false}
696
- />
697
- <span class="smaller muted">
698
- {currentUser.name || currentUser.username || currentUser.email}
699
- </span>
700
- </div>
701
- {:else if hasAuthProvider && !shouldHideLogin}
702
- <button
703
- class="no-decoration smaller ghost text-subtle"
704
- onclick={() => launcherView("::login")}
705
- >
706
- Login
707
- </button>
708
- {/if}
709
- <div class="std-launcher-mode smaller inline hidden">
710
- COMMAND MODE
711
- </div>
712
- </div>
713
-
714
- <div class="std-launcher-hints sm:hidden hidden">
715
- <span><kbd>↑</kbd> <kbd>↓</kbd> navigate</span>
716
- <span><kbd>esc</kbd> close</span>
717
- </div>
718
- </footer>
719
- {/if}
720
642
  </div>
721
643
  </div>
722
644
  {/if}
@@ -920,7 +842,7 @@
920
842
  Naming it is the point: views used to hardcode `var(--space)` to undo a
921
843
  padding they could only guess, so the two drifted apart and content got
922
844
  clipped at the frame. One name, one source of truth. */
923
- --launcher-pad: 1.25rem;
845
+ --launcher-pad: var(--space);
924
846
  }
925
847
 
926
848
  /* Full-bleed views (settings, welcome horizon) manage their own internal layout */
@@ -1062,47 +984,6 @@
1062
984
  font-size: var(--scale-d2);
1063
985
  }
1064
986
 
1065
- /* Footer (Refined & Compact) */
1066
- .std-launcher-footer {
1067
- display: flex;
1068
- justify-content: space-between;
1069
- align-items: center;
1070
- padding: 3px var(--space-d2, 10px);
1071
- min-height: 28px;
1072
- font-size: var(--size-xs);
1073
- color: var(--color-muted);
1074
- border-top: var(--border);
1075
- background-color: var(--color-surface-high);
1076
-
1077
- box-shadow: var(--shadow-raised);
1078
- }
1079
-
1080
- .std-launcher-user {
1081
- display: flex;
1082
- align-items: center;
1083
- gap: var(--space-d4, 4px);
1084
- color: var(--color-foreground-muted);
1085
- padding: 2px 6px;
1086
- border-radius: var(--radius);
1087
- transition: all var(--transition-fast);
1088
- }
1089
-
1090
- .std-launcher-user:hover {
1091
- background: var(--color-surface-highest);
1092
- color: var(--color-foreground);
1093
- }
1094
-
1095
- .std-launcher-user span {
1096
- max-width: 150px;
1097
- white-space: nowrap;
1098
- overflow: hidden;
1099
- text-overflow: ellipsis;
1100
- }
1101
-
1102
- .std-launcher-hints {
1103
- display: flex;
1104
- gap: 1rem;
1105
- }
1106
987
 
1107
988
  /* Mobile: Bottom Sheet */
1108
989
  @media (max-width: 640px) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stnd/launcher",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -20,10 +20,10 @@
20
20
  "dependencies": {
21
21
  "svelte": "5.57.0",
22
22
  "wrangler": "^4.129.0",
23
+ "@stnd/account": "0.2.11",
23
24
  "@stnd/client": "0.7.0",
24
- "@stnd/log": "0.5.1",
25
25
  "@stnd/icon": "0.2.2",
26
- "@stnd/account": "0.2.11",
26
+ "@stnd/log": "0.5.1",
27
27
  "@stnd/store": "0.5.1",
28
28
  "@stnd/ui": "0.6.1"
29
29
  },