@oxy.so/bloom 4.30.1 → 4.31.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 (38) hide show
  1. package/docs/adoption-matrix.mdx +4 -3
  2. package/docs/input-otp.mdx +22 -5
  3. package/lib/commonjs/input-otp/InputOtp.js +71 -18
  4. package/lib/commonjs/input-otp/InputOtp.js.map +1 -1
  5. package/lib/commonjs/input-otp/index.js +6 -0
  6. package/lib/commonjs/input-otp/index.js.map +1 -1
  7. package/lib/module/input-otp/InputOtp.js +70 -18
  8. package/lib/module/input-otp/InputOtp.js.map +1 -1
  9. package/lib/module/input-otp/index.js +1 -1
  10. package/lib/module/input-otp/index.js.map +1 -1
  11. package/lib/typescript/commonjs/input-otp/InputOtp.d.ts +4 -2
  12. package/lib/typescript/commonjs/input-otp/InputOtp.d.ts.map +1 -1
  13. package/lib/typescript/commonjs/input-otp/index.d.ts +2 -2
  14. package/lib/typescript/commonjs/input-otp/index.d.ts.map +1 -1
  15. package/lib/typescript/commonjs/input-otp/types.d.ts +14 -2
  16. package/lib/typescript/commonjs/input-otp/types.d.ts.map +1 -1
  17. package/lib/typescript/module/input-otp/InputOtp.d.ts +4 -2
  18. package/lib/typescript/module/input-otp/InputOtp.d.ts.map +1 -1
  19. package/lib/typescript/module/input-otp/index.d.ts +2 -2
  20. package/lib/typescript/module/input-otp/index.d.ts.map +1 -1
  21. package/lib/typescript/module/input-otp/types.d.ts +14 -2
  22. package/lib/typescript/module/input-otp/types.d.ts.map +1 -1
  23. package/package.json +1 -1
  24. package/src/__tests__/support/adoption-matrix.ts +708 -0
  25. package/src/__tests__/support/collision-fixture-barrel.ts +20 -0
  26. package/src/__tests__/support/commerce-harness.tsx +97 -0
  27. package/src/__tests__/support/composite.ts +68 -0
  28. package/src/__tests__/support/constructed-style-sheets.ts +68 -0
  29. package/src/__tests__/support/press-host.ts +30 -0
  30. package/src/__tests__/support/rendered-style.ts +99 -0
  31. package/src/__tests__/support/unread-hook-fixture.ts +33 -0
  32. package/src/__tests__/support/worklet-capture-fixture.tsx +28 -0
  33. package/src/input-otp/InputOtp.tsx +66 -19
  34. package/src/input-otp/index.ts +2 -2
  35. package/src/input-otp/types.ts +15 -2
  36. package/src/theme/__tests__/__fixtures__/golden-resolved-tokens.json +9346 -0
  37. package/src/theme/__tests__/__fixtures__/tonal-glass-primary-failures.json +69 -0
  38. package/src/theme/__tests__/fixtures/color-engine-golden.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
@@ -1,8 +1,20 @@
1
1
  import type { ViewStyleProp } from '../styles';
