@griffel/react 1.6.1 → 1.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/lib/RendererContext.cjs +48 -0
  2. package/lib/TextDirectionContext.cjs +36 -0
  3. package/lib/__css.cjs +22 -0
  4. package/lib/__resetCSS.cjs +22 -0
  5. package/lib/__resetStyles.cjs +26 -0
  6. package/lib/__staticCSS.cjs +18 -0
  7. package/lib/__staticStyles.cjs +23 -0
  8. package/lib/__styles.cjs +26 -0
  9. package/lib/index.cjs +78 -0
  10. package/lib/insertionFactory.cjs +33 -0
  11. package/lib/makeResetStyles.cjs +35 -0
  12. package/lib/makeStaticStyles.cjs +28 -0
  13. package/lib/makeStyles.cjs +35 -0
  14. package/lib/renderToStyleElements.cjs +50 -0
  15. package/lib/useInsertionEffect.cjs +20 -0
  16. package/lib/utils/canUseDOM.cjs +15 -0
  17. package/lib/utils/isInsideComponent.cjs +46 -0
  18. package/package.json +15 -6
  19. package/src/RendererContext.d.ts +1 -1
  20. package/src/RendererContext.js +30 -0
  21. package/src/RendererContext.js.map +1 -0
  22. package/src/TextDirectionContext.d.ts +2 -2
  23. package/src/TextDirectionContext.js +21 -0
  24. package/src/TextDirectionContext.js.map +1 -0
  25. package/src/__css.js +17 -0
  26. package/src/__css.js.map +1 -0
  27. package/src/__resetCSS.js +17 -0
  28. package/src/__resetCSS.js.map +1 -0
  29. package/src/__resetStyles.js +20 -0
  30. package/src/__resetStyles.js.map +1 -0
  31. package/src/__staticCSS.js +15 -0
  32. package/src/__staticCSS.js.map +1 -0
  33. package/src/__staticStyles.js +18 -0
  34. package/src/__staticStyles.js.map +1 -0
  35. package/src/__styles.js +20 -0
  36. package/src/__styles.js.map +1 -0
  37. package/src/index.d.ts +12 -12
  38. package/src/index.js +16 -0
  39. package/src/index.js.map +1 -0
  40. package/src/insertionFactory.js +21 -0
  41. package/src/insertionFactory.js.map +1 -0
  42. package/src/makeResetStyles.js +23 -0
  43. package/src/makeResetStyles.js.map +1 -0
  44. package/src/makeStaticStyles.js +17 -0
  45. package/src/makeStaticStyles.js.map +1 -0
  46. package/src/makeStyles.js +23 -0
  47. package/src/makeStyles.js.map +1 -0
  48. package/src/renderToStyleElements.d.ts +2 -2
  49. package/src/renderToStyleElements.js +51 -0
  50. package/src/renderToStyleElements.js.map +1 -0
  51. package/src/useInsertionEffect.d.ts +1 -1
  52. package/{useInsertionEffect.esm.js → src/useInsertionEffect.js} +4 -7
  53. package/src/useInsertionEffect.js.map +1 -0
  54. package/src/utils/canUseDOM.js +7 -0
  55. package/src/utils/canUseDOM.js.map +1 -0
  56. package/src/utils/isInsideComponent.js +36 -0
  57. package/src/utils/isInsideComponent.js.map +1 -0
  58. package/RendererContext.cjs.js +0 -62
  59. package/RendererContext.cjs.js.map +0 -1
  60. package/RendererContext.esm.js +0 -39
  61. package/RendererContext.esm.js.map +0 -1
  62. package/TextDirectionContext.cjs.js +0 -52
  63. package/TextDirectionContext.cjs.js.map +0 -1
  64. package/TextDirectionContext.esm.js +0 -29
  65. package/TextDirectionContext.esm.js.map +0 -1
  66. package/__css.cjs.js +0 -24
  67. package/__css.cjs.js.map +0 -1
  68. package/__css.esm.js +0 -22
  69. package/__css.esm.js.map +0 -1
  70. package/__resetCSS.cjs.js +0 -24
  71. package/__resetCSS.cjs.js.map +0 -1
  72. package/__resetCSS.esm.js +0 -22
  73. package/__resetCSS.esm.js.map +0 -1
  74. package/__resetStyles.cjs.js +0 -28
  75. package/__resetStyles.cjs.js.map +0 -1
  76. package/__resetStyles.esm.js +0 -26
  77. package/__resetStyles.esm.js.map +0 -1
  78. package/__staticCSS.cjs.js +0 -20
  79. package/__staticCSS.cjs.js.map +0 -1
  80. package/__staticCSS.esm.js +0 -18
  81. package/__staticCSS.esm.js.map +0 -1
  82. package/__staticStyles.cjs.js +0 -25
  83. package/__staticStyles.cjs.js.map +0 -1
  84. package/__staticStyles.esm.js +0 -23
  85. package/__staticStyles.esm.js.map +0 -1
  86. package/__styles.cjs.js +0 -28
  87. package/__styles.cjs.js.map +0 -1
  88. package/__styles.esm.js +0 -26
  89. package/__styles.esm.js.map +0 -1
  90. package/index.cjs.js +0 -49
  91. package/index.cjs.js.map +0 -1
  92. package/index.d.ts +0 -1
  93. package/index.esm.js +0 -15
  94. package/index.esm.js.map +0 -1
  95. package/insertionFactory.cjs.js +0 -26
  96. package/insertionFactory.cjs.js.map +0 -1
  97. package/insertionFactory.esm.js +0 -24
  98. package/insertionFactory.esm.js.map +0 -1
  99. package/makeResetStyles.cjs.js +0 -28
  100. package/makeResetStyles.cjs.js.map +0 -1
  101. package/makeResetStyles.esm.js +0 -26
  102. package/makeResetStyles.esm.js.map +0 -1
  103. package/makeStaticStyles.cjs.js +0 -24
  104. package/makeStaticStyles.cjs.js.map +0 -1
  105. package/makeStaticStyles.esm.js +0 -22
  106. package/makeStaticStyles.esm.js.map +0 -1
  107. package/makeStyles.cjs.js +0 -28
  108. package/makeStyles.cjs.js.map +0 -1
  109. package/makeStyles.esm.js +0 -26
  110. package/makeStyles.esm.js.map +0 -1
  111. package/renderToStyleElements.cjs.js +0 -72
  112. package/renderToStyleElements.cjs.js.map +0 -1
  113. package/renderToStyleElements.esm.js +0 -50
  114. package/renderToStyleElements.esm.js.map +0 -1
  115. package/useInsertionEffect.cjs.js +0 -32
  116. package/useInsertionEffect.cjs.js.map +0 -1
  117. package/useInsertionEffect.esm.js.map +0 -1
  118. package/utils/canUseDOM.cjs.js +0 -11
  119. package/utils/canUseDOM.cjs.js.map +0 -1
  120. package/utils/canUseDOM.esm.js +0 -9
  121. package/utils/canUseDOM.esm.js.map +0 -1
  122. package/utils/isInsideComponent.cjs.js +0 -57
  123. package/utils/isInsideComponent.cjs.js.map +0 -1
  124. package/utils/isInsideComponent.esm.js +0 -35
  125. package/utils/isInsideComponent.esm.js.map +0 -1
