@pie-element/select-text 13.1.2-next.0 → 13.1.2-next.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/dist/author/design.d.ts +2 -2
  2. package/dist/author/design.js +78 -79
  3. package/dist/author/index.js +2 -2
  4. package/dist/browser/{Check-CXevxzJJ.js → Check-DfUn7PkH.js} +2708 -3429
  5. package/dist/browser/Check-DfUn7PkH.js.map +1 -0
  6. package/dist/browser/author/index.js +24219 -21826
  7. package/dist/browser/author/index.js.map +1 -1
  8. package/dist/browser/controller/index.js +12 -13
  9. package/dist/browser/controller/index.js.map +1 -1
  10. package/dist/browser/delivery/index.js +3 -3
  11. package/dist/browser/delivery/index.js.map +1 -1
  12. package/dist/browser/{_getTag-x1UozeM0.js → dist-BamN0-DG.js} +102 -160
  13. package/dist/browser/dist-BamN0-DG.js.map +1 -0
  14. package/dist/browser/{main-4aycOoI5.js → main-B3z36nHt.js} +1030 -1022
  15. package/dist/browser/main-B3z36nHt.js.map +1 -0
  16. package/dist/browser/print/index.js +7 -8
  17. package/dist/browser/print/index.js.map +1 -1
  18. package/dist/controller/index.js +19 -19
  19. package/dist/delivery/index.js +1 -1
  20. package/dist/delivery/main.d.ts +2 -0
  21. package/dist/delivery/main.js +58 -49
  22. package/dist/index.iife.js +40 -40
  23. package/dist/print/index.js +9 -9
  24. package/dist/runtime-support.d.ts +12 -0
  25. package/dist/runtime-support.js +12 -0
  26. package/module/print.js +20113 -0
  27. package/module/print.js.map +1 -0
  28. package/package.json +28 -12
  29. package/print.js +2 -0
  30. package/dist/browser/Check-CXevxzJJ.js.map +0 -1
  31. package/dist/browser/_getTag-x1UozeM0.js.map +0 -1
  32. package/dist/browser/debounce-CUpLfqAu.js +0 -86
  33. package/dist/browser/debounce-CUpLfqAu.js.map +0 -1
  34. package/dist/browser/isEmpty-Bsms1e2W.js +0 -16
  35. package/dist/browser/isEmpty-Bsms1e2W.js.map +0 -1
  36. package/dist/browser/main-4aycOoI5.js.map +0 -1
  37. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_DataView.js +0 -6
  38. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Hash.js +0 -16
  39. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_ListCache.js +0 -16
  40. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Map.js +0 -6
  41. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_MapCache.js +0 -16
  42. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Promise.js +0 -6
  43. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Set.js +0 -6
  44. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Stack.js +0 -14
  45. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Symbol.js +0 -5
  46. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Uint8Array.js +0 -5
  47. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_WeakMap.js +0 -6
  48. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayEach.js +0 -7
  49. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayFilter.js +0 -10
  50. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayLikeKeys.js +0 -15
  51. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayPush.js +0 -7
  52. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assignValue.js +0 -10
  53. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assocIndexOf.js +0 -8
  54. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssign.js +0 -8
  55. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignIn.js +0 -8
  56. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignValue.js +0 -12
  57. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseClone.js +0 -57
  58. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseCreate.js +0 -14
  59. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetAllKeys.js +0 -9
  60. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetTag.js +0 -10
  61. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsArguments.js +0 -9
  62. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsMap.js +0 -9
  63. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsNative.js +0 -11
  64. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsSet.js +0 -9
  65. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsTypedArray.js +0 -11
  66. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeys.js +0 -12
  67. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeysIn.js +0 -13
  68. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseTimes.js +0 -7
  69. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseTrim.js +0 -8
  70. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseUnary.js +0 -8
  71. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneArrayBuffer.js +0 -8
  72. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneBuffer.js +0 -10
  73. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneDataView.js +0 -8
  74. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneRegExp.js +0 -8
  75. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneSymbol.js +0 -8
  76. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneTypedArray.js +0 -8
  77. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyArray.js +0 -8
  78. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyObject.js +0 -14
  79. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbols.js +0 -8
  80. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbolsIn.js +0 -8
  81. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_coreJsData.js +0 -5
  82. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_defineProperty.js +0 -10
  83. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_freeGlobal.js +0 -4
  84. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeys.js +0 -9
  85. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeysIn.js +0 -9
  86. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getMapData.js +0 -8
  87. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getNative.js +0 -9
  88. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getPrototype.js +0 -5
  89. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getRawTag.js +0 -14
  90. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbols.js +0 -10
  91. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbolsIn.js +0 -11
  92. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getTag.js +0 -23
  93. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getValue.js +0 -6
  94. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashClear.js +0 -7
  95. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashDelete.js +0 -7
  96. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashGet.js +0 -13
  97. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashHas.js +0 -9
  98. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashSet.js +0 -9
  99. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneArray.js +0 -8
  100. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneByTag.js +0 -33
  101. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneObject.js +0 -9
  102. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIndex.js +0 -8
  103. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isKeyable.js +0 -7
  104. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isMasked.js +0 -11
  105. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isPrototype.js +0 -8
  106. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheClear.js +0 -6
  107. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheDelete.js +0 -9
  108. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheGet.js +0 -8
  109. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheHas.js +0 -7
  110. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheSet.js +0 -8
  111. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheClear.js +0 -13
  112. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheDelete.js +0 -8
  113. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheGet.js +0 -7
  114. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheHas.js +0 -7
  115. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheSet.js +0 -8
  116. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeCreate.js +0 -5
  117. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeys.js +0 -5
  118. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeysIn.js +0 -8
  119. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nodeUtil.js +0 -9
  120. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_objectToString.js +0 -7
  121. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overArg.js +0 -8
  122. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_root.js +0 -5
  123. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackClear.js +0 -7
  124. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackDelete.js +0 -7
  125. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackGet.js +0 -6
  126. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackHas.js +0 -6
  127. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackSet.js +0 -16
  128. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_toSource.js +0 -15
  129. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_trimmedEndIndex.js +0 -8
  130. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/cloneDeep.js +0 -8
  131. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/debounce.js +0 -50
  132. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/eq.js +0 -6
  133. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArguments.js +0 -10
  134. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArray.js +0 -4
  135. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLike.js +0 -8
  136. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isBuffer.js +0 -6
  137. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEmpty.js +0 -21
  138. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isFunction.js +0 -11
  139. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isLength.js +0 -7
  140. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isMap.js +0 -7
  141. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObject.js +0 -7
  142. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObjectLike.js +0 -6
  143. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isSet.js +0 -7
  144. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isSymbol.js +0 -9
  145. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isTypedArray.js +0 -7
  146. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keys.js +0 -9
  147. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keysIn.js +0 -9
  148. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/now.js +0 -7
  149. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubArray.js +0 -6
  150. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubFalse.js +0 -6
  151. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/toNumber.js +0 -19
