@doenet/doenetml 0.7.21-dev.341 → 0.7.21-dev.343

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 (104) hide show
  1. package/{AnswerResponseButton-F0c45e3m.js → AnswerResponseButton-CZabp-LL.js} +2 -2
  2. package/{Description-dGZQDql9.js → Description-CRODvMC1.js} +1 -1
  3. package/{GraphFrame-DB4wOrtP.js → GraphFrame-5R_Nnklj.js} +2 -2
  4. package/{JSXGraphRenderer-BZetOZGA.js → JSXGraphRenderer-BcR36ozd.js} +1 -1
  5. package/{NonInlineMediaWrapper-DUTDW2CP.js → NonInlineMediaWrapper-D4iFcIdJ.js} +1 -1
  6. package/{_error-BB55uuOi.js → _error-l3ASAd_O.js} +2 -2
  7. package/{alert-DEcY_Agt.js → alert-C31vQ1Zm.js} +3 -3
  8. package/{angle-CcBjLVkI.js → angle-D5tPYJGy.js} +6 -6
  9. package/{answer-Ca_lx4AY.js → answer-DUvHSopX.js} +5 -5
  10. package/{asList-ZYvKNdsO.js → asList-17wIQSts.js} +2 -2
  11. package/{blockQuote-BtV79V-k.js → blockQuote-H67CPvh4.js} +3 -3
  12. package/{boolean-COZ5WBFs.js → boolean-BrfbiVxM.js} +2 -2
  13. package/{booleanInput-Ct9jtzPR.js → booleanInput-1RzOSBmO.js} +6 -6
  14. package/{br-BO66uC6v.js → br-Y3u1HEpF.js} +2 -2
  15. package/{button-DyegLoHD.js → button-BuX0qERC.js} +4 -4
  16. package/{c-C5I-RerR.js → c-Y0FRTzwm.js} +3 -3
  17. package/{cell-BGgZ39yi.js → cell-DXzGgLZC.js} +3 -3
  18. package/{choiceInput-oluRcxaK.js → choiceInput-QYG5RDnq.js} +4 -4
  19. package/{circle-BApd25ki.js → circle-BcT8JW-2.js} +5 -5
  20. package/{cobwebPolyline-_86BoMha.js → cobwebPolyline-Bk86qCZN.js} +4 -4
  21. package/{codeEditor-BO8789mf.js → codeEditor-CSg_ERC_.js} +2 -2
  22. package/{composites-Bd-zZHjL.js → composites-CTAXsoVJ.js} +1 -1
  23. package/{containerBlock-Dd5OMt-V.js → containerBlock-BiLyDPdi.js} +4 -4
  24. package/{containerInline-84cJj5vI.js → containerInline-BHA-8I0O.js} +4 -4
  25. package/{curve-BP7e3bEq.js → curve-CY8QmohO.js} +4 -4
  26. package/{doenetml-DBnC263_.js → doenetml-drNYjJiF.js} +13 -5
  27. package/doenetml-external-worker.js +2 -2
  28. package/doenetml-inline-worker.js +2 -2
  29. package/{ellipsis-D0qYAm8_.js → ellipsis-DYESmUW7.js} +2 -2
  30. package/{em-DjyApTe-.js → em-kfmKy4PD.js} +3 -3
  31. package/{embed-BqSds-Pr.js → embed-D1ZSN3di.js} +2 -2
  32. package/{feedback-BML439vw.js → feedback-CLHphyee.js} +4 -4
  33. package/{figure-CwIS4Kan.js → figure-BrePmmQq.js} +3 -3
  34. package/{fillPatterns-CuPw-DhW.js → fillPatterns-CRaVTk2g.js} +1 -1
  35. package/{footnote-d7SB2zAy.js → footnote-3FW1HY9k.js} +3 -3
  36. package/{fractionInput-Dqs46B8U.js → fractionInput-BC8E81uj.js} +4 -4
  37. package/{graph-DqRzGSX5.js → graph-uNmxqd5I.js} +6 -6
  38. package/{hint-CWHr9UCA.js → hint-B_kdL21O.js} +4 -4
  39. package/{hr-CV-LeMBg.js → hr-DZafn4SW.js} +2 -2
  40. package/{image-C-XUGV50.js → image-BGchg3Hp.js} +7 -7
  41. package/{index-C-OAaLdY.js → index-CirIolbf.js} +1 -1
  42. package/{index.es-cV104-N8.js → index.es-CxbMbZHV.js} +1 -1
  43. package/index.js +1 -1
  44. package/{label-BacX6na0.js → label-BEZXfmM-.js} +6 -6
  45. package/{labelWithLatex-B0nhH8sA.js → labelWithLatex-tld42Q2B.js} +1 -1
  46. package/{legend-BnmPHzUw.js → legend-PTdKctOq.js} +4 -4
  47. package/{line-CbQgFuWz.js → line-CRs9Kffi.js} +5 -5
  48. package/{lineSegment-Zt1Z4R-H.js → lineSegment-CF6YCRAO.js} +4 -4
  49. package/{list-Pe1H3ZFe.js → list-mBXCMvMp.js} +4 -4
  50. package/{lq-NuRMVNJz.js → lq-DnFLilVI.js} +2 -2
  51. package/{lsq-BmgjWYUK.js → lsq-HTRPVsTA.js} +2 -2
  52. package/{markupRenderer-f0IiD5hf.js → markupRenderer-rPpSzHPv.js} +1 -1
  53. package/{math-DuYTIUw5.js → math-Diykw-Cl.js} +6 -6
  54. package/{mathInput-BrgDgAqA.js → mathInput-BlFoiDUY.js} +7 -7
  55. package/{matrixInput--qTCSGaH.js → matrixInput-CxIgxmNb.js} +4 -4
  56. package/{mdash-wsYNiWK9.js → mdash-CHe8idf5.js} +2 -2
  57. package/{nbsp-CzVTo9Ce.js → nbsp-DLhqASSt.js} +2 -2
  58. package/{ndash-C1y_rzYb.js → ndash-Bk0U8LUk.js} +2 -2
  59. package/{number-DWwdCaOT.js → number-B0eczUCk.js} +6 -6
  60. package/{orbitalDiagram-DhmN-dz1.js → orbitalDiagram-ncpQ3XeY.js} +2 -2
  61. package/{orbitalDiagramInput-B_4tj8Dh.js → orbitalDiagramInput-D6_ENlYY.js} +2 -2
  62. package/{p-DZpY4hQe.js → p-BWfkgup-.js} +4 -4
  63. package/package.json +1 -1
  64. package/{paginatorControls-kx6TQa6c.js → paginatorControls-BpypxFCi.js} +2 -2
  65. package/{pegboard-DE0h5eed.js → pegboard-CS7dNQQS.js} +4 -4
  66. package/{point-CQolRwd1.js → point-B_tHcxBn.js} +5 -5
  67. package/{polygon-BHb0mOpO.js → polygon-ChWHMbNG.js} +5 -5
  68. package/{polyline-Bpo25-Em.js → polyline-ByVT3k6z.js} +4 -4
  69. package/{pre-7XK6at3o.js → pre-BEzb0br9.js} +3 -3
  70. package/{prefigure-DPG0KLHL.js → prefigure-UIeHl-FK.js} +1 -1
  71. package/{pretzel-ROYqpQaR.js → pretzel-RAGpWNd8.js} +4 -4
  72. package/{q-5EoLrWmB.js → q-CWri8Bpx.js} +3 -3
  73. package/{ray-D0gcJau3.js → ray-Ca4Kymx-.js} +4 -4
  74. package/{ref-gJj92dTx.js → ref-Dq7yAQOX.js} +2 -2
  75. package/{regionBetweenCurveXAxis-UudrQaKF.js → regionBetweenCurveXAxis-B0BToHLL.js} +5 -5
  76. package/{regionBetweenCurves-OdcYtqXZ.js → regionBetweenCurves-BcClg3xK.js} +5 -5
  77. package/{row-CP3mSA8q.js → row-Cr2G9qWM.js} +2 -2
  78. package/{rq-JwJuQS_I.js → rq-Bzxr4ovA.js} +2 -2
  79. package/{rsq-BXu5vRD5.js → rsq-D9Kkw4CU.js} +2 -2
  80. package/{section-Cu5a8t0E.js → section-DWjZ3izY.js} +5 -5
  81. package/{sha256-C0vj3HDn-C63op1V-.js → sha256-C0vj3HDn-BxaiuOaa.js} +1 -1
  82. package/{sideBySide-x12GGDno.js → sideBySide-B3IH4vRy.js} +2 -2
  83. package/{slider-8voyawWp.js → slider-D24sz9P1.js} +3 -3
  84. package/{solution-BURGyiWv.js → solution-D26PvuZ-.js} +4 -4
  85. package/{spreadsheet-CJEuN3-a.js → spreadsheet-DNcPWkpY.js} +2 -2
  86. package/{sq-CqpQQ2An.js → sq-BZq6nmRm.js} +3 -3
  87. package/{subsetOfRealsInput-CkLAjpca.js → subsetOfRealsInput-DlrNfBY6.js} +2 -2
  88. package/{summaryStatistics-BLx2s1qP.js → summaryStatistics-BZWidOD_.js} +2 -2
  89. package/{table-fa-RT1ys.js → table-C-dMRPmP.js} +2 -2
  90. package/{tabular-C8YasAq1.js → tabular-whrBBrNK.js} +2 -2
  91. package/{tag-D04W6wnl.js → tag-B59gIOhu.js} +2 -2
  92. package/{text-BMGcwWq0.js → text-Be88xCNH.js} +6 -6
  93. package/{textInput-CxvDR7Z8.js → textInput-Cqrld3OV.js} +6 -6
  94. package/{tooltip-provider-CkDY2Sis.js → tooltip-provider-bTQrT7TJ.js} +1 -1
  95. package/{useAnchoredGraphDragHandler-B1bepAna.js → useAnchoredGraphDragHandler-BEy2dmsI.js} +1 -1
  96. package/useDoenetRenderer-CDZbHBy-.js +114 -0
  97. package/{useSubmitActionWithDelay-AldkXRbD.js → useSubmitActionWithDelay-K14395kS.js} +2 -2
  98. package/utils/visibility.d.ts +17 -1
  99. package/utils/visibility.d.ts.map +1 -1
  100. package/utils/visibility.test.d.ts +2 -0
  101. package/utils/visibility.test.d.ts.map +1 -0
  102. package/{vector-nSGMCL3-.js → vector-BOzufZlV.js} +5 -5
  103. package/{video-CNAY_Ue5.js → video-bqqPRRHP.js} +4 -4
  104. package/useDoenetRenderer-B4NpAX2T.js +0 -114