@@ -0,0 +1,48 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get RendererProvider () {
14
+ return RendererProvider;
15
+ },
16
+ get useRenderer () {
17
+ return useRenderer;
18
+ }
19
+ });
20
+ const _core = require("@griffel/core");
21
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
22
+ const _canUseDOM = require("./utils/canUseDOM.cjs");
23
+ function _interop_require_default(obj) {
24
+ return obj && obj.__esModule ? obj : {
25
+ default: obj
26
+ };
27
+ }
28
+ /**
29
+ * @private
30
+ */ const RendererContext = /*#__PURE__*/ _react.default.createContext(/*#__PURE__*/ (0, _core.createDOMRenderer)());
31
+ const RendererProvider = ({ children, renderer, targetDocument })=>{
32
+ _react.default.useMemo(()=>{
33
+ if ((0, _canUseDOM.canUseDOM)()) {
34
+ // "rehydrateCache()" can't be called in effects as it needs to be called before any component will be rendered to
35
+ // avoid double insertion of classes
36
+ (0, _core.rehydrateRendererCache)(renderer, targetDocument);
37
+ }
38
+ }, [
39
+ renderer,
40
+ targetDocument
41
+ ]);
42
+ return _react.default.createElement(RendererContext.Provider, {
43
+ value: renderer
44
+ }, children);
45
+ };
46
+ function useRenderer() {
47
+ return _react.default.useContext(RendererContext);
48
+ } //# sourceMappingURL=RendererContext.js.map
@@ -0,0 +1,36 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get TextDirectionProvider () {
14
+ return TextDirectionProvider;
15
+ },
16
+ get useTextDirection () {
17
+ return useTextDirection;
18
+ }
19
+ });
20
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ /**
27
+ * @private
28
+ */ const TextDirectionContext = /*#__PURE__*/ _react.default.createContext('ltr');
29
+ const TextDirectionProvider = ({ children, dir })=>{
30
+ return _react.default.createElement(TextDirectionContext.Provider, {
31
+ value: dir
32
+ }, children);
33
+ };
34
+ function useTextDirection() {
35
+ return _react.default.useContext(TextDirectionContext);
36
+ } //# sourceMappingURL=TextDirectionContext.js.map
package/lib/__css.cjs ADDED
@@ -0,0 +1,22 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "__css", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return __css;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
14
+ function __css(classesMapBySlot) {
15
+ const getStyles = (0, _core.__css)(classesMapBySlot);
16
+ return function useClasses() {
17
+ const dir = (0, _TextDirectionContext.useTextDirection)();
18
+ return getStyles({
19
+ dir
20
+ });
21
+ };
22
+ } //# sourceMappingURL=__css.js.map
@@ -0,0 +1,22 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "__resetCSS", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return __resetCSS;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
14
+ function __resetCSS(ltrClassName, rtlClassName) {
15
+ const getStyles = (0, _core.__resetCSS)(ltrClassName, rtlClassName);
16
+ return function useClasses() {
17
+ const dir = (0, _TextDirectionContext.useTextDirection)();
18
+ return getStyles({
19
+ dir
20
+ });
21
+ };
22
+ } //# sourceMappingURL=__resetCSS.js.map
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "__resetStyles", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return __resetStyles;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _insertionFactory = require("./insertionFactory.cjs");
14
+ const _RendererContext = require("./RendererContext.cjs");
15
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
16
+ function __resetStyles(ltrClassName, rtlClassName, cssRules) {
17
+ const getStyles = (0, _core.__resetStyles)(ltrClassName, rtlClassName, cssRules, _insertionFactory.insertionFactory);
18
+ return function useClasses() {
19
+ const dir = (0, _TextDirectionContext.useTextDirection)();
20
+ const renderer = (0, _RendererContext.useRenderer)();
21
+ return getStyles({
22
+ dir,
23
+ renderer
24
+ });
25
+ };
26
+ } //# sourceMappingURL=__resetStyles.js.map
@@ -0,0 +1,18 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "__staticCSS", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return __staticCSS;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ function __staticCSS() {
14
+ const getStyles = (0, _core.__staticCSS)();
15
+ return function useStaticStyles() {
16
+ return getStyles();
17
+ };
18
+ } //# sourceMappingURL=__staticCSS.js.map
@@ -0,0 +1,23 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "__staticStyles", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return __staticStyles;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _insertionFactory = require("./insertionFactory.cjs");
14
+ const _RendererContext = require("./RendererContext.cjs");
15
+ function __staticStyles(cssRules) {
16
+ const getStyles = (0, _core.__staticStyles)(cssRules, _insertionFactory.insertionFactory);
17
+ return function useStaticStyles() {
18
+ const renderer = (0, _RendererContext.useRenderer)();
19
+ return getStyles({
20
+ renderer
21
+ });
22
+ };
23
+ } //# sourceMappingURL=__staticStyles.js.map
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "__styles", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return __styles;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _insertionFactory = require("./insertionFactory.cjs");
14
+ const _RendererContext = require("./RendererContext.cjs");
15
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
16
+ function __styles(classesMapBySlot, cssRules) {
17
+ const getStyles = (0, _core.__styles)(classesMapBySlot, cssRules, _insertionFactory.insertionFactory);
18
+ return function useClasses() {
19
+ const dir = (0, _TextDirectionContext.useTextDirection)();
20
+ const renderer = (0, _RendererContext.useRenderer)();
21
+ return getStyles({
22
+ dir,
23
+ renderer
24
+ });
25
+ };
26
+ } //# sourceMappingURL=__styles.js.map
package/lib/index.cjs ADDED
@@ -0,0 +1,78 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get RESET () {
14
+ return _core.RESET;
15
+ },
16
+ get RendererProvider () {
17
+ return _RendererContext.RendererProvider;
18
+ },
19
+ get TextDirectionProvider () {
20
+ return _TextDirectionContext.TextDirectionProvider;
21
+ },
22
+ get __css () {
23
+ return __css.__css;
24
+ },
25
+ get __resetCSS () {
26
+ return __resetCSS.__resetCSS;
27
+ },
28
+ get __resetStyles () {
29
+ return __resetStyles.__resetStyles;
30
+ },
31
+ get __staticCSS () {
32
+ return __staticCSS.__staticCSS;
33
+ },
34
+ get __staticStyles () {
35
+ return __staticStyles.__staticStyles;
36
+ },
37
+ get __styles () {
38
+ return __styles.__styles;
39
+ },
40
+ get createDOMRenderer () {
41
+ return _core.createDOMRenderer;
42
+ },
43
+ get makeResetStyles () {
44
+ return _makeResetStyles.makeResetStyles;
45
+ },
46
+ get makeStaticStyles () {
47
+ return _makeStaticStyles.makeStaticStyles;
48
+ },
49
+ get makeStyles () {
50
+ return _makeStyles.makeStyles;
51
+ },
52
+ get mergeClasses () {
53
+ return _core.mergeClasses;
54
+ },
55
+ get renderToStyleElements () {
56
+ return _renderToStyleElements.renderToStyleElements;
57
+ },
58
+ get shorthands () {
59
+ return _core.shorthands;
60
+ },
61
+ get useRenderer_unstable () {
62
+ return _RendererContext.useRenderer;
63
+ }
64
+ });
65
+ const _core = require("@griffel/core");
66
+ const _makeStyles = require("./makeStyles.cjs");
67
+ const _makeResetStyles = require("./makeResetStyles.cjs");
68
+ const _makeStaticStyles = require("./makeStaticStyles.cjs");
69
+ const _renderToStyleElements = require("./renderToStyleElements.cjs");
70
+ const _RendererContext = require("./RendererContext.cjs");
71
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
72
+ const __css = require("./__css.cjs");
73
+ const __styles = require("./__styles.cjs");
74
+ const __resetCSS = require("./__resetCSS.cjs");
75
+ const __resetStyles = require("./__resetStyles.cjs");
76
+ const __staticCSS = require("./__staticCSS.cjs");
77
+ const __staticStyles = require("./__staticStyles.cjs");
78
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,33 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "insertionFactory", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return insertionFactory;
10
+ }
11
+ });
12
+ const _canUseDOM = require("./utils/canUseDOM.cjs");
13
+ const _useInsertionEffect = require("./useInsertionEffect.cjs");
14
+ const insertionFactory = ()=>{
15
+ const insertionCache = {};
16
+ return function insert(renderer, cssRules) {
17
+ // Even if `useInsertionEffect` is available, we can use it on a client only as it will not be executed in SSR
18
+ if (_useInsertionEffect.useInsertionEffect && (0, _canUseDOM.canUseDOM)()) {
19
+ // eslint-disable-next-line react-hooks/rules-of-hooks
20
+ (0, _useInsertionEffect.useInsertionEffect)(()=>{
21
+ renderer.insertCSSRules(cssRules);
22
+ }, [
23
+ renderer,
24
+ cssRules
25
+ ]);
26
+ return;
27
+ }
28
+ if (insertionCache[renderer.id] === undefined) {
29
+ renderer.insertCSSRules(cssRules);
30
+ insertionCache[renderer.id] = true;
31
+ }
32
+ };
33
+ }; //# sourceMappingURL=insertionFactory.js.map
@@ -0,0 +1,35 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "makeResetStyles", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return makeResetStyles;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _insertionFactory = require("./insertionFactory.cjs");
14
+ const _RendererContext = require("./RendererContext.cjs");
15
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
16
+ const _isInsideComponent = require("./utils/isInsideComponent.cjs");
17
+ function makeResetStyles(styles) {
18
+ const getStyles = (0, _core.makeResetStyles)(styles, _insertionFactory.insertionFactory);
19
+ if (process.env.NODE_ENV !== 'production') {
20
+ if ((0, _isInsideComponent.isInsideComponent)()) {
21
+ throw new Error([
22
+ "makeResetStyles(): this function cannot be called in component's scope.",
23
+ 'All makeResetStyles() calls should be top level i.e. in a root scope of a file.'
24
+ ].join(' '));
25
+ }
26
+ }
27
+ return function useClassName() {
28
+ const dir = (0, _TextDirectionContext.useTextDirection)();
29
+ const renderer = (0, _RendererContext.useRenderer)();
30
+ return getStyles({
31
+ dir,
32
+ renderer
33
+ });
34
+ };
35
+ } //# sourceMappingURL=makeResetStyles.js.map
@@ -0,0 +1,28 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "makeStaticStyles", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return makeStaticStyles;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _insertionFactory = require("./insertionFactory.cjs");
14
+ const _RendererContext = require("./RendererContext.cjs");
15
+ function makeStaticStyles(styles) {
16
+ const getStyles = (0, _core.makeStaticStyles)(styles, _insertionFactory.insertionFactory);
17
+ if (process.env.NODE_ENV === 'test') {
18
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
19
+ return ()=>{};
20
+ }
21
+ return function useStaticStyles() {
22
+ const renderer = (0, _RendererContext.useRenderer)();
23
+ const options = {
24
+ renderer
25
+ };
26
+ return getStyles(options);
27
+ };
28
+ } //# sourceMappingURL=makeStaticStyles.js.map
@@ -0,0 +1,35 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "makeStyles", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return makeStyles;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _insertionFactory = require("./insertionFactory.cjs");
14
+ const _RendererContext = require("./RendererContext.cjs");
15
+ const _TextDirectionContext = require("./TextDirectionContext.cjs");
16
+ const _isInsideComponent = require("./utils/isInsideComponent.cjs");
17
+ function makeStyles(stylesBySlots) {
18
+ const getStyles = (0, _core.makeStyles)(stylesBySlots, _insertionFactory.insertionFactory);
19
+ if (process.env.NODE_ENV !== 'production') {
20
+ if ((0, _isInsideComponent.isInsideComponent)()) {
21
+ throw new Error([
22
+ "makeStyles(): this function cannot be called in component's scope.",
23
+ 'All makeStyles() calls should be top level i.e. in a root scope of a file.'
24
+ ].join(' '));
25
+ }
26
+ }
27
+ return function useClasses() {
28
+ const dir = (0, _TextDirectionContext.useTextDirection)();
29
+ const renderer = (0, _RendererContext.useRenderer)();
30
+ return getStyles({
31
+ dir,
32
+ renderer
33
+ });
34
+ };
35
+ } //# sourceMappingURL=makeStyles.js.map
@@ -0,0 +1,50 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "renderToStyleElements", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return renderToStyleElements;
10
+ }
11
+ });
12
+ const _core = require("@griffel/core");
13
+ const _react = require("react");
14
+ function renderToStyleElements(renderer) {
15
+ const stylesheets = Object.values(renderer.stylesheets)// first sort: bucket by order [data-priority]
16
+ .sort((a, b)=>{
17
+ return Number(a.elementAttributes['data-priority']) - Number(b.elementAttributes['data-priority']);
18
+ })// second sort: bucket by bucket name
19
+ .sort((a, b)=>{
20
+ return _core.styleBucketOrdering.indexOf(a.bucketName) - _core.styleBucketOrdering.indexOf(b.bucketName);
21
+ })// third sort: media queries
22
+ .sort((a, b)=>{
23
+ const mediaA = a.elementAttributes['media'];
24
+ const mediaB = b.elementAttributes['media'];
25
+ if (mediaA && mediaB) {
26
+ return renderer.compareMediaQueries(mediaA, mediaB);
27
+ }
28
+ if (mediaA || mediaB) {
29
+ return mediaA ? 1 : -1;
30
+ }
31
+ return 0;
32
+ });
33
+ return stylesheets.map((stylesheet)=>{
34
+ const cssRules = stylesheet.cssRules();
35
+ // don't want to create any empty style elements
36
+ if (!cssRules.length) {
37
+ return null;
38
+ }
39
+ return (0, _react.createElement)('style', {
40
+ key: stylesheet.bucketName,
41
+ // TODO: support "nonce"
42
+ // ...renderer.styleNodeAttributes,
43
+ ...stylesheet.elementAttributes,
44
+ 'data-make-styles-rehydration': 'true',
45
+ dangerouslySetInnerHTML: {
46
+ __html: cssRules.join('')
47
+ }
48
+ });
49
+ }).filter(Boolean);
50
+ } //# sourceMappingURL=renderToStyleElements.js.map
@@ -0,0 +1,20 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "useInsertionEffect", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return useInsertionEffect;
10
+ }
11
+ });
12
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ const useInsertionEffect = // @ts-expect-error Hack to make sure that `useInsertionEffect` will not cause bundling issues in older React versions
19
+ // eslint-disable-next-line no-useless-concat
20
+ _react.default['useInsertion' + 'Effect'] ? _react.default['useInsertion' + 'Effect'] : undefined; //# sourceMappingURL=useInsertionEffect.js.map
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Verifies if an application can use DOM.
3
+ */ "use strict";
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "canUseDOM", {
8
+ enumerable: true,
9
+ get: function() {
10
+ return canUseDOM;
11
+ }
12
+ });
13
+ function canUseDOM() {
14
+ return typeof window !== 'undefined' && !!(window.document && window.document.createElement);
15
+ } //# sourceMappingURL=canUseDOM.js.map
@@ -0,0 +1,46 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "isInsideComponent", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return isInsideComponent;
10
+ }
11
+ });
12
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ function getDispatcher() {
19
+ try {
20
+ return _react.default[''.concat('__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE')].H;
21
+ } catch {
22
+ // React 19+
23
+ }
24
+ try {
25
+ return _react.default[''.concat('__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED')].ReactCurrentDispatcher.current;
26
+ } catch {
27
+ // React 18 and below
28
+ }
29
+ }
30
+ function isInsideComponent() {
31
+ // React 18 always logs errors if a dispatcher is not present:
32
+ // https://github.com/facebook/react/blob/42f15b324f50d0fd98322c21646ac3013e30344a/packages/react/src/ReactHooks.js#L26-L36
33
+ try {
34
+ const dispatcher = getDispatcher();
35
+ // Before any React component was rendered "dispatcher" will be "null"
36
+ if (dispatcher === null || dispatcher === undefined) {
37
+ return false;
38
+ }
39
+ // A check with hooks call (i.e. call "React.useContext()" outside a component) will always produce errors, but
40
+ // a call on the dispatcher wont
41
+ dispatcher.useContext({});
42
+ return true;
43
+ } catch {
44
+ return false;
45
+ }
46
+ } //# sourceMappingURL=isInsideComponent.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@griffel/react",
3
- "version": "1.6.1",
3
+ "version": "1.6.2",
4
4
  "description": "React implementation of Atomic CSS-in-JS",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -8,6 +8,18 @@
