@edrlab/thorium-web 1.0.9 → 1.1.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.
Files changed (66) hide show
  1. package/README.md +2 -0
  2. package/dist/{StatefulReader-DdQrrgZY.d.mts → StatefulReader-BjH7bkU1.d.mts} +1 -25
  3. package/dist/chunk-7CGMWOZN.mjs +20 -0
  4. package/dist/chunk-7CGMWOZN.mjs.map +1 -0
  5. package/dist/{chunk-PVGIY5SC.mjs → chunk-D24O64OP.mjs} +375 -278
  6. package/dist/chunk-D24O64OP.mjs.map +1 -0
  7. package/dist/{chunk-G2SKPGPO.mjs → chunk-FG6BJGVE.mjs} +5 -25
  8. package/dist/chunk-FG6BJGVE.mjs.map +1 -0
  9. package/dist/{chunk-SQHOOSST.mjs → chunk-HE3WFPGE.mjs} +84 -85
  10. package/dist/chunk-HE3WFPGE.mjs.map +1 -0
  11. package/dist/chunk-KKJA56IZ.mjs +27 -0
  12. package/dist/chunk-KKJA56IZ.mjs.map +1 -0
  13. package/dist/{chunk-OXZU5FTD.mjs → chunk-SPAC7T57.mjs} +32 -21
  14. package/dist/chunk-SPAC7T57.mjs.map +1 -0
  15. package/dist/components/Epub/index.css +1282 -0
  16. package/dist/components/Epub/index.css.map +1 -0
  17. package/dist/components/Epub/index.d.mts +1 -1
  18. package/dist/components/Epub/index.mjs +47 -44
  19. package/dist/components/Epub/index.mjs.map +1 -1
  20. package/dist/components/Misc/index.css +102 -0
  21. package/dist/components/Misc/index.css.map +1 -0
  22. package/dist/components/Misc/index.d.mts +28 -0
  23. package/dist/components/Misc/index.mjs +110 -0
  24. package/dist/components/Misc/index.mjs.map +1 -0
  25. package/dist/components/WebPub/index.css +1214 -0
  26. package/dist/components/WebPub/index.css.map +1 -0
  27. package/dist/components/WebPub/index.d.mts +2 -2
  28. package/dist/components/WebPub/index.mjs +28 -25
  29. package/dist/components/WebPub/index.mjs.map +1 -1
  30. package/dist/core/Components/index.mjs +0 -1
  31. package/dist/core/Helpers/index.d.mts +12 -2
  32. package/dist/core/Helpers/index.mjs +1 -2
  33. package/dist/core/Hooks/index.mjs +0 -1
  34. package/dist/i18n/index.mjs +5 -5
  35. package/dist/lib/index.mjs +2 -3
  36. package/dist/locales/et/thorium-web.json +1 -0
  37. package/dist/locales/it/thorium-web.json +1 -0
  38. package/dist/locales/pl/thorium-web.json +26 -13
  39. package/dist/locales/sv/thorium-web.json +37 -37
  40. package/dist/next-lib/index.mjs +0 -2
  41. package/dist/next-lib/index.mjs.map +1 -1
  42. package/dist/preferences/index.mjs +3 -4
  43. package/package.json +38 -34
  44. package/dist/backLink.module-QFOMD4RA.module.css +0 -36
  45. package/dist/chunk-3QS3WKRC.mjs +0 -29
  46. package/dist/chunk-3QS3WKRC.mjs.map +0 -1
  47. package/dist/chunk-G2SKPGPO.mjs.map +0 -1
  48. package/dist/chunk-OXZU5FTD.mjs.map +0 -1
  49. package/dist/chunk-PVGIY5SC.mjs.map +0 -1
  50. package/dist/chunk-SQHOOSST.mjs.map +0 -1
  51. package/dist/chunk-TTGURRX3.mjs +0 -19
  52. package/dist/chunk-TTGURRX3.mjs.map +0 -1
  53. package/dist/docking.module-TDNYZX4H.module.css +0 -40
  54. package/dist/jumpToPosition.module-4C47UYPE.module.css +0 -41
  55. package/dist/overflowMenu.module-QL32ISXF.module.css +0 -68
  56. package/dist/publicationGrid.module-T6ISNRGM.module.css +0 -70
  57. package/dist/reader-NGCQJKLX.css +0 -261
  58. package/dist/readerArrowButton.module-EFLOIADG.module.css +0 -77
  59. package/dist/readerHeader.module-RNGQFLVS.module.css +0 -35
  60. package/dist/readerLoader.module-KDBPCQZJ.module.css +0 -40
  61. package/dist/readerPagination.module-DYBZAQ7H.module.css +0 -76
  62. package/dist/readerProgression.module-7PU7L74S.module.css +0 -5
  63. package/dist/readerSharedUI.module-Y2VDWFS5.module.css +0 -98
  64. package/dist/settings.module-H5MUDFJO.module.css +0 -437
  65. package/dist/sheets.module-LJOLY4MK.module.css +0 -195
  66. package/dist/toc.module-F47C5CDS.module.css +0 -153
@@ -1,36 +1,31 @@
1
- import { useFullscreen, useEpubNavigator } from './chunk-OWJCESNF.mjs';
2
- import { useI18n } from './chunk-G2SKPGPO.mjs';
3
- import { require_debounce, useAppDispatch, setFullscreen, useAppSelector, setActionOpen, dockAction, setSettingsContainer, setColumnCount, setWebPubFontFamily, setFontFamily, setWebPubFontWeight, setFontWeight, setWebPubHyphens, setHyphens, setScroll, setWebPubLetterSpacing, setLetterSpacing, setWebPubLineHeight, setLineHeight, setWebPubParagraphIndent, setParagraphIndent, setWebPubParagraphSpacing, setParagraphSpacing, setWebPubWordSpacing, setWordSpacing, setWebPubSpacingPreset, setWebPubPublisherStyles, setSpacingPreset, setPublisherStyles, setWebPubTextAlign, setTextAlign, setWebPubTextNormalization, setTextNormalization, setTheme, setWebPubZoom, setFontSize, ThReduxPreferencesAdapter, setHovering, setImmersive, setOverflow, setUserNavigated, setTocEntry, collapseDockPanel, expandDockPanel, activateDockPanel, deactivateDockPanel, setDockPanelWidth } from './chunk-SQHOOSST.mjs';
4
- import { usePreferences, defaultSpacingSettingsSubpanel, defaultSpacingSettingsMain, defaultTextSettingsSubpanel, defaultTextSettingsMain, usePreferenceKeys, defaultFontFamilyOptions, buildThemeObject, defaultPreferences, ThPreferencesProvider } from './chunk-OXZU5FTD.mjs';
5
- import { ThMenuItem, ThActionButton, ThMenu, ThCollapsibleActionsBar, ThPopover, ThContainerHeader, ThNavigationButton, ThContainerBody, ThBottomSheet, ThCloseButton, ThModal, ThDockedPanel, ThTypedComponentRenderer, useActions, ThForm, ThFormNumberField, ThSettingsWrapper, ThFormSearchField, ThRadioGroup, ThDropdown, ThSwitch, ThNumberField, ThSlider, ThLoader, ThGrid, ThInteractiveOverlay, ThHeader, ThFooter, ThLink, ThLibrary, ThHome, ThBackArrow, ThRunningHead, ThPagination, ThProgression } from './chunk-GZDYMUV7.mjs';
6
- import { usePrevious } from './chunk-YZ73DHRU.mjs';
7
1
  import { makeBreakpointsMap, isInteractiveElement, isKeyboardTriggered, isActiveElement, getBestMatchingProgressionFormat } from './chunk-VH22EPOM.mjs';
2
+ import { useFullscreen, useEpubNavigator } from './chunk-OWJCESNF.mjs';
3
+ import { useAppDispatch, setFullscreen, useAppSelector, setActionOpen, dockAction, setSettingsContainer, debounce, setColumnCount, setWebPubFontFamily, setFontFamily, setWebPubFontWeight, setFontWeight, setWebPubHyphens, setHyphens, setScroll, setWebPubLetterSpacing, setLetterSpacing, setWebPubLineHeight, setLineHeight, setWebPubParagraphIndent, setParagraphIndent, setWebPubParagraphSpacing, setParagraphSpacing, setWebPubWordSpacing, setWordSpacing, setWebPubSpacingPreset, setWebPubPublisherStyles, setSpacingPreset, setPublisherStyles, setWebPubTextAlign, setTextAlign, setWebPubTextNormalization, setTextNormalization, setTheme, setWebPubZoom, setFontSize, ThReduxPreferencesAdapter, setHovering, setImmersive, setOverflow, setUserNavigated, setTocEntry, collapseDockPanel, expandDockPanel, activateDockPanel, deactivateDockPanel, setDockPanelWidth } from './chunk-HE3WFPGE.mjs';
4
+ import { usePreferences, prefixString, defaultSpacingSettingsSubpanel, defaultSpacingSettingsMain, defaultTextSettingsSubpanel, defaultTextSettingsMain, usePreferenceKeys, defaultFontFamilyOptions, buildThemeObject, defaultPreferences, ThPreferencesProvider } from './chunk-SPAC7T57.mjs';
8
5
  import { isIOSish, buildShortcut, metaKeys } from './chunk-5LUMM7FW.mjs';
6
+ import { useI18n } from './chunk-KKJA56IZ.mjs';
7
+ import { ThMenuItem, ThActionButton, ThMenu, ThCollapsibleActionsBar, ThPopover, ThContainerHeader, ThNavigationButton, ThContainerBody, ThBottomSheet, ThCloseButton, ThModal, ThDockedPanel, ThTypedComponentRenderer, useActions, ThForm, ThFormNumberField, ThSettingsWrapper, ThFormSearchField, ThRadioGroup, ThDropdown, ThSwitch, ThNumberField, ThSlider, ThInteractiveOverlay, ThHeader, ThFooter, ThLink, ThLibrary, ThHome, ThBackArrow, ThRunningHead, ThPagination, ThProgression } from './chunk-GZDYMUV7.mjs';
8
+ import { usePrevious } from './chunk-YZ73DHRU.mjs';
9
9
  import { ThDockingTypes, ThSheetTypes, ThTextSettingsKeys, ThSpacingSettingsKeys, ThRunningHeadFormat, ThProgressionFormat } from './chunk-CVM2ZAPL.mjs';
10
- import { __toESM } from './chunk-3QS3WKRC.mjs';
11
- import overflowMenuStyles from './overflowMenu.module-QL32ISXF.module.css';
12
- import { Text, useFilter, Tree, TreeItem, TreeItemContent, Button, Collection, ListBox, ListBoxItem, Radio, Link, Keyboard, Toolbar } from 'react-aria-components';
10
+ import { Text, useFilter, Tree, TreeItem, TreeItemContent, Button, Collection, ListBox, ListBoxItem, Radio, Keyboard, Toolbar } from 'react-aria-components';
13
11
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
14
- import React21, { createContext, useRef, useCallback, useMemo, useState, useEffect, useContext, isValidElement, cloneElement } from 'react';
15
- import readerSharedUI from './readerSharedUI.module-Y2VDWFS5.module.css';
12
+ import React21, { createContext, useRef, useCallback, useEffect, useMemo, useState, useContext } from 'react';
16
13
  import classNames3 from 'classnames';
17
- import sheetStyles2 from './sheets.module-LJOLY4MK.module.css';
18
- import dockingStyles2 from './docking.module-TDNYZX4H.module.css';
19
- import jumpToPositionStyles from './jumpToPosition.module-4C47UYPE.module.css';
20
- import settingsStyles8 from './settings.module-H5MUDFJO.module.css';
21
- import { Link as Link$1, HttpFetcher } from '@readium/shared';
22
- import tocStyles from './toc.module-F47C5CDS.module.css';
14
+ import { Link, HttpFetcher } from '@readium/shared';
23
15
  import { TextAlignment } from '@readium/navigator';
24
- import readerLoaderStyles from './readerLoader.module-KDBPCQZJ.module.css';
25
- import publicationGridStyles from './publicationGrid.module-T6ISNRGM.module.css';
26
16
  import { useStore } from 'react-redux';
