@beweco/aurora-ui 0.6.23 → 0.6.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -7419,6 +7419,55 @@ function formatAuroraThemeTooltip(entry) {
7419
7419
  return "".concat(family, " \u00B7 ").concat(mode);
7420
7420
  }
7421
7421
 
7422
+ var HEROUI_THEME_STORAGE_KEY = "heroui-theme";
7423
+ /** Debe coincidir con `THEME_MODE_COOKIE_NAME` en SMBs (`apply-initial-session-theme`). */
7424
+ var BEWEOS_THEME_MODE_COOKIE_NAME = "beweos_theme_mode";
7425
+ var normalizeStoredHeroUiTheme = function (raw) {
7426
+ var t = raw.trim();
7427
+ if (t === "dark" || t === "system") {
7428
+ return "light";
7429
+ }
7430
+ if (t.endsWith("-dark")) {
7431
+ return t.replace(/-dark$/, "-light");
7432
+ }
7433
+ return t;
7434
+ };
7435
+ /**
7436
+ * Asegura apariencia solo clara antes de montar React: corrige `localStorage` de HeroUI,
7437
+ * clases `dark` / `*-dark` en `<html>`, `color-scheme: light` y elimina la cookie de modo.
7438
+ * Debe ejecutarse lo antes posible en el entry (p. ej. justo antes de `createRoot`).
7439
+ */
7440
+ function forceLightOnlyThemeBeforeReact() {
7441
+ if (typeof window === "undefined") {
7442
+ return;
7443
+ }
7444
+ var root = document.documentElement;
7445
+ try {
7446
+ root.style.colorScheme = "light";
7447
+ root.classList.remove("dark");
7448
+ var stored = localStorage.getItem(HEROUI_THEME_STORAGE_KEY);
7449
+ if (stored) {
7450
+ var normalized = normalizeStoredHeroUiTheme(stored);
7451
+ if (normalized !== stored) {
7452
+ localStorage.setItem(HEROUI_THEME_STORAGE_KEY, normalized);
7453
+ }
7454
+ }
7455
+ for (var _i = 0, _a = __spreadArray([], root.classList, true); _i < _a.length; _i++) {
7456
+ var className = _a[_i];
7457
+ if (className === "dark" || className.endsWith("-dark")) {
7458
+ root.classList.remove(className);
7459
+ if (className.endsWith("-dark") && className !== "dark") {
7460
+ root.classList.add(className.replace(/-dark$/, "-light"));
7461
+ }
7462
+ }
7463
+ }
7464
+ document.cookie = "".concat(BEWEOS_THEME_MODE_COOKIE_NAME, "=; Max-Age=0; path=/");
7465
+ }
7466
+ catch (_b) {
7467
+ // ignore
7468
+ }
7469
+ }
7470
+
7422
7471
  var THEME_COLOR_HEX_MAP = {
7423
7472
  blue: "#006fee",
7424
7473
  purple: "#7828c8",
@@ -7616,8 +7665,11 @@ function removeCustomPrimaryColor() {
7616
7665
  * @returns An object with the current mode, color, customHex, and functions to set them.
7617
7666
  */
7618
7667
  var useThemeManager = function () {
7619
- var _a = useTheme.useTheme(), rawTheme = _a.theme, setRawTheme = _a.setTheme;
7668
+ var _a = useTheme.useTheme("light"), rawTheme = _a.theme, setRawTheme = _a.setTheme;
7620
7669
  var _b = React.useState(null), customHex = _b[0], setCustomHex = _b[1];
7670
+ React.useEffect(function () {
7671
+ forceLightOnlyThemeBeforeReact();
7672
+ }, []);
7621
7673
  var setTheme = React.useCallback(function (theme) {
7622
7674
  var _a;
7623
7675
  var html = document.documentElement;
@@ -7653,7 +7705,8 @@ var useThemeManager = function () {
7653
7705
  }
7654
7706
  }, [customHex, mode]);
7655
7707
  var setMode = React.useCallback(function (newMode) {
7656
- var newTheme = color === "blue" ? newMode : "".concat(color, "-").concat(newMode);
7708
+ var effectiveMode = newMode === "dark" ? "light" : newMode;
7709
+ var newTheme = color === "blue" ? effectiveMode : "".concat(color, "-").concat(effectiveMode);
7657
7710
  setTheme(newTheme);
7658
7711
  }, [color, setTheme]);
7659
7712
  var setColor = React.useCallback(function (newColor) {
@@ -7667,18 +7720,14 @@ var useThemeManager = function () {
7667
7720
  else {
7668
7721
  var closestColor = hexToThemeColor(newColor);
7669
7722
  setCustomHex(newColor);
7670
- var newTheme = closestColor === "blue"
7671
- ? mode
7672
- : "".concat(closestColor, "-").concat(mode);
7723
+ var newTheme = closestColor === "blue" ? mode : "".concat(closestColor, "-").concat(mode);
7673
7724
  setTheme(newTheme);
7674
7725
  }
7675
7726
  }
7676
7727
  else {
7677
7728
  setCustomHex(null);
7678
7729
  var resolvedColor = newColor;
7679
- var newTheme = resolvedColor === "blue"
7680
- ? mode
7681
- : "".concat(resolvedColor, "-").concat(mode);
7730
+ var newTheme = resolvedColor === "blue" ? mode : "".concat(resolvedColor, "-").concat(mode);
7682
7731
  setTheme(newTheme);
7683
7732
  }
7684
7733
  }, [mode, setTheme]);
@@ -7794,6 +7843,7 @@ exports.AreaLineChart = AreaLineChart;
7794
7843
  exports.AuraAutocomplete = AuraAutocomplete;
7795
7844
  exports.AuraTable = AuraTable;
7796
7845
  exports.AuraToastProvider = AuraToastProvider;
7846
+ exports.BEWEOS_THEME_MODE_COOKIE_NAME = BEWEOS_THEME_MODE_COOKIE_NAME;
7797
7847
  exports.BreadcrumbsComponent = BreadcrumbsComponent;
7798
7848
  exports.Button = Button;
7799
7849
  exports.Card = Card;
@@ -7868,6 +7918,7 @@ exports.applyCustomPrimaryColor = applyCustomPrimaryColor;
7868
7918
  exports.defaultCountries = uniqueCountries;
7869
7919
  exports.defaultCurrencyOptions = defaultCurrencyOptions;
7870
7920
  exports.defaultTranslations = defaultTranslations$4;
7921
+ exports.forceLightOnlyThemeBeforeReact = forceLightOnlyThemeBeforeReact;
7871
7922
  exports.formatAuroraThemeTooltip = formatAuroraThemeTooltip;
7872
7923
  exports.generateThemeColorScale = generateThemeColorScale;
7873
7924
  exports.getContrastForeground = getContrastForeground;
package/dist/index.esm.js CHANGED
@@ -7420,6 +7420,55 @@ function formatAuroraThemeTooltip(entry) {
7420
7420
  return "".concat(family, " \u00B7 ").concat(mode);
7421
7421
  }
7422
7422
 
7423
+ var HEROUI_THEME_STORAGE_KEY = "heroui-theme";
7424
+ /** Debe coincidir con `THEME_MODE_COOKIE_NAME` en SMBs (`apply-initial-session-theme`). */
7425
+ var BEWEOS_THEME_MODE_COOKIE_NAME = "beweos_theme_mode";
7426
+ var normalizeStoredHeroUiTheme = function (raw) {
7427
+ var t = raw.trim();
7428
+ if (t === "dark" || t === "system") {
7429
+ return "light";
7430
+ }
7431
+ if (t.endsWith("-dark")) {
7432
+ return t.replace(/-dark$/, "-light");
7433
+ }
7434
+ return t;
7435
+ };
7436
+ /**
7437
+ * Asegura apariencia solo clara antes de montar React: corrige `localStorage` de HeroUI,
7438
+ * clases `dark` / `*-dark` en `<html>`, `color-scheme: light` y elimina la cookie de modo.
7439
+ * Debe ejecutarse lo antes posible en el entry (p. ej. justo antes de `createRoot`).
7440
+ */
7441
+ function forceLightOnlyThemeBeforeReact() {
7442
+ if (typeof window === "undefined") {
7443
+ return;
7444
+ }
7445
+ var root = document.documentElement;
7446
+ try {
7447
+ root.style.colorScheme = "light";
7448
+ root.classList.remove("dark");
7449
+ var stored = localStorage.getItem(HEROUI_THEME_STORAGE_KEY);
7450
+ if (stored) {
7451
+ var normalized = normalizeStoredHeroUiTheme(stored);
7452
+ if (normalized !== stored) {
7453
+ localStorage.setItem(HEROUI_THEME_STORAGE_KEY, normalized);
7454
+ }
7455
+ }
7456
+ for (var _i = 0, _a = __spreadArray([], root.classList, true); _i < _a.length; _i++) {
7457
+ var className = _a[_i];
7458
+ if (className === "dark" || className.endsWith("-dark")) {
7459
+ root.classList.remove(className);
7460
+ if (className.endsWith("-dark") && className !== "dark") {
7461
+ root.classList.add(className.replace(/-dark$/, "-light"));
7462
+ }
7463
+ }
7464
+ }
7465
+ document.cookie = "".concat(BEWEOS_THEME_MODE_COOKIE_NAME, "=; Max-Age=0; path=/");
7466
+ }
7467
+ catch (_b) {
7468
+ // ignore
7469
+ }
7470
+ }
7471
+
7423
7472
  var THEME_COLOR_HEX_MAP = {
7424
7473
  blue: "#006fee",
7425
7474
  purple: "#7828c8",
@@ -7617,8 +7666,11 @@ function removeCustomPrimaryColor() {
7617
7666
  * @returns An object with the current mode, color, customHex, and functions to set them.
7618
7667
  */
7619
7668
  var useThemeManager = function () {
7620
- var _a = useTheme(), rawTheme = _a.theme, setRawTheme = _a.setTheme;
7669
+ var _a = useTheme("light"), rawTheme = _a.theme, setRawTheme = _a.setTheme;
7621
7670
  var _b = useState(null), customHex = _b[0], setCustomHex = _b[1];
7671
+ useEffect(function () {
7672
+ forceLightOnlyThemeBeforeReact();
7673
+ }, []);
7622
7674
  var setTheme = useCallback(function (theme) {
7623
7675
  var _a;
7624
7676
  var html = document.documentElement;
@@ -7654,7 +7706,8 @@ var useThemeManager = function () {
7654
7706
  }
7655
7707
  }, [customHex, mode]);
7656
7708
  var setMode = useCallback(function (newMode) {
7657
- var newTheme = color === "blue" ? newMode : "".concat(color, "-").concat(newMode);
7709
+ var effectiveMode = newMode === "dark" ? "light" : newMode;
7710
+ var newTheme = color === "blue" ? effectiveMode : "".concat(color, "-").concat(effectiveMode);
7658
7711
  setTheme(newTheme);
7659
7712
  }, [color, setTheme]);
7660
7713
  var setColor = useCallback(function (newColor) {
@@ -7668,18 +7721,14 @@ var useThemeManager = function () {
7668
7721
  else {
7669
7722
  var closestColor = hexToThemeColor(newColor);
7670
7723
  setCustomHex(newColor);
7671
- var newTheme = closestColor === "blue"
7672
- ? mode
7673
- : "".concat(closestColor, "-").concat(mode);
7724
+ var newTheme = closestColor === "blue" ? mode : "".concat(closestColor, "-").concat(mode);
7674
7725
  setTheme(newTheme);
7675
7726
  }
7676
7727
  }
7677
7728
  else {
7678
7729
  setCustomHex(null);
7679
7730
  var resolvedColor = newColor;
7680
- var newTheme = resolvedColor === "blue"
7681
- ? mode
7682
- : "".concat(resolvedColor, "-").concat(mode);
7731
+ var newTheme = resolvedColor === "blue" ? mode : "".concat(resolvedColor, "-").concat(mode);
7683
7732
  setTheme(newTheme);
7684
7733
  }
7685
7734
  }, [mode, setTheme]);
@@ -7777,4 +7826,4 @@ var NavigationLoadingProvider = function (_a) {
7777
7826
  return (jsxs(NavigationLoadingContext.Provider, { value: value, children: [children, jsx(NavigationLoadingOverlay, { isVisible: isVisible })] }));
7778
7827
  };
7779
7828
 
7780
- export { ALL_THEMES, AURORA_THEME_FAMILIES, AURORA_THEME_REGISTRY, AccordionList, AddHolidayForm, AnalyticsCard, AreaLineChart, AuraAutocomplete, AuraTable, AuraToastProvider, BreadcrumbsComponent, Button, Card, Chip, ColorPicker, ColorSelector, ContentCarousel, Currency, DEFAULT_PREDEFINED_COLORS, DatePicker, DateRangePicker, DateSelector, DrawerFilters, EmailPreview, EnumMenuNavListItem, GlobalToast, H1, H2, H3, H4, HeaderComponent, HolidayType, IconComponent, ImagePreview, Input, InputPassword, Kanban, KanbanCard, KanbanColumn, MenuComponent, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, MultiStepWizard, NavigationLoadingContext, NavigationLoadingOverlay, NavigationLoadingProvider, P, Pagination, Phone, PromotionalBanner, REGISTERED_THEME_COLORS, RangeFilter, RowSteps, DEFAULT_TRANSLATIONS$1 as SEGMENTATION_DEFAULT_TRANSLATIONS, ScheduleRow, SearchInput, SegmentationBuilder, Select, SimpleLineChart, SocialMediaBar, SocialMediaCarousel, SocialMediaPreview, StepIndicator, Switch as SwitchComponent, THEME_COLOR_HEX_MAP, TagsFilter, Textarea, ThemeContext, ThemePicker, ThemeProvider, TimeInput as TimeInputComponent, ToastContext, TwoColumnLayoutAgent, UploadFile, VerticalSteps, WhatsAppPreview, Wizard, WizardNavigation, WizardSidebar, applyCustomPrimaryColor, uniqueCountries as defaultCountries, defaultCurrencyOptions, defaultTranslations$4 as defaultTranslations, formatAuroraThemeTooltip, generateThemeColorScale, getContrastForeground, getRegisteredThemeColorBases, getSelectedKeyFromPath, hexToThemeColor, hslToCssValue, isAuroraFullThemeId, isExactThemeColor, isGroupState, isHexColor, isSegmentationGroup, removeCustomPrimaryColor, sizeMap, themeColors, useAuraToast, useMediaQuery, useNavigationLoading, useThemeContext };
7829
+ export { ALL_THEMES, AURORA_THEME_FAMILIES, AURORA_THEME_REGISTRY, AccordionList, AddHolidayForm, AnalyticsCard, AreaLineChart, AuraAutocomplete, AuraTable, AuraToastProvider, BEWEOS_THEME_MODE_COOKIE_NAME, BreadcrumbsComponent, Button, Card, Chip, ColorPicker, ColorSelector, ContentCarousel, Currency, DEFAULT_PREDEFINED_COLORS, DatePicker, DateRangePicker, DateSelector, DrawerFilters, EmailPreview, EnumMenuNavListItem, GlobalToast, H1, H2, H3, H4, HeaderComponent, HolidayType, IconComponent, ImagePreview, Input, InputPassword, Kanban, KanbanCard, KanbanColumn, MenuComponent, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, MultiStepWizard, NavigationLoadingContext, NavigationLoadingOverlay, NavigationLoadingProvider, P, Pagination, Phone, PromotionalBanner, REGISTERED_THEME_COLORS, RangeFilter, RowSteps, DEFAULT_TRANSLATIONS$1 as SEGMENTATION_DEFAULT_TRANSLATIONS, ScheduleRow, SearchInput, SegmentationBuilder, Select, SimpleLineChart, SocialMediaBar, SocialMediaCarousel, SocialMediaPreview, StepIndicator, Switch as SwitchComponent, THEME_COLOR_HEX_MAP, TagsFilter, Textarea, ThemeContext, ThemePicker, ThemeProvider, TimeInput as TimeInputComponent, ToastContext, TwoColumnLayoutAgent, UploadFile, VerticalSteps, WhatsAppPreview, Wizard, WizardNavigation, WizardSidebar, applyCustomPrimaryColor, uniqueCountries as defaultCountries, defaultCurrencyOptions, defaultTranslations$4 as defaultTranslations, forceLightOnlyThemeBeforeReact, formatAuroraThemeTooltip, generateThemeColorScale, getContrastForeground, getRegisteredThemeColorBases, getSelectedKeyFromPath, hexToThemeColor, hslToCssValue, isAuroraFullThemeId, isExactThemeColor, isGroupState, isHexColor, isSegmentationGroup, removeCustomPrimaryColor, sizeMap, themeColors, useAuraToast, useMediaQuery, useNavigationLoading, useThemeContext };
@@ -0,0 +1,9 @@
1
+ /** Debe coincidir con `THEME_MODE_COOKIE_NAME` en SMBs (`apply-initial-session-theme`). */
2
+ export declare const BEWEOS_THEME_MODE_COOKIE_NAME = "beweos_theme_mode";
3
+ /**
4
+ * Asegura apariencia solo clara antes de montar React: corrige `localStorage` de HeroUI,
5
+ * clases `dark` / `*-dark` en `<html>`, `color-scheme: light` y elimina la cookie de modo.
6
+ * Debe ejecutarse lo antes posible en el entry (p. ej. justo antes de `createRoot`).
7
+ */
8
+ export declare function forceLightOnlyThemeBeforeReact(): void;
9
+ //# sourceMappingURL=force-light-only-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"force-light-only-theme.d.ts","sourceRoot":"","sources":["../../../../src/providers/theme/force-light-only-theme.ts"],"names":[],"mappings":"AAEA,2FAA2F;AAC3F,eAAO,MAAM,6BAA6B,sBAAsB,CAAC;AAajE;;;;GAIG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CA8BrD"}
@@ -1,3 +1,4 @@
1
+ export * from "./force-light-only-theme";
1
2
  export * from "./hex-to-theme-color";
2
3
  export * from "./generate-color-scale";
3
4
  export * from "./apply-custom-color";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/theme/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/theme/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useThemeManager.d.ts","sourceRoot":"","sources":["../../../../src/providers/theme/useThemeManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,UAAU,EACV,SAAS,EACT,MAAM,yCAAyC,CAAC;AAYjD;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;uBA4ChB,SAAS;yBAQR,UAAU,GAAG,MAAM;CAqC/B,CAAC"}
1
+ {"version":3,"file":"useThemeManager.d.ts","sourceRoot":"","sources":["../../../../src/providers/theme/useThemeManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACX,UAAU,EACV,SAAS,EACT,MAAM,yCAAyC,CAAC;AAYjD;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;uBAgDhB,SAAS;yBAUR,UAAU,GAAG,MAAM;CAiC/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beweco/aurora-ui",
3
- "version": "0.6.23",
3
+ "version": "0.6.24",
4
4
  "description": "Bewe Aurora UI Component Library",
5
5
  "main": "./dist/index.cjs.js",
6
6
  "module": "./dist/index.esm.js",