@salutejs/plasma-new-hope 0.194.0-canary.1565.11870784206.0 → 0.194.0-canary.1568.11891833298.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. package/cjs/components/Switch/Switch.css +2 -2
  2. package/cjs/components/Switch/Switch.tokens.js +7 -1
  3. package/cjs/components/Switch/Switch.tokens.js.map +1 -1
  4. package/cjs/components/Switch/_toggleSize/base.js +1 -1
  5. package/cjs/components/Switch/_toggleSize/base.js.map +1 -1
  6. package/cjs/components/Switch/_toggleSize/base_1d0b3t4.css +1 -0
  7. package/cjs/components/Switch/_view/base.js +1 -1
  8. package/cjs/components/Switch/_view/base.js.map +1 -1
  9. package/cjs/components/Switch/_view/base_15atbyp.css +1 -0
  10. package/cjs/components/TextField/TextField.js +3 -27
  11. package/cjs/components/TextField/TextField.js.map +1 -1
  12. package/cjs/index.css +2 -2
  13. package/cjs/utils/constants.js +0 -4
  14. package/cjs/utils/constants.js.map +1 -1
  15. package/emotion/cjs/components/Card/Card.api.mdx +184 -0
  16. package/emotion/cjs/components/Switch/Switch.tokens.js +7 -1
  17. package/emotion/cjs/components/Switch/_toggleSize/base.js +1 -1
  18. package/emotion/cjs/components/Switch/_view/base.js +1 -1
  19. package/emotion/cjs/components/TextField/TextField.js +4 -27
  20. package/emotion/cjs/components/TextField/TextField.template-doc.mdx +0 -330
  21. package/emotion/cjs/components/TextField/hooks/index.js +1 -8
  22. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +8 -8
  23. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.js +5 -2
  24. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.outline.config.js +37 -0
  25. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  26. package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  27. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.config.js +8 -8
  28. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.js +5 -2
  29. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.outline.config.js +37 -0
  30. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  31. package/emotion/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  32. package/emotion/cjs/utils/constants.js +2 -4
  33. package/emotion/es/components/Card/Card.api.mdx +184 -0
  34. package/emotion/es/components/Switch/Switch.tokens.js +7 -1
  35. package/emotion/es/components/Switch/_toggleSize/base.js +1 -1
  36. package/emotion/es/components/Switch/_view/base.js +1 -1
  37. package/emotion/es/components/TextField/TextField.js +5 -28
  38. package/emotion/es/components/TextField/TextField.template-doc.mdx +0 -330
  39. package/emotion/es/components/TextField/hooks/index.js +1 -2
  40. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.config.js +8 -8
  41. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.js +4 -1
  42. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.outline.config.js +31 -0
  43. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  44. package/emotion/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  45. package/emotion/es/examples/plasma_web/components/Switch/Switch.config.js +8 -8
  46. package/emotion/es/examples/plasma_web/components/Switch/Switch.js +4 -1
  47. package/emotion/es/examples/plasma_web/components/Switch/Switch.outline.config.js +31 -0
  48. package/emotion/es/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  49. package/emotion/es/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  50. package/emotion/es/utils/constants.js +1 -3
  51. package/es/components/Switch/Switch.css +2 -2
  52. package/es/components/Switch/Switch.tokens.js +7 -1
  53. package/es/components/Switch/Switch.tokens.js.map +1 -1
  54. package/es/components/Switch/_toggleSize/base.js +1 -1
  55. package/es/components/Switch/_toggleSize/base.js.map +1 -1
  56. package/es/components/Switch/_toggleSize/base_1d0b3t4.css +1 -0
  57. package/es/components/Switch/_view/base.js +1 -1
  58. package/es/components/Switch/_view/base.js.map +1 -1
  59. package/es/components/Switch/_view/base_15atbyp.css +1 -0
  60. package/es/components/TextField/TextField.js +3 -27
  61. package/es/components/TextField/TextField.js.map +1 -1
  62. package/es/index.css +2 -2
  63. package/es/utils/constants.js +1 -3
  64. package/es/utils/constants.js.map +1 -1
  65. package/package.json +2 -2
  66. package/styled-components/cjs/components/Card/Card.api.mdx +184 -0
  67. package/styled-components/cjs/components/Switch/Switch.tokens.js +7 -1
  68. package/styled-components/cjs/components/Switch/_toggleSize/base.js +1 -1
  69. package/styled-components/cjs/components/Switch/_view/base.js +1 -1
  70. package/styled-components/cjs/components/TextField/TextField.js +3 -26
  71. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +0 -330
  72. package/styled-components/cjs/components/TextField/hooks/index.js +1 -8
  73. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
  74. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.js +5 -2
  75. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.outline.config.js +37 -0
  76. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  77. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  78. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.config.js +1 -1
  79. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.js +5 -2
  80. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.outline.config.js +37 -0
  81. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  82. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  83. package/styled-components/cjs/utils/constants.js +2 -4
  84. package/styled-components/es/components/Card/Card.api.mdx +184 -0
  85. package/styled-components/es/components/Switch/Switch.tokens.js +7 -1
  86. package/styled-components/es/components/Switch/_toggleSize/base.js +1 -1
  87. package/styled-components/es/components/Switch/_view/base.js +1 -1
  88. package/styled-components/es/components/TextField/TextField.js +4 -27
  89. package/styled-components/es/components/TextField/TextField.template-doc.mdx +0 -330
  90. package/styled-components/es/components/TextField/hooks/index.js +1 -2
  91. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
  92. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.js +4 -1
  93. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.outline.config.js +31 -0
  94. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  95. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  96. package/styled-components/es/examples/plasma_web/components/Switch/Switch.config.js +1 -1
  97. package/styled-components/es/examples/plasma_web/components/Switch/Switch.js +4 -1
  98. package/styled-components/es/examples/plasma_web/components/Switch/Switch.outline.config.js +31 -0
  99. package/styled-components/es/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  100. package/styled-components/es/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  101. package/styled-components/es/utils/constants.js +1 -3
  102. package/types/components/Autocomplete/Autocomplete.types.d.ts +2 -2
  103. package/types/components/Autocomplete/Autocomplete.types.d.ts.map +1 -1
  104. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +92 -1676
  105. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  106. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +92 -1676
  107. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  108. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +92 -1676
  109. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  110. package/types/components/Range/Range.styles.d.ts +92 -1676
  111. package/types/components/Range/Range.styles.d.ts.map +1 -1
  112. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +92 -1676
  113. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
  114. package/types/components/Slider/components/Double/Double.styles.d.ts +92 -1676
  115. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  116. package/types/components/Switch/Switch.tokens.d.ts +7 -1
  117. package/types/components/Switch/Switch.tokens.d.ts.map +1 -1
  118. package/types/components/Switch/_toggleSize/base.d.ts.map +1 -1
  119. package/types/components/Switch/_view/base.d.ts.map +1 -1
  120. package/types/components/TextField/TextField.d.ts.map +1 -1
  121. package/types/components/TextField/TextField.types.d.ts +1 -51
  122. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  123. package/types/components/TextField/hooks/index.d.ts +0 -1
  124. package/types/components/TextField/hooks/index.d.ts.map +1 -1
  125. package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.d.ts +2 -64
  126. package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  127. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +92 -2732
  128. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +1 -1
  129. package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts.map +1 -1
  130. package/types/examples/plasma_b2c/components/Switch/Switch.d.ts +20 -0
  131. package/types/examples/plasma_b2c/components/Switch/Switch.d.ts.map +1 -1
  132. package/types/examples/plasma_b2c/components/Switch/Switch.outline.config.d.ts +30 -0
  133. package/types/examples/plasma_b2c/components/Switch/Switch.outline.config.d.ts.map +1 -0
  134. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +92 -1676
  135. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  136. package/types/examples/plasma_web/components/Autocomplete/Autocomplete.d.ts +2 -64
  137. package/types/examples/plasma_web/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  138. package/types/examples/plasma_web/components/Mask/Mask.d.ts +92 -2732
  139. package/types/examples/plasma_web/components/Mask/Mask.d.ts.map +1 -1
  140. package/types/examples/plasma_web/components/Switch/Switch.config.d.ts.map +1 -1
  141. package/types/examples/plasma_web/components/Switch/Switch.d.ts +20 -0
  142. package/types/examples/plasma_web/components/Switch/Switch.d.ts.map +1 -1
  143. package/types/examples/plasma_web/components/Switch/Switch.outline.config.d.ts +30 -0
  144. package/types/examples/plasma_web/components/Switch/Switch.outline.config.d.ts.map +1 -0
  145. package/types/examples/plasma_web/components/TextField/TextField.d.ts +92 -1676
  146. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  147. package/types/utils/constants.d.ts +0 -2
  148. package/types/utils/constants.d.ts.map +1 -1
  149. package/cjs/components/Switch/_toggleSize/base_6i0904.css +0 -1
  150. package/cjs/components/Switch/_view/base_yxkf3s.css +0 -1
  151. package/cjs/components/TextField/hooks/useValidation.js +0 -273
  152. package/cjs/components/TextField/hooks/useValidation.js.map +0 -1
  153. package/emotion/cjs/components/TextField/hooks/useValidation.js +0 -276
  154. package/emotion/es/components/TextField/hooks/useValidation.js +0 -270
  155. package/es/components/Switch/_toggleSize/base_6i0904.css +0 -1
  156. package/es/components/Switch/_view/base_yxkf3s.css +0 -1
  157. package/es/components/TextField/hooks/useValidation.js +0 -269
  158. package/es/components/TextField/hooks/useValidation.js.map +0 -1
  159. package/styled-components/cjs/components/TextField/hooks/useValidation.js +0 -276
  160. package/styled-components/es/components/TextField/hooks/useValidation.js +0 -270
  161. package/types/components/TextField/hooks/useValidation.d.ts +0 -7
  162. package/types/components/TextField/hooks/useValidation.d.ts.map +0 -1
