@telus-uds/components-base 1.10.0 → 1.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/CHANGELOG.md +37 -3
  2. package/component-docs.json +413 -62
  3. package/lib/BaseProvider/index.js +7 -2
  4. package/lib/Button/ButtonBase.js +18 -14
  5. package/lib/Carousel/Carousel.js +92 -71
  6. package/lib/Carousel/CarouselContext.js +12 -4
  7. package/lib/Carousel/CarouselItem/CarouselItem.js +24 -9
  8. package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +56 -0
  9. package/lib/Carousel/CarouselStepTracker/index.js +13 -0
  10. package/lib/Carousel/dictionary.js +23 -0
  11. package/lib/Checkbox/Checkbox.js +7 -3
  12. package/lib/Checkbox/CheckboxGroup.js +1 -1
  13. package/lib/Feedback/Feedback.js +18 -10
  14. package/lib/Icon/IconText.js +5 -0
  15. package/lib/InputLabel/InputLabel.js +11 -5
  16. package/lib/InputSupports/InputSupports.js +10 -3
  17. package/lib/InputSupports/useInputSupports.js +3 -2
  18. package/lib/Link/LinkBase.js +7 -3
  19. package/lib/List/ListItem.js +7 -3
  20. package/lib/Modal/Modal.js +4 -0
  21. package/lib/Notification/Notification.js +7 -2
  22. package/lib/Pagination/Pagination.js +7 -3
  23. package/lib/RadioCard/RadioCard.js +6 -1
  24. package/lib/Select/Select.js +7 -3
  25. package/lib/Skeleton/Skeleton.js +1 -0
  26. package/lib/StepTracker/Step.js +8 -4
  27. package/lib/StepTracker/StepTracker.js +17 -13
  28. package/lib/Tabs/TabsItem.js +4 -0
  29. package/lib/TextInput/TextInput.js +3 -1
  30. package/lib/TextInput/TextInputBase.js +7 -3
  31. package/lib/ThemeProvider/ThemeProvider.js +20 -3
  32. package/lib/ThemeProvider/utils/styles.js +8 -1
  33. package/lib/ThemeProvider/utils/theme-tokens.js +1 -1
  34. package/lib/Typography/Typography.js +6 -2
  35. package/lib/index.js +9 -0
  36. package/lib/utils/index.js +9 -0
  37. package/lib/utils/props/clickProps.js +2 -2
  38. package/lib/utils/props/handlerProps.js +77 -31
  39. package/lib/utils/useScrollBlocking.js +66 -0
  40. package/lib/utils/useScrollBlocking.native.js +11 -0
  41. package/lib-module/BaseProvider/index.js +7 -2
  42. package/lib-module/Button/ButtonBase.js +7 -3
  43. package/lib-module/Carousel/Carousel.js +85 -70
  44. package/lib-module/Carousel/CarouselContext.js +11 -4
  45. package/lib-module/Carousel/CarouselItem/CarouselItem.js +25 -10
  46. package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +42 -0
  47. package/lib-module/Carousel/CarouselStepTracker/index.js +2 -0
  48. package/lib-module/Carousel/dictionary.js +16 -0
  49. package/lib-module/Checkbox/Checkbox.js +8 -4
  50. package/lib-module/Checkbox/CheckboxGroup.js +1 -1
  51. package/lib-module/Feedback/Feedback.js +19 -11
  52. package/lib-module/Icon/IconText.js +5 -0
  53. package/lib-module/InputLabel/InputLabel.js +12 -6
  54. package/lib-module/InputSupports/InputSupports.js +10 -3
  55. package/lib-module/InputSupports/useInputSupports.js +3 -2
  56. package/lib-module/Link/LinkBase.js +8 -4
  57. package/lib-module/List/ListItem.js +8 -4
  58. package/lib-module/Modal/Modal.js +3 -0
  59. package/lib-module/Notification/Notification.js +8 -3
  60. package/lib-module/Pagination/Pagination.js +8 -4
  61. package/lib-module/RadioCard/RadioCard.js +7 -2
  62. package/lib-module/Select/Select.js +8 -4
  63. package/lib-module/Skeleton/Skeleton.js +1 -0
  64. package/lib-module/StepTracker/Step.js +9 -5
  65. package/lib-module/StepTracker/StepTracker.js +17 -14
  66. package/lib-module/Tabs/TabsItem.js +5 -1
  67. package/lib-module/TextInput/TextInput.js +3 -1
  68. package/lib-module/TextInput/TextInputBase.js +8 -4
  69. package/lib-module/ThemeProvider/ThemeProvider.js +20 -3
  70. package/lib-module/ThemeProvider/utils/styles.js +8 -1
  71. package/lib-module/ThemeProvider/utils/theme-tokens.js +1 -1
  72. package/lib-module/Typography/Typography.js +7 -3
  73. package/lib-module/index.js +1 -0
  74. package/lib-module/utils/index.js +1 -0
  75. package/lib-module/utils/props/clickProps.js +2 -2
  76. package/lib-module/utils/props/handlerProps.js +78 -31
  77. package/lib-module/utils/useScrollBlocking.js +58 -0
  78. package/lib-module/utils/useScrollBlocking.native.js +2 -0
  79. package/package.json +3 -3
  80. package/src/BaseProvider/index.jsx +6 -3
  81. package/src/Button/ButtonBase.jsx +8 -3
  82. package/src/Carousel/Carousel.jsx +106 -74
  83. package/src/Carousel/CarouselContext.jsx +15 -4
  84. package/src/Carousel/CarouselItem/CarouselItem.jsx +26 -8
  85. package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +36 -0
  86. package/src/Carousel/CarouselStepTracker/index.js +3 -0
  87. package/src/Carousel/dictionary.js +16 -0
  88. package/src/Checkbox/Checkbox.jsx +14 -11
  89. package/src/Checkbox/CheckboxGroup.jsx +1 -1
  90. package/src/Feedback/Feedback.jsx +14 -7
  91. package/src/Icon/IconText.jsx +2 -0
  92. package/src/InputLabel/InputLabel.jsx +13 -12
  93. package/src/InputSupports/InputSupports.jsx +18 -3
  94. package/src/InputSupports/useInputSupports.js +2 -2
  95. package/src/Link/LinkBase.jsx +10 -4
  96. package/src/List/ListItem.jsx +9 -4
  97. package/src/Modal/Modal.jsx +3 -1
  98. package/src/Notification/Notification.jsx +5 -3
  99. package/src/Pagination/Pagination.jsx +6 -4
  100. package/src/RadioCard/RadioCard.jsx +3 -2
  101. package/src/Select/Select.jsx +12 -3
  102. package/src/Skeleton/Skeleton.jsx +1 -0
  103. package/src/StepTracker/Step.jsx +12 -4
  104. package/src/StepTracker/StepTracker.jsx +20 -13
  105. package/src/Tabs/TabsItem.jsx +3 -2
  106. package/src/TextInput/TextInput.jsx +1 -1
  107. package/src/TextInput/TextInputBase.jsx +11 -3
  108. package/src/ThemeProvider/ThemeProvider.jsx +16 -3
  109. package/src/ThemeProvider/utils/styles.js +9 -1
  110. package/src/ThemeProvider/utils/theme-tokens.js +1 -1
  111. package/src/Typography/Typography.jsx +11 -12
  112. package/src/index.js +1 -0
  113. package/src/utils/index.js +1 -0
  114. package/src/utils/props/clickProps.js +2 -2
  115. package/src/utils/props/handlerProps.js +64 -16
  116. package/src/utils/useScrollBlocking.js +57 -0
  117. package/src/utils/useScrollBlocking.native.js +2 -0