@@ -1,23 +1,22 @@
1
- import { b as e, w as t } from "../_getTag-x1UozeM0.js";
2
- import { q as n } from "../Check-CXevxzJJ.js";
3
- import { t as r } from "../main-4aycOoI5.js";
4
- import { t as i } from "../debounce-CUpLfqAu.js";
1
+ import { b as e, c as t, g as n } from "../dist-BamN0-DG.js";
2
+ import { C as r } from "../Check-DfUn7PkH.js";
3
+ import { t as i } from "../main-B3z36nHt.js";
5
4
  import a from "react";
6
5
  import { createRoot as o } from "react-dom/client";
7
- var s = (0, (/* @__PURE__ */ t(e(), 1)).default)("pie-element:select-text:print"), c = (e, t) => {
6
+ var s = (0, (/* @__PURE__ */ e(n(), 1)).default)("pie-element:select-text:print"), c = (e, t) => {
8
7
  let n = t.role === "instructor";
9
8
  return e.prompt = e.promptEnabled === !1 ? void 0 : e.prompt, e.teacherInstructions = n && e.teacherInstructionsEnabled !== !1 ? e.teacherInstructions : void 0, e.rationale = n && e.rationaleEnabled !== !1 ? e.rationale : void 0, e.showTeacherInstructions = n, e.alwaysShowCorrect = n, e.mode = n ? "evaluate" : e.mode, e.disabled = !0, e.animationsDisabled = !0, e.highlightChoices = !0, e.feedback = void 0, e;
10
9
  }, l = class extends HTMLElement {
11
10
  constructor() {
12
- super(), this._options = null, this._model = null, this._session = {}, this._session.selectedTokens = [], this._root = null, this._rerender = i(() => {
11
+ super(), this._options = null, this._model = null, this._session = {}, this._session.selectedTokens = [], this._root = null, this._rerender = t(() => {
13
12
  if (this._model && this._session) {
14
- let e = c(this._model, this._options), t = this._options && a.createElement(r, {
13
+ let e = c(this._model, this._options), t = this._options && a.createElement(i, {
15
14
  model: e,
16
15
  session: { selectedTokens: [] },
17
16
  onSelectionChange: () => {}
18
17
  });
19
18
  this._root ||= o(this), this._root.render(t), queueMicrotask(() => {
20
- s("render complete - render math"), n(this);
19
+ s("render complete - render math"), r(this);
21
20
  });
22
21
  } else s("skip");
23
22
  }, 50, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/print/index.tsx"],"sourcesContent":["// @ts-nocheck\n/**\n * @synced-from pie-elements/packages/select-text/src/print.js\n * @auto-generated\n *\n * This file is automatically synced from pie-elements and converted to TypeScript.\n * Manual edits will be overwritten on next sync.\n * To make changes, edit the upstream JavaScript file and run sync again.\n */\n\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { debounce } from 'lodash-es';\nimport Main from '../delivery/main.js';\nimport { renderMath } from '@pie-element/shared-math-rendering-mathjax';\nimport debug from 'debug';\n\nconst log = debug('pie-element:select-text:print');\n\n/**\n * Live in same package as main element - so we can access some of the shared comps!\n *\n * - update pslb to build print if src/print.js is there\n * - update demo el\n * - get configure/controller building\n */\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n model.prompt = model.promptEnabled !== false ? model.prompt : undefined;\n model.teacherInstructions =\n instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;\n model.rationale = instr && model.rationaleEnabled !== false ? model.rationale : undefined;\n model.showTeacherInstructions = instr;\n model.alwaysShowCorrect = instr;\n model.mode = instr ? 'evaluate' : model.mode;\n\n model.disabled = true;\n model.animationsDisabled = true;\n model.highlightChoices = true;\n model.feedback = undefined;\n\n return model;\n};\n\nexport default class SelectTextPrint extends HTMLElement {\n constructor() {\n super();\n this._options = null;\n this._model = null;\n this._session = {};\n this._session.selectedTokens = [];\n this._root = null;\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n const printModel = preparePrintModel(this._model, this._options);\n\n const element =\n this._options &&\n React.createElement(Main, {\n model: printModel,\n session: { selectedTokens: [] },\n onSelectionChange: () => {},\n });\n\n if (!this._root) {\n this._root = createRoot(this);\n }\n this._root.render(element);\n queueMicrotask(() => {\n log('render complete - render math');\n renderMath(this);\n });\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true },\n );\n }\n set options(o) {\n this._options = o;\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n }\n\n connectedCallback() {}\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n }\n }\n}\n"],"mappings":";;;;;;AAiBA,IAAM,KAAA,IAAA,wBAAA,GAAA,SAAY,+BAA+B,GAU3C,KAAqB,GAAO,MAAS;CACzC,IAAM,IAAQ,EAAK,SAAS;CAe5B,OAbA,EAAM,SAAS,EAAM,kBAAkB,KAAuB,KAAA,IAAf,EAAM,QACrD,EAAM,sBACJ,KAAS,EAAM,+BAA+B,KAAQ,EAAM,sBAAsB,KAAA,GACpF,EAAM,YAAY,KAAS,EAAM,qBAAqB,KAAQ,EAAM,YAAY,KAAA,GAChF,EAAM,0BAA0B,GAChC,EAAM,oBAAoB,GAC1B,EAAM,OAAO,IAAQ,aAAa,EAAM,MAExC,EAAM,WAAW,IACjB,EAAM,qBAAqB,IAC3B,EAAM,mBAAmB,IACzB,EAAM,WAAW,KAAA,GAEV;AACT,GAEqB,IAArB,cAA6C,YAAY;CACvD,cAAc;EAOZ,AANA,MAAM,GACN,KAAK,WAAW,MAChB,KAAK,SAAS,MACd,KAAK,WAAW,CAAC,GACjB,KAAK,SAAS,iBAAiB,CAAC,GAChC,KAAK,QAAQ,MACb,KAAK,YAAY,QACT;GACJ,IAAI,KAAK,UAAU,KAAK,UAAU;IAChC,IAAM,IAAa,EAAkB,KAAK,QAAQ,KAAK,QAAQ,GAEzD,IACJ,KAAK,YACL,EAAM,cAAc,GAAM;KACxB,OAAO;KACP,SAAS,EAAE,gBAAgB,CAAC,EAAE;KAC9B,yBAAyB,CAAC;IAC5B,CAAC;IAMH,AAJA,AACE,KAAK,UAAQ,EAAW,IAAI,GAE9B,KAAK,MAAM,OAAO,CAAO,GACzB,qBAAqB;KAEnB,AADA,EAAI,+BAA+B,GACnC,EAAW,IAAI;IACjB,CAAC;GACH,OACE,EAAI,MAAM;EAEd,GACA,IACA;GAAE,SAAS;GAAO,UAAU;EAAK,CACnC;CACF;CACA,IAAI,QAAQ,GAAG;EACb,KAAK,WAAW;CAClB;CAEA,IAAI,MAAM,GAAG;EAEX,AADA,KAAK,SAAS,GACd,KAAK,UAAU;CACjB;CAEA,oBAAoB,CAAC;CAErB,uBAAuB;EACrB,AAAI,KAAK,SACP,KAAK,MAAM,QAAQ;CAEvB;AACF"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/print/index.tsx"],"sourcesContent":["// @ts-nocheck\n/**\n * @synced-from pie-elements/packages/select-text/src/print.js\n * @auto-generated\n *\n * This file is automatically synced from pie-elements and converted to TypeScript.\n * Manual edits will be overwritten on next sync.\n * To make changes, edit the upstream JavaScript file and run sync again.\n */\n\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { debounce } from '@pie-element/shared-lodash';\nimport Main from '../delivery/main.js';\nimport { renderMath } from '@pie-element/shared-math-rendering-mathjax';\nimport debug from 'debug';\n\nconst log = debug('pie-element:select-text:print');\n\n/**\n * Live in same package as main element - so we can access some of the shared comps!\n *\n * - update pslb to build print if src/print.js is there\n * - update demo el\n * - get configure/controller building\n */\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n model.prompt = model.promptEnabled !== false ? model.prompt : undefined;\n model.teacherInstructions =\n instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;\n model.rationale = instr && model.rationaleEnabled !== false ? model.rationale : undefined;\n model.showTeacherInstructions = instr;\n model.alwaysShowCorrect = instr;\n model.mode = instr ? 'evaluate' : model.mode;\n\n model.disabled = true;\n model.animationsDisabled = true;\n model.highlightChoices = true;\n model.feedback = undefined;\n\n return model;\n};\n\nexport default class SelectTextPrint extends HTMLElement {\n constructor() {\n super();\n this._options = null;\n this._model = null;\n this._session = {};\n this._session.selectedTokens = [];\n this._root = null;\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n const printModel = preparePrintModel(this._model, this._options);\n\n const element =\n this._options &&\n React.createElement(Main, {\n model: printModel,\n session: { selectedTokens: [] },\n onSelectionChange: () => {},\n });\n\n if (!this._root) {\n this._root = createRoot(this);\n }\n this._root.render(element);\n queueMicrotask(() => {\n log('render complete - render math');\n renderMath(this);\n });\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true },\n );\n }\n set options(o) {\n this._options = o;\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n }\n\n connectedCallback() {}\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n }\n }\n}\n"],"mappings":";;;;;AAiBA,IAAM,KAAA,IAAA,wBAAA,EAAA,CAAA,QAAA,CAAY,+BAA+B,GAU3C,KAAqB,GAAO,MAAS;CACzC,IAAM,IAAQ,EAAK,SAAS;CAe5B,OAbA,EAAM,SAAS,EAAM,kBAAkB,KAAuB,KAAA,IAAf,EAAM,QACrD,EAAM,sBACJ,KAAS,EAAM,+BAA+B,KAAQ,EAAM,sBAAsB,KAAA,GACpF,EAAM,YAAY,KAAS,EAAM,qBAAqB,KAAQ,EAAM,YAAY,KAAA,GAChF,EAAM,0BAA0B,GAChC,EAAM,oBAAoB,GAC1B,EAAM,OAAO,IAAQ,aAAa,EAAM,MAExC,EAAM,WAAW,IACjB,EAAM,qBAAqB,IAC3B,EAAM,mBAAmB,IACzB,EAAM,WAAW,KAAA,GAEV;AACT,GAEqB,IAArB,cAA6C,YAAY;CACvD,cAAc;EAOZ,AANA,MAAM,GACN,KAAK,WAAW,MAChB,KAAK,SAAS,MACd,KAAK,WAAW,CAAC,GACjB,KAAK,SAAS,iBAAiB,CAAC,GAChC,KAAK,QAAQ,MACb,KAAK,YAAY,QACT;GACJ,IAAI,KAAK,UAAU,KAAK,UAAU;IAChC,IAAM,IAAa,EAAkB,KAAK,QAAQ,KAAK,QAAQ,GAEzD,IACJ,KAAK,YACL,EAAM,cAAc,GAAM;KACxB,OAAO;KACP,SAAS,EAAE,gBAAgB,CAAC,EAAE;KAC9B,yBAAyB,CAAC;IAC5B,CAAC;IAMH,AAJA,AACE,KAAK,UAAQ,EAAW,IAAI,GAE9B,KAAK,MAAM,OAAO,CAAO,GACzB,qBAAqB;KAEnB,AADA,EAAI,+BAA+B,GACnC,EAAW,IAAI;IACjB,CAAC;GACH,OACE,EAAI,MAAM;EAEd,GACA,IACA;GAAE,SAAS;GAAO,UAAU;EAAK,CACnC;CACF;CACA,IAAI,QAAQ,GAAG;EACb,KAAK,WAAW;CAClB;CAEA,IAAI,MAAM,GAAG;EAEX,AADA,KAAK,SAAS,GACd,KAAK,UAAU;CACjB;CAEA,oBAAoB,CAAC;CAErB,uBAAuB;EACrB,AAAI,KAAK,SACP,KAAK,MAAM,QAAQ;CAEvB;AACF"}
@@ -1,10 +1,10 @@
1
- import e from "../node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEmpty.js";
2
- import t from "./defaults.js";
3
- import n from "debug";
1
+ import e from "./defaults.js";
2
+ import t from "debug";
3
+ import { isEmpty as n } from "@pie-element/shared-lodash";
4
4
  import { getFeedbackForCorrectness as r } from "@pie-element/shared-feedback";
5
5
  import { partialScoring as i } from "@pie-element/shared-controller-utils";
6
6
  //#region src/controller/index.ts
7
- var a = n("@pie-element:select-text:controller"), o = (e = {}, t = {}) => e?.start === t?.start && e?.end === t?.end || e?.start === t?.oldStart && e?.end === t?.oldEnd, s = (e = [], t = [], n = !1) => (e || []).map((e) => {
7
+ var a = t("@pie-element:select-text:controller"), o = (e = {}, t = {}) => e?.start === t?.start && e?.end === t?.end || e?.start === t?.oldStart && e?.end === t?.oldEnd, s = (e = [], t = [], n = !1) => (e || []).map((e) => {
8
8
  let r = !!e.correct, i = r && !(t || []).find((t) => o(e, t));
9
9
  return {
10
10
  ...e,
@@ -20,9 +20,9 @@ var a = n("@pie-element:select-text:controller"), o = (e = {}, t = {}) => e?.sta
20
20
  if (r.length > 0) return "partially-correct";
21
21
  }
22
22
  return r.length > 0 ? "partially-correct" : "incorrect";
23
- }, l = (e, t) => (t || []).filter((t) => e.findIndex((e) => e.correct && o(e, t)) !== -1), u = (t, n, r) => {
24
- if (!n || e(n)) return 0;
25
- let i = l(t.tokens, n.selectedTokens).length, a = (t.tokens || []).filter((e) => e.correct === !0), o = i - (n.selectedTokens && n.selectedTokens.length > a.length ? n.selectedTokens && n.selectedTokens.length - i : 0), s = o < 0 ? 0 : o;
23
+ }, l = (e, t) => (t || []).filter((t) => e.findIndex((e) => e.correct && o(e, t)) !== -1), u = (e, t, r) => {
24
+ if (!t || n(t)) return 0;
25
+ let i = l(e.tokens, t.selectedTokens).length, a = (e.tokens || []).filter((e) => e.correct === !0), o = i - (t.selectedTokens && t.selectedTokens.length > a.length ? t.selectedTokens && t.selectedTokens.length - i : 0), s = o < 0 ? 0 : o;
26
26
  return r.length ? parseFloat((s / r.length).toFixed(2)) : 0;
27
27
  }, d = (e, t, n) => {
28
28
  let r = [], a = t?.selectedTokens || [], s = e?.tokens || [];
@@ -39,38 +39,38 @@ var a = n("@pie-element:select-text:controller"), o = (e = {}, t = {}) => e?.sta
39
39
  p ? (r.push("Score calculated using partial scoring."), r.push("Score is based on the number of correct minus incorrect selections, divided by the total number of correct tokens."), f > 0 && a.length > c && r.push("Extra selected tokens beyond the correct set reduce the score.")) : (r.push("Score calculated using all-or-nothing scoring."), r.push("Student must select all correct tokens and no incorrect tokens to receive full credit."));
40
40
  let m = u(e, t, s.filter((e) => e.correct)), h = p ? m : +(m === 1);
41
41
  return r.push(`Final score: ${h}.`), r;
42
- }, f = (t, n, r) => new Promise((a) => {
43
- if ((!n || e(n)) && a({
42
+ }, f = (e, t, r) => new Promise((a) => {
43
+ if ((!t || n(t)) && a({
44
44
  score: 0,
45
45
  empty: !0,
46
46
  logTrace: ["Student did not select any token."]
47
- }), n = m(n), r.mode !== "evaluate") a({
47
+ }), t = m(t), r.mode !== "evaluate") a({
48
48
  score: void 0,
49
49
  completed: void 0,
50
50
  logTrace: []
51
51
  });
52
52
  else {
53
- let e = i.enabled(t, r, !0), o = t.tokens.filter((e) => e.correct), s = u(t, n, o);
53
+ let n = i.enabled(e, r, !0), o = e.tokens.filter((e) => e.correct), s = u(e, t, o);
54
54
  a({
55
- score: e ? s : +(s === 1),
56
- logTrace: d(t, n, r)
55
+ score: n ? s : +(s === 1),
56
+ logTrace: d(e, t, r)
57
57
  });
58
58
  }
59
59
  });
60
- function p(e = {}) {
60
+ function p(t = {}) {
61
61
  return new Promise((n) => {
62
62
  n({
63
- ...t,
64
- ...e
63
+ ...e,
64
+ ...t
65
65
  });
66
66
  });
67
67
  }
68
68
  var m = (e) => ({
69
69
  selectedTokens: [],
70
70
  ...e
71
- }), h = (e) => ({
72
- ...t,
73
- ...e
71
+ }), h = (t) => ({
72
+ ...e,
73
+ ...t
74
74
  }), g = (e, t, n) => {
75
75
  t ||= { selectedToken: [] }, t.selectedTokens = t.selectedTokens || [];
76
76
  let i = h(e);
@@ -53,7 +53,7 @@ var s = class extends HTMLElement {
53
53
  }
54
54
  }
55
55
  disconnectedCallback() {
56
- this._root && this._root.unmount();
56
+ this._root &&= (this._root.unmount(), null);
57
57
  }
58
58
  };
59
59
  //#endregion
@@ -17,6 +17,8 @@ export declare class Main extends React.Component {
17
17
  static defaultProps: {};
18
18
  constructor(props: any);
19
19
  UNSAFE_componentWillReceiveProps(nextProps: any): void;
20
+ componentDidMount(): void;
21
+ componentDidUpdate(): void;
20
22
  toggleShowCorrect: any;
21
23
  correctAnswer: any;
22
24
  render(): React.JSX.Element;
@@ -1,36 +1,38 @@
1
1
  import e from "./utils.js";
2
2
  import t from "react";
3
- import n from "prop-types";
4
- import { Legend as r, TextSelect as i } from "@pie-lib/text-select";
5
- import a from "@pie-lib/correct-answer-toggle";
6
- import * as o from "@pie-lib/render-ui";
7
- import { Collapsible as s, Feedback as c, PreviewPrompt as l, UiLayout as u, color as d, hasMedia as f, hasText as p } from "@pie-lib/render-ui";
8
- import { jsx as m, jsxs as h } from "react/jsx-runtime";
9
- import { styled as g } from "@mui/material/styles";
10
- import _ from "debug";
3
+ import n from "react-dom";
4
+ import r from "prop-types";
5
+ import { Legend as i, TextSelect as a } from "@pie-lib/text-select";
6
+ import o from "@pie-lib/correct-answer-toggle";
7
+ import * as s from "@pie-lib/render-ui";
8
+ import { Collapsible as c, Feedback as l, PreviewPrompt as u, UiLayout as d, color as f, hasMedia as p, hasText as m } from "@pie-lib/render-ui";
9
+ import { jsx as h, jsxs as g } from "react/jsx-runtime";
10
+ import { renderMath as _ } from "@pie-element/shared-math-rendering-mathjax";
11
+ import { styled as v } from "@mui/material/styles";
12
+ import y from "debug";
11
13
  //#region src/delivery/main.tsx
12
- function v(e) {
14
+ function b(e) {
13
15
  return typeof e == "function" || typeof e == "object" && !!e && typeof e.$$typeof == "symbol";
14
16
  }
15
- function y(e, t) {
16
- return !e || v(e) ? e : v(e.default) ? e.default : t && v(e[t]) ? e[t] : t && v(e[t]?.default) ? e[t].default : e;
17
+ function x(e, t) {
18
+ return !e || b(e) ? e : b(e.default) ? e.default : t && b(e[t]) ? e[t] : t && b(e[t]?.default) ? e[t].default : e;
17
19
  }
18
- var b = y(u, "UiLayout") || y(E.UiLayout, "UiLayout"), x = y(l, "PreviewPrompt") || y(E.PreviewPrompt, "PreviewPrompt"), S = y(s, "Collapsible") || y(E.Collapsible, "Collapsible"), C = y(c, "Feedback") || y(E.Feedback, "Feedback"), w = o, T = w.default, E = T && typeof T == "object" ? T : w, D = _("@pie-ui:select-text"), O = g(b)({
19
- color: d.text(),
20
- backgroundColor: d.background()
21
- }), k = g(i)(({ theme: e }) => ({
20
+ var S = x(d, "UiLayout") || x(O.UiLayout, "UiLayout"), C = x(u, "PreviewPrompt") || x(O.PreviewPrompt, "PreviewPrompt"), w = x(c, "Collapsible") || x(O.Collapsible, "Collapsible"), T = x(l, "Feedback") || x(O.Feedback, "Feedback"), E = s, D = E.default, O = D && typeof D == "object" ? D : E, k = y("@pie-ui:select-text"), A = v(S)({
21
+ color: f.text(),
22
+ backgroundColor: f.background()
23
+ }), j = v(a)(({ theme: e }) => ({
22
24
  marginBottom: e.spacing(1),
23
25
  marginTop: e.spacing(2),
24
26
  whiteSpace: "normal"
25
- })), A = g("div")(({ theme: e }) => ({
27
+ })), M = v("div")(({ theme: e }) => ({
26
28
  verticalAlign: "middle",
27
29
  marginBottom: e.spacing(1)
28
- })), j = g(S)(({ theme: e }) => ({ marginBottom: e.spacing(2) })), M = {
29
- model: n.object,
30
- session: n.object,
31
- onSelectionChange: n.func.isRequired
32
- }, N = class extends t.Component {
33
- static propTypes = M;
30
+ })), N = v(w)(({ theme: e }) => ({ marginBottom: e.spacing(2) })), P = {
31
+ model: r.object,
32
+ session: r.object,
33
+ onSelectionChange: r.func.isRequired
34
+ }, F = class extends t.Component {
35
+ static propTypes = P;
34
36
  static defaultProps = {};
35
37
  constructor(t) {
36
38
  super(t), this.state = {
@@ -44,6 +46,12 @@ var b = y(u, "UiLayout") || y(E.UiLayout, "UiLayout"), x = y(l, "PreviewPrompt")
44
46
  model: e(t.model)
45
47
  });
46
48
  }
49
+ componentDidMount() {
50
+ _(n.findDOMNode(this));
51
+ }
52
+ componentDidUpdate() {
53
+ _(n.findDOMNode(this));
54
+ }
47
55
  toggleShowCorrect = () => {
48
56
  this.setState({ showCorrectAnswer: !this.state.showCorrectAnswer });
49
57
  };
@@ -52,56 +60,57 @@ var b = y(u, "UiLayout") || y(E.UiLayout, "UiLayout"), x = y(l, "PreviewPrompt")
52
60
  return e.tokens.filter((e) => e.correct);
53
61
  };
54
62
  render() {
55
- let { session: e, onSelectionChange: t } = this.props, { showCorrectAnswer: n, model: i } = this.state, { env: o, extraCSSRules: s } = i, { mode: c } = o || {}, l = n ? this.correctAnswer() : e.selectedTokens, u = i.rationale && (p(i.rationale) || f(i.rationale)), d = i.teacherInstructions && (p(i.teacherInstructions) || f(i.teacherInstructions));
56
- return D("[render] selectedTokens:", l), /* @__PURE__ */ h(O, {
63
+ let { session: e, onSelectionChange: t } = this.props, { showCorrectAnswer: n, model: r } = this.state, { env: a, extraCSSRules: s } = r, { mode: c } = a || {}, l = n ? this.correctAnswer() : e.selectedTokens, u = r.rationale && (m(r.rationale) || p(r.rationale)), d = r.teacherInstructions && (m(r.teacherInstructions) || p(r.teacherInstructions));
64
+ return k("[render] selectedTokens:", l), /* @__PURE__ */ g(A, {
57
65
  extraCSSRules: s,
58
66
  children: [
59
- d && (i.animationsDisabled ? /* @__PURE__ */ m(A, { children: /* @__PURE__ */ m(x, { prompt: i.teacherInstructions }) }) : /* @__PURE__ */ m(j, {
67
+ d && (r.animationsDisabled ? /* @__PURE__ */ h(M, { children: /* @__PURE__ */ h(C, { prompt: r.teacherInstructions }) }) : /* @__PURE__ */ h(N, {
60
68
  labels: {
61
69
  hidden: "Show Teacher Instructions",
62
70
  visible: "Hide Teacher Instructions"
63
71
  },
64
- children: /* @__PURE__ */ m(x, { prompt: i.teacherInstructions })
72
+ children: /* @__PURE__ */ h(C, { prompt: r.teacherInstructions })
65
73
  })),
66
- /* @__PURE__ */ m(A, { children: /* @__PURE__ */ m(x, { prompt: i.prompt }) }),
67
- !i.alwaysShowCorrect && /* @__PURE__ */ m(a, {
68
- show: i.disabled && i.incorrect,
74
+ /* @__PURE__ */ h(M, { children: /* @__PURE__ */ h(C, { prompt: r.prompt }) }),
75
+ !r.alwaysShowCorrect && /* @__PURE__ */ h(o, {
76
+ show: r.disabled && r.incorrect,
69
77
  toggled: n,
70
78
  onToggle: this.toggleShowCorrect,
71
- language: i.language
79
+ language: r.language
72
80
  }),
73
- /* @__PURE__ */ m(k, {
74
- disabled: i.disabled,
75
- text: i.text,
76
- tokens: i.tokens,
81
+ /* @__PURE__ */ h(j, {
82
+ disabled: r.disabled,
83
+ text: r.text,
84
+ tokens: r.tokens,
77
85
  selectedTokens: l,
78
86
  onChange: (e) => {
79
- t(e.map((e) => i.tokens.find(({ start: t, end: n }) => e.start === t && e.end === n) || e));
87
+ let n = e.map((e) => r.tokens.find(({ start: t, end: n }) => e.start === t && e.end === n) || e);
88
+ t(n);
80
89
  },
81
- highlightChoices: i.highlightChoices,
82
- maxNoOfSelections: i.maxSelections,
83
- animationsDisabled: i.animationsDisabled
90
+ highlightChoices: r.highlightChoices,
91
+ maxNoOfSelections: r.maxSelections,
92
+ animationsDisabled: r.animationsDisabled
84
93
  }),
85
- c === "evaluate" && /* @__PURE__ */ m(r, {
86
- language: i.language,
94
+ c === "evaluate" && /* @__PURE__ */ h(i, {
95
+ language: r.language,
87
96
  showOnlyCorrect: n
88
97
  }),
89
- u && (i.animationsDisabled ? /* @__PURE__ */ m(A, { children: /* @__PURE__ */ m(x, { prompt: i.rationale }) }) : /* @__PURE__ */ m(j, {
98
+ u && (r.animationsDisabled ? /* @__PURE__ */ h(M, { children: /* @__PURE__ */ h(C, { prompt: r.rationale }) }) : /* @__PURE__ */ h(N, {
90
99
  labels: {
91
100
  hidden: "Show Rationale",
92
101
  visible: "Hide Rationale"
93
102
  },
94
- children: /* @__PURE__ */ m(x, { prompt: i.rationale })
103
+ children: /* @__PURE__ */ h(C, { prompt: r.rationale })
95
104
  })),
96
- i.correctness && i.feedback && !n && /* @__PURE__ */ m(C, {
97
- correctness: i.correctness,
98
- feedback: i.feedback
105
+ r.correctness && r.feedback && !n && /* @__PURE__ */ h(T, {
106
+ correctness: r.correctness,
107
+ feedback: r.feedback
99
108
  })
100
109
  ]
101
110
  });
102
111
  }
103
- }, P = class extends t.Component {
104
- static propTypes = M;
112
+ }, I = class extends t.Component {
113
+ static propTypes = P;
105
114
  constructor(e) {
106
115
  super(e), this.state = {
107
116
  model: e.model,
@@ -125,7 +134,7 @@ var b = y(u, "UiLayout") || y(E.UiLayout, "UiLayout"), x = y(l, "PreviewPrompt")
125
134
  };
126
135
  render() {
127
136
  let { model: e, session: t } = this.state;
128
- return /* @__PURE__ */ m(N, {
137
+ return /* @__PURE__ */ h(F, {
129
138
  model: e,
130
139
  session: t,
131
140
  onSelectionChange: this.change
@@ -133,4 +142,4 @@ var b = y(u, "UiLayout") || y(E.UiLayout, "UiLayout"), x = y(l, "PreviewPrompt")
133
142
  }
134
143
  };
135
144
  //#endregion
136
- export { P as default };
145
+ export { F as Main, I as default };