@charcoal-ui/react 3.2.0 → 3.3.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.
@@ -1,4 +1,4 @@
1
1
  import 'jest-styled-components';
2
- import renderder from 'react-test-renderer';
3
- export declare function render(children: JSX.Element): renderder.ReactTestRendererJSON | renderder.ReactTestRendererJSON[] | null;
2
+ import renderer from 'react-test-renderer';
3
+ export declare function render(children: JSX.Element): renderer.ReactTestRendererJSON | renderer.ReactTestRendererJSON[] | null;
4
4
  //# sourceMappingURL=index.test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../src/components/Button/index.test.tsx"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAA;AAG/B,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAI3C,wBAAgB,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,8EAI3C"}
1
+ {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../src/components/Button/index.test.tsx"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAA;AAG/B,OAAO,QAAQ,MAAM,qBAAqB,CAAA;AAI1C,wBAAgB,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,4EAI3C"}
@@ -12,6 +12,7 @@ export type CheckboxProps = CheckboxLabelProps & {
12
12
  readonly defaultChecked?: boolean;
13
13
  readonly disabled?: boolean;
14
14
  readonly readonly?: boolean;
15
+ readonly invalid?: boolean;
15
16
  readonly onClick?: () => void;
16
17
  readonly onChange?: (isSelected: boolean) => void;
17
18
  readonly onBlur?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,KAAK,kBAAkB,GACnB;IACE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,GACD;IACE,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAEL,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAE3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAE3B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAA;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B,CAAA;;AAoCD,wBAA6B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,KAAK,kBAAkB,GACnB;IACE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,GACD;IACE,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAEL,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAE3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAE1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAA;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B,CAAA;;AAqCD,wBAA6B"}
@@ -10,6 +10,7 @@ type Props = {
10
10
  disabled: boolean;
11
11
  readonly: boolean;
12
12
  className?: string;
13
+ invalid: boolean;
13
14
  };
14
15
  export declare const Labelled: Story<Props>;
15
16
  export declare const Unlabelled: Story<Props>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/index.story.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;;;;;AAEzC,wBAGC;AAED,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,OAAO,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,KAAK,CAkCjC,CAAA;AASD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,CAcnC,CAAA"}
1
+ {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/index.story.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;;;;;AAEzC,wBAGC;AAED,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,OAAO,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,KAAK,CAkCjC,CAAA;AAUD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,CAcnC,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import 'jest-styled-components';
2
- import renderder from 'react-test-renderer';
3
- export declare function render(children: JSX.Element): renderder.ReactTestRendererJSON | renderder.ReactTestRendererJSON[] | null;
2
+ import renderer from 'react-test-renderer';
3
+ export declare function render(children: JSX.Element): renderer.ReactTestRendererJSON | renderer.ReactTestRendererJSON[] | null;
4
4
  //# sourceMappingURL=performance.test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"performance.test.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/performance.test.tsx"],"names":[],"mappings":"AACA,OAAO,wBAAwB,CAAA;AAG/B,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAI3C,wBAAgB,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,8EAI3C"}
1
+ {"version":3,"file":"performance.test.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/performance.test.tsx"],"names":[],"mappings":"AACA,OAAO,wBAAwB,CAAA;AAG/B,OAAO,QAAQ,MAAM,qBAAqB,CAAA;AAI1C,wBAAgB,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,4EAI3C"}
@@ -1,7 +1,7 @@
1
1
  declare const _default: {
2
2
  title: string;
3
3
  component: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import(".").LoadingSpinnerProps & import("react").RefAttributes<HTMLDivElement>>>;
4
- decorators: ((...args: any) => any)[];
4
+ decorators: any[];
5
5
  };
6
6
  export default _default;
7
7
  export declare function Basic(): JSX.Element;
@@ -1,12 +1,13 @@
1
1
  import * as React from 'react';
2
2
  import { Components } from './ComponentAbstraction';
3
3
  import { ThemeMap } from '@charcoal-ui/styled/src/TokenInjector';
4
- import { CharcoalTheme } from '@charcoal-ui/theme';
4
+ import { CharcoalTheme, ThemeColor } from '@charcoal-ui/theme';
5
5
  export type CharcoalProviderProps = React.PropsWithChildren<{
6
6
  themeMap: ThemeMap<CharcoalTheme>;
7
7
  defaultTheme?: CharcoalTheme;
8
8
  injectTokens?: boolean;
9
9
  components?: Partial<Components>;
10
+ background?: keyof ThemeColor;
10
11
  }>;
11
- export declare function CharcoalProvider({ themeMap, defaultTheme, components, injectTokens, children, }: CharcoalProviderProps): JSX.Element;
12
+ export declare function CharcoalProvider({ themeMap, defaultTheme, components, injectTokens, children, background, }: CharcoalProviderProps): JSX.Element;
12
13
  //# sourceMappingURL=CharcoalProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CharcoalProvider.d.ts","sourceRoot":"","sources":["../../src/core/CharcoalProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAA6B,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEzE,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAKlD,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC1D,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IACjC,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;CACjC,CAAC,CAAA;AAEF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,YAAgC,EAChC,UAAe,EACf,YAAmB,EACnB,QAAQ,GACT,EAAE,qBAAqB,eAWvB"}
1
+ {"version":3,"file":"CharcoalProvider.d.ts","sourceRoot":"","sources":["../../src/core/CharcoalProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAA6B,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEzE,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAK9D,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC1D,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IACjC,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;IAChC,UAAU,CAAC,EAAE,MAAM,UAAU,CAAA;CAC9B,CAAC,CAAA;AAEF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,YAAgC,EAChC,UAAe,EACf,YAAmB,EACnB,QAAQ,EACR,UAAU,GACX,EAAE,qBAAqB,eAavB"}
package/dist/index.cjs.js CHANGED
@@ -99,10 +99,11 @@ function CharcoalProvider({
99
99
  defaultTheme = themeMap[":root"],
100
100
  components = {},
101
101
  injectTokens = true,
102
- children
102
+ children,
103
+ background
103
104
  }) {
104
105
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_ssr.SSRProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_styled_components.ThemeProvider, { theme: defaultTheme, children: [
105
- injectTokens && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_styled.TokenInjector, { theme: themeMap }),
106
+ injectTokens && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_styled.TokenInjector, { theme: themeMap, background }),
106
107
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ComponentAbstraction, { components, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_overlays.OverlayProvider, { children }) })
107
108
  ] }) });
