@fluentui/react-dialog 9.0.0-beta.10

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 (253) hide show
  1. package/CHANGELOG.json +527 -0
  2. package/CHANGELOG.md +199 -0
  3. package/LICENSE +15 -0
  4. package/README.md +5 -0
  5. package/Spec.md +537 -0
  6. package/assets/AlertDialogKeyboardInteraction.png +0 -0
  7. package/assets/AlertDialogMouseInteraction.png +0 -0
  8. package/assets/ModalDialogKeyboardInteraction.png +0 -0
  9. package/assets/ModalDialogMouseInteraction.png +0 -0
  10. package/assets/NonModalDialogKeyboardInteraction.png +0 -0
  11. package/assets/NonModalDialogMouseInteraction.png +0 -0
  12. package/dist/index.d.ts +451 -0
  13. package/lib/Dialog.js +2 -0
  14. package/lib/Dialog.js.map +1 -0
  15. package/lib/DialogActions.js +2 -0
  16. package/lib/DialogActions.js.map +1 -0
  17. package/lib/DialogBody.js +2 -0
  18. package/lib/DialogBody.js.map +1 -0
  19. package/lib/DialogContent.js +2 -0
  20. package/lib/DialogContent.js.map +1 -0
  21. package/lib/DialogSurface.js +2 -0
  22. package/lib/DialogSurface.js.map +1 -0
  23. package/lib/DialogTitle.js +2 -0
  24. package/lib/DialogTitle.js.map +1 -0
  25. package/lib/DialogTrigger.js +2 -0
  26. package/lib/DialogTrigger.js.map +1 -0
  27. package/lib/components/Dialog/Dialog.js +19 -0
  28. package/lib/components/Dialog/Dialog.js.map +1 -0
  29. package/lib/components/Dialog/Dialog.types.js +2 -0
  30. package/lib/components/Dialog/Dialog.types.js.map +1 -0
  31. package/lib/components/Dialog/index.js +5 -0
  32. package/lib/components/Dialog/index.js.map +1 -0
  33. package/lib/components/Dialog/renderDialog.js +18 -0
  34. package/lib/components/Dialog/renderDialog.js.map +1 -0
  35. package/lib/components/Dialog/useDialog.js +87 -0
  36. package/lib/components/Dialog/useDialog.js.map +1 -0
  37. package/lib/components/Dialog/useDialogContextValues.js +31 -0
  38. package/lib/components/Dialog/useDialogContextValues.js.map +1 -0
  39. package/lib/components/DialogActions/DialogActions.js +16 -0
  40. package/lib/components/DialogActions/DialogActions.js.map +1 -0
  41. package/lib/components/DialogActions/DialogActions.types.js +2 -0
  42. package/lib/components/DialogActions/DialogActions.types.js.map +1 -0
  43. package/lib/components/DialogActions/index.js +6 -0
  44. package/lib/components/DialogActions/index.js.map +1 -0
  45. package/lib/components/DialogActions/renderDialogActions.js +16 -0
  46. package/lib/components/DialogActions/renderDialogActions.js.map +1 -0
  47. package/lib/components/DialogActions/useDialogActions.js +27 -0
  48. package/lib/components/DialogActions/useDialogActions.js.map +1 -0
  49. package/lib/components/DialogActions/useDialogActionsStyles.js +49 -0
  50. package/lib/components/DialogActions/useDialogActionsStyles.js.map +1 -0
  51. package/lib/components/DialogBody/DialogBody.js +16 -0
  52. package/lib/components/DialogBody/DialogBody.js.map +1 -0
  53. package/lib/components/DialogBody/DialogBody.types.js +2 -0
  54. package/lib/components/DialogBody/DialogBody.types.js.map +1 -0
  55. package/lib/components/DialogBody/index.js +6 -0
  56. package/lib/components/DialogBody/index.js.map +1 -0
  57. package/lib/components/DialogBody/renderDialogBody.js +16 -0
  58. package/lib/components/DialogBody/renderDialogBody.js.map +1 -0
  59. package/lib/components/DialogBody/useDialogBody.js +25 -0
  60. package/lib/components/DialogBody/useDialogBody.js.map +1 -0
  61. package/lib/components/DialogBody/useDialogBodyStyles.js +50 -0
  62. package/lib/components/DialogBody/useDialogBodyStyles.js.map +1 -0
  63. package/lib/components/DialogContent/DialogContent.js +16 -0
  64. package/lib/components/DialogContent/DialogContent.js.map +1 -0
  65. package/lib/components/DialogContent/DialogContent.types.js +2 -0
  66. package/lib/components/DialogContent/DialogContent.types.js.map +1 -0
  67. package/lib/components/DialogContent/index.js +6 -0
  68. package/lib/components/DialogContent/index.js.map +1 -0
  69. package/lib/components/DialogContent/renderDialogContent.js +15 -0
  70. package/lib/components/DialogContent/renderDialogContent.js.map +1 -0
  71. package/lib/components/DialogContent/useDialogContent.js +28 -0
  72. package/lib/components/DialogContent/useDialogContent.js.map +1 -0
  73. package/lib/components/DialogContent/useDialogContentStyles.js +40 -0
  74. package/lib/components/DialogContent/useDialogContentStyles.js.map +1 -0
  75. package/lib/components/DialogSurface/DialogSurface.js +18 -0
  76. package/lib/components/DialogSurface/DialogSurface.js.map +1 -0
  77. package/lib/components/DialogSurface/DialogSurface.types.js +2 -0
  78. package/lib/components/DialogSurface/DialogSurface.types.js.map +1 -0
  79. package/lib/components/DialogSurface/index.js +6 -0
  80. package/lib/components/DialogSurface/index.js.map +1 -0
  81. package/lib/components/DialogSurface/renderDialogSurface.js +20 -0
  82. package/lib/components/DialogSurface/renderDialogSurface.js.map +1 -0
  83. package/lib/components/DialogSurface/useDialogSurface.js +158 -0
  84. package/lib/components/DialogSurface/useDialogSurface.js.map +1 -0
  85. package/lib/components/DialogSurface/useDialogSurfaceContextValues.js +7 -0
  86. package/lib/components/DialogSurface/useDialogSurfaceContextValues.js.map +1 -0
  87. package/lib/components/DialogSurface/useDialogSurfaceStyles.js +95 -0
  88. package/lib/components/DialogSurface/useDialogSurfaceStyles.js.map +1 -0
  89. package/lib/components/DialogTitle/DialogTitle.js +16 -0
  90. package/lib/components/DialogTitle/DialogTitle.js.map +1 -0
  91. package/lib/components/DialogTitle/DialogTitle.types.js +2 -0
  92. package/lib/components/DialogTitle/DialogTitle.types.js.map +1 -0
  93. package/lib/components/DialogTitle/index.js +6 -0
  94. package/lib/components/DialogTitle/index.js.map +1 -0
  95. package/lib/components/DialogTitle/renderDialogTitle.js +16 -0
  96. package/lib/components/DialogTitle/renderDialogTitle.js.map +1 -0
  97. package/lib/components/DialogTitle/useDialogTitle.js +48 -0
  98. package/lib/components/DialogTitle/useDialogTitle.js.map +1 -0
  99. package/lib/components/DialogTitle/useDialogTitleStyles.js +116 -0
  100. package/lib/components/DialogTitle/useDialogTitleStyles.js.map +1 -0
  101. package/lib/components/DialogTrigger/DialogTrigger.js +20 -0
  102. package/lib/components/DialogTrigger/DialogTrigger.js.map +1 -0
  103. package/lib/components/DialogTrigger/DialogTrigger.types.js +2 -0
  104. package/lib/components/DialogTrigger/DialogTrigger.types.js.map +1 -0
  105. package/lib/components/DialogTrigger/index.js +5 -0
  106. package/lib/components/DialogTrigger/index.js.map +1 -0
  107. package/lib/components/DialogTrigger/renderDialogTrigger.js +7 -0
  108. package/lib/components/DialogTrigger/renderDialogTrigger.js.map +1 -0
  109. package/lib/components/DialogTrigger/useDialogTrigger.js +48 -0
  110. package/lib/components/DialogTrigger/useDialogTrigger.js.map +1 -0
  111. package/lib/contexts/constants.js +11 -0
  112. package/lib/contexts/constants.js.map +1 -0
  113. package/lib/contexts/dialogContext.js +19 -0
  114. package/lib/contexts/dialogContext.js.map +1 -0
  115. package/lib/contexts/dialogSurfaceContext.js +10 -0
  116. package/lib/contexts/dialogSurfaceContext.js.map +1 -0
  117. package/lib/contexts/index.js +4 -0
  118. package/lib/contexts/index.js.map +1 -0
  119. package/lib/index.js +8 -0
  120. package/lib/index.js.map +1 -0
  121. package/lib/utils/index.js +6 -0
  122. package/lib/utils/index.js.map +1 -0
  123. package/lib/utils/isEscapeKeyDown.js +12 -0
  124. package/lib/utils/isEscapeKeyDown.js.map +1 -0
  125. package/lib/utils/isHTMLDialogElement.js +4 -0
  126. package/lib/utils/isHTMLDialogElement.js.map +1 -0
  127. package/lib/utils/useControlNativeDialogOpenState.js +20 -0
  128. package/lib/utils/useControlNativeDialogOpenState.js.map +1 -0
  129. package/lib/utils/useDisableBodyScroll.js +60 -0
  130. package/lib/utils/useDisableBodyScroll.js.map +1 -0
  131. package/lib/utils/useFocusFirstElement.js +41 -0
  132. package/lib/utils/useFocusFirstElement.js.map +1 -0
  133. package/lib-commonjs/Dialog.js +10 -0
  134. package/lib-commonjs/Dialog.js.map +1 -0
  135. package/lib-commonjs/DialogActions.js +10 -0
  136. package/lib-commonjs/DialogActions.js.map +1 -0
  137. package/lib-commonjs/DialogBody.js +10 -0
  138. package/lib-commonjs/DialogBody.js.map +1 -0
  139. package/lib-commonjs/DialogContent.js +10 -0
  140. package/lib-commonjs/DialogContent.js.map +1 -0
  141. package/lib-commonjs/DialogSurface.js +10 -0
  142. package/lib-commonjs/DialogSurface.js.map +1 -0
  143. package/lib-commonjs/DialogTitle.js +10 -0
  144. package/lib-commonjs/DialogTitle.js.map +1 -0
  145. package/lib-commonjs/DialogTrigger.js +10 -0
  146. package/lib-commonjs/DialogTrigger.js.map +1 -0
  147. package/lib-commonjs/components/Dialog/Dialog.js +30 -0
  148. package/lib-commonjs/components/Dialog/Dialog.js.map +1 -0
  149. package/lib-commonjs/components/Dialog/Dialog.types.js +6 -0
  150. package/lib-commonjs/components/Dialog/Dialog.types.js.map +1 -0
  151. package/lib-commonjs/components/Dialog/index.js +16 -0
  152. package/lib-commonjs/components/Dialog/index.js.map +1 -0
  153. package/lib-commonjs/components/Dialog/renderDialog.js +29 -0
  154. package/lib-commonjs/components/Dialog/renderDialog.js.map +1 -0
  155. package/lib-commonjs/components/Dialog/useDialog.js +101 -0
  156. package/lib-commonjs/components/Dialog/useDialog.js.map +1 -0
  157. package/lib-commonjs/components/Dialog/useDialogContextValues.js +40 -0
  158. package/lib-commonjs/components/Dialog/useDialogContextValues.js.map +1 -0
  159. package/lib-commonjs/components/DialogActions/DialogActions.js +27 -0
  160. package/lib-commonjs/components/DialogActions/DialogActions.js.map +1 -0
  161. package/lib-commonjs/components/DialogActions/DialogActions.types.js +6 -0
  162. package/lib-commonjs/components/DialogActions/DialogActions.types.js.map +1 -0
  163. package/lib-commonjs/components/DialogActions/index.js +18 -0
  164. package/lib-commonjs/components/DialogActions/index.js.map +1 -0
  165. package/lib-commonjs/components/DialogActions/renderDialogActions.js +27 -0
  166. package/lib-commonjs/components/DialogActions/renderDialogActions.js.map +1 -0
  167. package/lib-commonjs/components/DialogActions/useDialogActions.js +37 -0
  168. package/lib-commonjs/components/DialogActions/useDialogActions.js.map +1 -0
  169. package/lib-commonjs/components/DialogActions/useDialogActionsStyles.js +60 -0
  170. package/lib-commonjs/components/DialogActions/useDialogActionsStyles.js.map +1 -0
  171. package/lib-commonjs/components/DialogBody/DialogBody.js +27 -0
  172. package/lib-commonjs/components/DialogBody/DialogBody.js.map +1 -0
  173. package/lib-commonjs/components/DialogBody/DialogBody.types.js +6 -0
  174. package/lib-commonjs/components/DialogBody/DialogBody.types.js.map +1 -0
  175. package/lib-commonjs/components/DialogBody/index.js +18 -0
  176. package/lib-commonjs/components/DialogBody/index.js.map +1 -0
  177. package/lib-commonjs/components/DialogBody/renderDialogBody.js +27 -0
  178. package/lib-commonjs/components/DialogBody/renderDialogBody.js.map +1 -0
  179. package/lib-commonjs/components/DialogBody/useDialogBody.js +35 -0
  180. package/lib-commonjs/components/DialogBody/useDialogBody.js.map +1 -0
  181. package/lib-commonjs/components/DialogBody/useDialogBodyStyles.js +61 -0
  182. package/lib-commonjs/components/DialogBody/useDialogBodyStyles.js.map +1 -0
  183. package/lib-commonjs/components/DialogContent/DialogContent.js +27 -0
  184. package/lib-commonjs/components/DialogContent/DialogContent.js.map +1 -0
  185. package/lib-commonjs/components/DialogContent/DialogContent.types.js +6 -0
  186. package/lib-commonjs/components/DialogContent/DialogContent.types.js.map +1 -0
  187. package/lib-commonjs/components/DialogContent/index.js +18 -0
  188. package/lib-commonjs/components/DialogContent/index.js.map +1 -0
  189. package/lib-commonjs/components/DialogContent/renderDialogContent.js +26 -0
  190. package/lib-commonjs/components/DialogContent/renderDialogContent.js.map +1 -0
  191. package/lib-commonjs/components/DialogContent/useDialogContent.js +39 -0
  192. package/lib-commonjs/components/DialogContent/useDialogContent.js.map +1 -0
  193. package/lib-commonjs/components/DialogContent/useDialogContentStyles.js +52 -0
  194. package/lib-commonjs/components/DialogContent/useDialogContentStyles.js.map +1 -0
  195. package/lib-commonjs/components/DialogSurface/DialogSurface.js +30 -0
  196. package/lib-commonjs/components/DialogSurface/DialogSurface.js.map +1 -0
  197. package/lib-commonjs/components/DialogSurface/DialogSurface.types.js +6 -0
  198. package/lib-commonjs/components/DialogSurface/DialogSurface.types.js.map +1 -0
  199. package/lib-commonjs/components/DialogSurface/index.js +18 -0
  200. package/lib-commonjs/components/DialogSurface/index.js.map +1 -0
  201. package/lib-commonjs/components/DialogSurface/renderDialogSurface.js +33 -0
  202. package/lib-commonjs/components/DialogSurface/renderDialogSurface.js.map +1 -0
  203. package/lib-commonjs/components/DialogSurface/useDialogSurface.js +171 -0
  204. package/lib-commonjs/components/DialogSurface/useDialogSurface.js.map +1 -0
  205. package/lib-commonjs/components/DialogSurface/useDialogSurfaceContextValues.js +16 -0
  206. package/lib-commonjs/components/DialogSurface/useDialogSurfaceContextValues.js.map +1 -0
  207. package/lib-commonjs/components/DialogSurface/useDialogSurfaceStyles.js +107 -0
  208. package/lib-commonjs/components/DialogSurface/useDialogSurfaceStyles.js.map +1 -0
  209. package/lib-commonjs/components/DialogTitle/DialogTitle.js +27 -0
  210. package/lib-commonjs/components/DialogTitle/DialogTitle.js.map +1 -0
  211. package/lib-commonjs/components/DialogTitle/DialogTitle.types.js +6 -0
  212. package/lib-commonjs/components/DialogTitle/DialogTitle.types.js.map +1 -0
  213. package/lib-commonjs/components/DialogTitle/index.js +18 -0
  214. package/lib-commonjs/components/DialogTitle/index.js.map +1 -0
  215. package/lib-commonjs/components/DialogTitle/renderDialogTitle.js +27 -0
  216. package/lib-commonjs/components/DialogTitle/renderDialogTitle.js.map +1 -0
  217. package/lib-commonjs/components/DialogTitle/useDialogTitle.js +64 -0
  218. package/lib-commonjs/components/DialogTitle/useDialogTitle.js.map +1 -0
  219. package/lib-commonjs/components/DialogTitle/useDialogTitleStyles.js +129 -0
  220. package/lib-commonjs/components/DialogTitle/useDialogTitleStyles.js.map +1 -0
  221. package/lib-commonjs/components/DialogTrigger/DialogTrigger.js +31 -0
  222. package/lib-commonjs/components/DialogTrigger/DialogTrigger.js.map +1 -0
  223. package/lib-commonjs/components/DialogTrigger/DialogTrigger.types.js +6 -0
  224. package/lib-commonjs/components/DialogTrigger/DialogTrigger.types.js.map +1 -0
  225. package/lib-commonjs/components/DialogTrigger/index.js +16 -0
  226. package/lib-commonjs/components/DialogTrigger/index.js.map +1 -0
  227. package/lib-commonjs/components/DialogTrigger/renderDialogTrigger.js +16 -0
  228. package/lib-commonjs/components/DialogTrigger/renderDialogTrigger.js.map +1 -0
  229. package/lib-commonjs/components/DialogTrigger/useDialogTrigger.js +62 -0
  230. package/lib-commonjs/components/DialogTrigger/useDialogTrigger.js.map +1 -0
  231. package/lib-commonjs/contexts/constants.js +17 -0
  232. package/lib-commonjs/contexts/constants.js.map +1 -0
  233. package/lib-commonjs/contexts/dialogContext.js +30 -0
  234. package/lib-commonjs/contexts/dialogContext.js.map +1 -0
  235. package/lib-commonjs/contexts/dialogSurfaceContext.js +21 -0
  236. package/lib-commonjs/contexts/dialogSurfaceContext.js.map +1 -0
  237. package/lib-commonjs/contexts/index.js +14 -0
  238. package/lib-commonjs/contexts/index.js.map +1 -0
  239. package/lib-commonjs/index.js +214 -0
  240. package/lib-commonjs/index.js.map +1 -0
  241. package/lib-commonjs/utils/index.js +18 -0
  242. package/lib-commonjs/utils/index.js.map +1 -0
  243. package/lib-commonjs/utils/isEscapeKeyDown.js +23 -0
  244. package/lib-commonjs/utils/isEscapeKeyDown.js.map +1 -0
  245. package/lib-commonjs/utils/isHTMLDialogElement.js +13 -0
  246. package/lib-commonjs/utils/isHTMLDialogElement.js.map +1 -0
  247. package/lib-commonjs/utils/useControlNativeDialogOpenState.js +31 -0
  248. package/lib-commonjs/utils/useControlNativeDialogOpenState.js.map +1 -0
  249. package/lib-commonjs/utils/useDisableBodyScroll.js +73 -0
  250. package/lib-commonjs/utils/useDisableBodyScroll.js.map +1 -0
  251. package/lib-commonjs/utils/useFocusFirstElement.js +54 -0
  252. package/lib-commonjs/utils/useFocusFirstElement.js.map +1 -0
  253. package/package.json +68 -0
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.renderDialogContent_unstable = exports.useDialogContentStyles_unstable = exports.useDialogContent_unstable = exports.dialogContentClassNames = exports.DialogContent = exports.renderDialogSurface_unstable = exports.useDialogSurfaceStyles_unstable = exports.useDialogSurface_unstable = exports.dialogSurfaceClassNames = exports.DialogSurface = exports.renderDialogTitle_unstable = exports.useDialogTitleStyles_unstable = exports.useDialogTitle_unstable = exports.dialogTitleClassNames = exports.DialogTitle = exports.renderDialogBody_unstable = exports.useDialogBodyStyles_unstable = exports.useDialogBody_unstable = exports.dialogBodyClassNames = exports.DialogBody = exports.renderDialogActions_unstable = exports.useDialogActionsStyles_unstable = exports.useDialogActions_unstable = exports.dialogActionsClassNames = exports.DialogActions = exports.renderDialogTrigger_unstable = exports.useDialogTrigger_unstable = exports.DialogTrigger = exports.useDialog_unstable = exports.renderDialog_unstable = exports.Dialog = void 0;
7
+
8
+ var Dialog_1 = /*#__PURE__*/require("./Dialog");
9
+
10
+ Object.defineProperty(exports, "Dialog", {
11
+ enumerable: true,
12
+ get: function () {
13
+ return Dialog_1.Dialog;
14
+ }
15
+ });
16
+ Object.defineProperty(exports, "renderDialog_unstable", {
17
+ enumerable: true,
18
+ get: function () {
19
+ return Dialog_1.renderDialog_unstable;
20
+ }
21
+ });
22
+ Object.defineProperty(exports, "useDialog_unstable", {
23
+ enumerable: true,
24
+ get: function () {
25
+ return Dialog_1.useDialog_unstable;
26
+ }
27
+ });
28
+
29
+ var DialogTrigger_1 = /*#__PURE__*/require("./DialogTrigger");
30
+
31
+ Object.defineProperty(exports, "DialogTrigger", {
32
+ enumerable: true,
33
+ get: function () {
34
+ return DialogTrigger_1.DialogTrigger;
35
+ }
36
+ });
37
+ Object.defineProperty(exports, "useDialogTrigger_unstable", {
38
+ enumerable: true,
39
+ get: function () {
40
+ return DialogTrigger_1.useDialogTrigger_unstable;
41
+ }
42
+ });
43
+ Object.defineProperty(exports, "renderDialogTrigger_unstable", {
44
+ enumerable: true,
45
+ get: function () {
46
+ return DialogTrigger_1.renderDialogTrigger_unstable;
47
+ }
48
+ });
49
+
50
+ var DialogActions_1 = /*#__PURE__*/require("./DialogActions");
51
+
52
+ Object.defineProperty(exports, "DialogActions", {
53
+ enumerable: true,
54
+ get: function () {
55
+ return DialogActions_1.DialogActions;
56
+ }
57
+ });
58
+ Object.defineProperty(exports, "dialogActionsClassNames", {
59
+ enumerable: true,
60
+ get: function () {
61
+ return DialogActions_1.dialogActionsClassNames;
62
+ }
63
+ });
64
+ Object.defineProperty(exports, "useDialogActions_unstable", {
65
+ enumerable: true,
66
+ get: function () {
67
+ return DialogActions_1.useDialogActions_unstable;
68
+ }
69
+ });
70
+ Object.defineProperty(exports, "useDialogActionsStyles_unstable", {
71
+ enumerable: true,
72
+ get: function () {
73
+ return DialogActions_1.useDialogActionsStyles_unstable;
74
+ }
75
+ });
76
+ Object.defineProperty(exports, "renderDialogActions_unstable", {
77
+ enumerable: true,
78
+ get: function () {
79
+ return DialogActions_1.renderDialogActions_unstable;
80
+ }
81
+ });
82
+
83
+ var DialogBody_1 = /*#__PURE__*/require("./DialogBody");
84
+
85
+ Object.defineProperty(exports, "DialogBody", {
86
+ enumerable: true,
87
+ get: function () {
88
+ return DialogBody_1.DialogBody;
89
+ }
90
+ });
91
+ Object.defineProperty(exports, "dialogBodyClassNames", {
92
+ enumerable: true,
93
+ get: function () {
94
+ return DialogBody_1.dialogBodyClassNames;
95
+ }
96
+ });
97
+ Object.defineProperty(exports, "useDialogBody_unstable", {
98
+ enumerable: true,
99
+ get: function () {
100
+ return DialogBody_1.useDialogBody_unstable;
101
+ }
102
+ });
103
+ Object.defineProperty(exports, "useDialogBodyStyles_unstable", {
104
+ enumerable: true,
105
+ get: function () {
106
+ return DialogBody_1.useDialogBodyStyles_unstable;
107
+ }
108
+ });
109
+ Object.defineProperty(exports, "renderDialogBody_unstable", {
110
+ enumerable: true,
111
+ get: function () {
112
+ return DialogBody_1.renderDialogBody_unstable;
113
+ }
114
+ });
115
+
116
+ var DialogTitle_1 = /*#__PURE__*/require("./DialogTitle");
117
+
118
+ Object.defineProperty(exports, "DialogTitle", {
119
+ enumerable: true,
120
+ get: function () {
121
+ return DialogTitle_1.DialogTitle;
122
+ }
123
+ });
124
+ Object.defineProperty(exports, "dialogTitleClassNames", {
125
+ enumerable: true,
126
+ get: function () {
127
+ return DialogTitle_1.dialogTitleClassNames;
128
+ }
129
+ });
130
+ Object.defineProperty(exports, "useDialogTitle_unstable", {
131
+ enumerable: true,
132
+ get: function () {
133
+ return DialogTitle_1.useDialogTitle_unstable;
134
+ }
135
+ });
136
+ Object.defineProperty(exports, "useDialogTitleStyles_unstable", {
137
+ enumerable: true,
138
+ get: function () {
139
+ return DialogTitle_1.useDialogTitleStyles_unstable;
140
+ }
141
+ });
142
+ Object.defineProperty(exports, "renderDialogTitle_unstable", {
143
+ enumerable: true,
144
+ get: function () {
145
+ return DialogTitle_1.renderDialogTitle_unstable;
146
+ }
147
+ });
148
+
149
+ var DialogSurface_1 = /*#__PURE__*/require("./DialogSurface");
150
+
151
+ Object.defineProperty(exports, "DialogSurface", {
152
+ enumerable: true,
153
+ get: function () {
154
+ return DialogSurface_1.DialogSurface;
155
+ }
156
+ });
157
+ Object.defineProperty(exports, "dialogSurfaceClassNames", {
158
+ enumerable: true,
159
+ get: function () {
160
+ return DialogSurface_1.dialogSurfaceClassNames;
161
+ }
162
+ });
163
+ Object.defineProperty(exports, "useDialogSurface_unstable", {
164
+ enumerable: true,
165
+ get: function () {
166
+ return DialogSurface_1.useDialogSurface_unstable;
167
+ }
168
+ });
169
+ Object.defineProperty(exports, "useDialogSurfaceStyles_unstable", {
170
+ enumerable: true,
171
+ get: function () {
172
+ return DialogSurface_1.useDialogSurfaceStyles_unstable;
173
+ }
174
+ });
175
+ Object.defineProperty(exports, "renderDialogSurface_unstable", {
176
+ enumerable: true,
177
+ get: function () {
178
+ return DialogSurface_1.renderDialogSurface_unstable;
179
+ }
180
+ });
181
+
182
+ var DialogContent_1 = /*#__PURE__*/require("./DialogContent");
183
+
184
+ Object.defineProperty(exports, "DialogContent", {
185
+ enumerable: true,
186
+ get: function () {
187
+ return DialogContent_1.DialogContent;
188
+ }
189
+ });
190
+ Object.defineProperty(exports, "dialogContentClassNames", {
191
+ enumerable: true,
192
+ get: function () {
193
+ return DialogContent_1.dialogContentClassNames;
194
+ }
195
+ });
196
+ Object.defineProperty(exports, "useDialogContent_unstable", {
197
+ enumerable: true,
198
+ get: function () {
199
+ return DialogContent_1.useDialogContent_unstable;
200
+ }
201
+ });
202
+ Object.defineProperty(exports, "useDialogContentStyles_unstable", {
203
+ enumerable: true,
204
+ get: function () {
205
+ return DialogContent_1.useDialogContentStyles_unstable;
206
+ }
207
+ });
208
+ Object.defineProperty(exports, "renderDialogContent_unstable", {
209
+ enumerable: true,
210
+ get: function () {
211
+ return DialogContent_1.renderDialogContent_unstable;
212
+ }
213
+ });
214
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { Dialog, renderDialog_unstable, useDialog_unstable } from './Dialog';\nexport type {\n DialogSlots,\n DialogProps,\n DialogState,\n DialogOpenChangeData,\n DialogOpenChangeEvent,\n DialogOpenChangeEventHandler,\n} from './Dialog';\n\nexport { DialogTrigger, useDialogTrigger_unstable, renderDialogTrigger_unstable } from './DialogTrigger';\nexport type {\n DialogTriggerProps,\n DialogTriggerChildProps,\n DialogTriggerState,\n DialogTriggerAction,\n} from './DialogTrigger';\n\nexport {\n DialogActions,\n dialogActionsClassNames,\n useDialogActions_unstable,\n useDialogActionsStyles_unstable,\n renderDialogActions_unstable,\n} from './DialogActions';\nexport type {\n DialogActionsProps,\n DialogActionsSlots,\n DialogActionsState,\n DialogActionsPosition,\n} from './DialogActions';\n\nexport {\n DialogBody,\n dialogBodyClassNames,\n useDialogBody_unstable,\n useDialogBodyStyles_unstable,\n renderDialogBody_unstable,\n} from './DialogBody';\nexport type { DialogBodyProps, DialogBodySlots, DialogBodyState } from './DialogBody';\n\nexport {\n DialogTitle,\n dialogTitleClassNames,\n useDialogTitle_unstable,\n useDialogTitleStyles_unstable,\n renderDialogTitle_unstable,\n} from './DialogTitle';\nexport type { DialogTitleProps, DialogTitleSlots, DialogTitleState } from './DialogTitle';\n\nexport {\n DialogSurface,\n dialogSurfaceClassNames,\n useDialogSurface_unstable,\n useDialogSurfaceStyles_unstable,\n renderDialogSurface_unstable,\n} from './DialogSurface';\nexport type { DialogSurfaceProps, DialogSurfaceSlots, DialogSurfaceState, DialogSurfaceElement } from './DialogSurface';\n\nexport {\n DialogContent,\n dialogContentClassNames,\n useDialogContent_unstable,\n useDialogContentStyles_unstable,\n renderDialogContent_unstable,\n} from './DialogContent';\nexport type { DialogContentProps, DialogContentSlots, DialogContentState } from './DialogContent';\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
+
9
+ tslib_1.__exportStar(require("./isEscapeKeyDown"), exports);
10
+
11
+ tslib_1.__exportStar(require("./useDisableBodyScroll"), exports);
12
+
13
+ tslib_1.__exportStar(require("./useFocusFirstElement"), exports);
14
+
15
+ tslib_1.__exportStar(require("./isHTMLDialogElement"), exports);
16
+
17
+ tslib_1.__exportStar(require("./useControlNativeDialogOpenState"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/utils/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,mBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,wBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,wBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,uBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,mCAAA,CAAA,EAAA,OAAA","sourcesContent":["export * from './isEscapeKeyDown';\nexport * from './useDisableBodyScroll';\nexport * from './useFocusFirstElement';\nexport * from './isHTMLDialogElement';\nexport * from './useControlNativeDialogOpenState';\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isEscapeKeyDismiss = void 0;
7
+
8
+ const keyboard_keys_1 = /*#__PURE__*/require("@fluentui/keyboard-keys");
9
+
10
+ const isHTMLDialogElement_1 = /*#__PURE__*/require("./isHTMLDialogElement");
11
+ /**
12
+ * Checks if keydown event is a proper Escape key dismiss
13
+ */
14
+
15
+
16
+ function isEscapeKeyDismiss(event, modalType) {
17
+ return event.key === keyboard_keys_1.Escape && ( // `non-modal` should always have Escape key handling
18
+ // `modal` should only be handled in the case of non native dialog
19
+ modalType === 'non-modal' || !isHTMLDialogElement_1.isHTMLDialogElement(event.currentTarget) && modalType === 'modal') && !event.isDefaultPrevented();
20
+ }
21
+
22
+ exports.isEscapeKeyDismiss = isEscapeKeyDismiss;
23
+ //# sourceMappingURL=isEscapeKeyDown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/utils/isEscapeKeyDown.ts"],"names":[],"mappings":";;;;;;;AACA,MAAA,eAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;;AAGA,MAAA,qBAAA,gBAAA,OAAA,CAAA,uBAAA,CAAA;AAEA;;AAEG;;;AACH,SAAgB,kBAAhB,CACE,KADF,EAEE,SAFF,EAE4B;EAE1B,OACE,KAAK,CAAC,GAAN,KAAc,eAAA,CAAA,MAAd,MACA;EACA;EACC,SAAS,KAAK,WAAd,IAA8B,CAAC,qBAAA,CAAA,mBAAA,CAAoB,KAAK,CAAC,aAA1B,CAAD,IAA6C,SAAS,KAAK,OAH1F,KAIA,CAAC,KAAK,CAAC,kBAAN,EALH;AAOD;;AAXD,OAAA,CAAA,kBAAA,GAAA,kBAAA","sourcesContent":["import * as React from 'react';\nimport { Escape } from '@fluentui/keyboard-keys';\nimport type { DialogModalType } from '../components/Dialog/Dialog.types';\nimport { DialogSurfaceElement } from '../DialogSurface';\nimport { isHTMLDialogElement } from './isHTMLDialogElement';\n\n/**\n * Checks if keydown event is a proper Escape key dismiss\n */\nexport function isEscapeKeyDismiss(\n event: React.KeyboardEvent<DialogSurfaceElement>,\n modalType: DialogModalType,\n): boolean {\n return (\n event.key === Escape &&\n // `non-modal` should always have Escape key handling\n // `modal` should only be handled in the case of non native dialog\n (modalType === 'non-modal' || (!isHTMLDialogElement(event.currentTarget) && modalType === 'modal')) &&\n !event.isDefaultPrevented()\n );\n}\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isHTMLDialogElement = void 0;
7
+
8
+ function isHTMLDialogElement(element) {
9
+ return Boolean(element && 'open' in element && 'show' in element && 'showModal' in element && 'close' in element);
10
+ }
11
+
12
+ exports.isHTMLDialogElement = isHTMLDialogElement;
13
+ //# sourceMappingURL=isHTMLDialogElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/utils/isHTMLDialogElement.ts"],"names":[],"mappings":";;;;;;;AAEA,SAAgB,mBAAhB,CAAoC,OAApC,EAAgE;EAC9D,OAAO,OAAO,CAAC,OAAO,IAAI,UAAU,OAArB,IAAgC,UAAU,OAA1C,IAAqD,eAAe,OAApE,IAA+E,WAAW,OAA3F,CAAd;AACD;;AAFD,OAAA,CAAA,mBAAA,GAAA,mBAAA","sourcesContent":["import * as React from 'react';\n\nexport function isHTMLDialogElement(element?: HTMLElement | null): element is HTMLDialogElement {\n return Boolean(element && 'open' in element && 'show' in element && 'showModal' in element && 'close' in element);\n}\n\n/**\n * adds additional types which are missing from current version of react\n * @internal\n */\nexport type HTMLDialogElementProps = JSX.IntrinsicElements['dialog'] & {\n /**\n * The close event is fired on a <dialog> when it has been closed.\n */\n onClose?: (event: React.SyntheticEvent) => void;\n /**\n * The cancel event fires on a <dialog> when\n * the user instructs the browser that they wish to dismiss the current open dialog.\n * For example, the browser might fire this event when the user presses the Esc\n * key.\n */\n onCancel?: (event: React.SyntheticEvent) => void;\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useControlNativeDialogOpenState = void 0;
7
+
8
+ const React = /*#__PURE__*/require("react");
9
+
10
+ const isHTMLDialogElement_1 = /*#__PURE__*/require("./isHTMLDialogElement");
11
+
12
+ function useControlNativeDialogOpenState(open, modalType) {
13
+ const dialogSurfaceRef = React.useRef(null);
14
+ React.useEffect(() => {
15
+ if (isHTMLDialogElement_1.isHTMLDialogElement(dialogSurfaceRef.current) && dialogSurfaceRef.current.open !== open) {
16
+ if (open) {
17
+ if (modalType === 'non-modal') {
18
+ dialogSurfaceRef.current.show();
19
+ } else {
20
+ dialogSurfaceRef.current.showModal();
21
+ }
22
+ } else {
23
+ dialogSurfaceRef.current.close();
24
+ }
25
+ }
26
+ }, [open, modalType]);
27
+ return dialogSurfaceRef;
28
+ }
29
+
30
+ exports.useControlNativeDialogOpenState = useControlNativeDialogOpenState;
31
+ //# sourceMappingURL=useControlNativeDialogOpenState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/utils/useControlNativeDialogOpenState.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,qBAAA,gBAAA,OAAA,CAAA,uBAAA,CAAA;;AAIA,SAAgB,+BAAhB,CAAgD,IAAhD,EAA+D,SAA/D,EAAyF;EACvF,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAN,CAAmC,IAAnC,CAAzB;EAEA,KAAK,CAAC,SAAN,CAAgB,MAAK;IACnB,IAAI,qBAAA,CAAA,mBAAA,CAAoB,gBAAgB,CAAC,OAArC,KAAiD,gBAAgB,CAAC,OAAjB,CAAyB,IAAzB,KAAkC,IAAvF,EAA6F;MAC3F,IAAI,IAAJ,EAAU;QACR,IAAI,SAAS,KAAK,WAAlB,EAA+B;UAC7B,gBAAgB,CAAC,OAAjB,CAAyB,IAAzB;QACD,CAFD,MAEO;UACL,gBAAgB,CAAC,OAAjB,CAAyB,SAAzB;QACD;MACF,CAND,MAMO;QACL,gBAAgB,CAAC,OAAjB,CAAyB,KAAzB;MACD;IACF;EACF,CAZD,EAYG,CAAC,IAAD,EAAO,SAAP,CAZH;EAcA,OAAO,gBAAP;AACD;;AAlBD,OAAA,CAAA,+BAAA,GAAA,+BAAA","sourcesContent":["import * as React from 'react';\nimport { isHTMLDialogElement } from './isHTMLDialogElement';\nimport type { DialogModalType } from '../Dialog';\nimport type { DialogSurfaceElement } from '../DialogSurface';\n\nexport function useControlNativeDialogOpenState(open: boolean, modalType: DialogModalType) {\n const dialogSurfaceRef = React.useRef<DialogSurfaceElement>(null);\n\n React.useEffect(() => {\n if (isHTMLDialogElement(dialogSurfaceRef.current) && dialogSurfaceRef.current.open !== open) {\n if (open) {\n if (modalType === 'non-modal') {\n dialogSurfaceRef.current.show();\n } else {\n dialogSurfaceRef.current.showModal();\n }\n } else {\n dialogSurfaceRef.current.close();\n }\n }\n }, [open, modalType]);\n\n return dialogSurfaceRef;\n}\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.disableScroll = exports.useDisableBodyScroll = void 0;
7
+
8
+ const react_shared_contexts_1 = /*#__PURE__*/require("@fluentui/react-shared-contexts");
9
+
10
+ const react_1 = /*#__PURE__*/require("react");
11
+
12
+ const disableScrollElementProp = '__fluentDisableScrollElement';
13
+ /**
14
+ * hook that disables body scrolling through `overflow: hidden` CSS property
15
+ */
16
+
17
+ function useDisableBodyScroll() {
18
+ const {
19
+ targetDocument
20
+ } = react_shared_contexts_1.useFluent_unstable();
21
+ return react_1.useCallback(() => {
22
+ if (targetDocument) {
23
+ return disableScroll(targetDocument.body);
24
+ }
25
+ }, [targetDocument]);
26
+ }
27
+
28
+ exports.useDisableBodyScroll = useDisableBodyScroll;
29
+ /**
30
+ * disables scrolling from a given element through `overflow: hidden` CSS property
31
+ * @param target - element to disable scrolling from
32
+ * @returns a method for enabling scrolling again
33
+ */
34
+
35
+ function disableScroll(target) {
36
+ var _a, _b;
37
+
38
+ const {
39
+ clientWidth
40
+ } = target.ownerDocument.documentElement;
41
+ const innerWidth = (_b = (_a = target.ownerDocument.defaultView) === null || _a === void 0 ? void 0 : _a.innerWidth) !== null && _b !== void 0 ? _b : 0;
42
+ assertIsDisableScrollElement(target);
43
+
44
+ if (target[disableScrollElementProp].count === 0) {
45
+ target.style.overflow = 'hidden';
46
+ target.style.paddingRight = `${innerWidth - clientWidth}px`;
47
+ }
48
+
49
+ target[disableScrollElementProp].count++;
50
+ return () => {
51
+ target[disableScrollElementProp].count--;
52
+
53
+ if (target[disableScrollElementProp].count === 0) {
54
+ target.style.overflow = target[disableScrollElementProp].previousOverflowStyle;
55
+ target.style.paddingRight = target[disableScrollElementProp].previousPaddingRightStyle;
56
+ }
57
+ };
58
+ }
59
+
60
+ exports.disableScroll = disableScroll;
61
+
62
+ function assertIsDisableScrollElement(element) {
63
+ var _a;
64
+
65
+ var _b;
66
+
67
+ (_a = (_b = element)[disableScrollElementProp]) !== null && _a !== void 0 ? _a : _b[disableScrollElementProp] = {
68
+ count: 0,
69
+ previousOverflowStyle: element.style.overflow,
70
+ previousPaddingRightStyle: element.style.paddingRight
71
+ };
72
+ }
73
+ //# sourceMappingURL=useDisableBodyScroll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/utils/useDisableBodyScroll.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,uBAAA,gBAAA,OAAA,CAAA,iCAAA,CAAA;;AACA,MAAA,OAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AAEA,MAAM,wBAAwB,GAAG,8BAAjC;AAUA;;AAEG;;AACH,SAAgB,oBAAhB,GAAoC;EAClC,MAAM;IAAE;EAAF,IAAqB,uBAAA,CAAA,kBAAA,EAA3B;EACA,OAAO,OAAA,CAAA,WAAA,CAAY,MAAK;IACtB,IAAI,cAAJ,EAAoB;MAClB,OAAO,aAAa,CAAC,cAAc,CAAC,IAAhB,CAApB;IACD;EACF,CAJM,EAIJ,CAAC,cAAD,CAJI,CAAP;AAKD;;AAPD,OAAA,CAAA,oBAAA,GAAA,oBAAA;AASA;;;;AAIG;;AACH,SAAgB,aAAhB,CAA8B,MAA9B,EAAiD;;;EAC/C,MAAM;IAAE;EAAF,IAAkB,MAAM,CAAC,aAAP,CAAqB,eAA7C;EACA,MAAM,UAAU,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,MAAM,CAAC,aAAP,CAAqB,WAArB,MAAgC,IAAhC,IAAgC,EAAA,KAAA,KAAA,CAAhC,GAAgC,KAAA,CAAhC,GAAgC,EAAA,CAAE,UAAlC,MAA4C,IAA5C,IAA4C,EAAA,KAAA,KAAA,CAA5C,GAA4C,EAA5C,GAAgD,CAAnE;EACA,4BAA4B,CAAC,MAAD,CAA5B;;EACA,IAAI,MAAM,CAAC,wBAAD,CAAN,CAAiC,KAAjC,KAA2C,CAA/C,EAAkD;IAChD,MAAM,CAAC,KAAP,CAAa,QAAb,GAAwB,QAAxB;IACA,MAAM,CAAC,KAAP,CAAa,YAAb,GAA4B,GAAG,UAAU,GAAG,WAAW,IAAvD;EACD;;EACD,MAAM,CAAC,wBAAD,CAAN,CAAiC,KAAjC;EACA,OAAO,MAAK;IACV,MAAM,CAAC,wBAAD,CAAN,CAAiC,KAAjC;;IACA,IAAI,MAAM,CAAC,wBAAD,CAAN,CAAiC,KAAjC,KAA2C,CAA/C,EAAkD;MAChD,MAAM,CAAC,KAAP,CAAa,QAAb,GAAwB,MAAM,CAAC,wBAAD,CAAN,CAAiC,qBAAzD;MACA,MAAM,CAAC,KAAP,CAAa,YAAb,GAA4B,MAAM,CAAC,wBAAD,CAAN,CAAiC,yBAA7D;IACD;EACF,CAND;AAOD;;AAhBD,OAAA,CAAA,aAAA,GAAA,aAAA;;AAkBA,SAAS,4BAAT,CAAsC,OAAtC,EAA0D;;;;;EACxD,CAAA,EAAA,GAAA,CAAA,EAAA,GAAC,OAAD,EAAwC,wBAAxC,CAAA,MAAgE,IAAhE,IAAgE,EAAA,KAAA,KAAA,CAAhE,GAAgE,EAAhE,GAAgE,EAAA,CAAxB,wBAAwB,CAAA,GAAM;IACpE,KAAK,EAAE,CAD6D;IAEpE,qBAAqB,EAAE,OAAO,CAAC,KAAR,CAAc,QAF+B;IAGpE,yBAAyB,EAAE,OAAO,CAAC,KAAR,CAAc;EAH2B,CAAtE;AAKD","sourcesContent":["import { useFluent_unstable } from '@fluentui/react-shared-contexts';\nimport { useCallback } from 'react';\n\nconst disableScrollElementProp = '__fluentDisableScrollElement' as const;\n\ntype FluentDisableScrollElement = HTMLElement & {\n [disableScrollElementProp]: {\n count: number;\n previousOverflowStyle: string;\n previousPaddingRightStyle: string;\n };\n};\n\n/**\n * hook that disables body scrolling through `overflow: hidden` CSS property\n */\nexport function useDisableBodyScroll() {\n const { targetDocument } = useFluent_unstable();\n return useCallback(() => {\n if (targetDocument) {\n return disableScroll(targetDocument.body);\n }\n }, [targetDocument]);\n}\n\n/**\n * disables scrolling from a given element through `overflow: hidden` CSS property\n * @param target - element to disable scrolling from\n * @returns a method for enabling scrolling again\n */\nexport function disableScroll(target: HTMLElement) {\n const { clientWidth } = target.ownerDocument.documentElement;\n const innerWidth = target.ownerDocument.defaultView?.innerWidth ?? 0;\n assertIsDisableScrollElement(target);\n if (target[disableScrollElementProp].count === 0) {\n target.style.overflow = 'hidden';\n target.style.paddingRight = `${innerWidth - clientWidth}px`;\n }\n target[disableScrollElementProp].count++;\n return () => {\n target[disableScrollElementProp].count--;\n if (target[disableScrollElementProp].count === 0) {\n target.style.overflow = target[disableScrollElementProp].previousOverflowStyle;\n target.style.paddingRight = target[disableScrollElementProp].previousPaddingRightStyle;\n }\n };\n}\n\nfunction assertIsDisableScrollElement(element: HTMLElement): asserts element is FluentDisableScrollElement {\n (element as FluentDisableScrollElement)[disableScrollElementProp] ??= {\n count: 0,\n previousOverflowStyle: element.style.overflow,\n previousPaddingRightStyle: element.style.paddingRight,\n };\n}\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useFocusFirstElement = void 0;
7
+
8
+ const React = /*#__PURE__*/require("react");
9
+
10
+ const react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
11
+
12
+ const react_shared_contexts_1 = /*#__PURE__*/require("@fluentui/react-shared-contexts");
13
+
14
+ const isHTMLDialogElement_1 = /*#__PURE__*/require("./isHTMLDialogElement");
15
+ /**
16
+ * Focus first element on content when dialog is opened,
17
+ */
18
+
19
+
20
+ function useFocusFirstElement(open, modalType) {
21
+ const {
22
+ findFirstFocusable
23
+ } = react_tabster_1.useFocusFinders();
24
+ const {
25
+ targetDocument
26
+ } = react_shared_contexts_1.useFluent_unstable();
27
+ const dialogRef = React.useRef(null);
28
+ const triggerRef = React.useRef();
29
+ React.useEffect(() => {
30
+ var _a, _b;
31
+
32
+ if (!open) {
33
+ return (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
34
+ }
35
+
36
+ triggerRef.current = targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.activeElement;
37
+ const element = dialogRef.current && findFirstFocusable(dialogRef.current);
38
+
39
+ if (element) {
40
+ // this is only required for non native dialogs
41
+ if (!isHTMLDialogElement_1.isHTMLDialogElement(dialogRef.current)) {
42
+ element.focus();
43
+ }
44
+ } else if (process.env.NODE_ENV !== 'production') {
45
+ (_b = triggerRef.current) === null || _b === void 0 ? void 0 : _b.blur(); // eslint-disable-next-line no-console
46
+
47
+ console.warn('A Dialog should have at least one focusable element inside DialogSurface');
48
+ }
49
+ }, [findFirstFocusable, open, modalType, targetDocument]);
50
+ return dialogRef;
51
+ }
52
+
53
+ exports.useFocusFirstElement = useFocusFirstElement;
54
+ //# sourceMappingURL=useFocusFirstElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["packages/react-components/react-dialog/src/utils/useFocusFirstElement.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,eAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;;AACA,MAAA,uBAAA,gBAAA,OAAA,CAAA,iCAAA,CAAA;;AAGA,MAAA,qBAAA,gBAAA,OAAA,CAAA,uBAAA,CAAA;AAEA;;AAEG;;;AACH,SAAgB,oBAAhB,CAAqC,IAArC,EAAoD,SAApD,EAA8E;EAC5E,MAAM;IAAE;EAAF,IAAyB,eAAA,CAAA,eAAA,EAA/B;EACA,MAAM;IAAE;EAAF,IAAqB,uBAAA,CAAA,kBAAA,EAA3B;EACA,MAAM,SAAS,GAAG,KAAK,CAAC,MAAN,CAAmC,IAAnC,CAAlB;EACA,MAAM,UAAU,GAAG,KAAK,CAAC,MAAN,EAAnB;EAEA,KAAK,CAAC,SAAN,CAAgB,MAAK;;;IACnB,IAAI,CAAC,IAAL,EAAW;MACT,OAAO,CAAA,EAAA,GAAA,UAAU,CAAC,OAAX,MAAkB,IAAlB,IAAkB,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkB,EAAA,CAAE,KAAF,EAAzB;IACD;;IACD,UAAU,CAAC,OAAX,GAAqB,cAAc,KAAA,IAAd,IAAA,cAAc,KAAA,KAAA,CAAd,GAAc,KAAA,CAAd,GAAA,cAAc,CAAE,aAArC;IACA,MAAM,OAAO,GAAG,SAAS,CAAC,OAAV,IAAqB,kBAAkB,CAAC,SAAS,CAAC,OAAX,CAAvD;;IACA,IAAI,OAAJ,EAAa;MACX;MACA,IAAI,CAAC,qBAAA,CAAA,mBAAA,CAAoB,SAAS,CAAC,OAA9B,CAAL,EAA6C;QAC3C,OAAO,CAAC,KAAR;MACD;IACF,CALD,MAKO,IAAI,OAAO,CAAC,GAAR,CAAY,QAAZ,KAAyB,YAA7B,EAA2C;MAChD,CAAA,EAAA,GAAA,UAAU,CAAC,OAAX,MAAkB,IAAlB,IAAkB,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkB,EAAA,CAAE,IAAF,EAAlB,CADgD,CAEhD;;MACA,OAAO,CAAC,IAAR,CAAa,0EAAb;IACD;EACF,CAhBD,EAgBG,CAAC,kBAAD,EAAqB,IAArB,EAA2B,SAA3B,EAAsC,cAAtC,CAhBH;EAkBA,OAAO,SAAP;AACD;;AAzBD,OAAA,CAAA,oBAAA,GAAA,oBAAA","sourcesContent":["import * as React from 'react';\nimport { useFocusFinders } from '@fluentui/react-tabster';\nimport { useFluent_unstable } from '@fluentui/react-shared-contexts';\nimport type { DialogSurfaceElement } from '../DialogSurface';\nimport type { DialogModalType } from '../Dialog';\nimport { isHTMLDialogElement } from './isHTMLDialogElement';\n\n/**\n * Focus first element on content when dialog is opened,\n */\nexport function useFocusFirstElement(open: boolean, modalType: DialogModalType) {\n const { findFirstFocusable } = useFocusFinders();\n const { targetDocument } = useFluent_unstable();\n const dialogRef = React.useRef<DialogSurfaceElement>(null);\n const triggerRef = React.useRef<HTMLElement>();\n\n React.useEffect(() => {\n if (!open) {\n return triggerRef.current?.focus();\n }\n triggerRef.current = targetDocument?.activeElement as HTMLElement | undefined;\n const element = dialogRef.current && findFirstFocusable(dialogRef.current);\n if (element) {\n // this is only required for non native dialogs\n if (!isHTMLDialogElement(dialogRef.current)) {\n element.focus();\n }\n } else if (process.env.NODE_ENV !== 'production') {\n triggerRef.current?.blur();\n // eslint-disable-next-line no-console\n console.warn('A Dialog should have at least one focusable element inside DialogSurface');\n }\n }, [findFirstFocusable, open, modalType, targetDocument]);\n\n return dialogRef;\n}\n"],"sourceRoot":"../src/"}
package/package.json ADDED
@@ -0,0 +1,68 @@
1
+ {
2
+ "name": "@fluentui/react-dialog",
3
+ "version": "9.0.0-beta.10",
4
+ "description": "Dialog component for Fluent UI React",
5
+ "main": "lib-commonjs/index.js",
6
+ "module": "lib/index.js",
7
+ "typings": "dist/index.d.ts",
8
+ "sideEffects": false,
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/microsoft/fluentui"
12
+ },
13
+ "license": "MIT",
14
+ "scripts": {
15
+ "build": "just-scripts build",
16
+ "clean": "just-scripts clean",
17
+ "code-style": "just-scripts code-style",
18
+ "bundle-size": "bundle-size measure",
19
+ "just": "just-scripts",
20
+ "lint": "just-scripts lint",
21
+ "start": "yarn storybook",
22
+ "test": "jest --passWithNoTests",
23
+ "e2e": "cypress run --component",
24
+ "e2e:local": "cypress open --component",
25
+ "storybook": "start-storybook",
26
+ "type-check": "tsc -b tsconfig.json",
27
+ "generate-api": "tsc -p ./tsconfig.lib.json --emitDeclarationOnly && just-scripts api-extractor"
28
+ },
29
+ "devDependencies": {
30
+ "@fluentui/eslint-plugin": "*",
31
+ "@fluentui/react-conformance": "*",
32
+ "@fluentui/react-conformance-griffel": "9.0.0-beta.14",
33
+ "@fluentui/scripts": "^1.0.0"
34
+ },
35
+ "dependencies": {
36
+ "@griffel/react": "^1.3.0",
37
+ "@fluentui/react-utilities": "^9.1.0",
38
+ "@fluentui/keyboard-keys": "^9.0.0",
39
+ "@fluentui/react-context-selector": "^9.0.3",
40
+ "@fluentui/react-shared-contexts": "^9.0.1",
41
+ "@fluentui/react-aria": "^9.2.0",
42
+ "@fluentui/react-icons": "^2.0.175",
43
+ "@fluentui/react-tabster": "^9.1.1",
44
+ "@fluentui/react-theme": "^9.1.0",
45
+ "@fluentui/react-portal": "^9.0.5",
46
+ "tslib": "^2.1.0"
47
+ },
48
+ "peerDependencies": {
49
+ "@types/react": ">=16.8.0 <18.0.0",
50
+ "@types/react-dom": ">=16.8.0 <18.0.0",
51
+ "react": ">=16.8.0 <18.0.0",
52
+ "react-dom": ">=16.8.0 <18.0.0"
53
+ },
54
+ "beachball": {
55
+ "disallowedChangeTypes": [
56
+ "major",
57
+ "minor",
58
+ "patch"
59
+ ]
60
+ },
61
+ "exports": {
62
+ ".": {
63
+ "types": "./lib/index.d.ts",
64
+ "import": "./lib/index.js",
65
+ "require": "./lib-commonjs/index.js"
66
+ }
67
+ }
68
+ }