@procore/core-react 11.12.1 → 11.13.0-rc.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 (112) hide show
  1. package/dist/Breadcrumbs/Breadcrumbs.js +7 -5
  2. package/dist/Breadcrumbs/Breadcrumbs.js.map +1 -1
  3. package/dist/Form/Form.js +12 -5
  4. package/dist/Form/Form.js.map +1 -1
  5. package/dist/Form/Form.types.d.ts +1 -0
  6. package/dist/Modal/Modal.d.ts +3 -1
  7. package/dist/Modal/Modal.js +72 -19
  8. package/dist/Modal/Modal.js.map +1 -1
  9. package/dist/Modal/Modal.types.d.ts +59 -3
  10. package/dist/OverlayTrigger/OverlayTrigger.d.ts +6 -6
  11. package/dist/OverlayTrigger/OverlayTrigger.js +43 -32
  12. package/dist/OverlayTrigger/OverlayTrigger.js.map +1 -1
  13. package/dist/OverlayTrigger/OverlayTrigger.types.d.ts +15 -7
  14. package/dist/OverlayTrigger/a11yPresets.d.ts +202 -1
  15. package/dist/OverlayTrigger/a11yPresets.js +210 -0
  16. package/dist/OverlayTrigger/a11yPresets.js.map +1 -1
  17. package/dist/Popover/Popover.d.ts +24 -2
  18. package/dist/Popover/Popover.js +6 -4
  19. package/dist/Popover/Popover.js.map +1 -1
  20. package/dist/Popover/Popover.types.d.ts +15 -2
  21. package/dist/Portal/Portal.d.ts +1 -1
  22. package/dist/Portal/Portal.js +24 -2
  23. package/dist/Portal/Portal.js.map +1 -1
  24. package/dist/Section/Section.d.ts +4 -0
  25. package/dist/Section/Section.js +12 -6
  26. package/dist/Section/Section.js.map +1 -1
  27. package/dist/Semantic/Semantic.d.ts +8 -0
  28. package/dist/Semantic/Semantic.js +28 -0
  29. package/dist/Semantic/Semantic.js.map +1 -1
  30. package/dist/Semantic/Semantic.types.d.ts +1 -1
  31. package/dist/Tearsheet/Tearsheet.d.ts +7 -1
  32. package/dist/Tearsheet/Tearsheet.js +32 -19
  33. package/dist/Tearsheet/Tearsheet.js.map +1 -1
  34. package/dist/Tearsheet/Tearsheet.types.d.ts +24 -0
  35. package/dist/_hooks/I18n.d.ts +1 -0
  36. package/dist/_locales/en.json +2 -1
  37. package/dist/_typedoc/Avatar/Avatar.types.json +28 -28
  38. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +22 -22
  39. package/dist/_typedoc/Badge/Badge.types.json +10 -10
  40. package/dist/_typedoc/Banner/Banner.types.json +19 -19
  41. package/dist/_typedoc/Box/Box.types.json +70 -70
  42. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +14 -14
  43. package/dist/_typedoc/Button/Button.types.json +11 -11
  44. package/dist/_typedoc/Calendar/Calendar.types.json +98 -98
  45. package/dist/_typedoc/Card/Card.types.json +8 -8
  46. package/dist/_typedoc/Checkbox/Checkbox.types.json +7 -7
  47. package/dist/_typedoc/ContactItem/ContactItem.types.json +11 -11
  48. package/dist/_typedoc/DateInput/DateInput.types.json +37 -37
  49. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  50. package/dist/_typedoc/DetailPage/DetailPage.types.json +6 -6
  51. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  52. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +31 -31
  53. package/dist/_typedoc/Dropzone/Dropzone.types.json +41 -41
  54. package/dist/_typedoc/EmptyState/EmptyState.types.json +22 -22
  55. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  56. package/dist/_typedoc/FileSelect/FileSelect.types.json +26 -26
  57. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  58. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  59. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  60. package/dist/_typedoc/Flex/Flex.types.json +29 -29
  61. package/dist/_typedoc/FlexList/FlexList.types.json +32 -32
  62. package/dist/_typedoc/Form/Form.types.json +700 -700
  63. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  64. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +54 -54
  65. package/dist/_typedoc/Input/Input.types.json +2 -2
  66. package/dist/_typedoc/Link/Link.types.json +6 -6
  67. package/dist/_typedoc/ListPage/ListPage.types.json +19 -19
  68. package/dist/_typedoc/Menu/Menu.types.json +68 -68
  69. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +75 -75
  70. package/dist/_typedoc/Modal/Modal.types.json +213 -70
  71. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  72. package/dist/_typedoc/Notation/Notation.types.json +6 -6
  73. package/dist/_typedoc/NumberInput/NumberInput.types.json +38 -38
  74. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +76 -34
  75. package/dist/_typedoc/PageLayout/PageLayout.types.json +32 -32
  76. package/dist/_typedoc/Pagination/Pagination.types.json +9 -9
  77. package/dist/_typedoc/Panel/Panel.types.json +29 -29
  78. package/dist/_typedoc/Pill/Pill.types.json +1 -1
  79. package/dist/_typedoc/PillSelect/PillSelect.types.json +46 -46
  80. package/dist/_typedoc/Popover/Popover.types.json +60 -38
  81. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +8 -8
  82. package/dist/_typedoc/RadioButton/RadioButton.types.json +8 -8
  83. package/dist/_typedoc/Required/Required.types.json +5 -5
  84. package/dist/_typedoc/Search/Search.types.json +18 -18
  85. package/dist/_typedoc/Section/Section.types.json +16 -16
  86. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +26 -26
  87. package/dist/_typedoc/Select/Select.types.json +32 -32
  88. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  89. package/dist/_typedoc/Spinner/Spinner.types.json +11 -11
  90. package/dist/_typedoc/Switch/Switch.types.json +5 -5
  91. package/dist/_typedoc/Table/Table.types.json +116 -116
  92. package/dist/_typedoc/Tabs/Tabs.types.json +21 -21
  93. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +70 -10
  94. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  95. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  96. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +3 -3
  97. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +21 -21
  98. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  99. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  100. package/dist/_typedoc/Tile/Tile.types.json +42 -42
  101. package/dist/_typedoc/Toast/Toast.types.json +6 -6
  102. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +3 -3
  103. package/dist/_typedoc/Token/Token.types.json +4 -4
  104. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +14 -14
  105. package/dist/_typedoc/Tooltip/Tooltip.types.json +17 -17
  106. package/dist/_typedoc/Tree/Tree.types.json +88 -88
  107. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  108. package/dist/_typedoc/Typography/Typography.types.json +8 -8
  109. package/dist/_typedoc/_utils/types.json +5 -5
  110. package/dist/_utils/polymorphic.d.ts +4 -4
  111. package/dist/_utils/types.d.ts +0 -3
  112. package/package.json +3 -2