@@ -1,7 +1,7 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
4
- import { r as renderMarkupBody } from "./markupRenderer-f0IiD5hf.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
+ import { r as renderMarkupBody } from "./markupRenderer-rPpSzHPv.js";
5
5
  const q = React__default.memo(function Q(props) {
6
6
  const { SVs, children } = useDoenetRenderer(props);
7
7
  const body = renderMarkupBody({ SVs, children });
@@ -1,8 +1,8 @@
1
- import { l as DocContext, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useContext, useRef } from "react";
3
- import { j as jxg, h as syncLineFamilyVisibility, s as syncLayer, e as syncLineStrokeStyle, a as syncWithLabelToggle, f as syncLabelStrokeColor, b as syncLabelMaskCssStyle, i as applyLineFamilyLabelPlacement, k as buildLineFamilyLabelAttributes, d as attachLabelHoverHighlight, c as computeLabelMaskCssStyle, l as stabilizeInitialLineFamilyLabelPlacement, r as removeJXGEventHandlers } from "./JSXGraphRenderer-BZetOZGA.js";
4
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
5
- import { BoardContext, LINE_LAYER_OFFSET } from "./graph-DqRzGSX5.js";
3
+ import { j as jxg, h as syncLineFamilyVisibility, s as syncLayer, e as syncLineStrokeStyle, a as syncWithLabelToggle, f as syncLabelStrokeColor, b as syncLabelMaskCssStyle, i as applyLineFamilyLabelPlacement, k as buildLineFamilyLabelAttributes, d as attachLabelHoverHighlight, c as computeLabelMaskCssStyle, l as stabilizeInitialLineFamilyLabelPlacement, r as removeJXGEventHandlers } from "./JSXGraphRenderer-BcR36ozd.js";
4
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
5
+ import { BoardContext, LINE_LAYER_OFFSET } from "./graph-uNmxqd5I.js";
6
6
  import { a as buildLineLikeAttributes } from "./buildGraphicalAttributes-C7PtyKL7.js";
7
7
  import { u as usePointerDragState, a as useBoardPointerTracking } from "./useBoardPointerTracking-DV6a8Wvg.js";
8
8
  import { p as pointerEventToUserCoords } from "./dragThreshold-DuSSFrIU.js";
@@ -1,6 +1,6 @@
1
- import { l as DocContext, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useContext, useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const ref = React__default.memo(function Ref(props) {
5
5
  const { id, SVs, children, requestScrollTo } = useDoenetRenderer(props);
6
6
  const { doenetViewerUrl } = useContext(DocContext) || {};
@@ -1,9 +1,9 @@
1
- import { l as DocContext, q as createFunctionFromDefinition, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, q as createFunctionFromDefinition, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useContext, useRef, useEffect } from "react";
3
- import { j as jxg, b as syncLabelMaskCssStyle, c as computeLabelMaskCssStyle, d as attachLabelHoverHighlight } from "./JSXGraphRenderer-BZetOZGA.js";
4
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
5
- import { BoardContext, LINE_LAYER_OFFSET } from "./graph-DqRzGSX5.js";
6
- import { g as getPatternFillAttributes } from "./fillPatterns-CuPw-DhW.js";
3
+ import { j as jxg, b as syncLabelMaskCssStyle, c as computeLabelMaskCssStyle, d as attachLabelHoverHighlight } from "./JSXGraphRenderer-BcR36ozd.js";
4
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
5
+ import { BoardContext, LINE_LAYER_OFFSET } from "./graph-uNmxqd5I.js";
6
+ import { g as getPatternFillAttributes } from "./fillPatterns-CRaVTk2g.js";
7
7
  import { b as resolveCanvasColor } from "./styleColors-Cknqcr0q.js";
8
8
  const regionBetweenCurveXAxis = React__default.memo(function RegionBetweenCurveXAxis(props) {
9
9
  let { id, SVs } = useDoenetRenderer(props);
@@ -1,11 +1,11 @@
1
- import { l as DocContext, q as createFunctionFromDefinition, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, q as createFunctionFromDefinition, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useContext, useRef, useEffect } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
4
- import { BoardContext, LINE_LAYER_OFFSET } from "./graph-DqRzGSX5.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
+ import { BoardContext, LINE_LAYER_OFFSET } from "./graph-uNmxqd5I.js";
5
5
  import { s as styleToDash } from "./styleToDash-DWb71gbd.js";
6
- import { g as getPatternFillAttributes } from "./fillPatterns-CuPw-DhW.js";
6
+ import { g as getPatternFillAttributes } from "./fillPatterns-CRaVTk2g.js";
7
7
  import { b as resolveCanvasColor } from "./styleColors-Cknqcr0q.js";
8
- import { b as syncLabelMaskCssStyle, c as computeLabelMaskCssStyle, d as attachLabelHoverHighlight } from "./JSXGraphRenderer-BZetOZGA.js";
8
+ import { b as syncLabelMaskCssStyle, c as computeLabelMaskCssStyle, d as attachLabelHoverHighlight } from "./JSXGraphRenderer-BcR36ozd.js";
9
9
  const regionBetweenCurves = React__default.memo(function RegionBetweenCurves(props) {
10
10
  let { id, SVs } = useDoenetRenderer(props);
11
11
  RegionBetweenCurves.ignoreActionsWithoutCore = () => true;
@@ -1,6 +1,6 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const row = React__default.memo(function Row(props) {
5
5
  let { id, SVs, children } = useDoenetRenderer(props);
6
6
  if (SVs.hidden) {
@@ -1,6 +1,6 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const rq = React__default.memo(function Rq(props) {
5
5
  let { SVs } = useDoenetRenderer(props, false);
6
6
  if (SVs.hidden) {
@@ -1,6 +1,6 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const rsq = React__default.memo(function Rsq(props) {
5
5
  let { SVs } = useDoenetRenderer(props, false);
6
6
  if (SVs.hidden) {
@@ -1,10 +1,10 @@
1
- import { l as DocContext, p as cesc, u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, p as cesc, u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useContext, useRef, useEffect } from "react";
3
- import { F as FontAwesomeIcon } from "./index.es-cV104-N8.js";
3
+ import { F as FontAwesomeIcon } from "./index.es-CxbMbZHV.js";
4
4
  import { f as faCaretDown, a as faCaretRight } from "./index-BDlitCgu.js";
5
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
6
- import { a as addCommasForCompositeRanges } from "./composites-Bd-zZHjL.js";
7
- import { c as calculateValidationState, u as useSubmitActionWithDelay, a as createCheckWorkComponent } from "./useSubmitActionWithDelay-AldkXRbD.js";
5
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
6
+ import { a as addCommasForCompositeRanges } from "./composites-CTAXsoVJ.js";
7
+ import { c as calculateValidationState, u as useSubmitActionWithDelay, a as createCheckWorkComponent } from "./useSubmitActionWithDelay-K14395kS.js";
8
8
  const section = React__default.memo(function Section(props) {
9
9
  let { id, SVs, children, actions, callAction } = useDoenetRenderer(props);
10
10
  const { darkMode } = useContext(DocContext) || {};
@@ -1,4 +1,4 @@
1
- import { j as getDefaultExportFromCjs } from "./doenetml-DBnC263_.js";
1
+ import { j as getDefaultExportFromCjs } from "./doenetml-drNYjJiF.js";
2
2
  function _mergeNamespaces$1(n, m) {
3
3
  for (var i = 0; i < m.length; i++) {
4
4
  const e = m[i];
@@ -1,6 +1,6 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  import { a as getBlockMarginWithOptionalTopSuppression } from "./nonInlineMediaLayout-CkXHaqzo.js";
5
5
  function isWhitespaceTextChild(child) {
6
6
  return typeof child === "string" && child.trim() === "";
@@ -1,8 +1,8 @@
1
- import { k as jsxRuntimeExports, E as ActionButtonGroup, F as ActionButton, o as Context } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports, E as ActionButtonGroup, F as ActionButton, o as Context } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useState, useRef, useEffect } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  import { s as sizeToCSS } from "./css-BJLDLYRJ.js";
5
- import { r as renderLabelWithLatex } from "./labelWithLatex-B0nhH8sA.js";
5
+ import { r as renderLabelWithLatex } from "./labelWithLatex-tld42Q2B.js";
6
6
  let round_to_decimals = (x, n) => {
7
7
  try {
8
8
  return Context.round_numbers_to_decimals(x, n).tree;
@@ -1,9 +1,9 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
4
- import { F as FontAwesomeIcon } from "./index.es-cV104-N8.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
+ import { F as FontAwesomeIcon } from "./index.es-CxbMbZHV.js";
5
5
  import { c as faPuzzlePiece } from "./index-BDlitCgu.js";
6
- import { a as addCommasForCompositeRanges } from "./composites-Bd-zZHjL.js";
6
+ import { a as addCommasForCompositeRanges } from "./composites-CTAXsoVJ.js";
7
7
  const solution = React__default.memo(function Solution(props) {
8
8
  let { id, SVs, children, actions, callAction } = useDoenetRenderer(props);
9
9
  const ref = useRef(null);
@@ -1,6 +1,6 @@
1
- import { l as DocContext, u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { forwardRef, useId, useRef, useCallback, useMemo, useEffect, Children, useImperativeHandle, Fragment, createContext as createContext$1, useContext, useState } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  import require$$2 from "react-dom";
5
5
  import { s as sizeToCSS } from "./css-BJLDLYRJ.js";
6
6
  import { a as getBlockMarginWithOptionalTopSuppression } from "./nonInlineMediaLayout-CkXHaqzo.js";
@@ -1,7 +1,7 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
4
- import { r as renderMarkupBody } from "./markupRenderer-f0IiD5hf.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
+ import { r as renderMarkupBody } from "./markupRenderer-rPpSzHPv.js";
5
5
  const sq = React__default.memo(function Sq(props) {
6
6
  const { SVs, children } = useDoenetRenderer(props);
7
7
  const body = renderMarkupBody({ SVs, children });
@@ -1,6 +1,6 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports, G as ToggleButtonGroup, T as ToggleButton, E as ActionButtonGroup, F as ActionButton } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports, G as ToggleButtonGroup, T as ToggleButton, E as ActionButtonGroup, F as ActionButton } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useState, useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const subsetOfRealsInput = React__default.memo(function subsetOfReals(props) {
5
5
  let { id, SVs, actions, callAction } = useDoenetRenderer(props, false);
6
6
  let [mode, setMode] = useState("add remove points");
@@ -1,6 +1,6 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  import { s as sizeToCSS } from "./css-BJLDLYRJ.js";
5
5
  const summaryStatistics = React__default.memo(function SummaryStatistics(props) {
6
6
  let { id, SVs, actions, callAction } = useDoenetRenderer(props);
@@ -1,6 +1,6 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const table = React__default.memo(function Table(props) {
5
5
  let { id, SVs, children, actions, callAction } = useDoenetRenderer(props);
6
6
  const ref = useRef(null);
@@ -1,6 +1,6 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  import { s as sizeToCSS } from "./css-BJLDLYRJ.js";
5
5
  import { a as getBlockMarginWithOptionalTopSuppression } from "./nonInlineMediaLayout-CkXHaqzo.js";
6
6
  const tabular = React__default.memo(function Tabular(props) {
@@ -1,6 +1,6 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  const tag = React__default.memo(function Tag(props) {
5
5
  let { id, SVs, children } = useDoenetRenderer(props);
6
6
  if (SVs.hidden) {
@@ -1,13 +1,13 @@
1
- import { l as DocContext, o as Context, k as jsxRuntimeExports, t as textRendererStyle } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, o as Context, k as jsxRuntimeExports, t as textRendererStyle } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useRef, useContext } from "react";
3
- import { j as jxg } from "./JSXGraphRenderer-BZetOZGA.js";
4
- import { BoardContext, TEXT_LAYER_OFFSET } from "./graph-DqRzGSX5.js";
5
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { j as jxg } from "./JSXGraphRenderer-BcR36ozd.js";
4
+ import { BoardContext, TEXT_LAYER_OFFSET } from "./graph-uNmxqd5I.js";
5
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
6
6
  import { g as getPositionFromAnchorByCoordinate } from "./graph-W6vrFcBu.js";
7
- import { ChoiceInputInlineContext } from "./choiceInput-oluRcxaK.js";
7
+ import { ChoiceInputInlineContext } from "./choiceInput-QYG5RDnq.js";
8
8
  import { u as usePointerDragState, a as useBoardPointerTracking } from "./useBoardPointerTracking-DV6a8Wvg.js";
9
9
  import { u as useDraggableRefs, a as useJSXGraphCleanup } from "./useJSXGraphCleanup-CX91oVW8.js";
10
- import { d as detachAnchoredGraphElement, a as attachAnchoredGraphDragHandlers } from "./useAnchoredGraphDragHandler-B1bepAna.js";
10
+ import { d as detachAnchoredGraphElement, a as attachAnchoredGraphDragHandlers } from "./useAnchoredGraphDragHandler-BEy2dmsI.js";
11
11
  const text = React__default.memo(function Text(props) {
12
12
  let { componentIdx, id, SVs, actions, callAction } = useDoenetRenderer(props);
13
13
  Text.ignoreActionsWithoutCore = () => true;
@@ -1,12 +1,12 @@
1
- import { o as Context, k as jsxRuntimeExports, M as MathJax } from "./doenetml-DBnC263_.js";
1
+ import { o as Context, k as jsxRuntimeExports, M as MathJax } from "./doenetml-drNYjJiF.js";
2
2
  import { useState, useRef, useContext, useEffect } from "react";
3
- import { j as jxg } from "./JSXGraphRenderer-BZetOZGA.js";
4
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { j as jxg } from "./JSXGraphRenderer-BcR36ozd.js";
4
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
5
5
  import { s as sizeToCSS } from "./css-BJLDLYRJ.js";
6
- import { BoardContext } from "./graph-DqRzGSX5.js";
6
+ import { BoardContext } from "./graph-uNmxqd5I.js";
7
7
  import { g as getPositionFromAnchorByCoordinate, P as POINTER_DRAG_THRESHOLD } from "./graph-W6vrFcBu.js";
8
- import { c as calculateValidationState, u as useSubmitActionWithDelay, a as createCheckWorkComponent } from "./useSubmitActionWithDelay-AldkXRbD.js";
9
- import { D as DescriptionPopover } from "./Description-dGZQDql9.js";
8
+ import { c as calculateValidationState, u as useSubmitActionWithDelay, a as createCheckWorkComponent } from "./useSubmitActionWithDelay-K14395kS.js";
9
+ import { D as DescriptionPopover } from "./Description-CRODvMC1.js";
10
10
  import { a as addValidationStateToShortDescription } from "./validationState-CVwSJZpB.js";
11
11
  function TextInput(props) {
12
12
  let { id, SVs, children, actions, ignoreUpdate, callAction } = useDoenetRenderer(props);
@@ -1,4 +1,4 @@
1
- import { a4 as createStoreContext, a5 as HovercardScopedContextProvider, a6 as HovercardContextProvider, a7 as createDialogComponent, J as forwardRef, K as createElement, L as createHook, O as invariant, a8 as useWrapElement, k as jsxRuntimeExports, P as useStoreState, a9 as useHovercard, aa as isFalsyBooleanCallback, ab as contains, ac as sync, ad as chain, ae as useEvent, af as useHovercardAnchor, ag as createStore, ah as createHovercardStore, ai as defaultValue, aj as useStore, ak as useStoreProps, al as useHovercardStoreProps } from "./doenetml-DBnC263_.js";
1
+ import { a4 as createStoreContext, a5 as HovercardScopedContextProvider, a6 as HovercardContextProvider, a7 as createDialogComponent, J as forwardRef, K as createElement, L as createHook, O as invariant, a8 as useWrapElement, k as jsxRuntimeExports, P as useStoreState, a9 as useHovercard, aa as isFalsyBooleanCallback, ab as contains, ac as sync, ad as chain, ae as useEvent, af as useHovercardAnchor, ag as createStore, ah as createHovercardStore, ai as defaultValue, aj as useStore, ak as useStoreProps, al as useHovercardStoreProps } from "./doenetml-drNYjJiF.js";
2
2
  import { useRef, useEffect } from "react";
3
3
  const ctx = createStoreContext([HovercardContextProvider], [HovercardScopedContextProvider]);
4
4
  const useTooltipProviderContext = ctx.useProviderContext;
@@ -1,4 +1,4 @@
1
- import { r as removeJXGEventHandlers, L as LINE_FAMILY_EVENTS, j as jxg } from "./JSXGraphRenderer-BZetOZGA.js";
1
+ import { r as removeJXGEventHandlers, L as LINE_FAMILY_EVENTS, j as jxg } from "./JSXGraphRenderer-BcR36ozd.js";
2
2
  import { e as exceededDragThreshold, p as pointerEventToUserCoords } from "./dragThreshold-DuSSFrIU.js";
3
3
  function attachAnchoredGraphDragHandlers(params) {
4
4
  const {
@@ -0,0 +1,114 @@
1
+ import { w as useAppSelector, x as mainSlice, y as renderersLoadComponent, _ as __variableDynamicImportRuntimeHelper } from "./doenetml-drNYjJiF.js";
2
+ import React__default, { useState, useEffect } from "react";
3
+ function useDoenetRenderer(props, initializeChildrenOnConstruction = true) {
4
+ const actions = props.componentInstructions.actions;
5
+ const componentIdx = props.componentInstructions.componentIdx;
6
+ const effectiveIdx = props.componentInstructions.effectiveIdx;
7
+ const id = props.componentInstructions.id;
8
+ const rendererName = props.coreId + componentIdx;
9
+ const [renderersToLoad, setRenderersToLoad] = useState({});
10
+ const componentInfo = useAppSelector(
11
+ (state) => mainSlice.selectors.componentInfo(state)[rendererName]
12
+ );
13
+ const {
14
+ stateValues,
15
+ sourceOfUpdate = {},
16
+ ignoreUpdate,
17
+ childrenInstructions,
18
+ prefixForIds
19
+ } = componentInfo || {
20
+ stateValues: {},
21
+ sourceOfUpdate: {},
22
+ ignoreUpdate: false,
23
+ childrenInstructions: [],
24
+ prefixForIds: ""
25
+ };
26
+ let children = [];
27
+ const loadMoreRenderers = Object.keys(renderersToLoad).length === 0;
28
+ for (let childInstructions of childrenInstructions) {
29
+ let child = createChildFromInstructions(
30
+ childInstructions,
31
+ loadMoreRenderers
32
+ );
33
+ children.push(child);
34
+ }
35
+ useEffect(() => {
36
+ const entries = Object.entries(renderersToLoad);
37
+ if (entries.length > 0) {
38
+ const names = entries.map(([name]) => name);
39
+ const loaders = entries.map(([, loader]) => loader);
40
+ renderersLoadComponent(loaders, names).then(
41
+ ({ rendererClasses: newRendererClasses }) => {
42
+ Object.assign(props.rendererClasses, newRendererClasses);
43
+ setRenderersToLoad({});
44
+ }
45
+ );
46
+ }
47
+ }, [renderersToLoad, props.rendererClasses]);
48
+ function createChildFromInstructions(childInstructions, loadMoreRenderers2) {
49
+ if (typeof childInstructions === "string" || childInstructions === null) {
50
+ return childInstructions;
51
+ }
52
+ let propsForChild = {
53
+ key: props.coreId + childInstructions.componentIdx,
54
+ componentInstructions: childInstructions,
55
+ rendererClasses: props.rendererClasses,
56
+ coreId: props.coreId,
57
+ docId: props.docId,
58
+ activityId: props.activityId,
59
+ callAction: props.callAction,
60
+ fetchExternalDoenetML: props.fetchExternalDoenetML,
61
+ requestScrollTo: props.requestScrollTo,
62
+ flags: props.flags
63
+ };
64
+ let rendererClass = props.rendererClasses[childInstructions.rendererType];
65
+ if (!rendererClass) {
66
+ if (loadMoreRenderers2) {
67
+ setRenderersToLoad((old) => {
68
+ let rendererLoaders = { ...old };
69
+ if (!(childInstructions.rendererType in rendererLoaders)) {
70
+ rendererLoaders[childInstructions.rendererType] = () => __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./renderers/GraphFrame.tsx": () => import("./GraphFrame-5R_Nnklj.js"), "./renderers/JSXGraphRenderer.tsx": () => import("./JSXGraphRenderer-BcR36ozd.js").then((n) => n.m), "./renderers/_error.tsx": () => import("./_error-l3ASAd_O.js"), "./renderers/alert.tsx": () => import("./alert-C31vQ1Zm.js"), "./renderers/angle.tsx": () => import("./angle-D5tPYJGy.js"), "./renderers/answer.tsx": () => import("./answer-DUvHSopX.js"), "./renderers/asList.tsx": () => import("./asList-17wIQSts.js"), "./renderers/blockQuote.tsx": () => import("./blockQuote-H67CPvh4.js"), "./renderers/boolean.tsx": () => import("./boolean-BrfbiVxM.js"), "./renderers/booleanInput.tsx": () => import("./booleanInput-1RzOSBmO.js"), "./renderers/br.tsx": () => import("./br-Y3u1HEpF.js"), "./renderers/button.tsx": () => import("./button-BuX0qERC.js"), "./renderers/c.tsx": () => import("./c-Y0FRTzwm.js"), "./renderers/cell.tsx": () => import("./cell-DXzGgLZC.js"), "./renderers/choiceInput.tsx": () => import("./choiceInput-QYG5RDnq.js"), "./renderers/circle.tsx": () => import("./circle-BcT8JW-2.js"), "./renderers/cobwebPolyline.tsx": () => import("./cobwebPolyline-Bk86qCZN.js"), "./renderers/codeEditor.tsx": () => import("./codeEditor-CSg_ERC_.js"), "./renderers/containerBlock.tsx": () => import("./containerBlock-BiLyDPdi.js"), "./renderers/containerInline.tsx": () => import("./containerInline-BHA-8I0O.js"), "./renderers/curve.tsx": () => import("./curve-CY8QmohO.js"), "./renderers/ellipsis.tsx": () => import("./ellipsis-DYESmUW7.js"), "./renderers/em.tsx": () => import("./em-kfmKy4PD.js"), "./renderers/embed.tsx": () => import("./embed-D1ZSN3di.js"), "./renderers/feedback.tsx": () => import("./feedback-CLHphyee.js"), "./renderers/figure.tsx": () => import("./figure-BrePmmQq.js"), "./renderers/footnote.tsx": () => import("./footnote-3FW1HY9k.js"), "./renderers/fractionInput.tsx": () => import("./fractionInput-BC8E81uj.js"), "./renderers/graph.tsx": () => import("./graph-uNmxqd5I.js"), "./renderers/hint.tsx": () => import("./hint-B_kdL21O.js"), "./renderers/hr.tsx": () => import("./hr-DZafn4SW.js"), "./renderers/image.tsx": () => import("./image-BGchg3Hp.js"), "./renderers/label.tsx": () => import("./label-BEZXfmM-.js"), "./renderers/legend.tsx": () => import("./legend-PTdKctOq.js"), "./renderers/line.tsx": () => import("./line-CRs9Kffi.js"), "./renderers/lineSegment.tsx": () => import("./lineSegment-CF6YCRAO.js"), "./renderers/list.tsx": () => import("./list-mBXCMvMp.js"), "./renderers/lq.tsx": () => import("./lq-DnFLilVI.js"), "./renderers/lsq.tsx": () => import("./lsq-HTRPVsTA.js"), "./renderers/math.tsx": () => import("./math-Diykw-Cl.js"), "./renderers/mathInput.tsx": () => import("./mathInput-BlFoiDUY.js"), "./renderers/matrixInput.tsx": () => import("./matrixInput-CxIgxmNb.js"), "./renderers/mdash.tsx": () => import("./mdash-CHe8idf5.js"), "./renderers/nbsp.tsx": () => import("./nbsp-DLhqASSt.js"), "./renderers/ndash.tsx": () => import("./ndash-Bk0U8LUk.js"), "./renderers/number.tsx": () => import("./number-B0eczUCk.js"), "./renderers/orbitalDiagram.tsx": () => import("./orbitalDiagram-ncpQ3XeY.js"), "./renderers/orbitalDiagramInput.tsx": () => import("./orbitalDiagramInput-D6_ENlYY.js"), "./renderers/p.tsx": () => import("./p-BWfkgup-.js"), "./renderers/paginatorControls.tsx": () => import("./paginatorControls-BpypxFCi.js"), "./renderers/pegboard.tsx": () => import("./pegboard-CS7dNQQS.js"), "./renderers/point.tsx": () => import("./point-B_tHcxBn.js"), "./renderers/polygon.tsx": () => import("./polygon-ChWHMbNG.js"), "./renderers/polyline.tsx": () => import("./polyline-ByVT3k6z.js"), "./renderers/pre.tsx": () => import("./pre-BEzb0br9.js"), "./renderers/prefigure.tsx": () => import("./prefigure-UIeHl-FK.js"), "./renderers/pretzel.tsx": () => import("./pretzel-RAGpWNd8.js"), "./renderers/q.tsx": () => import("./q-CWri8Bpx.js"), "./renderers/ray.tsx": () => import("./ray-Ca4Kymx-.js"), "./renderers/ref.tsx": () => import("./ref-Dq7yAQOX.js"), "./renderers/regionBetweenCurveXAxis.tsx": () => import("./regionBetweenCurveXAxis-B0BToHLL.js"), "./renderers/regionBetweenCurves.tsx": () => import("./regionBetweenCurves-BcClg3xK.js"), "./renderers/row.tsx": () => import("./row-Cr2G9qWM.js"), "./renderers/rq.tsx": () => import("./rq-Bzxr4ovA.js"), "./renderers/rsq.tsx": () => import("./rsq-D9Kkw4CU.js"), "./renderers/section.tsx": () => import("./section-DWjZ3izY.js"), "./renderers/sideBySide.tsx": () => import("./sideBySide-B3IH4vRy.js"), "./renderers/slider.tsx": () => import("./slider-D24sz9P1.js"), "./renderers/solution.tsx": () => import("./solution-D26PvuZ-.js"), "./renderers/spreadsheet.tsx": () => import("./spreadsheet-DNcPWkpY.js"), "./renderers/sq.tsx": () => import("./sq-BZq6nmRm.js"), "./renderers/subsetOfRealsInput.tsx": () => import("./subsetOfRealsInput-DlrNfBY6.js"), "./renderers/summaryStatistics.tsx": () => import("./summaryStatistics-BZWidOD_.js"), "./renderers/table.tsx": () => import("./table-C-dMRPmP.js"), "./renderers/tabular.tsx": () => import("./tabular-whrBBrNK.js"), "./renderers/tag.tsx": () => import("./tag-B59gIOhu.js"), "./renderers/text.tsx": () => import("./text-Be88xCNH.js"), "./renderers/textInput.tsx": () => import("./textInput-Cqrld3OV.js"), "./renderers/vector.tsx": () => import("./vector-BOzufZlV.js"), "./renderers/video.tsx": () => import("./video-bqqPRRHP.js") }), `./renderers/${childInstructions.rendererType}.tsx`, 3);
71
+ }
72
+ return rendererLoaders;
73
+ });
74
+ }
75
+ return null;
76
+ }
77
+ let child = React__default.createElement(rendererClass, propsForChild);
78
+ return child;
79
+ }
80
+ let rendererType = props.componentInstructions.rendererType;
81
+ const callAction = (argObj) => {
82
+ if (!argObj.componentIdx) {
83
+ argObj = { ...argObj };
84
+ argObj.componentIdx = componentIdx;
85
+ }
86
+ if (!argObj.rendererType) {
87
+ argObj = { ...argObj };
88
+ argObj.rendererType = rendererType;
89
+ }
90
+ return props.callAction(argObj);
91
+ };
92
+ return {
93
+ componentIdx: effectiveIdx,
94
+ id: prefixForIds + id,
95
+ SVs: stateValues,
96
+ docId: props.docId,
97
+ activityId: props.activityId,
98
+ actions,
99
+ children,
100
+ sourceOfUpdate,
101
+ ignoreUpdate,
102
+ rendererName,
103
+ initializeChildren: () => {
104
+ },
105
+ callAction,
106
+ doenetViewerUrl: props.doenetViewerUrl,
107
+ fetchExternalDoenetML: props.fetchExternalDoenetML,
108
+ requestScrollTo: props.requestScrollTo,
109
+ flags: props.flags
110
+ };
111
+ }
112
+ export {
113
+ useDoenetRenderer as u
114
+ };
@@ -1,5 +1,5 @@
1
- import { k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
2
- import { F as FontAwesomeIcon } from "./index.es-cV104-N8.js";
1
+ import { k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
+ import { F as FontAwesomeIcon } from "./index.es-CxbMbZHV.js";
3
3
  import { d as faSpinner, e as faLevelDownAlt, g as faCheck, h as faTimes, i as faCloud } from "./index-BDlitCgu.js";
4
4
  import React__default, { useCallback } from "react";
5
5
  function calculateValidationState(SVs) {
@@ -7,9 +7,25 @@ import { RefObject } from 'react';
7
7
  * If `skipRecording` is false, then don't do anything.
8
8
  */
9
9
  export declare function useRecordVisibilityChanges(ref: RefObject<HTMLElement | null>, callAction: (argObj: Record<string, any>) => void, actions: any, skipRecording?: boolean): void;
10
+ /**
11
+ * Interpret an IntersectionObserver entry from `useIsOnPage`'s observer as
12
+ * "the element is on the page".
13
+ *
14
+ * Usually that is just `entry.isIntersecting`, but a zero-area target needs
15
+ * care: branded Chrome 149 (inside a same-origin iframe, e.g. a PreTeXt book)
16
+ * can report a zero-area target as non-intersecting even with the huge
17
+ * `rootMargin`. Taking that at face value deadlocks the viewer — `DocViewer`
18
+ * renders nothing while hidden, so the observed wrapper has zero height, gets
19
+ * reported off-page, and stays hidden forever. A zero-area element that still
20
+ * generates a layout box cannot meaningfully be off the page, so count it as
21
+ * on-page; `display: none` — the hidden state this hook exists to detect —
22
+ * generates no boxes at all and so still reports false.
23
+ */
24
+ export declare function isEntryOnPage(entry: IntersectionObserverEntry): boolean;
10
25
  /**
11
26
  * Returns true if the element referenced by `ref` is anywhere on the page
12
- * (more precisely, within 1000000px of the browser's viewport).
27
+ * (more precisely, within 1000000px of the browser's viewport), or if it is
28
+ * laid out but has zero area — see `isEntryOnPage` for why.
13
29
  *
14
30
  * Used to approximately detect if the element is not hidden.
15
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"visibility.d.ts","sourceRoot":"","sources":["../../src/utils/visibility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACtC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EAClC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,EACjD,OAAO,EAAE,GAAG,EACZ,aAAa,UAAQ,QAyBxB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,WAkB7D"}
1
+ {"version":3,"file":"visibility.d.ts","sourceRoot":"","sources":["../../src/utils/visibility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACtC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EAClC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,EACjD,OAAO,EAAE,GAAG,EACZ,aAAa,UAAQ,QAyBxB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAOvE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,WAkB7D"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=visibility.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visibility.test.d.ts","sourceRoot":"","sources":["../../src/utils/visibility.test.ts"],"names":[],"mappings":""}
@@ -1,9 +1,9 @@
1
- import { l as DocContext, k as jsxRuntimeExports, t as textRendererStyle, n as DynamicMath } from "./doenetml-DBnC263_.js";
1
+ import { l as DocContext, k as jsxRuntimeExports, t as textRendererStyle, n as DynamicMath } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useContext, useRef } from "react";
3
- import { j as jxg, s as syncLayer, g as syncVisPropValues, e as syncLineStrokeStyle, a as syncWithLabelToggle, f as syncLabelStrokeColor, b as syncLabelMaskCssStyle, i as applyLineFamilyLabelPlacement, k as buildLineFamilyLabelAttributes, d as attachLabelHoverHighlight, c as computeLabelMaskCssStyle, l as stabilizeInitialLineFamilyLabelPlacement, r as removeJXGEventHandlers } from "./JSXGraphRenderer-BZetOZGA.js";
4
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
5
- import { BoardContext, VERTEX_LAYER_OFFSET, LINE_LAYER_OFFSET } from "./graph-DqRzGSX5.js";
6
- import { ChoiceInputInlineContext } from "./choiceInput-oluRcxaK.js";
3
+ import { j as jxg, s as syncLayer, g as syncVisPropValues, e as syncLineStrokeStyle, a as syncWithLabelToggle, f as syncLabelStrokeColor, b as syncLabelMaskCssStyle, i as applyLineFamilyLabelPlacement, k as buildLineFamilyLabelAttributes, d as attachLabelHoverHighlight, c as computeLabelMaskCssStyle, l as stabilizeInitialLineFamilyLabelPlacement, r as removeJXGEventHandlers } from "./JSXGraphRenderer-BcR36ozd.js";
4
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
5
+ import { BoardContext, VERTEX_LAYER_OFFSET, LINE_LAYER_OFFSET } from "./graph-uNmxqd5I.js";
6
+ import { ChoiceInputInlineContext } from "./choiceInput-QYG5RDnq.js";
7
7
  import { a as buildLineLikeAttributes } from "./buildGraphicalAttributes-C7PtyKL7.js";
8
8
  import { u as usePointerDragState, a as useBoardPointerTracking } from "./useBoardPointerTracking-DV6a8Wvg.js";
9
9
  import { p as pointerEventToUserCoords } from "./dragThreshold-DuSSFrIU.js";
@@ -1,10 +1,10 @@
1
- import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-DBnC263_.js";
1
+ import { u as useRecordVisibilityChanges, k as jsxRuntimeExports } from "./doenetml-drNYjJiF.js";
2
2
  import React__default, { useState, useEffect, useRef } from "react";
3
- import { u as useDoenetRenderer } from "./useDoenetRenderer-B4NpAX2T.js";
3
+ import { u as useDoenetRenderer } from "./useDoenetRenderer-CDZbHBy-.js";
4
4
  import { s as sizeToCSS } from "./css-BJLDLYRJ.js";
5
- import { D as DescriptionPopover, a as DescriptionAsDetails } from "./Description-dGZQDql9.js";
5
+ import { D as DescriptionPopover, a as DescriptionAsDetails } from "./Description-CRODvMC1.js";
6
6
  import { g as getNonInlineMediaLayoutStyles } from "./nonInlineMediaLayout-CkXHaqzo.js";
7
- import { N as NonInlineMediaWrapper } from "./NonInlineMediaWrapper-DUTDW2CP.js";
7
+ import { N as NonInlineMediaWrapper } from "./NonInlineMediaWrapper-D4iFcIdJ.js";
8
8
  const YT_API_SRC = "https://www.youtube.com/iframe_api";
9
9
  const listeners = /* @__PURE__ */ new Set();
10
10
  let installed = false;