8
8
  "url": "https://github.com/microsoft/griffel"
9
9
  },
10
10
  "sideEffects": false,
11
+ "type": "module",
12
+ "main": "./lib/index.cjs",
13
+ "module": "./src/index.js",
14
+ "types": "./src/index.d.ts",
15
+ "exports": {
16
+ ".": {
17
+ "types": "./src/index.d.ts",
18
+ "import": "./src/index.js",
19
+ "require": "./lib/index.cjs"
20
+ },
21
+ "./package.json": "./package.json"
22
+ },
11
23
  "wyw-in-js": {
12
24
  "tags": {
13
25
  "makeStyles": "@griffel/tag-processor/make-styles",
@@ -15,13 +27,10 @@
15
27
  }
16
28
  },
17
29
  "dependencies": {
18
- "@griffel/core": "^1.20.1",
30
+ "@griffel/core": "^1.20.2",
19
31
  "tslib": "^2.1.0"
20
32
  },
21
33
  "peerDependencies": {
22
34
  "react": ">=16.8.0 <20.0.0"
23
- },
24
- "module": "./index.esm.js",
25
- "main": "./index.cjs.js",
26
- "types": "./index.d.ts"
35
+ }
27
36
  }
@@ -1,5 +1,5 @@
1
1
  import type { GriffelRenderer } from '@griffel/core';