@@ -1,3 +1,18 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { ariaHideOutside } from '@react-aria/overlays';
13
+ import { useId, useLabels } from '@react-aria/utils';
14
+ import React from 'react';
15
+ var emptyObj = {};
1
16
  var returnEmpty = function () { return ({}); };
2
17
  var a11yPresets = {
3
18
  haspopup: {
@@ -55,4 +70,199 @@ export function getA11yPreset(role) {
55
70
  };
56
71
  }
57
72
  }
73
+ /**
74
+ * Manages labelling for an element and the other DOM. Defaults an ID for `aria-labelledby` usage.
75
+ *
76
+ * When `aria-label` and `aria-labelledby` both exist, it combines them into `aria-labelledby` for a screen reader chain.
77
+ * @link [W3 naming with aria-labelledby](https://www.w3.org/WAI/ARIA/apg/practices/names-and-descriptions/#naming_with_aria-labelledby)
78
+ */
79
+ export function useLabelled(props) {
80
+ var _a = props || emptyObj, ariaDescribedby = _a["aria-describedby"], ariaDetails = _a["aria-details"], ariaLabelledby = _a["aria-labelledby"], ariaLabel = _a["aria-label"], id = _a.id;
81
+ var ariaLabelOnly = ariaLabel && !ariaLabelledby;
82
+ // Generate an ID. We want to use this unless they are using only aria-label
83
+ var labelledId = useId(ariaLabelledby);
84
+ // Merges aria-label and aria-labelledby into aria-labelledby when both exist
85
+ var widgetId = useId(id);
86
+ var fieldProps = useLabels({
87
+ 'aria-label': ariaLabel,
88
+ 'aria-labelledby': ariaLabelOnly ? undefined : labelledId,
89
+ id: widgetId,
90
+ });
91
+ return {
92
+ descriptionProps: { id: ariaDescribedby },
93
+ labelProps: { id: ariaLabelOnly ? undefined : labelledId },
94
+ widgetProps: __assign(__assign({}, fieldProps), { 'aria-describedby': ariaDescribedby, 'aria-details': ariaDetails }),
95
+ };
96
+ }
97
+ /**
98
+ * Cover the label links for the trigger (button), the popup element (dialog), and the popup element title (heading).
99
+ * Similar to [React Aria useOverlayTrigger](https://github.com/adobe/react-spectrum/blob/main/packages/%40react-aria/overlays/src/useOverlayTrigger.ts)
100
+ * but with element title support.
101
+ * @link [MDN aria-haspopup](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-haspopup)
102
+ */
103
+ export function useLabelledPopup(_a) {
104
+ var _b, _c, _d, _e;
105
+ var ariaDescribedby = _a["aria-describedby"], ariaDetails = _a["aria-details"], ariaLabelledby = _a["aria-labelledby"], ariaLabel = _a["aria-label"], id_ = _a.id, isOpen = _a.isOpen, _f = _a.type, type = _f === void 0 ? 'button' : _f, popupRole = _a.popupRole, popupId_ = _a.popupId;
106
+ /** Web spec default for aria-haspopup=true is menu, unless element has role combobox, which have an implicit aria-haspopup value of listbox. */
107
+ // const popupRole = popupRole_ || type === 'combobox' ? 'listbox' : 'menu'
108
+ var id = useId(id_);
109
+ var popupId = useId(popupId_);
110
+ var presetArgs = {
111
+ isVisible: isOpen,
112
+ role: popupRole,
113
+ overlayId: popupId,
114
+ };
115
+ var triggerProps = (_c = (_b = getA11yPreset(popupRole)).getTriggerProps) === null || _c === void 0 ? void 0 : _c.call(_b, presetArgs);
116
+ var overlayProps = (_e = (_d = getA11yPreset(popupRole)).getOverlayProps) === null || _e === void 0 ? void 0 : _e.call(_d, presetArgs);
117
+ var _g = useLabelled({
118
+ 'aria-describedby': ariaDescribedby,
119
+ 'aria-details': ariaDetails,
120
+ 'aria-labelledby': ariaLabelledby,
121
+ 'aria-label': ariaLabel,
122
+ id: id,
123
+ }), labelProps = _g.labelProps, widgetProps = _g.widgetProps;
124
+ return {
125
+ labelProps: labelProps,
126
+ popupProps: __assign(__assign({ role: popupRole }, widgetProps), overlayProps),
127
+ triggerProps: triggerProps,
128
+ };
129
+ }
130
+ /**
131
+ * For dialog experiences:
132
+ * - Has role dialog and aria linked title props
133
+ * - Focus management props to work with FocusScope
134
+ *
135
+ * For modal dialog experiences (full screen locked experiences):
136
+ * - Hides old and new content outside with aria-hidden with ariaHideOutside (like aria-modal)
137
+ * - (it will in breaking) Prevent scroll
138
+ *
139
+ * For either experiences, you still MUST support:
140
+ * - have Escape key to close (It should!)
141
+ * - have click outside, like scrim click
142
+ *
143
+ * _More about 'modal dialog' and `isModal` not using `aria-modal`:_
144
+ * Setting aria-modal="true" tells assistive technologies to let the user know the ability to interact with,
145
+ * or access other content on the page requires the modal dialog to be closed or otherwise lose focus.
146
+ * Modal dialogs are when content is displayed and the user's interaction is limited to only that section until it is dismissed.
147
+ * [MDN aria modal](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-modal).
148
+ * To support the most, like Narrator in Edge, Core React uses `ariaHideOutside` to set `aria-hidden` on
149
+ * all elements outside the dialog, and **all elements outside added while opened**, so the dialog will act as a
150
+ * _modal_ even without `aria-modal` on the dialog itself. See Future Considerations below.
151
+ * [Screen Reader aria modal support table](https://a11ysupport.io/tech/aria/aria-modal_attribute) - [MS Narrator Edge aria modal support](https://a11ysupport.io/tests/apg__modal-dialog-example/aria__aria-modal_attribute/convey_presence/narrator/edge)
152
+ * _Future Considerations:_ Replace ariaHideOutside with aria-modal="true".
153
+ * Using aria-modal, then we would need to involve Portal and so tooltips
154
+ * or Toasts could mount within the visible aria-modal container.
155
+ */
156
+ export function useModalDialogLike(_a) {
157
+ var ariaDescribedby = _a["aria-describedby"], ariaDetails = _a["aria-details"], ariaLabelledby = _a["aria-labelledby"], ariaLabel = _a["aria-label"], id = _a.id, isModal = _a.isModal, isOpen = _a.isOpen,
158
+ // @ts-expect-error
159
+ ref = _a.ref, _b = _a.role, role = _b === void 0 ? 'dialog' : _b;
160
+ var _c = useLabelled({
161
+ 'aria-describedby': ariaDescribedby,
162
+ 'aria-details': ariaDetails,
163
+ 'aria-labelledby': ariaLabelledby,
164
+ 'aria-label': ariaLabel,
165
+ }), labelProps = _c.labelProps, widgetProps = _c.widgetProps;
166
+ var dialogProps = __assign(__assign({}, widgetProps), { id: id, role: role, tabIndex: -1 });
167
+ // usePreventScroll({
168
+ // isDisabled: isModal ? !isOpen : true,
169
+ // })
170
+ // Fills aria-modal=true
171
+ React.useLayoutEffect(function () {
172
+ if (isModal && isOpen && ref.current) {
173
+ // Could add additional visible element refs here
174
+ return ariaHideOutside([ref.current]);
175
+ }
176
+ }, [isModal, isOpen, ref]);
177
+ return {
178
+ dialogProps: dialogProps,
179
+ labelProps: labelProps,
180
+ focusScopeProps: {
181
+ autoFocus: true,
182
+ contain: true,
183
+ restoreFocus: true,
184
+ },
185
+ };
186
+ }
187
+ /**
188
+ * Takes many roles and determines props necessary for DOM/components.
189
+ * **Side effect of role="dialog"**, current and any content added later
190
+ * outside of the element (like by portals) will get `aria-hidden=true`
191
+ * to replace the `aria-modal=true` `inert` nature.
192
+ * @see useModalDialogLike */
193
+ export function useOverlayTriggerA11y(_a) {
194
+ var alwaysAriaVisible = _a.alwaysAriaVisible, ariaDescribedby = _a["aria-describedby"], ariaDetails = _a["aria-details"], ariaLabelledby = _a["aria-labelledby"], ariaLabel = _a["aria-label"],
195
+ // can we remove this? have it role based? be optional?
196
+ canPropOverlayUp = _a.canPropOverlayUp, id_ = _a.id, isOpen = _a.isOpen, role = _a.role;
197
+ var isDialog = role === 'dialog';
198
+ var id = useId(id_);
199
+ var _b = getA11yPreset(role), getTriggerProps = _b.getTriggerProps, getOverlayProps = _b.getOverlayProps;
200
+ var triggerProps = getTriggerProps === null || getTriggerProps === void 0 ? void 0 : getTriggerProps({
201
+ isVisible: isOpen,
202
+ role: role,
203
+ overlayId: id,
204
+ });
205
+ var overlayA11yProps = getOverlayProps === null || getOverlayProps === void 0 ? void 0 : getOverlayProps({
206
+ isVisible: isOpen,
207
+ role: role,
208
+ overlayId: id,
209
+ });
210
+ var wrapperA11yProps = !canPropOverlayUp ? overlayA11yProps : emptyObj;
211
+ var overlayProps = canPropOverlayUp ? overlayA11yProps : emptyObj;
212
+ var _c = useModalDialogLike({
213
+ 'aria-describedby': ariaDescribedby,
214
+ 'aria-details': ariaDetails,
215
+ 'aria-labelledby': ariaLabelledby,
216
+ 'aria-label': ariaLabel,
217
+ id: id,
218
+ isModal: false,
219
+ isOpen: isOpen,
220
+ }), dialogProps = _c.dialogProps, labelProps = _c.labelProps, focusScopeProps = _c.focusScopeProps;
221
+ /** This is a code side-effect from ariaHideOutside hiding everthing */
222
+ var portalProps = role === 'tooltip' || alwaysAriaVisible // || !role
223
+ ? { 'data-react-aria-top-layer': true, 'data-live-announcer': true }
224
+ : emptyObj;
225
+ /**
226
+ * If it is a dialog, we can merge the dialog props with any haspopup props
227
+ */
228
+ var wrapperFinalProps = isDialog
229
+ ? __assign(__assign({}, wrapperA11yProps), dialogProps) : wrapperA11yProps;
230
+ /**
231
+ * If it is a dialog, we have opinions on `FocusScope` props.
232
+ */
233
+ var focusScopeFinalProps = isDialog
234
+ ? focusScopeProps
235
+ : emptyObj;
236
+ return {
237
+ focusScopeProps: focusScopeFinalProps,
238
+ labelProps: labelProps,
239
+ overlayProps: overlayProps,
240
+ portalProps: portalProps,
241
+ triggerProps: triggerProps,
242
+ wrapperProps: wrapperFinalProps,
243
+ };
244
+ }
245
+ // WIP Example combobox
246
+ // function useCombox({
247
+ // controls,
248
+ // isOpen = false,
249
+ // }: {
250
+ // controls: 'dialog' | 'menu' | 'listbox'
251
+ // isOpen: boolean
252
+ // }) {
253
+ // const { labelProps, popupProps, triggerProps } = useLabelledPopup({
254
+ // role: controls,
255
+ // type: 'combobox',
256
+ // isOpen,
257
+ // })
258
+ // dispatch between elements.
259
+ // NOTE combobox has two labels, that could be different
260
+ // one for the trigger input (typically the form label)
261
+ // second for the thing it controls (listbox, dialog)
262
+ // - label id=1
263
+ // - input role='combobox' aria-labelledby=1
264
+ // - div role={controls} aria-label
265
+ // Also, any icon only buttons like clear or open should have a
266
+ // label and -1 tabindex. No nested interactive roles.
267
+ // }
58
268
  //# sourceMappingURL=a11yPresets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"a11yPresets.js","sourceRoot":"","sources":["../../src/OverlayTrigger/a11yPresets.ts"],"names":[],"mappings":"AAGA,IAAM,WAAW,GAAiB,cAAM,OAAA,CAAC,EAAE,CAAC,EAAJ,CAAI,CAAA;AAQ5C,IAAM,WAAW,GAMb;IACF,QAAQ,EAAE;QACR,eAAe,EAAE,UAAC,EAAmB;gBAAjB,IAAI,UAAA,EAAE,SAAS,eAAA;YAAO,OAAA,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,IAAI,MAAA;aACL,CAAC;QAHwC,CAGxC;QACF,eAAe,EAAE,UAAC,EAA8B;gBAA5B,IAAI,UAAA,EAAE,SAAS,eAAA,EAAE,SAAS,eAAA;YAAO,OAAA,CAAC;gBACpD,eAAe,EAAE,SAAS;gBAC1B,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;gBAClD,eAAe,EAAE,IAAqC;aACvD,CAAC;QAJmD,CAInD;KACH;IACD,OAAO,EAAE;QACP,eAAe,EAAE,UAAC,EAAa;gBAAX,SAAS,eAAA;YAAO,OAAA,CAAC;gBACnC,IAAI,EAAE,SAAS;gBACf,EAAE,EAAE,SAAS;aACd,CAAC;QAHkC,CAGlC;QACF,eAAe,EAAE,UAAC,EAAwB;gBAAtB,SAAS,eAAA,EAAE,SAAS,eAAA;YACtC,OAAA,SAAS;gBACP,CAAC,CAAC;oBACE,kBAAkB,EAAE,SAAS;iBAC9B;gBACH,CAAC,CAAC,EAAE;QAJN,CAIM;KACT;CACF,CAAA;AAED,MAAM,UAAU,aAAa,CAAC,IAAyB;IACrD,QAAQ,IAAI,EAAE;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,MAAM;YACT,OAAO,WAAW,CAAC,QAAQ,CAAA;QAC7B,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,OAAO,CAAA;QAC5B,KAAK,MAAM;YACT,OAAO;gBACL,eAAe,EAAE,CAAC,cAAM,OAAA,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAlB,CAAkB,CAAiB;gBAC3D,eAAe,EAAE,WAAW;aAC7B,CAAA;QACH;YACE,OAAO;gBACL,eAAe,EAAE,WAAW;gBAC5B,eAAe,EAAE,WAAW;aAC7B,CAAA;KACJ;AACH,CAAC"}