package/CHANGELOG.md CHANGED
@@ -1,12 +1,46 @@
1
1
  # Change Log - @telus-uds/components-base
2
2
 
3
- This log was last generated on Wed, 20 Jul 2022 23:56:08 GMT and should not be manually modified.
3
+ This log was last generated on Tue, 02 Aug 2022 22:59:06 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 1.12.1
8
+
9
+ Tue, 02 Aug 2022 22:59:06 GMT
10
+
11
+ ### Patches
12
+
13
+ - relative font sizes and carousel enhancements (srikanthkhari@gmail.com)
14
+
15
+ ## 1.12.0
16
+
17
+ Thu, 28 Jul 2022 19:38:24 GMT
18
+
19
+ ### Minor changes
20
+
21
+ - export useScrollBlocking for using on allium (tiagohldb@gmail.com)
22
+
23
+ ## 1.11.0
24
+
25
+ Mon, 25 Jul 2022 18:18:31 GMT
26
+
27
+ ### Minor changes
28
+
29
+ - adding reference for html dom element (tiagohldb@gmail.com)
30
+ - adding useScrollBlocking hook to avoid modal background content from scrolling (tiagohldb@gmail.com)
31
+ - feat: add InputSupports to the base exports (ruslan.bredikhin@nearform.com)
32
+ - limiting skeleton width to be max to container width (tiagohldb@gmail.com)
33
+
34
+ ### Patches
35
+
36
+ - Fill in RN TextInput handlers (alan.slater@nearform.com)
37
+ - Make Carousel multi-lingual with nameable items (alan.slater@nearform.com)
38
+ - Carousel accessibility: unordered list with hidden siblings (alan.slater@nearform.com)
39
+ - fix: react native and web version updates (srikanthkhari@gmail.com)
40
+
7
41
  ## 1.10.0
