@bug-on/m3-expressive 1.3.5 → 1.3.7

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 (80) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/buttons.d.mts +3 -3
  3. package/dist/buttons.d.ts +3 -3
  4. package/dist/buttons.js +110 -91
  5. package/dist/buttons.js.map +1 -1
  6. package/dist/buttons.mjs +110 -91
  7. package/dist/buttons.mjs.map +1 -1
  8. package/dist/{core-Cckt8qEm.d.ts → core-DamhB5Yd.d.ts} +1 -1
  9. package/dist/{core-DDfG4pym.d.mts → core-Wsfqn9_N.d.mts} +1 -1
  10. package/dist/core.d.mts +2 -2
  11. package/dist/core.d.ts +2 -2
  12. package/dist/core.js +1 -1
  13. package/dist/core.js.map +1 -1
  14. package/dist/core.mjs +1 -1
  15. package/dist/core.mjs.map +1 -1
  16. package/dist/{fading-blur-mask--uZbBKLj.d.ts → fading-blur-mask-CX-bwjNU.d.mts} +6 -1
  17. package/dist/{fading-blur-mask--uZbBKLj.d.mts → fading-blur-mask-D57UMguz.d.ts} +6 -1
  18. package/dist/feedback.d.mts +17 -5
  19. package/dist/feedback.d.ts +17 -5
  20. package/dist/feedback.js +1 -1
  21. package/dist/feedback.js.map +1 -1
  22. package/dist/feedback.mjs +1 -1
  23. package/dist/feedback.mjs.map +1 -1
  24. package/dist/forms.d.mts +3 -3
  25. package/dist/forms.d.ts +3 -3
  26. package/dist/forms.js +16 -6
  27. package/dist/forms.js.map +1 -1
  28. package/dist/forms.mjs +16 -6
  29. package/dist/forms.mjs.map +1 -1
  30. package/dist/{icon-button-CxyJv7UV.d.mts → icon-button-BpX9_fwZ.d.mts} +1 -1
  31. package/dist/{icon-button-Di8VX6ou.d.ts → icon-button-DFXp9hze.d.ts} +1 -1
  32. package/dist/index.d.mts +11 -10
  33. package/dist/index.d.ts +11 -10
  34. package/dist/index.js +1790 -1133
  35. package/dist/index.js.map +1 -1
  36. package/dist/index.mjs +1640 -988
  37. package/dist/index.mjs.map +1 -1
  38. package/dist/layout.d.mts +92 -23
  39. package/dist/layout.d.ts +92 -23
  40. package/dist/layout.js +118 -13
  41. package/dist/layout.js.map +1 -1
  42. package/dist/layout.mjs +118 -15
  43. package/dist/layout.mjs.map +1 -1
  44. package/dist/{md3-expressive-shapes-CPcfl_Hf.d.mts → md3-expressive-shapes-wk_98LJh.d.mts} +20 -1
  45. package/dist/{md3-expressive-shapes-CPcfl_Hf.d.ts → md3-expressive-shapes-wk_98LJh.d.ts} +20 -1
  46. package/dist/md3-xBl4wgND.d.mts +44 -0
  47. package/dist/md3-xBl4wgND.d.ts +44 -0
  48. package/dist/navigation.d.mts +5 -5
  49. package/dist/navigation.d.ts +5 -5
  50. package/dist/navigation.js +74 -21
  51. package/dist/navigation.js.map +1 -1
  52. package/dist/navigation.mjs +74 -21
  53. package/dist/navigation.mjs.map +1 -1
  54. package/dist/overlays.d.mts +4 -2
  55. package/dist/overlays.d.ts +4 -2
  56. package/dist/overlays.js +85 -44
  57. package/dist/overlays.js.map +1 -1
  58. package/dist/overlays.mjs +85 -44
  59. package/dist/overlays.mjs.map +1 -1
  60. package/dist/pickers.js +89 -56
  61. package/dist/pickers.js.map +1 -1
  62. package/dist/pickers.mjs +89 -56
  63. package/dist/pickers.mjs.map +1 -1
  64. package/dist/shapes.d.mts +150 -17
  65. package/dist/shapes.d.ts +150 -17
  66. package/dist/shapes.js +618 -126
  67. package/dist/shapes.js.map +1 -1
  68. package/dist/shapes.mjs +614 -127
  69. package/dist/shapes.mjs.map +1 -1
  70. package/dist/{side-sheet-modal-Bd5Qqvp9.d.ts → side-sheet-modal-BfdgYjd3.d.ts} +70 -0
  71. package/dist/{side-sheet-modal-64FGhDxL.d.mts → side-sheet-modal-kLfHINFZ.d.mts} +70 -0
  72. package/dist/{split-button-trailing-uncheckable-CGzk7KcG.d.ts → split-button-trailing-uncheckable-BpyIlOdn.d.ts} +7 -3
  73. package/dist/{split-button-trailing-uncheckable-gAz6OAIi.d.mts → split-button-trailing-uncheckable-CpT8iPpr.d.mts} +7 -3
  74. package/dist/{text-field-DARNdj14.d.ts → text-field-Ct-LT_2T.d.ts} +23 -4
  75. package/dist/{text-field-4OlT9o8s.d.mts → text-field-D5xiGn-q.d.mts} +23 -4
  76. package/llms-full.txt +25 -3
  77. package/llms.txt +4 -1
  78. package/package.json +1 -1
  79. package/dist/md3-BQhRygSi.d.mts +0 -31
  80. package/dist/md3-BQhRygSi.d.ts +0 -31
