@jackcrane/ui 0.1.3 → 0.1.5

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.
@@ -0,0 +1,5 @@
1
+ export default function Hatch({ children, className, ...props }: {
2
+ [x: string]: any;
3
+ children: any;
4
+ className: any;
5
+ }): import("react/jsx-runtime").JSX.Element;
package/dist/index.d.ts CHANGED
@@ -7,6 +7,7 @@ export { Loader } from "./components/Loader/loader";
7
7
  export { Radio, RadioGroup } from "./components/Radio/radio";
8
8
  export { default as Select } from "./components/Select/select";
9
9
  export { default as Dropdown } from "./components/Dropdown/dropdown";
10
+ export { default as Hatch } from "./components/Hatch/hatch";
10
11
  export { toast } from "./components/Toast/toast";
11
12
  export { useModal } from "./components/modal/useModal";
12
13
  export { JCUIProvider } from "./components/jcui/provider";
package/dist/jcui.cjs.js CHANGED
@@ -200,7 +200,7 @@ div._chamfer_1o5rm_1:not(._disabled_1o5rm_15):focus-within {
200
200
  transform: rotate(360deg);
201
201
  }
202
202
  }
203
- ._card_1qkhh_1 {
203
+ ._card_1u4j4_1 {
204
204
  border-width: var(--border-thickness);
205
205
  border-style: solid;
206
206
  font-size: 1rem;
@@ -209,63 +209,64 @@ div._chamfer_1o5rm_1:not(._disabled_1o5rm_15):focus-within {
209
209
  display: flex;
210
210
  flex-direction: column;
211
211
  }
212
- ._card_1qkhh_1 ._title_1qkhh_11 {
212
+ ._card_1u4j4_1 ._title_1u4j4_11 {
213
213
  font-size: 1.25rem;
214
214
  padding: 0.5rem 1rem;
215
215
  border-bottom: var(--border-thickness) solid var(--border-color);
216
216
  background-color: var(--card-bg);
217
217
  }
218
- ._card_1qkhh_1 ._body_1qkhh_18 {
218
+ ._card_1u4j4_1 ._body_1u4j4_18 {
219
219
  padding: 0.5rem 1rem;
220
220
  width: 100%;
221
221
  }
222
- ._card_1qkhh_1 ._footer_1qkhh_23 {
222
+ ._card_1u4j4_1 ._footer_1u4j4_23 {
223
223
  border-top: var(--border-thickness) solid var(--border-color);
224
224
  flex: 1;
225
225
  background-color: var(--card-bg);
226
+ padding: 0.5rem 1rem;
226
227
  }
227
- ._large_1qkhh_29 ._body_1qkhh_18,
228
- ._large_1qkhh_29 ._title_1qkhh_11 {
228
+ ._large_1u4j4_30 ._body_1u4j4_18,
229
+ ._large_1u4j4_30 ._title_1u4j4_11 {
229
230
  font-size: 1.25rem;
230
231
  padding: 0.75rem 1.25rem;
231
232
  }
232
- ._small_1qkhh_35 ._body_1qkhh_18,
233
- ._small_1qkhh_35 ._title_1qkhh_11 {
233
+ ._small_1u4j4_36 ._body_1u4j4_18,
234
+ ._small_1u4j4_36 ._title_1u4j4_11 {
234
235
  font-size: 0.75rem;
235
236
  padding: 0.25rem 0.5rem;
236
237
  }
237
238
  /* Variants */
238
- ._primary_1qkhh_43 {
239
+ ._primary_1u4j4_44 {
239
240
  --card-bg: var(--primary-color-100);
240
241
  --border-color: var(--primary-color-300);
241
242
  --border-accent-color: var(--primary-color-600);
242
243
  --card-color: var(--primary-color-800);
243
244
  }
244
- ._success_1qkhh_50 {
245
+ ._success_1u4j4_51 {
245
246
  --card-bg: var(--success-color-100);
246
247
  --border-color: var(--success-color-300);
247
248
  --border-accent-color: var(--success-color-600);
248
249
  --card-color: var(--success-color-800);
249
250
  }
250
- ._warning_1qkhh_57 {
251
+ ._warning_1u4j4_58 {
251
252
  --card-bg: var(--warning-color-100);
252
253
  --border-color: var(--warning-color-300);
253
254
  --border-accent-color: var(--warning-color-600);
254
255
  --card-color: var(--warning-color-800);
255
256
  }
256
- ._danger_1qkhh_64 {
257
+ ._danger_1u4j4_65 {
257
258
  --card-bg: var(--danger-color-100);
258
259
  --border-color: var(--danger-color-300);
259
260
  --border-accent-color: var(--danger-color-600);
260
261
  --card-color: var(--danger-color-800);
261
262
  }
262
- ._info_1qkhh_71 {
263
+ ._info_1u4j4_72 {
263
264
  --card-bg: var(--info-color-100);
264
265
  --border-color: var(--info-color-300);
265
266
  --border-accent-color: var(--info-color-600);
266
267
  --card-color: var(--info-color-800);
267
268
  }
268
- ._secondary_1qkhh_78 {
269
+ ._secondary_1u4j4_79 {
269
270
  --card-bg: var(--secondary-color-100);
270
271
  --border-color: var(--secondary-color-300);
271
272
  --border-accent-color: var(--secondary-color-600);
@@ -979,6 +980,9 @@ div._chamfer_1o5rm_1:not(._disabled_1o5rm_15):focus-within {
979
980
  transform: translateX(0);
980
981
  }
981
982
  }
983
+ ._hatch_zh2j3_1 {
984
+ padding: 0.5rem 1rem;
985
+ }
982
986
  ._toastRoot_1iau9_1 {
983
987
  background-color: var(--button-bg) !important;
984
988
  border: var(--border-thickness) solid var(--border-color);
@@ -1870,7 +1874,7 @@ const warning$7 = "_warning_d2nsp_67";
1870
1874
  const danger$7 = "_danger_d2nsp_80";
1871
1875
  const info$7 = "_info_d2nsp_93";
1872
1876
  const secondary$7 = "_secondary_d2nsp_106";
1873
- const styles$a = {
1877
+ const styles$b = {
1874
1878
  button,
1875
1879
  large: large$6,
1876
1880
  small: small$6,
@@ -1890,9 +1894,9 @@ const chamferStyles = {
1890
1894
  disabled: disabled$5,
1891
1895
  chamferOnHover
1892
1896
  };
1893
- const hatch = "_hatch_owfoz_1";
1897
+ const hatch$1 = "_hatch_owfoz_1";
1894
1898
  const hatchStyles = {
1895
- hatch
1899
+ hatch: hatch$1
1896
1900
  };
1897
1901
  const DEFAULT_THEME = "light";
1898
1902
  const ThemeContext = React.createContext({
@@ -1902,10 +1906,10 @@ const ThemeContext = React.createContext({
1902
1906
  });
1903
1907
  const useJCUITheme = () => React.useContext(ThemeContext);
1904
1908
  const loader = "_loader_1y0fe_1";
1905
- const styles$9 = {
1909
+ const styles$a = {
1906
1910
  loader
1907
1911
  };
1908
- const Loader = (props) => /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$9.loader, ...props });
1912
+ const Loader = (props) => /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$a.loader, ...props });
1909
1913
  function Button({
1910
1914
  children: children2,
1911
1915
  variant,
@@ -1919,14 +1923,14 @@ function Button({
1919
1923
  "button",
1920
1924
  {
1921
1925
  className: clsx(
1922
- styles$a.button,
1923
- styles$a[variant],
1926
+ styles$b.button,
1927
+ styles$b[variant],
1924
1928
  chamfer2 && chamferStyles.chamfer,
1925
- size2 === "large" && styles$a.large,
1926
- size2 === "small" && styles$a.small,
1929
+ size2 === "large" && styles$b.large,
1930
+ size2 === "small" && styles$b.small,
1927
1931
  disabled2 && chamferStyles.disabled,
1928
1932
  disabled2 && hatchStyles.hatch,
1929
- disabled2 && styles$a.disabled
1933
+ disabled2 && styles$b.disabled
1930
1934
  ),
1931
1935
  disabled: disabled2,
1932
1936
  ...props,
@@ -2034,19 +2038,19 @@ function requireClassnames() {
2034
2038
  }
2035
2039
  var classnamesExports = requireClassnames();
2036
2040
  const classNames = /* @__PURE__ */ getDefaultExportFromCjs(classnamesExports);
2037
- const card = "_card_1qkhh_1";
2038
- const title$1 = "_title_1qkhh_11";
2039
- const body$1 = "_body_1qkhh_18";
2040
- const footer$1 = "_footer_1qkhh_23";
2041
- const large$5 = "_large_1qkhh_29";
2042
- const small$5 = "_small_1qkhh_35";
2043
- const primary$6 = "_primary_1qkhh_43";
2044
- const success$6 = "_success_1qkhh_50";
2045
- const warning$6 = "_warning_1qkhh_57";
2046
- const danger$6 = "_danger_1qkhh_64";
2047
- const info$6 = "_info_1qkhh_71";
2048
- const secondary$6 = "_secondary_1qkhh_78";
2049
- const styles$8 = {
2041
+ const card = "_card_1u4j4_1";
2042
+ const title$1 = "_title_1u4j4_11";
2043
+ const body$1 = "_body_1u4j4_18";
2044
+ const footer$1 = "_footer_1u4j4_23";
2045
+ const large$5 = "_large_1u4j4_30";
2046
+ const small$5 = "_small_1u4j4_36";
2047
+ const primary$6 = "_primary_1u4j4_44";
2048
+ const success$6 = "_success_1u4j4_51";
2049
+ const warning$6 = "_warning_1u4j4_58";
2050
+ const danger$6 = "_danger_1u4j4_65";
2051
+ const info$6 = "_info_1u4j4_72";
2052
+ const secondary$6 = "_secondary_1u4j4_79";
2053
+ const styles$9 = {
2050
2054
  card,
2051
2055
  title: title$1,
2052
2056
  body: body$1,
@@ -2075,20 +2079,20 @@ function Card({
2075
2079
  "div",
2076
2080
  {
2077
2081
  className: classNames(
2078
- styles$8.card,
2079
- styles$8[variant],
2082
+ styles$9.card,
2083
+ styles$9[variant],
2080
2084
  chamfer2 && chamferStyles.chamfer,
2081
- size2 === "large" && styles$8.large,
2082
- size2 === "small" && styles$8.small
2085
+ size2 === "large" && styles$9.large,
2086
+ size2 === "small" && styles$9.small
2083
2087
  ),
2084
2088
  ...props,
2085
2089
  children: [
2086
- title2 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: classNames(styles$8.title, hatchStyles.hatch), children: title2 }),
2087
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$8.body, children: children2 }),
2090
+ title2 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: classNames(styles$9.title, hatchStyles.hatch), children: title2 }),
2091
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$9.body, children: children2 }),
2088
2092
  footerHeight > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
2089
2093
  "div",
2090
2094
  {
2091
- className: classNames(hatchStyles.hatch, styles$8.footer),
2095
+ className: classNames(hatchStyles.hatch, styles$9.footer),
2092
2096
  style: { flexBasis: footerHeight },
2093
2097
  children: footer2
2094
2098
  }
@@ -2832,7 +2836,7 @@ const success$5 = "_success_178xv_135";
2832
2836
  const warning$5 = "_warning_178xv_144";
2833
2837
  const danger$5 = "_danger_178xv_153";
2834
2838
  const info$5 = "_info_178xv_162";
2835
- const styles$7 = {
2839
+ const styles$8 = {
2836
2840
  wrapper: wrapper$1,
2837
2841
  disabled: disabled$4,
2838
2842
  root: root$2,
@@ -2869,32 +2873,32 @@ function Checkbox({
2869
2873
  ...props
2870
2874
  }) {
2871
2875
  const labelContent = label2 ?? children2;
2872
- const variantClass = variant && styles$7[variant];
2873
- const sizeClass = size2 === "large" ? styles$7.large : size2 === "small" ? styles$7.small : null;
2876
+ const variantClass = variant && styles$8[variant];
2877
+ const sizeClass = size2 === "large" ? styles$8.large : size2 === "small" ? styles$8.small : null;
2874
2878
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
2875
2879
  "label",
2876
2880
  {
2877
- className: clsx(styles$7.wrapper, variantClass, disabled2 && styles$7.disabled),
2881
+ className: clsx(styles$8.wrapper, variantClass, disabled2 && styles$8.disabled),
2878
2882
  children: [
2879
2883
  /* @__PURE__ */ jsxRuntimeExports.jsx(
2880
2884
  Checkbox$1,
2881
2885
  {
2882
2886
  className: clsx(
2883
- styles$7.root,
2887
+ styles$8.root,
2884
2888
  variantClass,
2885
2889
  sizeClass,
2886
2890
  chamfer2 && chamferStyles.chamfer,
2887
2891
  disabled2 && chamferStyles.disabled,
2888
2892
  disabled2 && hatchStyles.hatch,
2889
- disabled2 && styles$7.disabledBox,
2893
+ disabled2 && styles$8.disabledBox,
2890
2894
  className
2891
2895
  ),
2892
2896
  disabled: disabled2,
2893
2897
  ...props,
2894
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxIndicator, { className: styles$7.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckIcon, {}) })
2898
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxIndicator, { className: styles$8.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckIcon, {}) })
2895
2899
  }
2896
2900
  ),
2897
- labelContent && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$7.label, children: labelContent })
2901
+ labelContent && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$8.label, children: labelContent })
2898
2902
  ]
2899
2903
  }
2900
2904
  );
@@ -13744,7 +13748,7 @@ let nextClipId = 0;
13744
13748
  function getClipId() {
13745
13749
  return `plot-clip-${++nextClipId}`;
13746
13750
  }
13747
- function styles$6(mark, {
13751
+ function styles$7(mark, {
13748
13752
  title: title2,
13749
13753
  href,
13750
13754
  ariaLabel: variaLabel,
@@ -14110,7 +14114,7 @@ class Mark {
14110
14114
  this.facetAnchor = maybeFacetAnchor(facetAnchor);
14111
14115
  channels = maybeNamed(channels);
14112
14116
  if (extraChannels !== void 0) channels = { ...maybeChannels(extraChannels), ...channels };
14113
- if (defaults2 !== void 0) channels = { ...styles$6(this, options, defaults2), ...channels };
14117
+ if (defaults2 !== void 0) channels = { ...styles$7(this, options, defaults2), ...channels };
14114
14118
  this.channels = Object.fromEntries(
14115
14119
  Object.entries(channels).map(([name, channel]) => {
14116
14120
  if (isOptions(channel.value)) {
@@ -19148,7 +19152,7 @@ const info$4 = "_info_rojre_74";
19148
19152
  const secondary$4 = "_secondary_rojre_83";
19149
19153
  const field = "_field_rojre_92";
19150
19154
  const label$1 = "_label_rojre_98";
19151
- const styles$5 = {
19155
+ const styles$6 = {
19152
19156
  input,
19153
19157
  large: large$3,
19154
19158
  small: small$3,
@@ -19171,26 +19175,26 @@ function Input({
19171
19175
  ...props
19172
19176
  }) {
19173
19177
  const inputId = React.useId();
19174
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$5.field, children: [
19175
- label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("label", { className: styles$5.label, htmlFor: inputId, children: label2 }),
19178
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$6.field, children: [
19179
+ label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("label", { className: styles$6.label, htmlFor: inputId, children: label2 }),
19176
19180
  /* @__PURE__ */ jsxRuntimeExports.jsx(
19177
19181
  "div",
19178
19182
  {
19179
19183
  className: classNames(
19180
19184
  chamfer2 && chamferStyles.chamfer,
19181
- styles$5[variant]
19185
+ styles$6[variant]
19182
19186
  ),
19183
19187
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(
19184
19188
  "input",
19185
19189
  {
19186
19190
  id: inputId,
19187
19191
  className: classNames(
19188
- styles$5.input,
19189
- styles$5[variant],
19190
- size2 === "large" && styles$5.large,
19191
- size2 === "small" && styles$5.small,
19192
+ styles$6.input,
19193
+ styles$6[variant],
19194
+ size2 === "large" && styles$6.large,
19195
+ size2 === "small" && styles$6.small,
19192
19196
  disabled2 && chamferStyles.disabled,
19193
- disabled2 && styles$5.disabled,
19197
+ disabled2 && styles$6.disabled,
19194
19198
  disabled2 && hatchStyles.hatch
19195
19199
  ),
19196
19200
  disabled: disabled2,
@@ -19781,7 +19785,7 @@ const success$3 = "_success_hpxu6_130";
19781
19785
  const warning$3 = "_warning_hpxu6_139";
19782
19786
  const danger$3 = "_danger_hpxu6_148";
19783
19787
  const info$3 = "_info_hpxu6_157";
19784
- const styles$4 = {
19788
+ const styles$5 = {
19785
19789
  group,
19786
19790
  wrapper,
19787
19791
  disabled: disabled$2,
@@ -19803,7 +19807,7 @@ const styles$4 = {
19803
19807
  const RadioGroup$1 = ({ className, children: children2, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(
19804
19808
  Root2$3,
19805
19809
  {
19806
- className: clsx(styles$4.group, className),
19810
+ className: clsx(styles$5.group, className),
19807
19811
  ...props,
19808
19812
  children: children2
19809
19813
  }
@@ -19818,33 +19822,33 @@ function Radio({
19818
19822
  className,
19819
19823
  ...props
19820
19824
  }) {
19821
- const variantClass = variant && styles$4[variant];
19822
- const sizeClass = size2 === "large" ? styles$4.large : size2 === "small" ? styles$4.small : null;
19825
+ const variantClass = variant && styles$5[variant];
19826
+ const sizeClass = size2 === "large" ? styles$5.large : size2 === "small" ? styles$5.small : null;
19823
19827
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
19824
19828
  "label",
19825
19829
  {
19826
- className: clsx(styles$4.wrapper, variantClass, disabled2 && styles$4.disabled),
19830
+ className: clsx(styles$5.wrapper, variantClass, disabled2 && styles$5.disabled),
19827
19831
  children: [
19828
19832
  /* @__PURE__ */ jsxRuntimeExports.jsx(
19829
19833
  Item2$2,
19830
19834
  {
19831
19835
  className: clsx(
19832
- styles$4.root,
19836
+ styles$5.root,
19833
19837
  variantClass,
19834
19838
  sizeClass,
19835
19839
  chamfer2 && chamferStyles.chamfer,
19836
19840
  disabled2 && chamferStyles.disabled,
19837
19841
  disabled2 && hatchStyles.hatch,
19838
- disabled2 && styles$4.disabledDot,
19842
+ disabled2 && styles$5.disabledDot,
19839
19843
  className
19840
19844
  ),
19841
19845
  value,
19842
19846
  disabled: disabled2,
19843
19847
  ...props,
19844
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(Indicator, { className: styles$4.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$4.dot }) })
19848
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(Indicator, { className: styles$5.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$5.dot }) })
19845
19849
  }
19846
19850
  ),
19847
- label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$4.label, children: label2 })
19851
+ label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$5.label, children: label2 })
19848
19852
  ]
19849
19853
  }
19850
19854
  );
@@ -24404,7 +24408,7 @@ const warning$2 = "_warning_1u214_99";
24404
24408
  const danger$2 = "_danger_1u214_109";
24405
24409
  const info$2 = "_info_1u214_119";
24406
24410
  const secondary$2 = "_secondary_1u214_129";
24407
- const styles$3 = {
24411
+ const styles$4 = {
24408
24412
  trigger: trigger$1,
24409
24413
  large: large$1,
24410
24414
  small: small$1,
@@ -24440,18 +24444,18 @@ function SelectInput({
24440
24444
  Trigger$2,
24441
24445
  {
24442
24446
  className: clsx(
24443
- styles$3.trigger,
24444
- styles$3[variant],
24447
+ styles$4.trigger,
24448
+ styles$4[variant],
24445
24449
  chamfer2 && chamferStyles.chamfer,
24446
- size2 === "large" && styles$3.large,
24447
- size2 === "small" && styles$3.small,
24448
- disabled2 && styles$3.disabled,
24450
+ size2 === "large" && styles$4.large,
24451
+ size2 === "small" && styles$4.small,
24452
+ disabled2 && styles$4.disabled,
24449
24453
  disabled2 && hatchStyles.hatch
24450
24454
  // loading && styles.disabled
24451
24455
  ),
24452
24456
  children: [
24453
24457
  /* @__PURE__ */ jsxRuntimeExports.jsx(Value, {}),
24454
- loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$3.icon, children: "▾" })
24458
+ loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$4.icon, children: "▾" })
24455
24459
  ]
24456
24460
  }
24457
24461
  ),
@@ -24459,7 +24463,7 @@ function SelectInput({
24459
24463
  Content2$2,
24460
24464
  {
24461
24465
  className: classNames(
24462
- styles$3.content,
24466
+ styles$4.content,
24463
24467
  chamfer2 && chamferStyles.chamfer
24464
24468
  ),
24465
24469
  sideOffset: 6,
@@ -24468,7 +24472,7 @@ function SelectInput({
24468
24472
  {
24469
24473
  value: opt.value,
24470
24474
  disabled: opt.disabled,
24471
- className: styles$3.item,
24475
+ className: styles$4.item,
24472
24476
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(ItemText, { children: opt.label })
24473
24477
  },
24474
24478
  opt.value
@@ -25512,7 +25516,7 @@ const warning$1 = "_warning_12pwu_170";
25512
25516
  const danger$1 = "_danger_12pwu_181";
25513
25517
  const info$1 = "_info_12pwu_192";
25514
25518
  const secondary$1 = "_secondary_12pwu_203";
25515
- const styles$2 = {
25519
+ const styles$3 = {
25516
25520
  trigger,
25517
25521
  large,
25518
25522
  small,
@@ -25555,18 +25559,18 @@ function Dropdown({
25555
25559
  ...props
25556
25560
  }) {
25557
25561
  const triggerClassName = clsx(
25558
- styles$2.trigger,
25559
- variant && styles$2[variant],
25562
+ styles$3.trigger,
25563
+ variant && styles$3[variant],
25560
25564
  chamfer2 && chamferStyles.chamfer,
25561
- size2 === "large" && styles$2.large,
25562
- size2 === "small" && styles$2.small,
25563
- disabled2 && styles$2.disabled,
25565
+ size2 === "large" && styles$3.large,
25566
+ size2 === "small" && styles$3.small,
25567
+ disabled2 && styles$3.disabled,
25564
25568
  disabled2 && hatchStyles.hatch,
25565
25569
  _triggerClassName
25566
25570
  );
25567
25571
  const contentClassName = clsx(
25568
- styles$2.content,
25569
- variant && styles$2[variant],
25572
+ styles$3.content,
25573
+ variant && styles$3[variant],
25570
25574
  chamfer2 && chamferStyles.chamfer
25571
25575
  );
25572
25576
  const handleItemSelect = (item2) => {
@@ -25595,13 +25599,13 @@ function Dropdown({
25595
25599
  side,
25596
25600
  sideOffset: 0,
25597
25601
  ...contentProps,
25598
- children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$2.viewport, children: items.map((item2, index2) => {
25602
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$3.viewport, children: items.map((item2, index2) => {
25599
25603
  if (item2.type === "separator") {
25600
25604
  const separatorKey = item2.key ?? `separator-${index2}`;
25601
25605
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
25602
25606
  Separator2,
25603
25607
  {
25604
- className: styles$2.separator
25608
+ className: styles$3.separator
25605
25609
  },
25606
25610
  separatorKey
25607
25611
  );
@@ -25612,10 +25616,10 @@ function Dropdown({
25612
25616
  {
25613
25617
  onSelect: () => handleItemSelect(item2),
25614
25618
  disabled: item2.disabled,
25615
- className: styles$2.item,
25619
+ className: styles$3.item,
25616
25620
  children: [
25617
- item2.icon && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$2.itemIcon, "aria-hidden": true, children: item2.icon }),
25618
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$2.itemLabel, children: item2.label })
25621
+ item2.icon && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$3.itemIcon, "aria-hidden": true, children: item2.icon }),
25622
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$3.itemLabel, children: item2.label })
25619
25623
  ]
25620
25624
  },
25621
25625
  itemKey
@@ -25625,6 +25629,25 @@ function Dropdown({
25625
25629
  ) })
25626
25630
  ] });
25627
25631
  }
25632
+ const hatch = "_hatch_zh2j3_1";
25633
+ const styles$2 = {
25634
+ hatch
25635
+ };
25636
+ function Hatch({ children: children2, className, ...props }) {
25637
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
25638
+ "div",
25639
+ {
25640
+ className: classNames(
25641
+ styles$2.hatch,
25642
+ hatchStyles.hatch,
25643
+ chamferStyles.chamfer,
25644
+ className
25645
+ ),
25646
+ ...props,
25647
+ children: children2
25648
+ }
25649
+ );
25650
+ }
25628
25651
  let e = { data: "" }, t = (t4) => {
25629
25652
  if ("object" == typeof window) {
25630
25653
  let e3 = (t4 ? t4.querySelector("#_goober") : window._goober) || Object.assign(document.createElement("style"), { innerHTML: " ", id: "_goober" });
@@ -26788,6 +26811,7 @@ exports.Card = Card;
26788
26811
  exports.Checkbox = Checkbox;
26789
26812
  exports.ColorSwitcher = ColorSwitcher;
26790
26813
  exports.Dropdown = Dropdown;
26814
+ exports.Hatch = Hatch;
26791
26815
  exports.Input = Input;
26792
26816
  exports.JCUIProvider = JCUIProvider;
26793
26817
  exports.Layout = Layout;
package/dist/jcui.es.js CHANGED
@@ -200,7 +200,7 @@ div._chamfer_1o5rm_1:not(._disabled_1o5rm_15):focus-within {
200
200
  transform: rotate(360deg);
201
201
  }
202
202
  }
203
- ._card_1qkhh_1 {
203
+ ._card_1u4j4_1 {
204
204
  border-width: var(--border-thickness);
205
205
  border-style: solid;
206
206
  font-size: 1rem;
@@ -209,63 +209,64 @@ div._chamfer_1o5rm_1:not(._disabled_1o5rm_15):focus-within {
209
209
  display: flex;
210
210
  flex-direction: column;
211
211
  }
212
- ._card_1qkhh_1 ._title_1qkhh_11 {
212
+ ._card_1u4j4_1 ._title_1u4j4_11 {
213
213
  font-size: 1.25rem;
214
214
  padding: 0.5rem 1rem;
215
215
  border-bottom: var(--border-thickness) solid var(--border-color);
216
216
  background-color: var(--card-bg);
217
217
  }
218
- ._card_1qkhh_1 ._body_1qkhh_18 {
218
+ ._card_1u4j4_1 ._body_1u4j4_18 {
219
219
  padding: 0.5rem 1rem;
220
220
  width: 100%;
221
221
  }
222
- ._card_1qkhh_1 ._footer_1qkhh_23 {
222
+ ._card_1u4j4_1 ._footer_1u4j4_23 {
223
223
  border-top: var(--border-thickness) solid var(--border-color);
224
224
  flex: 1;
225
225
  background-color: var(--card-bg);
226
+ padding: 0.5rem 1rem;
226
227
  }
227
- ._large_1qkhh_29 ._body_1qkhh_18,
228
- ._large_1qkhh_29 ._title_1qkhh_11 {
228
+ ._large_1u4j4_30 ._body_1u4j4_18,
229
+ ._large_1u4j4_30 ._title_1u4j4_11 {
229
230
  font-size: 1.25rem;
230
231
  padding: 0.75rem 1.25rem;
231
232
  }
232
- ._small_1qkhh_35 ._body_1qkhh_18,
233
- ._small_1qkhh_35 ._title_1qkhh_11 {
233
+ ._small_1u4j4_36 ._body_1u4j4_18,
234
+ ._small_1u4j4_36 ._title_1u4j4_11 {
234
235
  font-size: 0.75rem;
235
236
  padding: 0.25rem 0.5rem;
236
237
  }
237
238
  /* Variants */
238
- ._primary_1qkhh_43 {
239
+ ._primary_1u4j4_44 {
239
240
  --card-bg: var(--primary-color-100);
240
241
  --border-color: var(--primary-color-300);
241
242
  --border-accent-color: var(--primary-color-600);
242
243
  --card-color: var(--primary-color-800);
243
244
  }
244
- ._success_1qkhh_50 {
245
+ ._success_1u4j4_51 {
245
246
  --card-bg: var(--success-color-100);
246
247
  --border-color: var(--success-color-300);
247
248
  --border-accent-color: var(--success-color-600);
248
249
  --card-color: var(--success-color-800);
249
250
  }
250
- ._warning_1qkhh_57 {
251
+ ._warning_1u4j4_58 {
251
252
  --card-bg: var(--warning-color-100);
252
253
  --border-color: var(--warning-color-300);
253
254
  --border-accent-color: var(--warning-color-600);
254
255
  --card-color: var(--warning-color-800);
255
256
  }
256
- ._danger_1qkhh_64 {
257
+ ._danger_1u4j4_65 {
257
258
  --card-bg: var(--danger-color-100);
258
259
  --border-color: var(--danger-color-300);
259
260
  --border-accent-color: var(--danger-color-600);
260
261
  --card-color: var(--danger-color-800);
261
262
  }
262
- ._info_1qkhh_71 {
263
+ ._info_1u4j4_72 {
263
264
  --card-bg: var(--info-color-100);
264
265
  --border-color: var(--info-color-300);
265
266
  --border-accent-color: var(--info-color-600);
266
267
  --card-color: var(--info-color-800);
267
268
  }
268
- ._secondary_1qkhh_78 {
269
+ ._secondary_1u4j4_79 {
269
270
  --card-bg: var(--secondary-color-100);
270
271
  --border-color: var(--secondary-color-300);
271
272
  --border-accent-color: var(--secondary-color-600);
@@ -979,6 +980,9 @@ div._chamfer_1o5rm_1:not(._disabled_1o5rm_15):focus-within {
979
980
  transform: translateX(0);
980
981
  }
981
982
  }
983
+ ._hatch_zh2j3_1 {
984
+ padding: 0.5rem 1rem;
985
+ }
982
986
  ._toastRoot_1iau9_1 {
983
987
  background-color: var(--button-bg) !important;
984
988
  border: var(--border-thickness) solid var(--border-color);
@@ -1852,7 +1856,7 @@ const warning$7 = "_warning_d2nsp_67";
1852
1856
  const danger$7 = "_danger_d2nsp_80";
1853
1857
  const info$7 = "_info_d2nsp_93";
1854
1858
  const secondary$7 = "_secondary_d2nsp_106";
1855
- const styles$a = {
1859
+ const styles$b = {
1856
1860
  button,
1857
1861
  large: large$6,
1858
1862
  small: small$6,
@@ -1872,9 +1876,9 @@ const chamferStyles = {
1872
1876
  disabled: disabled$5,
1873
1877
  chamferOnHover
1874
1878
  };
1875
- const hatch = "_hatch_owfoz_1";
1879
+ const hatch$1 = "_hatch_owfoz_1";
1876
1880
  const hatchStyles = {
1877
- hatch
1881
+ hatch: hatch$1
1878
1882
  };
1879
1883
  const DEFAULT_THEME = "light";
1880
1884
  const ThemeContext = createContext$1({
@@ -1884,10 +1888,10 @@ const ThemeContext = createContext$1({
1884
1888
  });
1885
1889
  const useJCUITheme = () => useContext(ThemeContext);
1886
1890
  const loader = "_loader_1y0fe_1";
1887
- const styles$9 = {
1891
+ const styles$a = {
1888
1892
  loader
1889
1893
  };
1890
- const Loader = (props) => /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$9.loader, ...props });
1894
+ const Loader = (props) => /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$a.loader, ...props });
1891
1895
  function Button({
1892
1896
  children: children2,
1893
1897
  variant,
@@ -1901,14 +1905,14 @@ function Button({
1901
1905
  "button",
1902
1906
  {
1903
1907
  className: clsx(
1904
- styles$a.button,
1905
- styles$a[variant],
1908
+ styles$b.button,
1909
+ styles$b[variant],
1906
1910
  chamfer2 && chamferStyles.chamfer,
1907
- size2 === "large" && styles$a.large,
1908
- size2 === "small" && styles$a.small,
1911
+ size2 === "large" && styles$b.large,
1912
+ size2 === "small" && styles$b.small,
1909
1913
  disabled2 && chamferStyles.disabled,
1910
1914
  disabled2 && hatchStyles.hatch,
1911
- disabled2 && styles$a.disabled
1915
+ disabled2 && styles$b.disabled
1912
1916
  ),
1913
1917
  disabled: disabled2,
1914
1918
  ...props,
@@ -2016,19 +2020,19 @@ function requireClassnames() {
2016
2020
  }
2017
2021
  var classnamesExports = requireClassnames();
2018
2022
  const classNames = /* @__PURE__ */ getDefaultExportFromCjs(classnamesExports);
2019
- const card = "_card_1qkhh_1";
2020
- const title$1 = "_title_1qkhh_11";
2021
- const body$1 = "_body_1qkhh_18";
2022
- const footer$1 = "_footer_1qkhh_23";
2023
- const large$5 = "_large_1qkhh_29";
2024
- const small$5 = "_small_1qkhh_35";
2025
- const primary$6 = "_primary_1qkhh_43";
2026
- const success$6 = "_success_1qkhh_50";
2027
- const warning$6 = "_warning_1qkhh_57";
2028
- const danger$6 = "_danger_1qkhh_64";
2029
- const info$6 = "_info_1qkhh_71";
2030
- const secondary$6 = "_secondary_1qkhh_78";
2031
- const styles$8 = {
2023
+ const card = "_card_1u4j4_1";
2024
+ const title$1 = "_title_1u4j4_11";
2025
+ const body$1 = "_body_1u4j4_18";
2026
+ const footer$1 = "_footer_1u4j4_23";
2027
+ const large$5 = "_large_1u4j4_30";
2028
+ const small$5 = "_small_1u4j4_36";
2029
+ const primary$6 = "_primary_1u4j4_44";
2030
+ const success$6 = "_success_1u4j4_51";
2031
+ const warning$6 = "_warning_1u4j4_58";
2032
+ const danger$6 = "_danger_1u4j4_65";
2033
+ const info$6 = "_info_1u4j4_72";
2034
+ const secondary$6 = "_secondary_1u4j4_79";
2035
+ const styles$9 = {
2032
2036
  card,
2033
2037
  title: title$1,
2034
2038
  body: body$1,
@@ -2057,20 +2061,20 @@ function Card({
2057
2061
  "div",
2058
2062
  {
2059
2063
  className: classNames(
2060
- styles$8.card,
2061
- styles$8[variant],
2064
+ styles$9.card,
2065
+ styles$9[variant],
2062
2066
  chamfer2 && chamferStyles.chamfer,
2063
- size2 === "large" && styles$8.large,
2064
- size2 === "small" && styles$8.small
2067
+ size2 === "large" && styles$9.large,
2068
+ size2 === "small" && styles$9.small
2065
2069
  ),
2066
2070
  ...props,
2067
2071
  children: [
2068
- title2 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: classNames(styles$8.title, hatchStyles.hatch), children: title2 }),
2069
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$8.body, children: children2 }),
2072
+ title2 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: classNames(styles$9.title, hatchStyles.hatch), children: title2 }),
2073
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$9.body, children: children2 }),
2070
2074
  footerHeight > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(
2071
2075
  "div",
2072
2076
  {
2073
- className: classNames(hatchStyles.hatch, styles$8.footer),
2077
+ className: classNames(hatchStyles.hatch, styles$9.footer),
2074
2078
  style: { flexBasis: footerHeight },
2075
2079
  children: footer2
2076
2080
  }
@@ -2814,7 +2818,7 @@ const success$5 = "_success_178xv_135";
2814
2818
  const warning$5 = "_warning_178xv_144";
2815
2819
  const danger$5 = "_danger_178xv_153";
2816
2820
  const info$5 = "_info_178xv_162";
2817
- const styles$7 = {
2821
+ const styles$8 = {
2818
2822
  wrapper: wrapper$1,
2819
2823
  disabled: disabled$4,
2820
2824
  root: root$2,
@@ -2851,32 +2855,32 @@ function Checkbox({
2851
2855
  ...props
2852
2856
  }) {
2853
2857
  const labelContent = label2 ?? children2;
2854
- const variantClass = variant && styles$7[variant];
2855
- const sizeClass = size2 === "large" ? styles$7.large : size2 === "small" ? styles$7.small : null;
2858
+ const variantClass = variant && styles$8[variant];
2859
+ const sizeClass = size2 === "large" ? styles$8.large : size2 === "small" ? styles$8.small : null;
2856
2860
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
2857
2861
  "label",
2858
2862
  {
2859
- className: clsx(styles$7.wrapper, variantClass, disabled2 && styles$7.disabled),
2863
+ className: clsx(styles$8.wrapper, variantClass, disabled2 && styles$8.disabled),
2860
2864
  children: [
2861
2865
  /* @__PURE__ */ jsxRuntimeExports.jsx(
2862
2866
  Checkbox$1,
2863
2867
  {
2864
2868
  className: clsx(
2865
- styles$7.root,
2869
+ styles$8.root,
2866
2870
  variantClass,
2867
2871
  sizeClass,
2868
2872
  chamfer2 && chamferStyles.chamfer,
2869
2873
  disabled2 && chamferStyles.disabled,
2870
2874
  disabled2 && hatchStyles.hatch,
2871
- disabled2 && styles$7.disabledBox,
2875
+ disabled2 && styles$8.disabledBox,
2872
2876
  className
2873
2877
  ),
2874
2878
  disabled: disabled2,
2875
2879
  ...props,
2876
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxIndicator, { className: styles$7.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckIcon, {}) })
2880
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxIndicator, { className: styles$8.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx(CheckIcon, {}) })
2877
2881
  }
2878
2882
  ),
2879
- labelContent && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$7.label, children: labelContent })
2883
+ labelContent && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$8.label, children: labelContent })
2880
2884
  ]
2881
2885
  }
2882
2886
  );
@@ -13726,7 +13730,7 @@ let nextClipId = 0;
13726
13730
  function getClipId() {
13727
13731
  return `plot-clip-${++nextClipId}`;
13728
13732
  }
13729
- function styles$6(mark, {
13733
+ function styles$7(mark, {
13730
13734
  title: title2,
13731
13735
  href,
13732
13736
  ariaLabel: variaLabel,
@@ -14092,7 +14096,7 @@ class Mark {
14092
14096
  this.facetAnchor = maybeFacetAnchor(facetAnchor);
14093
14097
  channels = maybeNamed(channels);
14094
14098
  if (extraChannels !== void 0) channels = { ...maybeChannels(extraChannels), ...channels };
14095
- if (defaults2 !== void 0) channels = { ...styles$6(this, options, defaults2), ...channels };
14099
+ if (defaults2 !== void 0) channels = { ...styles$7(this, options, defaults2), ...channels };
14096
14100
  this.channels = Object.fromEntries(
14097
14101
  Object.entries(channels).map(([name, channel]) => {
14098
14102
  if (isOptions(channel.value)) {
@@ -19130,7 +19134,7 @@ const info$4 = "_info_rojre_74";
19130
19134
  const secondary$4 = "_secondary_rojre_83";
19131
19135
  const field = "_field_rojre_92";
19132
19136
  const label$1 = "_label_rojre_98";
19133
- const styles$5 = {
19137
+ const styles$6 = {
19134
19138
  input,
19135
19139
  large: large$3,
19136
19140
  small: small$3,
@@ -19153,26 +19157,26 @@ function Input({
19153
19157
  ...props
19154
19158
  }) {
19155
19159
  const inputId = useId$1();
19156
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$5.field, children: [
19157
- label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("label", { className: styles$5.label, htmlFor: inputId, children: label2 }),
19160
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$6.field, children: [
19161
+ label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("label", { className: styles$6.label, htmlFor: inputId, children: label2 }),
19158
19162
  /* @__PURE__ */ jsxRuntimeExports.jsx(
19159
19163
  "div",
19160
19164
  {
19161
19165
  className: classNames(
19162
19166
  chamfer2 && chamferStyles.chamfer,
19163
- styles$5[variant]
19167
+ styles$6[variant]
19164
19168
  ),
19165
19169
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(
19166
19170
  "input",
19167
19171
  {
19168
19172
  id: inputId,
19169
19173
  className: classNames(
19170
- styles$5.input,
19171
- styles$5[variant],
19172
- size2 === "large" && styles$5.large,
19173
- size2 === "small" && styles$5.small,
19174
+ styles$6.input,
19175
+ styles$6[variant],
19176
+ size2 === "large" && styles$6.large,
19177
+ size2 === "small" && styles$6.small,
19174
19178
  disabled2 && chamferStyles.disabled,
19175
- disabled2 && styles$5.disabled,
19179
+ disabled2 && styles$6.disabled,
19176
19180
  disabled2 && hatchStyles.hatch
19177
19181
  ),
19178
19182
  disabled: disabled2,
@@ -19763,7 +19767,7 @@ const success$3 = "_success_hpxu6_130";
19763
19767
  const warning$3 = "_warning_hpxu6_139";
19764
19768
  const danger$3 = "_danger_hpxu6_148";
19765
19769
  const info$3 = "_info_hpxu6_157";
19766
- const styles$4 = {
19770
+ const styles$5 = {
19767
19771
  group,
19768
19772
  wrapper,
19769
19773
  disabled: disabled$2,
@@ -19785,7 +19789,7 @@ const styles$4 = {
19785
19789
  const RadioGroup$1 = ({ className, children: children2, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(
19786
19790
  Root2$3,
19787
19791
  {
19788
- className: clsx(styles$4.group, className),
19792
+ className: clsx(styles$5.group, className),
19789
19793
  ...props,
19790
19794
  children: children2
19791
19795
  }
@@ -19800,33 +19804,33 @@ function Radio({
19800
19804
  className,
19801
19805
  ...props
19802
19806
  }) {
19803
- const variantClass = variant && styles$4[variant];
19804
- const sizeClass = size2 === "large" ? styles$4.large : size2 === "small" ? styles$4.small : null;
19807
+ const variantClass = variant && styles$5[variant];
19808
+ const sizeClass = size2 === "large" ? styles$5.large : size2 === "small" ? styles$5.small : null;
19805
19809
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
19806
19810
  "label",
19807
19811
  {
19808
- className: clsx(styles$4.wrapper, variantClass, disabled2 && styles$4.disabled),
19812
+ className: clsx(styles$5.wrapper, variantClass, disabled2 && styles$5.disabled),
19809
19813
  children: [
19810
19814
  /* @__PURE__ */ jsxRuntimeExports.jsx(
19811
19815
  Item2$2,
19812
19816
  {
19813
19817
  className: clsx(
19814
- styles$4.root,
19818
+ styles$5.root,
19815
19819
  variantClass,
19816
19820
  sizeClass,
19817
19821
  chamfer2 && chamferStyles.chamfer,
19818
19822
  disabled2 && chamferStyles.disabled,
19819
19823
  disabled2 && hatchStyles.hatch,
19820
- disabled2 && styles$4.disabledDot,
19824
+ disabled2 && styles$5.disabledDot,
19821
19825
  className
19822
19826
  ),
19823
19827
  value,
19824
19828
  disabled: disabled2,
19825
19829
  ...props,
19826
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(Indicator, { className: styles$4.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$4.dot }) })
19830
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(Indicator, { className: styles$5.indicator, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$5.dot }) })
19827
19831
  }
19828
19832
  ),
19829
- label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$4.label, children: label2 })
19833
+ label2 && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$5.label, children: label2 })
19830
19834
  ]
19831
19835
  }
19832
19836
  );
@@ -24386,7 +24390,7 @@ const warning$2 = "_warning_1u214_99";
24386
24390
  const danger$2 = "_danger_1u214_109";
24387
24391
  const info$2 = "_info_1u214_119";
24388
24392
  const secondary$2 = "_secondary_1u214_129";
24389
- const styles$3 = {
24393
+ const styles$4 = {
24390
24394
  trigger: trigger$1,
24391
24395
  large: large$1,
24392
24396
  small: small$1,
@@ -24422,18 +24426,18 @@ function SelectInput({
24422
24426
  Trigger$2,
24423
24427
  {
24424
24428
  className: clsx(
24425
- styles$3.trigger,
24426
- styles$3[variant],
24429
+ styles$4.trigger,
24430
+ styles$4[variant],
24427
24431
  chamfer2 && chamferStyles.chamfer,
24428
- size2 === "large" && styles$3.large,
24429
- size2 === "small" && styles$3.small,
24430
- disabled2 && styles$3.disabled,
24432
+ size2 === "large" && styles$4.large,
24433
+ size2 === "small" && styles$4.small,
24434
+ disabled2 && styles$4.disabled,
24431
24435
  disabled2 && hatchStyles.hatch
24432
24436
  // loading && styles.disabled
24433
24437
  ),
24434
24438
  children: [
24435
24439
  /* @__PURE__ */ jsxRuntimeExports.jsx(Value, {}),
24436
- loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$3.icon, children: "▾" })
24440
+ loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { className: styles$4.icon, children: "▾" })
24437
24441
  ]
24438
24442
  }
24439
24443
  ),
@@ -24441,7 +24445,7 @@ function SelectInput({
24441
24445
  Content2$2,
24442
24446
  {
24443
24447
  className: classNames(
24444
- styles$3.content,
24448
+ styles$4.content,
24445
24449
  chamfer2 && chamferStyles.chamfer
24446
24450
  ),
24447
24451
  sideOffset: 6,
@@ -24450,7 +24454,7 @@ function SelectInput({
24450
24454
  {
24451
24455
  value: opt.value,
24452
24456
  disabled: opt.disabled,
24453
- className: styles$3.item,
24457
+ className: styles$4.item,
24454
24458
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(ItemText, { children: opt.label })
24455
24459
  },
24456
24460
  opt.value
@@ -25494,7 +25498,7 @@ const warning$1 = "_warning_12pwu_170";
25494
25498
  const danger$1 = "_danger_12pwu_181";
25495
25499
  const info$1 = "_info_12pwu_192";
25496
25500
  const secondary$1 = "_secondary_12pwu_203";
25497
- const styles$2 = {
25501
+ const styles$3 = {
25498
25502
  trigger,
25499
25503
  large,
25500
25504
  small,
@@ -25537,18 +25541,18 @@ function Dropdown({
25537
25541
  ...props
25538
25542
  }) {
25539
25543
  const triggerClassName = clsx(
25540
- styles$2.trigger,
25541
- variant && styles$2[variant],
25544
+ styles$3.trigger,
25545
+ variant && styles$3[variant],
25542
25546
  chamfer2 && chamferStyles.chamfer,
25543
- size2 === "large" && styles$2.large,
25544
- size2 === "small" && styles$2.small,
25545
- disabled2 && styles$2.disabled,
25547
+ size2 === "large" && styles$3.large,
25548
+ size2 === "small" && styles$3.small,
25549
+ disabled2 && styles$3.disabled,
25546
25550
  disabled2 && hatchStyles.hatch,
25547
25551
  _triggerClassName
25548
25552
  );
25549
25553
  const contentClassName = clsx(
25550
- styles$2.content,
25551
- variant && styles$2[variant],
25554
+ styles$3.content,
25555
+ variant && styles$3[variant],
25552
25556
  chamfer2 && chamferStyles.chamfer
25553
25557
  );
25554
25558
  const handleItemSelect = (item2) => {
@@ -25577,13 +25581,13 @@ function Dropdown({
25577
25581
  side,
25578
25582
  sideOffset: 0,
25579
25583
  ...contentProps,
25580
- children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$2.viewport, children: items.map((item2, index2) => {
25584
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$3.viewport, children: items.map((item2, index2) => {
25581
25585
  if (item2.type === "separator") {
25582
25586
  const separatorKey = item2.key ?? `separator-${index2}`;
25583
25587
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
25584
25588
  Separator2,
25585
25589
  {
25586
- className: styles$2.separator
25590
+ className: styles$3.separator
25587
25591
  },
25588
25592
  separatorKey
25589
25593
  );
@@ -25594,10 +25598,10 @@ function Dropdown({
25594
25598
  {
25595
25599
  onSelect: () => handleItemSelect(item2),
25596
25600
  disabled: item2.disabled,
25597
- className: styles$2.item,
25601
+ className: styles$3.item,
25598
25602
  children: [
25599
- item2.icon && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$2.itemIcon, "aria-hidden": true, children: item2.icon }),
25600
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$2.itemLabel, children: item2.label })
25603
+ item2.icon && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$3.itemIcon, "aria-hidden": true, children: item2.icon }),
25604
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: styles$3.itemLabel, children: item2.label })
25601
25605
  ]
25602
25606
  },
25603
25607
  itemKey
@@ -25607,6 +25611,25 @@ function Dropdown({
25607
25611
  ) })
25608
25612
  ] });
25609
25613
  }
25614
+ const hatch = "_hatch_zh2j3_1";
25615
+ const styles$2 = {
25616
+ hatch
25617
+ };
25618
+ function Hatch({ children: children2, className, ...props }) {
25619
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
25620
+ "div",
25621
+ {
25622
+ className: classNames(
25623
+ styles$2.hatch,
25624
+ hatchStyles.hatch,
25625
+ chamferStyles.chamfer,
25626
+ className
25627
+ ),
25628
+ ...props,
25629
+ children: children2
25630
+ }
25631
+ );
25632
+ }
25610
25633
  let e = { data: "" }, t = (t4) => {
25611
25634
  if ("object" == typeof window) {
25612
25635
  let e3 = (t4 ? t4.querySelector("#_goober") : window._goober) || Object.assign(document.createElement("style"), { innerHTML: " ", id: "_goober" });
@@ -26771,6 +26794,7 @@ export {
26771
26794
  Checkbox,
26772
26795
  ColorSwitcher,
26773
26796
  Dropdown,
26797
+ Hatch,
26774
26798
  Input,
26775
26799
  JCUIProvider,
26776
26800
  Layout,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jackcrane/ui",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "main": "dist/jcui.cjs.js",