8
42
 
9
- Wed, 20 Jul 2022 23:56:08 GMT
43
+ Wed, 20 Jul 2022 23:57:28 GMT
10
44
 
11
45
  ### Minor changes
12
46
 
@@ -15,7 +49,7 @@ Wed, 20 Jul 2022 23:56:08 GMT
15
49
 
16
50
  ### Patches
17
51
 
18
- - Fix an issue where StepTracker might break where `stepLabel` and/or `stepTrackerLabel` are not read before reading their `dictionary` values (shahzaibkhalidmalik@outlook.com)
52
+ - Fix an issue where StepTracker might break where `stepLabel` and/or `stepTrackerLabel` are not read before reading their `dictionary` values (shahzaibkhalidmalik@outlook.com)
19
53
 
20
54
  ## 1.9.0
21
55
 
@@ -1888,6 +1888,13 @@
1888
1888
  "docs": {
1889
1889
  "description": "",
1890
1890
  "props": {
1891
+ "children": {
1892
+ "type": {
1893
+ "name": "node"
1894
+ },
1895
+ "required": true,
1896
+ "description": ""
1897
+ },
1891
1898
  "defaultTheme": {
1892
1899
  "type": {
1893
1900
  "name": "custom",
@@ -1896,11 +1903,17 @@
1896
1903
  "required": false,
1897
1904
  "description": ""
1898
1905
  },
1899
- "children": {
1906
+ "themeOptions": {
1900
1907
  "type": {
1901
- "name": "node"
1908
+ "name": "shape",
1909
+ "value": {
1910
+ "forceAbsoluteFontSizing": {
1911
+ "name": "bool",
1912
+ "required": false
1913
+ }
1914
+ }
1902
1915
  },
1903
- "required": true,
1916
+ "required": false,
1904
1917
  "description": ""
1905
1918
  }
1906
1919
  },
@@ -4334,6 +4347,125 @@
4334
4347
  }
4335
4348
  }
4336
4349
  },