package/dist/pickers.js CHANGED
@@ -1846,7 +1846,7 @@ var WIDTH_SIZE_STYLES = {
1846
1846
  },
1847
1847
  sm: {
1848
1848
  default: "w-10",
1849
- narrow: "w-12",
1849
+ narrow: "w-10",
1850
1850
  wide: "w-[3.25rem]"
1851
1851
  },
1852
1852
  md: {
@@ -2977,45 +2977,64 @@ var DialogOverlay = React6__namespace.forwardRef((_a, ref) => {
2977
2977
  ) }));
2978
2978
  });
2979
2979
  DialogOverlay.displayName = "DialogOverlay";
2980
- var DialogContent = React6__namespace.forwardRef((_a, ref) => {
2981
- var _b = _a, { className, children, hideCloseButton = false } = _b, props = __objRest(_b, ["className", "children", "hideCloseButton"]);
2982
- return /* @__PURE__ */ jsxRuntime.jsx(
2983
- RadixDialog__namespace.Content,
2984
- __spreadProps(__spreadValues({
2985
- ref,
2986
- asChild: true,
2987
- "aria-describedby": void 0
2988
- }, props), {
2989
- children: /* @__PURE__ */ jsxRuntime.jsxs(
2990
- react.m.div,
2991
- __spreadProps(__spreadValues({
2992
- className: cn(
2993
- "fixed left-1/2 top-1/2 z-50 -translate-x-1/2 -translate-y-1/2",
2994
- "w-[calc(100%-2rem)] max-w-140",
2995
- "rounded-[28px] bg-m3-surface-container-high p-6",
2996
- "shadow-lg outline-none focus-visible:ring-2 focus-visible:ring-m3-primary",
2997
- className
2998
- ),
2999
- role: "dialog"
3000
- }, MD3_CONTENT_ANIM), {
3001
- children: [
3002
- children,
3003
- !hideCloseButton && /* @__PURE__ */ jsxRuntime.jsx(RadixDialog__namespace.Close, { asChild: true, "aria-label": "Close dialog", children: /* @__PURE__ */ jsxRuntime.jsx(
3004
- IconButton,
3005
- {
3006
- size: "sm",
3007
- colorStyle: "filled",
3008
- className: "absolute right-4 top-4",
3009
- "aria-label": "Close",
3010
- children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "close", "aria-hidden": "true" })
3011
- }
3012
- ) })
3013
- ]
3014
- })
3015
- )
3016
- })
3017
- );
3018
- });
2980
+ var DEFAULT_CLOSE_BTN_PROPS = {
2981
+ size: "sm",
2982
+ colorStyle: "standard",
2983
+ className: "absolute right-4 top-4",
2984
+ "aria-label": "Close"
2985
+ };
2986
+ var DialogContent = React6__namespace.forwardRef(
2987
+ (_a, ref) => {
2988
+ var _b = _a, {
2989
+ className,
2990
+ children,
2991
+ hideCloseButton = false,
2992
+ closeButtonProps,
2993
+ closeButton
2994
+ } = _b, props = __objRest(_b, [
2995
+ "className",
2996
+ "children",
2997
+ "hideCloseButton",
2998
+ "closeButtonProps",
2999
+ "closeButton"
3000
+ ]);
3001
+ const closeAriaLabel = (() => {
3002
+ var _a2, _b2, _c;
3003
+ if (closeButton == null) {
3004
+ return (_a2 = closeButtonProps == null ? void 0 : closeButtonProps["aria-label"]) != null ? _a2 : DEFAULT_CLOSE_BTN_PROPS["aria-label"];
3005
+ }
3006
+ const el = closeButton;
3007
+ return (_c = (_b2 = el == null ? void 0 : el.props) == null ? void 0 : _b2["aria-label"]) != null ? _c : "Close";
3008
+ })();
3009
+ return /* @__PURE__ */ jsxRuntime.jsx(
3010
+ RadixDialog__namespace.Content,
3011
+ __spreadProps(__spreadValues({
3012
+ ref,
3013
+ asChild: true,
3014
+ "aria-describedby": void 0
3015
+ }, props), {
3016
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
3017
+ react.m.div,
3018
+ __spreadProps(__spreadValues({
3019
+ className: cn(
3020
+ "fixed left-1/2 top-1/2 z-50 -translate-x-1/2 -translate-y-1/2",
3021
+ "w-[calc(100%-2rem)] max-w-140",
3022
+ "rounded-[28px] bg-m3-surface-container-high p-6",
3023
+ "shadow-lg outline-none focus-visible:ring-2 focus-visible:ring-m3-primary",
3024
+ className
3025
+ ),
3026
+ role: "dialog"
3027
+ }, MD3_CONTENT_ANIM), {
3028
+ children: [
3029
+ children,
3030
+ closeButton != null ? /* @__PURE__ */ jsxRuntime.jsx(RadixDialog__namespace.Close, { asChild: true, "aria-label": closeAriaLabel, children: closeButton }) : !hideCloseButton ? /* @__PURE__ */ jsxRuntime.jsx(RadixDialog__namespace.Close, { asChild: true, "aria-label": closeAriaLabel, children: /* @__PURE__ */ jsxRuntime.jsx(IconButton, __spreadProps(__spreadValues(__spreadValues({}, DEFAULT_CLOSE_BTN_PROPS), closeButtonProps), { children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "close", "aria-hidden": "true" }) })) }) : null
3031
+ ]
3032
+ })
3033
+ )
3034
+ })
3035
+ );
3036
+ }
3037
+ );
3019
3038
  DialogContent.displayName = "DialogContent";