@@ -9,7 +9,7 @@ import { mergeConfig } from '../../../../engines';
9
9
  import { WithTheme, argTypesFromConfig } from '../../../_helpers';
10
10
 
11
11
  import { config } from './Switch.config';
12
- import { Switch } from './Switch';
12
+ import { Switch, SwitchOutline } from './Switch';
13
13
 
14
14
  type SwitchProps = ComponentProps<typeof Switch>;
15
15
 
@@ -72,3 +72,35 @@ export const Default: StoryObj<SwitchProps> = {
72
72
  },
73
73
  render: (args) => <StoryDefault {...args} />,
74
74
  };
75
+
76
+ const StoryOutline = (args: SwitchProps) => {
77
+ const value = 'yes';
78
+ const name = 'agree';
79
+ const [checked, setChecked] = useState(true);
80
+
81
+ return (
82
+ <StyledWrapper>
83
+ <SwitchOutline
84
+ value={value}
85
+ name={name}
86
+ checked={checked}
87
+ onChange={(event) => {
88
+ setChecked(event.target.checked);
89
+ onChange(event);
90
+ }}
91
+ onFocus={onFocus}
92
+ onBlur={onBlur}
93
+ {...args}
94
+ />
95
+ </StyledWrapper>
96
+ );
97
+ };
98
+
99
+ export const Outline: StoryObj<SwitchProps> = {
100
+ args: {
101
+ size: 'm',
102
+ toggleSize: 'l',
103
+ disabled: false,
104
+ },
105
+ render: (args) => <StoryOutline {...args} />,
106
+ };
@@ -291,255 +291,3 @@ export const Chips: StoryObj<StoryPropsChips> = {
291
291
  },