108
109
  }
@@ -258,7 +259,7 @@ var StyledButton = (0, import_styled_components4.default)(Clickable_default)`
258
259
 
259
260
  ${(p) => theme((o) => [
260
261
  o.font[variantToFont(p.$variant)].hover.press,
261
- o.bg[variantToBackgraund(p.$variant)].hover.press,
262
+ o.bg[variantToBackground(p.$variant)].hover.press,
262
263
  o.typography(14).bold.preserveHalfLeading,
263
264
  o.padding.horizontal(p.$size === "M" ? 24 : 16),
264
265
  o.disabled,
@@ -269,7 +270,7 @@ var StyledButton = (0, import_styled_components4.default)(Clickable_default)`
269
270
  /* よく考えたらheight=32って定義が存在しないな... */
270
271
  height: ${(p) => p.$size === "M" ? 40 : 32}px;
271
272
  `;
272
- function variantToBackgraund(variant) {
273
+ function variantToBackground(variant) {
273
274
  switch (variant) {
274
275
  case "Overlay":
275
276
  return "surface4";
@@ -1588,7 +1589,7 @@ var LoadingSpinnerRoot = import_styled_components14.default.div.attrs({ role: "p
1588
1589
  transparent ? o.bg.transparent : o.bg.background1
1589
1590
  ])}
1590
1591
  `;
1591
- var scaleout = import_styled_components14.keyframes`
1592
+ var scaleOut = import_styled_components14.keyframes`
1592
1593
  from {
1593
1594
  transform: scale(0);
1594
1595
  opacity: 1;
@@ -1604,7 +1605,7 @@ var Icon2 = import_styled_components14.default.div.attrs({ role: "presentation"
1604
1605
  height: 1em;
1605
1606
  border-radius: 1em;
1606
1607
  background-color: currentColor;
1607
- animation: ${scaleout} 1s both ease-out;
1608
+ animation: ${scaleOut} 1s both ease-out;
1608
1609
  animation-iteration-count: ${(p) => p.once ? 1 : "infinite"};
1609
1610
 
1610
1611
  &[data-reset-animation] {
@@ -2234,16 +2235,17 @@ var import_react_stately3 = require("react-stately");
2234
2235
  var import_utils11 = require("@charcoal-ui/utils");
2235
2236
  var import_jsx_runtime26 = require("react/jsx-runtime");
2236
2237
  var Checkbox = (0, import_react21.forwardRef)(
2237
- function CheckboxInner(props, ref) {
2238
+ function CheckboxInner({ invalid = false, ...props }, ref) {
2238
2239
  const ariaCheckboxProps = (0, import_react21.useMemo)(
2239
2240
  () => ({
2240
2241
  ...props,
2241
2242
  isSelected: props.checked,
2242
2243
  defaultSelected: props.defaultChecked,
2244
+ validationState: invalid ? "invalid" : "valid",
2243
2245
  "aria-label": "children" in props ? void 0 : props.label,
2244
2246
  isDisabled: props.disabled
2245
2247
  }),
2246
- [props]
2248
+ [invalid, props]
2247
2249
  );
2248
2250
  const state = (0, import_react_stately3.useToggleState)(ariaCheckboxProps);
2249
2251
  const objectRef = (0, import_utils10.useObjectRef)(ref);
@@ -2251,7 +2253,7 @@ var Checkbox = (0, import_react21.forwardRef)(
2251
2253
  const isDisabled = (props.disabled ?? false) || (props.readonly ?? false);
2252
2254
  return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(InputRoot, { "aria-disabled": isDisabled, className: props.className, children: [
2253
2255
  /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(CheckboxRoot, { children: [
2254
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(CheckboxInput, { type: "checkbox", ...inputProps }),
2256
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(CheckboxInput, { type: "checkbox", ...inputProps, invalid }),
2255
2257
  /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(CheckboxInputOverlay, { "aria-hidden": true, checked: inputProps.checked, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Icon_default, { name: "24/Check", unsafeNonGuidelineScale: 2 / 3 }) })
2256
2258
  ] }),
2257
2259
  "children" in props && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(InputLabel, { children: props.children })
@@ -2295,6 +2297,7 @@ var CheckboxInput = import_styled_components22.default.input`
2295
2297
  border-color: ${({ theme: theme3 }) => theme3.color.text4};
2296
2298
  }
2297
2299
  ${theme((o) => [o.outline.default.focus, o.borderRadius(4)])}
2300
+ ${(p) => p.invalid && theme((o) => [o.outline.assertive])}
2298
2301
 
2299
2302
  /* FIXME: o.outline.default.focus の transition に o.bg.brand の transition が打ち消されてしまう */
2300
2303
  transition: all 0.2s !important;