2
+ /**
3
+ * What a box accepts. `numeric` (the default) keeps digits only;
4
+ * `alphanumeric` upper-cases and keeps `A`–`Z` and `0`–`9`.
5
+ */
6
+ export type InputOtpType = 'numeric' | 'alphanumeric';
2
7
  export interface InputOtpProps extends ViewStyleProp {
3
- /** Number of digit boxes, default `6`. */
8
+ /** Number of boxes, default `6`. */
4
9
  length?: number;
5
- /** Controlled value. Non-digits are dropped and longer strings truncated to `length`. */
10
+ /**
11
+ * `numeric` (default): digits only, number pad. `alphanumeric`: letters and
12
+ * digits, upper-cased, on a letters keyboard with auto-capitalisation.
13
+ * Anything else — a dash, a space — is dropped either way, so a pasted
14
+ * `ABCDE-12345` fills ten boxes.
15
+ */
16
+ type?: InputOtpType;
17
+ /** Controlled value. Characters the `type` does not accept are dropped and longer strings truncated to `length`. */
6
18
  value?: string;
7
19
  /** Initial value when uncontrolled. */
8
20
  defaultValue?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yCAAyC;IACzC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC;AAEtD,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yCAAyC;IACzC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1,5 +1,5 @@
1
1
  import type { Theme } from '../theme/types';
2
- import type { InputOtpProps } from './types';
2
+ import type { InputOtpProps, InputOtpType } from './types';
3
3
  export interface InputOtpPalette {
4
4
  /** `background-primary-default`. */
5
5
  background: string;
@@ -39,5 +39,7 @@ export declare function resolveInputOtpBoxPaint(palette: InputOtpPalette, { hove
39
39
  color: string;
40
40
  boxShadow: string;
41
41
  };
42
- export declare function InputOtp({ length, value, defaultValue, onChange, onComplete, invalid: invalidProp, isInvalid, isDisabled, disabled: disabledAlias, groupEvery, autoFocus, accessibilityLabel, style, testID, }: InputOtpProps): import("react/jsx-runtime").JSX.Element;
42
+ /** The characters `type` accepts, in order; everything else is dropped. Pure. */
43
+ export declare function cleanInputOtpValue(raw: string, type?: InputOtpType): string;
44
+ export declare function InputOtp({ length, type, value, defaultValue, onChange, onComplete, invalid: invalidProp, isInvalid, isDisabled, disabled: disabledAlias, groupEvery, autoFocus, accessibilityLabel, style, testID, }: InputOtpProps): import("react/jsx-runtime").JSX.Element;
43
45
  //# sourceMappingURL=InputOtp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputOtp.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/InputOtp.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAU5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAyC7C,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mCAAmC;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe,CAepE;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,4DAA4D;AAC5D,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,eAAe,EACxB,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,gBAAgB,GACxD;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAyBpF;AAcD,wBAAgB,QAAQ,CAAC,EACvB,MAAU,EACV,KAAK,EACL,YAAiB,EACjB,QAAQ,EACR,UAAU,EACV,OAAO,EAAE,WAAW,EACpB,SAAS,EACT,UAAU,EACV,QAAQ,EAAE,aAAa,EACvB,UAAU,EACV,SAAiB,EACjB,kBAAkB,EAClB,KAAK,EACL,MAAM,GACP,EAAE,aAAa,2CA0Kf"}
1
+ {"version":3,"file":"InputOtp.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/InputOtp.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAU5C,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAiD3D,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mCAAmC;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe,CAepE;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,4DAA4D;AAC5D,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,eAAe,EACxB,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,gBAAgB,GACxD;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAyBpF;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,YAAwB,GAAG,MAAM,CAEtF;AAoCD,wBAAgB,QAAQ,CAAC,EACvB,MAAU,EACV,IAAgB,EAChB,KAAK,EACL,YAAiB,EACjB,QAAQ,EACR,UAAU,EACV,OAAO,EAAE,WAAW,EACpB,SAAS,EACT,UAAU,EACV,QAAQ,EAAE,aAAa,EACvB,UAAU,EACV,SAAiB,EACjB,kBAAkB,EAClB,KAAK,EACL,MAAM,GACP,EAAE,aAAa,2CAqLf"}
@@ -1,3 +1,3 @@
1
- export { InputOtp } from './InputOtp';
2
- export type { InputOtpProps } from './types';
1
+ export { InputOtp, cleanInputOtpValue } from './InputOtp';
2
+ export type { InputOtpProps, InputOtpType } from './types';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
@@ -1,8 +1,20 @@
1
1
  import type { ViewStyleProp } from '../styles';
2
+ /**
3
+ * What a box accepts. `numeric` (the default) keeps digits only;
4
+ * `alphanumeric` upper-cases and keeps `A`–`Z` and `0`–`9`.
5
+ */
6
+ export type InputOtpType = 'numeric' | 'alphanumeric';
2
7
  export interface InputOtpProps extends ViewStyleProp {
3
- /** Number of digit boxes, default `6`. */
8
+ /** Number of boxes, default `6`. */
4
9
  length?: number;
5
- /** Controlled value. Non-digits are dropped and longer strings truncated to `length`. */
10
+ /**
11
+ * `numeric` (default): digits only, number pad. `alphanumeric`: letters and
12
+ * digits, upper-cased, on a letters keyboard with auto-capitalisation.
13
+ * Anything else — a dash, a space — is dropped either way, so a pasted
14
+ * `ABCDE-12345` fills ten boxes.
15
+ */
16
+ type?: InputOtpType;
17
+ /** Controlled value. Characters the `type` does not accept are dropped and longer strings truncated to `length`. */
6
18
  value?: string;
7
19
  /** Initial value when uncontrolled. */
8
20
  defaultValue?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yCAAyC;IACzC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/input-otp/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC;AAEtD,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yCAAyC;IACzC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxy.so/bloom",
3
- "version": "4.30.1",
3
+ "version": "4.31.0",
4
4
  "packageManager": "bun@1.3.14",
5
5
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
6
6
  "main": "lib/commonjs/index.js",