3020
3039
  var DialogIcon = React6__namespace.forwardRef((_a, ref) => {
3021
3040
  var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
@@ -3082,6 +3101,8 @@ var DialogFullScreenContent = React6__namespace.forwardRef(
3082
3101
  title,
3083
3102
  actionLabel,
3084
3103
  onAction,
3104
+ actionButtonProps,
3105
+ closeButtonProps,
3085
3106
  showDivider
3086
3107
  } = _b, props = __objRest(_b, [
3087
3108
  "className",
@@ -3089,8 +3110,11 @@ var DialogFullScreenContent = React6__namespace.forwardRef(
3089
3110
  "title",
3090
3111
  "actionLabel",
3091
3112
  "onAction",
3113
+ "actionButtonProps",
3114
+ "closeButtonProps",
3092
3115
  "showDivider"
3093
3116
  ]);
3117
+ var _a2;
3094
3118
  return /* @__PURE__ */ jsxRuntime.jsx(
3095
3119
  RadixDialog__namespace.Content,
3096
3120
  __spreadProps(__spreadValues({
@@ -3110,16 +3134,33 @@ var DialogFullScreenContent = React6__namespace.forwardRef(
3110
3134
  }, MD3_FULLSCREEN_ANIM), {
3111
3135
  children: [
3112
3136
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex shrink-0 items-center px-4 h-14 gap-2 bg-m3-surface", children: [
3113
- /* @__PURE__ */ jsxRuntime.jsx(RadixDialog__namespace.Close, { asChild: true, "aria-label": "Close dialog", children: /* @__PURE__ */ jsxRuntime.jsx(IconButton, { size: "sm", colorStyle: "filled", "aria-label": "Close", children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "close", "aria-hidden": "true" }) }) }),
3137
+ /* @__PURE__ */ jsxRuntime.jsx(
3138
+ RadixDialog__namespace.Close,
3139
+ {
3140
+ asChild: true,
3141
+ "aria-label": (_a2 = closeButtonProps == null ? void 0 : closeButtonProps["aria-label"]) != null ? _a2 : "Close",
3142
+ children: /* @__PURE__ */ jsxRuntime.jsx(
3143
+ IconButton,
3144
+ __spreadProps(__spreadValues({
3145
+ size: "sm",
3146
+ colorStyle: "standard",
3147
+ "aria-label": "Close"
3148
+ }, closeButtonProps), {
3149
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { name: "close", "aria-hidden": "true" })
3150
+ })
3151
+ )
3152
+ }
3153
+ ),
3114
3154
  title && /* @__PURE__ */ jsxRuntime.jsx(DialogTitle, { className: "flex-1 text-[22px] leading-7 font-medium truncate pr-2", children: title }),
3115
3155
  actionLabel && onAction && /* @__PURE__ */ jsxRuntime.jsx(
3116
3156
  "button",
3117
- {
3157
+ __spreadProps(__spreadValues({
3118
3158
  type: "button",
3119
3159
  onClick: onAction,
3120
- className: "text-sm font-medium text-m3-primary px-3 py-2 rounded-full hover:bg-m3-primary/8 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-m3-primary transition-colors whitespace-nowrap",
3160
+ className: "text-sm font-medium text-m3-primary px-3 py-2 rounded-full hover:bg-m3-primary/8 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-m3-primary transition-colors whitespace-nowrap disabled:opacity-[0.38] disabled:pointer-events-none"
3161
+ }, actionButtonProps), {
3121
3162
  children: actionLabel
3122
- }
3163
+ })
3123
3164
  )
3124
3165
  ] }),
3125
3166
  showDivider && /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "border-m3-outline-variant w-full shrink-0 m-0" }),
