@makeswift/runtime 0.29.0-canary.21 → 0.29.0-canary.23

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 (159) hide show
  1. package/dist/cjs/api/graphql-api-client.js +1 -1
  2. package/dist/cjs/api/rest-api-client.js +1 -1
  3. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  4. package/dist/cjs/api-handler/handlers/merge-translated-data.js +2 -12
  5. package/dist/cjs/api-handler/handlers/merge-translated-data.js.map +1 -1
  6. package/dist/cjs/api-handler/handlers/revalidate.js +2 -12
  7. package/dist/cjs/api-handler/handlers/revalidate.js.map +1 -1
  8. package/dist/cjs/api-handler/handlers/table-record.js +2 -12
  9. package/dist/cjs/api-handler/handlers/table-record.js.map +1 -1
  10. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +3 -18
  11. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  12. package/dist/cjs/next/document.js +2 -1
  13. package/dist/cjs/next/document.js.map +1 -1
  14. package/dist/cjs/next/root-style-registry.js +11 -2
  15. package/dist/cjs/next/root-style-registry.js.map +1 -1
  16. package/dist/cjs/runtimes/react/css-runtime/components/styles-context-provider.js +2 -0
  17. package/dist/cjs/runtimes/react/css-runtime/components/styles-context-provider.js.map +1 -1
  18. package/dist/cjs/runtimes/react/css-runtime/constants.js +3 -0
  19. package/dist/cjs/runtimes/react/css-runtime/constants.js.map +1 -1
  20. package/dist/cjs/runtimes/react/css-runtime/hooks/use-base-styles.js +2 -2
  21. package/dist/cjs/runtimes/react/css-runtime/hooks/use-base-styles.js.map +1 -1
  22. package/dist/cjs/runtimes/react/css-runtime/hooks/use-controlled-styles.js +4 -3
  23. package/dist/cjs/runtimes/react/css-runtime/hooks/use-controlled-styles.js.map +1 -1
  24. package/dist/cjs/runtimes/react/css-runtime/hooks/use-css-reset.js +4 -7
  25. package/dist/cjs/runtimes/react/css-runtime/hooks/use-css-reset.js.map +1 -1
  26. package/dist/cjs/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js +2 -2
  27. package/dist/cjs/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js.map +1 -1
  28. package/dist/cjs/runtimes/react/css-runtime/hooks/use-style.js +4 -3
  29. package/dist/cjs/runtimes/react/css-runtime/hooks/use-style.js.map +1 -1
  30. package/dist/cjs/runtimes/react/css-runtime/serialize-css.js +24 -7
  31. package/dist/cjs/runtimes/react/css-runtime/serialize-css.js.map +1 -1
  32. package/dist/cjs/runtimes/react/css-runtime/stylesheet-engine.js +9 -3
  33. package/dist/cjs/runtimes/react/css-runtime/stylesheet-engine.js.map +1 -1
  34. package/dist/cjs/runtimes/react/hooks/use-async-effect.js +4 -3
  35. package/dist/cjs/runtimes/react/hooks/use-async-effect.js.map +1 -1
  36. package/dist/cjs/runtimes/react/hooks/use-server-element-refresh.js +10 -20
  37. package/dist/cjs/runtimes/react/hooks/use-server-element-refresh.js.map +1 -1
  38. package/dist/cjs/runtimes/react/root-style-registry.js +5 -1
  39. package/dist/cjs/runtimes/react/root-style-registry.js.map +1 -1
  40. package/dist/cjs/runtimes/react/server/components/editable-server-element.js +18 -14
  41. package/dist/cjs/runtimes/react/server/components/editable-server-element.js.map +1 -1
  42. package/dist/cjs/runtimes/react/server/components/element-data.js +1 -0
  43. package/dist/cjs/runtimes/react/server/components/element-data.js.map +1 -1
  44. package/dist/cjs/runtimes/react/server/components/server-elements-cache.js +75 -25
  45. package/dist/cjs/runtimes/react/server/components/server-elements-cache.js.map +1 -1
  46. package/dist/cjs/state/actions/internal/read-write-action-types.js +1 -1
  47. package/dist/cjs/state/actions/internal/read-write-action-types.js.map +1 -1
  48. package/dist/cjs/state/actions/internal/read-write-actions.js +4 -4
  49. package/dist/cjs/state/actions/internal/read-write-actions.js.map +1 -1
  50. package/dist/cjs/state/modules/read-write/resolved-value-overrides.js +32 -14
  51. package/dist/cjs/state/modules/read-write/resolved-value-overrides.js.map +1 -1
  52. package/dist/cjs/state/read-write-state.js +5 -0
  53. package/dist/cjs/state/read-write-state.js.map +1 -1
  54. package/dist/cjs/testing/window.js +50 -0
  55. package/dist/cjs/testing/window.js.map +1 -0
  56. package/dist/cjs/utils/{isErrorWithMessage.js → error-message.js} +12 -5
  57. package/dist/cjs/utils/error-message.js.map +1 -0
  58. package/dist/esm/api/graphql-api-client.js +1 -1
  59. package/dist/esm/api/rest-api-client.js +1 -1
  60. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  61. package/dist/esm/api-handler/handlers/merge-translated-data.js +1 -1
  62. package/dist/esm/api-handler/handlers/merge-translated-data.js.map +1 -1
  63. package/dist/esm/api-handler/handlers/revalidate.js +1 -1
  64. package/dist/esm/api-handler/handlers/revalidate.js.map +1 -1
  65. package/dist/esm/api-handler/handlers/table-record.js +1 -1
  66. package/dist/esm/api-handler/handlers/table-record.js.map +1 -1
  67. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +3 -18
  68. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  69. package/dist/esm/next/document.js +2 -1
  70. package/dist/esm/next/document.js.map +1 -1
  71. package/dist/esm/next/root-style-registry.js +11 -2
  72. package/dist/esm/next/root-style-registry.js.map +1 -1
  73. package/dist/esm/runtimes/react/css-runtime/components/styles-context-provider.js +2 -0
  74. package/dist/esm/runtimes/react/css-runtime/components/styles-context-provider.js.map +1 -1
  75. package/dist/esm/runtimes/react/css-runtime/constants.js +2 -0
  76. package/dist/esm/runtimes/react/css-runtime/constants.js.map +1 -1
  77. package/dist/esm/runtimes/react/css-runtime/hooks/use-base-styles.js +2 -2
  78. package/dist/esm/runtimes/react/css-runtime/hooks/use-base-styles.js.map +1 -1
  79. package/dist/esm/runtimes/react/css-runtime/hooks/use-controlled-styles.js +4 -3
  80. package/dist/esm/runtimes/react/css-runtime/hooks/use-controlled-styles.js.map +1 -1
  81. package/dist/esm/runtimes/react/css-runtime/hooks/use-css-reset.js +4 -7
  82. package/dist/esm/runtimes/react/css-runtime/hooks/use-css-reset.js.map +1 -1
  83. package/dist/esm/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js +2 -2
  84. package/dist/esm/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js.map +1 -1
  85. package/dist/esm/runtimes/react/css-runtime/hooks/use-style.js +4 -3
  86. package/dist/esm/runtimes/react/css-runtime/hooks/use-style.js.map +1 -1
  87. package/dist/esm/runtimes/react/css-runtime/serialize-css.js +34 -8
  88. package/dist/esm/runtimes/react/css-runtime/serialize-css.js.map +1 -1
  89. package/dist/esm/runtimes/react/css-runtime/stylesheet-engine.js +9 -3
  90. package/dist/esm/runtimes/react/css-runtime/stylesheet-engine.js.map +1 -1
  91. package/dist/esm/runtimes/react/hooks/use-async-effect.js +4 -3
  92. package/dist/esm/runtimes/react/hooks/use-async-effect.js.map +1 -1
  93. package/dist/esm/runtimes/react/hooks/use-server-element-refresh.js +11 -21
  94. package/dist/esm/runtimes/react/hooks/use-server-element-refresh.js.map +1 -1
  95. package/dist/esm/runtimes/react/root-style-registry.js +7 -2
  96. package/dist/esm/runtimes/react/root-style-registry.js.map +1 -1
  97. package/dist/esm/runtimes/react/server/components/editable-server-element.js +19 -15
  98. package/dist/esm/runtimes/react/server/components/editable-server-element.js.map +1 -1
  99. package/dist/esm/runtimes/react/server/components/element-data.js +1 -0
  100. package/dist/esm/runtimes/react/server/components/element-data.js.map +1 -1
  101. package/dist/esm/runtimes/react/server/components/server-elements-cache.js +83 -26
  102. package/dist/esm/runtimes/react/server/components/server-elements-cache.js.map +1 -1
  103. package/dist/esm/state/actions/internal/read-write-action-types.js +1 -1
  104. package/dist/esm/state/actions/internal/read-write-action-types.js.map +1 -1
  105. package/dist/esm/state/actions/internal/read-write-actions.js +3 -3
  106. package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -1
  107. package/dist/esm/state/modules/read-write/resolved-value-overrides.js +31 -14
  108. package/dist/esm/state/modules/read-write/resolved-value-overrides.js.map +1 -1
  109. package/dist/esm/state/read-write-state.js +4 -0
  110. package/dist/esm/state/read-write-state.js.map +1 -1
  111. package/dist/esm/testing/window.js +26 -0
  112. package/dist/esm/testing/window.js.map +1 -0
  113. package/dist/esm/utils/error-message.js +9 -0
  114. package/dist/esm/utils/error-message.js.map +1 -0
  115. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  116. package/dist/types/next/root-style-registry.d.ts +1 -1
  117. package/dist/types/next/root-style-registry.d.ts.map +1 -1
  118. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/utils.d.ts +2 -1
  119. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/utils.d.ts.map +1 -1
  120. package/dist/types/runtimes/react/css-runtime/components/styles-context-provider.d.ts +2 -1
  121. package/dist/types/runtimes/react/css-runtime/components/styles-context-provider.d.ts.map +1 -1
  122. package/dist/types/runtimes/react/css-runtime/constants.d.ts +1 -0
  123. package/dist/types/runtimes/react/css-runtime/constants.d.ts.map +1 -1
  124. package/dist/types/runtimes/react/css-runtime/hooks/use-controlled-styles.d.ts.map +1 -1
  125. package/dist/types/runtimes/react/css-runtime/hooks/use-style.d.ts.map +1 -1
  126. package/dist/types/runtimes/react/css-runtime/serialize-css.d.ts +7 -3
  127. package/dist/types/runtimes/react/css-runtime/serialize-css.d.ts.map +1 -1
  128. package/dist/types/runtimes/react/css-runtime/stylesheet-engine.d.ts +3 -1
  129. package/dist/types/runtimes/react/css-runtime/stylesheet-engine.d.ts.map +1 -1
  130. package/dist/types/runtimes/react/hooks/use-async-effect.d.ts.map +1 -1
  131. package/dist/types/runtimes/react/hooks/use-server-element-refresh.d.ts +3 -4
  132. package/dist/types/runtimes/react/hooks/use-server-element-refresh.d.ts.map +1 -1
  133. package/dist/types/runtimes/react/root-style-registry.d.ts +12 -2
  134. package/dist/types/runtimes/react/root-style-registry.d.ts.map +1 -1
  135. package/dist/types/runtimes/react/server/components/editable-server-element.d.ts.map +1 -1
  136. package/dist/types/runtimes/react/server/components/element-data.d.ts.map +1 -1
  137. package/dist/types/runtimes/react/server/components/server-elements-cache.d.ts +2 -2
  138. package/dist/types/runtimes/react/server/components/server-elements-cache.d.ts.map +1 -1
  139. package/dist/types/state/actions/index.d.ts +1 -1
  140. package/dist/types/state/actions/internal/action-types.d.ts +1 -1
  141. package/dist/types/state/actions/internal/read-write-action-types.d.ts +1 -1
  142. package/dist/types/state/actions/internal/read-write-actions.d.ts +6 -5
  143. package/dist/types/state/actions/internal/read-write-actions.d.ts.map +1 -1
  144. package/dist/types/state/modules/read-write/resolved-value-overrides.d.ts +9 -3
  145. package/dist/types/state/modules/read-write/resolved-value-overrides.d.ts.map +1 -1
  146. package/dist/types/state/read-write-state.d.ts +1 -0
  147. package/dist/types/state/read-write-state.d.ts.map +1 -1
  148. package/dist/types/testing/window.d.ts +9 -0
  149. package/dist/types/testing/window.d.ts.map +1 -0
  150. package/dist/types/utils/__tests__/error-message.test.d.ts +2 -0
  151. package/dist/types/utils/__tests__/error-message.test.d.ts.map +1 -0
  152. package/dist/types/utils/error-message.d.ts +7 -0
  153. package/dist/types/utils/error-message.d.ts.map +1 -0
  154. package/package.json +3 -3
  155. package/dist/cjs/utils/isErrorWithMessage.js.map +0 -1
  156. package/dist/esm/utils/isErrorWithMessage.js +0 -7
  157. package/dist/esm/utils/isErrorWithMessage.js.map +0 -1
  158. package/dist/types/utils/isErrorWithMessage.d.ts +0 -6
  159. package/dist/types/utils/isErrorWithMessage.d.ts.map +0 -1
