efficient-shell 6.4.0 → 7.7.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/README.md +88 -22
- package/dist/Browser-56LX7FTE.js +43 -0
- package/dist/Calculator-GBKLJHM6.js +29 -0
- package/dist/ConfirmDialog-PS5BXNAT.js +1 -0
- package/dist/CurrencyConverter-ZXY7XNG6.js +21 -0
- package/dist/{Documents-ADFEHEUW.js → Documents-SVKR757H.js} +27 -27
- package/dist/Files-KSHU7ROB.js +87 -0
- package/dist/Notepad-5GT2GUCJ.js +25 -0
- package/dist/PdfViewer-YVAWFZVH.js +1 -0
- package/dist/PomodoroTimer-GAGDQ4NF.js +91 -0
- package/dist/Preview-YDCDW5NE.js +182 -0
- package/dist/Sidebar-IH6WUPKT.js +44 -0
- package/dist/Spreadsheet-SYR23K4I.js +37 -0
- package/dist/Stock-LH5CR667.js +16 -0
- package/dist/{Weather-BLO354GM.js → Weather-MZGIPR2R.js} +35 -35
- package/dist/WorldClock-DLB2RRLI.js +32 -0
- package/dist/apps/index.js +1 -1
- package/dist/bin/ui-check.js +1 -1
- package/dist/brand.css +1 -1
- package/dist/chunk-2ALIPI3D.js +1 -0
- package/dist/{chunk-MORDXCV6.js → chunk-2R5RTN5T.js} +1 -1
- package/dist/{chunk-5LUN632W.js → chunk-43XFZY4K.js} +2 -2
- package/dist/{chunk-ZEIKSMFR.js → chunk-4JGNJYVL.js} +8 -8
- package/dist/{chunk-XO2AMGVU.js → chunk-5TOLXFQ6.js} +1 -1
- package/dist/{chunk-QJHWLDEN.js → chunk-6SCHK75C.js} +50 -50
- package/dist/{chunk-4JZZLUGG.js → chunk-B4PGVDB6.js} +1 -1
- package/dist/chunk-BUGGBB5J.js +1 -0
- package/dist/{chunk-2SSRFEOZ.js → chunk-CJHT4VTF.js} +1 -1
- package/dist/chunk-CLFUF3BH.js +9 -0
- package/dist/{chunk-I2H2CKID.js → chunk-CQ2DLPPS.js} +1 -1
- package/dist/{chunk-HQLAISFX.js → chunk-G4CTTSAR.js} +4 -4
- package/dist/{chunk-I534M65N.js → chunk-HIRMYFOF.js} +2 -2
- package/dist/{chunk-SK5DL6JX.js → chunk-JKHXDQEI.js} +14 -14
- package/dist/{chunk-GWDVD3VQ.js → chunk-JQRIAZDP.js} +23 -23
- package/dist/{chunk-IHZL3GJU.js → chunk-KONXUO5I.js} +1 -1
- package/dist/{chunk-Q5O5UMJY.js → chunk-M4MCXII7.js} +1 -1
- package/dist/{chunk-UUYPUKP7.js → chunk-M4TRVJTO.js} +1 -1
- package/dist/chunk-MSGBGLGI.js +29 -0
- package/dist/{chunk-CXJQ42XT.js → chunk-N7JTY3LU.js} +15 -15
- package/dist/{chunk-VR6TR575.js → chunk-NODT4F2C.js} +3 -3
- package/dist/{chunk-R5VRLW5Z.js → chunk-OXTM3XZI.js} +1 -1
- package/dist/chunk-PT4Z3KIA.js +12 -0
- package/dist/chunk-QRCDQPJA.js +1 -0
- package/dist/{chunk-7PGHRG6J.js → chunk-QUVE5JZZ.js} +11 -11
- package/dist/{chunk-YX2IMURA.js → chunk-R2TPTM4O.js} +8 -8
- package/dist/{chunk-5K76RQML.js → chunk-RBKIYZ7H.js} +1 -1
- package/dist/{chunk-GJ37JCC2.js → chunk-RUHUTZN4.js} +1 -1
- package/dist/chunk-TCYS67ND.js +1016 -0
- package/dist/file-intake/index.js +1 -1
- package/dist/i18n/index.d.ts +1 -1
- package/dist/icons/efficient-looks.js +4 -4
- package/dist/icons/efficient.d.ts +2 -2
- package/dist/icons/efficient.js +3 -3
- package/dist/icons/index.js +1 -1
- package/dist/{index-D5bms_uA.d.ts → index-BkBsXpfV.d.ts} +285 -88
- package/dist/index.d.ts +3 -3
- package/dist/index.js +635 -639
- package/dist/locales/zh-Hans.d.ts +1 -1
- package/dist/locales/zh-Hans.js +1 -1
- package/dist/map/index.js +8 -8
- package/dist/markdown/index.js +1 -1
- package/dist/page-tabs/index.js +5 -5
- package/dist/pdf/index.js +1 -1
- package/dist/{strings-fYzxZPn4.d.ts → strings-BQtq9300.d.ts} +17 -2
- package/dist/telemetry/index.js +1 -1
- package/dist/ui/index.d.ts +2 -2
- package/dist/ui/index.js +1 -1
- package/dist/ui.css +48 -54
- package/package.json +1 -1
- package/dist/Browser-USPZWDYH.js +0 -43
- package/dist/Calculator-FP5HUWCW.js +0 -29
- package/dist/ConfirmDialog-3TIHKJRT.js +0 -1
- package/dist/CurrencyConverter-XD5LYOCD.js +0 -21
- package/dist/Files-BVUVRNC5.js +0 -87
- package/dist/Notepad-WJI5ODGS.js +0 -25
- package/dist/PdfViewer-226I3LSD.js +0 -1
- package/dist/PomodoroTimer-GEMQHIPJ.js +0 -91
- package/dist/Preview-HNSEYNZL.js +0 -182
- package/dist/Sidebar-PVHZPNIY.js +0 -44
- package/dist/Spreadsheet-6Z5ACGTT.js +0 -37
- package/dist/Stock-X3LIU4ZX.js +0 -16
- package/dist/WorldClock-BAH7QFRG.js +0 -32
- package/dist/chunk-5MDQNFOG.js +0 -9
- package/dist/chunk-DBXZS7OA.js +0 -29
- package/dist/chunk-K6DKX55N.js +0 -1
- package/dist/chunk-PFKMIPZH.js +0 -1028
- package/dist/chunk-S3LGKIZ3.js +0 -12
- package/dist/chunk-SBF5A6XV.js +0 -1
package/dist/ui/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { A as ALT, b as ALT_SHIFT_D, c as ALT_SHIFT_E, d as ALT_SHIFT_N, e as APP_UPDATE_POLL_MS, f as Accordion, g as AccordionItem, h as AccordionProps, i as Align, j as AlignmentGrid, k as AlignmentGridProps, l as AlignmentPoint, m as AngleScale, n as AppUpdateBanner, o as AppUpdateBannerProps, p as AttachButton, q as AttachButtonProps, r as AttachmentDropZone, s as AttachmentDropZoneProps, t as AttachmentList, u as AttachmentListProps, v as AuthScreen, w as AuthScreenProps, x as Avatar, y as AvatarGroup, z as AvatarGroupProps, B as AvatarProps, D as AvatarSize, E as AvatarStatus, F as BORDER_WIDTHS, G as BackgroundVariant, H as BandScale, I as Banner, J as BannerEmphasis, K as BannerProps, L as BannerTone, M as BarChart, N as BarChartProps, O as BorderRole, Q as BoxPlotBox, R as BoxPlotChart, T as BoxPlotChartProps, U as BrandAssetEditor, V as BrandAssetEditorProps, W as BrandAssetPreview, X as BrandMark, Y as BrandMarkProps, Z as BrandMarkSlot, _ as BrandMarkSurface, $ as BrandMarkTreatment, a0 as BreadcrumbItem, a1 as Breadcrumbs, a2 as BreadcrumbsProps, a3 as BudgetBar, a4 as BudgetBarProps, a5 as BudgetState, a6 as Button, a7 as ButtonClassesOptions, a8 as ButtonProps, a9 as ButtonSize, aa as ButtonVariant, ab as CHART_INK, ac as CMD_A, ad as CMD_DOT, ae as CMD_ENTER, af as CMD_K, ag as CMD_S, ah as COLUMN_COUNT_MAX, ai as COLUMN_COUNT_WIDTHS, aj as COLUMN_SHARES_EQUAL, ak as COLUMN_SHARE_MIN, al as CONTROL_HEIGHTS, am as CORNERS, an as Calendar, ao as CalendarMode, ap as CalendarProps, aq as Candle, ar as CandlestickChart, as as CandlestickChartProps, at as Card, au as CardPadding, av as CardProps, aw as CardTone, ax as CartesianPlot, ay as CartesianPlotProps, az as CellStyle, aA as ChartBackgroundVariant, aB as ChartBrush, aC as ChartBrushProps, aD as ChartCurve, aE as ChartDefs, aF as ChartDefsProps, aG as ChartDot, aH as ChartDotProps, aI as ChartDotVariant, aJ as ChartFillVariant, aK as ChartFrame, aL as ChartFrameProps, aM as ChartHighlightProvider, aN as ChartLegendEntry, aO as ChartLegendSwatch, aP as ChartRange, aQ as ChartReferenceLine, aR as ChartRevealDirection, aS as ChartSkeleton, aT as ChartSkeletonProps, aU as ChartStatusTone, aV as ChartStrokeVariant, aW as ChartTooltip, aX as ChartTooltipProps, aY as ChartTooltipRow, aZ as ChatTemplate, a_ as Checkbox, a$ as CheckboxProps, b0 as CheckoutTemplate, b1 as ChordChart, b2 as ChordChartProps, b3 as ColorPicker, b4 as ColorPickerPanel, b5 as ColorPickerPanelProps, b6 as ColorPickerProps, b7 as ColorPreset, b8 as ColorSwatch, b9 as ColorSwatchProps, ba as ColorSwatchSize, bb as ColoredBadge, bc as ColoredBadgeProps, bd as ColumnChart, be as ColumnChartProps, C as ColumnDef, bf as ColumnSeries, bg as ColumnShares, bh as ComposerAttachments, bi as ComposerAttachmentsProps, bj as ConfirmProvider, bk as ContainerFillChart, bl as ContainerFillChartProps, bm as ContainerFillItem, bn as ContextMenu, bo as ContextMenuPoint, bp as ContextMenuProps, bq as ContextMenuState, br as ControlSize, bs as CornerOption, bt as Corners, bu as CornersInput, bv as CornersInputProps, bw as CountBadge, bx as CountBadgeProps, by as CountBadgeTone, bz as Curve, bA as DAY_MS, bB as DashboardTemplate, bC as DataTable, bD as DataTableColumn, bE as DataTableColumnGroup, bF as DataTableHeader, bG as DataTablePage, bH as DataTableProps, bI as DataTableRowLink, bJ as DataTableRowProps, bK as DatePicker, bL as DatePickerProps, bM as DateRangePicker, bN as DateRangePickerProps, bO as DateTimePicker, bP as DateTimePickerProps, bQ as DescriptionColumns, bR as DescriptionItem, bS as DescriptionList, bT as DescriptionListProps, bU as Dialog, bV as DialogProps, bW as DialogSize, bX as DisplayChipItem, bY as DisplayChips, bZ as DisplayChipsProps, b_ as Divider, b$ as DividerProps, c0 as DividerSpacing, c1 as DonutChart, c2 as DonutChartProps, c3 as DonutSegment, c4 as Drawer, c5 as DrawerProps, c6 as DrawerSide, c7 as DrawerSize, c8 as DropdownMenu, c9 as DropdownMenuAlign, ca as DropdownMenuCheckboxItem, cb as DropdownMenuDividerItem, cc as DropdownMenuEntry, cd as DropdownMenuItem, ce as DropdownMenuLabelItem, cf as DropdownMenuLinkItem, cg as DropdownMenuProps, ch as DropdownMenuRadioItem, ci as DropdownMenuSide, cj as DropdownPositionOptions, ck as ELEVATION_LEVELS, cl as ENGLISH, cm as ENTER, cn as EditableGrid, co as EditableGridProps, cp as ElevationLevel, cq as EmailTemplate, cr as EmptyState, cs as EmptyStateProps, ct as EmptyValue, cu as EmptyValueProps, cv as ErrorBoundary, cw as ErrorBoundaryProps, cx as ErrorPage, cy as ErrorPageProps, cz as FONT_WEIGHTS, cA as FileIntake, cB as FilePicker, cC as FilePickerProps, cD as FillVariant, cE as FontWeightRole, cF as FormError, cG as FormErrorSummary, cH as FormErrorSummaryProps, cI as FormField, cJ as FormFieldProps, cK as FormLayoutPage, cL as FunnelChart, cM as FunnelChartProps, cN as FunnelStage, cO as GLASS_DIVIDER, cQ as GROUP_COLORS, cR as GROUP_COLORS_SOLID, cS as GalleryTemplate, cT as Gap, cU as GlassOptions, cV as GlobalSearch, cW as GlobalSearchProps, cX as Grid, cY as GridCols, cZ as GridColumn, c_ as GridProps, c$ as HeatmapChart, d0 as HeatmapChartProps, d1 as HelpCenter, d2 as HelpCenterDoc, d3 as HelpCenterProps, d4 as HexInput, d5 as HistogramBin, d6 as HistogramChart, d7 as HistogramChartProps, d8 as Hsv, d9 as INPUT_BASE, da as INPUT_SIZES, db as IconButton, dc as IconButtonClassesOptions, dd as IconButtonProps, de as IconRail, df as IconRailButton, dg as IconRailButtonProps, dh as IconRailLabels, di as IconRailLabelsShown, dj as IconRailOrientation, dk as IconRailProps, dl as ImageFocusPoint, dm as ImageFocusPointProps, dn as Inline, dp as InlineProps, dq as Input, dr as InputNumber, ds as InputNumberProps, dt as InputProps, du as InputSize, dv as Justify, dw as Kanban, dx as KanbanColumn, dy as KanbanProps, dz as Kbd, dA as KbdProps, dB as KbdSize, dC as KbdTone, dD as Label, dE as LabelClassesOptions, dF as LabelProps, dG as LadderScale, dH as LanguagePanel, dI as LanguagePanelProps, dJ as LanguageSelect, dK as LanguageSelectProps, dL as LineChart, dM as LineChartProps, dN as LineChartSeries, dO as LinearScale, dP as LinkFilter, dQ as LinkFilterField, dR as LinkKindChoice, dS as LinkOption, dT as LinkOptionGroup, dU as LinkPicker, dV as LinkPickerFieldProps, dW as LinkPickerProps, dX as LinkPickerWindowProps, dY as LinkRules, dZ as LinkTarget, d_ as ListDrop, d$ as ListFooter, e0 as ListLoadError, e1 as ListLoadErrorProps, e2 as ListMove, e3 as ListRow, e4 as ListRowProps, e5 as LoadingSpinner, e6 as LoadingSpinnerProps, e7 as MAX_FRACTION_DIGITS, e8 as MENU_MAX_HEIGHT, e9 as MOD, ea as MOTION, eb as MOTION_DURATIONS, ec as Markdown, ec as MarkdownLite, ed as MarkdownLiteProps, ed as MarkdownProps, ee as MediaUploadField, ef as MediaUploadFieldProps, eg as MediaUploadGrid, eh as MediaUploadGridItem, ei as MediaUploadGridProps, ej as MenuPos, ek as Meter, el as MeterProps, em as MetricBar, en as MetricBarProps, eo as Milestone, ep as MilestoneKind, eq as MilestoneTimeline, er as MilestoneTimelineProps, es as MotionSpeed, eu as NEXT_CHUNK_PATH_PREFIX, ev as NativeSelect, ew as NumericKeypad, ex as NumericKeypadProps, ey as OVERLAY_OPEN_EVENT, ez as POPUP_MAX_WIDTH, eA as POST_PRODUCTION_STATUSES, eB as PageHeader, eC as PageHeaderProps, P as PaginatedResponse, eD as Pagination, eE as PaginationProps, eF as PaperclipGlyph, eG as Paragraph, eH as ParagraphProps, eI as PieChart, eJ as PieChartProps, eK as PieSegment, eL as PlotGeometry, eM as Point, eN as Popover, eO as PopoverAlign, eP as PopoverProps, eQ as PopoverRenderProps, eR as PopoverSide, eS as PopupMenu, eT as PopupMenuDivider, eU as PopupMenuItem, eV as PopupMenuItemProps, eW as PopupMenuLabel, eX as PopupMenuProps, eY as PopupSubmenu, eZ as PopupSubmenuProps, e_ as PortalBrandingContextValue, e$ as PortalBrandingProvider, f0 as PortalBrandingProviderProps, f1 as ProductionTimeline, f2 as ProductionTimelineProps, f3 as ProductionTimelineSnapshot, f4 as ProgressItem, f5 as PublicPortal, f6 as PublicPortalBranding, f7 as RADAR_SERIES_CAP, f8 as RADIUS_ROLES, f9 as RadarAxis, fa as RadarChart, fb as RadarChartProps, fc as RadarSeries, fd as RadialBarChart, fe as RadialBarChartProps, ff as RadialBarRow, fg as Radio, fh as RadioGroup, fi as RadioGroupOption, fj as RadioGroupOrientation, fk as RadioGroupProps, fl as RadioProps, fm as RadiusRole, fn as Range, fo as RangeChart, fp as RangeChartProps, fq as RangeRow, fr as RankedBars, fs as RankedBarsProps, ft as RankedBarsRow, fu as ResizeHandle, fv as ResizeHandleOrientation, fw as ResizeHandleProps, fx as ResizeHandleSide, fy as ResizeHandleStackSide, fz as ResolvedPortalBrandAsset, fA as Result, fB as ResultProps, fC as ResultStatus, fD as RevealDirection, fE as SCATTER_SERIES_CAP, fF as SERIES_SLOT_COUNT, fG as SERIES_VARS, fH as SHELL_LANGUAGE_STORAGE_KEY, fI as SHIFT, fJ as SPACING_ROLES, fK as SPACING_SCALE, fL as STAGES, fM as STALE_CHUNK_RELOAD_COOLDOWN_MS, fN as STALE_CHUNK_RELOAD_KEY, fO as STATUS_VARS, fP as SankeyChart, fQ as SankeyChartProps, fR as SankeyLink, fS as SankeyNode, fT as ScatterChart, fU as ScatterChartProps, fV as ScatterPoint, fW as ScatterSeries, S as SearchConfig, fX as SearchListRoute, fY as SearchProvider, fZ as SearchQuickAction, f_ as SearchResponse, f$ as SearchResult, g0 as SearchableItem, g1 as SearchableOption, g2 as SearchableOptionGroup, g3 as SearchableSelect, g4 as SearchableSelectBaseProps, g5 as SearchableSelectMultipleProps, g6 as SearchableSelectProps, g7 as Segmented, g8 as SegmentedOption, g9 as SegmentedProps, ga as SegmentedSize, gb as Select, gc as SelectBaseProps, gd as SelectItem, ge as SelectMultipleProps, gf as SelectOption, gg as SelectOptionGroup, gh as SelectProps, gi as SemanticGroup, gj as SettingRow, gk as SettingRowProps, gl as SeverityTone, go as ShellLanguage, gp as ShellLanguageProvider, gq as ShellLanguageState, gr as ShellPrefsAdapter, gs as ShellPrefsProvider, gt as SidebarActionButton, gu as SidebarActionButtonProps, gv as SidebarGroupLabel, gw as SidebarGroupLabelProps, gx as SidebarLayout, gy as SidebarLayoutProps, gz as SidebarNavGroup, gA as SidebarNavGroupProps, gB as SidebarNavItem, gC as SidebarNavItemProps, gD as Skeleton, gE as SkeletonProps, gF as SkeletonVariant, gG as Slider, gH as SliderProps, gI as SliderSize, gJ as Snippet, gK as SnippetProps, gL as SnippetSize, gM as SnippetVariant, a as SortState, gN as SortableList, gO as SortableListProps, gP as SortableListSpacing, gQ as SpacingRole, gR as SpacingStep, gS as Sparkline, gT as SparklineProps, gU as Stack, gV as StackProps, gW as StaleChunkReloadOptions, gX as StatCard, gY as StatCardProps, gZ as StatTile, g_ as StatTileProps, g$ as Statistic, h0 as StatisticProps, h1 as StatisticSize, h2 as StatisticTone, h3 as StatusBadge, h4 as StatusBadgeProvider, h5 as StatusEmphasis, h6 as StepItem, h7 as Stepper, h8 as StepperProps, h9 as StrokeVariant, ha as SunburstChart, hb as SunburstChartProps, hc as SunburstNode, hd as Switch, he as SwitchProps, hf as SwitchSize, hg as TYPE_SCALE, hh as TabItem, hi as Tabs, hj as TabsProps, hk as TagInput, hl as TagInputOption, hm as TagInputProps, hn as Text, ho as TextLinkField, hp as TextLinkFieldProps, hq as TextProps, hr as TextSize, hs as TextTone, ht as TextWeight, hu as Textarea, hv as TextareaProps, hw as Theme, hx as TileButton, hy as TileButtonProps, hz as TileSize, hA as TimeAgo, hB as TimeAgoProps, hC as TimePicker, hD as TimePickerProps, hE as TimeSeriesChart, hF as TimeSeriesChartProps, hG as TimeSeriesSeries, hH as TimelineMarker, hI as TimelineMarkerKind, hJ as TimelineReport, hK as TimelineScrubProgress, hL as TimelineTrack, hM as TimelineTrackItem, hN as TimelineTrackKind, hO as TimelineTrackPending, hP as TimelineTrackPhase, hQ as TimelineTrackPlayback, hR as TimelineTrackProps, hS as TimelineTrackThumb, hT as Title, hU as TitleLevel, hV as TitleProps, hW as ToastOptions, hX as ToastPlacement, hY as Tooltip, hZ as TooltipProps, h_ as TopNav, h$ as TopNavItem, i0 as TopNavProps, i1 as Tree, i2 as TreeDrop, i3 as TreeEmptySlot, i4 as TreeEmptySlotProps, i5 as TreeGroup, i6 as TreeGroupLabel, i7 as TreeGroupProps, i8 as TreeMove, i9 as TreeProps, ia as TreeRow, ib as TreeRowProps, ic as TreeSeam, id as TreeSeamProps, ie as TreemapChart, ig as TreemapChartProps, ih as TreemapItem, ii as TreemapTile, ij as TypeStep, ik as UseAppUpdateOptions, il as UseContextMenu, im as UseProductionTimelineOpts, io as VERSION, ip as VITE_PRELOAD_ERROR_EVENT, iq as WaterfallChart, ir as WaterfallChartProps, is as WaterfallStep, it as WidthsBar, iu as WidthsBarProps, iv as ZLayer, iw as Z_LAYERS, ix as angleScale, iy as appendKey, iz as applyCorners, iA as applyIconSet, iB as applyThemePrefs, iC as arcPath, iD as areaBetween, iE as areaFrom, iF as autoHighlightIndex, iG as backspace, iH as bandScale, iI as binValues, iJ as budgetState, iK as bumpPath, iL as buttonClasses, iM as calcOverall, iN as calcReportOverall, iO as colorFill, iP as colorSwatchClasses, iQ as columnSharesWidths, iR as confirm, iS as confirmDestructive, iT as curvePath, iU as dashFor, iW as dismissPopups, iX as fillFor, iY as fillId, iZ as fmtSliderDate, i_ as fromDateKey, i$ as glassStyle, j0 as glowId, j1 as groundId, j2 as groupColors, j3 as hexToHsv, j4 as highlightOpacity, j5 as hsvToHex, j6 as iconButtonClasses, j7 as inputClasses, j8 as installStaleChunkReload, j9 as isMac, ja as isSeverityTone, jb as isSpacingStep, jc as isStaleChunkError, je as labelClasses, jf as ladderScale, jg as languageSelectWidth, jh as leavesContextMenuAlone, ji as linearPath, jj as linearScale, jk as logScale, jl as maskId, jm as matchShellLanguage, jn as mediaFileName, jo as monotonePath, jp as niceMax, jq as openGlobalSearch, jr as parseHexColor, js as polygonPoints, jt as popupBounds, ju as prompt, jv as pushRecentSearch, jw as radiusScale, jx as readSavedShellLanguage, jy as registerModalEscapeInterceptor, jz as resolveBrandMarkTreatment, jA as resolveColumnShares, jB as resolveColumnWidths, jC as resolveCorners, jD as resolvePortalBrandAsset, jE as resolveSeriesColor, jF as resolveShellLanguage, jG as resolveTheme, jH as sanitizeRecentSearches, jI as saveShellLanguage, jJ as seriesColor, jK as severityOf, jL as splinePath, jM as squarify, jN as stagger, jO as stepPath, jP as tabButtonId, jQ as tabPanelId, jR as toDateKey, jS as toDayMs, jT as toISODate, jU as toast, jV as useAppUpdate, jW as useClickOutside, jX as useConfirm, jY as useContextMenu, jZ as useDebouncedValue, j_ as useDropdownPosition, j$ as useFocusTrap, k0 as useHighlight, k1 as useIsMobile, k2 as useLocalStoragePrefs, k3 as usePlotWidth, k4 as usePortalBranding, k5 as useProductionTimeline, k6 as useScrollLock, k7 as useShellLanguage, k8 as useShellPrefs, k9 as useStatusLabel, ka as useTheme } from '../index-D5bms_uA.js';
|
|
1
|
+
export { A as ALT, b as ALT_SHIFT_D, c as ALT_SHIFT_E, d as ALT_SHIFT_N, e as APP_UPDATE_POLL_MS, f as Accordion, g as AccordionItem, h as AccordionProps, i as Align, j as AlignmentGrid, k as AlignmentGridProps, l as AlignmentPoint, m as AngleScale, n as AppUpdateBanner, o as AppUpdateBannerProps, p as AttachButton, q as AttachButtonProps, r as AttachmentDropZone, s as AttachmentDropZoneProps, t as AttachmentList, u as AttachmentListProps, v as AuthScreen, w as AuthScreenProps, x as Avatar, y as AvatarGroup, z as AvatarGroupProps, B as AvatarProps, D as AvatarSize, E as AvatarStatus, F as BORDER_WIDTHS, G as BackgroundVariant, H as BandScale, I as Banner, J as BannerEmphasis, K as BannerProps, L as BannerTone, M as BorderRole, N as BoxPlotBox, O as BoxPlotChart, Q as BoxPlotChartProps, R as BrandAssetEditor, T as BrandAssetEditorProps, U as BrandAssetPreview, V as BrandMark, W as BrandMarkProps, X as BrandMarkSlot, Y as BrandMarkSurface, Z as BrandMarkTreatment, _ as BreadcrumbItem, $ as Breadcrumbs, a0 as BreadcrumbsProps, a1 as BudgetBar, a2 as BudgetBarProps, a3 as BudgetState, a4 as Button, a5 as ButtonClassesOptions, a6 as ButtonProps, a7 as ButtonSize, a8 as ButtonVariant, a9 as CHART_INK, aa as CMD_A, ab as CMD_DOT, ac as CMD_ENTER, ad as CMD_K, ae as CMD_S, af as COLUMN_COUNT_MAX, ag as COLUMN_COUNT_WIDTHS, ah as COLUMN_SHARES_EQUAL, ai as COLUMN_SHARE_MIN, aj as CONTROL_HEIGHTS, ak as CORNERS, al as Calendar, am as CalendarMode, an as CalendarProps, ao as Candle, ap as CandlestickChart, aq as CandlestickChartProps, ar as Card, as as CardPadding, at as CardProps, au as CardTone, av as CartesianPlot, aw as CartesianPlotProps, ax as CellStyle, ay as ChartBackgroundVariant, az as ChartBrush, aA as ChartBrushProps, aB as ChartCurve, aC as ChartDefs, aD as ChartDefsProps, aE as ChartDot, aF as ChartDotProps, aG as ChartDotVariant, aH as ChartFillVariant, aI as ChartFrame, aJ as ChartFrameProps, aK as ChartHighlightProvider, aL as ChartLegendEntry, aM as ChartLegendSwatch, aN as ChartRange, aO as ChartReferenceLine, aP as ChartRevealDirection, aQ as ChartSkeleton, aR as ChartSkeletonProps, aS as ChartStatusTone, aT as ChartStrokeVariant, aU as ChartTooltip, aV as ChartTooltipProps, aW as ChartTooltipRow, aX as ChatTemplate, aY as Checkbox, aZ as CheckboxProps, a_ as CheckoutTemplate, a$ as ChordChart, b0 as ChordChartProps, b1 as ColorPicker, b2 as ColorPickerPanel, b3 as ColorPickerPanelProps, b4 as ColorPickerProps, b5 as ColorPreset, b6 as ColorSwatch, b7 as ColorSwatchProps, b8 as ColorSwatchSize, b9 as ColoredBadge, ba as ColoredBadgeProps, bb as ColumnChart, bc as ColumnChartProps, C as ColumnDef, bd as ColumnSeries, be as ColumnShares, bf as ComposerAttachments, bg as ComposerAttachmentsProps, bh as ConfirmProvider, bi as ContainerFillChart, bj as ContainerFillChartProps, bk as ContainerFillItem, bl as ContextMenu, bm as ContextMenuPoint, bn as ContextMenuProps, bo as ContextMenuState, bp as ControlSize, bq as CornerOption, br as Corners, bs as CornersInput, bt as CornersInputProps, bu as CountBadge, bv as CountBadgeProps, bw as CountBadgeTone, bx as Curve, by as DAY_MS, bz as DashboardTemplate, bA as DataTable, bB as DataTableColumn, bC as DataTableColumnGroup, bD as DataTableHeader, bE as DataTablePage, bF as DataTableProps, bG as DataTableRowLink, bH as DataTableRowProps, bI as DatePicker, bJ as DatePickerProps, bK as DateRangePicker, bL as DateRangePickerProps, bM as DateTimePicker, bN as DateTimePickerProps, bO as DescriptionColumns, bP as DescriptionItem, bQ as DescriptionList, bR as DescriptionListProps, bS as Dialog, bT as DialogProps, bU as DialogSize, bV as DisplayChipItem, bW as DisplayChips, bX as DisplayChipsProps, bY as Divider, bZ as DividerProps, b_ as DividerSpacing, b$ as Drawer, c0 as DrawerProps, c1 as DrawerSide, c2 as DrawerSize, c3 as DropdownMenu, c4 as DropdownMenuAlign, c5 as DropdownMenuCheckboxItem, c6 as DropdownMenuDividerItem, c7 as DropdownMenuEntry, c8 as DropdownMenuItem, c9 as DropdownMenuLabelItem, ca as DropdownMenuLinkItem, cb as DropdownMenuProps, cc as DropdownMenuRadioItem, cd as DropdownMenuSide, ce as DropdownPositionOptions, cf as ELEVATION_LEVELS, cg as ENGLISH, ch as ENTER, ci as EditableGrid, cj as EditableGridProps, ck as ElevationLevel, cl as EmailTemplate, cm as EmptyState, cn as EmptyStateProps, co as EmptyValue, cp as EmptyValueProps, cq as ErrorBoundary, cr as ErrorBoundaryProps, cs as ErrorPage, ct as ErrorPageProps, cu as FONT_WEIGHTS, cv as FileIntake, cw as FilePicker, cx as FilePickerProps, cy as FillVariant, cz as FontWeightRole, cA as FormError, cB as FormErrorSummary, cC as FormErrorSummaryProps, cD as FormField, cE as FormFieldProps, cF as FormLayoutPage, cG as FunnelChart, cH as FunnelChartProps, cI as FunnelStage, cJ as GLASS_DIVIDER, cL as GROUP_COLORS, cM as GROUP_COLORS_SOLID, cN as GalleryTemplate, cO as Gap, cP as GlassOptions, cQ as GlobalSearch, cR as GlobalSearchProps, cS as Grid, cT as GridCols, cU as GridColumn, cV as GridProps, cW as HeatmapChart, cX as HeatmapChartProps, cY as HelpCenter, cZ as HelpCenterDoc, c_ as HelpCenterProps, c$ as HexInput, d0 as HistogramBin, d1 as HistogramChart, d2 as HistogramChartProps, d3 as Hsv, d4 as INPUT_BASE, d5 as INPUT_SIZES, d6 as IconButton, d7 as IconButtonClassesOptions, d8 as IconButtonProps, d9 as IconRail, da as IconRailButton, db as IconRailButtonProps, dc as IconRailLabels, dd as IconRailLabelsShown, de as IconRailOrientation, df as IconRailProps, dg as ImageFocusPoint, dh as ImageFocusPointProps, di as Inline, dj as InlineProps, dk as Input, dl as InputNumber, dm as InputNumberProps, dn as InputProps, dp as InputSize, dq as Justify, dr as Kanban, ds as KanbanColumn, dt as KanbanProps, du as Kbd, dv as KbdProps, dw as KbdSize, dx as KbdTone, dy as Label, dz as LabelClassesOptions, dA as LabelProps, dB as LadderScale, dC as LanguagePanel, dD as LanguagePanelProps, dE as LanguageSelect, dF as LanguageSelectProps, dG as LinearScale, dH as LinkFilter, dI as LinkFilterField, dJ as LinkKindChoice, dK as LinkOption, dL as LinkOptionGroup, dM as LinkPicker, dN as LinkPickerFieldProps, dO as LinkPickerProps, dP as LinkPickerWindowProps, dQ as LinkRules, dR as LinkTarget, dS as ListDrop, dT as ListFooter, dU as ListLoadError, dV as ListLoadErrorProps, dW as ListMove, dX as ListRow, dY as ListRowProps, dZ as LoadingSpinner, d_ as LoadingSpinnerProps, d$ as MAX_FRACTION_DIGITS, e0 as MENU_MAX_HEIGHT, e1 as MOD, e2 as MOTION, e3 as MOTION_DURATIONS, e4 as Markdown, e4 as MarkdownLite, e5 as MarkdownLiteProps, e5 as MarkdownProps, e6 as MediaUploadField, e7 as MediaUploadFieldProps, e8 as MediaUploadGrid, e9 as MediaUploadGridItem, ea as MediaUploadGridProps, eb as MenuPos, ec as Meter, ed as MeterProps, ee as MetricBar, ef as MetricBarProps, eg as Milestone, eh as MilestoneKind, ei as MilestoneTimeline, ej as MilestoneTimelineProps, ek as MotionSpeed, em as NEXT_CHUNK_PATH_PREFIX, en as NativeSelect, eo as NiceAxis, ep as NumericKeypad, eq as NumericKeypadProps, er as OVERLAY_OPEN_EVENT, es as POPUP_MAX_WIDTH, et as POST_PRODUCTION_STATUSES, eu as PageHeader, ev as PageHeaderProps, P as PaginatedResponse, ew as Pagination, ex as PaginationProps, ey as PaperclipGlyph, ez as Paragraph, eA as ParagraphProps, eB as PieChart, eC as PieChartProps, eD as PieSegment, eE as PlotGeometry, eF as Point, eG as Popover, eH as PopoverAlign, eI as PopoverProps, eJ as PopoverRenderProps, eK as PopoverSide, eL as PopupMenu, eM as PopupMenuDivider, eN as PopupMenuItem, eO as PopupMenuItemProps, eP as PopupMenuLabel, eQ as PopupMenuProps, eR as PopupSubmenu, eS as PopupSubmenuProps, eT as PortalBrandingContextValue, eU as PortalBrandingProvider, eV as PortalBrandingProviderProps, eW as ProductionTimeline, eX as ProductionTimelineProps, eY as ProductionTimelineSnapshot, eZ as ProgressItem, e_ as PublicPortal, e$ as PublicPortalBranding, f0 as RADAR_SERIES_CAP, f1 as RADIUS_ROLES, f2 as ROW_HEIGHTS, f3 as RadarAxis, f4 as RadarChart, f5 as RadarChartProps, f6 as RadarSeries, f7 as RadialBarChart, f8 as RadialBarChartProps, f9 as RadialBarRow, fa as Radio, fb as RadioGroup, fc as RadioGroupOption, fd as RadioGroupOrientation, fe as RadioGroupProps, ff as RadioProps, fg as RadiusRole, fh as Range, fi as RangeChart, fj as RangeChartProps, fk as RangeRow, fl as RankedBars, fm as RankedBarsProps, fn as RankedBarsRow, fo as ResizeHandle, fp as ResizeHandleOrientation, fq as ResizeHandleProps, fr as ResizeHandleSide, fs as ResizeHandleStackSide, ft as ResolvedPortalBrandAsset, fu as Result, fv as ResultProps, fw as ResultStatus, fx as RevealDirection, fy as SCATTER_SERIES_CAP, fz as SERIES_SLOT_COUNT, fA as SERIES_VARS, fB as SHELL_LANGUAGE_STORAGE_KEY, fC as SHIFT, fD as SPACING_ROLES, fE as SPACING_SCALE, fF as STAGES, fG as STALE_CHUNK_RELOAD_COOLDOWN_MS, fH as STALE_CHUNK_RELOAD_KEY, fI as STATUS_VARS, fJ as SankeyChart, fK as SankeyChartProps, fL as SankeyLink, fM as SankeyNode, fN as ScatterChart, fO as ScatterChartProps, fP as ScatterPoint, fQ as ScatterSeries, S as SearchConfig, fR as SearchListRoute, fS as SearchProvider, fT as SearchQuickAction, fU as SearchResponse, fV as SearchResult, fW as SearchableItem, fX as SearchableOption, fY as SearchableOptionGroup, fZ as SearchableSelect, f_ as SearchableSelectBaseProps, f$ as SearchableSelectMultipleProps, g0 as SearchableSelectProps, g1 as Segmented, g2 as SegmentedOption, g3 as SegmentedProps, g4 as SegmentedSize, g5 as Select, g6 as SelectBaseProps, g7 as SelectItem, g8 as SelectMultipleProps, g9 as SelectOption, ga as SelectOptionGroup, gb as SelectProps, gc as SemanticGroup, gd as SeriesSlots, ge as SettingRow, gf as SettingRowProps, gg as SeverityTone, gj as ShellLanguage, gk as ShellLanguageProvider, gl as ShellLanguageState, gm as ShellPrefsAdapter, gn as ShellPrefsProvider, go as SidebarActionButton, gp as SidebarActionButtonProps, gq as SidebarGroupLabel, gr as SidebarGroupLabelProps, gs as SidebarLayout, gt as SidebarLayoutProps, gu as SidebarNavGroup, gv as SidebarNavGroupProps, gw as SidebarNavItem, gx as SidebarNavItemProps, gy as Skeleton, gz as SkeletonProps, gA as SkeletonVariant, gB as Slider, gC as SliderProps, gD as SliderSize, gE as Snippet, gF as SnippetProps, gG as SnippetSize, gH as SnippetVariant, a as SortState, gI as SortableList, gJ as SortableListProps, gK as SortableListSpacing, gL as SpacingRole, gM as SpacingStep, gN as Sparkline, gO as SparklineProps, gP as Stack, gQ as StackProps, gR as StaleChunkReloadOptions, gS as StatCard, gT as StatCardProps, gU as StatTile, gV as StatTileProps, gW as Statistic, gX as StatisticProps, gY as StatisticSize, gZ as StatisticTone, g_ as StatusBadge, g$ as StatusBadgeProvider, h0 as StatusEmphasis, h1 as StepItem, h2 as Stepper, h3 as StepperProps, h4 as StrokeVariant, h5 as SunburstChart, h6 as SunburstChartProps, h7 as SunburstNode, h8 as Switch, h9 as SwitchProps, ha as SwitchSize, hb as TYPE_SCALE, hc as TabItem, hd as Tabs, he as TabsProps, hf as TagInput, hg as TagInputOption, hh as TagInputProps, hi as TagInputTone, hj as Text, hk as TextLinkField, hl as TextLinkFieldProps, hm as TextProps, hn as TextSize, ho as TextTone, hp as TextWeight, hq as Textarea, hr as TextareaProps, hs as Theme, ht as TileButton, hu as TileButtonProps, hv as TileSize, hw as TimeAgo, hx as TimeAgoProps, hy as TimePicker, hz as TimePickerProps, hA as TimeSeriesChart, hB as TimeSeriesChartProps, hC as TimeSeriesSeries, hD as TimelineMarker, hE as TimelineMarkerKind, hF as TimelineReport, hG as TimelineScrubProgress, hH as TimelineTrack, hI as TimelineTrackItem, hJ as TimelineTrackKind, hK as TimelineTrackPending, hL as TimelineTrackPhase, hM as TimelineTrackPlayback, hN as TimelineTrackProps, hO as TimelineTrackThumb, hP as Title, hQ as TitleLevel, hR as TitleProps, hS as ToastOptions, hT as ToastPlacement, hU as Tooltip, hV as TooltipProps, hW as TopNav, hX as TopNavItem, hY as TopNavProps, hZ as Tree, h_ as TreeDrop, h$ as TreeEmptySlot, i0 as TreeEmptySlotProps, i1 as TreeGroup, i2 as TreeGroupLabel, i3 as TreeGroupProps, i4 as TreeMove, i5 as TreeProps, i6 as TreeRow, i7 as TreeRowProps, i8 as TreeSeam, i9 as TreeSeamProps, ia as TreemapChart, ib as TreemapChartProps, ic as TreemapItem, id as TreemapTile, ie as TypeStep, ig as UseAppUpdateOptions, ih as UseContextMenu, ii as UseProductionTimelineOpts, ij as VERSION, ik as VITE_PRELOAD_ERROR_EVENT, il as WaterfallChart, im as WaterfallChartProps, io as WaterfallStep, ip as WidthsBar, iq as WidthsBarProps, ir as ZLayer, is as Z_LAYERS, it as angleScale, iu as appendKey, iv as applyCorners, iw as applyIconSet, ix as applyThemePrefs, iy as arcPath, iz as areaBetween, iA as areaFrom, iB as assignSeriesSlots, iC as autoHighlightIndex, iD as backspace, iE as bandScale, iF as binValues, iG as budgetState, iH as bumpPath, iI as buttonClasses, iJ as calcOverall, iK as calcReportOverall, iL as colorFill, iM as colorSwatchClasses, iN as columnSharesWidths, iO as confirm, iP as confirmDestructive, iQ as curvePath, iR as dashFor, iT as dismissPopups, iU as fillFor, iV as fillId, iW as fmtSliderDate, iX as fromDateKey, iY as glassStyle, iZ as glowId, i_ as groundId, i$ as groupColors, j0 as hexToHsv, j1 as highlightOpacity, j2 as hsvToHex, j3 as iconButtonClasses, j4 as inputClasses, j5 as installStaleChunkReload, j6 as isMac, j7 as isSeverityTone, j8 as isSpacingStep, j9 as isStaleChunkError, jb as labelClasses, jc as ladderScale, jd as languageSelectWidth, je as leavesContextMenuAlone, jf as linearPath, jg as linearScale, jh as logScale, ji as maskId, jj as matchShellLanguage, jk as mediaFileName, jl as monotonePath, jm as niceAxis, jn as niceMax, jo as openGlobalSearch, jp as parseHexColor, jq as polygonPoints, jr as popupBounds, js as prompt, jt as pushRecentSearch, ju as radiusScale, jv as readSavedShellLanguage, jw as registerModalEscapeInterceptor, jx as resolveBrandMarkTreatment, jy as resolveColumnShares, jz as resolveColumnWidths, jA as resolveCorners, jB as resolvePortalBrandAsset, jC as resolveSeriesColor, jD as resolveSeriesColorWithin, jE as resolveShellLanguage, jF as resolveTheme, jG as sanitizeRecentSearches, jH as saveShellLanguage, jI as seriesColor, jJ as severityOf, jK as splinePath, jL as squarify, jM as stagger, jN as stepPath, jO as tabButtonId, jP as tabPanelId, jQ as toDateKey, jR as toDayMs, jS as toISODate, jT as toast, jU as toggleSeriesSlot, jV as useAppUpdate, jW as useClickOutside, jX as useConfirm, jY as useContextMenu, jZ as useDebouncedValue, j_ as useDropdownPosition, j$ as useFocusTrap, k0 as useHighlight, k1 as useIsMobile, k2 as useLocalStoragePrefs, k3 as usePlotWidth, k4 as usePortalBranding, k5 as useProductionTimeline, k6 as useScrollLock, k7 as useShellLanguage, k8 as useShellPrefs, k9 as useStatusLabel, ka as useTheme } from '../index-BkBsXpfV.js';
|
|
2
2
|
export { C as CurrencyFormat, D as DATE_FORMAT_OPTIONS, a as DateFormatKey, E as EMPTY_VALUE, F as FOCAL_DEFAULT, b as FOCAL_NUDGE_COARSE, c as FOCAL_NUDGE_STEP, d as FocalPoint, e as FormatDateOptions, f as FormatMoneyOptions, T as TZ_AUTO, g as TimeAgoOptions, h as currencyDecimals, i as currencySymbol, j as firstDayOfWeek, k as focalFromRect, l as formatBytes, m as formatDate, n as formatDateTime, o as formatFocal, p as formatMoney, q as formatTime, r as getUserDateFormat, s as getUserTimezone, t as nudgeFocal, u as parseFocal, v as setCurrencyFormats, w as setUserDateFormat, x as setUserTimezone, y as syncTimezoneFromProfile, z as timeAgo } from '../index-CHufemKB.js';
|
|
3
3
|
export { isSafeLinkHref } from '../markup/index.js';
|
|
4
4
|
export { FileIntakeAlert, FileIntakeLimits, FileIntakeOptions, FileRejection, FileRejectionReason, acceptsFile, useFileIntake } from '../file-intake/index.js';
|
|
5
5
|
export { ICON_NAMES, Icon, IconName, IconProps, IconTone, isIconName } from '../icons/index.js';
|
|
6
6
|
export { a as IconDrawing, I as IconSet, b as activeIconSet, i as iconSets, c as iconsVersion, r as registerIconSet, d as registerIcons, e as resolveIcon, s as setDefaultIconSet, f as setIconSet, g as subscribeIcons } from '../registry-Dw6QO2Ch.js';
|
|
7
|
-
export { D as DEFAULT_SHELL_STRINGS, a as ShellStrings, S as ShellStringsOverride, b as ShellStringsProvider, u as useShellLocale, c as useShellStrings } from '../strings-
|
|
7
|
+
export { D as DEFAULT_SHELL_STRINGS, a as ShellStrings, S as ShellStringsOverride, b as ShellStringsProvider, u as useShellLocale, c as useShellStrings } from '../strings-BQtq9300.js';
|
|
8
8
|
import 'react';
|
|
9
9
|
import 'react/jsx-runtime';
|
package/dist/ui/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export{APP_UPDATE_POLL_MS,Accordion,AlignmentGrid,AppUpdateBanner,AttachButton,AttachmentDropZone,AttachmentList,AuthScreen,Avatar,AvatarGroup,BORDER_WIDTHS,Banner,
|
|
2
|
+
export{APP_UPDATE_POLL_MS,Accordion,AlignmentGrid,AppUpdateBanner,AttachButton,AttachmentDropZone,AttachmentList,AuthScreen,Avatar,AvatarGroup,BORDER_WIDTHS,Banner,BoxPlotChart,BrandAssetEditor,BudgetBar,CHART_INK,COLUMN_COUNT_MAX,COLUMN_COUNT_WIDTHS,COLUMN_SHARES_EQUAL,COLUMN_SHARE_MIN,CONTROL_HEIGHTS,CORNERS,Calendar,CandlestickChart,Card,CartesianPlot,ChartBrush,ChartDefs,ChartDot,ChartFrame,ChartHighlightProvider,ChartSkeleton,ChartTooltip,ChatTemplate,Checkbox_default as Checkbox,CheckoutTemplate,ChordChart,ColorPicker,ColorPickerPanel,ColorSwatch,ColoredBadge,ColumnChart,ComposerAttachments,ContainerFillChart,ContextMenu,CornersInput,CountBadge,DAY_MS,DashboardTemplate,DataTable,DataTablePage,DatePicker_default as DatePicker,DateRangePicker,DateTimePicker_default as DateTimePicker,DescriptionList,DisplayChips,Divider,Drawer,DropdownMenu,ELEVATION_LEVELS,EmailTemplate,EmptyState,EmptyValue,ErrorBoundary,ErrorPage,FONT_WEIGHTS,FilePicker_default as FilePicker,FormErrorSummary,FormField,FormLayoutPage,FunnelChart,GROUP_COLORS,GROUP_COLORS_SOLID,GalleryTemplate,Grid,HeatmapChart,HelpCenter,HexInput,HistogramChart,INPUT_BASE,INPUT_SIZES,IconButton_default as IconButton,IconRail,IconRailButton,ImageFocusPoint,Inline,Input_default as Input,InputNumber_default as InputNumber,Kanban,Label,LanguagePanel,LanguageSelect,LinkPicker,ListFooter,ListLoadError,ListRow,MAX_FRACTION_DIGITS,MOTION,MOTION_DURATIONS,Markdown,Markdown as MarkdownLite,MediaUploadField,MediaUploadGrid,Meter,MetricBar,MilestoneTimeline,NativeSelect,NumericKeypad,POST_PRODUCTION_STATUSES,PageHeader,Pagination,PaperclipGlyph,Paragraph,PieChart,Popover,PortalBrandingProvider,ProductionTimeline,RADAR_SERIES_CAP,RADIUS_ROLES,ROW_HEIGHTS,RadarChart,RadialBarChart,Radio_default as Radio,RadioGroup,RangeChart,RankedBars,SCATTER_SERIES_CAP,SERIES_SLOT_COUNT,SERIES_VARS,SPACING_ROLES,SPACING_SCALE,STAGES,STATUS_VARS,SankeyChart,ScatterChart,SearchableSelect,Segmented,Select_default as Select,SettingRow,SidebarActionButton,SidebarGroupLabel,SidebarNavGroup,SidebarNavItem,Skeleton,Slider,Snippet,SortableList,Sparkline,Stack,StatCard,StatTile,Statistic,StatusBadge,StatusBadgeProvider,Stepper,SunburstChart,Switch_default as Switch,TYPE_SCALE,Tabs,TagInput,Text,TextLinkField,Textarea_default as Textarea,TileButton_default as TileButton,TimeAgo,TimePicker_default as TimePicker,TimeSeriesChart,TimelineTrack,Title,TopNav,Tree,TreeEmptySlot,TreeGroup,TreeGroupLabel,TreeRow,TreeSeam,TreemapChart,WaterfallChart,WidthsBar,angleScale,appendKey,applyCorners,applyIconSet,applyThemePrefs,arcPath,areaBetween,areaFrom,assignSeriesSlots,autoHighlightIndex,backspace,bandScale,binValues,budgetState,bumpPath,calcOverall,calcReportOverall,colorFill,colorSwatchClasses,columnSharesWidths,curvePath,dashFor,fillFor,fillId,fmtSliderDate,fromKey as fromDateKey,glowId,groundId,groupColors,hexToHsv,highlightOpacity,hsvToHex,inputClasses,isSeverityTone,isSpacingStep,labelClasses,ladderScale,languageSelectWidth,linearPath,linearScale,logScale,maskId,mediaFileName,monotonePath,niceAxis,niceMax,parseHexColor,polygonPoints,radiusScale,resolveColumnShares,resolveColumnWidths,resolveCorners,resolvePortalBrandAsset,resolveSeriesColor,resolveSeriesColorWithin,resolveTheme,seriesColor,severityOf,splinePath,squarify,stagger,stepPath,tabButtonId,tabPanelId,toKey as toDateKey,toDayMs,toISODate,toggleSeriesSlot,useAppUpdate,useClickOutside,useContextMenu,useDebouncedValue,useHighlight,usePlotWidth,usePortalBranding,useProductionTimeline,useStatusLabel,useTheme}from"../chunk-TCYS67ND.js";export{Breadcrumbs}from"../chunk-M4MCXII7.js";export{ResizeHandle,SidebarLayout}from"../chunk-43XFZY4K.js";export{BrandMark,GlobalSearch,openGlobalSearch,pushRecent as pushRecentSearch,resolveBrandMarkTreatment,sanitizeRecent as sanitizeRecentSearches}from"../chunk-QUVE5JZZ.js";export{EditableGrid}from"../chunk-R2TPTM4O.js";import"../chunk-BR22X7E5.js";export{isSafeLinkHref}from"../chunk-PJPK2ADX.js";export{ENGLISH,SHELL_LANGUAGE_STORAGE_KEY,ShellLanguageProvider,matchShellLanguage,readSavedShellLanguage,resolveShellLanguage,saveShellLanguage,useShellLanguage}from"../chunk-RBKIYZ7H.js";export{toast_default as toast}from"../chunk-RUHUTZN4.js";export{ALT,ALT_SHIFT_D,ALT_SHIFT_E,ALT_SHIFT_N,CMD_A,CMD_DOT,CMD_ENTER,CMD_K,CMD_S,ENTER,Kbd,LoadingSpinner,MOD,NEXT_CHUNK_PATH_PREFIX,Result,SHIFT,STALE_CHUNK_RELOAD_COOLDOWN_MS,STALE_CHUNK_RELOAD_KEY,ShellPrefsProvider,VITE_PRELOAD_ERROR_EVENT,installStaleChunkReload,isMac,isStaleChunkError,useIsMobile,useLocalStoragePrefs,useShellPrefs}from"../chunk-G4CTTSAR.js";import"../chunk-5A7MWTXX.js";export{Button_default as Button,MENU_MAX_HEIGHT,POPUP_MAX_WIDTH,Tooltip,popupBounds,useDropdownPosition}from"../chunk-PT4Z3KIA.js";export{ConfirmProvider,Dialog,confirm,confirmDestructive,prompt,useConfirm,useFocusTrap,useScrollLock}from"../chunk-MSGBGLGI.js";export{PopupMenu,PopupMenuDivider,PopupMenuItem,PopupMenuLabel,PopupSubmenu,leavesContextMenuAlone}from"../chunk-4JGNJYVL.js";import"../chunk-UVBK6YSR.js";export{buttonClasses,iconButtonClasses}from"../chunk-2ALIPI3D.js";export{GLASS_DIVIDER,glassStyle}from"../chunk-7IQ3B77H.js";export{OVERLAY_OPEN_EVENT,Z_LAYERS,dismissPopups,registerModalEscapeInterceptor}from"../chunk-FIEA5CGB.js";import"../chunk-D65T4H6J.js";export{VERSION}from"../chunk-BUGGBB5J.js";import"../chunk-KNUR2UEG.js";export{FileIntakeAlert,acceptsFile,useFileIntake}from"../chunk-M4TRVJTO.js";export{DEFAULT_SHELL_STRINGS,ShellStringsProvider,useShellLocale,useShellStrings}from"../chunk-QRCDQPJA.js";import"../chunk-C3QOHMR6.js";export{FOCAL_DEFAULT,FOCAL_NUDGE_COARSE,FOCAL_NUDGE_STEP,focalFromRect,formatFocal,nudgeFocal,parseFocal}from"../chunk-AP2QEJXQ.js";export{DATE_FORMAT_OPTIONS,EMPTY_VALUE,TZ_AUTO,currencyDecimals,currencySymbol,firstDayOfWeek,formatBytes,formatDate,formatDateTime,formatMoney,formatTime,getUserDateFormat,getUserTimezone,setCurrencyFormats,setUserDateFormat,setUserTimezone,syncTimezoneFromProfile,timeAgo}from"../chunk-W32SKK3D.js";export{ICON_NAMES,isIconName}from"../chunk-WOEFPBQF.js";export{Icon,activeIconSet,iconSets,iconsVersion,registerIconSet,registerIcons,resolveIcon,setDefaultIconSet,setIconSet,subscribeIcons}from"../chunk-CJHT4VTF.js";
|
package/dist/ui.css
CHANGED
|
@@ -257,6 +257,12 @@
|
|
|
257
257
|
--control-height-sm: 1.5rem;
|
|
258
258
|
--control-height-md: 2rem;
|
|
259
259
|
--control-height-lg: 2.5rem;
|
|
260
|
+
|
|
261
|
+
/* Row heights (Lewis, 2026-10-13): menu, list and sidebar rows, and the
|
|
262
|
+
main window bar. An exception to the control ladder; controls stay on
|
|
263
|
+
it. */
|
|
264
|
+
--row-height-menu: 2.25rem;
|
|
265
|
+
--row-height-window-bar: 2.75rem;
|
|
260
266
|
}
|
|
261
267
|
|
|
262
268
|
/* The default `utils/glass.ts` already assumes at `getMenuOpacity()`'s
|
|
@@ -816,22 +822,6 @@ html.rosh-reduce-transparency *::after {
|
|
|
816
822
|
/* SidebarLayout's resize handle under the pointer, when no custom accent is
|
|
817
823
|
set — the custom accent's `--accent-500` still wins, read where it is set. */
|
|
818
824
|
--rosh-resize-handle: #3b82f6;
|
|
819
|
-
|
|
820
|
-
/* DonutChart's default segment colours, in assignment order, and its track.
|
|
821
|
-
NOT the `--viz-series-*` palette above: the donut predates it and its
|
|
822
|
-
callers have been showing these hues, so this is the same eight in the
|
|
823
|
-
same order. A host that wants one palette across every chart points these
|
|
824
|
-
at the series tokens. The track is a translucent slate, read over either
|
|
825
|
-
theme, which is why nothing here has a dark step. */
|
|
826
|
-
--rosh-donut-1: #3b82f6;
|
|
827
|
-
--rosh-donut-2: #22c55e;
|
|
828
|
-
--rosh-donut-3: #f59e0b;
|
|
829
|
-
--rosh-donut-4: #ef4444;
|
|
830
|
-
--rosh-donut-5: #6366f1;
|
|
831
|
-
--rosh-donut-6: #14b8a6;
|
|
832
|
-
--rosh-donut-7: #a855f7;
|
|
833
|
-
--rosh-donut-8: #64748b;
|
|
834
|
-
--rosh-donut-track: rgba(148, 163, 184, 0.25);
|
|
835
825
|
}
|
|
836
826
|
|
|
837
827
|
/* ── Kit colours, dark ──────────────────────────────────────────────────────
|
|
@@ -1530,11 +1520,11 @@ html.rosh-reduce-transparency *::after {
|
|
|
1530
1520
|
}
|
|
1531
1521
|
.rosh-tl-ico { flex: none; width: 15px; height: 15px; align-self: center; margin-right: -3px; }
|
|
1532
1522
|
.rosh-tl-ico svg { width: 15px; height: 15px; }
|
|
1533
|
-
.rosh-tl-title { margin: 0; font-size:
|
|
1523
|
+
.rosh-tl-title { margin: 0; font-size: var(--text-sm); font-weight: 600; letter-spacing: -0.005em; }
|
|
1534
1524
|
/* `min-width: 0` is what lets a long meta line WRAP rather than push the
|
|
1535
1525
|
actions onto a row of their own: a flex item's default minimum is its
|
|
1536
1526
|
content, and five facts about a production order are wider than a card. */
|
|
1537
|
-
.rosh-tl-meta { margin: 0; font-size:
|
|
1527
|
+
.rosh-tl-meta { margin: 0; font-size: var(--text-xs); font-variant-numeric: tabular-nums; min-width: 0; }
|
|
1538
1528
|
.rosh-tl-meta b { font-weight: 500; }
|
|
1539
1529
|
.rosh-tl-head-actions {
|
|
1540
1530
|
display: inline-flex; align-items: center; gap: 10px; margin-left: auto; flex: none;
|
|
@@ -1545,7 +1535,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1545
1535
|
.rosh-tl-play {
|
|
1546
1536
|
display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px 0 10px;
|
|
1547
1537
|
border-radius: 14px; cursor: pointer; white-space: nowrap;
|
|
1548
|
-
font: inherit; font-size:
|
|
1538
|
+
font: inherit; font-size: var(--text-xs); font-weight: 500;
|
|
1549
1539
|
background: var(--surface-raised); border-width: 1px; border-style: solid;
|
|
1550
1540
|
transition: color 160ms ease-out, border-color 160ms ease-out;
|
|
1551
1541
|
}
|
|
@@ -1556,12 +1546,12 @@ html.rosh-reduce-transparency *::after {
|
|
|
1556
1546
|
margin-top: 14px; padding-top: 12px;
|
|
1557
1547
|
border-top-width: 1px; border-top-style: solid;
|
|
1558
1548
|
}
|
|
1559
|
-
.rosh-tl-status { margin: 0; font-size:
|
|
1549
|
+
.rosh-tl-status { margin: 0; font-size: var(--text-xs); font-variant-numeric: tabular-nums; }
|
|
1560
1550
|
.rosh-tl-legend { display: flex; gap: 6px; flex-wrap: wrap; margin-left: auto; }
|
|
1561
1551
|
.rosh-tl-legend > span {
|
|
1562
1552
|
display: inline-flex; align-items: center; gap: 6px; height: 22px; padding: 0 9px 0 7px;
|
|
1563
1553
|
border-width: 1px; border-style: solid; border-radius: 11px;
|
|
1564
|
-
font-size:
|
|
1554
|
+
font-size: var(--text-2xs); background: var(--surface-raised);
|
|
1565
1555
|
}
|
|
1566
1556
|
/* The legend's glyphs are the track's glyphs at legend size, so a chip can
|
|
1567
1557
|
never describe a shape the rail no longer draws. */
|
|
@@ -1586,7 +1576,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1586
1576
|
.rosh-tl-edge {
|
|
1587
1577
|
position: absolute; white-space: nowrap;
|
|
1588
1578
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1589
|
-
font-size:
|
|
1579
|
+
font-size: var(--text-2xs); line-height: 1.3; color: var(--ink-muted);
|
|
1590
1580
|
}
|
|
1591
1581
|
.rosh-tl-edge.is-end { transform: translateX(-100%); }
|
|
1592
1582
|
|
|
@@ -1623,7 +1613,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1623
1613
|
.rosh-tl-tick.is-week { opacity: 0.5; }
|
|
1624
1614
|
.rosh-tl-month, .rosh-tl-rulercut span {
|
|
1625
1615
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1626
|
-
font-size:
|
|
1616
|
+
font-size: var(--text-2xs); line-height: 1.1; color: var(--ink-faint);
|
|
1627
1617
|
}
|
|
1628
1618
|
.rosh-tl-month { position: absolute; white-space: nowrap; }
|
|
1629
1619
|
.rosh-tl-rulercut {
|
|
@@ -1640,7 +1630,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1640
1630
|
}
|
|
1641
1631
|
.rosh-tl-todaytag {
|
|
1642
1632
|
position: absolute; white-space: nowrap; border-radius: 5px; padding: 1px 6px;
|
|
1643
|
-
font-size:
|
|
1633
|
+
font-size: var(--text-2xs); font-weight: 500; letter-spacing: 0.02em;
|
|
1644
1634
|
color: var(--ink-muted); background: var(--surface-raised);
|
|
1645
1635
|
}
|
|
1646
1636
|
|
|
@@ -1699,7 +1689,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1699
1689
|
text over the rail is a mark's caption, and the undated things are a dashed
|
|
1700
1690
|
cap at the end of a dashed tail. */
|
|
1701
1691
|
.rosh-tl-flank {
|
|
1702
|
-
flex: none; white-space: nowrap; font-size:
|
|
1692
|
+
flex: none; white-space: nowrap; font-size: var(--text-2xs); font-weight: 500; line-height: 1;
|
|
1703
1693
|
color: var(--ink-muted);
|
|
1704
1694
|
}
|
|
1705
1695
|
/* The caption over a mark — `v3` over a revision. Mono, like every other
|
|
@@ -1707,7 +1697,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1707
1697
|
.rosh-tl-caption {
|
|
1708
1698
|
position: absolute; transform: translateX(-50%); white-space: nowrap; pointer-events: none;
|
|
1709
1699
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1710
|
-
font-size:
|
|
1700
|
+
font-size: var(--text-2xs); line-height: 1.1; color: var(--ink-muted);
|
|
1711
1701
|
}
|
|
1712
1702
|
/* The tail: from the end of the axis to the cap. Dashed, because it is not
|
|
1713
1703
|
time — it is the distance to a date nobody has. */
|
|
@@ -1750,7 +1740,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1750
1740
|
.rosh-tl-count {
|
|
1751
1741
|
position: absolute; transform: translate(9px, -14px);
|
|
1752
1742
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1753
|
-
font-size:
|
|
1743
|
+
font-size: var(--text-3xs); font-weight: 600; line-height: 1; letter-spacing: -0.02em;
|
|
1754
1744
|
color: var(--tl-accent); pointer-events: none;
|
|
1755
1745
|
padding: 1px 2px; border-radius: 4px; background: var(--surface-sunken);
|
|
1756
1746
|
}
|
|
@@ -1762,7 +1752,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1762
1752
|
}
|
|
1763
1753
|
.rosh-tl-foldnum {
|
|
1764
1754
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1765
|
-
font-size:
|
|
1755
|
+
font-size: var(--text-3xs); font-weight: 600; line-height: 1; letter-spacing: -0.02em;
|
|
1766
1756
|
}
|
|
1767
1757
|
.rosh-tl-node.is-active { box-shadow: 0 0 0 2px var(--surface-sunken), 0 0 0 5px var(--line); }
|
|
1768
1758
|
/* The flash as the scrubber's thumb crosses a mark. It rides the same 160ms
|
|
@@ -1791,12 +1781,12 @@ html.rosh-reduce-transparency *::after {
|
|
|
1791
1781
|
background: var(--surface-raised); border: 1px solid var(--line);
|
|
1792
1782
|
}
|
|
1793
1783
|
.rosh-tl-name {
|
|
1794
|
-
font-size:
|
|
1784
|
+
font-size: var(--text-2xs); font-weight: 500; line-height: 1.25; color: var(--ink-strong);
|
|
1795
1785
|
transition: color 160ms cubic-bezier(0, 0, 0.2, 1);
|
|
1796
1786
|
}
|
|
1797
1787
|
.rosh-tl-date, .rosh-tl-detail {
|
|
1798
1788
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1799
|
-
font-size:
|
|
1789
|
+
font-size: var(--text-2xs); line-height: 1.3; color: var(--ink-faint);
|
|
1800
1790
|
}
|
|
1801
1791
|
.rosh-tl-detail { font-family: inherit; color: var(--ink-muted); margin-top: 2px; }
|
|
1802
1792
|
.rosh-tl-label.is-current .rosh-tl-name { font-weight: 600; }
|
|
@@ -1815,7 +1805,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1815
1805
|
}
|
|
1816
1806
|
.rosh-tl-phase-label {
|
|
1817
1807
|
position: absolute; transform: translateX(-50%); white-space: nowrap;
|
|
1818
|
-
font-size:
|
|
1808
|
+
font-size: var(--text-3xs); line-height: 1.2; pointer-events: none;
|
|
1819
1809
|
}
|
|
1820
1810
|
|
|
1821
1811
|
.rosh-tl-lead, .rosh-tl-cspan {
|
|
@@ -1826,7 +1816,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1826
1816
|
.rosh-tl-pill {
|
|
1827
1817
|
position: absolute; display: inline-flex; align-items: center; gap: 4px;
|
|
1828
1818
|
height: 19px; padding: 0 7px; border-radius: 10px; cursor: pointer; white-space: nowrap;
|
|
1829
|
-
font: inherit; font-size:
|
|
1819
|
+
font: inherit; font-size: var(--text-2xs); font-weight: 500;
|
|
1830
1820
|
color: var(--ink); background: var(--surface); border: 1px solid currentColor;
|
|
1831
1821
|
transition: box-shadow 160ms cubic-bezier(0, 0, 0.2, 1);
|
|
1832
1822
|
}
|
|
@@ -1853,30 +1843,30 @@ html.rosh-reduce-transparency *::after {
|
|
|
1853
1843
|
.rosh-tl-bubble.is-preview { max-width: 280px; min-width: 180px; }
|
|
1854
1844
|
.rosh-tl-preview {
|
|
1855
1845
|
display: flex; flex-direction: column; gap: 3px;
|
|
1856
|
-
margin-top: 5px; font-size:
|
|
1846
|
+
margin-top: 5px; font-size: var(--text-2xs); color: var(--ink-muted);
|
|
1857
1847
|
}
|
|
1858
1848
|
/* The way out of the popover and into the thing it is previewing. */
|
|
1859
1849
|
.rosh-tl-bubble-open {
|
|
1860
1850
|
margin-top: 6px; padding: 5px 0 0; width: 100%; text-align: left; cursor: pointer;
|
|
1861
1851
|
background: none; border: 0; border-top-width: 1px; border-top-style: solid;
|
|
1862
1852
|
border-top-color: var(--line);
|
|
1863
|
-
font: inherit; font-size:
|
|
1853
|
+
font: inherit; font-size: var(--text-2xs); font-weight: 500;
|
|
1864
1854
|
}
|
|
1865
1855
|
.rosh-tl-bubble-open:hover { text-decoration: underline; }
|
|
1866
1856
|
.rosh-tl-bubble-open:focus-visible:not(.rosh-host-focus *) { outline: 2px solid var(--tl-focus); outline-offset: 2px; }
|
|
1867
1857
|
|
|
1868
1858
|
.rosh-tl-popover-head {
|
|
1869
|
-
margin: 0 0 5px; font-size:
|
|
1859
|
+
margin: 0 0 5px; font-size: var(--text-3xs); font-weight: 500; letter-spacing: 0.06em;
|
|
1870
1860
|
text-transform: uppercase; color: var(--ink-faint);
|
|
1871
1861
|
}
|
|
1872
1862
|
.rosh-tl-popover ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 3px; }
|
|
1873
|
-
.rosh-tl-popover li { display: flex; gap: 8px; justify-content: space-between; font-size:
|
|
1863
|
+
.rosh-tl-popover li { display: flex; gap: 8px; justify-content: space-between; font-size: var(--text-2xs); }
|
|
1874
1864
|
/* What a FOLD says, which is the same list plus each member's own card: a run
|
|
1875
1865
|
that is all one date can never be opened, so this is the only place those
|
|
1876
1866
|
members exist. A column, because a preview under a row is a paragraph and not
|
|
1877
1867
|
a third column. */
|
|
1878
1868
|
.rosh-tl-fold-list ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
|
|
1879
|
-
.rosh-tl-fold-list li { display: flex; flex-direction: column; font-size:
|
|
1869
|
+
.rosh-tl-fold-list li { display: flex; flex-direction: column; font-size: var(--text-2xs); }
|
|
1880
1870
|
.rosh-tl-foldrow { display: flex; gap: 8px; justify-content: space-between; margin: 0; }
|
|
1881
1871
|
.rosh-tl-fold-list .rosh-tl-preview { margin-top: 2px; }
|
|
1882
1872
|
|
|
@@ -1915,7 +1905,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1915
1905
|
reads as the link it is. */
|
|
1916
1906
|
.rosh-tl-open {
|
|
1917
1907
|
padding: 0; border: 0; background: none; cursor: pointer; text-align: left;
|
|
1918
|
-
font: inherit; font-size:
|
|
1908
|
+
font: inherit; font-size: var(--text-2xs); font-weight: 500; line-height: 1.25;
|
|
1919
1909
|
}
|
|
1920
1910
|
.rosh-tl-open:hover { text-decoration: underline; }
|
|
1921
1911
|
/* The radius shapes whichever outline is drawn, the host's included, so it is
|
|
@@ -1928,7 +1918,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1928
1918
|
position: absolute; transform: translateX(-50%); z-index: 5; white-space: nowrap;
|
|
1929
1919
|
transition: left 120ms cubic-bezier(0.22, 1, 0.36, 1);
|
|
1930
1920
|
font-family: var(--font-mono); font-variant-numeric: tabular-nums;
|
|
1931
|
-
font-size:
|
|
1921
|
+
font-size: var(--text-2xs); font-weight: 500; padding: 3px 8px; border-radius: 7px;
|
|
1932
1922
|
background: var(--ink-strongest); color: var(--surface);
|
|
1933
1923
|
}
|
|
1934
1924
|
.rosh-tl-chip::after {
|
|
@@ -1937,12 +1927,12 @@ html.rosh-reduce-transparency *::after {
|
|
|
1937
1927
|
}
|
|
1938
1928
|
|
|
1939
1929
|
.rosh-tl-pending { padding-top: 16px; }
|
|
1940
|
-
.rosh-tl-pending-head { margin: 0 0 8px; font-size:
|
|
1930
|
+
.rosh-tl-pending-head { margin: 0 0 8px; font-size: var(--text-2xs); font-weight: 500; color: var(--ink-faint); }
|
|
1941
1931
|
.rosh-tl-ghosts { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
|
|
1942
|
-
.rosh-tl-ghosts li { display: flex; align-items: center; gap: 9px; font-size:
|
|
1932
|
+
.rosh-tl-ghosts li { display: flex; align-items: center; gap: 9px; font-size: var(--text-2xs); color: var(--ink-muted); }
|
|
1943
1933
|
.rosh-tl-ghosts .rosh-tl-node { position: relative; --rosh-tl-shift: translate(0, 0); flex: none; }
|
|
1944
1934
|
.rosh-tl-ghosts b { font-weight: 500; color: var(--ink-faint); }
|
|
1945
|
-
.rosh-tl-more { margin-top: 9px; font-size:
|
|
1935
|
+
.rosh-tl-more { margin-top: 9px; font-size: var(--text-2xs); text-decoration: underline; cursor: pointer; }
|
|
1946
1936
|
|
|
1947
1937
|
/* The vertical variant: under a 320px track the axis is abandoned rather than
|
|
1948
1938
|
squeezed, and the connector carries the fill. */
|
|
@@ -1966,7 +1956,7 @@ html.rosh-reduce-transparency *::after {
|
|
|
1966
1956
|
.rosh-tl-v > li[aria-current] .rosh-tl-name { font-weight: 600; }
|
|
1967
1957
|
.rosh-tl-vgap {
|
|
1968
1958
|
position: relative; margin: 0; padding: 0 0 14px 26px; min-height: 20px;
|
|
1969
|
-
font-family: var(--font-mono); font-size:
|
|
1959
|
+
font-family: var(--font-mono); font-size: var(--text-2xs); color: var(--ink-faint);
|
|
1970
1960
|
}
|
|
1971
1961
|
|
|
1972
1962
|
/* ── Timeline motion ────────────────────────────────────────────────────────
|
|
@@ -2067,13 +2057,17 @@ html.rosh-reduce-transparency *::after {
|
|
|
2067
2057
|
:is([data-theme="dark"], .dark) .bg-gray-50 { background-color: var(--surface-sunken) !important; }
|
|
2068
2058
|
:is([data-theme="dark"], .dark) .bg-gray-100 { background-color: var(--surface) !important; }
|
|
2069
2059
|
:is([data-theme="dark"], .dark) .bg-gray-200 { background-color: var(--surface-raised) !important; }
|
|
2070
|
-
/* Segmented's chosen option.
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2060
|
+
/* Segmented's chosen option has no rule here. It was a white chip, which the
|
|
2061
|
+
remaps above sent to the same --surface as its bg-gray-100 track, so a rule
|
|
2062
|
+
raised it. Since 2026-10-12 (owner) it is the solid blue chip pill Tabs
|
|
2063
|
+
draw, and blue-600 is not remapped: the same chip in both themes, 3.1:1 on
|
|
2064
|
+
the dark track (tests/choiceStrip.test.tsx). */
|
|
2065
|
+
/* The choice strip's track (Segmented, pill Tabs) keeps the --surface fill
|
|
2066
|
+
above in dark, so the chip stays 3:1 on it, and gets its frame from a 1px
|
|
2067
|
+
INSET ring in --line-strong instead: a lighter fill would drop the chip to
|
|
2068
|
+
2.4:1. Inset, so no size changes. Dark only; light has no edge (owner,
|
|
2069
|
+
2026-10-13: the strip floated with no frame in dark). */
|
|
2070
|
+
:is([data-theme="dark"], .dark) .rosh-choice-track { box-shadow: inset 0 0 0 1px var(--line-strong) !important; }
|
|
2077
2071
|
|
|
2078
2072
|
/* Text */
|
|
2079
2073
|
:is([data-theme="dark"], .dark) .text-gray-900 { color: var(--ink-strongest) !important; }
|
|
@@ -2559,7 +2553,7 @@ input.rosh-field-shows-choice::placeholder { color: inherit; opacity: 1; }
|
|
|
2559
2553
|
transition: opacity 300ms ease, transform 300ms ease;
|
|
2560
2554
|
align-items: center;
|
|
2561
2555
|
gap: 8px;
|
|
2562
|
-
font-size:
|
|
2556
|
+
font-size: var(--text-sm);
|
|
2563
2557
|
font-weight: 500;
|
|
2564
2558
|
color: var(--rosh-toast-ink);
|
|
2565
2559
|
max-width: min(90vw, 460px);
|
|
@@ -2594,7 +2588,7 @@ input.rosh-field-shows-choice::placeholder { color: inherit; opacity: 1; }
|
|
|
2594
2588
|
}
|
|
2595
2589
|
.rosh-notif-body { flex: 1; min-width: 0; }
|
|
2596
2590
|
.rosh-notif-title {
|
|
2597
|
-
font-size:
|
|
2591
|
+
font-size: var(--text-2xs);
|
|
2598
2592
|
font-weight: 600;
|
|
2599
2593
|
color: var(--rosh-toast-info);
|
|
2600
2594
|
text-transform: uppercase;
|
|
@@ -2602,7 +2596,7 @@ input.rosh-field-shows-choice::placeholder { color: inherit; opacity: 1; }
|
|
|
2602
2596
|
margin-bottom: 2px;
|
|
2603
2597
|
}
|
|
2604
2598
|
.rosh-notif-msg {
|
|
2605
|
-
font-size:
|
|
2599
|
+
font-size: var(--text-sm);
|
|
2606
2600
|
font-weight: 500;
|
|
2607
2601
|
color: var(--rosh-toast-ink);
|
|
2608
2602
|
line-height: 1.4;
|
|
@@ -2611,7 +2605,7 @@ input.rosh-field-shows-choice::placeholder { color: inherit; opacity: 1; }
|
|
|
2611
2605
|
flex-shrink: 0;
|
|
2612
2606
|
padding: 4px;
|
|
2613
2607
|
color: var(--rosh-toast-dismiss);
|
|
2614
|
-
font-size:
|
|
2608
|
+
font-size: var(--text-lg);
|
|
2615
2609
|
line-height: 1;
|
|
2616
2610
|
transition: color 0.2s;
|
|
2617
2611
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "efficient-shell",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "7.7.0",
|
|
4
4
|
"description": "Desktop-style React UI shell — windows, taskbar, start menu, sticky notes, frosted glass theming, and bundled apps.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"author": "Efficient Pty Ltd",
|
package/dist/Browser-USPZWDYH.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import{peekBrowserStartUrl as e,claimBrowserStartUrl as t}from"./chunk-LWLCNQY7.js";import{AboutApp as o}from"./chunk-5MDQNFOG.js";import{WindowTitle as r}from"./chunk-QJHWLDEN.js";import"./chunk-DSSLOQDW.js";import"./chunk-I2H2CKID.js";import"./chunk-HQLAISFX.js";import"./chunk-5A7MWTXX.js";import"./chunk-S3LGKIZ3.js";import{confirm as a}from"./chunk-DBXZS7OA.js";import"./chunk-ZEIKSMFR.js";import"./chunk-UVBK6YSR.js";import"./chunk-7IQ3B77H.js";import"./chunk-FIEA5CGB.js";import"./chunk-D65T4H6J.js";import"./chunk-SBF5A6XV.js";import"./chunk-KNUR2UEG.js";import"./chunk-K6DKX55N.js";import"./chunk-C3QOHMR6.js";import{Icon as n}from"./chunk-2SSRFEOZ.js";import{useRef as s,useEffect as l,useState as i}from"react";import{jsxs as c,jsx as m,Fragment as d}from"react/jsx-runtime";var u="react-os-shell:browser-bookmarks",h="react-os-shell:browser-homepage",p="https://en.wikipedia.org/wiki/Main_Page",g=[{label:"Wikipedia",url:"https://en.wikipedia.org/wiki/Main_Page"},{label:"DevDocs",url:"https://devdocs.io"},{label:"Example",url:"https://example.com"}],b=new Set(["ac ad ae af ag ai al am ao aq ar as at au aw ax az ba bb bd be bf bg bh bi","bj bm bn bo br bs bt bw by bz ca cc cd cf cg ch ci ck cl cm cn co cr cu cv","cw cx cy cz de dj dk dm do dz ec ee eg er es et eu fi fj fk fm fo fr ga gd","ge gf gg gh gi gl gm gn gp gq gr gs gt gu gw gy hk hm hn hr ht hu id ie il","im in io iq ir is it je jm jo jp ke kg kh ki km kn kp kr kw ky kz la lb lc","li lk lr ls lt lu lv ly ma mc md me mg mh mk ml mm mn mo mp mq mr ms mt mu","mv mw mx my mz na nc ne nf ng ni nl no np nr nu nz om pa pe pf pg ph pk pl","pm pn pr ps pt pw py qa re ro rs ru rw sa sb sc sd se sg sh si sk sl sm sn","so sr ss st su sv sx sy sz tc td tf tg th tj tk tl tm tn to tr tt tv tw tz","ua ug uk us uy uz va vc ve vg vi vn vu wf ws ye yt za zm zw","com net org edu gov mil int info biz name pro app dev xyz online site tech","store shop cloud design digital agency studio media news blog live life","world today email systems solutions services software page link space host","press wiki team group works careers finance capital energy academy"].join(" ").split(" "));function f(e){let t=e.trim();return t?/^[a-z][a-z0-9+.-]*:\/\//i.test(t)?t:function(e){const t=/^([\w-]+\.)+([a-z]{2,})(\/.*)?$/i.exec(e);return null!==t&&b.has(t[2].toLowerCase())}(t)?"https://"+t:"https://duckduckgo.com/?q="+encodeURIComponent(t):""}var k=["duckduckgo.com","developer.mozilla.org","google.com","gmail.com","youtube.com","facebook.com","instagram.com","whatsapp.com","twitter.com","x.com","github.com","gitlab.com","linkedin.com","reddit.com","pinterest.com","amazon.com","amazon.ca","amazon.co.uk","apple.com","icloud.com","microsoft.com","outlook.com","live.com","office.com","netflix.com","spotify.com","paypal.com","stripe.com","chat.openai.com","chatgpt.com","claude.ai"];function x(){if("undefined"==typeof window)return g;try{const e=localStorage.getItem(u);if(!e)return g;const t=JSON.parse(e);if(Array.isArray(t)&&t.every(e=>"string"==typeof e?.url))return t}catch{}return g}function w(){return"undefined"==typeof window?p:localStorage.getItem(h)||p}function y(){const d=s(void 0);void 0===d.current&&(d.current=e()),l(()=>{null!=d.current&&t(d.current)},[]);const p=d.current?f(d.current.url):"",[g,b]=i(w),[k,y]=i(p||g),[j,C]=i(k),[z,S]=i([k]),[R,W]=i(0),[L,D]=i(0),[E,H]=i(x),[I,O]=i(!1),[F,K]=i(null),U=s(null),A=s(null);l(()=>{try{localStorage.setItem(u,JSON.stringify(E))}catch{}},[E]);const B=e=>{const t=f(e);t&&(y(t),C(t),S(e=>{const o=e.slice(0,R+1);return o.push(t),o}),W(e=>e+1),O(!1))},M=()=>{"undefined"!=typeof window&&window.open(k,"_blank","noopener,noreferrer")},T=()=>{const e=F?.trim();e?(H(t=>[...t,{label:e,url:k}]),K(null)):K(null)};l(()=>{if(null===F)return;U.current?.focus(),U.current?.select();const e=e=>{const t=e.target;t?.closest("[data-bookmark-popover]")||K(null)},t=setTimeout(()=>document.addEventListener("mousedown",e),0);return()=>{clearTimeout(t),document.removeEventListener("mousedown",e)}},[null!==F]);const X=e=>{H(t=>t.filter((t,o)=>o!==e))},G=R>0,Q=R<z.length-1,q=E.some(e=>e.url===k),P="p-1.5 rounded hover:bg-gray-200 transition-colors text-gray-600 disabled:opacity-30";/* @__PURE__ */
|
|
2
|
-
return c("div",{className:"relative flex flex-col h-full bg-white",children:[
|
|
3
|
-
/* @__PURE__ */m(r,{title:`Browser - ${v(k)}`}),
|
|
4
|
-
/* @__PURE__ */m(o,{app:"browser"}),
|
|
5
|
-
/* @__PURE__ */c("div",{className:"flex items-center gap-1 px-2 py-1.5 border-b border-gray-200 bg-gray-50 shrink-0",children:[
|
|
6
|
-
/* @__PURE__ */m("button",{onClick:()=>{if(R>0){const e=R-1;W(e),y(z[e]),C(z[e]),O(!1)}},disabled:!G,className:P,title:"Back",children:/* @__PURE__ */m(n,{name:"chevron-left",className:"h-4 w-4",strokeWidth:2})}),
|
|
7
|
-
/* @__PURE__ */m("button",{onClick:()=>{if(R<z.length-1){const e=R+1;W(e),y(z[e]),C(z[e]),O(!1)}},disabled:!Q,className:P,title:"Forward",children:/* @__PURE__ */m(n,{name:"chevron-right",className:"h-4 w-4",strokeWidth:2})}),
|
|
8
|
-
/* @__PURE__ */m("button",{onClick:()=>D(e=>e+1),className:P,title:"Refresh",children:/* @__PURE__ */m(n,{name:"refresh",className:"h-4 w-4",strokeWidth:1.8})}),
|
|
9
|
-
/* @__PURE__ */m("button",{onClick:()=>B(g),className:P,title:"Home",children:/* @__PURE__ */m(n,{name:"home",className:"h-4 w-4",strokeWidth:1.8})}),
|
|
10
|
-
/* @__PURE__ */m("form",{onSubmit:e=>{e.preventDefault(),B(j)},className:"flex-1 flex items-center mx-1",children:/* @__PURE__ */c("div",{className:"flex items-center w-full bg-white border border-gray-300 rounded focus-within:border-blue-400 focus-within:ring-1 focus-within:ring-blue-200",children:[
|
|
11
|
-
/* @__PURE__ */m("span",{className:"px-2 text-gray-400 text-xs",children:k.startsWith("https://")?"🔒":"⚠️"}),
|
|
12
|
-
/* @__PURE__ */m("input",{type:"text",value:j,onChange:e=>C(e.target.value),onFocus:e=>e.target.select(),className:"flex-1 px-1 py-1 text-sm bg-transparent outline-none font-mono",spellCheck:!1,placeholder:"Enter URL or search…"}),k!==j&&/* @__PURE__ */m("button",{type:"button",onClick:()=>C(k),className:"px-1.5 text-[10px] text-gray-400 hover:text-gray-700",title:"Reset to current URL",children:"×"})]})}),
|
|
13
|
-
/* @__PURE__ */m("button",{"data-bookmark-popover":!0,onClick:()=>q?X(E.findIndex(e=>e.url===k)):void K(v(k)),className:P+" "+(q?"text-yellow-500":""),title:q?"Remove bookmark":"Add bookmark",children:/* @__PURE__ */m(n,{name:"star",className:"h-4 w-4",fill:q?"currentColor":"none",strokeWidth:1.5})}),
|
|
14
|
-
/* @__PURE__ */m("button",{onClick:M,className:P,title:"Open in new tab",children:/* @__PURE__ */m(n,{name:"external",className:"h-4 w-4",strokeWidth:1.5})}),
|
|
15
|
-
/* @__PURE__ */m("button",{onClick:()=>O(e=>!e),className:P,title:"Embedding help",children:/* @__PURE__ */m(n,{name:"help",className:"h-4 w-4",strokeWidth:1.5})})]}),null!==F&&/* @__PURE__ */c("div",{"data-bookmark-popover":!0,className:"absolute right-3 top-12 z-30 w-72 bg-white border border-gray-200 rounded-md shadow-lg p-3",children:[
|
|
16
|
-
/* @__PURE__ */m("div",{className:"text-[11px] font-semibold uppercase tracking-wide text-gray-500 mb-1",children:"Bookmark this page"}),
|
|
17
|
-
/* @__PURE__ */m("div",{className:"text-[11px] text-gray-400 truncate mb-2 font-mono",title:k,children:k}),
|
|
18
|
-
/* @__PURE__ */m("input",{ref:U,type:"text",value:F,onChange:e=>K(e.target.value),onKeyDown:e=>{"Enter"===e.key?T():"Escape"===e.key&&K(null)},placeholder:"Name",className:"w-full text-sm px-2 py-1.5 border border-gray-300 rounded focus:outline-none focus:border-blue-400 focus:ring-1 focus:ring-blue-200"}),
|
|
19
|
-
/* @__PURE__ */c("div",{className:"flex justify-end gap-1 mt-2",children:[
|
|
20
|
-
/* @__PURE__ */m("button",{onClick:()=>K(null),className:"px-2 py-1 text-xs text-gray-600 hover:bg-gray-100 rounded",children:"Cancel"}),
|
|
21
|
-
/* @__PURE__ */m("button",{onClick:T,disabled:!F.trim(),className:"px-2 py-1 text-xs bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-40",children:"Save"})]})]}),
|
|
22
|
-
/* @__PURE__ */c("div",{className:"flex items-center gap-0.5 px-2 py-1 border-b border-gray-200 bg-white shrink-0 overflow-x-auto",children:[0===E.length&&/* @__PURE__ */m("span",{className:"text-[11px] text-gray-400 italic px-2",children:"No bookmarks yet — star the address bar to add one."}),E.map((e,t)=>/* @__PURE__ */c("button",{onClick:()=>B(e.url),onContextMenu:async o=>{o.preventDefault();await a({title:"Remove bookmark",message:`"${e.label}" will be removed from your bookmarks.`,confirmLabel:"Remove",variant:"danger"})&&X(t)},className:"flex items-center gap-1.5 px-2 py-0.5 rounded text-[12px] text-gray-700 hover:bg-gray-100 whitespace-nowrap",title:`${e.url}\n(right-click to remove)`,children:[
|
|
23
|
-
/* @__PURE__ */m("img",{src:`https://icons.duckduckgo.com/ip3/${new URL(e.url).hostname}.ico`,alt:"",className:"h-3.5 w-3.5",onError:e=>{e.target.style.visibility="hidden"}}),e.label]},t)),
|
|
24
|
-
/* @__PURE__ */m("div",{className:"flex-1"}),
|
|
25
|
-
/* @__PURE__ */m("button",{onClick:()=>{b(k);try{localStorage.setItem(h,k)}catch{}},className:"px-2 py-0.5 text-[11px] text-gray-500 hover:text-gray-800",title:"Set current page as homepage",children:"Set as home"})]}),
|
|
26
|
-
/* @__PURE__ */m("div",{className:"flex-1 relative min-h-0 bg-gray-50",children:/* @__PURE__ */m(N,{url:k,iframeKey:L,iframeRef:A,openExternal:M,showHelp:I,dismissHelp:()=>O(!1)})})]})}function v(e){try{return new URL(e).hostname.replace(/^www\./,"")}catch{return e}}function N({url:e,iframeKey:t,iframeRef:o,openExternal:r,showHelp:a,dismissHelp:s}){const[u,h]=i(!1);l(()=>{h(!1)},[e]);return function(e){try{const t=new URL(e).hostname.toLowerCase();return k.some(e=>t===e||t.endsWith("."+e))}catch{return!1}}(e)&&!u?/* @__PURE__ */m("div",{className:"absolute inset-0 flex items-center justify-center bg-white p-8",children:/* @__PURE__ */c("div",{className:"max-w-md text-center",children:[
|
|
27
|
-
/* @__PURE__ */m(n,{name:"no-symbol",className:"h-14 w-14 mx-auto text-gray-300 mb-3",strokeWidth:1.2}),
|
|
28
|
-
/* @__PURE__ */c("h3",{className:"text-base font-semibold text-gray-800 mb-1",children:[v(e)," can't be embedded"]}),
|
|
29
|
-
/* @__PURE__ */c("p",{className:"text-sm text-gray-500 mb-4",children:["This site sends an ",
|
|
30
|
-
/* @__PURE__ */m("span",{className:"font-mono text-xs",children:"X-Frame-Options"})," ","or ",
|
|
31
|
-
/* @__PURE__ */m("span",{className:"font-mono text-xs",children:"Content-Security-Policy"})," header that refuses iframe embedding. The browser blocks the load before our app can do anything about it."]}),
|
|
32
|
-
/* @__PURE__ */c("div",{className:"flex flex-col items-center gap-2",children:[
|
|
33
|
-
/* @__PURE__ */c("button",{onClick:r,className:"px-4 py-2 bg-blue-500 text-white text-sm rounded hover:bg-blue-600 inline-flex items-center gap-2",children:[
|
|
34
|
-
/* @__PURE__ */m(n,{name:"external",className:"h-4 w-4",strokeWidth:1.5}),"Open in a new tab"]}),
|
|
35
|
-
/* @__PURE__ */m("button",{onClick:()=>h(!0),className:"text-xs text-gray-500 hover:text-gray-800 underline",children:"Try loading it here anyway"})]})]})}):/* @__PURE__ */c(d,{children:[
|
|
36
|
-
/* @__PURE__ */m("iframe",{ref:o,src:e,className:"absolute inset-0 w-full h-full bg-white",sandbox:"allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-modals",referrerPolicy:"no-referrer-when-downgrade"},t+e),a&&/* @__PURE__ */c("div",{className:"absolute top-2 right-2 max-w-sm bg-white border border-gray-200 rounded-md shadow-lg p-3 text-xs text-gray-700 z-10",children:[
|
|
37
|
-
/* @__PURE__ */m("div",{className:"font-medium text-gray-900 mb-1",children:"Why is this page blank?"}),
|
|
38
|
-
/* @__PURE__ */c("p",{className:"mb-2",children:["Most major sites (Google, GitHub, banks, news) refuse to be embedded in an iframe via ",
|
|
39
|
-
/* @__PURE__ */m("span",{className:"font-mono",children:"X-Frame-Options"})," or Content Security Policy. There's no workaround — the browser blocks the load before our app can do anything."]}),
|
|
40
|
-
/* @__PURE__ */c("p",{children:["Hit the ",
|
|
41
|
-
/* @__PURE__ */m("span",{className:"font-medium",children:"↗"})," button to open the page in a real new tab. Sites that ",
|
|
42
|
-
/* @__PURE__ */m("em",{children:"do"})," allow embedding (Wikipedia, DevDocs, your own apps) work fine in here."]}),
|
|
43
|
-
/* @__PURE__ */m("button",{onClick:s,className:"mt-2 text-[11px] text-blue-600 hover:underline",children:"Got it"})]})]})}export{y as default};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import{loadAppearance as e,WidgetSettingsModal as t}from"./chunk-XO2AMGVU.js";import{useWidgetSettings as n}from"./chunk-QJHWLDEN.js";import"./chunk-DSSLOQDW.js";import"./chunk-I2H2CKID.js";import"./chunk-HQLAISFX.js";import"./chunk-5A7MWTXX.js";import"./chunk-S3LGKIZ3.js";import"./chunk-DBXZS7OA.js";import"./chunk-ZEIKSMFR.js";import"./chunk-UVBK6YSR.js";import"./chunk-7IQ3B77H.js";import"./chunk-FIEA5CGB.js";import"./chunk-D65T4H6J.js";import"./chunk-KNUR2UEG.js";import"./chunk-K6DKX55N.js";import"./chunk-C3QOHMR6.js";import{Icon as l}from"./chunk-2SSRFEOZ.js";import{useState as r,useRef as c,useCallback as i,useEffect as a}from"react";import{jsxs as o,Fragment as s,jsx as u}from"react/jsx-runtime";var d="calc_appearance";function h(){const[h,m]=r("0"),[b,k]=r(null),[p,g]=r(null),[y,N]=r(!1),[x,f]=r(""),[v,C]=r([]),[$,j]=r(!1),[S,E]=r(()=>e(d)),[w,A]=r(!1),[D,F]=r(S),I=c(null);n(i(()=>{F({...S}),A(!0)},[S]));const T=i(e=>{f(""),m(t=>y||"0"===t?(N(!1),"."===e?"0.":e):"."===e&&t.includes(".")?t:t+e)},[y]),W=i(()=>{m("0"),k(null),g(null),N(!1)},[]),B=i((e,t,n)=>{switch(n){case"+":return e+t;case"-":return e-t;case"×":return e*t;case"÷":return 0===t?0:e/t;default:return t}},[]),K=i(e=>{const t=parseFloat(h);if(null!==b&&p&&!y){const e=B(b,t,p);m(String(e)),k(e),C(n=>[`${b} ${p} ${t} = ${e}`,...n].slice(0,20))}else k(t);g(e),N(!0)},[h,b,p,y,B]),L=i(()=>{if(null===b||!p)return;const e=parseFloat(h),t=B(b,e,p),n=`${b} ${p} ${e} =`;C(e=>[`${n} ${t}`,...e].slice(0,20)),f(n),m(String(t)),k(null),g(null),N(!0)},[h,b,p,B]),O=i(()=>{m(e=>String(parseFloat(e)/100))},[]),X=i(()=>{m(e=>e.startsWith("-")?e.slice(1):"0"===e?e:"-"+e)},[]);a(()=>{const e=e=>{const t=e.target.tagName;"INPUT"!==t&&"TEXTAREA"!==t&&"SELECT"!==t&&(e.key>="0"&&e.key<="9"?T(e.key):"."===e.key?T("."):"+"===e.key?K("+"):"-"===e.key?K("-"):"*"===e.key?K("×"):"/"===e.key?(e.preventDefault(),K("÷")):"Enter"===e.key||"="===e.key?("Enter"===e.key&&e.target instanceof Node&&I.current?.contains(e.target)&&e.preventDefault(),L()):"Escape"===e.key?W():"Backspace"===e.key?m(e=>e.length>1?e.slice(0,-1):"0"):"%"===e.key&&O())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[T,K,L,W,O]);const H="flex items-center justify-center rounded-lg text-sm font-medium transition-colors",R=`${H} bg-white border border-gray-200 text-gray-900 hover:bg-gray-50 active:bg-gray-100`,M=`${H} bg-blue-50 border border-blue-200 text-blue-700 hover:bg-blue-100 active:bg-blue-200`,Q=`${H} bg-gray-100 border border-gray-200 text-gray-600 hover:bg-gray-200 active:bg-gray-300`,U=`${H} bg-blue-600 text-white hover:bg-blue-700 active:bg-blue-800`;/* @__PURE__ */
|
|
2
|
-
return o(s,{children:[
|
|
3
|
-
/* @__PURE__ */o("div",{ref:I,className:"flex flex-col h-full",style:{opacity:S.activeOpacity/100,backdropFilter:S.activeBlur>0?`blur(${S.activeBlur}px)`:void 0},children:[
|
|
4
|
-
/* @__PURE__ */o("div",{className:"bg-slate-200 rounded-t-lg px-4 py-2 group/display relative flex flex-col justify-end min-h-[120px] border-b border-slate-300",children:[
|
|
5
|
-
/* @__PURE__ */u("div",{className:"flex flex-col justify-end flex-1 overflow-hidden",children:v.slice(0,3).reverse().map((e,t)=>/* @__PURE__ */u("div",{className:"text-[11px] text-slate-400 text-right font-mono truncate",children:e},t))}),(x||p&&null!==b)&&/* @__PURE__ */u("div",{className:"text-base text-slate-600 text-right font-mono",children:x||`${b} ${p} ${y?"":h}`}),
|
|
6
|
-
/* @__PURE__ */o("div",{className:"flex items-center gap-2",children:[
|
|
7
|
-
/* @__PURE__ */u("button",{onClick:()=>{navigator.clipboard.writeText(h),j(!0),setTimeout(()=>j(!1),1200)},title:"Copy result",className:"shrink-0 text-slate-300 hover:text-slate-500 transition-colors opacity-0 group-hover/display:opacity-100",children:/* @__PURE__ */u(l,$?{name:"check",className:"h-5 w-5 text-green-500",strokeWidth:2}:{name:"copy",className:"h-5 w-5",strokeWidth:2})}),
|
|
8
|
-
/* @__PURE__ */u("div",{className:"text-right text-4xl font-mono font-bold text-slate-800 truncate flex-1",children:(e=>{const t=parseFloat(e);return isNaN(t)||e.endsWith(".")||e.endsWith(".0")||Math.abs(t)<1e15&&e.length<16?e:t.toExponential(6)})(h)})]})]}),
|
|
9
|
-
/* @__PURE__ */o("div",{className:"grid grid-cols-4 grid-rows-5 gap-1.5 flex-1 min-h-0 p-2",children:[
|
|
10
|
-
/* @__PURE__ */u("button",{onClick:W,className:Q,children:"AC"}),
|
|
11
|
-
/* @__PURE__ */u("button",{onClick:X,className:Q,children:"+/−"}),
|
|
12
|
-
/* @__PURE__ */u("button",{onClick:O,className:Q,children:"%"}),
|
|
13
|
-
/* @__PURE__ */u("button",{onClick:()=>K("÷"),className:`${M} ${"÷"===p?"ring-2 ring-blue-400":""}`,children:"÷"}),
|
|
14
|
-
/* @__PURE__ */u("button",{onClick:()=>T("7"),className:R,children:"7"}),
|
|
15
|
-
/* @__PURE__ */u("button",{onClick:()=>T("8"),className:R,children:"8"}),
|
|
16
|
-
/* @__PURE__ */u("button",{onClick:()=>T("9"),className:R,children:"9"}),
|
|
17
|
-
/* @__PURE__ */u("button",{onClick:()=>K("×"),className:`${M} ${"×"===p?"ring-2 ring-blue-400":""}`,children:"×"}),
|
|
18
|
-
/* @__PURE__ */u("button",{onClick:()=>T("4"),className:R,children:"4"}),
|
|
19
|
-
/* @__PURE__ */u("button",{onClick:()=>T("5"),className:R,children:"5"}),
|
|
20
|
-
/* @__PURE__ */u("button",{onClick:()=>T("6"),className:R,children:"6"}),
|
|
21
|
-
/* @__PURE__ */u("button",{onClick:()=>K("-"),className:`${M} ${"-"===p?"ring-2 ring-blue-400":""}`,children:"−"}),
|
|
22
|
-
/* @__PURE__ */u("button",{onClick:()=>T("1"),className:R,children:"1"}),
|
|
23
|
-
/* @__PURE__ */u("button",{onClick:()=>T("2"),className:R,children:"2"}),
|
|
24
|
-
/* @__PURE__ */u("button",{onClick:()=>T("3"),className:R,children:"3"}),
|
|
25
|
-
/* @__PURE__ */u("button",{onClick:()=>K("+"),className:`${M} ${"+"===p?"ring-2 ring-blue-400":""}`,children:"+"}),
|
|
26
|
-
/* @__PURE__ */u("button",{onClick:()=>T("0"),className:`${R} col-span-2`,children:"0"}),
|
|
27
|
-
/* @__PURE__ */u("button",{onClick:()=>T("."),className:R,children:"."}),
|
|
28
|
-
/* @__PURE__ */u("button",{onClick:L,className:U,children:"="})]})]}),
|
|
29
|
-
/* @__PURE__ */u(t,{open:w,onClose:()=>A(!1),title:"Calculator Settings",appearance:D,onAppearanceChange:F,onSave:()=>{E(D),localStorage.setItem(d,JSON.stringify(D)),A(!1)}})]})}export{h as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{ConfirmProvider,confirm,confirmDestructive,prompt,useConfirm}from"./chunk-DBXZS7OA.js";import"./chunk-UVBK6YSR.js";import"./chunk-FIEA5CGB.js";import"./chunk-K6DKX55N.js";import"./chunk-C3QOHMR6.js";import"./chunk-2SSRFEOZ.js";
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import{loadAppearance as e,WidgetSettingsModal as t}from"./chunk-XO2AMGVU.js";import{useWidgetSettings as r}from"./chunk-QJHWLDEN.js";import"./chunk-DSSLOQDW.js";import"./chunk-I2H2CKID.js";import"./chunk-HQLAISFX.js";import"./chunk-5A7MWTXX.js";import"./chunk-S3LGKIZ3.js";import"./chunk-DBXZS7OA.js";import"./chunk-ZEIKSMFR.js";import"./chunk-UVBK6YSR.js";import"./chunk-7IQ3B77H.js";import"./chunk-FIEA5CGB.js";import"./chunk-D65T4H6J.js";import"./chunk-KNUR2UEG.js";import"./chunk-K6DKX55N.js";import"./chunk-C3QOHMR6.js";import"./chunk-2SSRFEOZ.js";import{useState as n,useCallback as a,useEffect as s}from"react";import{jsxs as c,Fragment as o,jsx as i}from"react/jsx-runtime";var l=["USD","CNY","AUD","GBP","EUR","JPY","CAD","THB","NZD","SGD","HKD","CHF","KRW","INR","MXN","BRL"],m=[["USD","CNY"],["USD","AUD"],["GBP","USD"],["USD","JPY"]],u="currency_pairs",p="currency_appearance",d="currency_rates_cache";function h(e){try{const t=JSON.parse(localStorage.getItem(d)||"{}")[e];if(t&&Date.now()-t.timestamp<36e5)return t.rates}catch{}return null}function g(e,t){try{const r=JSON.parse(localStorage.getItem(d)||"{}");r[e]={rates:t,timestamp:Date.now()},localStorage.setItem(d,JSON.stringify(r))}catch{}}function x(){try{const e=JSON.parse(localStorage.getItem(u)||"");if(Array.isArray(e)&&e.length)return e.slice(0,4)}catch{}return m}var y={USD:"🇺🇸",CNY:"🇨🇳",AUD:"🇦🇺",GBP:"🇬🇧",JPY:"🇯🇵",CAD:"🇨🇦",EUR:"🇪🇺",THB:"🇹🇭",NZD:"🇳🇿",SGD:"🇸🇬",HKD:"🇭🇰",CHF:"🇨🇭",KRW:"🇰🇷",INR:"🇮🇳",MXN:"🇲🇽",BRL:"🇧🇷"};function f(){const[m,d]=n(x),[f,N]=n(()=>e(p)),[b,S]=n({}),[v,D]=n(!1),[k,j]=n(!1),[C,I]=n([]),[U,A]=n(f),[B,O]=n("USD"),[R,H]=n("CNY");r(a(()=>{I([...m]),A({...f}),j(!0)},[m,f])),s(()=>{const e=[...new Set(m.map(([e])=>e))];let t=!0;return async function(){D(!0);const r={};for(const t of e){const e=h(t);if(e)r[t]=e;else try{const e=await fetch(`https://open.er-api.com/v6/latest/${t}`),n=await e.json();n.rates&&(r[t]=n.rates,g(t,n.rates))}catch{}}t&&(S(r),D(!1))}(),()=>{t=!1}},[m]);/* @__PURE__ */
|
|
2
|
-
return c(o,{children:[
|
|
3
|
-
/* @__PURE__ */i("div",{style:{backgroundColor:`rgb(var(--taskbar-bg-rgb, 243 244 246) / ${f.activeOpacity/100})`,backdropFilter:f.activeBlur>0?`blur(${f.activeBlur}px)`:void 0},children:/* @__PURE__ */c("div",{className:"px-4 py-3 space-y-1",children:[v&&/* @__PURE__ */i("div",{className:"text-xs text-gray-400 text-center py-4",children:"Loading rates..."}),m.map(([e,t],r)=>{const n=b[e]?.[t];/* @__PURE__ */
|
|
4
|
-
return c("button",{onClick:()=>{const e=m.map((e,t)=>t===r?[e[1],e[0]]:e);d(e),localStorage.setItem(u,JSON.stringify(e))},className:"flex items-center justify-between px-2 py-2 border-b border-gray-200 last:border-0 w-full hover:bg-gray-100 rounded transition-colors cursor-pointer",children:[
|
|
5
|
-
/* @__PURE__ */c("div",{className:"flex items-center gap-1.5",children:[
|
|
6
|
-
/* @__PURE__ */i("span",{className:"text-base",children:y[e]||""}),
|
|
7
|
-
/* @__PURE__ */i("span",{className:"text-sm font-semibold text-gray-700",children:e}),
|
|
8
|
-
/* @__PURE__ */i("svg",{className:"h-3 w-3 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:/* @__PURE__ */i("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M7 16V4m0 0L3 8m4-4l4 4m6 0v12m0 0l4-4m-4 4l-4-4"})}),
|
|
9
|
-
/* @__PURE__ */i("span",{className:"text-base",children:y[t]||""}),
|
|
10
|
-
/* @__PURE__ */i("span",{className:"text-sm font-semibold text-gray-700",children:t})]}),
|
|
11
|
-
/* @__PURE__ */i("div",{className:"text-base font-mono font-semibold text-gray-900 tabular-nums",children:null!=n?n.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:4}):"—"})]},`${e}-${t}-${r}`)})]})}),
|
|
12
|
-
/* @__PURE__ */i(t,{open:k,onClose:()=>j(!1),title:"Currency Settings",appearance:U,onAppearanceChange:A,onSave:()=>{if(0===C.length)return;const e=C.slice(0,4);d(e),N(U),localStorage.setItem(u,JSON.stringify(e)),localStorage.setItem(p,JSON.stringify(U)),j(!1)},children:/* @__PURE__ */c("div",{children:[
|
|
13
|
-
/* @__PURE__ */c("h3",{className:"text-sm font-semibold text-gray-700 mb-2",children:["Currency Pairs ",
|
|
14
|
-
/* @__PURE__ */c("span",{className:"text-[11px] font-normal text-gray-400",children:["(",C.length,"/",4,")"]})]}),
|
|
15
|
-
/* @__PURE__ */i("div",{className:"space-y-1 mb-2",children:C.map(([e,t],r)=>/* @__PURE__ */c("div",{className:"flex items-center justify-between py-1 px-2 bg-gray-50 rounded",children:[
|
|
16
|
-
/* @__PURE__ */c("span",{className:"text-sm",children:[y[e]||""," ",e," → ",y[t]||""," ",t]}),
|
|
17
|
-
/* @__PURE__ */i("button",{onClick:()=>I(e=>e.filter((e,t)=>t!==r)),className:"text-red-400 hover:text-red-600",children:"×"})]},r))}),C.length<4?/* @__PURE__ */c("div",{className:"flex items-center gap-2",children:[
|
|
18
|
-
/* @__PURE__ */i("select",{value:B,onChange:e=>O(e.target.value),className:"bg-gray-50 border border-gray-200 rounded px-2 py-1 text-sm focus:outline-none focus:ring-1 focus:ring-blue-500",children:l.map(e=>/* @__PURE__ */i("option",{children:e},e))}),
|
|
19
|
-
/* @__PURE__ */i("span",{className:"text-gray-400",children:"→"}),
|
|
20
|
-
/* @__PURE__ */i("select",{value:R,onChange:e=>H(e.target.value),className:"bg-gray-50 border border-gray-200 rounded px-2 py-1 text-sm focus:outline-none focus:ring-1 focus:ring-blue-500",children:l.map(e=>/* @__PURE__ */i("option",{children:e},e))}),
|
|
21
|
-
/* @__PURE__ */i("button",{onClick:()=>{B!==R&&C.length<4&&I(e=>[...e,[B,R]])},className:"text-sm font-medium text-blue-600 hover:text-blue-800 px-2",children:"+ Add"})]}):/* @__PURE__ */c("p",{className:"text-[11px] text-gray-400 italic",children:["Max ",4," pairs — remove one to add another."]})]})})]})}export{f as default};
|