@stytch/react 20.0.0-next.1 → 20.0.0-next.2
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/CHANGELOG.md +6 -0
- package/dist/cjs/compat.cjs +3645 -0
- package/dist/cjs/compat.cjs.map +1 -0
- package/dist/cjs/index.cjs +13 -2
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs-dev/b2b/index.cjs +7 -6
- package/dist/cjs-dev/b2b/index.cjs.map +1 -1
- package/dist/cjs-dev/b2b/index.headless.cjs +6 -5
- package/dist/cjs-dev/b2b/index.headless.cjs.map +1 -1
- package/dist/cjs-dev/compat.cjs +3693 -0
- package/dist/cjs-dev/compat.cjs.map +1 -0
- package/dist/cjs-dev/{idpHelpers-Cf8Qq1B4.js → idpHelpers-BVMUYvt1.js} +16 -40
- package/dist/cjs-dev/idpHelpers-BVMUYvt1.js.map +1 -0
- package/dist/cjs-dev/index.cjs +20 -8
- package/dist/cjs-dev/index.cjs.map +1 -1
- package/dist/cjs-dev/index.headless.cjs +7 -6
- package/dist/cjs-dev/index.headless.cjs.map +1 -1
- package/dist/cjs-dev/logger-CvOATP4R.js +28 -0
- package/dist/cjs-dev/logger-CvOATP4R.js.map +1 -0
- package/dist/cjs-dev/{shadcn-C4w3DtKK.js → shadcn-C9ClUju1.js} +6 -5
- package/dist/cjs-dev/{shadcn-C4w3DtKK.js.map → shadcn-C9ClUju1.js.map} +1 -1
- package/dist/esm/compat.mjs +3 -0
- package/dist/esm/compat.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/index.mjs +85 -0
- package/dist/esm/node_modules/chroma-js/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/Color.mjs +53 -0
- package/dist/esm/node_modules/chroma-js/src/Color.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/chroma.mjs +11 -0
- package/dist/esm/node_modules/chroma-js/src/chroma.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/colors/colorbrewer.mjs +82 -0
- package/dist/esm/node_modules/chroma-js/src/colors/colorbrewer.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/colors/w3cx11.mjs +165 -0
- package/dist/esm/node_modules/chroma-js/src/colors/w3cx11.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/average.mjs +92 -0
- package/dist/esm/node_modules/chroma-js/src/generator/average.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/bezier.mjs +89 -0
- package/dist/esm/node_modules/chroma-js/src/generator/bezier.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/blend.mjs +58 -0
- package/dist/esm/node_modules/chroma-js/src/generator/blend.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/cubehelix.mjs +93 -0
- package/dist/esm/node_modules/chroma-js/src/generator/cubehelix.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/mix.mjs +22 -0
- package/dist/esm/node_modules/chroma-js/src/generator/mix.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/random.mjs +16 -0
- package/dist/esm/node_modules/chroma-js/src/generator/random.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/generator/scale.mjs +398 -0
- package/dist/esm/node_modules/chroma-js/src/generator/scale.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/_hsx.mjs +62 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/_hsx.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hcg.mjs +13 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hcg.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hsi.mjs +13 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hsi.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hsl.mjs +13 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hsl.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hsv.mjs +13 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/hsv.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/index.mjs +4 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/lab.mjs +20 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/lab.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/lch.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/lch.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/lrgb.mjs +21 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/lrgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/num.mjs +15 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/num.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/oklab.mjs +20 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/oklab.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/oklch.mjs +13 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/oklch.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/rgb.mjs +19 -0
- package/dist/esm/node_modules/chroma-js/src/interpolator/rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/cmyk/cmyk2rgb.mjs +18 -0
- package/dist/esm/node_modules/chroma-js/src/io/cmyk/cmyk2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/cmyk/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/cmyk/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/cmyk/rgb2cmyk.mjs +20 -0
- package/dist/esm/node_modules/chroma-js/src/io/cmyk/rgb2cmyk.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/css2rgb.mjs +239 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/css2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/hsl2css.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/hsl2css.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/index.mjs +27 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/lab2css.mjs +27 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/lab2css.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/lch2css.mjs +27 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/lch2css.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/oklab2css.mjs +18 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/oklab2css.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/oklch2css.mjs +18 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/oklch2css.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/rgb2css.mjs +65 -0
- package/dist/esm/node_modules/chroma-js/src/io/css/rgb2css.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/gl/index.mjs +24 -0
- package/dist/esm/node_modules/chroma-js/src/io/gl/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hcg/hcg2rgb.mjs +58 -0
- package/dist/esm/node_modules/chroma-js/src/io/hcg/hcg2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hcg/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/hcg/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hcg/rgb2hcg.mjs +25 -0
- package/dist/esm/node_modules/chroma-js/src/io/hcg/rgb2hcg.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hex/hex2rgb.mjs +57 -0
- package/dist/esm/node_modules/chroma-js/src/io/hex/hex2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hex/index.mjs +30 -0
- package/dist/esm/node_modules/chroma-js/src/io/hex/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hex/rgb2hex.mjs +33 -0
- package/dist/esm/node_modules/chroma-js/src/io/hex/rgb2hex.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsi/hsi2rgb.mjs +49 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsi/hsi2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsi/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsi/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsi/rgb2hsi.mjs +34 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsi/rgb2hsi.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsl/hsl2rgb.mjs +37 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsl/hsl2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsl/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsl/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsl/rgb2hsl.mjs +47 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsl/rgb2hsl.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsv/hsv2rgb.mjs +50 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsv/hsv2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsv/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsv/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsv/rgb2hsv.mjs +35 -0
- package/dist/esm/node_modules/chroma-js/src/io/hsv/rgb2hsv.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/input.mjs +7 -0
- package/dist/esm/node_modules/chroma-js/src/io/input.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/index.mjs +30 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/lab-constants.mjs +116 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/lab-constants.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/lab2rgb.mjs +102 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/lab2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/rgb2lab.mjs +68 -0
- package/dist/esm/node_modules/chroma-js/src/io/lab/rgb2lab.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/hcl2rgb.mjs +11 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/hcl2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/index.mjs +38 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/lab2lch.mjs +15 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/lab2lch.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/lch2lab.mjs +21 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/lch2lab.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/lch2rgb.mjs +15 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/lch2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/rgb2lch.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/io/lch/rgb2lch.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/named/index.mjs +30 -0
- package/dist/esm/node_modules/chroma-js/src/io/named/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/num/index.mjs +33 -0
- package/dist/esm/node_modules/chroma-js/src/io/num/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/num/num2rgb.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/io/num/num2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/num/rgb2num.mjs +10 -0
- package/dist/esm/node_modules/chroma-js/src/io/num/rgb2num.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklab/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklab/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklab/oklab2rgb.mjs +36 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklab/oklab2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklab/rgb2oklab.mjs +39 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklab/rgb2oklab.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklch/index.mjs +29 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklch/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklch/oklch2rgb.mjs +15 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklch/oklch2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklch/rgb2oklch.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/io/oklch/rgb2oklch.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/rgb/index.mjs +47 -0
- package/dist/esm/node_modules/chroma-js/src/io/rgb/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/temp/index.mjs +23 -0
- package/dist/esm/node_modules/chroma-js/src/io/temp/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/temp/rgb2temperature.mjs +33 -0
- package/dist/esm/node_modules/chroma-js/src/io/temp/rgb2temperature.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/io/temp/temperature2rgb.mjs +40 -0
- package/dist/esm/node_modules/chroma-js/src/io/temp/temperature2rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/alpha.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/ops/alpha.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/clipped.mjs +6 -0
- package/dist/esm/node_modules/chroma-js/src/ops/clipped.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/darken.mjs +18 -0
- package/dist/esm/node_modules/chroma-js/src/ops/darken.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/get.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/ops/get.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/luminance.mjs +56 -0
- package/dist/esm/node_modules/chroma-js/src/ops/luminance.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/mix.mjs +11 -0
- package/dist/esm/node_modules/chroma-js/src/ops/mix.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/premultiply.mjs +13 -0
- package/dist/esm/node_modules/chroma-js/src/ops/premultiply.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/saturate.mjs +16 -0
- package/dist/esm/node_modules/chroma-js/src/ops/saturate.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/set.mjs +44 -0
- package/dist/esm/node_modules/chroma-js/src/ops/set.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/ops/shade.mjs +12 -0
- package/dist/esm/node_modules/chroma-js/src/ops/shade.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/analyze.mjs +194 -0
- package/dist/esm/node_modules/chroma-js/src/utils/analyze.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/clip_rgb.mjs +18 -0
- package/dist/esm/node_modules/chroma-js/src/utils/clip_rgb.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/contrast.mjs +15 -0
- package/dist/esm/node_modules/chroma-js/src/utils/contrast.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/contrastAPCA.mjs +71 -0
- package/dist/esm/node_modules/chroma-js/src/utils/contrastAPCA.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/delta-e.mjs +66 -0
- package/dist/esm/node_modules/chroma-js/src/utils/delta-e.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/distance.mjs +20 -0
- package/dist/esm/node_modules/chroma-js/src/utils/distance.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/index.mjs +24 -0
- package/dist/esm/node_modules/chroma-js/src/utils/index.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/last.mjs +11 -0
- package/dist/esm/node_modules/chroma-js/src/utils/last.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/limit.mjs +8 -0
- package/dist/esm/node_modules/chroma-js/src/utils/limit.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/multiply-matrices.mjs +39 -0
- package/dist/esm/node_modules/chroma-js/src/utils/multiply-matrices.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/scales.mjs +19 -0
- package/dist/esm/node_modules/chroma-js/src/utils/scales.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/type.mjs +21 -0
- package/dist/esm/node_modules/chroma-js/src/utils/type.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/unpack.mjs +20 -0
- package/dist/esm/node_modules/chroma-js/src/utils/unpack.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/utils/valid.mjs +14 -0
- package/dist/esm/node_modules/chroma-js/src/utils/valid.mjs.map +1 -0
- package/dist/esm/node_modules/chroma-js/src/version.mjs +5 -0
- package/dist/esm/node_modules/chroma-js/src/version.mjs.map +1 -0
- package/dist/esm/packages/web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.mjs +6 -2
- package/dist/esm/packages/web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.mjs.map +1 -1
- package/dist/esm/packages/web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.mjs +10 -0
- package/dist/esm/packages/web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.mjs.map +1 -1
- package/dist/esm/packages/web/src/ui/compat/generateColorFallback.mjs +63 -0
- package/dist/esm/packages/web/src/ui/compat/generateColorFallback.mjs.map +1 -0
- package/dist/esm/packages/web/src/ui/compat/styleToTheme.mjs +117 -0
- package/dist/esm/packages/web/src/ui/compat/styleToTheme.mjs.map +1 -0
- package/dist/esm-dev/_virtual/index3.mjs +5 -3
- package/dist/esm-dev/_virtual/index3.mjs.map +1 -1
- package/dist/esm-dev/_virtual/index4.mjs +3 -5
- package/dist/esm-dev/_virtual/index4.mjs.map +1 -1
- package/dist/esm-dev/compat.mjs +3 -0
- package/dist/esm-dev/compat.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/index.mjs +85 -0
- package/dist/esm-dev/node_modules/chroma-js/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/Color.mjs +53 -0
- package/dist/esm-dev/node_modules/chroma-js/src/Color.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/chroma.mjs +11 -0
- package/dist/esm-dev/node_modules/chroma-js/src/chroma.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/colors/colorbrewer.mjs +82 -0
- package/dist/esm-dev/node_modules/chroma-js/src/colors/colorbrewer.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/colors/w3cx11.mjs +165 -0
- package/dist/esm-dev/node_modules/chroma-js/src/colors/w3cx11.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/average.mjs +92 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/average.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/bezier.mjs +89 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/bezier.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/blend.mjs +58 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/blend.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/cubehelix.mjs +93 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/cubehelix.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/mix.mjs +22 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/mix.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/random.mjs +16 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/random.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/scale.mjs +398 -0
- package/dist/esm-dev/node_modules/chroma-js/src/generator/scale.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/_hsx.mjs +62 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/_hsx.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hcg.mjs +13 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hcg.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hsi.mjs +13 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hsi.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hsl.mjs +13 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hsl.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hsv.mjs +13 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/hsv.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/index.mjs +4 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/lab.mjs +20 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/lab.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/lch.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/lch.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/lrgb.mjs +21 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/lrgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/num.mjs +15 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/num.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/oklab.mjs +20 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/oklab.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/oklch.mjs +13 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/oklch.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/rgb.mjs +19 -0
- package/dist/esm-dev/node_modules/chroma-js/src/interpolator/rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/cmyk/cmyk2rgb.mjs +18 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/cmyk/cmyk2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/cmyk/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/cmyk/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/cmyk/rgb2cmyk.mjs +20 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/cmyk/rgb2cmyk.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/css2rgb.mjs +239 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/css2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/hsl2css.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/hsl2css.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/index.mjs +27 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/lab2css.mjs +27 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/lab2css.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/lch2css.mjs +27 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/lch2css.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/oklab2css.mjs +18 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/oklab2css.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/oklch2css.mjs +18 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/oklch2css.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/rgb2css.mjs +65 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/css/rgb2css.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/gl/index.mjs +24 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/gl/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hcg/hcg2rgb.mjs +58 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hcg/hcg2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hcg/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hcg/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hcg/rgb2hcg.mjs +25 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hcg/rgb2hcg.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hex/hex2rgb.mjs +57 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hex/hex2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hex/index.mjs +30 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hex/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hex/rgb2hex.mjs +33 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hex/rgb2hex.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsi/hsi2rgb.mjs +49 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsi/hsi2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsi/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsi/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsi/rgb2hsi.mjs +34 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsi/rgb2hsi.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsl/hsl2rgb.mjs +37 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsl/hsl2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsl/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsl/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsl/rgb2hsl.mjs +47 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsl/rgb2hsl.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsv/hsv2rgb.mjs +50 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsv/hsv2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsv/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsv/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsv/rgb2hsv.mjs +35 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/hsv/rgb2hsv.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/input.mjs +7 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/input.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/index.mjs +30 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/lab-constants.mjs +116 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/lab-constants.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/lab2rgb.mjs +102 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/lab2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/rgb2lab.mjs +68 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lab/rgb2lab.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/hcl2rgb.mjs +11 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/hcl2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/index.mjs +38 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/lab2lch.mjs +15 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/lab2lch.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/lch2lab.mjs +21 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/lch2lab.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/lch2rgb.mjs +15 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/lch2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/rgb2lch.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/lch/rgb2lch.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/named/index.mjs +30 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/named/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/num/index.mjs +33 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/num/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/num/num2rgb.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/num/num2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/num/rgb2num.mjs +10 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/num/rgb2num.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklab/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklab/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklab/oklab2rgb.mjs +36 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklab/oklab2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklab/rgb2oklab.mjs +39 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklab/rgb2oklab.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklch/index.mjs +29 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklch/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklch/oklch2rgb.mjs +15 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklch/oklch2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklch/rgb2oklch.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/oklch/rgb2oklch.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/rgb/index.mjs +47 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/rgb/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/temp/index.mjs +23 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/temp/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/temp/rgb2temperature.mjs +33 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/temp/rgb2temperature.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/temp/temperature2rgb.mjs +40 -0
- package/dist/esm-dev/node_modules/chroma-js/src/io/temp/temperature2rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/alpha.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/alpha.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/clipped.mjs +6 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/clipped.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/darken.mjs +18 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/darken.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/get.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/get.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/luminance.mjs +56 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/luminance.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/mix.mjs +11 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/mix.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/premultiply.mjs +13 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/premultiply.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/saturate.mjs +16 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/saturate.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/set.mjs +44 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/set.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/shade.mjs +12 -0
- package/dist/esm-dev/node_modules/chroma-js/src/ops/shade.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/analyze.mjs +194 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/analyze.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/clip_rgb.mjs +18 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/clip_rgb.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/contrast.mjs +15 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/contrast.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/contrastAPCA.mjs +71 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/contrastAPCA.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/delta-e.mjs +66 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/delta-e.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/distance.mjs +20 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/distance.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/index.mjs +24 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/index.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/last.mjs +11 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/last.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/limit.mjs +8 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/limit.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/multiply-matrices.mjs +39 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/multiply-matrices.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/scales.mjs +19 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/scales.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/type.mjs +21 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/type.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/unpack.mjs +20 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/unpack.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/valid.mjs +14 -0
- package/dist/esm-dev/node_modules/chroma-js/src/utils/valid.mjs.map +1 -0
- package/dist/esm-dev/node_modules/chroma-js/src/version.mjs +5 -0
- package/dist/esm-dev/node_modules/chroma-js/src/version.mjs.map +1 -0
- package/dist/esm-dev/packages/web/src/adminPortal/utils/theme.mjs +1 -1
- package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.mjs +6 -2
- package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.mjs.map +1 -1
- package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.mjs +10 -0
- package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.mjs.map +1 -1
- package/dist/esm-dev/packages/web/src/ui/compat/generateColorFallback.mjs +63 -0
- package/dist/esm-dev/packages/web/src/ui/compat/generateColorFallback.mjs.map +1 -0
- package/dist/esm-dev/packages/web/src/ui/compat/styleToTheme.mjs +165 -0
- package/dist/esm-dev/packages/web/src/ui/compat/styleToTheme.mjs.map +1 -0
- package/dist/esm-dev/packages/web/src/utils/crypto.mjs +1 -1
- package/dist/types/PresentationConfig-Bqzf8zr3.d.ts +168 -0
- package/dist/types/{StytchB2BClient-C_7NUKZh.d.ts → StytchB2BClient-CsY7ZNKh.d.ts} +2 -1
- package/dist/types/{StytchClient-Ccvk8Nj1.d.ts → StytchClient-DZRM_fM4.d.ts} +2 -1
- package/dist/types/adminPortal/index.d.ts +5 -3
- package/dist/types/b2b/index.d.ts +10 -7
- package/dist/types/b2b/index.headless.d.ts +5 -4
- package/dist/types/compat.d.ts +46 -0
- package/dist/types/createAuthUrlHandler-BZoD2LDF.d.ts +2406 -0
- package/dist/types/{idpHelpers-aCVwNrDk.d.ts → idpHelpers-CD5sSDzA.d.ts} +1 -1
- package/dist/types/index.d.ts +10 -7
- package/dist/types/index.headless.d.ts +5 -4
- package/dist/types/{shadcn-0e4fkV5Z.d.ts → shadcn-4-5byj93.d.ts} +7 -169
- package/dist/types/{createAuthUrlHandler-BJRA2PHG.d.ts → ui-DXrQ-gA8.d.ts} +1123 -3525
- package/package.json +1 -1
- package/dist/cjs-dev/idpHelpers-Cf8Qq1B4.js.map +0 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import Color from '../Color.mjs';
|
|
2
|
+
|
|
3
|
+
const { sqrt, pow, min, max, atan2, abs, cos, sin, exp, PI } = Math;
|
|
4
|
+
|
|
5
|
+
function deltaE (a, b, Kl = 1, Kc = 1, Kh = 1) {
|
|
6
|
+
// Delta E (CIE 2000)
|
|
7
|
+
// see http://www.brucelindbloom.com/index.html?Eqn_DeltaE_CIE2000.html
|
|
8
|
+
var rad2deg = function (rad) {
|
|
9
|
+
return (360 * rad) / (2 * PI);
|
|
10
|
+
};
|
|
11
|
+
var deg2rad = function (deg) {
|
|
12
|
+
return (2 * PI * deg) / 360;
|
|
13
|
+
};
|
|
14
|
+
a = new Color(a);
|
|
15
|
+
b = new Color(b);
|
|
16
|
+
const [L1, a1, b1] = Array.from(a.lab());
|
|
17
|
+
const [L2, a2, b2] = Array.from(b.lab());
|
|
18
|
+
const avgL = (L1 + L2) / 2;
|
|
19
|
+
const C1 = sqrt(pow(a1, 2) + pow(b1, 2));
|
|
20
|
+
const C2 = sqrt(pow(a2, 2) + pow(b2, 2));
|
|
21
|
+
const avgC = (C1 + C2) / 2;
|
|
22
|
+
const G = 0.5 * (1 - sqrt(pow(avgC, 7) / (pow(avgC, 7) + pow(25, 7))));
|
|
23
|
+
const a1p = a1 * (1 + G);
|
|
24
|
+
const a2p = a2 * (1 + G);
|
|
25
|
+
const C1p = sqrt(pow(a1p, 2) + pow(b1, 2));
|
|
26
|
+
const C2p = sqrt(pow(a2p, 2) + pow(b2, 2));
|
|
27
|
+
const avgCp = (C1p + C2p) / 2;
|
|
28
|
+
const arctan1 = rad2deg(atan2(b1, a1p));
|
|
29
|
+
const arctan2 = rad2deg(atan2(b2, a2p));
|
|
30
|
+
const h1p = arctan1 >= 0 ? arctan1 : arctan1 + 360;
|
|
31
|
+
const h2p = arctan2 >= 0 ? arctan2 : arctan2 + 360;
|
|
32
|
+
const avgHp =
|
|
33
|
+
abs(h1p - h2p) > 180 ? (h1p + h2p + 360) / 2 : (h1p + h2p) / 2;
|
|
34
|
+
const T =
|
|
35
|
+
1 -
|
|
36
|
+
0.17 * cos(deg2rad(avgHp - 30)) +
|
|
37
|
+
0.24 * cos(deg2rad(2 * avgHp)) +
|
|
38
|
+
0.32 * cos(deg2rad(3 * avgHp + 6)) -
|
|
39
|
+
0.2 * cos(deg2rad(4 * avgHp - 63));
|
|
40
|
+
let deltaHp = h2p - h1p;
|
|
41
|
+
deltaHp =
|
|
42
|
+
abs(deltaHp) <= 180
|
|
43
|
+
? deltaHp
|
|
44
|
+
: h2p <= h1p
|
|
45
|
+
? deltaHp + 360
|
|
46
|
+
: deltaHp - 360;
|
|
47
|
+
deltaHp = 2 * sqrt(C1p * C2p) * sin(deg2rad(deltaHp) / 2);
|
|
48
|
+
const deltaL = L2 - L1;
|
|
49
|
+
const deltaCp = C2p - C1p;
|
|
50
|
+
const sl = 1 + (0.015 * pow(avgL - 50, 2)) / sqrt(20 + pow(avgL - 50, 2));
|
|
51
|
+
const sc = 1 + 0.045 * avgCp;
|
|
52
|
+
const sh = 1 + 0.015 * avgCp * T;
|
|
53
|
+
const deltaTheta = 30 * exp(-pow((avgHp - 275) / 25, 2));
|
|
54
|
+
const Rc = 2 * sqrt(pow(avgCp, 7) / (pow(avgCp, 7) + pow(25, 7)));
|
|
55
|
+
const Rt = -Rc * sin(2 * deg2rad(deltaTheta));
|
|
56
|
+
const result = sqrt(
|
|
57
|
+
pow(deltaL / (Kl * sl), 2) +
|
|
58
|
+
pow(deltaCp / (Kc * sc), 2) +
|
|
59
|
+
pow(deltaHp / (Kh * sh), 2) +
|
|
60
|
+
Rt * (deltaCp / (Kc * sc)) * (deltaHp / (Kh * sh))
|
|
61
|
+
);
|
|
62
|
+
return max(0, min(100, result));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { deltaE as default };
|
|
66
|
+
//# sourceMappingURL=delta-e.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delta-e.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/delta-e.js"],"sourcesContent":["import Color from '../Color.js';\nconst { sqrt, pow, min, max, atan2, abs, cos, sin, exp, PI } = Math;\n\nexport default function (a, b, Kl = 1, Kc = 1, Kh = 1) {\n // Delta E (CIE 2000)\n // see http://www.brucelindbloom.com/index.html?Eqn_DeltaE_CIE2000.html\n var rad2deg = function (rad) {\n return (360 * rad) / (2 * PI);\n };\n var deg2rad = function (deg) {\n return (2 * PI * deg) / 360;\n };\n a = new Color(a);\n b = new Color(b);\n const [L1, a1, b1] = Array.from(a.lab());\n const [L2, a2, b2] = Array.from(b.lab());\n const avgL = (L1 + L2) / 2;\n const C1 = sqrt(pow(a1, 2) + pow(b1, 2));\n const C2 = sqrt(pow(a2, 2) + pow(b2, 2));\n const avgC = (C1 + C2) / 2;\n const G = 0.5 * (1 - sqrt(pow(avgC, 7) / (pow(avgC, 7) + pow(25, 7))));\n const a1p = a1 * (1 + G);\n const a2p = a2 * (1 + G);\n const C1p = sqrt(pow(a1p, 2) + pow(b1, 2));\n const C2p = sqrt(pow(a2p, 2) + pow(b2, 2));\n const avgCp = (C1p + C2p) / 2;\n const arctan1 = rad2deg(atan2(b1, a1p));\n const arctan2 = rad2deg(atan2(b2, a2p));\n const h1p = arctan1 >= 0 ? arctan1 : arctan1 + 360;\n const h2p = arctan2 >= 0 ? arctan2 : arctan2 + 360;\n const avgHp =\n abs(h1p - h2p) > 180 ? (h1p + h2p + 360) / 2 : (h1p + h2p) / 2;\n const T =\n 1 -\n 0.17 * cos(deg2rad(avgHp - 30)) +\n 0.24 * cos(deg2rad(2 * avgHp)) +\n 0.32 * cos(deg2rad(3 * avgHp + 6)) -\n 0.2 * cos(deg2rad(4 * avgHp - 63));\n let deltaHp = h2p - h1p;\n deltaHp =\n abs(deltaHp) <= 180\n ? deltaHp\n : h2p <= h1p\n ? deltaHp + 360\n : deltaHp - 360;\n deltaHp = 2 * sqrt(C1p * C2p) * sin(deg2rad(deltaHp) / 2);\n const deltaL = L2 - L1;\n const deltaCp = C2p - C1p;\n const sl = 1 + (0.015 * pow(avgL - 50, 2)) / sqrt(20 + pow(avgL - 50, 2));\n const sc = 1 + 0.045 * avgCp;\n const sh = 1 + 0.015 * avgCp * T;\n const deltaTheta = 30 * exp(-pow((avgHp - 275) / 25, 2));\n const Rc = 2 * sqrt(pow(avgCp, 7) / (pow(avgCp, 7) + pow(25, 7)));\n const Rt = -Rc * sin(2 * deg2rad(deltaTheta));\n const result = sqrt(\n pow(deltaL / (Kl * sl), 2) +\n pow(deltaCp / (Kc * sc), 2) +\n pow(deltaHp / (Kh * sh), 2) +\n Rt * (deltaCp / (Kc * sc)) * (deltaHp / (Kh * sh))\n );\n return max(0, min(100, result));\n}\n"],"names":[],"mappings":";;AACA,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI;;AAEpD,eAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE;AACvD;AACA;AACA,IAAI,IAAI,OAAO,GAAG,UAAU,GAAG,EAAE;AACjC,QAAQ,OAAO,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;AACrC,IAAI,CAAC;AACL,IAAI,IAAI,OAAO,GAAG,UAAU,GAAG,EAAE;AACjC,QAAQ,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,GAAG;AACnC,IAAI,CAAC;AACL,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC;AACpB,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC;AACpB,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAC5C,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAC5C,IAAI,MAAM,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC;AAC9B,IAAI,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5C,IAAI,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5C,IAAI,MAAM,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC;AAC9B,IAAI,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1E,IAAI,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,IAAI,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC9C,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC9C,IAAI,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC;AACjC,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAC3C,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAC3C,IAAI,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,OAAO,GAAG,OAAO,GAAG,GAAG;AACtD,IAAI,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,OAAO,GAAG,OAAO,GAAG,GAAG;AACtD,IAAI,MAAM,KAAK;AACf,QAAQ,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC;AACtE,IAAI,MAAM,CAAC;AACX,QAAQ,CAAC;AACT,QAAQ,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;AACvC,QAAQ,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AACtC,QAAQ,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC;AAC1C,QAAQ,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC;AAC1C,IAAI,IAAI,OAAO,GAAG,GAAG,GAAG,GAAG;AAC3B,IAAI,OAAO;AACX,QAAQ,GAAG,CAAC,OAAO,CAAC,IAAI;AACxB,cAAc;AACd,cAAc,GAAG,IAAI;AACrB,gBAAgB,OAAO,GAAG;AAC1B,gBAAgB,OAAO,GAAG,GAAG;AAC7B,IAAI,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC7D,IAAI,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE;AAC1B,IAAI,MAAM,OAAO,GAAG,GAAG,GAAG,GAAG;AAC7B,IAAI,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7E,IAAI,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK;AAChC,IAAI,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,GAAG,CAAC;AACpC,IAAI,MAAM,UAAU,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5D,IAAI,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACrE,IAAI,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACjD,IAAI,MAAM,MAAM,GAAG,IAAI;AACvB,QAAQ,GAAG,CAAC,MAAM,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAClC,YAAY,GAAG,CAAC,OAAO,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AACvC,YAAY,GAAG,CAAC,OAAO,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AACvC,YAAY,EAAE,IAAI,OAAO,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,OAAO,IAAI,EAAE,GAAG,EAAE,CAAC;AAC7D,KAAK;AACL,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACnC;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import Color from '../Color.mjs';
|
|
2
|
+
|
|
3
|
+
// simple Euclidean distance
|
|
4
|
+
function distance (a, b, mode = 'lab') {
|
|
5
|
+
// Delta E (CIE 1976)
|
|
6
|
+
// see http://www.brucelindbloom.com/index.html?Equations.html
|
|
7
|
+
a = new Color(a);
|
|
8
|
+
b = new Color(b);
|
|
9
|
+
const l1 = a.get(mode);
|
|
10
|
+
const l2 = b.get(mode);
|
|
11
|
+
let sum_sq = 0;
|
|
12
|
+
for (let i in l1) {
|
|
13
|
+
const d = (l1[i] || 0) - (l2[i] || 0);
|
|
14
|
+
sum_sq += d * d;
|
|
15
|
+
}
|
|
16
|
+
return Math.sqrt(sum_sq);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { distance as default };
|
|
20
|
+
//# sourceMappingURL=distance.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"distance.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/distance.js"],"sourcesContent":["import Color from '../Color.js';\n\n// simple Euclidean distance\nexport default function (a, b, mode = 'lab') {\n // Delta E (CIE 1976)\n // see http://www.brucelindbloom.com/index.html?Equations.html\n a = new Color(a);\n b = new Color(b);\n const l1 = a.get(mode);\n const l2 = b.get(mode);\n let sum_sq = 0;\n for (let i in l1) {\n const d = (l1[i] || 0) - (l2[i] || 0);\n sum_sq += d * d;\n }\n return Math.sqrt(sum_sq);\n}\n"],"names":[],"mappings":";;AAEA;AACe,iBAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE;AAC7C;AACA;AACA,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC;AACpB,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC;AACpB,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAC1B,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAC1B,IAAI,IAAI,MAAM,GAAG,CAAC;AAClB,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE;AACtB,QAAQ,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7C,QAAQ,MAAM,IAAI,CAAC,GAAG,CAAC;AACvB,IAAI;AACJ,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;AAC5B;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export { default as type } from './type.mjs';
|
|
2
|
+
|
|
3
|
+
const { PI, min, max } = Math;
|
|
4
|
+
|
|
5
|
+
const rnd2 = (a) => Math.round(a * 100) / 100;
|
|
6
|
+
const rnd3 = (a) => Math.round(a * 100) / 100;
|
|
7
|
+
|
|
8
|
+
const TWOPI = PI * 2;
|
|
9
|
+
const PITHIRD = PI / 3;
|
|
10
|
+
const DEG2RAD = PI / 180;
|
|
11
|
+
const RAD2DEG = 180 / PI;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Reverse the first three elements of an array
|
|
15
|
+
*
|
|
16
|
+
* @param {any[]} arr
|
|
17
|
+
* @returns {any[]}
|
|
18
|
+
*/
|
|
19
|
+
function reverse3(arr) {
|
|
20
|
+
return [...arr.slice(0, 3).reverse(), ...arr.slice(3)];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { DEG2RAD, PI, PITHIRD, RAD2DEG, TWOPI, max, min, reverse3, rnd2, rnd3 };
|
|
24
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/index.js"],"sourcesContent":["const { PI, min, max } = Math;\n\nconst rnd2 = (a) => Math.round(a * 100) / 100;\nconst rnd3 = (a) => Math.round(a * 100) / 100;\n\nexport { default as clip_rgb } from './clip_rgb.js';\nexport { default as limit } from './limit.js';\nexport { default as type } from './type.js';\nexport { default as unpack } from './unpack.js';\nexport { default as last } from './last.js';\n\nconst TWOPI = PI * 2;\nconst PITHIRD = PI / 3;\nconst DEG2RAD = PI / 180;\nconst RAD2DEG = 180 / PI;\n\n/**\n * Reverse the first three elements of an array\n *\n * @param {any[]} arr\n * @returns {any[]}\n */\nfunction reverse3(arr) {\n return [...arr.slice(0, 3).reverse(), ...arr.slice(3)];\n}\n\nexport { PI, TWOPI, PITHIRD, DEG2RAD, RAD2DEG, min, max, rnd2, rnd3, reverse3 };\n"],"names":[],"mappings":";;AAAK,MAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;;AAEpB,MAAC,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG;AACrC,MAAC,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG;;AAQrC,MAAC,KAAK,GAAG,EAAE,GAAG;AACd,MAAC,OAAO,GAAG,EAAE,GAAG;AAChB,MAAC,OAAO,GAAG,EAAE,GAAG;AAChB,MAAC,OAAO,GAAG,GAAG,GAAG;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,QAAQ,CAAC,GAAG,EAAE;AACvB,IAAI,OAAO,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1D;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type from './type.mjs';
|
|
2
|
+
|
|
3
|
+
var last = (args) => {
|
|
4
|
+
if (args.length < 2) return null;
|
|
5
|
+
const l = args.length - 1;
|
|
6
|
+
if (type(args[l]) == 'string') return args[l].toLowerCase();
|
|
7
|
+
return null;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export { last as default };
|
|
11
|
+
//# sourceMappingURL=last.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"last.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/last.js"],"sourcesContent":["import type from './type.js';\n\nexport default (args) => {\n if (args.length < 2) return null;\n const l = args.length - 1;\n if (type(args[l]) == 'string') return args[l].toLowerCase();\n return null;\n};\n"],"names":[],"mappings":";;AAEA,WAAe,CAAC,IAAI,KAAK;AACzB,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,IAAI;AACpC,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;AAC7B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;AAC/D,IAAI,OAAO,IAAI;AACf,CAAC;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"limit.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/limit.js"],"sourcesContent":["const { min, max } = Math;\n\nexport default (x, low = 0, high = 1) => {\n return min(max(low, x), high);\n};\n"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;;AAEzB,YAAe,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK;AACzC,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC;AACjC,CAAC;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// from https://www.w3.org/TR/css-color-4/multiply-matrices.js
|
|
2
|
+
function multiplyMatrices(A, B) {
|
|
3
|
+
let m = A.length;
|
|
4
|
+
|
|
5
|
+
if (!Array.isArray(A[0])) {
|
|
6
|
+
// A is vector, convert to [[a, b, c, ...]]
|
|
7
|
+
A = [A];
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
if (!Array.isArray(B[0])) {
|
|
11
|
+
// B is vector, convert to [[a], [b], [c], ...]]
|
|
12
|
+
B = B.map((x) => [x]);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
let p = B[0].length;
|
|
16
|
+
let B_cols = B[0].map((_, i) => B.map((x) => x[i])); // transpose B
|
|
17
|
+
let product = A.map((row) =>
|
|
18
|
+
B_cols.map((col) => {
|
|
19
|
+
if (!Array.isArray(row)) {
|
|
20
|
+
return col.reduce((a, c) => a + c * row, 0);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return row.reduce((a, c, i) => a + c * (col[i] || 0), 0);
|
|
24
|
+
})
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
if (m === 1) {
|
|
28
|
+
product = product[0]; // Avoid [[a, b, c, ...]]
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (p === 1) {
|
|
32
|
+
return product.map((x) => x[0]); // Avoid [[a], [b], [c], ...]]
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return product;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { multiplyMatrices as default };
|
|
39
|
+
//# sourceMappingURL=multiply-matrices.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiply-matrices.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/multiply-matrices.js"],"sourcesContent":["// from https://www.w3.org/TR/css-color-4/multiply-matrices.js\nexport default function multiplyMatrices(A, B) {\n let m = A.length;\n\n if (!Array.isArray(A[0])) {\n // A is vector, convert to [[a, b, c, ...]]\n A = [A];\n }\n\n if (!Array.isArray(B[0])) {\n // B is vector, convert to [[a], [b], [c], ...]]\n B = B.map((x) => [x]);\n }\n\n let p = B[0].length;\n let B_cols = B[0].map((_, i) => B.map((x) => x[i])); // transpose B\n let product = A.map((row) =>\n B_cols.map((col) => {\n if (!Array.isArray(row)) {\n return col.reduce((a, c) => a + c * row, 0);\n }\n\n return row.reduce((a, c, i) => a + c * (col[i] || 0), 0);\n })\n );\n\n if (m === 1) {\n product = product[0]; // Avoid [[a, b, c, ...]]\n }\n\n if (p === 1) {\n return product.map((x) => x[0]); // Avoid [[a], [b], [c], ...]]\n }\n\n return product;\n}\n"],"names":[],"mappings":"AAAA;AACe,SAAS,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE;AAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM;;AAEpB,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;AAC9B;AACA,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AACf,IAAI;;AAEJ,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;AAC9B;AACA,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC7B,IAAI;;AAEJ,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;AACvB,IAAI,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxD,IAAI,IAAI,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG;AAC5B,QAAQ,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK;AAC5B,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;AACrC,gBAAgB,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;AAC3D,YAAY;;AAEZ,YAAY,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;AACpE,QAAQ,CAAC;AACT,KAAK;;AAEL,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE;AACjB,QAAQ,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7B,IAAI;;AAEJ,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE;AACjB,QAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,IAAI;;AAEJ,IAAI,OAAO,OAAO;AAClB;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import chroma from '../chroma.mjs';
|
|
2
|
+
import '../io/hsl/index.mjs';
|
|
3
|
+
import scale from '../generator/scale.mjs';
|
|
4
|
+
|
|
5
|
+
// some pre-defined color scales:
|
|
6
|
+
|
|
7
|
+
var scales = {
|
|
8
|
+
cool() {
|
|
9
|
+
return scale([chroma.hsl(180, 1, 0.9), chroma.hsl(250, 0.7, 0.4)]);
|
|
10
|
+
},
|
|
11
|
+
hot() {
|
|
12
|
+
return scale(['#000', '#f00', '#ff0', '#fff']).mode(
|
|
13
|
+
'rgb'
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { scales as default };
|
|
19
|
+
//# sourceMappingURL=scales.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scales.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/scales.js"],"sourcesContent":["// some pre-defined color scales:\nimport chroma from '../chroma.js';\nimport '../io/hsl/index.js';\nimport scale from '../generator/scale.js';\n\nexport default {\n cool() {\n return scale([chroma.hsl(180, 1, 0.9), chroma.hsl(250, 0.7, 0.4)]);\n },\n hot() {\n return scale(['#000', '#f00', '#ff0', '#fff'], [0, 0.25, 0.75, 1]).mode(\n 'rgb'\n );\n }\n};\n"],"names":[],"mappings":";;;;AAAA;;AAKA,aAAe;AACf,IAAI,IAAI,GAAG;AACX,QAAQ,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAC1E,IAAI,CAAC;AACL,IAAI,GAAG,GAAG;AACV,QAAQ,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAqB,CAAC,CAAC,IAAI;AAC/E,YAAY;AACZ,SAAS;AACT,IAAI;AACJ,CAAC;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// ported from jQuery's $.type
|
|
2
|
+
const classToType = {};
|
|
3
|
+
for (let name of [
|
|
4
|
+
'Boolean',
|
|
5
|
+
'Number',
|
|
6
|
+
'String',
|
|
7
|
+
'Function',
|
|
8
|
+
'Array',
|
|
9
|
+
'Date',
|
|
10
|
+
'RegExp',
|
|
11
|
+
'Undefined',
|
|
12
|
+
'Null'
|
|
13
|
+
]) {
|
|
14
|
+
classToType[`[object ${name}]`] = name.toLowerCase();
|
|
15
|
+
}
|
|
16
|
+
function type (obj) {
|
|
17
|
+
return classToType[Object.prototype.toString.call(obj)] || 'object';
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export { type as default };
|
|
21
|
+
//# sourceMappingURL=type.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/type.js"],"sourcesContent":["// ported from jQuery's $.type\nconst classToType = {};\nfor (let name of [\n 'Boolean',\n 'Number',\n 'String',\n 'Function',\n 'Array',\n 'Date',\n 'RegExp',\n 'Undefined',\n 'Null'\n]) {\n classToType[`[object ${name}]`] = name.toLowerCase();\n}\nexport default function (obj) {\n return classToType[Object.prototype.toString.call(obj)] || 'object';\n}\n"],"names":[],"mappings":"AAAA;AACA,MAAM,WAAW,GAAG,EAAE;AACtB,KAAK,IAAI,IAAI,IAAI;AACjB,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,OAAO;AACX,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,WAAW;AACf,IAAI;AACJ,CAAC,EAAE;AACH,IAAI,WAAW,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE;AACxD;AACe,aAAQ,EAAE,GAAG,EAAE;AAC9B,IAAI,OAAO,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,QAAQ;AACvE;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type from './type.mjs';
|
|
2
|
+
|
|
3
|
+
var unpack = (args, keyOrder = null) => {
|
|
4
|
+
// if called with more than 3 arguments, we return the arguments
|
|
5
|
+
if (args.length >= 3) return Array.prototype.slice.call(args);
|
|
6
|
+
// with less than 3 args we check if first arg is object
|
|
7
|
+
// and use the keyOrder string to extract and sort properties
|
|
8
|
+
if (type(args[0]) == 'object' && keyOrder) {
|
|
9
|
+
return keyOrder
|
|
10
|
+
.split('')
|
|
11
|
+
.filter((k) => args[0][k] !== undefined)
|
|
12
|
+
.map((k) => args[0][k]);
|
|
13
|
+
}
|
|
14
|
+
// otherwise we just return the first argument
|
|
15
|
+
// (which we suppose is an array of args)
|
|
16
|
+
return args[0].slice(0);
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { unpack as default };
|
|
20
|
+
//# sourceMappingURL=unpack.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unpack.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/unpack.js"],"sourcesContent":["import type from './type.js';\n\nexport default (args, keyOrder = null) => {\n // if called with more than 3 arguments, we return the arguments\n if (args.length >= 3) return Array.prototype.slice.call(args);\n // with less than 3 args we check if first arg is object\n // and use the keyOrder string to extract and sort properties\n if (type(args[0]) == 'object' && keyOrder) {\n return keyOrder\n .split('')\n .filter((k) => args[0][k] !== undefined)\n .map((k) => args[0][k]);\n }\n // otherwise we just return the first argument\n // (which we suppose is an array of args)\n return args[0].slice(0);\n};\n"],"names":[],"mappings":";;AAEA,aAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,KAAK;AAC1C;AACA,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACjE;AACA;AACA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,IAAI,QAAQ,EAAE;AAC/C,QAAQ,OAAO;AACf,aAAa,KAAK,CAAC,EAAE;AACrB,aAAa,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS;AACnD,aAAa,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnC,IAAI;AACJ;AACA;AACA,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3B,CAAC;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Color from '../Color.mjs';
|
|
2
|
+
|
|
3
|
+
var valid = (...args) => {
|
|
4
|
+
try {
|
|
5
|
+
new Color(...args);
|
|
6
|
+
return true;
|
|
7
|
+
// eslint-disable-next-line
|
|
8
|
+
} catch (e) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { valid as default };
|
|
14
|
+
//# sourceMappingURL=valid.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"valid.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/utils/valid.js"],"sourcesContent":["import Color from '../Color.js';\n\nexport default (...args) => {\n try {\n new Color(...args);\n return true;\n // eslint-disable-next-line\n } catch (e) {\n return false;\n }\n};\n"],"names":[],"mappings":";;AAEA,YAAe,CAAC,GAAG,IAAI,KAAK;AAC5B,IAAI,IAAI;AACR,QAAQ,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC;AAC1B,QAAQ,OAAO,IAAI;AACnB;AACA,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE;AAChB,QAAQ,OAAO,KAAK;AACpB,IAAI;AACJ,CAAC;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../../../../../node_modules/chroma-js/src/version.js"],"sourcesContent":["// this gets updated automatically\nexport const version = '3.1.2';\n"],"names":[],"mappings":"AAAA;AACY,MAAC,OAAO,GAAG;;;;","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import merge from '../../../../../_virtual/
|
|
1
|
+
import merge from '../../../../../_virtual/index3.mjs';
|
|
2
2
|
import 'react';
|
|
3
3
|
import createTheme from '../../../../../node_modules/@mui/material/styles/createTheme.mjs';
|
|
4
4
|
import selectClasses from '../../../../../node_modules/@mui/material/Select/selectClasses.mjs';
|
|
@@ -42,10 +42,14 @@ const PasswordlessAuthenticate = ({ secondaryType })=>{
|
|
|
42
42
|
useMountEffect(()=>{
|
|
43
43
|
switch(secondaryType){
|
|
44
44
|
case 'eml':
|
|
45
|
-
sendLink()
|
|
45
|
+
sendLink().catch(()=>{
|
|
46
|
+
// Swallow error to avoid unhandled promise errors, sendLink() will already show error toast
|
|
47
|
+
});
|
|
46
48
|
return;
|
|
47
49
|
case 'otp':
|
|
48
|
-
sendCode()
|
|
50
|
+
sendCode().catch(()=>{
|
|
51
|
+
// Swallow error to avoid unhandled promise errors, sendLink() will already show error toast
|
|
52
|
+
});
|
|
49
53
|
return;
|
|
50
54
|
default:
|
|
51
55
|
stytchClient.passwords.resetByEmailStart(convertPasswordResetOptions(email, passwordOptions)).then((data)=>{
|
package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordlessAuthenticate.mjs","sources":["../../../../../../../../../../web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { StytchAPIError, StytchEventType } from '@stytch/core/public';\nimport { EmailConfirmation } from './EmailConfirmation';\nimport { OTPAuthenticate } from './OTPAuthenticate';\nimport Divider from '../../../components/molecules/Divider';\nimport { convertPasswordResetOptions } from '../../../../utils';\nimport {\n AppScreens,\n useConfig,\n useErrorCallback,\n useEventCallback,\n useGlobalReducer,\n useStytch,\n} from '../../GlobalContextProvider';\nimport { useMountEffect } from '../../../hooks/useMountEffect';\nimport Button from '../../../components/atoms/Button';\nimport ErrorText from '../../../components/molecules/ErrorText';\nimport { getTranslatedError } from '../../../../utils/getTranslatedError';\nimport { useLingui } from '@lingui/react/macro';\nimport Column from '../../../components/atoms/Column';\nimport { usePasswordlessAuthenticate } from './usePasswordlessAuthenticate';\n\ntype PasswordlessAuthenticateProps = {\n secondaryType: 'eml' | 'otp' | undefined;\n};\n\nexport const PasswordlessAuthenticate = ({ secondaryType }: PasswordlessAuthenticateProps) => {\n const { t } = useLingui();\n const stytchClient = useStytch();\n const config = useConfig();\n const [state, dispatch] = useGlobalReducer();\n const onEvent = useEventCallback();\n const onError = useErrorCallback();\n\n const [errorMessage, setErrorMessage] = useState('');\n\n const { sendLink, sendCode } = usePasswordlessAuthenticate();\n const passwordOptions = config.passwordOptions;\n\n const email = state.formState.passwordState.email;\n\n const resetPassword = () => {\n stytchClient.passwords\n .resetByEmailStart(convertPasswordResetOptions(email, passwordOptions))\n .then((data) => {\n onEvent({ type: StytchEventType.PasswordResetByEmailStart, data });\n dispatch({ type: 'transition', screen: AppScreens.PasswordSetNew });\n })\n .catch((e: StytchAPIError) => {\n onError(e);\n setErrorMessage(getTranslatedError(e, t));\n });\n };\n\n useMountEffect(() => {\n switch (secondaryType) {\n case 'eml':\n sendLink();\n return;\n\n case 'otp':\n sendCode();\n return;\n\n default:\n stytchClient.passwords\n .resetByEmailStart(convertPasswordResetOptions(email, passwordOptions))\n .then((data) => {\n onEvent({ type: StytchEventType.PasswordResetByEmailStart, data });\n dispatch({ type: 'transition', screen: AppScreens.PasswordSetNew });\n })\n .catch((e: StytchAPIError) => {\n onError(e);\n });\n return;\n }\n });\n\n if (!secondaryType) {\n return null;\n }\n\n return (\n <>\n {secondaryType === 'eml' ? <EmailConfirmation showGoBack={false} /> : <OTPAuthenticate hideBackButton />}\n\n <Divider />\n\n <Column gap={2}>\n <Button onClick={resetPassword} variant=\"outline\">\n {t({ id: 'button.createPasswordInstead', message: 'Create a password instead' })}\n </Button>\n {errorMessage && <ErrorText>{errorMessage}</ErrorText>}\n </Column>\n </>\n );\n};\n"],"names":["PasswordlessAuthenticate","secondaryType","useLingui","stytchClient","useStytch","config","useConfig","state","dispatch","useGlobalReducer","onEvent","useEventCallback","onError","useErrorCallback","errorMessage","setErrorMessage","useState","sendLink","sendCode","usePasswordlessAuthenticate","passwordOptions","email","formState","passwordState","resetPassword","passwords","resetByEmailStart","convertPasswordResetOptions","then","data","type","StytchEventType","PasswordResetByEmailStart","screen","AppScreens","PasswordSetNew","catch","e","getTranslatedError","useMountEffect","React","EmailConfirmation","showGoBack","OTPAuthenticate","hideBackButton","Divider","Column","gap","Button","onClick","variant","ErrorText"],"mappings":";;;;;;;;;;;;;;;AA0BO,MAAMA,wBAAAA,GAA2B,CAAC,EAAEC,aAAa,EAAiC,GAAA;AACvF,IAAA,MAAM,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,GAAA,EAAA,GAAQC,SAAAA,EAAAA;AACd,IAAA,MAAMC,YAAAA,GAAeC,SAAAA,EAAAA;AACrB,IAAA,MAAMC,MAAAA,GAASC,SAAAA,EAAAA;IACf,MAAM,CAACC,KAAAA,EAAOC,QAAAA,CAAS,GAAGC,gBAAAA,EAAAA;AAC1B,IAAA,MAAMC,OAAAA,GAAUC,gBAAAA,EAAAA;AAChB,IAAA,MAAMC,OAAAA,GAAUC,gBAAAA,EAAAA;AAEhB,IAAA,MAAM,CAACC,YAAAA,EAAcC,eAAAA,CAAgB,GAAGC,QAAAA,CAAS,EAAA,CAAA;AAEjD,IAAA,MAAM,EAAEC,QAAQ,EAAEC,QAAQ,EAAE,GAAGC,2BAAAA,EAAAA;IAC/B,MAAMC,eAAAA,GAAkBf,OAAOe,eAAe;AAE9C,IAAA,MAAMC,QAAQd,KAAAA,CAAMe,SAAS,CAACC,aAAa,CAACF,KAAK;AAEjD,IAAA,MAAMG,aAAAA,GAAgB,IAAA;QACpBrB,YAAAA,CAAasB,SAAS,CACnBC,iBAAiB,CAACC,4BAA4BN,KAAAA,EAAOD,eAAAA,CAAAA,CAAAA,CACrDQ,IAAI,CAAC,CAACC,IAAAA,GAAAA;YACLnB,OAAAA,CAAQ;AAAEoB,gBAAAA,IAAAA,EAAMC,gBAAgBC,yBAAyB;AAAEH,gBAAAA;AAAK,aAAA,CAAA;YAChErB,QAAAA,CAAS;gBAAEsB,IAAAA,EAAM,YAAA;AAAcG,gBAAAA,MAAAA,EAAQC,WAAWC;AAAe,aAAA,CAAA;QACnE,CAAA,CAAA,CACCC,KAAK,CAAC,CAACC,CAAAA,GAAAA;YACNzB,OAAAA,CAAQyB,CAAAA,CAAAA;AACRtB,YAAAA,eAAAA,CAAgBuB,kBAAAA,CAAmBD,CAAAA,EAAAA,GAAAA,CAAAA,CAAAA;AACrC,QAAA,CAAA,CAAA;AACJ,IAAA,CAAA;IAEAE,cAAAA,CAAe,IAAA;QACb,OAAQtC,aAAAA;YACN,KAAK,KAAA;AACHgB,gBAAAA,QAAAA,EAAAA;AACA,gBAAA;YAEF,KAAK,KAAA;
|
|
1
|
+
{"version":3,"file":"PasswordlessAuthenticate.mjs","sources":["../../../../../../../../../../web/src/ui/b2c/screens/Secondary/PasswordlessAuthenticate.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { StytchAPIError, StytchEventType } from '@stytch/core/public';\nimport { EmailConfirmation } from './EmailConfirmation';\nimport { OTPAuthenticate } from './OTPAuthenticate';\nimport Divider from '../../../components/molecules/Divider';\nimport { convertPasswordResetOptions } from '../../../../utils';\nimport {\n AppScreens,\n useConfig,\n useErrorCallback,\n useEventCallback,\n useGlobalReducer,\n useStytch,\n} from '../../GlobalContextProvider';\nimport { useMountEffect } from '../../../hooks/useMountEffect';\nimport Button from '../../../components/atoms/Button';\nimport ErrorText from '../../../components/molecules/ErrorText';\nimport { getTranslatedError } from '../../../../utils/getTranslatedError';\nimport { useLingui } from '@lingui/react/macro';\nimport Column from '../../../components/atoms/Column';\nimport { usePasswordlessAuthenticate } from './usePasswordlessAuthenticate';\n\ntype PasswordlessAuthenticateProps = {\n secondaryType: 'eml' | 'otp' | undefined;\n};\n\nexport const PasswordlessAuthenticate = ({ secondaryType }: PasswordlessAuthenticateProps) => {\n const { t } = useLingui();\n const stytchClient = useStytch();\n const config = useConfig();\n const [state, dispatch] = useGlobalReducer();\n const onEvent = useEventCallback();\n const onError = useErrorCallback();\n\n const [errorMessage, setErrorMessage] = useState('');\n\n const { sendLink, sendCode } = usePasswordlessAuthenticate();\n const passwordOptions = config.passwordOptions;\n\n const email = state.formState.passwordState.email;\n\n const resetPassword = () => {\n stytchClient.passwords\n .resetByEmailStart(convertPasswordResetOptions(email, passwordOptions))\n .then((data) => {\n onEvent({ type: StytchEventType.PasswordResetByEmailStart, data });\n dispatch({ type: 'transition', screen: AppScreens.PasswordSetNew });\n })\n .catch((e: StytchAPIError) => {\n onError(e);\n setErrorMessage(getTranslatedError(e, t));\n });\n };\n\n useMountEffect(() => {\n switch (secondaryType) {\n case 'eml':\n sendLink().catch(() => {\n // Swallow error to avoid unhandled promise errors, sendLink() will already show error toast\n });\n return;\n\n case 'otp':\n sendCode().catch(() => {\n // Swallow error to avoid unhandled promise errors, sendLink() will already show error toast\n });\n return;\n\n default:\n stytchClient.passwords\n .resetByEmailStart(convertPasswordResetOptions(email, passwordOptions))\n .then((data) => {\n onEvent({ type: StytchEventType.PasswordResetByEmailStart, data });\n dispatch({ type: 'transition', screen: AppScreens.PasswordSetNew });\n })\n .catch((e: StytchAPIError) => {\n onError(e);\n });\n return;\n }\n });\n\n if (!secondaryType) {\n return null;\n }\n\n return (\n <>\n {secondaryType === 'eml' ? <EmailConfirmation showGoBack={false} /> : <OTPAuthenticate hideBackButton />}\n\n <Divider />\n\n <Column gap={2}>\n <Button onClick={resetPassword} variant=\"outline\">\n {t({ id: 'button.createPasswordInstead', message: 'Create a password instead' })}\n </Button>\n {errorMessage && <ErrorText>{errorMessage}</ErrorText>}\n </Column>\n </>\n );\n};\n"],"names":["PasswordlessAuthenticate","secondaryType","useLingui","stytchClient","useStytch","config","useConfig","state","dispatch","useGlobalReducer","onEvent","useEventCallback","onError","useErrorCallback","errorMessage","setErrorMessage","useState","sendLink","sendCode","usePasswordlessAuthenticate","passwordOptions","email","formState","passwordState","resetPassword","passwords","resetByEmailStart","convertPasswordResetOptions","then","data","type","StytchEventType","PasswordResetByEmailStart","screen","AppScreens","PasswordSetNew","catch","e","getTranslatedError","useMountEffect","React","EmailConfirmation","showGoBack","OTPAuthenticate","hideBackButton","Divider","Column","gap","Button","onClick","variant","ErrorText"],"mappings":"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"}
|
package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.mjs
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
import { useLingui } from '../../../../../../../node_modules/@lingui/react/dist/index.mjs';
|
|
1
2
|
import { useState } from 'react';
|
|
2
3
|
import { useStytch, useConfig, useGlobalReducer, useEventCallback, useErrorCallback } from '../../GlobalContextProvider.mjs';
|
|
3
4
|
import { convertMagicLinkOptions } from '../../../../utils/index.mjs';
|
|
5
|
+
import { errorToast } from '../../../components/atoms/Toast.mjs';
|
|
6
|
+
import { getTranslatedError } from '../../../../utils/getTranslatedError.mjs';
|
|
4
7
|
import { DEFAULT_OTP_EXPIRATION_MINUTES } from '../../../../../../core/src/constants.mjs';
|
|
5
8
|
import { StytchEventType, OTPMethods } from '../../../../../../core/src/public/ui.mjs';
|
|
6
9
|
|
|
7
10
|
function usePasswordlessAuthenticate() {
|
|
11
|
+
const { i18n: $__i18n, _: $__ } = useLingui();
|
|
8
12
|
const stytchClient = useStytch();
|
|
9
13
|
const { emailMagicLinksOptions, otpOptions } = useConfig();
|
|
10
14
|
const [state, dispatch] = useGlobalReducer();
|
|
@@ -29,6 +33,9 @@ function usePasswordlessAuthenticate() {
|
|
|
29
33
|
});
|
|
30
34
|
} catch (e) {
|
|
31
35
|
onError(e);
|
|
36
|
+
errorToast({
|
|
37
|
+
message: getTranslatedError(e, $__)
|
|
38
|
+
});
|
|
32
39
|
throw e;
|
|
33
40
|
} finally{
|
|
34
41
|
setIsSubmitting(false);
|
|
@@ -55,6 +62,9 @@ function usePasswordlessAuthenticate() {
|
|
|
55
62
|
});
|
|
56
63
|
} catch (e) {
|
|
57
64
|
onError(e);
|
|
65
|
+
errorToast({
|
|
66
|
+
message: getTranslatedError(e, $__)
|
|
67
|
+
});
|
|
58
68
|
throw e;
|
|
59
69
|
} finally{
|
|
60
70
|
setIsSubmitting(false);
|
package/dist/esm-dev/packages/web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePasswordlessAuthenticate.mjs","sources":["../../../../../../../../../../web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.ts"],"sourcesContent":["import { useState } from 'react';\nimport { DEFAULT_OTP_EXPIRATION_MINUTES } from '@stytch/core';\nimport { OTPMethods, StytchEventType, StytchSDKAPIError } from '@stytch/core/public';\nimport {\n useConfig,\n useErrorCallback,\n useEventCallback,\n useGlobalReducer,\n useStytch,\n} from '../../GlobalContextProvider';\nimport { convertMagicLinkOptions } from '../../../../utils';\n\nexport function usePasswordlessAuthenticate() {\n const stytchClient = useStytch();\n const { emailMagicLinksOptions, otpOptions } = useConfig();\n const [state, dispatch] = useGlobalReducer();\n const onEvent = useEventCallback();\n const onError = useErrorCallback();\n\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const email = state.formState.passwordState.email;\n\n const sendLink = async () => {\n setIsSubmitting(true);\n\n try {\n const data = await stytchClient.magicLinks.email.loginOrCreate(\n email,\n convertMagicLinkOptions(emailMagicLinksOptions),\n );\n onEvent({ type: StytchEventType.MagicLinkLoginOrCreateEvent, data: { ...data, email } });\n dispatch({ type: 'set_magic_link_email', email: email });\n } catch (e) {\n onError(e as StytchSDKAPIError);\n throw e;\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const sendCode = async () => {\n setIsSubmitting(true);\n\n try {\n const data = await stytchClient.otps.email.loginOrCreate(email, {\n expiration_minutes: otpOptions?.expirationMinutes ?? DEFAULT_OTP_EXPIRATION_MINUTES,\n locale: otpOptions?.locale,\n });\n onEvent({ type: StytchEventType.OTPsLoginOrCreateEvent, data });\n dispatch({\n type: 'update_otp_state',\n otpState: {\n type: OTPMethods.Email,\n methodId: data.method_id,\n otpDestination: email,\n },\n });\n } catch (e) {\n onError(e as StytchSDKAPIError);\n throw e;\n } finally {\n setIsSubmitting(false);\n }\n };\n\n return {\n sendLink,\n sendCode,\n isSubmitting,\n };\n}\n"],"names":["usePasswordlessAuthenticate","stytchClient","useStytch","emailMagicLinksOptions","otpOptions","useConfig","state","dispatch","useGlobalReducer","onEvent","useEventCallback","onError","useErrorCallback","isSubmitting","setIsSubmitting","useState","email","formState","passwordState","sendLink","data","magicLinks","loginOrCreate","convertMagicLinkOptions","type","StytchEventType","MagicLinkLoginOrCreateEvent","e","sendCode","otps","expiration_minutes","expirationMinutes","DEFAULT_OTP_EXPIRATION_MINUTES","locale","OTPsLoginOrCreateEvent","otpState","OTPMethods","Email","methodId","method_id","otpDestination"],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePasswordlessAuthenticate.mjs","sources":["../../../../../../../../../../web/src/ui/b2c/screens/Secondary/usePasswordlessAuthenticate.ts"],"sourcesContent":["import { useLingui } from '@lingui/react/macro';\nimport { useState } from 'react';\nimport { DEFAULT_OTP_EXPIRATION_MINUTES } from '@stytch/core';\nimport { OTPMethods, StytchEventType, StytchSDKAPIError } from '@stytch/core/public';\nimport {\n useConfig,\n useErrorCallback,\n useEventCallback,\n useGlobalReducer,\n useStytch,\n} from '../../GlobalContextProvider';\nimport { convertMagicLinkOptions } from '../../../../utils';\nimport { errorToast } from '../../../components/atoms/Toast';\nimport { getTranslatedError } from '../../../../utils/getTranslatedError';\n\nexport function usePasswordlessAuthenticate() {\n const { t } = useLingui();\n\n const stytchClient = useStytch();\n const { emailMagicLinksOptions, otpOptions } = useConfig();\n const [state, dispatch] = useGlobalReducer();\n const onEvent = useEventCallback();\n const onError = useErrorCallback();\n\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const email = state.formState.passwordState.email;\n\n const sendLink = async () => {\n setIsSubmitting(true);\n\n try {\n const data = await stytchClient.magicLinks.email.loginOrCreate(\n email,\n convertMagicLinkOptions(emailMagicLinksOptions),\n );\n onEvent({ type: StytchEventType.MagicLinkLoginOrCreateEvent, data: { ...data, email } });\n dispatch({ type: 'set_magic_link_email', email: email });\n } catch (e) {\n onError(e as StytchSDKAPIError);\n errorToast({ message: getTranslatedError(e as StytchSDKAPIError, t) });\n throw e;\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const sendCode = async () => {\n setIsSubmitting(true);\n\n try {\n const data = await stytchClient.otps.email.loginOrCreate(email, {\n expiration_minutes: otpOptions?.expirationMinutes ?? DEFAULT_OTP_EXPIRATION_MINUTES,\n locale: otpOptions?.locale,\n });\n onEvent({ type: StytchEventType.OTPsLoginOrCreateEvent, data });\n dispatch({\n type: 'update_otp_state',\n otpState: {\n type: OTPMethods.Email,\n methodId: data.method_id,\n otpDestination: email,\n },\n });\n } catch (e) {\n onError(e as StytchSDKAPIError);\n errorToast({ message: getTranslatedError(e as StytchSDKAPIError, t) });\n throw e;\n } finally {\n setIsSubmitting(false);\n }\n };\n\n return {\n sendLink,\n sendCode,\n isSubmitting,\n };\n}\n"],"names":["usePasswordlessAuthenticate","useLingui","stytchClient","useStytch","emailMagicLinksOptions","otpOptions","useConfig","state","dispatch","useGlobalReducer","onEvent","useEventCallback","onError","useErrorCallback","isSubmitting","setIsSubmitting","useState","email","formState","passwordState","sendLink","data","magicLinks","loginOrCreate","convertMagicLinkOptions","type","StytchEventType","MagicLinkLoginOrCreateEvent","e","errorToast","message","getTranslatedError","sendCode","otps","expiration_minutes","expirationMinutes","DEFAULT_OTP_EXPIRATION_MINUTES","locale","OTPsLoginOrCreateEvent","otpState","OTPMethods","Email","methodId","method_id","otpDestination"],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import '../../../../../node_modules/chroma-js/index.mjs';
|
|
2
|
+
import chroma from '../../../../../node_modules/chroma-js/src/chroma.mjs';
|
|
3
|
+
|
|
4
|
+
/* eslint-disable lingui/no-unlocalized-strings */ function rgba(color) {
|
|
5
|
+
if (color.alpha() === 1) return `rgb(${color.rgb().join(',')})`;
|
|
6
|
+
return `rgba(${color.rgba().join(',')})`;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Takes a theme and dynamically generate the styles that uses color-mix,
|
|
10
|
+
* as a fallback for browsers that do not support color-mix()
|
|
11
|
+
*/ function generateColorFallback(theme) {
|
|
12
|
+
// Don't use chroma.colorMix since chroma.js treats transparent as rgba(0, 0, 0, 0)
|
|
13
|
+
// which means our color is mixed with black rather than the original color
|
|
14
|
+
// with alpha 0, which is what browsers so instead
|
|
15
|
+
return {
|
|
16
|
+
// --tab-background: color-mix(in oklab, var(--accent) 80%, transparent);
|
|
17
|
+
'tab-background': rgba(chroma(theme.accent).alpha(0.8)),
|
|
18
|
+
// --primary-button-hover: color-mix(in oklab, var(--primary) 90%, transparent);
|
|
19
|
+
'primary-button-hover': rgba(chroma(theme.primary).alpha(0.9)),
|
|
20
|
+
// --secondary-button-hover: color-mix(in oklab, var(--secondary) 80%, transparent);
|
|
21
|
+
'secondary-button-hover': rgba(chroma(theme.secondary).alpha(0.8)),
|
|
22
|
+
// --destructive-button-hover: color-mix(in oklab, var(--destructive) 80%, transparent);
|
|
23
|
+
'destructive-button-hover': rgba(chroma(theme.destructive).alpha(0.8)),
|
|
24
|
+
// --divider-color: color-mix(in oklab, var(--border) 50%, transparent);
|
|
25
|
+
'divider-color': rgba(chroma(theme.border).alpha(0.5)),
|
|
26
|
+
// --focus-ring-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
27
|
+
'focus-ring-shadow': `0 0 0 3px ${rgba(chroma(theme.ring).alpha(0.5))}`
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
const colors = [
|
|
31
|
+
'background',
|
|
32
|
+
'foreground',
|
|
33
|
+
'primary',
|
|
34
|
+
'primary-foreground',
|
|
35
|
+
'secondary',
|
|
36
|
+
'secondary-foreground',
|
|
37
|
+
'muted',
|
|
38
|
+
'muted-foreground',
|
|
39
|
+
'accent',
|
|
40
|
+
'accent-foreground',
|
|
41
|
+
'border',
|
|
42
|
+
'input',
|
|
43
|
+
'ring',
|
|
44
|
+
'destructive',
|
|
45
|
+
'warning',
|
|
46
|
+
'success'
|
|
47
|
+
];
|
|
48
|
+
function addColorFallback(theme) {
|
|
49
|
+
const updatedTheme = {
|
|
50
|
+
...theme,
|
|
51
|
+
...generateColorFallback(theme)
|
|
52
|
+
};
|
|
53
|
+
// RGB fallbacks for all Theme colors that use oklch, if the customer's browsers
|
|
54
|
+
// don't support them
|
|
55
|
+
for (const property of colors){
|
|
56
|
+
if (!chroma.valid(theme[property])) continue;
|
|
57
|
+
updatedTheme[property] = rgba(chroma(theme[property]));
|
|
58
|
+
}
|
|
59
|
+
return updatedTheme;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export { addColorFallback, generateColorFallback };
|
|
63
|
+
//# sourceMappingURL=generateColorFallback.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateColorFallback.mjs","sources":["../../../../../../../../web/src/ui/compat/generateColorFallback.ts"],"sourcesContent":["import chroma from 'chroma-js';\n\nimport type { ColorMixFallback, Theme } from '../components/themes/ThemeConfig';\n\n/* eslint-disable lingui/no-unlocalized-strings */\n\nfunction rgba(color: chroma.Color) {\n if (color.alpha() === 1) return `rgb(${color.rgb().join(',')})`;\n return `rgba(${color.rgba().join(',')})`;\n}\n\n/**\n * Takes a theme and dynamically generate the styles that uses color-mix,\n * as a fallback for browsers that do not support color-mix()\n */\nexport function generateColorFallback(theme: Theme): ColorMixFallback {\n // Don't use chroma.colorMix since chroma.js treats transparent as rgba(0, 0, 0, 0)\n // which means our color is mixed with black rather than the original color\n // with alpha 0, which is what browsers so instead\n return {\n // --tab-background: color-mix(in oklab, var(--accent) 80%, transparent);\n 'tab-background': rgba(chroma(theme.accent).alpha(0.8)),\n // --primary-button-hover: color-mix(in oklab, var(--primary) 90%, transparent);\n 'primary-button-hover': rgba(chroma(theme.primary).alpha(0.9)),\n // --secondary-button-hover: color-mix(in oklab, var(--secondary) 80%, transparent);\n 'secondary-button-hover': rgba(chroma(theme.secondary).alpha(0.8)),\n // --destructive-button-hover: color-mix(in oklab, var(--destructive) 80%, transparent);\n 'destructive-button-hover': rgba(chroma(theme.destructive).alpha(0.8)),\n // --divider-color: color-mix(in oklab, var(--border) 50%, transparent);\n 'divider-color': rgba(chroma(theme.border).alpha(0.5)),\n // --focus-ring-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);\n 'focus-ring-shadow': `0 0 0 3px ${rgba(chroma(theme.ring).alpha(0.5))}`,\n };\n}\n\nconst colors = [\n 'background',\n 'foreground',\n 'primary',\n 'primary-foreground',\n 'secondary',\n 'secondary-foreground',\n 'muted',\n 'muted-foreground',\n 'accent',\n 'accent-foreground',\n 'border',\n 'input',\n 'ring',\n 'destructive',\n 'warning',\n 'success',\n] as const satisfies (keyof Theme)[];\n\nexport function addColorFallback(theme: Theme): Theme {\n const updatedTheme = { ...theme, ...generateColorFallback(theme) };\n\n // RGB fallbacks for all Theme colors that use oklch, if the customer's browsers\n // don't support them\n for (const property of colors) {\n if (!chroma.valid(theme[property])) continue;\n updatedTheme[property] = rgba(chroma(theme[property]!));\n }\n\n return updatedTheme;\n}\n"],"names":["rgba","color","alpha","rgb","join","generateColorFallback","theme","chroma","accent","primary","secondary","destructive","border","ring","colors","addColorFallback","updatedTheme","property","valid"],"mappings":";;;AAIA,mDAEA,SAASA,IAAAA,CAAKC,KAAmB,EAAA;AAC/B,IAAA,IAAIA,KAAAA,CAAMC,KAAK,EAAA,KAAO,CAAA,EAAG,OAAO,CAAC,IAAI,EAAED,KAAAA,CAAME,GAAG,EAAA,CAAGC,IAAI,CAAC,GAAA,CAAA,CAAK,CAAC,CAAC;IAC/D,OAAO,CAAC,KAAK,EAAEH,KAAAA,CAAMD,IAAI,GAAGI,IAAI,CAAC,GAAA,CAAA,CAAK,CAAC,CAAC;AAC1C;AAEA;;;IAIO,SAASC,qBAAAA,CAAsBC,KAAY,EAAA;;;;IAIhD,OAAO;;AAEL,QAAA,gBAAA,EAAkBN,KAAKO,MAAAA,CAAOD,KAAAA,CAAME,MAAM,CAAA,CAAEN,KAAK,CAAC,GAAA,CAAA,CAAA;;AAElD,QAAA,sBAAA,EAAwBF,KAAKO,MAAAA,CAAOD,KAAAA,CAAMG,OAAO,CAAA,CAAEP,KAAK,CAAC,GAAA,CAAA,CAAA;;AAEzD,QAAA,wBAAA,EAA0BF,KAAKO,MAAAA,CAAOD,KAAAA,CAAMI,SAAS,CAAA,CAAER,KAAK,CAAC,GAAA,CAAA,CAAA;;AAE7D,QAAA,0BAAA,EAA4BF,KAAKO,MAAAA,CAAOD,KAAAA,CAAMK,WAAW,CAAA,CAAET,KAAK,CAAC,GAAA,CAAA,CAAA;;AAEjE,QAAA,eAAA,EAAiBF,KAAKO,MAAAA,CAAOD,KAAAA,CAAMM,MAAM,CAAA,CAAEV,KAAK,CAAC,GAAA,CAAA,CAAA;;QAEjD,mBAAA,EAAqB,CAAC,UAAU,EAAEF,IAAAA,CAAKO,MAAAA,CAAOD,MAAMO,IAAI,CAAA,CAAEX,KAAK,CAAC,GAAA,CAAA,CAAA,CAAA;AAClE,KAAA;AACF;AAEA,MAAMY,MAAAA,GAAS;AACb,IAAA,YAAA;AACA,IAAA,YAAA;AACA,IAAA,SAAA;AACA,IAAA,oBAAA;AACA,IAAA,WAAA;AACA,IAAA,sBAAA;AACA,IAAA,OAAA;AACA,IAAA,kBAAA;AACA,IAAA,QAAA;AACA,IAAA,mBAAA;AACA,IAAA,QAAA;AACA,IAAA,OAAA;AACA,IAAA,MAAA;AACA,IAAA,aAAA;AACA,IAAA,SAAA;AACA,IAAA;AACD,CAAA;AAEM,SAASC,iBAAiBT,KAAY,EAAA;AAC3C,IAAA,MAAMU,YAAAA,GAAe;AAAE,QAAA,GAAGV,KAAK;AAAE,QAAA,GAAGD,sBAAsBC,KAAAA;AAAO,KAAA;;;IAIjE,KAAK,MAAMW,YAAYH,MAAAA,CAAQ;AAC7B,QAAA,IAAI,CAACP,MAAAA,CAAOW,KAAK,CAACZ,KAAK,CAACW,SAAS,CAAA,EAAG;AACpCD,QAAAA,YAAY,CAACC,QAAAA,CAAS,GAAGjB,KAAKO,MAAAA,CAAOD,KAAK,CAACW,QAAAA,CAAS,CAAA,CAAA;AACtD,IAAA;IAEA,OAAOD,YAAAA;AACT;;;;"}
|