1
+ {"version":3,"file":"a11yPresets.js","sourceRoot":"","sources":["../../src/OverlayTrigger/a11yPresets.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,28 @@
1
1
  import React from 'react';
2
2
  import { DivAttributes } from '../_utils/types';
3
- import { PopoverContentProps, PopoverProps } from './Popover.types';
4
- export declare const Popover: React.ForwardRefExoticComponent<PopoverProps & React.RefAttributes<HTMLElement>> & {
3
+ import { PopoverContentProps, PopoverProps, PopoverRole } from './Popover.types';
4
+ /**
5
+
6
+ We use popovers to display more of an item’s information or details on hover.
7
+ This may be used to show additional fields in an item’s form that aren’t shown
8
+ by default in the UI. Oftentimes, there will be a visual queue to indicate that
9
+ more information is available.
10
+
11
+ Do not use popovers to display large amounts of information, perform data
12
+ entry, or use as a replacement for an overflow, menu, or modal.
13
+
14
+ If you want to show descriptive / educational information about an item,
15
+ use a tooltip.
16
+
17
+ @since 10.19.0
18
+
19
+ @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-popover--demo)
20
+
21
+ @see [Design Guidelines](https://design.procore.com/popover)
22
+
23
+ */
24
+ declare function PopoverInner<Role extends PopoverRole>({ children, initialIsVisible, restoreFocusOnHide, placement, overlay, overlayRef, role, ...props }: PopoverProps<Role>, ref: React.ForwardedRef<HTMLElement>): JSX.Element;
25
+ export declare const Popover: (<Role extends PopoverRole>(props: PopoverProps<Role>) => ReturnType<typeof PopoverInner>) & {
5
26
  Content: React.ForwardRefExoticComponent<DivAttributes & PopoverContentProps & React.RefAttributes<HTMLDivElement>>;
6
27
  };
28
+ export {};
@@ -50,11 +50,13 @@ var Content = React.forwardRef(function Content(_a, ref) {
50
50
  @see [Design Guidelines](https://design.procore.com/popover)
51
51
 
52
52
  */
53
- var Popover_ = React.forwardRef(function Popover(_a, ref) {
54
- var children = _a.children, _b = _a.initialIsVisible, initialIsVisible = _b === void 0 ? false : _b, _c = _a.placement, placement = _c === void 0 ? 'top' : _c, overlay = _a.overlay, overlayRef = _a.overlayRef, props = __rest(_a, ["children", "initialIsVisible", "placement", "overlay", "overlayRef"]);
53
+ function PopoverInner(_a, ref) {
54
+ var children = _a.children, _b = _a.initialIsVisible, initialIsVisible = _b === void 0 ? false : _b, _c = _a.restoreFocusOnHide, restoreFocusOnHide = _c === void 0 ? false : _c, _d = _a.placement, placement = _d === void 0 ? 'top' : _d, overlay = _a.overlay, overlayRef = _a.overlayRef, role = _a.role, props = __rest(_a, ["children", "initialIsVisible", "restoreFocusOnHide", "placement", "overlay", "overlayRef", "role"]);
55
55
  var overlayNode = isReactElement(overlay) ? (React.cloneElement(overlay, { placement: placement })) : (React.createElement(React.Fragment, null));
56
- return (React.createElement(OverlayTrigger, __assign({}, __assign(__assign({}, props), { initialIsVisible: initialIsVisible, overlay: overlayNode, placement: placement, ref: ref, restoreFocusOnHide: false, shrinkOverlay: true, arrow: true, overlayRef: overlayRef })), children));
57
- });
56
+ return (React.createElement(OverlayTrigger, __assign({}, __assign(__assign({}, props), { initialIsVisible: initialIsVisible, overlay: overlayNode, placement: placement, role: role, ref: ref, restoreFocusOnHide: restoreFocusOnHide, shrinkOverlay: true, arrow: true, overlayRef: overlayRef })), children));
57
+ }
58
+ var Popover_ = React.forwardRef(PopoverInner);
59
+ // @ts-expect-error
58
60
  Popover_.displayName = 'Popover';
59
61
  Content.displayName = 'Popover.Content';
60
62
  export var Popover = addSubcomponents({ Content: Content }, Popover_);
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/Popover/Popover.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAGtE,IAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAG9B,SAAS,OAAO,CAChB,EAAwD,EACxD,GAAG;IADD,IAAA,QAAQ,cAAA,EAAE,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EAAE,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EAAK,KAAK,cAAtD,kCAAwD,CAAF;IAGtD,OAAO,CACL,oBAAC,aAAa,IAAC,GAAG,EAAE,GAAG;QACrB,oBAAC,oBAAoB,eAAK,KAAK,cAAU,KAAK,gBAAc,SAAS,KAClE,QAAQ,CACY,CACT,CACjB,CAAA;AACH,CAAC,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,IAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAA4B,SAAS,OAAO,CAC3E,EAOC,EACD,GAAG;IAPD,IAAA,QAAQ,cAAA,EACR,wBAAwB,EAAxB,gBAAgB,mBAAG,KAAK,KAAA,EACxB,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,OAAO,aAAA,EACP,UAAU,gBAAA,EACP,KAAK,cANV,sEAOC,CADS;IAIV,IAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAC5C,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,SAAS,WAAA,EAAE,CAAC,CAC3C,CAAC,CAAC,CAAC,CACF,oBAAC,KAAK,CAAC,QAAQ,OAAG,CACnB,CAAA;IAED,OAAO,CACL,oBAAC,cAAc,qCAER,KAAK,KACR,gBAAgB,kBAAA,EAChB,OAAO,EAAE,WAAW,EACpB,SAAS,WAAA,EACT,GAAG,KAAA,EACH,kBAAkB,EAAE,KAAK,EACzB,aAAa,EAAE,IAAI,EACnB,KAAK,EAAE,IAAI,EACX,UAAU,YAAA,MAGX,QAAQ,CACM,CAClB,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAA;AAEhC,OAAO,CAAC,WAAW,GAAG,iBAAiB,CAAA;AAEvC,MAAM,CAAC,IAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,OAAO,SAAA,EAAE,EAAE,QAAQ,CAAC,CAAA"}
1
+ {"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/Popover/Popover.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAGtE,IAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAG9B,SAAS,OAAO,CAChB,EAAwD,EACxD,GAAG;IADD,IAAA,QAAQ,cAAA,EAAE,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EAAE,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EAAK,KAAK,cAAtD,kCAAwD,CAAF;IAGtD,OAAO,CACL,oBAAC,aAAa,IAAC,GAAG,EAAE,GAAG;QACrB,oBAAC,oBAAoB,eAAK,KAAK,cAAU,KAAK,gBAAc,SAAS,KAClE,QAAQ,CACY,CACT,CACjB,CAAA;AACH,CAAC,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,SAAS,YAAY,CACnB,EASqB,EACrB,GAAoC;IATlC,IAAA,QAAQ,cAAA,EACR,wBAAwB,EAAxB,gBAAgB,mBAAG,KAAK,KAAA,EACxB,0BAA0B,EAA1B,kBAAkB,mBAAG,KAAK,KAAA,EAC1B,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,IAAI,UAAA,EACD,KAAK,cARV,oGASC,CADS;IAIV,IAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAC5C,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,SAAS,WAAA,EAAE,CAAC,CAC3C,CAAC,CAAC,CAAC,CACF,oBAAC,KAAK,CAAC,QAAQ,OAAG,CACnB,CAAA;IAED,OAAO,CACL,oBAAC,cAAc,qCAER,KAAK,KACR,gBAAgB,kBAAA,EAChB,OAAO,EAAE,WAAW,EACpB,SAAS,WAAA,EACT,IAAI,MAAA,EACJ,GAAG,KAAA,EACH,kBAAkB,oBAAA,EAClB,aAAa,EAAE,IAAI,EACnB,KAAK,EAAE,IAAI,EACX,UAAU,YAAA,MAGX,QAAQ,CACM,CAClB,CAAA;AACH,CAAC;AAED,IAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAEV,CAAA;AAEpC,mBAAmB;AACnB,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAA;AAEhC,OAAO,CAAC,WAAW,GAAG,iBAAiB,CAAA;AAEvC,MAAM,CAAC,IAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,OAAO,SAAA,EAAE,EAAE,QAAQ,CAAC,CAAA"}
@@ -2,7 +2,7 @@
2
2
  import { OverlayTriggerRef } from '../OverlayTrigger/OverlayTrigger.types';
3
3
  import { TriggerVariant } from '../_hooks/Trigger';
4
4
  import { Placement } from '../_utils/placement';
5
- import { Props } from '../_utils/types';
5
+ import { AriaLabelled, Props } from '../_utils/types';
6
6
  export interface PopoverContentProps {
7
7
  /**
8
8
  * @since 10.19.0
@@ -13,7 +13,8 @@ export interface PopoverContentProps {
13
13
  */
14
14
  placement?: Placement;
15
15
  }
16
- export interface PopoverProps extends Props {
16
+ export declare type PopoverRole = 'dialog' | undefined;
17
+ export interface PopoverBaseProps<Role extends PopoverRole = undefined> extends Props {
17
18
  /**
18
19
  * Whether to show the overlay on initial render
19
20
  * @defaultValue false
@@ -33,6 +34,13 @@ export interface PopoverProps extends Props {
33
34
  * @since 10.19.0
34
35
  */
35
36
  placement?: Placement;
37
+ /**
38
+ * Return focus to trigger after the closing popover modal dialog
39
+ * @a11y Should be set to true.
40
+ * @defaultValue false
41
+ * @since 11.8.0
42
+ */
43
+ restoreFocusOnHide?: boolean;
36
44
  /**
37
45
  * The event to trigger the overlay
38
46
  * @defaultValue click
@@ -44,4 +52,9 @@ export interface PopoverProps extends Props {
44
52
  * @since 11.2.0
45
53
  */
46
54
  overlayRef?: React.Ref<OverlayTriggerRef>;
55
+ /**
56
+ * @since 11.11.0
57
+ */
58
+ role?: Role;
47
59
  }
60
+ export declare type PopoverProps<Role extends PopoverRole = undefined> = Role extends 'dialog' ? AriaLabelled<PopoverBaseProps<'dialog'>> : PopoverBaseProps<undefined>;
@@ -5,4 +5,4 @@ import { PortalProps } from './Portal.types';
5
5
  * @deprecated Intended for internal library development.
6
6
  * @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/coverage-portal--defaults)
7
7
  */
8
- export declare function Portal({ children, container, }: PortalProps): React.ReactPortal;
8
+ export declare function Portal({ children, container, ...props }: PortalProps): React.ReactPortal;
@@ -1,3 +1,25 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
1
23
  import React from 'react';
2
24
  import ReactDOM from 'react-dom';
3
25
  import { useZIndexContext } from '../_hooks/ZIndex';
@@ -8,8 +30,8 @@ import { StyledPortal } from './Portal.styles';
8
30
  * @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/coverage-portal--defaults)
9
31
  */
10
32
  export function Portal(_a) {
11
- var children = _a.children, container = _a.container;
33
+ var children = _a.children, container = _a.container, props = __rest(_a, ["children", "container"]);
12
34
  var zIndexCtx = useZIndexContext();
13
- return ReactDOM.createPortal(React.createElement(StyledPortal, { style: { zIndex: zIndexCtx.value } }, children), container || document.body);
35
+ return ReactDOM.createPortal(React.createElement(StyledPortal, __assign({}, props, { style: { zIndex: zIndexCtx.value } }), children), container || document.body);
14
36
  }
15
37
  //# sourceMappingURL=Portal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Portal.js","sourceRoot":"","sources":["../../src/Portal/Portal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C;;;;GAIG;AACH,MAAM,UAAU,MAAM,CAAC,EAGT;QAFZ,QAAQ,cAAA,EACR,SAAS,eAAA;IAET,IAAM,SAAS,GAAG,gBAAgB,EAAE,CAAA;IAEpC,OAAO,QAAQ,CAAC,YAAY,CAC1B,oBAAC,YAAY,IAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,IAAG,QAAQ,CAAgB,EAC3E,SAAS,IAAI,QAAQ,CAAC,IAAI,CAC3B,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Portal.js","sourceRoot":"","sources":["../../src/Portal/Portal.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C;;;;GAIG;AACH,MAAM,UAAU,MAAM,CAAC,EAIT;IAHZ,IAAA,QAAQ,cAAA,EACR,SAAS,eAAA,EACN,KAAK,cAHa,yBAItB,CADS;IAER,IAAM,SAAS,GAAG,gBAAgB,EAAE,CAAA;IAEpC,OAAO,QAAQ,CAAC,YAAY,CAC1B,oBAAC,YAAY,eAAK,KAAK,IAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,KACxD,QAAQ,CACI,EACf,SAAS,IAAI,QAAQ,CAAC,IAAI,CAC3B,CAAA;AACH,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import React from 'react';
2
+ import { HeadingProps } from '../Semantic/Semantic.types';
2
3
  import { SectionProps, SectionProviderProps } from './Section.types';
3
4
  export declare const LevelContext: React.Context<number>;
5
+ export declare function Heading({ level: level_, ...props }: HeadingProps & {
6
+ level?: number;
7
+ }): JSX.Element;
4
8
  export declare const SectionProvider: ({ children }: SectionProviderProps) => JSX.Element;
5
9
  /**
6
10
  * @deprecatedSince 11
@@ -25,12 +25,9 @@ import cx from 'classnames';
25
25
  import React from 'react';
26
26
  import { ulid } from 'ulid';
27
27
  import { Button } from '../Button/Button';
28
- import { H2, H3 } from '../Semantic/Semantic';
28
+ import { getHeadingComponent } from '../Semantic/Semantic';
29
29
  import { Title } from '../Title/Title';
30
30
  import { sectionClassnames, StyledSection, StyledSectionCollapseHeading, StyledSectionContentRegion, StyledSectionHeader, StyledSectionInner, StyledTitle, } from './Section.styles';
31
- function H4(props) {
32
- return React.createElement(H3, __assign({ as: "h4" }, props));
33
- }
34
31
  var isFunction = function (obj) { return typeof obj === 'function'; };
35
32
  // Header levels start at level 2
36
33
  export var LevelContext = React.createContext(2);
@@ -39,6 +36,12 @@ var SectionContext = React.createContext({
39
36
  setSection: function () { },
40
37
  toggleSection: function () { },
41
38
  });
39
+ export function Heading(_a) {
40
+ var level_ = _a.level, props = __rest(_a, ["level"]);
41
+ var level = React.useContext(LevelContext);
42
+ var H = getHeadingComponent(level_ || level);
43
+ return React.createElement(H, __assign({}, props));
44
+ }
42
45
  export var SectionProvider = function (_a) {
43
46
  var children = _a.children;
44
47
  var _b = React.useState({}), open = _b[0], setSectionsOpen = _b[1];
@@ -86,7 +89,6 @@ export var Section = React.forwardRef(function Section(_a, ref) {
86
89
  headingTextId: "heading-".concat(ulid()),
87
90
  };
88
91
  }, []), contentRegionId = _d.contentRegionId, headingTextId = _d.headingTextId;
89
- var Heading = level === 2 ? H2 : level === 3 ? H3 : H4;
90
92
  var expandClosed = !open || !children;
91
93
  var divide = level >= 3 || !heading;
92
94
  var hasHeader = heading || actions;
@@ -101,7 +103,11 @@ export var Section = React.forwardRef(function Section(_a, ref) {
101
103
  expandId ? (React.createElement(StyledSectionCollapseHeading, { "aria-labelledby": headingTextId, "aria-level": level, role: "heading" },
102
104
  React.createElement(Button, { "aria-controls": contentRegionId, "aria-expanded": open, "aria-labelledby": headingTextId, icon: open ? React.createElement(ChevronDown, null) : React.createElement(ChevronRight, null), onClick: toggleOpen, variant: "tertiary" }))) : null,
103
105
  React.createElement(StyledTitle, null,
104
- React.createElement(Title.Text, null, heading && (React.createElement(Heading, { "aria-hidden": expandId ? true : false, id: headingTextId }, heading))),
106
+ React.createElement(Title.Text, null, heading && (React.createElement(Heading, { "aria-hidden": expandId ? true : false, id: headingTextId,
107
+ // Pass level since Heading component renders
108
+ // under the incremented (level + 1) LevelProvider.
109
+ // Alternative, render Heading as a variable outside of return.
110
+ level: level }, heading))),
105
111
  React.createElement(Title.Subtext, null, subtext),
106
112
  React.createElement(Title.Pills, null, pills),
107
113
  React.createElement(Title.Actions, null, isFunction(actions)
@@ -1 +1 @@
1
- {"version":3,"file":"Section.js","sourceRoot":"","sources":["../../src/Section/Section.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Section.js","sourceRoot":"","sources":["../../src/Section/Section.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACpE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,GACZ,MAAM,kBAAkB,CAAA;AAOzB,IAAM,UAAU,GAAG,UAAC,GAAY,IAAc,OAAA,OAAO,GAAG,KAAK,UAAU,EAAzB,CAAyB,CAAA;AAEvE,iCAAiC;AACjC,MAAM,CAAC,IAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;AAElD,IAAM,cAAc,GAAG,KAAK,CAAC,aAAa,CAAoB;IAC5D,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,cAAO,CAAC;IACpB,aAAa,EAAE,cAAO,CAAC;CACxB,CAAC,CAAA;AAEF,MAAM,UAAU,OAAO,CAAC,EAGY;IAFlC,IAAO,MAAM,WAAA,EACV,KAAK,cAFc,SAGvB,CADS;IAER,IAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAC5C,IAAM,CAAC,GAAG,mBAAmB,CAAC,MAAM,IAAI,KAAK,CAAC,CAAA;IAC9C,OAAO,oBAAC,CAAC,eAAK,KAAK,EAAI,CAAA;AACzB,CAAC;AAED,MAAM,CAAC,IAAM,eAAe,GAAG,UAAC,EAAkC;QAAhC,QAAQ,cAAA;IAClC,IAAA,KAA0B,KAAK,CAAC,QAAQ,CAE3C,EAAE,CAAC,EAFC,IAAI,QAAA,EAAE,eAAe,QAEtB,CAAA;IAEN,IAAM,aAAa,GAAuC,UAAC,EAAE;QAC3D,OAAA,eAAe,CAAC,UAAC,IAAI;;YAAK,OAAA,uBACrB,IAAI,gBACN,EAAE,IAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OACf;QAHwB,CAGxB,CAAC;IAHH,CAGG,CAAA;IAEL,IAAM,UAAU,GAAoC,UAAC,EAAE,EAAE,IAAI;QAC3D,OAAA,eAAe,CAAC,UAAC,IAAI;;YAAK,OAAA,uBACrB,IAAI,gBACN,EAAE,IAAG,IAAI,OACV;QAHwB,CAGxB,CAAC;IAHH,CAGG,CAAA;IAEL,OAAO,CACL,oBAAC,cAAc,CAAC,QAAQ,IACtB,KAAK,EAAE;YACL,IAAI,MAAA;YACJ,aAAa,eAAA;YACb,UAAU,YAAA;SACX,IAEA,QAAQ,CACe,CAC3B,CAAA;AACH,CAAC,CAAA;AACD;;;GAGG;AACH,MAAM,CAAC,IAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CACrC,SAAS,OAAO,CACd,EAWC,EACD,GAAG;;IAXD,IAAA,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,qBAAoB,EAApB,aAAa,mBAAG,IAAI,KAAA,EACpB,KAAK,WAAA,EACL,OAAO,aAAA,EACP,MAAM,YAAA,EACH,KAAK,cAVV,0GAWC,CADS;IAIV,IAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAE5C,IAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;IACjD,IAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC;QACnC,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;SACjC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IACd,IAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAEtD,KAAK,CAAC,SAAS,CAAC;QACd,IAAI,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;YAClC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAA;SAC7C;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEA,IAAA,KAAqC,KAAK,CAAC,OAAO,CAAC;QACvD,OAAO;YACL,eAAe,EAAE,kBAAW,IAAI,EAAE,CAAE;YACpC,aAAa,EAAE,kBAAW,IAAI,EAAE,CAAE;SACnC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,EALE,eAAe,qBAAA,EAAE,aAAa,mBAKhC,CAAA;IAEN,IAAM,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAA;IACvC,IAAM,MAAM,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;IACrC,IAAM,SAAS,GAAG,OAAO,IAAI,OAAO,CAAA;IAEpC,OAAO,CACL,oBAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAG,CAAC;QACrC,oBAAC,aAAa,aACZ,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,SAAS;gBACrB,GAAC,iBAAiB,CAAC,MAAM,IAAG,MAAM;gBAClC,GAAC,iBAAiB,CAAC,cAAc,IAAG,CAAC,OAAO;gBAC5C,GAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAG,OAAO,IAAI,KAAK;oBAClD,IACE,KAAK;YAET,oBAAC,kBAAkB;gBAChB,SAAS,CAAC,CAAC,CAAC,CACX,oBAAC,mBAAmB;oBACjB,QAAQ,CAAC,CAAC,CAAC,CACV,oBAAC,4BAA4B,uBACV,aAAa,gBAClB,KAAK,EACjB,IAAI,EAAC,SAAS;wBAEd,oBAAC,MAAM,qBACU,eAAe,mBACf,IAAI,qBACF,aAAa,EAC9B,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAC,WAAW,OAAG,CAAC,CAAC,CAAC,oBAAC,YAAY,OAAG,EAC/C,OAAO,EAAE,UAAU,EACnB,OAAO,EAAC,UAAU,GAClB,CAC2B,CAChC,CAAC,CAAC,CAAC,IAAI;oBACR,oBAAC,WAAW;wBACV,oBAAC,KAAK,CAAC,IAAI,QACR,OAAO,IAAI,CACV,oBAAC,OAAO,mBACO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EACpC,EAAE,EAAE,aAAa;4BACjB,6CAA6C;4BAC7C,mDAAmD;4BACnD,+DAA+D;4BAC/D,KAAK,EAAE,KAAK,IAEX,OAAO,CACA,CACX,CACU;wBACb,oBAAC,KAAK,CAAC,OAAO,QAAE,OAAO,CAAiB;wBACxC,oBAAC,KAAK,CAAC,KAAK,QAAE,KAAK,CAAe;wBAClC,oBAAC,KAAK,CAAC,OAAO,QACX,UAAU,CAAC,OAAO,CAAC;4BAClB,CAAC,CAAE,OAAoB,CAAC,EAAE,IAAI,MAAA,EAAE,CAAC;4BACjC,CAAC,CAAC,OAAO,CACG;wBAChB,oBAAC,KAAK,CAAC,MAAM,QAAE,MAAM,CAAgB,CACzB,CACM,CACvB,CAAC,CAAC,CAAC,IAAI;gBACR,oBAAC,0BAA0B,mBACZ,CAAC,IAAI,qBACD,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EACpD,EAAE,EAAE,eAAe,EACnB,IAAI,EAAC,QAAQ,aACJ,YAAY,eACV,CAAC,SAAS,IAEpB,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CACI,CACV,CACP,CACM,CACzB,CAAA;AACH,CAAC,CACF,CAAA;AAED,OAAO,CAAC,WAAW,GAAG,SAAS,CAAA"}
@@ -3,6 +3,14 @@ import { HeadingProps } from './Semantic.types';
3
3
  export declare const H1: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
4
4
  export declare const H2: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
5
5
  export declare const H3: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
6
+ export declare const H4: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
7
+ export declare const H5: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
8
+ export declare const H6: React.ForwardRefExoticComponent<HeadingProps & React.RefAttributes<HTMLHeadingElement>>;
9
+ /**
10
+ * @param level 1 - 6
11
+ * @returns H1 - H6 component
12
+ */
13
+ export declare function getHeadingComponent(level: string | number): React.ForwardRefExoticComponent<HeadingProps>;
6
14
  export declare const P: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
7
15
  export declare const UL: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLUListElement> & React.RefAttributes<HTMLUListElement>>;
8
16
  export declare const Label: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLLabelElement> & {
@@ -20,6 +20,34 @@ export var H2 = React.forwardRef(function H2(props, ref) {
20
20
  export var H3 = React.forwardRef(function H3(props, ref) {
21
21
  return React.createElement(StyledH3, __assign({}, props, { ref: ref }));
22
22
  });
23
+ export var H4 = React.forwardRef(function H4(props, ref) {
24
+ return React.createElement(H3, __assign({ as: "h4" }, props, { ref: ref }));
25
+ });
26
+ export var H5 = React.forwardRef(function H5(props, ref) {
27
+ return React.createElement(H3, __assign({ as: "h5", style: { fontSize: '90%' } }, props, { ref: ref }));
28
+ });
29
+ export var H6 = React.forwardRef(function H6(props, ref) {
30
+ return React.createElement(H3, __assign({ as: "h6", style: { fontSize: '85%' } }, props, { ref: ref }));
31
+ });
32
+ var UnknownHeading = React.forwardRef(function UnknownHeading(props, ref) {
33
+ return React.createElement("strong", __assign({}, props, { ref: ref }));
34
+ });
35
+ var levelToComponent = {
36
+ '1': H1,
37
+ '2': H2,
38
+ '3': H3,
39
+ '4': H4,
40
+ '5': H5,
41
+ '6': H6,
42
+ };
43
+ /**
44
+ * @param level 1 - 6
45
+ * @returns H1 - H6 component
46
+ */
47
+ export function getHeadingComponent(level) {
48
+ // @ts-ignore
49
+ return levelToComponent[String(level)] || UnknownHeading;
50
+ }
23
51
  export var P = React.forwardRef(function P(props, ref) {
24
52
  return React.createElement(StyledP, __assign({}, props, { ref: ref }));
25
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Semantic.js","sourceRoot":"","sources":["../../src/Semantic/Semantic.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,OAAO,EACP,QAAQ,GACT,MAAM,mBAAmB,CAAA;AAG1B,MAAM,CAAC,IAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAChC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG;IACpB,OAAO,oBAAC,QAAQ,eAAK,KAAK,IAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC1C,CAAC,CACF,CAAA;AAED,MAAM,CAAC,IAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAChC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG;IACpB,OAAO,oBAAC,QAAQ,eAAK,KAAK,IAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC1C,CAAC,CACF,CAAA;AAED,MAAM,CAAC,IAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAChC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG;IACpB,OAAO,oBAAC,QAAQ,eAAK,KAAK,IAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC1C,CAAC,CACF,CAAA;AAED,MAAM,CAAC,IAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAG/B,SAAS,CAAC,CAAC,KAAK,EAAE,GAAG;IACrB,OAAO,oBAAC,OAAO,eAAK,KAAK,IAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AACzC,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,IAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAGhC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG;IACtB,OAAO,oBAAC,QAAQ,eAAK,KAAK,IAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC1C,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,IAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAGnC,SAAS,KAAK,CAAC,KAAK,EAAE,GAAG;IACzB,OAAO,oBAAC,WAAW,eAAK,KAAK,IAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC7C,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,WAAW,GAAG,IAAI,CAAA;AAErB,EAAE,CAAC,WAAW,GAAG,IAAI,CAAA;AAErB,EAAE,CAAC,WAAW,GAAG,IAAI,CAAA;AAErB,CAAC,CAAC,WAAW,GAAG,GAAG,CAAA;AAEnB,EAAE,CAAC,WAAW,GAAG,IAAI,CAAA;AAErB,KAAK,CAAC,WAAW,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"Semantic.js","sourceRoot":"","sources":["../../src/Semantic/Semantic.tsx"],"names":[],"mappings":"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"}
@@ -4,5 +4,5 @@ export interface HeadingProps extends HeadingAttributes {
4
4
  * Change the HTML tag.
5
5
  * @since 11.12.0
6
6
  */
7
- as?: 'h1' | 'h2' | 'h3';
7
+ as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
8
8
  }
@@ -14,4 +14,10 @@ export declare const TearsheetContext: React.Context<TearsheetContextProps>;
14
14
  @see [Design Guidelines](https://design.procore.com/tearsheet)
15
15
 
16
16
  */
17
- export declare const Tearsheet: React.ForwardRefExoticComponent<TearsheetProps & React.RefAttributes<HTMLDivElement>>;
17
+ export declare const Tearsheet: (props: TearsheetProps & {
18
+ /**
19
+ * @deprecatedSince 11.11.0
20
+ * @deprecated This ref is passed to two elements, in the future it will only be provided to the inner element (StyledTearsheetContent).
21
+ */
22
+ ref?: React.ComponentPropsWithRef<'div'>['ref'];
23
+ }) => React.ReactElement;