27
17
  import { PanelGroup, Panel, PanelResizeHandle } from 'react-resizable-panels';
28
- import readerHeaderStyles from './readerHeader.module-RNGQFLVS.module.css';
29
- import backLinkStyles from './backLink.module-QFOMD4RA.module.css';
30
18
  import { useFocusWithin } from 'react-aria';
31
- import readerPaginationStyles2 from './readerPagination.module-DYBZAQ7H.module.css';
32
- import progressionStyles from './readerProgression.module-7PU7L74S.module.css';
33
19
 
20
+ // src/components/Actions/assets/styles/thorium-web.overflow.module.css
21
+ var thorium_web_overflow_default = {
22
+ hint: "thorium_web_overflow_hint",
23
+ popover: "thorium_web_overflow_popover",
24
+ menu: "thorium_web_overflow_menu",
25
+ menuItem: "thorium_web_overflow_menuItem",
26
+ menuItemLabel: "thorium_web_overflow_menuItemLabel",
27
+ menuItemShortcut: "thorium_web_overflow_menuItemShortcut"
28
+ };
34
29
  var UnstableStatefulShortcut = ({
35
30
  className,
36
31
  rawForm,
@@ -79,7 +74,7 @@ var StatefulOverflowMenuItem = ({
79
74
  {
80
75
  id,
81
76
  label,
82
- className: overflowMenuStyles.menuItem,
77
+ className: thorium_web_overflow_default.menuItem,
83
78
  "aria-labelledby": menuItemLabelId,
84
79
  ...props,
85
80
  children: [
@@ -87,7 +82,7 @@ var StatefulOverflowMenuItem = ({
87
82
  /* @__PURE__ */ jsx(
88
83
  Text,
89
84
  {
90
- className: overflowMenuStyles.menuItemLabel,
85
+ className: thorium_web_overflow_default.menuItemLabel,
91
86
  slot: "label",
92
87
  id: menuItemLabelId,
93
88
  children: label
@@ -96,7 +91,7 @@ var StatefulOverflowMenuItem = ({
96
91
  shortcut && /* @__PURE__ */ jsx(
97
92
  UnstableStatefulShortcut,
98
93
  {
99
- className: overflowMenuStyles.menuItemKbdShortcut,
94
+ className: thorium_web_overflow_default.menuItemShortcut,
100
95
  rawForm: shortcut
101
96
  }
102
97
  )
@@ -104,6 +99,20 @@ var StatefulOverflowMenuItem = ({
104
99
  }
105
100
  ) });
106
101
  };
102
+
103
+ // src/components/assets/styles/thorium-web.button.module.css
104
+ var thorium_web_button_default = {
105
+ icon: "thorium_web_button_icon",
106
+ dockerButton: "thorium_web_button_dockerButton",
107
+ closeButton: "thorium_web_button_closeButton",
108
+ backButton: "thorium_web_button_backButton",
109
+ tooltip: "thorium_web_button_tooltip",
110
+ alwaysVisible: "thorium_web_button_alwaysVisible",
111
+ partiallyVisible: "thorium_web_button_partiallyVisible",
112
+ iconCompSm: "thorium_web_button_iconCompSm",
113
+ iconCompLg: "thorium_web_button_iconCompLg",
114
+ iconApplyStroke: "thorium_web_button_iconApplyStroke"
115
+ };
107
116
  var StatefulActionIcon = ({
108
117
  visibility,
109
118
  placement,
@@ -118,10 +127,10 @@ var StatefulActionIcon = ({
118
127
  let className = "";
119
128
  switch (visibility) {
120
129
  case "always" /* always */:
121
- className = readerSharedUI.alwaysVisible;
130
+ className = thorium_web_button_default.alwaysVisible;
122
131
  break;
123
132
  case "partially" /* partially */:
124
- className = readerSharedUI.partiallyVisible;
133
+ className = thorium_web_button_default.partiallyVisible;
125
134
  break;
126
135
  }
127
136
  return className;
@@ -143,7 +152,7 @@ var StatefulActionIcon = ({
143
152
  ThActionButton,
144
153
  {
145
154
  ref: triggerRef,
146
- className: classNames3(readerSharedUI.icon, handleClassNameFromState(), props.className),
155
+ className: classNames3(thorium_web_button_default.icon, handleClassNameFromState(), props.className),
147
156
  onPress: props.onPress || defaultOnPressFunc,
148
157
  onKeyDown: blurOnEsc,
149
158
  onFocus: handleImmersive,
@@ -153,7 +162,7 @@ var StatefulActionIcon = ({
153
162
  closeDelay: preferences.theming.icon.tooltipDelay
154
163
  },
155
164
  tooltip: {
156
- className: readerSharedUI.tooltip,
165
+ className: thorium_web_button_default.tooltip,
157
166
  placement,
158
167
  offset: preferences.theming.icon.tooltipOffset || 0
159
168
  },
@@ -195,7 +204,7 @@ var StatefulFullscreenTrigger = ({ variant }) => {
195
204
  ) : /* @__PURE__ */ jsx(
196
205
  StatefulActionIcon,
197
206
  {
198
- className: readerSharedUI.iconCompSm,
207
+ className: thorium_web_button_default.iconCompSm,
199
208
  visibility: preferences.actions.keys["fullscreen" /* fullscreen */].visibility,
200
209
  "aria-label": label,
201
210
  placement: "bottom",
@@ -228,7 +237,7 @@ var StatefulOverflowMenu = ({
228
237
  id,
229
238
  triggerRef,
230
239
  selectionMode: "none",
231
- className: overflowMenuStyles.overflowMenu,
240
+ className: thorium_web_overflow_default.menu,
232
241
  dependencies: ["Trigger"],
233
242
  items,
234
243
  compounds: {
@@ -237,12 +246,12 @@ var StatefulOverflowMenu = ({
237
246
  },
238
247
  popover: {
239
248
  placement: "bottom",
240
- className: overflowMenuStyles.overflowPopover
249
+ className: thorium_web_overflow_default.popover
241
250
  },
242
251
  button: /* @__PURE__ */ jsx(
243
252
  StatefulActionIcon,
244
253
  {
245
- className: className ? className : overflowMenuStyles.activeButton,
254
+ className: className ? className : thorium_web_overflow_default.button,
246
255
  "aria-label": t("reader.overflowMenu.active.trigger"),
247
256
  placement: "bottom",
248
257
  tooltipLabel: t("reader.overflowMenu.active.tooltip"),
@@ -301,6 +310,37 @@ var useNavigatorContext = () => {
301
310
  var useNavigator = () => {
302
311
  return useNavigatorContext();
303
312
  };
313
+
314
+ // src/components/Sheets/assets/styles/thorium-web.sheets.module.css
315
+ var thorium_web_sheets_default = {
316
+ fullscreen: "thorium_web_sheets_fullscreen",
317
+ popover: "thorium_web_sheets_popover",
318
+ draggable: "thorium_web_sheets_draggable",
319
+ draggableFullHeightDetent: "thorium_web_sheets_draggableFullHeightDetent",
320
+ draggableContentHeightDetent: "thorium_web_sheets_draggableContentHeightDetent",
321
+ draggableBackdrop: "thorium_web_sheets_draggableBackdrop",
322
+ draggableScrim: "thorium_web_sheets_draggableScrim",
323
+ draggableScroller: "thorium_web_sheets_draggableScroller",
324
+ dragIndicator: "thorium_web_sheets_dragIndicator",
325
+ docked: "thorium_web_sheets_docked",
326
+ dockedLeftBorder: "thorium_web_sheets_dockedLeftBorder",
327
+ dockedRightBorder: "thorium_web_sheets_dockedRightBorder",
328
+ dialog: "thorium_web_sheets_dialog",
329
+ header: "thorium_web_sheets_header",
330
+ draggableHeader: "thorium_web_sheets_draggableHeader",
331
+ heading: "thorium_web_sheets_heading",
332
+ body: "thorium_web_sheets_body"
333
+ };
334
+
335
+ // src/components/Docking/assets/styles/thorium-web.docking.module.css
336
+ var thorium_web_docking_default = {
337
+ dockerWrapper: "thorium_web_docking_dockerWrapper",
338
+ docker: "thorium_web_docking_docker",
339
+ resizeHandle: "thorium_web_docking_resizeHandle",
340
+ resizeHandleGrab: "thorium_web_docking_resizeHandleGrab",
341
+ resizeHandleGrabLeft: "thorium_web_docking_resizeHandleGrabLeft",
342
+ resizeHandleGrabRight: "thorium_web_docking_resizeHandleGrabRight"
343
+ };
304
344
  var SvgDockToRight = (props) => /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 -960 960 960", width: "24px", fill: "inherit", ...props, children: /* @__PURE__ */ jsx("path", { d: "M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm120-80v-560H200v560h120Zm80 0h360v-560H400v560Zm-80 0H200h120Z" }) });
305
345
  var dock_to_right_default = SvgDockToRight;
306
346
  var SvgDockToLeft = (props) => /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 -960 960 960", width: "24px", fill: "inherit", ...props, children: /* @__PURE__ */ jsx("path", { d: "M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm440-80h120v-560H640v560Zm-80 0v-560H200v560h360Zm80 0h120-120Z" }) });
@@ -340,7 +380,7 @@ var StatefulDockStart = ({ variant, associatedKey }) => {
340
380
  ) : /* @__PURE__ */ jsx(
341
381
  StatefulActionIcon,
342
382
  {
343
- className: readerSharedUI.dockerButton,
383
+ className: thorium_web_button_default.dockerButton,
344
384
  "aria-label": localeKey.trigger,
345
385
  placement: "bottom",
346
386
  tooltipLabel: localeKey.tooltip,
@@ -385,7 +425,7 @@ var StatefulDockEnd = ({ variant, associatedKey }) => {
385
425
  ) : /* @__PURE__ */ jsx(
386
426
  StatefulActionIcon,
387
427
  {
388
- className: readerSharedUI.dockerButton,
428
+ className: thorium_web_button_default.dockerButton,
389
429
  "aria-label": localeKey.trigger,
390
430
  placement: "bottom",
391
431
  tooltipLabel: localeKey.tooltip,
@@ -425,7 +465,7 @@ var StatefulDockTransientPopover = ({ variant, associatedKey }) => {
425
465
  ) : /* @__PURE__ */ jsx(
426
466
  StatefulActionIcon,
427
467
  {
428
- className: readerSharedUI.dockerButton,
468
+ className: thorium_web_button_default.dockerButton,
429
469
  "aria-label": t("reader.app.docker.popover.trigger"),
430
470
  placement: "bottom",
431
471
  tooltipLabel: t("reader.app.docker.popover.tooltip"),
@@ -465,14 +505,14 @@ var StatefulDocker = ({
465
505
  });
466
506
  return actionsItems;
467
507
  }, [keys, id]);
468
- return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(Toolbar, { className: dockingStyles2.dockerWrapper, children: [
508
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(Toolbar, { className: thorium_web_docking_default.dockerWrapper, children: [
469
509
  /* @__PURE__ */ jsx(
470
510
  StatefulCollapsibleActionsBar,
471
511
  {
472
512
  id: `${id}-docker-overflowMenu`,
473
513
  items: listActionItems(),
474
- className: dockingStyles2.docker,
475
- overflowMenuClassName: readerSharedUI.dockerButton,
514
+ className: thorium_web_docking_default.docker,
515
+ overflowMenuClassName: thorium_web_button_default.dockerButton,
476
516
  prefs: preferences.docking,
477
517
  "aria-label": t("reader.app.docker.wrapper")
478
518
  }
@@ -481,7 +521,7 @@ var StatefulDocker = ({
481
521
  ThCloseButton,
482
522
  {
483
523
  ref,
484
- className: readerSharedUI.dockerButton,
524
+ className: thorium_web_button_default.dockerButton,
485
525
  "aria-label": t("reader.app.docker.close.trigger"),
486
526
  onPress: onClose,
487
527
  compounds: {
@@ -490,7 +530,7 @@ var StatefulDocker = ({
490
530
  closeDelay: preferences.theming.icon.tooltipDelay
491
531
  },
492
532
  tooltip: {
493
- className: readerSharedUI.tooltip
533
+ className: thorium_web_button_default.tooltip
494
534
  },
495
535
  label: t("reader.app.docker.close.tooltip")
496
536
  }
@@ -509,7 +549,7 @@ var useWebkitPatch = (isOpen) => {
509
549
  } = useNavigator();
510
550
  useEffect(() => {
511
551
  if (isScroll && !isOpen) {
512
- const container = document.getElementById("container");
552
+ const container = document.getElementById("thorium-web-container");
513
553
  if (!container) return;
514
554
  const currentHeight = container.offsetHeight;
515
555
  container.style.height = `${currentHeight - 1}px`;
@@ -552,6 +592,14 @@ var StatefulPopoverSheet = ({
552
592
  const popoverHeaderRef = useRef(null);
553
593
  const popoverBodyRef = useRef(null);
554
594
  const popoverCloseRef = useRef(null);
595
+ useEffect(() => {
596
+ if (isOpen && popoverRef.current && popoverHeaderRef.current) {
597
+ popoverRef.current.style.setProperty(
598
+ `--${prefixString("sheet-sticky-header")}`,
599
+ `${popoverHeaderRef.current.clientHeight}px`
600
+ );
601
+ }
602
+ }, [isOpen]);
555
603
  useWebkitPatch(!!isOpen);
556
604
  if (React21.Children.toArray(children).length > 0) {
557
605
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
@@ -574,16 +622,13 @@ var StatefulPopoverSheet = ({
574
622
  updateState: resetFocus
575
623
  },
576
624
  placement: placement || "bottom",
577
- className: classNames3(sheetStyles2.popOverSheet, className),
625
+ className: classNames3(thorium_web_sheets_default.popover, className),
578
626
  isOpen,
579
627
  onOpenChange,
580
628
  isKeyboardDismissDisabled: dismissEscapeKeyClose,
581
- style: {
582
- "--sheet-sticky-header": popoverHeaderRef.current ? `${popoverHeaderRef.current.clientHeight}px` : void 0
583
- },
584
629
  compounds: {
585
630
  dialog: {
586
- className: sheetStyles2.sheetDialog
631
+ className: thorium_web_sheets_default.dialog
587
632
  }
588
633
  },
589
634
  children: [
@@ -591,11 +636,11 @@ var StatefulPopoverSheet = ({
591
636
  ThContainerHeader,
592
637
  {
593
638
  ref: popoverHeaderRef,
594
- className: sheetStyles2.sheetHeader,
639
+ className: thorium_web_sheets_default.header,
595
640
  label: heading,
596
641
  compounds: {
597
642
  heading: {
598
- className: sheetStyles2.sheetHeading
643
+ className: thorium_web_sheets_default.heading
599
644
  }
600
645
  },
601
646
  children: headerVariant === "previous" /* previous */ ? /* @__PURE__ */ jsx(
@@ -604,7 +649,7 @@ var StatefulPopoverSheet = ({
604
649
  direction: direction === "ltr" ? "left" : "right",
605
650
  label: t("reader.app.back.trigger"),
606
651
  ref: popoverCloseRef,
607
- className: classNames3(className, readerSharedUI.backButton),
652
+ className: classNames3(className, thorium_web_button_default.backButton),
608
653
  "aria-label": t("reader.app.back.trigger"),
609
654
  onPress: onClosePress
610
655
  }
@@ -623,7 +668,7 @@ var StatefulPopoverSheet = ({
623
668
  ThContainerBody,
624
669
  {
625
670
  ref: popoverBodyRef,
626
- className: sheetStyles2.sheetBody,
671
+ className: thorium_web_sheets_default.body,
627
672
  children
628
673
  }
629
674
  )
@@ -786,14 +831,14 @@ var StatefulBottomSheet = ({
786
831
  const detentClassName = useMemo(() => {
787
832
  let className2 = "";
788
833
  if (detent.current === "content-height") {
789
- className2 = sheetStyles2.bottomSheetModalContentHeightDetent;
834
+ className2 = thorium_web_sheets_default.draggableContentHeightDetent;
790
835
  } else {
791
- className2 = sheetStyles2.bottomSheetModalFullHeightDetent;
836
+ className2 = thorium_web_sheets_default.draggableFullHeightDetent;
792
837
  }
793
838
  return className2;
794
839
  }, [detent]);
795
840
  const scrimClassName = useMemo(() => {
796
- return scrimPref.active ? sheetStyles2.bottomSheetScrim : "";
841
+ return scrimPref.active ? thorium_web_sheets_default.draggableScrim : "";
797
842
  }, [scrimPref]);
798
843
  const convertDetent = (detent2) => {
799
844
  switch (detent2) {
@@ -811,7 +856,7 @@ var StatefulBottomSheet = ({
811
856
  {
812
857
  id,
813
858
  ref: sheetRef,
814
- className: sheetStyles2.bottomSheetRoot,
859
+ className: thorium_web_sheets_default.draggableRoot,
815
860
  isOpen,
816
861
  focusOptions: {
817
862
  withinRef: focusWithinRef ?? bottomSheetBodyRef,
@@ -843,27 +888,27 @@ var StatefulBottomSheet = ({
843
888
  prefersReducedMotion,
844
889
  compounds: {
845
890
  container: {
846
- className: classNames3(sheetStyles2.bottomSheetModal, detentClassName),
891
+ className: classNames3(thorium_web_sheets_default.draggable, detentClassName),
847
892
  ref: sheetContainerRef,
848
893
  style: {
849
894
  maxWidth: maxWidthPref
850
895
  }
851
896
  },
852
897
  dragIndicator: {
853
- className: sheetStyles2.dragIndicator,
898
+ className: thorium_web_sheets_default.dragIndicator,
854
899
  onPress: onDragPressCallback,
855
900
  onKeyDown: onDragKeyCallback
856
901
  },
857
902
  content: {
858
- className: classNames3(sheetStyles2.bottomSheet, className),
903
+ className: classNames3(thorium_web_sheets_default.draggableContent, className),
859
904
  disableDrag: true
860
905
  },
861
906
  scroller: {
862
- className: sheetStyles2.bottomSheetScroller
907
+ className: thorium_web_sheets_default.draggableScroller
863
908
  },
864
909
  backdrop: {
865
- className: classNames3(sheetStyles2.bottomSheetBackdrop, scrimClassName),
866
- style: { "--defaults-scrim": scrimPref.override }
910
+ className: classNames3(thorium_web_sheets_default.draggableBackdrop, scrimClassName),
911
+ style: { [`--${prefixString("layout-defaults-scrim")}`]: scrimPref.override }
867
912
  }
868
913
  },
869
914
  children: [
@@ -871,10 +916,10 @@ var StatefulBottomSheet = ({
871
916
  ThContainerHeader,
872
917
  {
873
918
  label: heading,
874
- className: sheetStyles2.bottomSheetHeader,
919
+ className: thorium_web_sheets_default.draggableHeader,
875
920
  compounds: {
876
921
  heading: {
877
- className: sheetStyles2.sheetHeading
922
+ className: thorium_web_sheets_default.heading
878
923
  }
879
924
  },
880
925
  children: headerVariant === "previous" /* previous */ ? /* @__PURE__ */ jsx(
@@ -883,7 +928,7 @@ var StatefulBottomSheet = ({
883
928
  direction: direction === "ltr" ? "left" : "right",
884
929
  label: t("reader.app.back.trigger"),
885
930
  ref: bottomSheetCloseRef,
886
- className: classNames3(className, readerSharedUI.backButton),
931
+ className: classNames3(className, thorium_web_button_default.backButton),
887
932
  "aria-label": t("reader.app.back.trigger"),
888
933
  onPress: onClosePress
889
934
  }
@@ -891,7 +936,7 @@ var StatefulBottomSheet = ({
891
936
  ThCloseButton,
892
937
  {
893
938
  ref: bottomSheetCloseRef,
894
- className: readerSharedUI.closeButton,
939
+ className: thorium_web_button_default.closeButton,
895
940
  "aria-label": t("reader.app.docker.close.trigger"),
896
941
  onPress: onClosePress
897
942
  }
@@ -902,7 +947,7 @@ var StatefulBottomSheet = ({
902
947
  ThContainerBody,
903
948
  {
904
949
  ref: bottomSheetBodyRef,
905
- className: sheetStyles2.sheetBody,
950
+ className: thorium_web_sheets_default.body,
906
951
  children
907
952
  }
908
953
  )
@@ -927,15 +972,24 @@ var StatefulFullScreenSheet = ({
927
972
  }) => {
928
973
  const { t } = useI18n();
929
974
  const direction = useAppSelector((state) => state.reader.direction);
975
+ const fullScreenRef = useRef(null);
930
976
  const fullScreenHeaderRef = useRef(null);
931
977
  const fullScreenBodyRef = useRef(null);
932
978
  const fullScreenCloseRef = useRef(null);
979
+ useEffect(() => {
980
+ if (isOpen && fullScreenRef.current && fullScreenHeaderRef.current) {
981
+ fullScreenRef.current.style.setProperty(
982
+ `--${prefixString("sheet-sticky-header")}`,
983
+ `${fullScreenHeaderRef.current.clientHeight}px`
984
+ );
985
+ }
986
+ }, [isOpen]);
933
987
  useWebkitPatch(!!isOpen);
934
988
  if (React21.Children.toArray(children).length > 0) {
935
989
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
936
990
  ThModal,
937
991
  {
938
- ref: fullScreenBodyRef,
992
+ ref: fullScreenRef,
939
993
  focusOptions: {
940
994
  withinRef: focusWithinRef ?? fullScreenBodyRef,
941
995
  trackedState: isOpen,
@@ -952,27 +1006,24 @@ var StatefulFullScreenSheet = ({
952
1006
  },
953
1007
  compounds: {
954
1008
  dialog: {
955
- className: sheetStyles2.sheetDialog
1009
+ className: thorium_web_sheets_default.dialog
956
1010
  }
957
1011
  },
958
1012
  isOpen,
959
1013
  onOpenChange,
960
1014
  isDismissable: true,
961
- className: classNames3(sheetStyles2.fullScreenSheet, className),
1015
+ className: classNames3(thorium_web_sheets_default.fullscreen, className),
962
1016
  isKeyboardDismissDisabled: dismissEscapeKeyClose,
963
- style: {
964
- "--sheet-sticky-header": fullScreenHeaderRef.current ? `${fullScreenHeaderRef.current.clientHeight}px` : void 0
965
- },
966
1017
  children: [
967
1018
  /* @__PURE__ */ jsx(
968
1019
  ThContainerHeader,
969
1020
  {
970
1021
  ref: fullScreenHeaderRef,
971
- className: sheetStyles2.sheetHeader,
1022
+ className: thorium_web_sheets_default.header,
972
1023
  label: heading,
973
1024
  compounds: {
974
1025
  heading: {
975
- className: sheetStyles2.sheetHeading
1026
+ className: thorium_web_sheets_default.heading
976
1027
  }
977
1028
  },
978
1029
  children: headerVariant === "previous" /* previous */ ? /* @__PURE__ */ jsx(
@@ -981,7 +1032,7 @@ var StatefulFullScreenSheet = ({
981
1032
  direction: direction === "ltr" ? "left" : "right",
982
1033
  label: t("reader.app.back.trigger"),
983
1034
  ref: fullScreenCloseRef,
984
- className: classNames3(className, readerSharedUI.backButton),
1035
+ className: classNames3(className, thorium_web_button_default.backButton),
985
1036
  "aria-label": t("reader.app.back.trigger"),
986
1037
  onPress: onClosePress
987
1038
  }
@@ -989,7 +1040,7 @@ var StatefulFullScreenSheet = ({
989
1040
  ThCloseButton,
990
1041
  {
991
1042
  ref: fullScreenCloseRef,
992
- className: readerSharedUI.closeButton,
1043
+ className: thorium_web_button_default.closeButton,
993
1044
  "aria-label": t("reader.app.docker.close.trigger"),
994
1045
  onPress: onClosePress
995
1046
  }
@@ -1000,7 +1051,7 @@ var StatefulFullScreenSheet = ({
1000
1051
  ThContainerBody,
1001
1052
  {
1002
1053
  ref: fullScreenBodyRef,
1003
- className: sheetStyles2.sheetBody,
1054
+ className: thorium_web_sheets_default.body,
1004
1055
  children
1005
1056
  }
1006
1057
  )
@@ -1026,21 +1077,31 @@ var StatefulDockedSheet = ({
1026
1077
  }) => {
1027
1078
  const { t } = useI18n();
1028
1079
  const dockPortal = flow && document.getElementById(flow);
1080
+ const dockedSheetRef = useRef(null);
1029
1081
  const dockedSheetHeaderRef = useRef(null);
1030
1082
  const dockedSheetBodyRef = useRef(null);
1031
1083
  const dockedSheetCloseRef = useRef(null);
1032
1084
  const direction = useAppSelector((state) => state.reader.direction);
1085
+ useEffect(() => {
1086
+ if (isOpen && dockedSheetRef.current && dockedSheetHeaderRef.current) {
1087
+ dockedSheetRef.current.style.setProperty(
1088
+ `--${prefixString("sheet-sticky-header")}`,
1089
+ `${dockedSheetHeaderRef.current.clientHeight}px`
1090
+ );
1091
+ }
1092
+ }, [isOpen]);
1033
1093
  const classFromFlow = useCallback(() => {
1034
1094
  if (flow === "dockingStart" /* start */) {
1035
- return direction === "ltr" /* ltr */ ? sheetStyles2.dockedSheetLeftBorder : sheetStyles2.dockedSheetRightBorder;
1095
+ return direction === "ltr" /* ltr */ ? thorium_web_sheets_default.dockedLeftBorder : thorium_web_sheets_default.dockedRightBorder;
1036
1096
  } else if (flow === "dockingEnd" /* end */) {
1037
- return direction === "ltr" /* ltr */ ? sheetStyles2.dockedSheetRightBorder : sheetStyles2.dockedSheetLeftBorder;
1097
+ return direction === "ltr" /* ltr */ ? thorium_web_sheets_default.dockedRightBorder : thorium_web_sheets_default.dockedLeftBorder;
1038
1098
  }
1039
1099
  }, [flow, direction]);
1040
1100
  if (React21.Children.toArray(children).length > 0) {
1041
1101
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
1042
1102
  ThDockedPanel,
1043
1103
  {
1104
+ ref: dockedSheetRef,
1044
1105
  isOpen,
1045
1106
  portal: dockPortal,
1046
1107
  focusOptions: {
@@ -1058,20 +1119,17 @@ var StatefulDockedSheet = ({
1058
1119
  },
1059
1120
  updateState: resetFocus
1060
1121
  },
1061
- className: classNames3(sheetStyles2.dockedSheet, className, classFromFlow()),
1062
- style: {
1063
- "--sheet-sticky-header": dockedSheetHeaderRef.current ? `${dockedSheetHeaderRef.current.clientHeight}px` : void 0
1064
- },
1122
+ className: classNames3(thorium_web_sheets_default.docked, className, classFromFlow()),
1065
1123
  children: [
1066
1124
  /* @__PURE__ */ jsx(
1067
1125
  ThContainerHeader,
1068
1126
  {
1069
1127
  ref: dockedSheetHeaderRef,
1070
- className: sheetStyles2.sheetHeader,
1128
+ className: thorium_web_sheets_default.header,
1071
1129
  label: heading,
1072
1130
  compounds: {
1073
1131
  heading: {
1074
- className: sheetStyles2.sheetHeading
1132
+ className: thorium_web_sheets_default.heading
1075
1133
  }
1076
1134
  },
1077
1135
  children: headerVariant === "previous" /* previous */ ? /* @__PURE__ */ jsx(
@@ -1080,7 +1138,7 @@ var StatefulDockedSheet = ({
1080
1138
  direction: direction === "ltr" ? "left" : "right",
1081
1139
  label: t("reader.app.back.trigger"),
1082
1140
  ref: dockedSheetCloseRef,
1083
- className: classNames3(className, readerSharedUI.backButton),
1141
+ className: classNames3(className, thorium_web_button_default.backButton),
1084
1142
  "aria-label": t("reader.app.back.trigger"),
1085
1143
  onPress: onClosePress
1086
1144
  }
@@ -1099,7 +1157,7 @@ var StatefulDockedSheet = ({
1099
1157
  ThContainerBody,
1100
1158
  {
1101
1159
  ref: dockedSheetBodyRef,
1102
- className: sheetStyles2.sheetBody,
1160
+ className: thorium_web_sheets_default.body,
1103
1161
  children
1104
1162
  }
1105
1163
  )
@@ -1319,6 +1377,16 @@ var useDocking = (key) => {
1319
1377
  sheetType
1320
1378
  };
1321
1379
  };
1380
+
1381
+ // src/components/Actions/JumpToPosition/assets/styles/thorium-web.jumpToPosition.module.css
1382
+ var thorium_web_jumpToPosition_default = {
1383
+ wrapper: "thorium_web_jumpToPosition_wrapper",
1384
+ form: "thorium_web_jumpToPosition_form",
1385
+ label: "thorium_web_jumpToPosition_label",
1386
+ input: "thorium_web_jumpToPosition_input",
1387
+ button: "thorium_web_jumpToPosition_button",
1388
+ numberField: "thorium_web_jumpToPosition_numberField"
1389
+ };
1322
1390
  var StatefulJumpToPositionContainer = ({
1323
1391
  triggerRef
1324
1392
  }) => {
@@ -1371,7 +1439,7 @@ var StatefulJumpToPositionContainer = ({
1371
1439
  id: "jumpToPosition" /* jumpToPosition */,
1372
1440
  triggerRef,
1373
1441
  heading: t("reader.jumpToPosition.heading"),
1374
- className: jumpToPositionStyles.jumpToPosition,
1442
+ className: thorium_web_jumpToPosition_default.wrapper,
1375
1443
  placement: "bottom",
1376
1444
  isOpen: actionState?.isOpen || false,
1377
1445
  onOpenChange: setOpen,
@@ -1382,11 +1450,11 @@ var StatefulJumpToPositionContainer = ({
1382
1450
  ThForm,
1383
1451
  {
1384
1452
  label: t("reader.jumpToPosition.go"),
1385
- className: jumpToPositionStyles.jumpToPositionForm,
1453
+ className: thorium_web_jumpToPosition_default.form,
1386
1454
  onSubmit: handleAction,
1387
1455
  compounds: {
1388
1456
  button: {
1389
- className: jumpToPositionStyles.jumpToPositionButton,
1457
+ className: thorium_web_jumpToPosition_default.button,
1390
1458
  isDisabled: !position || positionInRange()
1391
1459
  }
1392
1460
  },
@@ -1395,7 +1463,7 @@ var StatefulJumpToPositionContainer = ({
1395
1463
  {
1396
1464
  label,
1397
1465
  name: "jumpToPosition",
1398
- className: jumpToPositionStyles.jumpToPositionNumberField,
1466
+ className: thorium_web_jumpToPosition_default.numberField,
1399
1467
  onChange: setPosition,
1400
1468
  onInput: handleInput,
1401
1469
  value: position,
@@ -1406,10 +1474,10 @@ var StatefulJumpToPositionContainer = ({
1406
1474
  isWheelDisabled: true,
1407
1475
  compounds: {
1408
1476
  label: {
1409
- className: jumpToPositionStyles.jumpToPositionLabel
1477
+ className: thorium_web_jumpToPosition_default.label
1410
1478
  },
1411
1479
  input: {
1412
- className: jumpToPositionStyles.jumpToPositionInput,
1480
+ className: thorium_web_jumpToPosition_default.input,
1413
1481
  inputMode: "numeric"
1414
1482
  }
1415
1483
  }
@@ -1456,6 +1524,40 @@ var StatefulJumpToPositionTrigger = ({ variant }) => {
1456
1524
  }
1457
1525
  ) });
1458
1526
  };
1527
+
1528
+ // src/components/Settings/assets/styles/thorium-web.reader.settings.module.css
1529
+ var thorium_web_reader_settings_default = {
1530
+ wrapper: "thorium_web_reader_settings_wrapper",
1531
+ group: "thorium_web_reader_settings_group",
1532
+ advancedGroup: "thorium_web_reader_settings_advancedGroup",
1533
+ advancedIcon: "thorium_web_reader_settings_advancedIcon",
1534
+ label: "thorium_web_reader_settings_label",
1535
+ groupLabel: "thorium_web_reader_settings_groupLabel",
1536
+ radioWrapper: "thorium_web_reader_settings_radioWrapper",
1537
+ groupWrapper: "thorium_web_reader_settings_groupWrapper",
1538
+ numberField: "thorium_web_reader_settings_numberField",
1539
+ numberFieldWrapper: "thorium_web_reader_settings_numberFieldWrapper",
1540
+ sliderWrapper: "thorium_web_reader_settings_sliderWrapper",
1541
+ slider: "thorium_web_reader_settings_slider",
1542
+ resetButton: "thorium_web_reader_settings_resetButton",
1543
+ input: "thorium_web_reader_settings_input",
1544
+ radio: "thorium_web_reader_settings_radio",
1545
+ themeRadio: "thorium_web_reader_settings_themeRadio",
1546
+ themesWrapper: "thorium_web_reader_settings_themesWrapper",
1547
+ sliderLabel: "thorium_web_reader_settings_sliderLabel",
1548
+ sliderOutput: "thorium_web_reader_settings_sliderOutput",
1549
+ sliderTrack: "thorium_web_reader_settings_sliderTrack",
1550
+ sliderThumb: "thorium_web_reader_settings_sliderThumb",
1551
+ sliderPlaceholder: "thorium_web_reader_settings_sliderPlaceholder",
1552
+ sliderWithTicks: "thorium_web_reader_settings_sliderWithTicks",
1553
+ dropdown: "thorium_web_reader_settings_dropdown",
1554
+ dropdownButton: "thorium_web_reader_settings_dropdownButton",
1555
+ dropdownPopover: "thorium_web_reader_settings_dropdownPopover",
1556
+ dropdownListbox: "thorium_web_reader_settings_dropdownListbox",
1557
+ dropdownListboxItem: "thorium_web_reader_settings_dropdownListboxItem",
1558
+ switch: "thorium_web_reader_settings_switch",
1559
+ switchIndicator: "thorium_web_reader_settings_switchIndicator"
1560
+ };
1459
1561
  var StatefulGroupWrapper = ({
1460
1562
  label,
1461
1563
  moreLabel,
@@ -1477,18 +1579,18 @@ var StatefulGroupWrapper = ({
1477
1579
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
1478
1580
  ThSettingsWrapper,
1479
1581
  {
1480
- className: classNames3(settingsStyles8.readerSettingsGroup, settingsStyles8.readerSettingsAdvancedGroup),
1582
+ className: classNames3(thorium_web_reader_settings_default.group, thorium_web_reader_settings_default.advancedGroup),
1481
1583
  label,
1482
1584
  items: componentsMap,
1483
1585
  prefs: resolvedPrefs,
1484
1586
  compounds: {
1485
1587
  ...compounds?.heading ? { heading: compounds.heading } : {
1486
1588
  heading: {
1487
- className: classNames3(settingsStyles8.readerSettingsLabel, settingsStyles8.readerSettingsGroupLabel)
1589
+ className: classNames3(thorium_web_reader_settings_default.label, thorium_web_reader_settings_default.groupLabel)
1488
1590
  }
1489
1591
  },
1490
1592
  button: {
1491
- className: classNames3(readerSharedUI.icon, settingsStyles8.readerSettingsAdvancedIcon),
1593
+ className: classNames3(thorium_web_button_default.icon, thorium_web_reader_settings_default.advancedIcon),
1492
1594
  "aria-label": moreLabel,
1493
1595
  isDisabled,
1494
1596
  compounds: {
@@ -1497,7 +1599,7 @@ var StatefulGroupWrapper = ({
1497
1599
  closeDelay: preferences.theming.icon.tooltipDelay
1498
1600
  },
1499
1601
  tooltip: {
1500
- className: readerSharedUI.tooltip,
1602
+ className: thorium_web_button_default.tooltip,
1501
1603
  placement: "top",
1502
1604
  offset: preferences.theming.icon.tooltipOffset || 0
1503
1605
  },
@@ -1806,7 +1908,7 @@ var StatefulSettingsContainer = ({
1806
1908
  triggerRef,
1807
1909
  heading: getHeading(),
1808
1910
  headerVariant: getHeaderVariant(),
1809
- className: settingsStyles8.readerSettings,
1911
+ className: thorium_web_reader_settings_default.wrapper,
1810
1912
  placement: "bottom",
1811
1913
  isOpen: actionState?.isOpen || false,
1812
1914
  onOpenChange: setOpen,
@@ -1857,6 +1959,23 @@ var StatefulSettingsTrigger = ({ variant }) => {
1857
1959
  }
1858
1960
  ) });
1859
1961
  };
1962
+
1963
+ // src/components/Actions/Toc/assets/styles/thorium-web.toc.module.css
1964
+ var thorium_web_toc_default = {
1965
+ wrapper: "thorium_web_toc_wrapper",
1966
+ search: "thorium_web_toc_search",
1967
+ searchLabel: "thorium_web_toc_searchLabel",
1968
+ searchInput: "thorium_web_toc_searchInput",
1969
+ searchIcon: "thorium_web_toc_searchIcon",
1970
+ clearButton: "thorium_web_toc_clearButton",
1971
+ tree: "thorium_web_toc_tree",
1972
+ treeItem: "thorium_web_toc_treeItem",
1973
+ treeItemButton: "thorium_web_toc_treeItemButton",
1974
+ treeItemText: "thorium_web_toc_treeItemText",
1975
+ treeItemTextTitle: "thorium_web_toc_treeItemTextTitle",
1976
+ treeItemTextPosition: "thorium_web_toc_treeItemTextPosition",
1977
+ empty: "thorium_web_toc_empty"
1978
+ };
1860
1979
  var SvgChevronRight = (props) => /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 -960 960 960", width: "24px", fill: "inherit", ...props, children: /* @__PURE__ */ jsx("path", { d: "M504-480 320-664l56-56 240 240-240 240-56-56 184-184Z" }) });
1861
1980
  var chevron_right_default = SvgChevronRight;
1862
1981
  var StatefulTocContainer = ({ triggerRef }) => {
@@ -1908,7 +2027,7 @@ var StatefulTocContainer = ({ triggerRef }) => {
1908
2027
  const el = document.querySelector(`[data-key=${key}]`);
1909
2028
  const href = el?.getAttribute("data-href");
1910
2029
  if (!href) return;
1911
- const link = new Link$1({ href });
2030
+ const link = new Link({ href });
1912
2031
  const cb = actionState?.isOpen && (sheetType === "docked start" /* dockedStart */ || sheetType === "docked end" /* dockedEnd */) ? () => {
1913
2032
  dispatch(setTocEntry(key));
1914
2033
  dispatch(setImmersive(true));
@@ -1966,7 +2085,7 @@ var StatefulTocContainer = ({ triggerRef }) => {
1966
2085
  id: "toc" /* toc */,
1967
2086
  triggerRef,
1968
2087
  heading: t("reader.toc.heading"),
1969
- className: tocStyles.toc,
2088
+ className: thorium_web_toc_default.wrapper,
1970
2089
  placement: "bottom",
1971
2090
  isOpen: actionState?.isOpen || false,
1972
2091
  onOpenChange: setOpen,
@@ -1983,22 +2102,22 @@ var StatefulTocContainer = ({ triggerRef }) => {
1983
2102
  value: filterValue,
1984
2103
  onChange: setFilterValue,
1985
2104
  onClear: () => setFilterValue(""),
1986
- className: tocStyles.tocSearch,
2105
+ className: thorium_web_toc_default.search,
1987
2106
  compounds: {
1988
2107
  label: {
1989
- className: tocStyles.tocSearchLabel
2108
+ className: thorium_web_toc_default.searchLabel
1990
2109
  },
1991
2110
  input: {
1992
2111
  ref: searchInputRef,
1993
- className: tocStyles.tocSearchInput,
2112
+ className: thorium_web_toc_default.searchInput,
1994
2113
  placeholder: t("reader.toc.search.placeholder")
1995
2114
  },
1996
2115
  searchIcon: {
1997
- className: tocStyles.tocSearchIcon,
2116
+ className: thorium_web_toc_default.searchIcon,
1998
2117
  hidden: !!filterValue
1999
2118
  },
2000
2119
  clearButton: {
2001
- className: tocStyles.tocClearButton,
2120
+ className: thorium_web_toc_default.clearButton,
2002
2121
  isDisabled: !filterValue
2003
2122
  }
2004
2123
  }
@@ -2011,7 +2130,7 @@ var StatefulTocContainer = ({ triggerRef }) => {
2011
2130
  "aria-label": t("reader.toc.entries"),
2012
2131
  selectionMode: "single",
2013
2132
  items: displayedTocTree,
2014
- className: tocStyles.tocTree,
2133
+ className: thorium_web_toc_default.tree,
2015
2134
  onSelectionChange: handleAction,
2016
2135
  selectedKeys: tocEntry ? [tocEntry] : [],
2017
2136
  expandedKeys,
@@ -2021,7 +2140,7 @@ var StatefulTocContainer = ({ triggerRef }) => {
2021
2140
  TreeItem,
2022
2141
  {
2023
2142
  "data-href": item.href,
2024
- className: tocStyles.tocTreeItem,
2143
+ className: thorium_web_toc_default.treeItem,
2025
2144
  textValue: item.title || "",
2026
2145
  children: [
2027
2146
  /* @__PURE__ */ jsxs(TreeItemContent, { children: [
@@ -2029,14 +2148,14 @@ var StatefulTocContainer = ({ triggerRef }) => {
2029
2148
  Button,
2030
2149
  {
2031
2150
  slot: "chevron",
2032
- className: tocStyles.tocTreeItemButton,
2151
+ className: thorium_web_toc_default.treeItemButton,
2033
2152
  style: { transform: isRTL ? "scaleX(-1)" : "none" },
2034
2153
  children: /* @__PURE__ */ jsx(chevron_right_default, { "aria-hidden": "true", focusable: "false" })
2035
2154
  }
2036
2155
  ),
2037
- /* @__PURE__ */ jsxs("div", { className: tocStyles.tocTreeItemText, children: [
2038
- /* @__PURE__ */ jsx("div", { className: tocStyles.tocTreeItemTextTitle, children: item.title }),
2039
- item.position && /* @__PURE__ */ jsx("div", { className: tocStyles.tocTreeItemTextPosition, children: item.position })
2156
+ /* @__PURE__ */ jsxs("div", { className: thorium_web_toc_default.treeItemText, children: [
2157
+ /* @__PURE__ */ jsx("div", { className: thorium_web_toc_default.treeItemTextTitle, children: item.title }),
2158
+ item.position && /* @__PURE__ */ jsx("div", { className: thorium_web_toc_default.treeItemTextPosition, children: item.position })
2040
2159
  ] })
2041
2160
  ] }),
2042
2161
  /* @__PURE__ */ jsx(Collection, { items: item.children, children: renderItem })
@@ -2046,7 +2165,7 @@ var StatefulTocContainer = ({ triggerRef }) => {
2046
2165
  }
2047
2166
  }
2048
2167
  )
2049
- ] }) : /* @__PURE__ */ jsx("div", { className: tocStyles.empty, children: t("reader.toc.empty") })
2168
+ ] }) : /* @__PURE__ */ jsx("div", { className: thorium_web_toc_default.empty, children: t("reader.toc.empty") })
2050
2169
  }
2051
2170
  ) });
2052
2171
  };
@@ -2084,9 +2203,6 @@ var StatefulTocTrigger = ({ variant }) => {
2084
2203
  }
2085
2204
  ) });
2086
2205
  };
2087
-
2088
- // src/components/Settings/hooks/useGridTemplate.ts
2089
- var import_debounce = __toESM(require_debounce());
2090
2206
  var useGridTemplate = (ref, type = "columns") => {
2091
2207
  const [visibleColumns, setVisibleColumns] = useState(null);
2092
2208
  const updateVisibleColumns = () => {
@@ -2096,7 +2212,7 @@ var useGridTemplate = (ref, type = "columns") => {
2096
2212
  const columnCount = columns.replace("0px", "").split(" ").length;
2097
2213
  setVisibleColumns(columnCount);
2098
2214
  };
2099
- const debouncedUpdateVisibleColumns = (0, import_debounce.default)(updateVisibleColumns, 100);
2215
+ const debouncedUpdateVisibleColumns = debounce(updateVisibleColumns, 100);
2100
2216
  useEffect(() => {
2101
2217
  updateVisibleColumns();
2102
2218
  const resizeObserver = new ResizeObserver(debouncedUpdateVisibleColumns);
@@ -2214,7 +2330,7 @@ var StatefulRadioGroup = ({
2214
2330
  ThRadioGroup,
2215
2331
  {
2216
2332
  ref,
2217
- className: standalone ? settingsStyles8.readerSettingsGroup : "",
2333
+ className: standalone ? thorium_web_reader_settings_default.group : "",
2218
2334
  ...props,
2219
2335
  ...standalone ? { label } : { "aria-label": label },
2220
2336
  value,
@@ -2222,14 +2338,14 @@ var StatefulRadioGroup = ({
2222
2338
  items: useGraphicalNavigation !== false ? items : [],
2223
2339
  compounds: {
2224
2340
  wrapper: {
2225
- className: settingsStyles8.readerSettingsRadioWrapper,
2341
+ className: thorium_web_reader_settings_default.radioWrapper,
2226
2342
  ref: wrapperRef
2227
2343
  },
2228
2344
  label: {
2229
- className: settingsStyles8.readerSettingsLabel
2345
+ className: thorium_web_reader_settings_default.label
2230
2346
  },
2231
2347
  radio: {
2232
- className: settingsStyles8.readerSettingsRadio,
2348
+ className: thorium_web_reader_settings_default.radio,
2233
2349
  onKeyDown: useGraphicalNavigation !== false ? onKeyDown : void 0
2234
2350
  }
2235
2351
  },
@@ -2243,9 +2359,6 @@ var SvgArticle = (props) => /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.o
2243
2359
  var article_default = SvgArticle;
2244
2360
  var SvgMenuBook = (props) => /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 -960 960 960", width: "24px", fill: "inherit", ...props, children: /* @__PURE__ */ jsx("path", { d: "M560-564v-68q33-14 67.5-21t72.5-7q26 0 51 4t49 10v64q-24-9-48.5-13.5T700-600q-38 0-73 9.5T560-564Zm0 220v-68q33-14 67.5-21t72.5-7q26 0 51 4t49 10v64q-24-9-48.5-13.5T700-380q-38 0-73 9t-67 27Zm0-110v-68q33-14 67.5-21t72.5-7q26 0 51 4t49 10v64q-24-9-48.5-13.5T700-490q-38 0-73 9.5T560-454ZM260-320q47 0 91.5 10.5T440-278v-394q-41-24-87-36t-93-12q-36 0-71.5 7T120-692v396q35-12 69.5-18t70.5-6Zm260 42q44-21 88.5-31.5T700-320q36 0 70.5 6t69.5 18v-396q-33-14-68.5-21t-71.5-7q-47 0-93 12t-87 36v394Zm-40 118q-48-38-104-59t-116-21q-42 0-82.5 11T100-198q-21 11-40.5-1T40-234v-482q0-11 5.5-21T62-752q46-24 96-36t102-12q58 0 113.5 15T480-740q51-30 106.5-45T700-800q52 0 102 12t96 36q11 5 16.5 15t5.5 21v482q0 23-19.5 35t-40.5 1q-37-20-77.5-31T700-240q-60 0-116 21t-104 59ZM280-494Z" }) });
2245
2361
  var menu_book_default = SvgMenuBook;
2246
-
2247
- // src/components/Epub/Settings/StatefulColumns.tsx
2248
- var import_debounce2 = __toESM(require_debounce());
2249
2362
  var StatefulColumns = () => {
2250
2363
  const { t } = useI18n();
2251
2364
  const scroll = useAppSelector((state) => state.settings.scroll);
@@ -2305,7 +2418,7 @@ var StatefulColumns = () => {
2305
2418
  }, [submitPreferences, getSetting, updateEffectiveValue, dispatch]);
2306
2419
  const debouncedUpdate = useCallback(() => {
2307
2420
  const update = () => updateEffectiveValue(columnCount, getSetting("columnCount"));
2308
- (0, import_debounce2.default)(update, 50)();
2421
+ debounce(update, 50)();
2309
2422
  }, [columnCount, layoutSettings, getSetting, updateEffectiveValue]);
2310
2423
  useEffect(() => {
2311
2424
  debouncedUpdate();
@@ -2340,33 +2453,33 @@ var StatefulDropdown = ({
2340
2453
  ...props,
2341
2454
  ...standalone ? { label } : { "aria-label": label },
2342
2455
  className: classNames3(
2343
- settingsStyles8.readerSettingsDropdown,
2344
- standalone && settingsStyles8.readerSettingsGroup,
2456
+ thorium_web_reader_settings_default.dropdown,
2457
+ standalone && thorium_web_reader_settings_default.group,
2345
2458
  className
2346
2459
  ),
2347
2460
  compounds: {
2348
2461
  label: {
2349
- className: settingsStyles8.readerSettingsLabel,
2462
+ className: thorium_web_reader_settings_default.label,
2350
2463
  ...compounds?.label || {}
2351
2464
  },
2352
2465
  ...React21.isValidElement(compounds?.button) ? { button: compounds.button } : {
2353
2466
  button: {
2354
- className: settingsStyles8.readerSettingsDropdownButton,
2467
+ className: thorium_web_reader_settings_default.dropdownButton,
2355
2468
  ...compounds?.button || {}
2356
2469
  }
2357
2470
  },
2358
2471
  popover: {
2359
- className: settingsStyles8.readerSettingsDropdownPopover,
2472
+ className: thorium_web_reader_settings_default.dropdownPopover,
2360
2473
  placement: "bottom",
2361
2474
  ...compounds?.popover || {}
2362
2475
  },
2363
2476
  ...React21.isValidElement(compounds?.listbox) ? { listbox: compounds.listbox } : {
2364
2477
  listbox: {
2365
- className: settingsStyles8.readerSettingsDropdownListbox,
2478
+ className: thorium_web_reader_settings_default.dropdownListbox,
2366
2479
  ...compounds?.listbox || {}
2367
2480
  },
2368
2481
  listboxItem: {
2369
- className: settingsStyles8.readerSettingsDropdownListboxItem,
2482
+ className: thorium_web_reader_settings_default.dropdownListboxItem,
2370
2483
  ...compounds?.listboxItem || {}
2371
2484
  }
2372
2485
  }
@@ -2413,12 +2526,12 @@ var StatefulFontFamily = ({ standalone = true }) => {
2413
2526
  listbox: /* @__PURE__ */ jsx(
2414
2527
  ListBox,
2415
2528
  {
2416
- className: settingsStyles8.readerSettingsDropdownListbox,
2529
+ className: thorium_web_reader_settings_default.dropdownListbox,
2417
2530
  items: fontFamilyOptions.current,
2418
2531
  children: (item) => /* @__PURE__ */ jsx(
2419
2532
  ListBoxItem,
2420
2533
  {
2421
- className: settingsStyles8.readerSettingsDropdownListboxItem,
2534
+ className: thorium_web_reader_settings_default.dropdownListboxItem,
2422
2535
  id: item.id,
2423
2536
  textValue: item.value || void 0,
2424
2537
  style: { fontFamily: item.value || void 0 },
@@ -2499,16 +2612,16 @@ var StatefulSwitch = ({
2499
2612
  ...props,
2500
2613
  ...standalone ? { heading } : {},
2501
2614
  label,
2502
- className: settingsStyles8.readerSettingsSwitch,
2615
+ className: thorium_web_reader_settings_default.switch,
2503
2616
  compounds: {
2504
2617
  wrapper: {
2505
- className: settingsStyles8.readerSettingsGroup
2618
+ className: thorium_web_reader_settings_default.group
2506
2619
  },
2507
2620
  heading: {
2508
- className: settingsStyles8.readerSettingsLabel
2621
+ className: thorium_web_reader_settings_default.label
2509
2622
  },
2510
2623
  indicator: {
2511
- className: settingsStyles8.readerSettingsSwitchIndicator
2624
+ className: thorium_web_reader_settings_default.switchIndicator
2512
2625
  }
2513
2626
  }
2514
2627
  }
@@ -2602,35 +2715,35 @@ var StatefulNumberField = ({
2602
2715
  ...props,
2603
2716
  ...standalone ? { label } : { "aria-label": label },
2604
2717
  placeholder,
2605
- className: settingsStyles8.readerSettingsNumberField,
2718
+ className: thorium_web_reader_settings_default.numberField,
2606
2719
  compounds: {
2607
2720
  wrapper: {
2608
2721
  className: classNames3(
2609
- settingsStyles8.readerSettingsNumberFieldWrapper,
2610
- standalone && settingsStyles8.readerSettingsGroup
2722
+ thorium_web_reader_settings_default.numberFieldWrapper,
2723
+ standalone && thorium_web_reader_settings_default.group
2611
2724
  )
2612
2725
  },
2613
2726
  group: {
2614
- className: settingsStyles8.readerSettingsGroupWrapper
2727
+ className: thorium_web_reader_settings_default.groupWrapper
2615
2728
  },
2616
2729
  label: {
2617
- className: settingsStyles8.readerSettingsLabel
2730
+ className: thorium_web_reader_settings_default.label
2618
2731
  },
2619
2732
  stepper: {
2620
- className: readerSharedUI.icon
2733
+ className: thorium_web_button_default.icon
2621
2734
  },
2622
2735
  input: {
2623
- className: settingsStyles8.readerSettingsInput
2736
+ className: thorium_web_reader_settings_default.input
2624
2737
  },
2625
2738
  reset: {
2626
- className: classNames3(readerSharedUI.icon, settingsStyles8.readerSettingsResetButton),
2739
+ className: classNames3(thorium_web_button_default.icon, thorium_web_reader_settings_default.resetButton),
2627
2740
  compounds: {
2628
2741
  tooltipTrigger: {
2629
2742
  delay: preferences.theming.arrow.tooltipDelay,
2630
2743
  closeDelay: preferences.theming.arrow.tooltipDelay
2631
2744
  },
2632
2745
  tooltip: {
2633
- className: readerSharedUI.tooltip
2746
+ className: thorium_web_button_default.tooltip
2634
2747
  },
2635
2748
  label: resetLabel ?? t("reader.settings.reset")
2636
2749
  }
@@ -2652,7 +2765,7 @@ var StatefulSlider = ({
2652
2765
  const { preferences } = usePreferences();
2653
2766
  const style = {
2654
2767
  ...displayTicks && props.range && props.step ? {
2655
- "--slider-ticks": (() => {
2768
+ "--th-slider-ticks": (() => {
2656
2769
  const [min, max] = [Math.min(...props.range), Math.max(...props.range)];
2657
2770
  const step = props.step || 1;
2658
2771
  const range = max - min;
@@ -2670,41 +2783,41 @@ var StatefulSlider = ({
2670
2783
  ...standalone ? { label } : { "aria-label": label },
2671
2784
  placeholder,
2672
2785
  className: classNames3(
2673
- settingsStyles8.readerSettingsSlider,
2674
- displayTicks && settingsStyles8.readerSettingsSliderWithTicks
2786
+ thorium_web_reader_settings_default.slider,
2787
+ displayTicks && thorium_web_reader_settings_default.sliderWithTicks
2675
2788
  ),
2676
2789
  style,
2677
2790
  compounds: {
2678
2791
  wrapper: {
2679
2792
  className: classNames3(
2680
- settingsStyles8.readerSettingsSliderWrapper,
2681
- standalone && settingsStyles8.readerSettingsGroup
2793
+ thorium_web_reader_settings_default.sliderWrapper,
2794
+ standalone && thorium_web_reader_settings_default.group
2682
2795
  )
2683
2796
  },
2684
2797
  label: {
2685
- className: classNames3(settingsStyles8.readerSettingsLabel, settingsStyles8.readerSettingsSliderLabel)
2798
+ className: classNames3(thorium_web_reader_settings_default.label, thorium_web_reader_settings_default.sliderLabel)
2686
2799
  },
2687
2800
  output: {
2688
- className: settingsStyles8.readerSettingsSliderOutput
2801
+ className: thorium_web_reader_settings_default.sliderOutput
2689
2802
  },
2690
2803
  placeholder: {
2691
- className: settingsStyles8.readerSettingsSliderPlaceholder
2804
+ className: thorium_web_reader_settings_default.sliderPlaceholder
2692
2805
  },
2693
2806
  track: {
2694
- className: settingsStyles8.readerSettingsSliderTrack
2807
+ className: thorium_web_reader_settings_default.sliderTrack
2695
2808
  },
2696
2809
  thumb: {
2697
- className: settingsStyles8.readerSettingsSliderThumb
2810
+ className: thorium_web_reader_settings_default.sliderThumb
2698
2811
  },
2699
2812
  reset: {
2700
- className: classNames3(readerSharedUI.icon, settingsStyles8.readerSettingsResetButton),
2813
+ className: classNames3(thorium_web_button_default.icon, thorium_web_reader_settings_default.resetButton),
2701
2814
  compounds: {
2702
2815
  tooltipTrigger: {
2703
2816
  delay: preferences.theming.arrow.tooltipDelay,
2704
2817
  closeDelay: preferences.theming.arrow.tooltipDelay
2705
2818
  },
2706
2819
  tooltip: {
2707
- className: readerSharedUI.tooltip
2820
+ className: thorium_web_button_default.tooltip
2708
2821
  },
2709
2822
  label: resetLabel ?? t("reader.settings.reset")
2710
2823
  }
@@ -3566,14 +3679,14 @@ var StatefulTheme = () => {
3566
3679
  "div",
3567
3680
  {
3568
3681
  ref: radioGroupWrapperRef,
3569
- className: classNames3(settingsStyles8.readerSettingsRadioWrapper, settingsStyles8.readerSettingsThemesWrapper),
3682
+ className: classNames3(thorium_web_reader_settings_default.radioWrapper, thorium_web_reader_settings_default.themesWrapper),
3570
3683
  children: themeItems.current.map(
3571
3684
  (themeItem) => /* @__PURE__ */ jsx(
3572
3685
  Radio,
3573
3686
  {
3574
3687
  className: classNames3(
3575
- settingsStyles8.readerSettingsRadio,
3576
- settingsStyles8.readerSettingsThemeRadio
3688
+ thorium_web_reader_settings_default.radio,
3689
+ thorium_web_reader_settings_default.themeRadio
3577
3690
  ),
3578
3691
  value: themeItem,
3579
3692
  id: themeItem,
@@ -3743,7 +3856,7 @@ var createDefaultPlugin = () => {
3743
3856
  id: "core",
3744
3857
  name: "Core Components",
3745
3858
  description: "Default components for Thorium Web Epub StatefulReader",
3746
- version: "1.0.9",
3859
+ version: "1.1.0",
3747
3860
  components: {
3748
3861
  actions: {
3749
3862
  ["fullscreen" /* fullscreen */]: {
@@ -3833,86 +3946,6 @@ var createDefaultPlugin = () => {
3833
3946
  }
3834
3947
  };
3835
3948
  };
3836
- var StatefulLoader = ({ isLoading, children }) => {
3837
- const { t } = useI18n();
3838
- return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
3839
- ThLoader,
3840
- {
3841
- isLoading,
3842
- loader: /* @__PURE__ */ jsx("div", { className: readerLoaderStyles.readerLoader, children: t("reader.app.loading") }),
3843
- className: readerLoaderStyles.readerLoaderWrapper,
3844
- children
3845
- }
3846
- ) });
3847
- };
3848
- var DefaultImage = ({
3849
- src,
3850
- alt = ""
3851
- }) => /* @__PURE__ */ jsx(
3852
- "img",
3853
- {
3854
- src,
3855
- alt,
3856
- className: publicationGridStyles.publicationImage,
3857
- loading: "lazy"
3858
- }
3859
- );
3860
- var PublicationGrid = ({
3861
- publications,
3862
- columnWidth = 400,
3863
- gap = "1.5rem",
3864
- renderCover = (publication) => /* @__PURE__ */ jsx(
3865
- DefaultImage,
3866
- {
3867
- src: publication.cover,
3868
- alt: ""
3869
- }
3870
- )
3871
- }) => {
3872
- const renderCoverWithClass = (publication) => {
3873
- const cover = renderCover(publication);
3874
- if (!isValidElement(cover)) {
3875
- return /* @__PURE__ */ jsx(
3876
- DefaultImage,
3877
- {
3878
- src: publication.cover,
3879
- alt: ""
3880
- }
3881
- );
3882
- }
3883
- return cloneElement(cover, {
3884
- className: classNames3(
3885
- publicationGridStyles.publicationImage,
3886
- cover.props.className
3887
- )
3888
- });
3889
- };
3890
- return /* @__PURE__ */ jsx(
3891
- ThGrid,
3892
- {
3893
- className: publicationGridStyles.publicationGrid,
3894
- items: publications,
3895
- columnWidth,
3896
- gap,
3897
- renderItem: (publication, index) => /* @__PURE__ */ jsxs(
3898
- Link,
3899
- {
3900
- href: publication.url,
3901
- className: publicationGridStyles.publicationCard,
3902
- children: [
3903
- /* @__PURE__ */ jsx("figure", { className: publicationGridStyles.publicationCover, children: renderCoverWithClass(publication) }),
3904
- /* @__PURE__ */ jsxs("div", { className: publicationGridStyles.publicationInfo, children: [
3905
- /* @__PURE__ */ jsx("h2", { className: publicationGridStyles.publicationTitle, children: publication.title }),
3906
- /* @__PURE__ */ jsx("p", { className: publicationGridStyles.publicationAuthor, children: publication.author }),
3907
- publication.rendition && /* @__PURE__ */ jsx("p", { className: publicationGridStyles.publicationRendition, children: publication.rendition })
3908
- ] })
3909
- ]
3910
- },
3911
- index
3912
- )
3913
- }
3914
- );
3915
- };
3916
3949
  var StatefulPreferencesProvider = ({
3917
3950
  children,
3918
3951
  initialPreferences = defaultPreferences
@@ -3980,7 +4013,7 @@ var usePublication = ({
3980
4013
  return;
3981
4014
  }
3982
4015
  const decodedUrl = decodeURIComponent(url);
3983
- const manifestLink = new Link$1({ href: decodedUrl });
4016
+ const manifestLink = new Link({ href: decodedUrl });
3984
4017
  const fetcher = new HttpFetcher(void 0);
3985
4018
  try {
3986
4019
  const fetched = fetcher.get(manifestLink);
@@ -4009,6 +4042,23 @@ var usePublication = ({
4009
4042
  selfLink
4010
4043
  };
4011
4044
  };
4045
+
4046
+ // src/components/assets/styles/thorium-web.reader.app.module.css
4047
+ var thorium_web_reader_app_default = {
4048
+ wrapper: "thorium_web_reader_app_wrapper",
4049
+ main: "thorium_web_reader_app_main",
4050
+ shell: "thorium_web_reader_app_shell",
4051
+ leftDock: "thorium_web_reader_app_leftDock",
4052
+ rightDock: "thorium_web_reader_app_rightDock",
4053
+ bottomBar: "thorium_web_reader_app_bottomBar",
4054
+ topBar: "thorium_web_reader_app_topBar",
4055
+ barOverlay: "thorium_web_reader_app_barOverlay",
4056
+ headerOverlay: "thorium_web_reader_app_headerOverlay",
4057
+ footerOverlay: "thorium_web_reader_app_footerOverlay",
4058
+ iframeContainer: "thorium_web_reader_app_iframeContainer",
4059
+ loading: "thorium_web_reader_app_loading",
4060
+ srOnly: "thorium_web_reader_app_srOnly"
4061
+ };
4012
4062
  var useResizablePanel = (panel) => {
4013
4063
  const { preferences } = usePreferences();
4014
4064
  const defaultWidth = preferences.theming.layout.defaults.dockingWidth;
@@ -4085,19 +4135,19 @@ var DockHandle = ({
4085
4135
  const direction = useAppSelector((state) => state.reader.direction);
4086
4136
  const classFromFlow = useCallback(() => {
4087
4137
  if (flow === "dockingStart" /* start */) {
4088
- return direction === "ltr" /* ltr */ ? dockingStyles2.dockResizeHandleGrabLeft : dockingStyles2.dockResizeHandleGrabRight;
4138
+ return direction === "ltr" /* ltr */ ? thorium_web_docking_default.resizeHandleGrabLeft : thorium_web_docking_default.resizeHandleGrabRight;
4089
4139
  } else if (flow === "dockingEnd" /* end */) {
4090
- return direction === "ltr" /* ltr */ ? dockingStyles2.dockResizeHandleGrabRight : dockingStyles2.dockResizeHandleGrabLeft;
4140
+ return direction === "ltr" /* ltr */ ? thorium_web_docking_default.resizeHandleGrabRight : thorium_web_docking_default.resizeHandleGrabLeft;
4091
4141
  }
4092
4142
  }, [flow, direction]);
4093
4143
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
4094
4144
  PanelResizeHandle,
4095
4145
  {
4096
4146
  id: handleID,
4097
- className: dockingStyles2.dockResizeHandle,
4147
+ className: thorium_web_docking_default.resizeHandle,
4098
4148
  disabled: !isResizable,
4099
4149
  tabIndex: isPopulated ? 0 : -1,
4100
- children: isResizable && hasDragIndicator && /* @__PURE__ */ jsx("div", { className: classNames3(dockingStyles2.dockResizeHandleGrab, classFromFlow()) })
4150
+ children: isResizable && hasDragIndicator && /* @__PURE__ */ jsx("div", { className: classNames3(thorium_web_docking_default.resizeHandleGrab, classFromFlow()) })
4101
4151
  }
4102
4152
  ) });
4103
4153
  };
@@ -4115,7 +4165,7 @@ var DockPanel = ({
4115
4165
  const panelRef = useRef(null);
4116
4166
  const direction = useAppSelector((state) => state.reader.direction);
4117
4167
  const dispatch = useAppDispatch();
4118
- const dockClassName = flow === "dockingEnd" /* end */ && direction === "ltr" /* ltr */ ? "right-dock" : "left-dock";
4168
+ const dockClassName = flow === "dockingEnd" /* end */ && direction === "ltr" /* ltr */ ? thorium_web_reader_app_default.rightDock : thorium_web_reader_app_default.leftDock;
4119
4169
  const makeDockLabel = useCallback(() => {
4120
4170
  let label = "";
4121
4171
  if (flow === "dockingEnd" /* end */ && direction === "ltr" /* ltr */) {
@@ -4188,7 +4238,7 @@ var DockPanel = ({
4188
4238
  {
4189
4239
  id: flow,
4190
4240
  "aria-label": makeDockLabel(),
4191
- className: classNames3(dockingStyles2.dockPanelContainer, dockClassName)
4241
+ className: classNames3(thorium_web_docking_default.panelContainer, dockClassName)
4192
4242
  }
4193
4243
  )
4194
4244
  }
@@ -4264,6 +4314,18 @@ var StatefulDockingWrapper = ({
4264
4314
  ] }) });
4265
4315
  }
4266
4316
  };
4317
+
4318
+ // src/components/assets/styles/thorium-web.reader.header.module.css
4319
+ var thorium_web_reader_header_default = {
4320
+ header: "thorium_web_reader_header_header",
4321
+ backlinkWrapper: "thorium_web_reader_header_backlinkWrapper",
4322
+ actionsWrapper: "thorium_web_reader_header_actionsWrapper"
4323
+ };
4324
+
4325
+ // src/components/assets/styles/thorium-web.backlink.module.css
4326
+ var thorium_web_backlink_default = {
4327
+ link: "thorium_web_backlink_link"
4328
+ };
4267
4329
  var StatefulBackLink = ({
4268
4330
  className
4269
4331
  }) => {
@@ -4275,14 +4337,14 @@ var StatefulBackLink = ({
4275
4337
  const href = preferences.theming.header?.backLink?.href;
4276
4338
  const content = preferences.theming.header?.backLink?.content;
4277
4339
  const visibility = preferences.theming.header?.backLink?.visibility || "partially";
4278
- const backLinkClassName = classNames3(backLinkStyles.backLink, visibility === "always" ? readerSharedUI.alwaysVisible : readerSharedUI.partiallyVisible);
4340
+ const backLinkClassName = classNames3(thorium_web_backlink_default.link, visibility === "always" ? thorium_web_button_default.alwaysVisible : thorium_web_button_default.partiallyVisible);
4279
4341
  const compounds = {
4280
4342
  tooltipTrigger: {
4281
4343
  delay: preferences.theming.arrow.tooltipDelay,
4282
4344
  closeDelay: preferences.theming.arrow.tooltipDelay
4283
4345
  },
4284
4346
  tooltip: {
4285
- className: readerSharedUI.tooltip
4347
+ className: thorium_web_button_default.tooltip
4286
4348
  },
4287
4349
  label: t("reader.app.header.backLink.tooltip")
4288
4350
  };
@@ -4478,8 +4540,7 @@ var StatefulReaderHeader = ({
4478
4540
  /* @__PURE__ */ jsx(
4479
4541
  ThInteractiveOverlay,
4480
4542
  {
4481
- id: "reader-header-overlay",
4482
- className: "bar-overlay",
4543
+ className: classNames3(thorium_web_reader_app_default.barOverlay, thorium_web_reader_app_default.headerOverlay),
4483
4544
  isActive: layout === "layered-ui" /* layered */ && isImmersive && !isHovering,
4484
4545
  onMouseEnter: setHover,
4485
4546
  onMouseLeave: removeHover
@@ -4489,14 +4550,13 @@ var StatefulReaderHeader = ({
4489
4550
  ThHeader,
4490
4551
  {
4491
4552
  ref: headerRef,
4492
- className: readerHeaderStyles.header,
4493
- id: "top-bar",
4553
+ className: classNames3(thorium_web_reader_app_default.topBar, thorium_web_reader_header_default.header),
4494
4554
  "aria-label": t("reader.app.header.label"),
4495
4555
  onMouseEnter: setHover,
4496
4556
  onMouseLeave: removeHover,
4497
4557
  ...focusWithinProps,
4498
4558
  children: [
4499
- preferences.theming.header?.backLink && /* @__PURE__ */ jsx(StatefulBackLink, { className: readerHeaderStyles.backLinkWrapper }),
4559
+ preferences.theming.header?.backLink && /* @__PURE__ */ jsx(StatefulBackLink, { className: thorium_web_reader_header_default.backlinkWrapper }),
4500
4560
  /* @__PURE__ */ jsx(StatefulReaderRunningHead, { formatPref: runningHeadFormatPref }),
4501
4561
  /* @__PURE__ */ jsx(
4502
4562
  StatefulCollapsibleActionsBar,
@@ -4507,9 +4567,9 @@ var StatefulReaderHeader = ({
4507
4567
  ...preferences.actions,
4508
4568
  displayOrder: actionsOrder
4509
4569
  },
4510
- className: readerHeaderStyles.actionsWrapper,
4570
+ className: thorium_web_reader_header_default.actionsWrapper,
4511
4571
  "aria-label": t("reader.app.header.actions"),
4512
- overflowMenuClassName: !isScroll || preferences.affordances.scroll.hintInImmersive ? overflowMenuStyles.hintButton : void 0
4572
+ overflowMenuClassName: !isScroll || preferences.affordances.scroll.hintInImmersive ? thorium_web_overflow_default.hint : void 0
4513
4573
  }
4514
4574
  )
4515
4575
  ]
@@ -4517,6 +4577,21 @@ var StatefulReaderHeader = ({
4517
4577
  )
4518
4578
  ] });
4519
4579
  };
4580
+
4581
+ // src/components/assets/styles/thorium-web.reader.pagination.module.css
4582
+ var thorium_web_reader_pagination_default = {
4583
+ wrapper: "thorium_web_reader_pagination_wrapper",
4584
+ listItem: "thorium_web_reader_pagination_listItem",
4585
+ previousButton: "thorium_web_reader_pagination_previousButton",
4586
+ progression: "thorium_web_reader_pagination_progression",
4587
+ nextButton: "thorium_web_reader_pagination_nextButton",
4588
+ label: "thorium_web_reader_pagination_label"
4589
+ };
4590
+
4591
+ // src/components/assets/styles/thorium-web.reader.progression.module.css
4592
+ var thorium_web_reader_progression_default = {
4593
+ wrapper: "thorium_web_reader_progression_wrapper"
4594
+ };
4520
4595
  var StatefulReaderProgression = ({
4521
4596
  className,
4522
4597
  formatPref,
@@ -4653,8 +4728,8 @@ var StatefulReaderProgression = ({
4653
4728
  return /* @__PURE__ */ jsx(
4654
4729
  ThProgression,
4655
4730
  {
4656
- id: progressionStyles.current,
4657
- className,
4731
+ id: "current-progression",
4732
+ className: classNames3(thorium_web_reader_progression_default.wrapper, className),
4658
4733
  "aria-label": t("reader.app.progression.wrapper"),
4659
4734
  children: displayText
4660
4735
  }
@@ -4694,7 +4769,7 @@ var StatefulReaderPagination = ({
4694
4769
  ThPagination,
4695
4770
  {
4696
4771
  ref,
4697
- className: readerPaginationStyles2.pagination,
4772
+ className: thorium_web_reader_pagination_default.wrapper,
4698
4773
  links,
4699
4774
  compounds: updatedCompounds,
4700
4775
  ...props,
@@ -4749,9 +4824,9 @@ var StatefulReaderFooter = ({
4749
4824
  if (previous) {
4750
4825
  links.previous = {
4751
4826
  node: breakpoint !== "compact" /* compact */ && breakpoint !== "medium" /* medium */ ? /* @__PURE__ */ jsxs(Fragment, { children: [
4752
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: t("reader.navigation.scroll.prevA11yLabel") }),
4753
- /* @__PURE__ */ jsx("span", { className: readerPaginationStyles2.paginationLabel, children: timeline?.previousItem?.title || previous.title || t("reader.navigation.scroll.prevLabel") })
4754
- ] }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("span", { className: readerPaginationStyles2.paginationLabel, children: t("reader.navigation.scroll.prevLabel") }) }),
4827
+ /* @__PURE__ */ jsx("span", { className: thorium_web_reader_app_default.srOnly, children: t("reader.navigation.scroll.prevA11yLabel") }),
4828
+ /* @__PURE__ */ jsx("span", { className: thorium_web_reader_pagination_default.label, children: timeline?.previousItem?.title || previous.title || t("reader.navigation.scroll.prevLabel") })
4829
+ ] }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("span", { className: thorium_web_reader_pagination_default.label, children: t("reader.navigation.scroll.prevLabel") }) }),
4755
4830
  onPress: () => go(previous, !reducedMotion, () => {
4756
4831
  })
4757
4832
  };
@@ -4759,9 +4834,9 @@ var StatefulReaderFooter = ({
4759
4834
  if (next) {
4760
4835
  links.next = {
4761
4836
  node: breakpoint !== "compact" /* compact */ && breakpoint !== "medium" /* medium */ ? /* @__PURE__ */ jsxs(Fragment, { children: [
4762
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: t("reader.navigation.scroll.nextA11yLabel") }),
4763
- /* @__PURE__ */ jsx("span", { className: readerPaginationStyles2.paginationLabel, children: timeline?.nextItem?.title || next.title || t("reader.navigation.scroll.nextLabel") })
4764
- ] }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("span", { className: readerPaginationStyles2.paginationLabel, children: t("reader.navigation.scroll.nextLabel") }) }),
4837
+ /* @__PURE__ */ jsx("span", { className: thorium_web_reader_app_default.srOnly, children: t("reader.navigation.scroll.nextA11yLabel") }),
4838
+ /* @__PURE__ */ jsx("span", { className: thorium_web_reader_pagination_default.label, children: timeline?.nextItem?.title || next.title || t("reader.navigation.scroll.nextLabel") })
4839
+ ] }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("span", { className: thorium_web_reader_pagination_default.label, children: t("reader.navigation.scroll.nextLabel") }) }),
4765
4840
  onPress: () => go(next, !reducedMotion, () => {
4766
4841
  })
4767
4842
  };
@@ -4783,8 +4858,7 @@ var StatefulReaderFooter = ({
4783
4858
  /* @__PURE__ */ jsx(
4784
4859
  ThInteractiveOverlay,
4785
4860
  {
4786
- id: "reader-footer-overlay",
4787
- className: "bar-overlay",
4861
+ className: classNames3(thorium_web_reader_app_default.barOverlay, thorium_web_reader_app_default.footerOverlay),
4788
4862
  isActive: layout === "layered-ui" /* layered */ && isImmersive && !isHovering,
4789
4863
  onMouseEnter: setHover,
4790
4864
  onMouseLeave: removeHover
@@ -4794,7 +4868,7 @@ var StatefulReaderFooter = ({
4794
4868
  ThFooter,
4795
4869
  {
4796
4870
  ref: footerRef,
4797
- id: "bottom-bar",
4871
+ className: thorium_web_reader_app_default.bottomBar,
4798
4872
  "aria-label": t("reader.app.footer.label"),
4799
4873
  onMouseEnter: setHover,
4800
4874
  onMouseLeave: removeHover,
@@ -4806,21 +4880,21 @@ var StatefulReaderFooter = ({
4806
4880
  links: updateLinks(),
4807
4881
  compounds: {
4808
4882
  listItem: {
4809
- className: readerPaginationStyles2.paginationListItem
4883
+ className: thorium_web_reader_pagination_default.listItem
4810
4884
  },
4811
4885
  previousButton: {
4812
- className: readerPaginationStyles2.previousButton,
4886
+ className: thorium_web_reader_pagination_default.previousButton,
4813
4887
  preventFocusOnPress: true
4814
4888
  },
4815
4889
  nextButton: {
4816
- className: readerPaginationStyles2.nextButton,
4890
+ className: thorium_web_reader_pagination_default.nextButton,
4817
4891
  preventFocusOnPress: true
4818
4892
  }
4819
4893
  },
4820
4894
  children: /* @__PURE__ */ jsx(
4821
4895
  StatefulReaderProgression,
4822
4896
  {
4823
- className: readerPaginationStyles2.progression,
4897
+ className: thorium_web_reader_pagination_default.progression,
4824
4898
  formatPref: progressionFormatPref,
4825
4899
  fallbackVariant: progressionFormatFallback
4826
4900
  }
@@ -4947,7 +5021,30 @@ var Peripherals = class {
4947
5021
  }
4948
5022
  }
4949
5023
  };
5024
+ var LAYOUT_CLASSES = {
5025
+ ["stacked-ui" /* stacked */]: "thorium_web_stackedUI",
5026
+ ["layered-ui" /* layered */]: "thorium_web_layeredUI"
5027
+ };
5028
+ function getReaderClassNames(options) {
5029
+ const {
5030
+ layoutUI,
5031
+ isScroll,
5032
+ isImmersive = false,
5033
+ isHovering = false,
5034
+ isFXL = false,
5035
+ breakpoint
5036
+ } = options;
5037
+ return classNames3(
5038
+ thorium_web_reader_app_default.shell,
5039
+ isScroll ? "thorium_web_isScroll" : "thorium_web_isPaged",
5040
+ isImmersive && "thorium_web_isImmersive",
5041
+ isHovering && "thorium_web_isHovering",
5042
+ isFXL ? "thorium_web_isFXL" : "thorium_web_isReflow",
5043
+ LAYOUT_CLASSES[layoutUI],
5044
+ breakpoint ? `thorium_web_is${breakpoint.charAt(0).toUpperCase() + breakpoint.slice(1)}` : void 0
5045
+ );
5046
+ }
4950
5047
 
4951
- export { DefaultImage, NavigatorProvider, Peripherals, PublicationGrid, StatefulActionIcon, StatefulBottomSheet, StatefulCollapsibleActionsBar, StatefulColumns, StatefulDockedSheet, StatefulDockingWrapper, StatefulDropdown, StatefulFontFamily, StatefulFullScreenSheet, StatefulFullscreenTrigger, StatefulGroupWrapper, StatefulHyphens, StatefulJumpToPositionContainer, StatefulJumpToPositionTrigger, StatefulLayout, StatefulLetterSpacing, StatefulLineHeight, StatefulLoader, StatefulNumberField, StatefulOverflowMenu, StatefulOverflowMenuItem, StatefulParagraphIndent, StatefulParagraphSpacing, StatefulPopoverSheet, StatefulPreferencesProvider, StatefulPublisherStyles, StatefulRadioGroup, StatefulReaderFooter, StatefulReaderHeader, StatefulSettingsContainer, StatefulSettingsTrigger, StatefulSheetWrapper, StatefulSlider, StatefulSpacingGroup, StatefulSpacingGroupContainer, StatefulSpacingPresets, StatefulSwitch, StatefulTextAlign, StatefulTextGroup, StatefulTextGroupContainer, StatefulTextNormalize, StatefulTheme, StatefulTocContainer, StatefulTocTrigger, StatefulWordSpacing, StatefulZoom, ThPluginProvider, ThPluginRegistry, UnstableStatefulFontWeight, createDefaultPlugin, useDocking, useGridNavigation, useGridTemplate, useLineHeight, useNavigator, usePublication, useReaderTransitions, useSpacingPresets };
4952
- //# sourceMappingURL=chunk-PVGIY5SC.mjs.map
4953
- //# sourceMappingURL=chunk-PVGIY5SC.mjs.map
5048
+ export { NavigatorProvider, Peripherals, StatefulActionIcon, StatefulBottomSheet, StatefulCollapsibleActionsBar, StatefulColumns, StatefulDockedSheet, StatefulDockingWrapper, StatefulDropdown, StatefulFontFamily, StatefulFullScreenSheet, StatefulFullscreenTrigger, StatefulGroupWrapper, StatefulHyphens, StatefulJumpToPositionContainer, StatefulJumpToPositionTrigger, StatefulLayout, StatefulLetterSpacing, StatefulLineHeight, StatefulNumberField, StatefulOverflowMenu, StatefulOverflowMenuItem, StatefulParagraphIndent, StatefulParagraphSpacing, StatefulPopoverSheet, StatefulPreferencesProvider, StatefulPublisherStyles, StatefulRadioGroup, StatefulReaderFooter, StatefulReaderHeader, StatefulSettingsContainer, StatefulSettingsTrigger, StatefulSheetWrapper, StatefulSlider, StatefulSpacingGroup, StatefulSpacingGroupContainer, StatefulSpacingPresets, StatefulSwitch, StatefulTextAlign, StatefulTextGroup, StatefulTextGroupContainer, StatefulTextNormalize, StatefulTheme, StatefulTocContainer, StatefulTocTrigger, StatefulWordSpacing, StatefulZoom, ThPluginProvider, ThPluginRegistry, UnstableStatefulFontWeight, createDefaultPlugin, getReaderClassNames, thorium_web_button_default, thorium_web_reader_app_default, useDocking, useGridNavigation, useGridTemplate, useLineHeight, useNavigator, usePublication, useReaderTransitions, useSpacingPresets };
5049
+ //# sourceMappingURL=chunk-D24O64OP.mjs.map
5050
+ //# sourceMappingURL=chunk-D24O64OP.mjs.map