292
292
  render: (args) => <StoryChips {...args} />,
293
293
  };
294
-
295
- type StoryEmailValidationProps = StoryPropsDefault & {
296
- minLengthValue?: number;
297
- minLengthErrorMessage?: string;
298
- maxLengthValue?: number;
299
- maxLengthErrorMessage?: string;
300
- minHostLengthValue?: number;
301
- minHostLengthErrorMessage?: string;
302
- maxHostLengthValue?: number;
303
- maxHostLengthErrorMessage?: string;
304
- minDomainLengthValue?: number;
305
- minDomainLengthErrorMessage?: string;
306
- maxDomainLengthValue?: number;
307
- maxDomainLengthErrorMessage?: string;
308
- minZoneLengthValue?: number;
309
- minZoneLengthErrorMessage?: string;
310
- maxZoneLengthValue?: number;
311
- maxZoneLengthErrorMessage?: string;
312
- whitelistDomainsValue?: string;
313
- whitelistDomainsErrorMessage?: string;
314
- blacklistDomainsValue?: string;
315
- blacklistDomainsErrorMessage?: string;
316
- };
317
-
318
- const StoryEmailValidation = ({
319
- minLengthValue,
320
- minLengthErrorMessage,
321
- maxLengthValue,
322
- maxLengthErrorMessage,
323
- minHostLengthValue,
324
- minHostLengthErrorMessage,
325
- maxHostLengthValue,
326
- maxHostLengthErrorMessage,
327
- minDomainLengthValue,
328
- minDomainLengthErrorMessage,
329
- maxDomainLengthValue,
330
- maxDomainLengthErrorMessage,
331
- minZoneLengthValue,
332
- minZoneLengthErrorMessage,
333
- maxZoneLengthValue,
334
- maxZoneLengthErrorMessage,
335
- whitelistDomainsValue,
336
- whitelistDomainsErrorMessage,
337
- blacklistDomainsValue,
338
- blacklistDomainsErrorMessage,
339
- ...rest
340
- }: StoryEmailValidationProps) => {
341
- const [error, setError] = useState('');
342
-
343
- const validationOptions = {
344
- minLength: {
345
- value: minLengthValue || undefined,
346
- errorMessage: minLengthErrorMessage || 'Почта слишком короткая',
347
- },
348
- maxLength: {
349
- value: maxLengthValue || undefined,
350
- errorMessage: maxLengthErrorMessage || 'Почта слишком длинная',
351
- },
352
- minHostLength: {
353
- value: minHostLengthValue || undefined,
354
- errorMessage: minHostLengthErrorMessage || 'Хост слишком короткий',
355
- },
356
- maxHostLength: {
357
- value: maxHostLengthValue || undefined,
358
- errorMessage: maxHostLengthErrorMessage || 'Хост слишком длинный',
359
- },
360
- minDomainLength: {
361
- value: minDomainLengthValue || undefined,
362
- errorMessage: minDomainLengthErrorMessage || 'Домен слишком короткий',
363
- },
364
- maxDomainLength: {
365
- value: maxDomainLengthValue || undefined,
366
- errorMessage: maxDomainLengthErrorMessage || 'Домен слишком длинный',
367
- },
368
- minZoneLength: {
369
- value: minZoneLengthValue || undefined,
370
- errorMessage: minZoneLengthErrorMessage || 'Доменная зона слишком короткая',
371
- },
372
- maxZoneLength: {
373
- value: maxZoneLengthValue || undefined,
374
- errorMessage: maxZoneLengthErrorMessage || 'Доменная зона слишком длинная',
375
- },
376
- whitelistDomains: {
377
- value: whitelistDomainsValue?.split(',') || undefined,
378
- errorMessage: whitelistDomainsErrorMessage || 'Домен не разрешен',
379
- },
380
- blacklistDomains: {
381
- value: blacklistDomainsValue?.split(',') || undefined,
382
- errorMessage: blacklistDomainsErrorMessage || 'Домен запрещен',
383
- },
384
- };
385
-
386
- const handleOnChange = () => {
387
- setError('');
388
- };
389
-
390
- const handleOnValidate = ({ errorMessage }: { errorMessage?: string }) => {
391
- setError(errorMessage || '');
392
- };
393
-
394
- return (
395
- <TextField
396
- label="Валидация почты"
397
- validationType="email"
398
- options={validationOptions}
399
- size="l"
400
- view={error ? 'negative' : 'default'}
401
- leftHelper={error || 'Валидация почты'}
402
- onChange={handleOnChange}
403
- onValidate={handleOnValidate}
404
- {...rest}
405
- />
406
- );
407
- };
408
-
409
- export const EmailValidation: StoryObj<StoryEmailValidationProps> = {
410
- argTypes: {
411
- ...disableProps(['view', 'size', 'maxLength', 'required', 'requiredPlacement', 'optional']),
412
- },
413
- args: {
414
- labelPlacement: 'outer',
415
- placeholder: 'Заполните поле',
416
- minLengthValue: 5,
417
- minLengthErrorMessage: 'Почта слишком короткая',
418
- maxLengthValue: 25,
419
- maxLengthErrorMessage: 'Почта слишком длинная',
420
- minHostLengthValue: 1,
421
- minHostLengthErrorMessage: 'Хост слишком короткий',
422
- maxHostLengthValue: 12,
423
- maxHostLengthErrorMessage: 'Хост слишком длинный',
424
- minDomainLengthValue: 1,
425
- minDomainLengthErrorMessage: 'Домен слишком короткий',
426
- maxDomainLengthValue: 6,
427
- maxDomainLengthErrorMessage: 'Домен слишком длинный',
428
- minZoneLengthValue: 1,
429
- minZoneLengthErrorMessage: 'Доменная зона слишком короткая',
430
- maxZoneLengthValue: 5,
431
- maxZoneLengthErrorMessage: 'Доменная зона слишком длинная',
432
- whitelistDomainsValue: 'gmail.com,yandex.ru,mail.ru,mail.com',
433
- whitelistDomainsErrorMessage: 'Домен не разрешен',
434
- blacklistDomainsValue: 'heh.org,hah.ha',
435
- blacklistDomainsErrorMessage: 'Домен запрещен',
436
- },
437
- render: (args) => <StoryEmailValidation {...args} />,
438
- };
439
-
440
- type StoryPasswordValidationProps = StoryPropsDefault & {
441
- minLengthValue?: number;
442
- minLengthErrorMessage?: string;
443
- maxLengthValue?: number;
444
- maxLengthErrorMessage?: string;
445
- includeUppercase?: boolean;
446
- includeUppercaseErrorMessage?: string;
447
- includeLowercase?: boolean;
448
- includeLowercaseErrorMessage?: string;
449
- includeDigits?: boolean;
450
- includeDigitsErrorMessage?: string;
451
- includeSpecialSymbols?: boolean;
452
- includeSpecialSymbolsErrorMessage?: string;
453
- };
454
-
455
- const StoryPasswordValidation = ({
456
- minLengthValue,
457
- minLengthErrorMessage,
458
- maxLengthValue,
459
- maxLengthErrorMessage,
460
- includeUppercase,
461
- includeUppercaseErrorMessage,
462
- includeLowercase,
463
- includeLowercaseErrorMessage,
464
- includeDigits,
465
- includeDigitsErrorMessage,
466
- includeSpecialSymbols,
467
- includeSpecialSymbolsErrorMessage,
468
- ...rest
469
- }: StoryPasswordValidationProps) => {
470
- const [error, setError] = useState('');
471
-
472
- const validationOptions = {
473
- minLength: {
474
- value: minLengthValue || undefined,
475
- errorMessage: minLengthErrorMessage || 'Пароль слишком короткий',
476
- },
477
- maxLength: {
478
- value: maxLengthValue || undefined,
479
- errorMessage: maxLengthErrorMessage || 'Пароль слишком длинный',
480
- },
481
- includeUppercase: {
482
- value: includeUppercase,
483
- errorMessage: includeUppercaseErrorMessage || 'Пароль должен содержать хотя бы одну заглавную букву',
484
- },
485
- includeLowercase: {
486
- value: includeLowercase,
487
- errorMessage: includeLowercaseErrorMessage || 'Пароль должен содержать хотя бы одну строчную букву',
488
- },
489
- includeDigits: {
490
- value: includeDigits,
491
- errorMessage: includeDigitsErrorMessage || 'Пароль должен содержать хотя бы одну цифру',
492
- },
493
- includeSpecialSymbols: {
494
- value: includeSpecialSymbols,
495
- errorMessage:
496
- includeSpecialSymbolsErrorMessage || 'Пароль должен содержать хотя бы один специальный символ',
497
- },
498
- };
499
-
500
- const handleOnChange = () => {
501
- setError('');
502
- };
503
-
504
- const handleOnValidate = ({ errorMessage }: { errorMessage?: string }) => {
505
- setError(errorMessage || '');
506
- };
507
-
508
- return (
509
- <TextField
510
- label="Валидация пароля"
511
- validationType="password"
512
- options={validationOptions}
513
- size="l"
514
- view={error ? 'negative' : 'default'}
515
- leftHelper={error || 'Валидация пароля'}
516
- onChange={handleOnChange}
517
- onValidate={handleOnValidate}
518
- {...rest}
519
- />
520
- );
521
- };
522
-
523
- export const PasswordValidation: StoryObj<StoryPasswordValidationProps> = {
524
- argTypes: {
525
- ...disableProps(['view', 'size', 'maxLength', 'required', 'requiredPlacement', 'optional']),
526
- },
527
- args: {
528
- labelPlacement: 'outer',
529
- placeholder: 'Заполните поле',
530
- passwordHidden: false,
531
- minLengthValue: 5,
532
- minLengthErrorMessage: 'Пароль слишком короткий',
533
- maxLengthValue: 25,
534
- maxLengthErrorMessage: 'Пароль слишком длинный',
535
- includeUppercase: true,
536
- includeUppercaseErrorMessage: 'Пароль должен содержать хотя бы одну заглавную букву',
537
- includeLowercase: true,
538
- includeLowercaseErrorMessage: 'Пароль должен содержать хотя бы одну строчную букву',
539
- includeDigits: true,
540
- includeDigitsErrorMessage: 'Пароль должен содержать хотя бы одну цифру',
541
- includeSpecialSymbols: true,
542
- includeSpecialSymbolsErrorMessage: 'Пароль должен содержать хотя бы один специальный символ',
543
- },
544
- render: (args) => <StoryPasswordValidation {...args} />,
545
- };
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.specialCharacters = exports.keyCodes = exports.emailPattern = void 0;
6
+ exports.keyCodes = void 0;
7
7
  var keyCodes = exports.keyCodes = {
8
8
  PageUp: 33,
9
9
  PageDown: 34,
@@ -16,6 +16,4 @@ var keyCodes = exports.keyCodes = {
16
16
  Enter: 13,
17
17
  Space: 32,
18
18
  Escape: 27
19
- };
20
- var emailPattern = exports.emailPattern = /^[^\s@]+@([^\s@.,]+\.)+[^\s@.,]{2,}$/;
21
- var specialCharacters = exports.specialCharacters = /[!@#$%^&*(),.?":{}|<>]/;
19
+ };
@@ -0,0 +1,184 @@
1
+ ---
2
+ id: card
3
+ title: Card
4
+ ---
5
+
6
+ отличия от https://plasma.sberdevices.ru/b2c/components/card/:
7
+ * избавляемся от CardBody
8
+ * убираем дублирование disabled
9
+
10
+ примеры дизайна https://www.figma.com/design/MXl0ZkXEqEhIFDS2H6b3yk/StarDS-Cards?node-id=2-690&node-type=instance&t=TJN8Nqyiky3Dfw2T-0
11
+
12
+ другие либы:
13
+ https://ant.design/components/card#
14
+ https://mui.com/material-ui/react-card/
15
+
16
+ ```tsx live
17
+ import React, { ReactNode } from "react";
18
+
19
+ /**
20
+ * Набор часто встречающихся скруглений.
21
+ */
22
+
23
+ export const radiuses = {
24
+ 250: 15.625,
25
+ 32: 2,
26
+ 28: 1.75,
27
+ 24: 1.5,
28
+ 20: 1.25,
29
+ 18: 1.125,
30
+ 16: 1,
31
+ 14: 0.875,
32
+ 12: 0.75,
33
+ 8: 0.5,
34
+ 0: 0,
35
+ };
36
+
37
+ export type Roundness = keyof typeof radiuses;
38
+
39
+ export interface RoundnessProps {
40
+ /** Скругленность */
41
+ roundness: Roundness;
42
+ }
43
+
44
+ interface Card {
45
+ /** Компонент в фокусе */
46
+ focused?: boolean;
47
+ /** Увеличение по фокусу */
48
+ scaleOnFocus?: boolean;
49
+ /** Компонент неактивен */
50
+ disabled?: boolean;
51
+ /** Добавить рамку при фокусе */
52
+ outlined?: boolean;
53
+ /** Цвет подложки */
54
+ background?: string;
55
+ /** Делает карточку квадратной */
56
+ square?: boolean;
57
+ /** Заголовок */
58
+ title?: string | ReactNode;
59
+ /** Подзаголовок */
60
+ subtitle?: string | ReactNode;
61
+ /** Расположение заголовка и подзаголовка, пока нет в дизайне */
62
+ titlePlacement?: "inner" | "outer";
63
+ /** Выравнивание заголовка и подзаголовка */
64
+ titleAlign?: "left" | "center";
65
+ /** Подвал, или вынести в
66
+ * <CardContent footer={<CardTimeline />} /> или <CardFooter><CardTimeline /></CardFooter>
67
+ * */
68
+ footer?: ReactNode;
69
+ }
70
+
71
+ const ratios = {
72
+ "1 / 1": "100",
73
+ "1/1": "100",
74
+ "3 / 4": "133.3333",
75
+ "3/4": "133.3333",
76
+ "4 / 3": "75",
77
+ "4/3": "75",
78
+ "9 / 16": "177.7778",
79
+ "9/16": "177.7778",
80
+ "16 / 9": "56.25",
81
+ "16/9": "56.25",
82
+ "1 / 2": "200",
83
+ "1/2": "200",
84
+ "2 / 1": "50",
85
+ "2/1": "50",
86
+ };
87
+
88
+ export type Ratio = keyof typeof ratios;
89
+
90
+ /**
91
+ * CardMedia из текущей реализации
92
+ * Стоит ли заменить пропсом `cover?: ReactNode;` в Card как в Ant?
93
+ * а width и height передавать в style...
94
+ *
95
+ * имхо, нет. у Card может быть title и subtitle под карточкой
96
+ * скорее всего, на них свойство height не должно распространяться
97
+ * стоит подождать финальный дизайн
98
+ */
99
+ interface CardMedia {
100
+ base?: "img" | "div";
101
+ height?: string | number;
102
+ ratio?: Ratio;
103
+ customRatio?: string;
104
+ }
105
+
106
+ interface CardContent {
107
+ topLeft?: string | ReactNode;
108
+ topRight?: string | ReactNode;
109
+ bottomLeft?: string | ReactNode;
110
+ bottomRight?: string | ReactNode;
111
+ children?: ReactNode;
112
+ }
113
+
114
+ /** или */
115
+ interface CardContent {
116
+ placement?: "top-left" | "top-right" | "bottom-left" | "bottom-right";
117
+ children?: ReactNode;
118
+ }
119
+
120
+ interface CardTimeline {
121
+ /**
122
+ * Описание, например время до конца фильма. Возможно,
123
+ * не нужно и стоит указывать bottomRight контент
124
+ */
125
+ text?: string;
126
+ progress?: string | number;
127
+ /**
128
+ * Не увеличивать высоту карточки
129
+ * @default true
130
+ */
131
+ inline?: boolean;
132
+ }
133
+ ```
134
+
135
+ ```tsx live
136
+ <Card title="Title" subtitle="Subtitle">
137
+ <CardContent placement="top-left">
138
+ <SomeIcon />
139
+ </CardContent>
140
+ <CardContent placement="top-right">
141
+ <SaveButton saved={isSaved} />
142
+ </CardContent>
143
+ <CardContent placement="bottom-right">18+</CardContent>
144
+ </Card>;
145
+
146
+ <Card title="Title" subtitle="Subtitle">
147
+ <CardContent
148
+ topLeft={<SomeIcon />}
149
+ topRight={<SaveButton saved={isSaved} />}
150
+ bottomRight="18+"
151
+ />
152
+ </Card>;
153
+
154
+ <Card title="Title" subtitle="Subtitle">
155
+ <CardMedia src={someSrc} alt="trailer" />
156
+ <CardContent
157
+ topLeft={<SomeIcon />}
158
+ topRight={<SaveButton saved={isSaved} />}
159
+ bottomRight="18+"
160
+ />
161
+ <CardTimeline text="еще 1ч 23мин" progress={56} />
162
+ </Card>;
163
+
164
+ <Card title="Title" subtitle="Subtitle">
165
+ <CardContent topLeft={<SomeIcon />} topRight={<SaveButton saved={isSaved} />}>
166
+ <CardMedia src={someSrc} alt="trailer" />
167
+ </CardContent>
168
+ <CardTimeline text="еще 1ч 23мин" progress={56} />
169
+ </Card>;
170
+
171
+ <Card
172
+ title="Title"
173
+ subtitle="Subtitle"
174
+ // как в ant, но кажется, что так менее гибко
175
+ cover={<CardMedia src={someSrc} alt="trailer" />}
176
+ square
177
+ >
178
+ <CardContent
179
+ topLeft={<SomeIcon />}
180
+ topRight={<SaveButton saved={isSaved} />}
181
+ />
182
+ <CardTimeline text="еще 1ч 23мин" progress={56} />
183
+ </Card>;
184
+ ```
@@ -23,6 +23,11 @@ export var tokens = {
23
23
  verticalGap: '--plasma-switch-vertical-gap',
24
24
  trackWidth: '--plasma-switch__track-width',
25
25
  trackHeight: '--plasma-switch__track-height',
26
+ trackBorderWidth: '--plasma-switch__track-border',
27
+ trackBorderColorOn: '--plasma-switch__track-checked_true-border-color',
28
+ trackBorderColorOnHover: '--plasma-switch__track-checked_true_hovered_true-border-color',
29
+ trackBorderColorOff: '--plasma-switch__track-checked_false-border-color',
30
+ trackBorderColorOffHover: '--plasma-switch__track-checked_false_hovered_true-border-color',
26
31
  trackBorderRadius: '--plasma-switch__track-border-radius',
27
32
  // NOTE: could be intersection with checked
28
33
  trackBackgroundColorOn: '--plasma-switch__track_checked_true-bg-color',
@@ -34,7 +39,8 @@ export var tokens = {
34
39
  thumbOffset: '--plasma-switch__thumb-offset',
35
40
  thumbBorderRadius: '--plasma-switch__thumb-border-radius',
36
41
  thumbPressScale: '--plasma-switch__thumb-scale',
37
- thumbBackgroundColor: '--plasma-switch__thumb-bg-color',
42
+ thumbBackgroundColorOn: '--plasma-switch__thumb_checked_true-bg-color',
43
+ thumbBackgroundColorOff: '--plasma-switch__thumb-checked_false-bg-color',
38
44
  thumbBoxShadow: '--plasma-switch__thumb-box-shadow',
39
45
  thumbBoxShadowOn: '--plasma-switch__thumb-box-shadow_checked_true',
40
46
  labelOffsetPrivate: '--plasma_private-switch__label-offset'
@@ -1,4 +1,4 @@
1
1
  import { css } from '@emotion/react';
2
2
  import { tokens } from '../Switch.tokens';
3
3
  import { StyledTrigger } from '../Switch.styles';
4
- export var base = /*#__PURE__*/css(StyledTrigger, "{flex:0 0 var(", tokens.trackWidth, ");width:var(", tokens.trackWidth, ");height:var(", tokens.trackHeight, ");border-radius:var(", tokens.trackBorderRadius, ");&::after{width:var(", tokens.thumbSize, ");height:var(", tokens.thumbSize, ");border-radius:var(", tokens.thumbBorderRadius, ");margin:auto var(", tokens.thumbOffset, ");}}:active:not([disabled]) ", StyledTrigger, "::after{width:calc(var(", tokens.thumbSize, ") * var(", tokens.thumbPressScale, ", 1));};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL190b2dnbGVTaXplL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS3VCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL190b2dnbGVTaXplL2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IHRva2VucyB9IGZyb20gJy4uL1N3aXRjaC50b2tlbnMnO1xuaW1wb3J0IHsgU3R5bGVkVHJpZ2dlciB9IGZyb20gJy4uL1N3aXRjaC5zdHlsZXMnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke1N0eWxlZFRyaWdnZXJ9IHtcbiAgICAgICAgZmxleDogMCAwIHZhcigke3Rva2Vucy50cmFja1dpZHRofSk7XG4gICAgICAgIHdpZHRoOiB2YXIoJHt0b2tlbnMudHJhY2tXaWR0aH0pO1xuICAgICAgICBoZWlnaHQ6IHZhcigke3Rva2Vucy50cmFja0hlaWdodH0pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMudHJhY2tCb3JkZXJSYWRpdXN9KTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKCR7dG9rZW5zLnRodW1iU2l6ZX0pO1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoJHt0b2tlbnMudGh1bWJTaXplfSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMudGh1bWJCb3JkZXJSYWRpdXN9KTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byB2YXIoJHt0b2tlbnMudGh1bWJPZmZzZXR9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIDphY3RpdmU6bm90KFtkaXNhYmxlZF0pICR7U3R5bGVkVHJpZ2dlcn06OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGModmFyKCR7dG9rZW5zLnRodW1iU2l6ZX0pICogdmFyKCR7dG9rZW5zLnRodW1iUHJlc3NTY2FsZX0sIDEpKTtcbiAgICB9XG5gO1xuIl19 */"));
4
+ export var base = /*#__PURE__*/css(StyledTrigger, "{box-sizing:border-box;flex:0 0 var(", tokens.trackWidth, ");border-style:solid;border-width:var(", tokens.trackBorderWidth, ");border-radius:var(", tokens.trackBorderRadius, ");width:var(", tokens.trackWidth, ");height:var(", tokens.trackHeight, ");&::after{width:var(", tokens.thumbSize, ");height:var(", tokens.thumbSize, ");border-radius:var(", tokens.thumbBorderRadius, ");margin:auto var(", tokens.thumbOffset, ");}}:active:not([disabled]) ", StyledTrigger, "::after{width:calc(var(", tokens.thumbSize, ") * var(", tokens.thumbPressScale, ", 1));};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL190b2dnbGVTaXplL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS3VCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL190b2dnbGVTaXplL2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IHRva2VucyB9IGZyb20gJy4uL1N3aXRjaC50b2tlbnMnO1xuaW1wb3J0IHsgU3R5bGVkVHJpZ2dlciB9IGZyb20gJy4uL1N3aXRjaC5zdHlsZXMnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke1N0eWxlZFRyaWdnZXJ9IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZmxleDogMCAwIHZhcigke3Rva2Vucy50cmFja1dpZHRofSk7XG5cbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoJHt0b2tlbnMudHJhY2tCb3JkZXJXaWR0aH0pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMudHJhY2tCb3JkZXJSYWRpdXN9KTtcblxuICAgICAgICB3aWR0aDogdmFyKCR7dG9rZW5zLnRyYWNrV2lkdGh9KTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoJHt0b2tlbnMudHJhY2tIZWlnaHR9KTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKCR7dG9rZW5zLnRodW1iU2l6ZX0pO1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoJHt0b2tlbnMudGh1bWJTaXplfSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMudGh1bWJCb3JkZXJSYWRpdXN9KTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byB2YXIoJHt0b2tlbnMudGh1bWJPZmZzZXR9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIDphY3RpdmU6bm90KFtkaXNhYmxlZF0pICR7U3R5bGVkVHJpZ2dlcn06OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGModmFyKCR7dG9rZW5zLnRodW1iU2l6ZX0pICogdmFyKCR7dG9rZW5zLnRodW1iUHJlc3NTY2FsZX0sIDEpKTtcbiAgICB9XG5gO1xuIl19 */"));
@@ -1,4 +1,4 @@
1
1
  import { css } from '@emotion/react';
2
2
  import { tokens } from '../Switch.tokens';
3
3
  import { StyledTrigger, StyledInput, StyledLabel, StyledDescription } from '../Switch.styles';
4
- export var base = /*#__PURE__*/css(StyledTrigger, "{background-color:var(", tokens.trackBackgroundColorOff, ");}", StyledInput, ":not([disabled])~", StyledTrigger, ":hover{background-color:var(", tokens.trackBackgroundColorOffHover, ", var(", tokens.trackBackgroundColorOff, "));}", StyledInput, ":checked~", StyledTrigger, "{background-color:var(", tokens.trackBackgroundColorOn, ");}", StyledInput, ":checked:not([disabled])~", StyledTrigger, ":hover{background-color:var(", tokens.trackBackgroundColorOnHover, ", var(", tokens.trackBackgroundColorOn, "));}", StyledTrigger, "::after{background-color:var(", tokens.thumbBackgroundColor, ");box-shadow:var(", tokens.thumbBoxShadow, ");}", StyledInput, ":checked~", StyledTrigger, "::after{box-shadow:var(", tokens.thumbBoxShadowOn, ", var(", tokens.thumbBoxShadow, "));}", StyledLabel, "{color:var(", tokens.labelColor, ");}", StyledDescription, "{color:var(", tokens.descriptionColor, ");};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL192aWV3L2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS3VCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL192aWV3L2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IHRva2VucyB9IGZyb20gJy4uL1N3aXRjaC50b2tlbnMnO1xuaW1wb3J0IHsgU3R5bGVkVHJpZ2dlciwgU3R5bGVkSW5wdXQsIFN0eWxlZExhYmVsLCBTdHlsZWREZXNjcmlwdGlvbiB9IGZyb20gJy4uL1N3aXRjaC5zdHlsZXMnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke1N0eWxlZFRyaWdnZXJ9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT2ZmfSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWRJbnB1dH06bm90KFtkaXNhYmxlZF0pIH4gJHtTdHlsZWRUcmlnZ2VyfTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigke3Rva2Vucy50cmFja0JhY2tncm91bmRDb2xvck9mZkhvdmVyfSwgdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT2ZmfSkpO1xuICAgIH1cblxuICAgICR7U3R5bGVkSW5wdXR9OmNoZWNrZWQgfiAke1N0eWxlZFRyaWdnZXJ9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT259KTtcbiAgICB9XG5cbiAgICAke1N0eWxlZElucHV0fTpjaGVja2VkOm5vdChbZGlzYWJsZWRdKSB+ICR7U3R5bGVkVHJpZ2dlcn06aG92ZXIgIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT25Ib3Zlcn0sIHZhcigke3Rva2Vucy50cmFja0JhY2tncm91bmRDb2xvck9ufSkpO1xuICAgIH1cblxuICAgICR7U3R5bGVkVHJpZ2dlcn06OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRodW1iQmFja2dyb3VuZENvbG9yfSk7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigke3Rva2Vucy50aHVtYkJveFNoYWRvd30pO1xuICAgIH1cblxuICAgICR7U3R5bGVkSW5wdXR9OmNoZWNrZWQgfiAke1N0eWxlZFRyaWdnZXJ9OjphZnRlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigke3Rva2Vucy50aHVtYkJveFNoYWRvd09ufSwgdmFyKCR7dG9rZW5zLnRodW1iQm94U2hhZG93fSkpO1xuICAgIH1cblxuICAgICR7U3R5bGVkTGFiZWx9IHtcbiAgICAgICAgY29sb3I6IHZhcigke3Rva2Vucy5sYWJlbENvbG9yfSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWREZXNjcmlwdGlvbn0ge1xuICAgICAgICBjb2xvcjogdmFyKCR7dG9rZW5zLmRlc2NyaXB0aW9uQ29sb3J9KTtcbiAgICB9XG5gO1xuIl19 */"));
4
+ export var base = /*#__PURE__*/css(StyledTrigger, "{background-color:var(", tokens.trackBackgroundColorOff, ");border-color:var(", tokens.trackBorderColorOff, ");}", StyledInput, ":not([disabled])~", StyledTrigger, ":hover{background-color:var(", tokens.trackBackgroundColorOffHover, ", var(", tokens.trackBackgroundColorOff, "));border-color:var(", tokens.trackBorderColorOffHover, ", var(", tokens.trackBorderColorOff, "));}", StyledInput, ":checked~", StyledTrigger, "{background-color:var(", tokens.trackBackgroundColorOn, ");border-color:var(", tokens.trackBorderColorOn, ");}", StyledInput, ":checked:not([disabled])~", StyledTrigger, ":hover{background-color:var(", tokens.trackBackgroundColorOnHover, ", var(", tokens.trackBackgroundColorOn, "));border-color:var(", tokens.trackBorderColorOnHover, ", var(", tokens.trackBorderColorOn, "));}", StyledTrigger, "::after{background-color:var(", tokens.thumbBackgroundColorOff, ");box-shadow:var(", tokens.thumbBoxShadow, ");}", StyledInput, ":checked~", StyledTrigger, "::after{background-color:var(", tokens.thumbBackgroundColorOn, ");box-shadow:var(", tokens.thumbBoxShadowOn, ", var(", tokens.thumbBoxShadow, "));}", StyledLabel, "{color:var(", tokens.labelColor, ");}", StyledDescription, "{color:var(", tokens.descriptionColor, ");};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL192aWV3L2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS3VCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvU3dpdGNoL192aWV3L2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IHRva2VucyB9IGZyb20gJy4uL1N3aXRjaC50b2tlbnMnO1xuaW1wb3J0IHsgU3R5bGVkVHJpZ2dlciwgU3R5bGVkSW5wdXQsIFN0eWxlZExhYmVsLCBTdHlsZWREZXNjcmlwdGlvbiB9IGZyb20gJy4uL1N3aXRjaC5zdHlsZXMnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAke1N0eWxlZFRyaWdnZXJ9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT2ZmfSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQm9yZGVyQ29sb3JPZmZ9KTtcbiAgICB9XG5cbiAgICAke1N0eWxlZElucHV0fTpub3QoW2Rpc2FibGVkXSkgfiAke1N0eWxlZFRyaWdnZXJ9OmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT2ZmSG92ZXJ9LCB2YXIoJHt0b2tlbnMudHJhY2tCYWNrZ3JvdW5kQ29sb3JPZmZ9KSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQm9yZGVyQ29sb3JPZmZIb3Zlcn0sIHZhcigke3Rva2Vucy50cmFja0JvcmRlckNvbG9yT2ZmfSkpO1xuICAgIH1cblxuICAgICR7U3R5bGVkSW5wdXR9OmNoZWNrZWQgfiAke1N0eWxlZFRyaWdnZXJ9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRyYWNrQmFja2dyb3VuZENvbG9yT259KTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoJHt0b2tlbnMudHJhY2tCb3JkZXJDb2xvck9ufSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWRJbnB1dH06Y2hlY2tlZDpub3QoW2Rpc2FibGVkXSkgfiAke1N0eWxlZFRyaWdnZXJ9OmhvdmVyICB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigke3Rva2Vucy50cmFja0JhY2tncm91bmRDb2xvck9uSG92ZXJ9LCB2YXIoJHt0b2tlbnMudHJhY2tCYWNrZ3JvdW5kQ29sb3JPbn0pKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoJHt0b2tlbnMudHJhY2tCb3JkZXJDb2xvck9uSG92ZXJ9LCB2YXIoJHt0b2tlbnMudHJhY2tCb3JkZXJDb2xvck9ufSkpO1xuICAgIH1cblxuICAgICR7U3R5bGVkVHJpZ2dlcn06OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCR7dG9rZW5zLnRodW1iQmFja2dyb3VuZENvbG9yT2ZmfSk7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigke3Rva2Vucy50aHVtYkJveFNoYWRvd30pO1xuICAgIH1cblxuICAgICR7U3R5bGVkSW5wdXR9OmNoZWNrZWQgfiAke1N0eWxlZFRyaWdnZXJ9OjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigke3Rva2Vucy50aHVtYkJhY2tncm91bmRDb2xvck9ufSk7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigke3Rva2Vucy50aHVtYkJveFNoYWRvd09ufSwgdmFyKCR7dG9rZW5zLnRodW1iQm94U2hhZG93fSkpO1xuICAgIH1cblxuICAgICR7U3R5bGVkTGFiZWx9IHtcbiAgICAgICAgY29sb3I6IHZhcigke3Rva2Vucy5sYWJlbENvbG9yfSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWREZXNjcmlwdGlvbn0ge1xuICAgICAgICBjb2xvcjogdmFyKCR7dG9rZW5zLmRlc2NyaXB0aW9uQ29sb3J9KTtcbiAgICB9XG5gO1xuIl19 */"));