2
- import * as React from 'react';
2
+ import React from 'react';
3
3
  export interface RendererProviderProps {
4
4
  /** An instance of Griffel renderer. */
5
5
  renderer: GriffelRenderer;
@@ -0,0 +1,30 @@
1
+ 'use client';
2
+ import { createDOMRenderer, rehydrateRendererCache } from '@griffel/core';
3
+ import React from 'react';
4
+ import { canUseDOM } from './utils/canUseDOM.js';
5
+ /**
6
+ * @private
7
+ */
8
+ const RendererContext = /*#__PURE__*/ React.createContext(/*#__PURE__*/ createDOMRenderer());
9
+ /**
10
+ * @public
11
+ */
12
+ export const RendererProvider = ({ children, renderer, targetDocument }) => {
13
+ React.useMemo(() => {
14
+ if (canUseDOM()) {
15
+ // "rehydrateCache()" can't be called in effects as it needs to be called before any component will be rendered to
16
+ // avoid double insertion of classes
17
+ rehydrateRendererCache(renderer, targetDocument);
18
+ }
19
+ }, [renderer, targetDocument]);
20
+ return React.createElement(RendererContext.Provider, { value: renderer }, children);
21
+ };
22
+ /**
23
+ * Returns an instance of current makeStyles() renderer.
24
+ *
25
+ * @private Exported as "useRenderer_unstable" use it on own risk. Can be changed or removed without a notice.
26
+ */
27
+ export function useRenderer() {
28
+ return React.useContext(RendererContext);
29
+ }
30
+ //# sourceMappingURL=RendererContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RendererContext.js","sourceRoot":"","sources":["../../../../packages/react/src/RendererContext.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE1E,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAiBjD;;GAEG;AACH,MAAM,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAkB,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAE9G;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE;IAC1G,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACjB,IAAI,SAAS,EAAE,EAAE,CAAC;YAChB,kHAAkH;YAClH,oCAAoC;YACpC,sBAAsB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;IAE/B,OAAO,oBAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ,IAAG,QAAQ,CAA4B,CAAC;AAC1F,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AAC3C,CAAC"}