@@ -4115,21 +4156,13 @@ var normalizeAngle = (angle) => {
4115
4156
  return a;
4116
4157
  };
4117
4158
  var angleToHour12 = (angle) => {
4118
- const hourOffset = RADIANS_PER_HOUR / 2;
4119
- const totalOffset = hourOffset + QUARTER_CIRCLE;
4120
- const hour = Math.round((angle + totalOffset) / RADIANS_PER_HOUR) % 12;
4159
+ const normalized = normalizeAngle(angle + QUARTER_CIRCLE);
4160
+ const hour = Math.round(normalized / RADIANS_PER_HOUR) % 12;
4121
4161
  return hour === 0 ? 12 : hour;
4122
4162
  };
4123
- var angleToMinute = (angle, snap = true) => {
4124
- if (snap) {
4125
- const minuteOffset = RADIANS_PER_MINUTE / 2;
4126
- const totalOffset = minuteOffset + QUARTER_CIRCLE;
4127
- const raw2 = Math.round((angle + totalOffset) / RADIANS_PER_MINUTE) % 60;
4128
- return raw2 < 0 ? raw2 + 60 : raw2;
4129
- }
4163
+ var angleToMinute = (angle, _snap = true) => {
4130
4164
  const normalized = normalizeAngle(angle + QUARTER_CIRCLE);
4131
- const raw = Math.round(normalized / FULL_CIRCLE * 60) % 60;
4132
- return raw < 0 ? raw + 60 : raw;
4165
+ return Math.round(normalized / RADIANS_PER_MINUTE) % 60;
4133
4166
  };
4134
4167
  var getSelectorPosition = (angle, selection, is24hour, isPm) => {
4135
4168
  const useInner = is24hour && isPm && selection === "hour";