4350
+ "InputSupports": {
4351
+ "docs": {
4352
+ "description": "",
4353
+ "props": {
4354
+ "copy": {
4355
+ "defaultValue": {
4356
+ "value": "'en'",
4357
+ "computed": false
4358
+ },
4359
+ "type": {
4360
+ "name": "enum",
4361
+ "value": [
4362
+ {
4363
+ "value": "'en'",
4364
+ "computed": false
4365
+ },
4366
+ {
4367
+ "value": "'fr'",
4368
+ "computed": false
4369
+ }
4370
+ ]
4371
+ },
4372
+ "required": false,
4373
+ "description": "Whether the English or French copy will be used (e.g. for accessibility labels)."
4374
+ },
4375
+ "hintPosition": {
4376
+ "defaultValue": {
4377
+ "value": "'inline'",
4378
+ "computed": false
4379
+ },
4380
+ "type": {
4381
+ "name": "enum",
4382
+ "value": [
4383
+ {
4384
+ "value": "'inline'",
4385
+ "computed": false
4386
+ },
4387
+ {
4388
+ "value": "'below'",
4389
+ "computed": false
4390
+ }
4391
+ ]
4392
+ },
4393
+ "required": false,
4394
+ "description": "Position of the hint relative to label."
4395
+ },
4396
+ "children": {
4397
+ "type": {
4398
+ "name": "union",
4399
+ "value": [
4400
+ {
4401
+ "name": "func"
4402
+ },
4403
+ {
4404
+ "name": "node"
4405
+ }
4406
+ ]
4407
+ },
4408
+ "required": false,
4409
+ "description": ""
4410
+ },
4411
+ "label": {
4412
+ "type": {
4413
+ "name": "string"
4414
+ },
4415
+ "required": false,
4416
+ "description": "The input label."
4417
+ },
4418
+ "hint": {
4419
+ "type": {
4420
+ "name": "string"
4421
+ },
4422
+ "required": false,
4423
+ "description": "A short description of the expected input."
4424
+ },
4425
+ "feedback": {
4426
+ "type": {
4427
+ "name": "string"
4428
+ },
4429
+ "required": false,
4430
+ "description": "A detailed description of validation error/success or additional instructions.\nVisual variant is determined based on the `validation` prop."
4431
+ },
4432
+ "tooltip": {
4433
+ "type": {
4434
+ "name": "string"
4435
+ },
4436
+ "required": false,
4437
+ "description": "Content of an optional `Tooltip`. If set, a tooltip button will be shown next to the label."
4438
+ },
4439
+ "validation": {
4440
+ "type": {
4441
+ "name": "enum",
4442
+ "value": [
4443
+ {
4444
+ "value": "'error'",
4445
+ "computed": false
4446
+ },
4447
+ {
4448
+ "value": "'success'",
4449
+ "computed": false
4450
+ }
4451
+ ]
4452
+ },
4453
+ "required": false,
4454
+ "description": "Use to visually mark an input as valid or invalid."
4455
+ },
4456
+ "nativeID": {
4457
+ "type": {
4458
+ "name": "string"
4459
+ },
4460
+ "required": false,
4461
+ "description": "ID for DOM element on web"
4462
+ }
4463
+ },
4464
+ "attributes": {
4465
+ "acceptsRNA11yProps": false
4466
+ }
4467
+ }
4468
+ },
4337
4469
  "List": {
4338
4470
  "docs": {
4339
4471
  "description": "An unordered List component has a child a ListItem that\nallows icon, dividers and customized typography",
@@ -6916,15 +7048,24 @@
6916
7048
  "computed": false
6917
7049
  },
6918
7050
  "type": {
6919
- "name": "enum",
7051
+ "name": "union",
6920
7052
  "value": [
6921
7053
  {
6922
- "value": "'en'",
6923
- "computed": false
7054
+ "name": "enum",
7055
+ "value": [
7056
+ {
7057
+ "value": "'en'",
7058
+ "computed": false
7059
+ },
7060
+ {
7061
+ "value": "'fr'",
7062
+ "computed": false
7063
+ }
7064
+ ]
6924
7065
  },
6925
7066
  {
6926
- "value": "'fr'",
6927
- "computed": false
7067
+ "name": "custom",
7068
+ "raw": "dictionaryContentShape"
6928
7069
  }
6929
7070
  ]
6930
7071
  },
@@ -6940,31 +7081,13 @@
6940
7081
  "name": "shape",
6941
7082
  "value": {
6942
7083
  "en": {
6943
- "name": "shape",
6944
- "value": {
6945
- "stepLabel": {
6946
- "name": "string",
6947
- "required": false
6948
- },
6949
- "stepTrackerLabel": {
6950
- "name": "string",
6951
- "required": false
6952
- }
6953
- },
7084
+ "name": "custom",
7085
+ "raw": "dictionaryContentShape",
6954
7086
  "required": false
6955
7087
  },
6956
7088
  "fr": {
6957
- "name": "shape",
6958
- "value": {
6959
- "stepLabel": {
6960
- "name": "string",
6961
- "required": false
6962
- },
6963
- "stepTrackerLabel": {
6964
- "name": "string",
6965
- "required": false
6966
- }
6967
- },
7089
+ "name": "custom",
7090
+ "raw": "dictionaryContentShape",
6968
7091
  "required": false
6969
7092
  }
6970
7093
  }
@@ -7362,6 +7485,23 @@
7362
7485
  "docs": {
7363
7486
  "description": "",
7364
7487
  "props": {
7488
+ "themeOptions": {
7489
+ "defaultValue": {
7490
+ "value": "{ forceAbsoluteFontSizing: true }",
7491
+ "computed": false
7492
+ },
7493
+ "type": {
7494
+ "name": "shape",
7495
+ "value": {
7496
+ "forceAbsoluteFontSizing": {
7497
+ "name": "bool",
7498
+ "required": false
7499
+ }
7500
+ }
7501
+ },
7502
+ "required": false,
7503
+ "description": "An object containing options allowing to customize the theming experience:\n\n- `forceAbsoluteFontSizing`: available on web only; when set to true, allows\n using absolute font sizing (in pixels, doesn't scale) instead of the\n relative sizing (in `rem`, scales depending on the browser settings)"
7504
+ },
7365
7505
  "children": {
7366
7506
  "type": {
7367
7507
  "name": "node"
@@ -8300,6 +8440,17 @@
8300
8440
  "docs": {
8301
8441
  "description": "Carousel is a general-purpose content slider that can be used to render content in terms of slides.\n\n ## Usage\n - `Carousel` is a top-level export from `@telus-uds/components-base` which is used to render a Carousel\n - Immediately within `Carousel`, individual slides are wrapped in `Carousel.Item` for the top-level `Carousel` to know how to identify an individual slide\n - You can use any UDS component or other platform-specific component, (based on the platform you're rendering) to achieve any desired layout\n - By default, Carousel takea all the `width` available to it and the `height` is determined based on the content in the slide with more content\n - You may want to wrap Carousel in other layout components like `Box`, `FlexGrid` etc, to achieve a responsive layout of your need\n\n ## `useCarousel` custom hook\n\n ```jsx\n import { useCarousel } from '@telus-uds/components-base'\n\n const SomeComponentWithinCarouselItem = () => {\n const {\n activeIndex,\n totalItems,\n width,\n goTo\n } = useCarousel()\n return <Text>Hi!</Text>\n }\n ```\n\n You can use `useCarousel` to hook into internal state of the Carousel component like:\n - `activeIndex`: Index of the current slide\n - `totalItems`: Total number of items/slides passed to the Carousel\n - `width`: Width of the individual carousel slide\n - `goTo`: A function to go to a particular slide by passing the index of that slide, e.g: goTo(0) where `0` is the index of the first slide\n\n ## Accessibility\n\n - Top-level `Carousel` and `Carousel.Item` can take all possible React Native's `View` and `a11y` props\n - If your slide contains input elements like buttons, you may want to configure them to be only focusable when `activeIndex` is equal to the current slide index in order to avoid tabbing going between slides\n\n ## Platform considerations\n The component is available on both native platforms and web.\n\n ## Other considerations\n - You may want to use the same kind of layout in all your slides to avoid visual and height differences\n - `previous` and `next` navigation buttons are automatically removed in `sm` and `xs` viewports, as these smaller viewports offers swipe functionality\n\n ## Tokens\n\n You can override the following tokens in exceptional circumstances:\n - `previousIcon` - Icon of the previous button\n - `nextIcon` - Icon of the next button\n - `showPreviousNextNavigation` - If you want to show/hide the previous/next navigation\n - `showPanelNavigation` - If you want to show/hide the panel navigation\n - `spaceBetweenSlideAndPreviousNextNavigation` - Horizontal space between slide and previous/next navigational buttons\n - `spaceBetweenSlideAndPanelNavigation` - Vertical space between slide area and panel navigation area",
8302
8442
  "props": {
8443
+ "itemLabel": {
8444
+ "defaultValue": {
8445
+ "value": "'item'",
8446
+ "computed": false
8447
+ },
8448
+ "type": {
8449
+ "name": "string"
8450
+ },
8451
+ "required": false,
8452
+ "description": "Lowercase language-appropriate user-facing description of what each Carousel slide represents.\nThis is used when generating item labels. For example, if a carousel contains offers,\npass itemLabel=\"summer offer\" (or copy=\"fr\" and an appropriate French translation) to genereate\naccessible labels such as \"Summer offer 1 of 3\" and \"Show summer offer 2 of 3\"."
8453
+ },
8303
8454
  "previousNextNavigationPosition": {
8304
8455
  "defaultValue": {
8305
8456
  "value": "'inside'",
@@ -8383,38 +8534,105 @@
8383
8534
  "required": false,
8384
8535
  "description": "Carousel uses `Animated.spring` to animate slide changes, use this option to pass custom animation configuration"
8385
8536
  },
8386
- "panelNavigationTextDictionary": {
8537
+ "panelNavigation": {
8387
8538
  "defaultValue": {
8388
- "value": "{\n en: {\n stepTrackerLabel: 'Showing %{stepNumber} of %{stepCount}'\n },\n fr: {\n stepTrackerLabel: 'Étape %{stepNumber} sur %{stepCount}: %{stepLabel}'\n }\n}",
8539
+ "value": "<CarouselStepTracker />",
8389
8540
  "computed": false
8390
8541
  },
8391
8542
  "type": {
8392
- "name": "shape",
8393
- "value": {
8394
- "en": {
8395
- "name": "shape",
8396
- "value": {
8397
- "stepTrackerLabel": {
8398
- "name": "string",
8399
- "required": true
8400
- }
8401
- },
8402
- "required": false
8543
+ "name": "element"
8544
+ },
8545
+ "required": false,
8546
+ "description": "Use this to render a custom panel navigation element instead of the default StepTracker's based navigation\nYou can make use of `useCarousel` within your custom panel navigation component to hook into various Carousel states such as:\n- activeIndex: index of current slide\n- totalItems: total number of slides\nUse it as follows:\n```js\n <Carousel\n panelNavigation={<CustomPanelNavigation />}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```"
8547
+ },
8548
+ "tag": {
8549
+ "defaultValue": {
8550
+ "value": "'ul'",
8551
+ "computed": false
8552
+ },
8553
+ "type": {
8554
+ "name": "enum",
8555
+ "value": [
8556
+ {
8557
+ "value": "'h1'",
8558
+ "computed": false
8403
8559
  },
8404
- "fr": {
8405
- "name": "shape",
8406
- "value": {
8407
- "stepTrackerLabel": {
8408
- "name": "string",
8409
- "required": true
8410
- }
8411
- },
8412
- "required": false
8560
+ {
8561
+ "value": "'h2'",
8562
+ "computed": false
8563
+ },
8564
+ {
8565
+ "value": "'h3'",
8566
+ "computed": false
8567
+ },
8568
+ {
8569
+ "value": "'h4'",
8570
+ "computed": false
8571
+ },
8572
+ {
8573
+ "value": "'h5'",
8574
+ "computed": false
8575
+ },
8576
+ {
8577
+ "value": "'h6'",
8578
+ "computed": false
8579
+ },
8580
+ {
8581
+ "value": "'article'",
8582
+ "computed": false
8583
+ },
8584
+ {
8585
+ "value": "'aside'",
8586
+ "computed": false
8587
+ },
8588
+ {
8589
+ "value": "'blockquote'",
8590
+ "computed": false
8591
+ },
8592
+ {
8593
+ "value": "'footer'",
8594
+ "computed": false
8595
+ },
8596
+ {
8597
+ "value": "'figure'",
8598
+ "computed": false
8599
+ },
8600
+ {
8601
+ "value": "'form'",
8602
+ "computed": false
8603
+ },
8604
+ {
8605
+ "value": "'header'",
8606
+ "computed": false
8607
+ },
8608
+ {
8609
+ "value": "'ul'",
8610
+ "computed": false
8611
+ },
8612
+ {
8613
+ "value": "'li'",
8614
+ "computed": false
8615
+ },
8616
+ {
8617
+ "value": "'main'",
8618
+ "computed": false
8619
+ },
8620
+ {
8621
+ "value": "'nav'",
8622
+ "computed": false
8623
+ },
8624
+ {
8625
+ "value": "'section'",
8626
+ "computed": false
8627
+ },
8628
+ {
8629
+ "value": "'label'",
8630
+ "computed": false
8413
8631
  }
8414
- }
8632
+ ]
8415
8633
  },
8416
8634
  "required": false,
8417
- "description": "Use this to override the default text for panel navigation"
8635
+ "description": "HTML tag to use for the Carousel item's immediate parent. Defaults to `'ul'` so that\nassistive technology tools know to intepret the carousel as a list.\n\nNote that if the immediate Carousel children do not all render as `'li'` elements,\nthis should be changed (e.g. pass tag=\"div\") because only 'li' is a valid child of 'ul'."
8418
8636
  },
8419
8637
  "accessibilityRole": {
8420
8638
  "defaultValue": {
@@ -8499,13 +8717,6 @@
8499
8717
  "required": false,
8500
8718
  "description": "Called when active index changed\nThis function is also provided with a parameter indicating changed index (either 1, or -1)\nUse it as follows:\n```js\n const onIndexChangedCallback = React.useCallback((changedIndex) => {\n console.log(changedIndex)\n }, []) // pass local dependencies as per your component\n <Carousel\n onIndexChanged={onIndexChangedCallback}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```\nCaution: Always consider wrapping your callback for `onIndexChanged` in `useCallback` in order to avoid bugs and performance issues"
8501
8719
  },
8502
- "onRenderPanelNavigation": {
8503
- "type": {
8504
- "name": "func"
8505
- },
8506
- "required": false,
8507
- "description": "Use this to render a custom panel navigation element instead of dots navigation\nThis function is also provided with an object with the following properties\nactiveIndex: index of current slide\ntotalItems: total number of slides\nUse it as follows:\n```js\n <Carousel\n onRenderPanelNavigation={({ totalItems, activeIndex }) => <Text>Showing {activeIndex + 1}</Text>}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```"
8508
- },
8509
8720
  "onAnimationStart": {
8510
8721
  "type": {
8511
8722
  "name": "func"
@@ -8519,6 +8730,35 @@
8519
8730
  },
8520
8731
  "required": false,
8521
8732
  "description": "When slide animation end with parameter of current index (after animation ends)\nThis function is also provided with a parameter indicating the updated slide index after animation ends\nUse it as follows:\n```js\n const onAnimationEndCallback = React.useCallback((changedIndex) => {\n console.log(changedIndex)\n }, []) // pass local dependencies as per your component\n <Carousel\n onAnimationEnd={onAnimationEndCallback}\n >\n <Carousel.Item>First Slide</Carousel.Item>\n </Carousel>\n```\nCaution: Always consider wrapping your callback for `onAnimationEnd` in `useCallback` in order to avoid bugs and performance issues"
8733
+ },
8734
+ "panelNavigationTextDictionary": {
8735
+ "type": {
8736
+ "name": "shape",
8737
+ "value": {
8738
+ "en": {
8739
+ "name": "shape",
8740
+ "value": {
8741
+ "stepTrackerLabel": {
8742
+ "name": "string",
8743
+ "required": true
8744
+ }
8745
+ },
8746
+ "required": false
8747
+ },
8748
+ "fr": {
8749
+ "name": "shape",
8750
+ "value": {
8751
+ "stepTrackerLabel": {
8752
+ "name": "string",
8753
+ "required": true
8754
+ }
8755
+ },
8756
+ "required": false
8757
+ }
8758
+ }
8759
+ },
8760
+ "required": false,
8761
+ "description": "Use this to override the default text for panel navigation"
8522
8762
  }
8523
8763
  },
8524
8764
  "attributes": {
@@ -8529,6 +8769,95 @@
8529
8769
  "docs": {
8530
8770
  "description": "`Carousel.Item` is used to wrap the content of an individual slide and is suppsoed to be the\nonly top-level component passed to the `Carousel`",
8531
8771
  "props": {
8772
+ "tag": {
8773
+ "defaultValue": {
8774
+ "value": "'li'",
8775
+ "computed": false
8776
+ },
8777
+ "type": {
8778
+ "name": "enum",
8779
+ "value": [
8780
+ {
8781
+ "value": "'h1'",
8782
+ "computed": false
8783
+ },
8784
+ {
8785
+ "value": "'h2'",
8786
+ "computed": false
8787
+ },
8788
+ {
8789
+ "value": "'h3'",
8790
+ "computed": false
8791
+ },
8792
+ {
8793
+ "value": "'h4'",
8794
+ "computed": false
8795
+ },
8796
+ {
8797
+ "value": "'h5'",
8798
+ "computed": false
8799
+ },
8800
+ {
8801
+ "value": "'h6'",
8802
+ "computed": false
8803
+ },
8804
+ {
8805
+ "value": "'article'",
8806
+ "computed": false
8807
+ },
8808
+ {
8809
+ "value": "'aside'",
8810
+ "computed": false
8811
+ },
8812
+ {
8813
+ "value": "'blockquote'",
8814
+ "computed": false
8815
+ },
8816
+ {
8817
+ "value": "'footer'",
8818
+ "computed": false
8819
+ },
8820
+ {
8821
+ "value": "'figure'",
8822
+ "computed": false
8823
+ },
8824
+ {
8825
+ "value": "'form'",
8826
+ "computed": false
8827
+ },
8828
+ {
8829
+ "value": "'header'",
8830
+ "computed": false
8831
+ },
8832
+ {
8833
+ "value": "'ul'",
8834
+ "computed": false
8835
+ },
8836
+ {
8837
+ "value": "'li'",
8838
+ "computed": false
8839
+ },
8840
+ {
8841
+ "value": "'main'",
8842
+ "computed": false
8843
+ },
8844
+ {
8845
+ "value": "'nav'",
8846
+ "computed": false
8847
+ },
8848
+ {
8849
+ "value": "'section'",
8850
+ "computed": false
8851
+ },
8852
+ {
8853
+ "value": "'label'",
8854
+ "computed": false
8855
+ }
8856
+ ]
8857
+ },
8858
+ "required": false,
8859
+ "description": "Sets the HTML tag of the outer container. By default `'li'` so that assistive technology sees\nthe Carousel as a list of items.\n\nCarousel's innermost container defaults to `'ul'` which can be overridden. If the tag of either\n`Carousel` or `Carousel.Item` is overriden, the other should be too, to avoid producing invalid HTML."
8860
+ },
8532
8861
  "elementIndex": {
8533
8862
  "type": {
8534
8863
  "name": "number"
@@ -8609,6 +8938,28 @@
8609
8938
  },
8610
8939
  "required": true,
8611
8940
  "description": ""
8941
+ },
8942
+ "getCopyWithPlaceholders": {
8943
+ "type": {
8944
+ "name": "func"
8945
+ },
8946
+ "required": true,
8947
+ "description": ""
8948
+ },
8949
+ "themeTokens": {
8950
+ "type": {
8951
+ "name": "custom",
8952
+ "raw": {
8953
+ "nextIcon": "icon",
8954
+ "previousIcon": "icon",
8955
+ "showPreviousNextNavigation": "show",
8956
+ "showPanelNavigation": "show",
8957
+ "spaceBetweenSlideAndPreviousNextNavigation": "size",
8958
+ "spaceBetweenSlideAndPanelNavigation": "size"
8959
+ }
8960
+ },
8961
+ "required": false,
8962
+ "description": ""
8612
8963
  }
8613
8964
  },
8614
8965
  "attributes": {
@@ -8618,7 +8969,7 @@
8618
8969
  },
8619
8970
  "CheckboxGroup": {
8620
8971
  "docs": {
8621
- "description": "A group of Checkboxs that behave as a fieldset. Use when users select any number of choices from options.\n\n## Component API\n\nUse the `items` prop to pass an array of objects describing each Checkbox in the group:\n\n - `label`: main text passed to CheckboxGroup's `label` prop\n - `id`: identifier used to store which CheckboxGroup is selected (uses `label` if undefinded)\n - `onChange`: optional function called on selection, in addition to updating the group's selection state\n\n### Controlled version\n\nIf the selection state is controlled from outside, it needs to receive `checkedId` and `onChange` props.\n\n### Uncontrolled version\n\nIf the CheckboxGroup manages its own state, you can use `initialCheckedId` prop to provide the initial value.\nWhenever the radio card gets toggled, it calls the `onChange` callback with the new value (string).\n\n### Use in forms\n\nFor web forms, the `name` prop may be used to define the name of the group's `fieldset` and input elements.\n\n### Validation\n\nValidation state may be set by passing 'error' or 'success' to the `validation` prop.\n\n## A11y guidelines\n\nCheckboxGroup accepts all the common accessibility props, and controls the accessibility state\nof children like Checkbox and Feedback based on current state.\n\n@example\n```jsx\n<CheckboxGroup\n initialCheckedId=\"check1\"\n items={[\n { label: 'Checkbox 1', id: 'check1' },\n { label: 'Checkbox 2', id: 'check2' },\n { label: 'Checkbox 3', id: 'check3' }\n ]}\n legend=\"Checkboxes\"\n hint=\"Choose from these options\"\n/>\n```",
8972
+ "description": "A group of Checkboxs that behave as a fieldset. Use when users select any number of choices from options.\n\n## Component API\n\nUse the `items` prop to pass an array of objects describing each Checkbox in the group:\n\n - `label`: main text passed to CheckboxGroup's `label` prop\n - `id`: identifier used to store which CheckboxGroup is selected (uses `label` if undefinded)\n - `onChange`: optional function called on selection, in addition to updating the group's selection state\n\n### Controlled version\n\nIf the selection state is controlled from outside, it needs to receive `checkedId` and `onChange` props.\n\n### Uncontrolled version\n\nIf the CheckboxGroup manages its own state, you can use `initialCheckedId` prop to provide the initial value.\nWhenever the radio card gets toggled, it calls the `onChange` callback with the new value (string).\n\n### Use in forms\n\nFor web forms, the `name` prop may be used to define the name of the group's `fieldset` and input elements.\n\n### Validation\n\nValidation state may be set by passing 'error' or 'success' to the `validation` prop.\n\n## A11y guidelines\n\nCheckboxGroup accepts all the common accessibility props, and controls the accessibility state\nof children like Checkbox and Feedback based on current state.\n\n@example\n```jsx\n<CheckboxGroup\n initialCheckedIds=\"check1\"\n items={[\n { label: 'Checkbox 1', id: 'check1' },\n { label: 'Checkbox 2', id: 'check2' },\n { label: 'Checkbox 3', id: 'check3' }\n ]}\n legend=\"Checkboxes\"\n hint=\"Choose from these options\"\n/>\n```",
8622
8973
  "props": {
8623
8974
  "items": {
8624
8975
  "defaultValue": {
@@ -24,12 +24,14 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
24
24
  const BaseProvider = _ref => {
25
25
  let {
26
26
  defaultTheme,
27
- children
27
+ children,
28
+ themeOptions
28
29
  } = _ref;
29
30
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_A11yInfoProvider.default, {
30
31
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ViewportProvider.default, {
31
32
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ThemeProvider.default, {
32
33
  defaultTheme: defaultTheme,
34
+ themeOptions: themeOptions,
33
35
  children: children
34
36
  })
35
37
  })
@@ -37,8 +39,11 @@ const BaseProvider = _ref => {
37
39
  };
38
40
 
39
41
  BaseProvider.propTypes = {
42
+ children: _propTypes.default.node.isRequired,
40
43
  defaultTheme: (_ThemeProvider$propTy = _ThemeProvider.default.propTypes) === null || _ThemeProvider$propTy === void 0 ? void 0 : _ThemeProvider$propTy.defaultTheme,
41
- children: _propTypes.default.node.isRequired
44
+ themeOptions: _propTypes.default.shape({
45
+ forceAbsoluteFontSizing: _propTypes.default.bool
46
+ })
42
47
  };
43
48
  var _default = BaseProvider;
44
49
  exports.default = _default;