@@ -27,7 +27,7 @@ class MakeswiftGraphQLApiClient {
27
27
  graphqlClient;
28
28
  constructor({ endpoint }) {
29
29
  this.graphqlClient = new import_client.GraphQLClient(endpoint, {
30
- "makeswift-runtime-version": "0.29.0-canary.21"
30
+ "makeswift-runtime-version": "0.29.0-canary.23"
31
31
  });
32
32
  }
33
33
  async getUnversionedResources({
@@ -223,7 +223,7 @@ class MakeswiftRestAPIClient {
223
223
  const requestHeaders = new Headers({
224
224
  "x-api-key": this.apiKey,
225
225
  "makeswift-site-api-key": this.apiKey,
226
- "makeswift-runtime-version": "0.29.0-canary.21"
226
+ "makeswift-runtime-version": "0.29.0-canary.23"
227
227
  });
228
228
  if (siteVersion?.token) {
229
229
  requestUrl.searchParams.set("version", siteVersion.version);
@@ -28,7 +28,7 @@ async function manifestHandler(req, { apiKey, manifest }) {
28
28
  return import_request_response.ApiResponse.json({ message: "Unauthorized" }, { status: 401 });
29
29
  }
30
30
  return import_request_response.ApiResponse.json({
31
- version: "0.29.0-canary.21",
31
+ version: "0.29.0-canary.23",
32
32
  interactionMode: true,
33
33
  clientSideNavigation: false,
34
34
  elementFromPoint: false,
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,14 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
19
  var merge_translated_data_exports = {};
30
20
  __export(merge_translated_data_exports, {
@@ -32,7 +22,7 @@ __export(merge_translated_data_exports, {
32
22
  });
33
23
  module.exports = __toCommonJS(merge_translated_data_exports);
34
24
  var import_request_response = require("../request-response");
35
- var import_isErrorWithMessage = __toESM(require("../../utils/isErrorWithMessage"));
25
+ var import_error_message = require("../../utils/error-message");
36
26
  async function mergeTranslatedDataHandler(req, { client }) {
37
27
  const body = await req.json();
38
28
  const { translatedData, elementTree } = body;
@@ -46,7 +36,7 @@ async function mergeTranslatedDataHandler(req, { client }) {
46
36
  const translatedElementTree = client.mergeTranslatedData(elementTree, translatedData);
47
37
  return import_request_response.ApiResponse.json({ elementTree: translatedElementTree });
48
38
  } catch (error) {
49
- if ((0, import_isErrorWithMessage.default)(error)) {
39
+ if ((0, import_error_message.isErrorWithMessage)(error)) {
50
40
  return import_request_response.ApiResponse.json({ message: error.message }, { status: 500 });
51
41
  }
52
42
  return import_request_response.ApiResponse.json({ message: "Error merging translated data" }, { status: 500 });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/api-handler/handlers/merge-translated-data.ts"],"sourcesContent":["import { type Element } from '../../state/read-only-state'\nimport { MakeswiftClient } from '../../client'\nimport { type ApiRequest, ApiResponse, type ErrorResponseBody } from '../request-response'\nimport isErrorWithMessage from '../../utils/isErrorWithMessage'\n\ntype TranslatedData = { elementTree: Element }\n\nexport async function mergeTranslatedDataHandler(\n req: ApiRequest,\n { client }: { client: MakeswiftClient },\n): Promise<ApiResponse<TranslatedData | ErrorResponseBody>> {\n const body = await req.json()\n const { translatedData, elementTree } = body\n\n if (translatedData == null) {\n return ApiResponse.json({ message: 'translatedData must be defined' }, { status: 400 })\n }\n\n if (elementTree == null) {\n return ApiResponse.json({ message: 'elementTree must be defined' }, { status: 400 })\n }\n\n try {\n const translatedElementTree = client.mergeTranslatedData(elementTree, translatedData)\n return ApiResponse.json({ elementTree: translatedElementTree })\n } catch (error) {\n if (isErrorWithMessage(error)) {\n return ApiResponse.json({ message: error.message }, { status: 500 })\n }\n return ApiResponse.json({ message: 'Error merging translated data' }, { status: 500 })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,8BAAqE;AACrE,gCAA+B;AAI/B,eAAsB,2BACpB,KACA,EAAE,OAAO,GACiD;AAC1D,QAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,QAAM,EAAE,gBAAgB,YAAY,IAAI;AAExC,MAAI,kBAAkB,MAAM;AAC1B,WAAO,oCAAY,KAAK,EAAE,SAAS,iCAAiC,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACxF;AAEA,MAAI,eAAe,MAAM;AACvB,WAAO,oCAAY,KAAK,EAAE,SAAS,8BAA8B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACrF;AAEA,MAAI;AACF,UAAM,wBAAwB,OAAO,oBAAoB,aAAa,cAAc;AACpF,WAAO,oCAAY,KAAK,EAAE,aAAa,sBAAsB,CAAC;AAAA,EAChE,SAAS,OAAO;AACd,YAAI,0BAAAA,SAAmB,KAAK,GAAG;AAC7B,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IACrE;AACA,WAAO,oCAAY,KAAK,EAAE,SAAS,gCAAgC,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACvF;AACF;","names":["isErrorWithMessage"]}
1
+ {"version":3,"sources":["../../../../src/api-handler/handlers/merge-translated-data.ts"],"sourcesContent":["import { type Element } from '../../state/read-only-state'\nimport { MakeswiftClient } from '../../client'\nimport { type ApiRequest, ApiResponse, type ErrorResponseBody } from '../request-response'\nimport { isErrorWithMessage } from '../../utils/error-message'\n\ntype TranslatedData = { elementTree: Element }\n\nexport async function mergeTranslatedDataHandler(\n req: ApiRequest,\n { client }: { client: MakeswiftClient },\n): Promise<ApiResponse<TranslatedData | ErrorResponseBody>> {\n const body = await req.json()\n const { translatedData, elementTree } = body\n\n if (translatedData == null) {\n return ApiResponse.json({ message: 'translatedData must be defined' }, { status: 400 })\n }\n\n if (elementTree == null) {\n return ApiResponse.json({ message: 'elementTree must be defined' }, { status: 400 })\n }\n\n try {\n const translatedElementTree = client.mergeTranslatedData(elementTree, translatedData)\n return ApiResponse.json({ elementTree: translatedElementTree })\n } catch (error) {\n if (isErrorWithMessage(error)) {\n return ApiResponse.json({ message: error.message }, { status: 500 })\n }\n return ApiResponse.json({ message: 'Error merging translated data' }, { status: 500 })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,8BAAqE;AACrE,2BAAmC;AAInC,eAAsB,2BACpB,KACA,EAAE,OAAO,GACiD;AAC1D,QAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,QAAM,EAAE,gBAAgB,YAAY,IAAI;AAExC,MAAI,kBAAkB,MAAM;AAC1B,WAAO,oCAAY,KAAK,EAAE,SAAS,iCAAiC,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACxF;AAEA,MAAI,eAAe,MAAM;AACvB,WAAO,oCAAY,KAAK,EAAE,SAAS,8BAA8B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACrF;AAEA,MAAI;AACF,UAAM,wBAAwB,OAAO,oBAAoB,aAAa,cAAc;AACpF,WAAO,oCAAY,KAAK,EAAE,aAAa,sBAAsB,CAAC;AAAA,EAChE,SAAS,OAAO;AACd,YAAI,yCAAmB,KAAK,GAAG;AAC7B,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IACrE;AACA,WAAO,oCAAY,KAAK,EAAE,SAAS,gCAAgC,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACvF;AACF;","names":[]}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,21 +15,13 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
19
  var revalidate_exports = {};
30
20
  __export(revalidate_exports, {
31
21
  revalidateHandler: () => revalidateHandler
32
22
  });
33
23
  module.exports = __toCommonJS(revalidate_exports);
34
- var import_isErrorWithMessage = __toESM(require("../../utils/isErrorWithMessage"));
24
+ var import_error_message = require("../../utils/error-message");
35
25
  var import_request_response = require("../request-response");
36
26
  async function revalidateHandler(req, { apiKey, revalidatePath }) {
37
27
  const params = (0, import_request_response.searchParams)(req);
@@ -47,7 +37,7 @@ async function revalidateHandler(req, { apiKey, revalidatePath }) {
47
37
  await revalidatePath(path);
48
38
  return import_request_response.ApiResponse.json({ revalidated: true });
49
39
  } catch (error) {
50
- if ((0, import_isErrorWithMessage.default)(error)) {
40
+ if ((0, import_error_message.isErrorWithMessage)(error)) {
51
41
  return import_request_response.ApiResponse.json({ message: error.message }, { status: 500 });
52
42
  }
53
43
  return import_request_response.ApiResponse.json({ message: "Error Revalidating" }, { status: 500 });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/api-handler/handlers/revalidate.ts"],"sourcesContent":["import isErrorWithMessage from '../../utils/isErrorWithMessage'\nimport {\n type ApiRequest,\n type ErrorResponseBody,\n ApiResponse,\n searchParams,\n} from '../request-response'\n\ntype RevalidationResult = { revalidated: boolean }\n\nexport async function revalidateHandler(\n req: ApiRequest,\n { apiKey, revalidatePath }: { apiKey: string; revalidatePath: (path: string) => Promise<void> },\n): Promise<ApiResponse<RevalidationResult | ErrorResponseBody>> {\n const params = searchParams(req)\n\n const secret = params.get('secret')\n if (secret !== apiKey) {\n return ApiResponse.json({ message: 'Unauthorized' }, { status: 401 })\n }\n\n const path = params.get('path')\n if (typeof path !== 'string') {\n return ApiResponse.json({ message: 'Bad Request' }, { status: 400 })\n }\n\n try {\n await revalidatePath(path)\n return ApiResponse.json({ revalidated: true })\n } catch (error) {\n if (isErrorWithMessage(error)) {\n return ApiResponse.json({ message: error.message }, { status: 500 })\n }\n\n return ApiResponse.json({ message: 'Error Revalidating' }, { status: 500 })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAA+B;AAC/B,8BAKO;AAIP,eAAsB,kBACpB,KACA,EAAE,QAAQ,eAAe,GACqC;AAC9D,QAAM,aAAS,sCAAa,GAAG;AAE/B,QAAM,SAAS,OAAO,IAAI,QAAQ;AAClC,MAAI,WAAW,QAAQ;AACrB,WAAO,oCAAY,KAAK,EAAE,SAAS,eAAe,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACtE;AAEA,QAAM,OAAO,OAAO,IAAI,MAAM;AAC9B,MAAI,OAAO,SAAS,UAAU;AAC5B,WAAO,oCAAY,KAAK,EAAE,SAAS,cAAc,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACrE;AAEA,MAAI;AACF,UAAM,eAAe,IAAI;AACzB,WAAO,oCAAY,KAAK,EAAE,aAAa,KAAK,CAAC;AAAA,EAC/C,SAAS,OAAO;AACd,YAAI,0BAAAA,SAAmB,KAAK,GAAG;AAC7B,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IACrE;AAEA,WAAO,oCAAY,KAAK,EAAE,SAAS,qBAAqB,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC5E;AACF;","names":["isErrorWithMessage"]}
1
+ {"version":3,"sources":["../../../../src/api-handler/handlers/revalidate.ts"],"sourcesContent":["import { isErrorWithMessage } from '../../utils/error-message'\nimport {\n type ApiRequest,\n type ErrorResponseBody,\n ApiResponse,\n searchParams,\n} from '../request-response'\n\ntype RevalidationResult = { revalidated: boolean }\n\nexport async function revalidateHandler(\n req: ApiRequest,\n { apiKey, revalidatePath }: { apiKey: string; revalidatePath: (path: string) => Promise<void> },\n): Promise<ApiResponse<RevalidationResult | ErrorResponseBody>> {\n const params = searchParams(req)\n\n const secret = params.get('secret')\n if (secret !== apiKey) {\n return ApiResponse.json({ message: 'Unauthorized' }, { status: 401 })\n }\n\n const path = params.get('path')\n if (typeof path !== 'string') {\n return ApiResponse.json({ message: 'Bad Request' }, { status: 400 })\n }\n\n try {\n await revalidatePath(path)\n return ApiResponse.json({ revalidated: true })\n } catch (error) {\n if (isErrorWithMessage(error)) {\n return ApiResponse.json({ message: error.message }, { status: 500 })\n }\n\n return ApiResponse.json({ message: 'Error Revalidating' }, { status: 500 })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAAmC;AACnC,8BAKO;AAIP,eAAsB,kBACpB,KACA,EAAE,QAAQ,eAAe,GACqC;AAC9D,QAAM,aAAS,sCAAa,GAAG;AAE/B,QAAM,SAAS,OAAO,IAAI,QAAQ;AAClC,MAAI,WAAW,QAAQ;AACrB,WAAO,oCAAY,KAAK,EAAE,SAAS,eAAe,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACtE;AAEA,QAAM,OAAO,OAAO,IAAI,MAAM;AAC9B,MAAI,OAAO,SAAS,UAAU;AAC5B,WAAO,oCAAY,KAAK,EAAE,SAAS,cAAc,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACrE;AAEA,MAAI;AACF,UAAM,eAAe,IAAI;AACzB,WAAO,oCAAY,KAAK,EAAE,aAAa,KAAK,CAAC;AAAA,EAC/C,SAAS,OAAO;AACd,YAAI,yCAAmB,KAAK,GAAG;AAC7B,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IACrE;AAEA,WAAO,oCAAY,KAAK,EAAE,SAAS,qBAAqB,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC5E;AACF;","names":[]}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,14 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
19
  var table_record_exports = {};
30
20
  __export(table_record_exports, {
@@ -33,7 +23,7 @@ __export(table_record_exports, {
33
23
  module.exports = __toCommonJS(table_record_exports);
34
24
  var import_rest_api_client = require("../../api/rest-api-client");
35
25
  var import_request_response = require("../request-response");
36
- var import_isErrorWithMessage = __toESM(require("../../utils/isErrorWithMessage"));
26
+ var import_error_message = require("../../utils/error-message");
37
27
  async function tableRecordHandler(req, { client }) {
38
28
  const body = await req.json();
39
29
  const { tableId, columns } = body;
@@ -50,7 +40,7 @@ async function tableRecordHandler(req, { client }) {
50
40
  if (error instanceof import_rest_api_client.RestApiClientError) {
51
41
  return import_request_response.ApiResponse.json({ message: error.message }, { status: error.status });
52
42
  }
53
- if ((0, import_isErrorWithMessage.default)(error)) {
43
+ if ((0, import_error_message.isErrorWithMessage)(error)) {
54
44
  return import_request_response.ApiResponse.json({ message: error.message }, { status: 500 });
55
45
  }
56
46
  return import_request_response.ApiResponse.json({ message: "Error creating table record" }, { status: 500 });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/api-handler/handlers/table-record.ts"],"sourcesContent":["import { MakeswiftClient } from '../../client'\nimport { RestApiClientError } from '../../api/rest-api-client'\nimport { type ApiRequest, ApiResponse, type ErrorResponseBody } from '../request-response'\nimport isErrorWithMessage from '../../utils/isErrorWithMessage'\n\nexport async function tableRecordHandler(\n req: ApiRequest,\n { client }: { client: MakeswiftClient },\n): Promise<ApiResponse<ErrorResponseBody> | Response> {\n const body = await req.json()\n const { tableId, columns } = body\n\n if (typeof tableId !== 'string') {\n return ApiResponse.json({ message: 'tableId must be a string' }, { status: 400 })\n }\n\n if (!Array.isArray(columns)) {\n return ApiResponse.json({ message: 'columns must be an array' }, { status: 400 })\n }\n\n try {\n await client.createTableRecord(tableId, columns)\n return new Response(null, { status: 204 })\n } catch (error) {\n if (error instanceof RestApiClientError) {\n return ApiResponse.json({ message: error.message }, { status: error.status })\n }\n\n if (isErrorWithMessage(error)) {\n return ApiResponse.json({ message: error.message }, { status: 500 })\n }\n\n return ApiResponse.json({ message: 'Error creating table record' }, { status: 500 })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAAmC;AACnC,8BAAqE;AACrE,gCAA+B;AAE/B,eAAsB,mBACpB,KACA,EAAE,OAAO,GAC2C;AACpD,QAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,QAAM,EAAE,SAAS,QAAQ,IAAI;AAE7B,MAAI,OAAO,YAAY,UAAU;AAC/B,WAAO,oCAAY,KAAK,EAAE,SAAS,2BAA2B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAClF;AAEA,MAAI,CAAC,MAAM,QAAQ,OAAO,GAAG;AAC3B,WAAO,oCAAY,KAAK,EAAE,SAAS,2BAA2B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAClF;AAEA,MAAI;AACF,UAAM,OAAO,kBAAkB,SAAS,OAAO;AAC/C,WAAO,IAAI,SAAS,MAAM,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC3C,SAAS,OAAO;AACd,QAAI,iBAAiB,2CAAoB;AACvC,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,MAAM,OAAO,CAAC;AAAA,IAC9E;AAEA,YAAI,0BAAAA,SAAmB,KAAK,GAAG;AAC7B,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IACrE;AAEA,WAAO,oCAAY,KAAK,EAAE,SAAS,8BAA8B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACrF;AACF;","names":["isErrorWithMessage"]}
1
+ {"version":3,"sources":["../../../../src/api-handler/handlers/table-record.ts"],"sourcesContent":["import { MakeswiftClient } from '../../client'\nimport { RestApiClientError } from '../../api/rest-api-client'\nimport { type ApiRequest, ApiResponse, type ErrorResponseBody } from '../request-response'\nimport { isErrorWithMessage } from '../../utils/error-message'\n\nexport async function tableRecordHandler(\n req: ApiRequest,\n { client }: { client: MakeswiftClient },\n): Promise<ApiResponse<ErrorResponseBody> | Response> {\n const body = await req.json()\n const { tableId, columns } = body\n\n if (typeof tableId !== 'string') {\n return ApiResponse.json({ message: 'tableId must be a string' }, { status: 400 })\n }\n\n if (!Array.isArray(columns)) {\n return ApiResponse.json({ message: 'columns must be an array' }, { status: 400 })\n }\n\n try {\n await client.createTableRecord(tableId, columns)\n return new Response(null, { status: 204 })\n } catch (error) {\n if (error instanceof RestApiClientError) {\n return ApiResponse.json({ message: error.message }, { status: error.status })\n }\n\n if (isErrorWithMessage(error)) {\n return ApiResponse.json({ message: error.message }, { status: 500 })\n }\n\n return ApiResponse.json({ message: 'Error creating table record' }, { status: 500 })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAAmC;AACnC,8BAAqE;AACrE,2BAAmC;AAEnC,eAAsB,mBACpB,KACA,EAAE,OAAO,GAC2C;AACpD,QAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,QAAM,EAAE,SAAS,QAAQ,IAAI;AAE7B,MAAI,OAAO,YAAY,UAAU;AAC/B,WAAO,oCAAY,KAAK,EAAE,SAAS,2BAA2B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAClF;AAEA,MAAI,CAAC,MAAM,QAAQ,OAAO,GAAG;AAC3B,WAAO,oCAAY,KAAK,EAAE,SAAS,2BAA2B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EAClF;AAEA,MAAI;AACF,UAAM,OAAO,kBAAkB,SAAS,OAAO;AAC/C,WAAO,IAAI,SAAS,MAAM,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC3C,SAAS,OAAO;AACd,QAAI,iBAAiB,2CAAoB;AACvC,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,MAAM,OAAO,CAAC;AAAA,IAC9E;AAEA,YAAI,yCAAmB,KAAK,GAAG;AAC7B,aAAO,oCAAY,KAAK,EAAE,SAAS,MAAM,QAAQ,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,IACrE;AAEA,WAAO,oCAAY,KAAK,EAAE,SAAS,8BAA8B,GAAG,EAAE,QAAQ,IAAI,CAAC;AAAA,EACrF;AACF;","names":[]}
@@ -42,6 +42,7 @@ var import_MakeswiftComponent = require("../../../../runtimes/react/components/M
42
42
  var import_page = require("../../page");
43
43
  var import_is_server = require("../../../../utils/is-server");
44
44
  var import_render_to_string = require("../../../../runtimes/react/testing/render-to-string");
45
+ var import_window = require("../../../../testing/window");
45
46
  var Testing = __toESM(require("../../../testing"));
46
47
  const ROOT_ID = "00000000-0000-0000-0000-000000000000";
47
48
  const ELEMENT_ID = "11111111-1111-1111-1111-111111111111";
@@ -62,22 +63,6 @@ async function serverSideRender(children) {
62
63
  );
63
64
  return dom.window.document;
64
65
  }
65
- function stubBuilderMessageChannel() {
66
- const postMessageSpy = jest.spyOn(window, "postMessage").mockImplementation(() => {
67
- });
68
- const originalMessageChannel = window.MessageChannel;
69
- const stubPort = () => ({ onmessage: null, postMessage: () => {
70
- }, close: () => {
71
- } });
72
- window.MessageChannel = class {
73
- port1 = stubPort();
74
- port2 = stubPort();
75
- };
76
- return () => {
77
- postMessageSpy.mockRestore();
78
- window.MessageChannel = originalMessageChannel;
79
- };
80
- }
81
66
  async function testPageControlPropRendering(controlDefinition, {
82
67
  toData,
83
68
  value,
@@ -128,7 +113,7 @@ async function testPageControlPropRendering(controlDefinition, {
128
113
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Testing.ReactProvider, { runtime, siteVersion, children: component });
129
114
  };
130
115
  if (!(0, import_is_server.isServer)()) {
131
- const restoreMessageChannel = isReadOnly ? null : stubBuilderMessageChannel();
116
+ const postMessageMock = import_window.windowMocks.mockPostMessage();
132
117
  const rootElementData = Testing.createRootComponent(
133
118
  [elementData, ...rootElements],
134
119
  ROOT_ID
@@ -145,7 +130,7 @@ async function testPageControlPropRendering(controlDefinition, {
145
130
  if (expectedRenders != null) {
146
131
  expect(Number(import_react2.screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders);
147
132
  }
148
- restoreMessageChannel?.();
133
+ postMessageMock.restore();
149
134
  } else {
150
135
  console.assert(action == null);
151
136
  console.assert(rootElements.length === 0);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/next/components/tests/controls/page-control-prop-rendering.tsx"],"sourcesContent":["import { type ReactNode, Fragment, forwardRef, useRef, isValidElement, act } from 'react'\nimport { JSDOM } from 'jsdom'\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\nimport { ServerInsertedHTMLContext } from 'next/navigation'\n\nimport { type Data, type ValueType, type DataType, ControlDefinition } from '@makeswift/controls'\n\nimport { type CacheData } from '../../../../api/api-resources-client'\nimport { ElementData } from '../../../../state/read-only-state'\nimport { setIsInBuilder } from '../../../../state/actions/internal/read-only-actions'\nimport { ReactRuntime } from '../../../../runtimes/react/react-runtime'\nimport { MakeswiftComponent } from '../../../../runtimes/react/components/MakeswiftComponent'\nimport { Page } from '../../page'\nimport { isServer } from '../../../../utils/is-server'\n\nimport { renderToString } from '../../../../runtimes/react/testing/render-to-string'\nimport * as Testing from '../../../testing'\n\nconst ROOT_ID = '00000000-0000-0000-0000-000000000000'\nconst ELEMENT_ID = '11111111-1111-1111-1111-111111111111'\n\nconst renderProp = (prop: any) =>\n prop === undefined ? 'undefined' : isValidElement(prop) ? prop : JSON.stringify(prop)\n\nconst propSnapshot = (prop: HTMLElement | null) =>\n prop?.childElementCount ? prop.childNodes : parseStringifiedProp(prop?.textContent ?? '')\n\nconst parseStringifiedProp = (prop: string) => (prop === 'undefined' ? undefined : JSON.parse(prop))\n\nasync function serverSideRender(children: ReactNode) {\n // wrap the children in a context provider to capture server-inserted HTML, see\n // https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/server-inserted-html.tsx\n const serverInsertedCallbacks: (() => React.ReactNode)[] = []\n\n const elementTree = (\n <ServerInsertedHTMLContext.Provider value={handler => serverInsertedCallbacks.push(handler)}>\n {children}\n </ServerInsertedHTMLContext.Provider>\n )\n\n const elementsHTML = await renderToString(elementTree)\n\n const serverInsertedNodes = serverInsertedCallbacks.map((callback, index) => (\n <Fragment key={'__next_server_inserted__' + index}>{callback()}</Fragment>\n ))\n\n const headHTML = await renderToString(serverInsertedNodes)\n\n const dom = new JSDOM(\n `<!DOCTYPE html><head>${headHTML}</head><body><div id=\"root\">${elementsHTML}</div></body></div>`,\n {\n runScripts: 'dangerously',\n },\n )\n\n return dom.window.document\n}\n\n/**\n * In read-write mode, the runtime opens a `MessageChannel` to the builder\n * parent frame; jsdom doesn't implement `MessageChannel`, so stub them to keep\n * the read-write setup from throwing.\n */\nfunction stubBuilderMessageChannel(): () => void {\n const postMessageSpy = jest.spyOn(window, 'postMessage').mockImplementation(() => {})\n\n const originalMessageChannel = window.MessageChannel\n const stubPort = () => ({ onmessage: null, postMessage: () => {}, close: () => {} })\n window.MessageChannel = class {\n port1 = stubPort()\n port2 = stubPort()\n } as unknown as typeof MessageChannel\n\n return () => {\n postMessageSpy.mockRestore()\n window.MessageChannel = originalMessageChannel\n }\n}\n\nexport async function testPageControlPropRendering<D extends ControlDefinition>(\n controlDefinition: D,\n {\n toData,\n value,\n locale,\n cacheData,\n expectedRenders,\n registerComponents,\n action,\n rootElements = [],\n isInBuilder = false,\n isReadOnly = true,\n }: {\n toData?: (value: ValueType<D>) => DataType<D>\n value: ValueType<D> | undefined\n locale?: string | null\n cacheData?: Partial<CacheData>\n expectedRenders?: number\n registerComponents?: (runtime: ReactRuntime) => void\n action?: (element: HTMLElement) => Promise<void>\n rootElements?: ElementData[]\n isInBuilder?: boolean\n isReadOnly?: boolean\n },\n) {\n // Arrange\n const controlData: DataType<D> | Data =\n value !== undefined ? (toData ? toData(value) : controlDefinition.toData(value)) : undefined\n\n const testComponentMeta = {\n type: 'TestComponent',\n label: 'Test Component',\n }\n\n const testId = 'test-id'\n const renderCountTestId = 'render-count-test-id'\n const elementData: ElementData = {\n key: ELEMENT_ID,\n type: testComponentMeta.type,\n props: {\n propKey: controlData,\n },\n }\n\n const runtime = Testing.createReactRuntime()\n runtime.protoStore.dispatch(setIsInBuilder(isInBuilder))\n registerComponents?.(runtime)\n\n // Act\n runtime.registerComponent(\n forwardRef<HTMLDivElement, { propKey?: any }>(({ propKey }, ref) => {\n const renderCount = useRef(0)\n ++renderCount.current\n\n return (\n <div ref={ref}>\n <div data-testid={renderCountTestId}>{renderCount.current}</div>\n <div data-testid={testId}>{renderProp(propKey)}</div>\n </div>\n )\n }),\n {\n ...testComponentMeta,\n props: {\n propKey: controlDefinition as any,\n },\n },\n )\n\n const testElementTree = (component: ReactNode) => {\n // The runtime enters the read-write state when a non-null site version is\n // passed\n const siteVersion = isReadOnly ? null : { token: 'test-token', version: 'draft' }\n return (\n <Testing.ReactProvider runtime={runtime} siteVersion={siteVersion}>\n {component}\n </Testing.ReactProvider>\n )\n }\n\n if (!isServer()) {\n const restoreMessageChannel = isReadOnly ? null : stubBuilderMessageChannel()\n\n const rootElementData: ElementData = Testing.createRootComponent(\n [elementData, ...rootElements],\n ROOT_ID,\n )\n\n const snapshot = Testing.createMakeswiftPageSnapshot(rootElementData, { locale, cacheData })\n\n // Assert\n await act(async () => render(testElementTree(<Page snapshot={snapshot} />)))\n\n if (action) {\n await act(async () => {\n await action(screen.getByTestId(testId))\n })\n }\n\n expect(snapshot).toMatchSnapshot('snapshot')\n expect(propSnapshot(screen.getByTestId(testId))).toMatchSnapshot('resolvedValue')\n\n if (expectedRenders != null) {\n expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders)\n }\n\n restoreMessageChannel?.()\n } else {\n // test server-side rendering using a component snapshot\n console.assert(action == null)\n console.assert(rootElements.length === 0)\n\n const snapshot = Testing.createMakeswiftComponentSnapshot(elementData, { locale, cacheData })\n const elementTree = testElementTree(\n <MakeswiftComponent snapshot={snapshot} {...testComponentMeta} />,\n )\n\n const document = await serverSideRender(elementTree)\n const getByTestId = (id: string): HTMLElement | null =>\n document.querySelector(`[data-testid=\"${id}\"]`)\n\n expect(propSnapshot(getByTestId(testId))).toMatchSnapshot('resolvedValue')\n expect(\n [...document.querySelectorAll('style')].map(n => n.textContent).filter(v => v !== ''),\n ).toMatchSnapshot('component styles')\n\n expect(Number(getByTestId(renderCountTestId)?.textContent)).toBe(1)\n }\n}\n"],"mappings":"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","names":["import_react"]}
1
+ {"version":3,"sources":["../../../../../../src/next/components/tests/controls/page-control-prop-rendering.tsx"],"sourcesContent":["import { type ReactNode, Fragment, forwardRef, useRef, isValidElement, act } from 'react'\nimport { JSDOM } from 'jsdom'\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\nimport { ServerInsertedHTMLContext } from 'next/navigation'\n\nimport { type Data, type ValueType, type DataType, ControlDefinition } from '@makeswift/controls'\n\nimport { type CacheData } from '../../../../api/api-resources-client'\nimport { ElementData } from '../../../../state/read-only-state'\nimport { setIsInBuilder } from '../../../../state/actions/internal/read-only-actions'\nimport { ReactRuntime } from '../../../../runtimes/react/react-runtime'\nimport { MakeswiftComponent } from '../../../../runtimes/react/components/MakeswiftComponent'\nimport { Page } from '../../page'\nimport { isServer } from '../../../../utils/is-server'\n\nimport { renderToString } from '../../../../runtimes/react/testing/render-to-string'\nimport { windowMocks } from '../../../../testing/window'\nimport * as Testing from '../../../testing'\n\nconst ROOT_ID = '00000000-0000-0000-0000-000000000000'\nconst ELEMENT_ID = '11111111-1111-1111-1111-111111111111'\n\nconst renderProp = (prop: any) =>\n prop === undefined ? 'undefined' : isValidElement(prop) ? prop : JSON.stringify(prop)\n\nconst propSnapshot = (prop: HTMLElement | null) =>\n prop?.childElementCount ? prop.childNodes : parseStringifiedProp(prop?.textContent ?? '')\n\nconst parseStringifiedProp = (prop: string) => (prop === 'undefined' ? undefined : JSON.parse(prop))\n\nasync function serverSideRender(children: ReactNode) {\n // wrap the children in a context provider to capture server-inserted HTML, see\n // https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/server-inserted-html.tsx\n const serverInsertedCallbacks: (() => React.ReactNode)[] = []\n\n const elementTree = (\n <ServerInsertedHTMLContext.Provider value={handler => serverInsertedCallbacks.push(handler)}>\n {children}\n </ServerInsertedHTMLContext.Provider>\n )\n\n const elementsHTML = await renderToString(elementTree)\n\n const serverInsertedNodes = serverInsertedCallbacks.map((callback, index) => (\n <Fragment key={'__next_server_inserted__' + index}>{callback()}</Fragment>\n ))\n\n const headHTML = await renderToString(serverInsertedNodes)\n\n const dom = new JSDOM(\n `<!DOCTYPE html><head>${headHTML}</head><body><div id=\"root\">${elementsHTML}</div></body></div>`,\n {\n runScripts: 'dangerously',\n },\n )\n\n return dom.window.document\n}\n\nexport async function testPageControlPropRendering<D extends ControlDefinition>(\n controlDefinition: D,\n {\n toData,\n value,\n locale,\n cacheData,\n expectedRenders,\n registerComponents,\n action,\n rootElements = [],\n isInBuilder = false,\n isReadOnly = true,\n }: {\n toData?: (value: ValueType<D>) => DataType<D>\n value: ValueType<D> | undefined\n locale?: string | null\n cacheData?: Partial<CacheData>\n expectedRenders?: number\n registerComponents?: (runtime: ReactRuntime) => void\n action?: (element: HTMLElement) => Promise<void>\n rootElements?: ElementData[]\n isInBuilder?: boolean\n isReadOnly?: boolean\n },\n) {\n // Arrange\n const controlData: DataType<D> | Data =\n value !== undefined ? (toData ? toData(value) : controlDefinition.toData(value)) : undefined\n\n const testComponentMeta = {\n type: 'TestComponent',\n label: 'Test Component',\n }\n\n const testId = 'test-id'\n const renderCountTestId = 'render-count-test-id'\n const elementData: ElementData = {\n key: ELEMENT_ID,\n type: testComponentMeta.type,\n props: {\n propKey: controlData,\n },\n }\n\n const runtime = Testing.createReactRuntime()\n runtime.protoStore.dispatch(setIsInBuilder(isInBuilder))\n registerComponents?.(runtime)\n\n // Act\n runtime.registerComponent(\n forwardRef<HTMLDivElement, { propKey?: any }>(({ propKey }, ref) => {\n const renderCount = useRef(0)\n ++renderCount.current\n\n return (\n <div ref={ref}>\n <div data-testid={renderCountTestId}>{renderCount.current}</div>\n <div data-testid={testId}>{renderProp(propKey)}</div>\n </div>\n )\n }),\n {\n ...testComponentMeta,\n props: {\n propKey: controlDefinition as any,\n },\n },\n )\n\n const testElementTree = (component: ReactNode) => {\n // The runtime enters the read-write state when a non-null site version is\n // passed\n const siteVersion = isReadOnly ? null : { token: 'test-token', version: 'draft' }\n return (\n <Testing.ReactProvider runtime={runtime} siteVersion={siteVersion}>\n {component}\n </Testing.ReactProvider>\n )\n }\n\n if (!isServer()) {\n const postMessageMock = windowMocks.mockPostMessage()\n\n const rootElementData: ElementData = Testing.createRootComponent(\n [elementData, ...rootElements],\n ROOT_ID,\n )\n\n const snapshot = Testing.createMakeswiftPageSnapshot(rootElementData, { locale, cacheData })\n\n // Assert\n await act(async () => render(testElementTree(<Page snapshot={snapshot} />)))\n\n if (action) {\n await act(async () => {\n await action(screen.getByTestId(testId))\n })\n }\n\n expect(snapshot).toMatchSnapshot('snapshot')\n expect(propSnapshot(screen.getByTestId(testId))).toMatchSnapshot('resolvedValue')\n\n if (expectedRenders != null) {\n expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders)\n }\n\n postMessageMock.restore()\n } else {\n // test server-side rendering using a component snapshot\n console.assert(action == null)\n console.assert(rootElements.length === 0)\n\n const snapshot = Testing.createMakeswiftComponentSnapshot(elementData, { locale, cacheData })\n const elementTree = testElementTree(\n <MakeswiftComponent snapshot={snapshot} {...testComponentMeta} />,\n )\n\n const document = await serverSideRender(elementTree)\n const getByTestId = (id: string): HTMLElement | null =>\n document.querySelector(`[data-testid=\"${id}\"]`)\n\n expect(propSnapshot(getByTestId(testId))).toMatchSnapshot('resolvedValue')\n expect(\n [...document.querySelectorAll('style')].map(n => n.textContent).filter(v => v !== ''),\n ).toMatchSnapshot('component styles')\n\n expect(Number(getByTestId(renderCountTestId)?.textContent)).toBe(1)\n }\n}\n"],"mappings":"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","names":["import_react"]}
@@ -77,7 +77,8 @@ function InnerRootStyleRegistry({
77
77
  const outerStylesContext = (0, import_react.useContext)(import_styles_context_provider.StylesContext);
78
78
  const outerStylesProps = {
79
79
  classNamePrefix: outerStylesContext?.classNamePrefix,
80
- enableCssReset: outerStylesContext?.enableCssReset
80
+ enableCssReset: outerStylesContext?.enableCssReset,
81
+ forceImportant: outerStylesContext?.forceImportant
81
82
  };
82
83
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
83
84
  import_unstable_framework_support.RootStyleRegistry,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/next/document.tsx"],"sourcesContent":["'use client'\n\nimport NextDocument, {\n DocumentContext,\n DocumentInitialProps,\n Head,\n Html,\n Main,\n NextScript,\n} from 'next/document'\nimport {\n createMakeswiftStylesRegistry,\n RootStyleProps,\n RootStyleRegistry,\n StylesRegistry,\n} from '../unstable-framework-support'\nimport { PropsWithChildren, useContext } from 'react'\nimport { StylesContext } from '../runtimes/react/css-runtime/components/styles-context-provider'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const originalRenderPage = ctx.renderPage\n const stylesRegistry = createMakeswiftStylesRegistry()\n\n /*\n This runs only on the server and configures a `RootStyleRegistry` which disables\n rendering Makeswift-generated `<style>`s alongside components, opting instead to\n pull them from the styles registry and place them in the `<head>` manually.\n This is a special case for pages router, where React hoisting will not work during\n SSR.\n\n `InnerRootStyleRegistry` is a wrapper component that pulls in user configuration\n from the outer (userland) `RootStyleRegistry`. This would matter, for example, if\n the `RootStyleRegistry` in userland was configured with a custom class name prefix.\n */\n ctx.renderPage = () => {\n return originalRenderPage({\n enhanceComponent: Component => props => (\n <InnerRootStyleRegistry stylesRegistry={stylesRegistry}>\n <Component {...props}></Component>\n </InnerRootStyleRegistry>\n ),\n })\n }\n\n const initialProps = await super.getInitialProps(ctx)\n const perPrecedenceStyleProps = stylesRegistry.serializeToStyleProps()\n const makeswiftStyleElements = perPrecedenceStyleProps.map(props => {\n return (\n <style key={props.precedence} data-href={props.href} data-precedence={props.precedence}>\n {props.css}\n </style>\n )\n })\n\n const combinedStyles = (\n <>\n {initialProps.styles}\n {makeswiftStyleElements}\n </>\n )\n\n return {\n ...initialProps,\n styles: combinedStyles,\n }\n }\n\n render() {\n return (\n <Html>\n <Head />\n <body>\n <Main />\n <NextScript />\n </body>\n </Html>\n )\n }\n}\n\nfunction InnerRootStyleRegistry({\n children,\n stylesRegistry,\n}: PropsWithChildren<{\n stylesRegistry: StylesRegistry\n}>) {\n const outerStylesContext = useContext(StylesContext)\n\n const outerStylesProps: RootStyleProps = {\n classNamePrefix: outerStylesContext?.classNamePrefix,\n enableCssReset: outerStylesContext?.enableCssReset,\n }\n\n return (\n <RootStyleRegistry\n {...outerStylesProps}\n stylesRegistry={stylesRegistry}\n shouldRenderStyleElements={false}\n >\n {children}\n </RootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuCY;AArCZ,sBAOO;AACP,wCAKO;AACP,mBAA8C;AAC9C,qCAA8B;AAEvB,MAAM,iBAAiB,gBAAAA,QAAa;AAAA,EACzC,aAAa,gBAAgB,KAAqD;AAChF,UAAM,qBAAqB,IAAI;AAC/B,UAAM,qBAAiB,iEAA8B;AAarD,QAAI,aAAa,MAAM;AACrB,aAAO,mBAAmB;AAAA,QACxB,kBAAkB,eAAa,WAC7B,4CAAC,0BAAuB,gBACtB,sDAAC,aAAW,GAAG,OAAO,GACxB;AAAA,MAEJ,CAAC;AAAA,IACH;AAEA,UAAM,eAAe,MAAM,MAAM,gBAAgB,GAAG;AACpD,UAAM,0BAA0B,eAAe,sBAAsB;AACrE,UAAM,yBAAyB,wBAAwB,IAAI,WAAS;AAClE,aACE,4CAAC,WAA6B,aAAW,MAAM,MAAM,mBAAiB,MAAM,YACzE,gBAAM,OADG,MAAM,UAElB;AAAA,IAEJ,CAAC;AAED,UAAM,iBACJ,4EACG;AAAA,mBAAa;AAAA,MACb;AAAA,OACH;AAGF,WAAO;AAAA,MACL,GAAG;AAAA,MACH,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WACE,6CAAC,wBACC;AAAA,kDAAC,wBAAK;AAAA,MACN,6CAAC,UACC;AAAA,oDAAC,wBAAK;AAAA,QACN,4CAAC,8BAAW;AAAA,SACd;AAAA,OACF;AAAA,EAEJ;AACF;AAEA,SAAS,uBAAuB;AAAA,EAC9B;AAAA,EACA;AACF,GAEI;AACF,QAAM,yBAAqB,yBAAW,4CAAa;AAEnD,QAAM,mBAAmC;AAAA,IACvC,iBAAiB,oBAAoB;AAAA,IACrC,gBAAgB,oBAAoB;AAAA,EACtC;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA,2BAA2B;AAAA,MAE1B;AAAA;AAAA,EACH;AAEJ;","names":["NextDocument"]}
1
+ {"version":3,"sources":["../../../src/next/document.tsx"],"sourcesContent":["'use client'\n\nimport NextDocument, {\n DocumentContext,\n DocumentInitialProps,\n Head,\n Html,\n Main,\n NextScript,\n} from 'next/document'\nimport {\n createMakeswiftStylesRegistry,\n RootStyleProps,\n RootStyleRegistry,\n StylesRegistry,\n} from '../unstable-framework-support'\nimport { PropsWithChildren, useContext } from 'react'\nimport { StylesContext } from '../runtimes/react/css-runtime/components/styles-context-provider'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const originalRenderPage = ctx.renderPage\n const stylesRegistry = createMakeswiftStylesRegistry()\n\n /*\n This runs only on the server and configures a `RootStyleRegistry` which disables\n rendering Makeswift-generated `<style>`s alongside components, opting instead to\n pull them from the styles registry and place them in the `<head>` manually.\n This is a special case for pages router, where React hoisting will not work during\n SSR.\n\n `InnerRootStyleRegistry` is a wrapper component that pulls in user configuration\n from the outer (userland) `RootStyleRegistry`. This would matter, for example, if\n the `RootStyleRegistry` in userland was configured with a custom class name prefix.\n */\n ctx.renderPage = () => {\n return originalRenderPage({\n enhanceComponent: Component => props => (\n <InnerRootStyleRegistry stylesRegistry={stylesRegistry}>\n <Component {...props}></Component>\n </InnerRootStyleRegistry>\n ),\n })\n }\n\n const initialProps = await super.getInitialProps(ctx)\n const perPrecedenceStyleProps = stylesRegistry.serializeToStyleProps()\n const makeswiftStyleElements = perPrecedenceStyleProps.map(props => {\n return (\n <style key={props.precedence} data-href={props.href} data-precedence={props.precedence}>\n {props.css}\n </style>\n )\n })\n\n const combinedStyles = (\n <>\n {initialProps.styles}\n {makeswiftStyleElements}\n </>\n )\n\n return {\n ...initialProps,\n styles: combinedStyles,\n }\n }\n\n render() {\n return (\n <Html>\n <Head />\n <body>\n <Main />\n <NextScript />\n </body>\n </Html>\n )\n }\n}\n\nfunction InnerRootStyleRegistry({\n children,\n stylesRegistry,\n}: PropsWithChildren<{\n stylesRegistry: StylesRegistry\n}>) {\n const outerStylesContext = useContext(StylesContext)\n\n const outerStylesProps: RootStyleProps = {\n classNamePrefix: outerStylesContext?.classNamePrefix,\n enableCssReset: outerStylesContext?.enableCssReset,\n forceImportant: outerStylesContext?.forceImportant,\n }\n\n return (\n <RootStyleRegistry\n {...outerStylesProps}\n stylesRegistry={stylesRegistry}\n shouldRenderStyleElements={false}\n >\n {children}\n </RootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuCY;AArCZ,sBAOO;AACP,wCAKO;AACP,mBAA8C;AAC9C,qCAA8B;AAEvB,MAAM,iBAAiB,gBAAAA,QAAa;AAAA,EACzC,aAAa,gBAAgB,KAAqD;AAChF,UAAM,qBAAqB,IAAI;AAC/B,UAAM,qBAAiB,iEAA8B;AAarD,QAAI,aAAa,MAAM;AACrB,aAAO,mBAAmB;AAAA,QACxB,kBAAkB,eAAa,WAC7B,4CAAC,0BAAuB,gBACtB,sDAAC,aAAW,GAAG,OAAO,GACxB;AAAA,MAEJ,CAAC;AAAA,IACH;AAEA,UAAM,eAAe,MAAM,MAAM,gBAAgB,GAAG;AACpD,UAAM,0BAA0B,eAAe,sBAAsB;AACrE,UAAM,yBAAyB,wBAAwB,IAAI,WAAS;AAClE,aACE,4CAAC,WAA6B,aAAW,MAAM,MAAM,mBAAiB,MAAM,YACzE,gBAAM,OADG,MAAM,UAElB;AAAA,IAEJ,CAAC;AAED,UAAM,iBACJ,4EACG;AAAA,mBAAa;AAAA,MACb;AAAA,OACH;AAGF,WAAO;AAAA,MACL,GAAG;AAAA,MACH,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WACE,6CAAC,wBACC;AAAA,kDAAC,wBAAK;AAAA,MACN,6CAAC,UACC;AAAA,oDAAC,wBAAK;AAAA,QACN,4CAAC,8BAAW;AAAA,SACd;AAAA,OACF;AAAA,EAEJ;AACF;AAEA,SAAS,uBAAuB;AAAA,EAC9B;AAAA,EACA;AACF,GAEI;AACF,QAAM,yBAAqB,yBAAW,4CAAa;AAEnD,QAAM,mBAAmC;AAAA,IACvC,iBAAiB,oBAAoB;AAAA,IACrC,gBAAgB,oBAAoB;AAAA,IACpC,gBAAgB,oBAAoB;AAAA,EACtC;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA,2BAA2B;AAAA,MAE1B;AAAA;AAAA,EACH;AAEJ;","names":["NextDocument"]}
@@ -27,9 +27,18 @@ var import_root_style_registry = require("../runtimes/react/root-style-registry"
27
27
  function NextRootStyleRegistry({
28
28
  children,
29
29
  classNamePrefix,
30
- enableCssReset
30
+ enableCssReset,
31
+ forceImportant
31
32
  }) {
32
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root_style_registry.DefaultRootStyleRegistry, { classNamePrefix, enableCssReset, children });
33
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
34
+ import_root_style_registry.DefaultRootStyleRegistry,
35
+ {
36
+ classNamePrefix,
37
+ enableCssReset,
38
+ forceImportant,
39
+ children
40
+ }
41
+ );
33
42
  }
34
43
  // Annotate the CommonJS export names for ESM import in node:
35
44
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/next/root-style-registry.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren } from 'react'\n\nimport {\n DefaultRootStyleRegistry as ReactRootStyleRegistry,\n type RootStyleProps,\n} from '../runtimes/react/root-style-registry'\n\nexport function NextRootStyleRegistry({\n children,\n classNamePrefix,\n enableCssReset,\n}: PropsWithChildren<RootStyleProps>) {\n return (\n <ReactRootStyleRegistry classNamePrefix={classNamePrefix} enableCssReset={enableCssReset}>\n {children}\n </ReactRootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAeI;AAXJ,iCAGO;AAEA,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF,GAAsC;AACpC,SACE,4CAAC,2BAAAA,0BAAA,EAAuB,iBAAkC,gBACvD,UACH;AAEJ;","names":["ReactRootStyleRegistry"]}
1
+ {"version":3,"sources":["../../../src/next/root-style-registry.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren } from 'react'\n\nimport {\n DefaultRootStyleRegistry as ReactRootStyleRegistry,\n type RootStyleProps,\n} from '../runtimes/react/root-style-registry'\n\nexport function NextRootStyleRegistry({\n children,\n classNamePrefix,\n enableCssReset,\n forceImportant,\n}: PropsWithChildren<RootStyleProps>) {\n return (\n <ReactRootStyleRegistry\n classNamePrefix={classNamePrefix}\n enableCssReset={enableCssReset}\n forceImportant={forceImportant}\n >\n {children}\n </ReactRootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBI;AAZJ,iCAGO;AAEA,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAsC;AACpC,SACE;AAAA,IAAC,2BAAAA;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":["ReactRootStyleRegistry"]}
@@ -30,6 +30,7 @@ function StylesContextProvider({
30
30
  children,
31
31
  classNamePrefix,
32
32
  enableCssReset,
33
+ forceImportant,
33
34
  stylesRegistry,
34
35
  shouldRenderStyleElements
35
36
  }) {
@@ -39,6 +40,7 @@ function StylesContextProvider({
39
40
  value: {
40
41
  classNamePrefix,
41
42
  enableCssReset,
43
+ forceImportant,
42
44
  stylesRegistry,
43
45
  shouldRenderStyleElements
44
46
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/components/styles-context-provider.tsx"],"sourcesContent":["'use client'\n\nimport { createContext, PropsWithChildren } from 'react'\nimport { StylesRegistry } from '../styles-registry'\n\nexport type StylesContextValue = {\n classNamePrefix: string\n enableCssReset: boolean\n stylesRegistry: StylesRegistry\n\n /**\n * By default, Makeswift-generated `<style>` elements are placed in JSX alongside the components that use them\n * (note that in practice, React may hoist `<style>`s into the document `<head>` such that they don't appear in the\n * `<body>` at all).\n *\n * This setting allows you to disable the automatic rendering of Makeswift-generated `<style>` elements. The expectation\n * is that, when `shouldRenderStyleElements` is `false`, you will access generated styles from the Makeswift styles registry\n * and handle applying them manually.\n */\n shouldRenderStyleElements: boolean\n}\n\nexport const StylesContext = createContext<StylesContextValue | undefined>(undefined)\n\nexport function StylesContextProvider({\n children,\n classNamePrefix,\n enableCssReset,\n stylesRegistry,\n shouldRenderStyleElements,\n}: PropsWithChildren<StylesContextValue>) {\n return (\n <StylesContext.Provider\n value={{\n classNamePrefix,\n enableCssReset,\n stylesRegistry,\n shouldRenderStyleElements,\n }}\n >\n {children}\n </StylesContext.Provider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgCI;AA9BJ,mBAAiD;AAoB1C,MAAM,oBAAgB,4BAA8C,MAAS;AAE7E,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0C;AACxC,SACE;AAAA,IAAC,cAAc;AAAA,IAAd;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/components/styles-context-provider.tsx"],"sourcesContent":["'use client'\n\nimport { createContext, PropsWithChildren } from 'react'\nimport { StylesRegistry } from '../styles-registry'\n\nexport type StylesContextValue = {\n classNamePrefix: string\n enableCssReset: boolean\n forceImportant: boolean\n stylesRegistry: StylesRegistry\n\n /**\n * By default, Makeswift-generated `<style>` elements are placed in JSX alongside the components that use them\n * (note that in practice, React may hoist `<style>`s into the document `<head>` such that they don't appear in the\n * `<body>` at all).\n *\n * This setting allows you to disable the automatic rendering of Makeswift-generated `<style>` elements. The expectation\n * is that, when `shouldRenderStyleElements` is `false`, you will access generated styles from the Makeswift styles registry\n * and handle applying them manually.\n */\n shouldRenderStyleElements: boolean\n}\n\nexport const StylesContext = createContext<StylesContextValue | undefined>(undefined)\n\nexport function StylesContextProvider({\n children,\n classNamePrefix,\n enableCssReset,\n forceImportant,\n stylesRegistry,\n shouldRenderStyleElements,\n}: PropsWithChildren<StylesContextValue>) {\n return (\n <StylesContext.Provider\n value={{\n classNamePrefix,\n enableCssReset,\n forceImportant,\n stylesRegistry,\n shouldRenderStyleElements,\n }}\n >\n {children}\n </StylesContext.Provider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCI;AAhCJ,mBAAiD;AAqB1C,MAAM,oBAAgB,4BAA8C,MAAS;AAE7E,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0C;AACxC,SACE;AAAA,IAAC,cAAc;AAAA,IAAd;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":[]}
@@ -19,6 +19,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var constants_exports = {};
20
20
  __export(constants_exports, {
21
21
  DEFAULT_CSS_CLASS_NAME_PREFIX: () => DEFAULT_CSS_CLASS_NAME_PREFIX,
22
+ DEFAULT_CSS_FORCE_IMPORTANT: () => DEFAULT_CSS_FORCE_IMPORTANT,
22
23
  DEFAULT_CSS_PRECEDENCE: () => DEFAULT_CSS_PRECEDENCE,
23
24
  DEFAULT_CSS_RESET_ENABLED: () => DEFAULT_CSS_RESET_ENABLED,
24
25
  DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS: () => DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS
@@ -27,11 +28,13 @@ module.exports = __toCommonJS(constants_exports);
27
28
  var import_types = require("./types");
28
29
  const DEFAULT_CSS_CLASS_NAME_PREFIX = "ms";
29
30
  const DEFAULT_CSS_RESET_ENABLED = true;
31
+ const DEFAULT_CSS_FORCE_IMPORTANT = false;
30
32
  const DEFAULT_CSS_PRECEDENCE = import_types.MakeswiftStylePrecedence.MEDIUM;
31
33
  const DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS = true;
32
34
  // Annotate the CommonJS export names for ESM import in node:
33
35
  0 && (module.exports = {
34
36
  DEFAULT_CSS_CLASS_NAME_PREFIX,
37
+ DEFAULT_CSS_FORCE_IMPORTANT,
35
38
  DEFAULT_CSS_PRECEDENCE,
36
39
  DEFAULT_CSS_RESET_ENABLED,
37
40
  DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/css-runtime/constants.ts"],"sourcesContent":["import { MakeswiftStylePrecedence } from './types'\n\nexport const DEFAULT_CSS_CLASS_NAME_PREFIX = 'ms'\nexport const DEFAULT_CSS_RESET_ENABLED = true\nexport const DEFAULT_CSS_PRECEDENCE = MakeswiftStylePrecedence.MEDIUM\nexport const DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS = true\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyC;AAElC,MAAM,gCAAgC;AACtC,MAAM,4BAA4B;AAClC,MAAM,yBAAyB,sCAAyB;AACxD,MAAM,uCAAuC;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/css-runtime/constants.ts"],"sourcesContent":["import { MakeswiftStylePrecedence } from './types'\n\nexport const DEFAULT_CSS_CLASS_NAME_PREFIX = 'ms'\nexport const DEFAULT_CSS_RESET_ENABLED = true\nexport const DEFAULT_CSS_FORCE_IMPORTANT = false\nexport const DEFAULT_CSS_PRECEDENCE = MakeswiftStylePrecedence.MEDIUM\nexport const DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS = true\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyC;AAElC,MAAM,gCAAgC;AACtC,MAAM,4BAA4B;AAClC,MAAM,8BAA8B;AACpC,MAAM,yBAAyB,sCAAyB;AACxD,MAAM,uCAAuC;","names":[]}
@@ -37,11 +37,11 @@ var import_types = require("../types");
37
37
  var import_react = __toESM(require("react"));
38
38
  var import_makeswift_style = require("../components/makeswift-style");
39
39
  function useBaseStyles({ styles }) {
40
- const { stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
40
+ const { forceImportant, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
41
41
  const { content: rawContent, contentHash } = (0, import_serialize_css.toRawCss)([styles]);
42
42
  let styleData = stylesRegistry.getBaseStyles().get(contentHash);
43
43
  if (styleData == null) {
44
- const css = (0, import_serialize_css.processCss)({ content: rawContent });
44
+ const css = (0, import_serialize_css.processCss)({ content: rawContent, forceImportant });
45
45
  styleData = {
46
46
  css,
47
47
  cssObject: styles,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-base-styles.ts"],"sourcesContent":["import { type CSSObject } from '@emotion/serialize'\nimport { useStylesContext } from './use-styles-context'\nimport { processCss, toRawCss } from '../serialize-css'\nimport { MakeswiftStylePrecedence } from '../types'\nimport React from 'react'\nimport { MakeswiftStyle } from '../components/makeswift-style'\n\nexport function useBaseStyles({ styles }: { styles: CSSObject }) {\n const { stylesRegistry } = useStylesContext()\n const { content: rawContent, contentHash } = toRawCss([styles])\n let styleData = stylesRegistry.getBaseStyles().get(contentHash)\n if (styleData == null) {\n const css = processCss({ content: rawContent })\n styleData = {\n css,\n cssObject: styles,\n contentHash,\n }\n stylesRegistry.setBaseStyles(styleData)\n }\n const href = `makeswift-base-styles-${contentHash}`\n const styleElement = React.createElement(MakeswiftStyle, {\n key: contentHash,\n href: href,\n css: styleData.css,\n precedence: MakeswiftStylePrecedence.HIGH,\n })\n return {\n styleElement,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gCAAiC;AACjC,2BAAqC;AACrC,mBAAyC;AACzC,mBAAkB;AAClB,6BAA+B;AAExB,SAAS,cAAc,EAAE,OAAO,GAA0B;AAC/D,QAAM,EAAE,eAAe,QAAI,4CAAiB;AAC5C,QAAM,EAAE,SAAS,YAAY,YAAY,QAAI,+BAAS,CAAC,MAAM,CAAC;AAC9D,MAAI,YAAY,eAAe,cAAc,EAAE,IAAI,WAAW;AAC9D,MAAI,aAAa,MAAM;AACrB,UAAM,UAAM,iCAAW,EAAE,SAAS,WAAW,CAAC;AAC9C,gBAAY;AAAA,MACV;AAAA,MACA,WAAW;AAAA,MACX;AAAA,IACF;AACA,mBAAe,cAAc,SAAS;AAAA,EACxC;AACA,QAAM,OAAO,yBAAyB,WAAW;AACjD,QAAM,eAAe,aAAAA,QAAM,cAAc,uCAAgB;AAAA,IACvD,KAAK;AAAA,IACL;AAAA,IACA,KAAK,UAAU;AAAA,IACf,YAAY,sCAAyB;AAAA,EACvC,CAAC;AACD,SAAO;AAAA,IACL;AAAA,EACF;AACF;","names":["React"]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-base-styles.ts"],"sourcesContent":["import { type CSSObject } from '@emotion/serialize'\nimport { useStylesContext } from './use-styles-context'\nimport { processCss, toRawCss } from '../serialize-css'\nimport { MakeswiftStylePrecedence } from '../types'\nimport React from 'react'\nimport { MakeswiftStyle } from '../components/makeswift-style'\n\nexport function useBaseStyles({ styles }: { styles: CSSObject }) {\n const { forceImportant, stylesRegistry } = useStylesContext()\n const { content: rawContent, contentHash } = toRawCss([styles])\n let styleData = stylesRegistry.getBaseStyles().get(contentHash)\n if (styleData == null) {\n const css = processCss({ content: rawContent, forceImportant })\n styleData = {\n css,\n cssObject: styles,\n contentHash,\n }\n stylesRegistry.setBaseStyles(styleData)\n }\n const href = `makeswift-base-styles-${contentHash}`\n const styleElement = React.createElement(MakeswiftStyle, {\n key: contentHash,\n href: href,\n css: styleData.css,\n precedence: MakeswiftStylePrecedence.HIGH,\n })\n return {\n styleElement,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gCAAiC;AACjC,2BAAqC;AACrC,mBAAyC;AACzC,mBAAkB;AAClB,6BAA+B;AAExB,SAAS,cAAc,EAAE,OAAO,GAA0B;AAC/D,QAAM,EAAE,gBAAgB,eAAe,QAAI,4CAAiB;AAC5D,QAAM,EAAE,SAAS,YAAY,YAAY,QAAI,+BAAS,CAAC,MAAM,CAAC;AAC9D,MAAI,YAAY,eAAe,cAAc,EAAE,IAAI,WAAW;AAC9D,MAAI,aAAa,MAAM;AACrB,UAAM,UAAM,iCAAW,EAAE,SAAS,YAAY,eAAe,CAAC;AAC9D,gBAAY;AAAA,MACV;AAAA,MACA,WAAW;AAAA,MACX;AAAA,IACF;AACA,mBAAe,cAAc,SAAS;AAAA,EACxC;AACA,QAAM,OAAO,yBAAyB,WAAW;AACjD,QAAM,eAAe,aAAAA,QAAM,cAAc,uCAAgB;AAAA,IACvD,KAAK;AAAA,IACL;AAAA,IACA,KAAK,UAAU;AAAA,IACf,YAAY,sCAAyB;AAAA,EACvC,CAAC;AACD,SAAO;AAAA,IACL;AAAA,EACF;AACF;","names":["React"]}
@@ -37,7 +37,7 @@ var import_use_styles_context = require("./use-styles-context");
37
37
  var import_stylesheet_engine = require("../stylesheet-engine");
38
38
  var import_use_document_context = require("../../hooks/use-document-context");
39
39
  function useControlledStyles({ namespace }) {
40
- const { classNamePrefix, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
40
+ const { classNamePrefix, forceImportant, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
41
41
  const documentKey = (0, import_use_document_context.useDocumentKey)();
42
42
  if (documentKey == null) {
43
43
  throw new Error("Root document key not found when attempting to use controlled styles");
@@ -59,10 +59,11 @@ function useControlledStyles({ namespace }) {
59
59
  elementKey,
60
60
  propPathComponents,
61
61
  onDefineStyle,
62
- classNamePrefix
62
+ classNamePrefix,
63
+ forceImportant
63
64
  });
64
65
  },
65
- [classNamePrefix, stylesRegistry, namespace, documentKey]
66
+ [classNamePrefix, forceImportant, stylesRegistry, namespace, documentKey]
66
67
  );
67
68
  const styleElements = import_react.default.createElement(import_controlled_styles.ControlledStyles, {
68
69
  classNameToStyles: stylesRegistry.getControlledStyles(namespace)
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-controlled-styles.ts"],"sourcesContent":["import React, { useCallback } from 'react'\nimport { ControlledStyles } from '../components/controlled-styles'\nimport { ControlledStyleData, GetStylesheet } from '../types'\nimport { useStylesContext } from './use-styles-context'\nimport { StylesheetEngine } from '../stylesheet-engine'\nimport { useDocumentKey } from '../../hooks/use-document-context'\n\nexport function useControlledStyles({ namespace }: { namespace: string }) {\n const { classNamePrefix, stylesRegistry } = useStylesContext()\n const documentKey = useDocumentKey()\n if (documentKey == null) {\n throw new Error('Root document key not found when attempting to use controlled styles')\n }\n\n const getStylesheet = useCallback<GetStylesheet>(\n ({ breakpointsData, elementKey, propPathComponents }) => {\n const onDefineStyle = (definedStyle: ControlledStyleData) => {\n stylesRegistry.setControlledStyle({\n namespace,\n className: definedStyle.className,\n data: {\n ...definedStyle,\n },\n })\n }\n return new StylesheetEngine({\n breakpointsData,\n documentKey,\n elementKey,\n propPathComponents,\n onDefineStyle,\n classNamePrefix,\n })\n },\n [classNamePrefix, stylesRegistry, namespace, documentKey],\n )\n\n const styleElements = React.createElement(ControlledStyles, {\n classNameToStyles: stylesRegistry.getControlledStyles(namespace),\n })\n\n return {\n getStylesheet,\n styleElements,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAmC;AACnC,+BAAiC;AAEjC,gCAAiC;AACjC,+BAAiC;AACjC,kCAA+B;AAExB,SAAS,oBAAoB,EAAE,UAAU,GAA0B;AACxE,QAAM,EAAE,iBAAiB,eAAe,QAAI,4CAAiB;AAC7D,QAAM,kBAAc,4CAAe;AACnC,MAAI,eAAe,MAAM;AACvB,UAAM,IAAI,MAAM,sEAAsE;AAAA,EACxF;AAEA,QAAM,oBAAgB;AAAA,IACpB,CAAC,EAAE,iBAAiB,YAAY,mBAAmB,MAAM;AACvD,YAAM,gBAAgB,CAAC,iBAAsC;AAC3D,uBAAe,mBAAmB;AAAA,UAChC;AAAA,UACA,WAAW,aAAa;AAAA,UACxB,MAAM;AAAA,YACJ,GAAG;AAAA,UACL;AAAA,QACF,CAAC;AAAA,MACH;AACA,aAAO,IAAI,0CAAiB;AAAA,QAC1B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,CAAC,iBAAiB,gBAAgB,WAAW,WAAW;AAAA,EAC1D;AAEA,QAAM,gBAAgB,aAAAA,QAAM,cAAc,2CAAkB;AAAA,IAC1D,mBAAmB,eAAe,oBAAoB,SAAS;AAAA,EACjE,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":["React"]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-controlled-styles.ts"],"sourcesContent":["import React, { useCallback } from 'react'\nimport { ControlledStyles } from '../components/controlled-styles'\nimport { ControlledStyleData, GetStylesheet } from '../types'\nimport { useStylesContext } from './use-styles-context'\nimport { StylesheetEngine } from '../stylesheet-engine'\nimport { useDocumentKey } from '../../hooks/use-document-context'\n\nexport function useControlledStyles({ namespace }: { namespace: string }) {\n const { classNamePrefix, forceImportant, stylesRegistry } = useStylesContext()\n const documentKey = useDocumentKey()\n if (documentKey == null) {\n throw new Error('Root document key not found when attempting to use controlled styles')\n }\n\n const getStylesheet = useCallback<GetStylesheet>(\n ({ breakpointsData, elementKey, propPathComponents }) => {\n const onDefineStyle = (definedStyle: ControlledStyleData) => {\n stylesRegistry.setControlledStyle({\n namespace,\n className: definedStyle.className,\n data: {\n ...definedStyle,\n },\n })\n }\n return new StylesheetEngine({\n breakpointsData,\n documentKey,\n elementKey,\n propPathComponents,\n onDefineStyle,\n classNamePrefix,\n forceImportant,\n })\n },\n [classNamePrefix, forceImportant, stylesRegistry, namespace, documentKey],\n )\n\n const styleElements = React.createElement(ControlledStyles, {\n classNameToStyles: stylesRegistry.getControlledStyles(namespace),\n })\n\n return {\n getStylesheet,\n styleElements,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAmC;AACnC,+BAAiC;AAEjC,gCAAiC;AACjC,+BAAiC;AACjC,kCAA+B;AAExB,SAAS,oBAAoB,EAAE,UAAU,GAA0B;AACxE,QAAM,EAAE,iBAAiB,gBAAgB,eAAe,QAAI,4CAAiB;AAC7E,QAAM,kBAAc,4CAAe;AACnC,MAAI,eAAe,MAAM;AACvB,UAAM,IAAI,MAAM,sEAAsE;AAAA,EACxF;AAEA,QAAM,oBAAgB;AAAA,IACpB,CAAC,EAAE,iBAAiB,YAAY,mBAAmB,MAAM;AACvD,YAAM,gBAAgB,CAAC,iBAAsC;AAC3D,uBAAe,mBAAmB;AAAA,UAChC;AAAA,UACA,WAAW,aAAa;AAAA,UACxB,MAAM;AAAA,YACJ,GAAG;AAAA,UACL;AAAA,QACF,CAAC;AAAA,MACH;AACA,aAAO,IAAI,0CAAiB;AAAA,QAC1B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,CAAC,iBAAiB,gBAAgB,gBAAgB,WAAW,WAAW;AAAA,EAC1E;AAEA,QAAM,gBAAgB,aAAAA,QAAM,cAAc,2CAAkB;AAAA,IAC1D,mBAAmB,eAAe,oBAAoB,SAAS;AAAA,EACjE,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":["React"]}
@@ -37,26 +37,23 @@ var import_types = require("../types");
37
37
  var import_makeswift_style = require("../components/makeswift-style");
38
38
  var import_react = __toESM(require("react"));
39
39
  function useCssReset({ styles }) {
40
- const { enableCssReset, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
40
+ const { enableCssReset, forceImportant, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
41
41
  if (!enableCssReset)
42
42
  return { styleElement: null };
43
43
  const { content: rawContent, contentHash } = (0, import_serialize_css.toRawCss)(styles);
44
44
  let styleData = stylesRegistry.getCssResets().get(contentHash);
45
45
  if (styleData == null) {
46
- const css2 = (0, import_serialize_css.processCss)({ content: rawContent });
47
46
  styleData = {
48
- css: css2,
47
+ css: (0, import_serialize_css.processCss)({ content: rawContent, forceImportant }),
49
48
  cssObjects: styles,
50
49
  contentHash
51
50
  };
52
51
  stylesRegistry.setCssReset(styleData);
53
52
  }
54
- const css = (0, import_serialize_css.processCss)({ content: rawContent });
55
- const href = `makeswift-css-reset-${contentHash}`;
56
53
  const styleElement = import_react.default.createElement(import_makeswift_style.MakeswiftStyle, {
57
54
  key: contentHash,
58
- href,
59
- css,
55
+ href: `makeswift-css-reset-${contentHash}`,
56
+ css: styleData.css,
60
57
  precedence: import_types.MakeswiftStylePrecedence.RESET
61
58
  });
62
59
  return {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-css-reset.ts"],"sourcesContent":["import { type CSSObject } from '@emotion/serialize'\nimport { useStylesContext } from './use-styles-context'\nimport { processCss, toRawCss } from '../serialize-css'\nimport { MakeswiftStylePrecedence } from '../types'\nimport { MakeswiftStyle } from '../components/makeswift-style'\nimport React from 'react'\n\nexport function useCssReset({ styles }: { styles: Array<CSSObject> }) {\n const { enableCssReset, stylesRegistry } = useStylesContext()\n if (!enableCssReset) return { styleElement: null }\n const { content: rawContent, contentHash } = toRawCss(styles)\n let styleData = stylesRegistry.getCssResets().get(contentHash)\n if (styleData == null) {\n const css = processCss({ content: rawContent })\n styleData = {\n css,\n cssObjects: styles,\n contentHash,\n }\n stylesRegistry.setCssReset(styleData)\n }\n const css = processCss({ content: rawContent })\n const href = `makeswift-css-reset-${contentHash}`\n\n const styleElement = React.createElement(MakeswiftStyle, {\n key: contentHash,\n href: href,\n css,\n precedence: MakeswiftStylePrecedence.RESET,\n })\n return {\n styleElement,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gCAAiC;AACjC,2BAAqC;AACrC,mBAAyC;AACzC,6BAA+B;AAC/B,mBAAkB;AAEX,SAAS,YAAY,EAAE,OAAO,GAAiC;AACpE,QAAM,EAAE,gBAAgB,eAAe,QAAI,4CAAiB;AAC5D,MAAI,CAAC;AAAgB,WAAO,EAAE,cAAc,KAAK;AACjD,QAAM,EAAE,SAAS,YAAY,YAAY,QAAI,+BAAS,MAAM;AAC5D,MAAI,YAAY,eAAe,aAAa,EAAE,IAAI,WAAW;AAC7D,MAAI,aAAa,MAAM;AACrB,UAAMA,WAAM,iCAAW,EAAE,SAAS,WAAW,CAAC;AAC9C,gBAAY;AAAA,MACV,KAAAA;AAAA,MACA,YAAY;AAAA,MACZ;AAAA,IACF;AACA,mBAAe,YAAY,SAAS;AAAA,EACtC;AACA,QAAM,UAAM,iCAAW,EAAE,SAAS,WAAW,CAAC;AAC9C,QAAM,OAAO,uBAAuB,WAAW;AAE/C,QAAM,eAAe,aAAAC,QAAM,cAAc,uCAAgB;AAAA,IACvD,KAAK;AAAA,IACL;AAAA,IACA;AAAA,IACA,YAAY,sCAAyB;AAAA,EACvC,CAAC;AACD,SAAO;AAAA,IACL;AAAA,EACF;AACF;","names":["css","React"]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-css-reset.ts"],"sourcesContent":["import { type CSSObject } from '@emotion/serialize'\nimport { useStylesContext } from './use-styles-context'\nimport { processCss, toRawCss } from '../serialize-css'\nimport { MakeswiftStylePrecedence } from '../types'\nimport { MakeswiftStyle } from '../components/makeswift-style'\nimport React from 'react'\n\nexport function useCssReset({ styles }: { styles: Array<CSSObject> }) {\n const { enableCssReset, forceImportant, stylesRegistry } = useStylesContext()\n if (!enableCssReset) return { styleElement: null }\n\n const { content: rawContent, contentHash } = toRawCss(styles)\n let styleData = stylesRegistry.getCssResets().get(contentHash)\n if (styleData == null) {\n styleData = {\n css: processCss({ content: rawContent, forceImportant }),\n cssObjects: styles,\n contentHash,\n }\n\n stylesRegistry.setCssReset(styleData)\n }\n\n const styleElement = React.createElement(MakeswiftStyle, {\n key: contentHash,\n href: `makeswift-css-reset-${contentHash}`,\n css: styleData.css,\n precedence: MakeswiftStylePrecedence.RESET,\n })\n\n return {\n styleElement,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gCAAiC;AACjC,2BAAqC;AACrC,mBAAyC;AACzC,6BAA+B;AAC/B,mBAAkB;AAEX,SAAS,YAAY,EAAE,OAAO,GAAiC;AACpE,QAAM,EAAE,gBAAgB,gBAAgB,eAAe,QAAI,4CAAiB;AAC5E,MAAI,CAAC;AAAgB,WAAO,EAAE,cAAc,KAAK;AAEjD,QAAM,EAAE,SAAS,YAAY,YAAY,QAAI,+BAAS,MAAM;AAC5D,MAAI,YAAY,eAAe,aAAa,EAAE,IAAI,WAAW;AAC7D,MAAI,aAAa,MAAM;AACrB,gBAAY;AAAA,MACV,SAAK,iCAAW,EAAE,SAAS,YAAY,eAAe,CAAC;AAAA,MACvD,YAAY;AAAA,MACZ;AAAA,IACF;AAEA,mBAAe,YAAY,SAAS;AAAA,EACtC;AAEA,QAAM,eAAe,aAAAA,QAAM,cAAc,uCAAgB;AAAA,IACvD,KAAK;AAAA,IACL,MAAM,uBAAuB,WAAW;AAAA,IACxC,KAAK,UAAU;AAAA,IACf,YAAY,sCAAyB;AAAA,EACvC,CAAC;AAED,SAAO;AAAA,IACL;AAAA,EACF;AACF;","names":["React"]}
@@ -38,7 +38,7 @@ var import_controlled_styles = require("../components/controlled-styles");
38
38
  var import_serialize_css = require("../serialize-css");
39
39
  var import_use_document_context = require("../../hooks/use-document-context");
40
40
  function useLegacyControlledStyle(style, elementKey, propName) {
41
- const { classNamePrefix, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
41
+ const { classNamePrefix, forceImportant, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
42
42
  const documentKey = (0, import_use_document_context.useDocumentKey)();
43
43
  if (documentKey == null) {
44
44
  throw new Error("Root document key not found when attempting to use legacy controlled styles");
@@ -48,7 +48,7 @@ function useLegacyControlledStyle(style, elementKey, propName) {
48
48
  data: `${documentKey}-${elementKey}-${propName}`,
49
49
  classNamePrefix
50
50
  });
51
- const { css, contentHash } = (0, import_serialize_css.toCssStatements)(style, className);
51
+ const { css, contentHash } = (0, import_serialize_css.toCssStatements)(style, className, { forceImportant });
52
52
  const data = {
53
53
  className,
54
54
  css,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.ts"],"sourcesContent":["import { CSSObject } from '@emotion/serialize'\nimport { generateClassName } from '../utils'\nimport React from 'react'\nimport { useStylesContext } from './use-styles-context'\nimport { ControlledStyles } from '../components/controlled-styles'\nimport { toCssStatements } from '../serialize-css'\nimport { ControlledStyleData } from '../types'\nimport { useDocumentKey } from '../../hooks/use-document-context'\n\nexport function useLegacyControlledStyle(style: CSSObject, elementKey: string, propName: string) {\n const { classNamePrefix, stylesRegistry } = useStylesContext()\n const documentKey = useDocumentKey()\n if (documentKey == null) {\n throw new Error('Root document key not found when attempting to use legacy controlled styles')\n }\n\n /*\n Namespaced separately from styles for modern control instances in order to avoid\n unintentionally attempting to render the corresponding style elements twice.\n */\n const namespace = `${elementKey}-legacy-${propName}`\n const className = generateClassName({\n data: `${documentKey}-${elementKey}-${propName}`,\n classNamePrefix,\n })\n\n const { css, contentHash } = toCssStatements(style, className)\n\n const data: ControlledStyleData = {\n className,\n css,\n cssObject: style,\n contentHash,\n elementKey,\n joinedPropPath: propName,\n onBoxModelChange: undefined,\n }\n\n stylesRegistry.setControlledStyle({\n namespace,\n className,\n data,\n })\n\n const styleElement = React.createElement(ControlledStyles, {\n classNameToStyles: new Map([[className, data]]),\n })\n\n return {\n className,\n styleElement,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAkC;AAClC,mBAAkB;AAClB,gCAAiC;AACjC,+BAAiC;AACjC,2BAAgC;AAEhC,kCAA+B;AAExB,SAAS,yBAAyB,OAAkB,YAAoB,UAAkB;AAC/F,QAAM,EAAE,iBAAiB,eAAe,QAAI,4CAAiB;AAC7D,QAAM,kBAAc,4CAAe;AACnC,MAAI,eAAe,MAAM;AACvB,UAAM,IAAI,MAAM,6EAA6E;AAAA,EAC/F;AAMA,QAAM,YAAY,GAAG,UAAU,WAAW,QAAQ;AAClD,QAAM,gBAAY,gCAAkB;AAAA,IAClC,MAAM,GAAG,WAAW,IAAI,UAAU,IAAI,QAAQ;AAAA,IAC9C;AAAA,EACF,CAAC;AAED,QAAM,EAAE,KAAK,YAAY,QAAI,sCAAgB,OAAO,SAAS;AAE7D,QAAM,OAA4B;AAAA,IAChC;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAEA,iBAAe,mBAAmB;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,eAAe,aAAAA,QAAM,cAAc,2CAAkB;AAAA,IACzD,mBAAmB,oBAAI,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC;AAAA,EAChD,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":["React"]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.ts"],"sourcesContent":["import { CSSObject } from '@emotion/serialize'\nimport { generateClassName } from '../utils'\nimport React from 'react'\nimport { useStylesContext } from './use-styles-context'\nimport { ControlledStyles } from '../components/controlled-styles'\nimport { toCssStatements } from '../serialize-css'\nimport { ControlledStyleData } from '../types'\nimport { useDocumentKey } from '../../hooks/use-document-context'\n\nexport function useLegacyControlledStyle(style: CSSObject, elementKey: string, propName: string) {\n const { classNamePrefix, forceImportant, stylesRegistry } = useStylesContext()\n const documentKey = useDocumentKey()\n if (documentKey == null) {\n throw new Error('Root document key not found when attempting to use legacy controlled styles')\n }\n\n /*\n Namespaced separately from styles for modern control instances in order to avoid\n unintentionally attempting to render the corresponding style elements twice.\n */\n const namespace = `${elementKey}-legacy-${propName}`\n const className = generateClassName({\n data: `${documentKey}-${elementKey}-${propName}`,\n classNamePrefix,\n })\n\n const { css, contentHash } = toCssStatements(style, className, { forceImportant })\n\n const data: ControlledStyleData = {\n className,\n css,\n cssObject: style,\n contentHash,\n elementKey,\n joinedPropPath: propName,\n onBoxModelChange: undefined,\n }\n\n stylesRegistry.setControlledStyle({\n namespace,\n className,\n data,\n })\n\n const styleElement = React.createElement(ControlledStyles, {\n classNameToStyles: new Map([[className, data]]),\n })\n\n return {\n className,\n styleElement,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAkC;AAClC,mBAAkB;AAClB,gCAAiC;AACjC,+BAAiC;AACjC,2BAAgC;AAEhC,kCAA+B;AAExB,SAAS,yBAAyB,OAAkB,YAAoB,UAAkB;AAC/F,QAAM,EAAE,iBAAiB,gBAAgB,eAAe,QAAI,4CAAiB;AAC7E,QAAM,kBAAc,4CAAe;AACnC,MAAI,eAAe,MAAM;AACvB,UAAM,IAAI,MAAM,6EAA6E;AAAA,EAC/F;AAMA,QAAM,YAAY,GAAG,UAAU,WAAW,QAAQ;AAClD,QAAM,gBAAY,gCAAkB;AAAA,IAClC,MAAM,GAAG,WAAW,IAAI,UAAU,IAAI,QAAQ;AAAA,IAC9C;AAAA,EACF,CAAC;AAED,QAAM,EAAE,KAAK,YAAY,QAAI,sCAAgB,OAAO,WAAW,EAAE,eAAe,CAAC;AAEjF,QAAM,OAA4B;AAAA,IAChC;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAEA,iBAAe,mBAAmB;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,eAAe,aAAAA,QAAM,cAAc,2CAAkB;AAAA,IACzD,mBAAmB,oBAAI,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC;AAAA,EAChD,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":["React"]}
@@ -39,14 +39,15 @@ var import_use_styles_context = require("./use-styles-context");
39
39
  var import_serialize_css = require("../serialize-css");
40
40
  var import_makeswift_style = require("../components/makeswift-style");
41
41
  function useStyle(style) {
42
- const { classNamePrefix, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
42
+ const { classNamePrefix, forceImportant, stylesRegistry } = (0, import_use_styles_context.useStylesContext)();
43
+ const serializedStyle = JSON.stringify(style);
43
44
  const className = (0, import_utils.generateClassName)({
44
- data: JSON.stringify(style),
45
+ data: forceImportant ? `${serializedStyle}-important` : serializedStyle,
45
46
  classNamePrefix
46
47
  });
47
48
  let styleData = stylesRegistry.getUncontrolledClassStyles().get(className);
48
49
  if (styleData == null) {
49
- const { css } = (0, import_serialize_css.toCssStatements)(style, className);
50
+ const { css } = (0, import_serialize_css.toCssStatements)(style, className, { forceImportant });
50
51
  styleData = {
51
52
  className,
52
53
  css,