@pie-element/placement-ordering 14.1.1 → 14.1.2-next.0

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 (306) hide show
  1. package/configure.js +2 -0
  2. package/controller.js +1 -0
  3. package/dist/author/choice-editor.d.ts +39 -0
  4. package/dist/author/choice-editor.js +157 -0
  5. package/dist/author/choice-tile.d.ts +40 -0
  6. package/dist/author/choice-tile.js +132 -0
  7. package/dist/author/defaults.d.ts +213 -0
  8. package/dist/author/defaults.js +159 -0
  9. package/dist/author/design.d.ts +21 -0
  10. package/dist/author/design.js +274 -0
  11. package/dist/author/help.d.ts +11 -0
  12. package/dist/author/index.d.ts +45 -0
  13. package/dist/author/index.js +85 -0
  14. package/dist/author/utils.d.ts +15 -0
  15. package/dist/author/utils.js +62 -0
  16. package/dist/browser/author/index.js +40986 -0
  17. package/dist/browser/author/index.js.map +1 -0
  18. package/dist/browser/browser-CvJkn_Ec.js +1019 -0
  19. package/dist/browser/browser-CvJkn_Ec.js.map +1 -0
  20. package/dist/browser/controller/index.js +319 -0
  21. package/dist/browser/controller/index.js.map +1 -0
  22. package/dist/browser/delivery/index.js +1032 -0
  23. package/dist/browser/delivery/index.js.map +1 -0
  24. package/dist/browser/dist-BTHiIs74.js +1610 -0
  25. package/dist/browser/dist-BTHiIs74.js.map +1 -0
  26. package/dist/browser/drag-provider-DaPxkh4j.js +10833 -0
  27. package/dist/browser/drag-provider-DaPxkh4j.js.map +1 -0
  28. package/dist/browser/last-D7N4Qfx4.js +9 -0
  29. package/dist/browser/last-D7N4Qfx4.js.map +1 -0
  30. package/dist/browser/placement-ordering.css +2 -0
  31. package/dist/controller/defaults.d.ts +31 -0
  32. package/dist/controller/defaults.js +25 -0
  33. package/dist/controller/index.d.ts +29 -0
  34. package/dist/controller/index.js +128 -0
  35. package/dist/controller/scoring.d.ts +27 -0
  36. package/dist/controller/scoring.js +32 -0
  37. package/dist/delivery/index.d.ts +26 -0
  38. package/dist/delivery/index.js +70 -0
  39. package/dist/delivery/main.d.ts +19 -0
  40. package/dist/delivery/main.js +22 -0
  41. package/dist/delivery/ordering.d.ts +18 -0
  42. package/dist/delivery/ordering.js +96 -0
  43. package/dist/delivery/placement-ordering.d.ts +28 -0
  44. package/dist/delivery/placement-ordering.js +215 -0
  45. package/dist/delivery/tile.d.ts +28 -0
  46. package/dist/delivery/tile.js +165 -0
  47. package/dist/delivery/tiler.d.ts +42 -0
  48. package/dist/delivery/tiler.js +89 -0
  49. package/dist/delivery/utils.d.ts +9 -0
  50. package/dist/delivery/utils.js +8 -0
  51. package/dist/index.d.ts +1 -0
  52. package/dist/index.iife.d.ts +8 -0
  53. package/dist/index.iife.js +152 -0
  54. package/dist/index.js +2 -0
  55. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_DataView.js +6 -0
  56. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Hash.js +16 -0
  57. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_ListCache.js +16 -0
  58. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Map.js +6 -0
  59. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_MapCache.js +16 -0
  60. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Promise.js +6 -0
  61. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Set.js +6 -0
  62. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_SetCache.js +11 -0
  63. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Stack.js +14 -0
  64. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Symbol.js +5 -0
  65. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Uint8Array.js +5 -0
  66. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_WeakMap.js +6 -0
  67. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_apply.js +12 -0
  68. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayEach.js +7 -0
  69. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayEvery.js +7 -0
  70. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayFilter.js +10 -0
  71. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayIncludes.js +7 -0
  72. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayIncludesWith.js +7 -0
  73. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayLikeKeys.js +15 -0
  74. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayMap.js +7 -0
  75. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayPush.js +7 -0
  76. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayReduce.js +8 -0
  77. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayShuffle.js +8 -0
  78. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arraySome.js +7 -0
  79. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assignValue.js +10 -0
  80. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assocIndexOf.js +8 -0
  81. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssign.js +8 -0
  82. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignIn.js +8 -0
  83. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignValue.js +12 -0
  84. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseClone.js +57 -0
  85. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseCreate.js +14 -0
  86. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseDifference.js +23 -0
  87. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseEach.js +6 -0
  88. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseEvery.js +10 -0
  89. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseFindIndex.js +7 -0
  90. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseFlatten.js +13 -0
  91. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseFor.js +5 -0
  92. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseForOwn.js +8 -0
  93. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGet.js +10 -0
  94. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetAllKeys.js +9 -0
  95. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetTag.js +10 -0
  96. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseHasIn.js +6 -0
  97. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIndexOf.js +9 -0
  98. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsArguments.js +9 -0
  99. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsEqual.js +8 -0
  100. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsEqualDeep.js +30 -0
  101. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsMap.js +9 -0
  102. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsMatch.js +26 -0
  103. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsNaN.js +6 -0
  104. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsNative.js +11 -0
  105. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsSet.js +9 -0
  106. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsTypedArray.js +11 -0
  107. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIteratee.js +11 -0
  108. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeys.js +12 -0
  109. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeysIn.js +13 -0
  110. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseMap.js +11 -0
  111. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseMatches.js +12 -0
  112. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseMatchesProperty.js +17 -0
  113. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseProperty.js +8 -0
  114. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_basePropertyDeep.js +9 -0
  115. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseRandom.js +7 -0
  116. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseReduce.js +8 -0
  117. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseRest.js +9 -0
  118. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseSetToString.js +14 -0
  119. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseShuffle.js +8 -0
  120. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseTimes.js +7 -0
  121. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseToString.js +15 -0
  122. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseUnary.js +8 -0
  123. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseUniq.js +27 -0
  124. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseValues.js +9 -0
  125. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cacheHas.js +6 -0
  126. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_castPath.js +10 -0
  127. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneArrayBuffer.js +8 -0
  128. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneBuffer.js +10 -0
  129. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneDataView.js +8 -0
  130. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneRegExp.js +8 -0
  131. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneSymbol.js +8 -0
  132. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneTypedArray.js +8 -0
  133. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyArray.js +8 -0
  134. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyObject.js +14 -0
  135. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbols.js +8 -0
  136. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copySymbolsIn.js +8 -0
  137. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_coreJsData.js +5 -0
  138. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_createAssigner.js +15 -0
  139. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_createBaseEach.js +12 -0
  140. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_createBaseFor.js +12 -0
  141. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_createSet.js +9 -0
  142. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_defineProperty.js +10 -0
  143. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_equalArrays.js +35 -0
  144. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_equalByTag.js +35 -0
  145. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_equalObjects.js +32 -0
  146. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_freeGlobal.js +4 -0
  147. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeys.js +9 -0
  148. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getAllKeysIn.js +9 -0
  149. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getMapData.js +8 -0
  150. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getMatchData.js +16 -0
  151. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getNative.js +9 -0
  152. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getPrototype.js +5 -0
  153. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getRawTag.js +14 -0
  154. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbols.js +10 -0
  155. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getSymbolsIn.js +11 -0
  156. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getTag.js +23 -0
  157. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getValue.js +6 -0
  158. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hasPath.js +18 -0
  159. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashClear.js +7 -0
  160. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashDelete.js +7 -0
  161. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashGet.js +13 -0
  162. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashHas.js +9 -0
  163. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashSet.js +9 -0
  164. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneArray.js +8 -0
  165. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneByTag.js +33 -0
  166. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneObject.js +9 -0
  167. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isFlattenable.js +10 -0
  168. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIndex.js +8 -0
  169. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIterateeCall.js +12 -0
  170. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isKey.js +11 -0
  171. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isKeyable.js +7 -0
  172. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isMasked.js +11 -0
  173. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isPrototype.js +8 -0
  174. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isStrictComparable.js +7 -0
  175. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheClear.js +6 -0
  176. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheDelete.js +9 -0
  177. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheGet.js +8 -0
  178. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheHas.js +7 -0
  179. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheSet.js +8 -0
  180. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheClear.js +13 -0
  181. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheDelete.js +8 -0
  182. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheGet.js +7 -0
  183. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheHas.js +7 -0
  184. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheSet.js +8 -0
  185. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapToArray.js +9 -0
  186. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_matchesStrictComparable.js +8 -0
  187. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_memoizeCapped.js +11 -0
  188. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeCreate.js +5 -0
  189. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeys.js +5 -0
  190. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeysIn.js +8 -0
  191. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nodeUtil.js +9 -0
  192. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_objectToString.js +7 -0
  193. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overArg.js +8 -0
  194. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overRest.js +13 -0
  195. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_root.js +5 -0
  196. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setCacheAdd.js +7 -0
  197. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setCacheHas.js +6 -0
  198. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setToArray.js +9 -0
  199. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setToString.js +6 -0
  200. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_shortOut.js +14 -0
  201. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_shuffleSelf.js +12 -0
  202. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackClear.js +7 -0
  203. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackDelete.js +7 -0
  204. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackGet.js +6 -0
  205. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackHas.js +6 -0
  206. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackSet.js +16 -0
  207. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_strictIndexOf.js +7 -0
  208. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stringToPath.js +10 -0
  209. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_toKey.js +10 -0
  210. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_toSource.js +15 -0
  211. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/assign.js +16 -0
  212. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/cloneDeep.js +8 -0
  213. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/compact.js +10 -0
  214. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/constant.js +8 -0
  215. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/defaults.js +16 -0
  216. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/difference.js +10 -0
  217. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/differenceWith.js +12 -0
  218. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/eq.js +6 -0
  219. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/every.js +12 -0
  220. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/get.js +8 -0
  221. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/hasIn.js +8 -0
  222. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/identity.js +6 -0
  223. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArguments.js +10 -0
  224. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArray.js +4 -0
  225. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLike.js +8 -0
  226. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLikeObject.js +8 -0
  227. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isBuffer.js +6 -0
  228. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEmpty.js +21 -0
  229. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isEqual.js +7 -0
  230. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isFunction.js +11 -0
  231. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isLength.js +7 -0
  232. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isMap.js +7 -0
  233. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObject.js +7 -0
  234. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObjectLike.js +6 -0
  235. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isSet.js +7 -0
  236. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isSymbol.js +9 -0
  237. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isTypedArray.js +7 -0
  238. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keys.js +9 -0
  239. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keysIn.js +9 -0
  240. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/last.js +7 -0
  241. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/map.js +10 -0
  242. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/memoize.js +16 -0
  243. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/noop.js +4 -0
  244. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/property.js +10 -0
  245. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/reduce.js +12 -0
  246. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/shuffle.js +9 -0
  247. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubArray.js +6 -0
  248. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubFalse.js +6 -0
  249. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/toString.js +7 -0
  250. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/uniq.js +7 -0
  251. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/uniqueId.js +9 -0
  252. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/values.js +8 -0
  253. package/package.json +81 -17
  254. package/CHANGELOG.json +0 -1312
  255. package/CHANGELOG.md +0 -2432
  256. package/LICENSE.md +0 -5
  257. package/README.md +0 -57
  258. package/configure/CHANGELOG.json +0 -952
  259. package/configure/CHANGELOG.md +0 -2127
  260. package/configure/lib/choice-editor.js +0 -252
  261. package/configure/lib/choice-editor.js.map +0 -1
  262. package/configure/lib/choice-tile.js +0 -205
  263. package/configure/lib/choice-tile.js.map +0 -1
  264. package/configure/lib/defaults.js +0 -211
  265. package/configure/lib/defaults.js.map +0 -1
  266. package/configure/lib/design.js +0 -427
  267. package/configure/lib/design.js.map +0 -1
  268. package/configure/lib/help.js +0 -14
  269. package/configure/lib/help.js.map +0 -1
  270. package/configure/lib/index.js +0 -155
  271. package/configure/lib/index.js.map +0 -1
  272. package/configure/lib/utils.js +0 -108
  273. package/configure/lib/utils.js.map +0 -1
  274. package/configure/package.json +0 -26
  275. package/controller/CHANGELOG.json +0 -517
  276. package/controller/CHANGELOG.md +0 -1518
  277. package/controller/lib/defaults.js +0 -29
  278. package/controller/lib/defaults.js.map +0 -1
  279. package/controller/lib/index.js +0 -285
  280. package/controller/lib/index.js.map +0 -1
  281. package/controller/lib/scoring.js +0 -109
  282. package/controller/lib/scoring.js.map +0 -1
  283. package/controller/package.json +0 -15
  284. package/docs/config-schema.json +0 -2964
  285. package/docs/config-schema.json.md +0 -2190
  286. package/docs/demo/config.js +0 -8
  287. package/docs/demo/generate.js +0 -50
  288. package/docs/demo/index.html +0 -1
  289. package/docs/demo/session.js +0 -7
  290. package/docs/pie-schema.json +0 -1613
  291. package/docs/pie-schema.json.md +0 -973
  292. package/icon.png +0 -0
  293. package/lib/index.js +0 -122
  294. package/lib/index.js.map +0 -1
  295. package/lib/main.js +0 -32
  296. package/lib/main.js.map +0 -1
  297. package/lib/ordering.js +0 -165
  298. package/lib/ordering.js.map +0 -1
  299. package/lib/placement-ordering.js +0 -419
  300. package/lib/placement-ordering.js.map +0 -1
  301. package/lib/tile.js +0 -259
  302. package/lib/tile.js.map +0 -1
  303. package/lib/tiler.js +0 -165
  304. package/lib/tiler.js.map +0 -1
  305. package/lib/utils.js +0 -18
  306. package/lib/utils.js.map +0 -1
@@ -0,0 +1,1032 @@
1
+ import { E as e, L as t, O as n, V as r, b as i, i as a, n as o, ot as s, r as c, t as l, z as u } from "../browser-CvJkn_Ec.js";
2
+ import { E as d, Gt as f, It as p, Kt as m, Lt as h, Nt as g, Pt as _, bt as v, c as y, ct as b, d as x, dt as ee, ft as S, ht as C, l as te, lt as w, n as T, pt as E, qt as ne, r as D, t as re, u as ie, ut as O, y as ae } from "../drag-provider-DaPxkh4j.js";
3
+ import { n as oe, r as se, t as ce } from "../dist-BTHiIs74.js";
4
+ import k, { createElement as le, useRef as ue } from "react";
5
+ import { createRoot as de } from "react-dom/client";
6
+ import fe from "react-dom";
7
+ import { jsx as A, jsxs as j } from "react/jsx-runtime";
8
+ //#region ../../../node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/assign.js
9
+ var pe = Object.prototype.hasOwnProperty, me = f(function(e, r) {
10
+ if (t(r) || u(r)) {
11
+ m(r, n(r), e);
12
+ return;
13
+ }
14
+ for (var i in r) pe.call(r, i) && ne(e, i, r[i]);
15
+ }), M = r(function(e, t) {
16
+ return a(e) ? se(e, i(t, 1, a, !0)) : [];
17
+ }), he = 0;
18
+ function ge(t) {
19
+ var n = ++he;
20
+ return e(t) + n;
21
+ }
22
+ //#endregion
23
+ //#region ../../shared/player-events/dist/index.js
24
+ var N = /* @__PURE__ */ s(l(), 1);
25
+ (class e extends CustomEvent {
26
+ static {
27
+ this.TYPE = "model-set";
28
+ }
29
+ constructor(t, n, r) {
30
+ super(e.TYPE, {
31
+ bubbles: !0,
32
+ composed: !0,
33
+ detail: {
34
+ complete: n,
35
+ component: t,
36
+ hasModel: r
37
+ }
38
+ }), this.component = t, this.complete = n;
39
+ }
40
+ });
41
+ var _e = class e extends CustomEvent {
42
+ static {
43
+ this.TYPE = "session-changed";
44
+ }
45
+ constructor(t, n) {
46
+ super(e.TYPE, {
47
+ bubbles: !0,
48
+ composed: !0,
49
+ detail: {
50
+ complete: n,
51
+ component: t
52
+ }
53
+ }), this.component = t, this.complete = n;
54
+ }
55
+ }, P = /* @__PURE__ */ s(g(), 1), F = ({ bgFill: e, fgFill: t }) => /* @__PURE__ */ j("svg", {
56
+ preserveAspectRatio: "xMinYMin meet",
57
+ version: "1.1",
58
+ viewBox: "-283 359 34 35",
59
+ style: { enableBackground: "new -283 359 34 35" },
60
+ children: [
61
+ /* @__PURE__ */ A("circle", {
62
+ cx: "-266",
63
+ cy: "375.9",
64
+ r: "14",
65
+ fill: e
66
+ }),
67
+ /* @__PURE__ */ A("path", {
68
+ d: "M-280.5,375.9c0-8,6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5s-6.5,14.5-14.5,14.5S-280.5,383.9-280.5,375.9z\n M-279.5,375.9c0,7.4,6.1,13.5,13.5,13.5c7.4,0,13.5-6.1,13.5-13.5s-6.1-13.5-13.5-13.5C-273.4,362.4-279.5,368.5-279.5,375.9z",
69
+ fill: e
70
+ }),
71
+ /* @__PURE__ */ A("polygon", {
72
+ points: "-265.4,383.1 -258.6,377.2 -261.2,374.2 -264.3,376.9 -268.9,368.7 -272.4,370.6",
73
+ fill: t
74
+ })
75
+ ]
76
+ });
77
+ F.propTypes = {
78
+ bgFill: P.default.string.isRequired,
79
+ fgFill: P.default.string.isRequired
80
+ };
81
+ var I = ({ bgFill: e, fgFill: t, borderFill: n }) => /* @__PURE__ */ j("svg", {
82
+ preserveAspectRatio: "xMinYMin meet",
83
+ version: "1.1",
84
+ viewBox: "-129.5 127 34 35",
85
+ style: { enableBackground: "new -129.5 127 34 35" },
86
+ children: [
87
+ /* @__PURE__ */ A("path", {
88
+ style: {
89
+ fill: "#D0CAC5",
90
+ stroke: "#E6E3E0",
91
+ strokeWidth: .75,
92
+ strokeMiterlimit: 10
93
+ },
94
+ d: "M-112.9,160.4c-8.5,0-15.5-6.9-15.5-15.5c0-8.5,6.9-15.5,15.5-15.5s15.5,6.9,15.5,15.5\n C-97.4,153.5-104.3,160.4-112.9,160.4z"
95
+ }),
96
+ /* @__PURE__ */ A("path", {
97
+ style: {
98
+ fill: "#B3ABA4",
99
+ stroke: "#CDC7C2",
100
+ strokeWidth: .5,
101
+ strokeMiterlimit: 10
102
+ },
103
+ d: "M-113.2,159c-8,0-14.5-6.5-14.5-14.5s6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5S-105.2,159-113.2,159z"
104
+ }),
105
+ /* @__PURE__ */ A("circle", {
106
+ cx: "-114.2",
107
+ cy: "143.5",
108
+ r: "14",
109
+ fill: e
110
+ }),
111
+ /* @__PURE__ */ A("path", {
112
+ d: "M-114.2,158c-8,0-14.5-6.5-14.5-14.5s6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5S-106.2,158-114.2,158z\n M-114.2,130c-7.4,0-13.5,6.1-13.5,13.5s6.1,13.5,13.5,13.5s13.5-6.1,13.5-13.5S-106.8,130-114.2,130z",
113
+ fill: n
114
+ }),
115
+ /* @__PURE__ */ A("polygon", {
116
+ points: "-114.8,150.7 -121.6,144.8 -119,141.8 -115.9,144.5 -111.3,136.3 -107.8,138.2",
117
+ fill: t
118
+ })
119
+ ]
120
+ });
121
+ I.propTypes = {
122
+ bgFill: P.default.string.isRequired,
123
+ fgFill: P.default.string.isRequired,
124
+ borderFill: P.default.string.isRequired
125
+ };
126
+ var ve = C("div")(({ size: e }) => ({
127
+ width: e || "25px",
128
+ height: e || "25px"
129
+ })), L = ({ open: e, size: t }) => /* @__PURE__ */ A(ve, {
130
+ size: t,
131
+ children: e ? /* @__PURE__ */ A(F, {
132
+ bgFill: "#bce2ff",
133
+ fgFill: "#1a9cff"
134
+ }) : /* @__PURE__ */ A(I, {
135
+ bgFill: "white",
136
+ fgFill: "#1a9cff",
137
+ borderFill: "#bce2ff"
138
+ })
139
+ });
140
+ L.propTypes = {
141
+ open: P.default.bool,
142
+ size: P.default.string
143
+ }, L.defaultProps = { open: !1 };
144
+ //#endregion
145
+ //#region ../../lib-react/correct-answer-toggle/dist/expander.js
146
+ var R = "height ease-in 300ms, opacity ease-in 300ms", ye = C("div")(() => ({
147
+ position: "relative",
148
+ height: 0,
149
+ overflow: "hidden",
150
+ display: "flex",
151
+ visibility: "hidden",
152
+ width: 0,
153
+ "&.enter": {
154
+ transition: R,
155
+ opacity: 1,
156
+ height: "auto",
157
+ width: "auto",
158
+ visibility: "visible",
159
+ minHeight: "25px"
160
+ },
161
+ "&.enter-done": {
162
+ height: "auto",
163
+ visibility: "visible",
164
+ width: "auto",
165
+ minHeight: "25px"
166
+ },
167
+ "&.exit": {
168
+ transition: R,
169
+ opacity: 0,
170
+ height: 0,
171
+ visibility: "visible",
172
+ width: 0
173
+ },
174
+ "&.exit-done": {
175
+ opacity: 0,
176
+ visibility: "hidden",
177
+ height: 0,
178
+ width: 0
179
+ }
180
+ })), z = (e) => {
181
+ let { show: t, children: n, className: r } = e, i = ue(null);
182
+ return /* @__PURE__ */ A(w, {
183
+ nodeRef: i,
184
+ in: t,
185
+ appear: !0,
186
+ mountOnEnter: !1,
187
+ timeout: 300,
188
+ classNames: {
189
+ enter: "enter",
190
+ enterDone: "enter-done",
191
+ exit: "exit",
192
+ exitDone: "exit-done"
193
+ },
194
+ children: /* @__PURE__ */ A(ye, {
195
+ ref: i,
196
+ className: r,
197
+ children: n
198
+ })
199
+ });
200
+ };
201
+ z.propTypes = {
202
+ show: P.default.bool.isRequired,
203
+ className: P.default.string,
204
+ children: P.default.oneOfType([P.default.arrayOf(P.default.node), P.default.node]).isRequired
205
+ };
206
+ //#endregion
207
+ //#region ../../lib-react/correct-answer-toggle/dist/index.js
208
+ function B(e) {
209
+ return typeof e == "function" || typeof e == "object" && !!e && typeof e.$$typeof == "symbol";
210
+ }
211
+ function be(e, t) {
212
+ 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;
213
+ }
214
+ var xe = be(ie, "Readable") || be(Ce.Readable, "Readable"), Se = D, V = Se.default, Ce = V && typeof V == "object" ? V : Se, { translator: H } = ce, we = {
215
+ WebkitTouchCallout: "none",
216
+ WebkitUserSelect: "none",
217
+ KhtmlUserSelect: "none",
218
+ MozUserSelect: "none",
219
+ msUserSelect: "none",
220
+ userSelect: "none"
221
+ }, Te = C("div")(() => ({
222
+ width: "100%",
223
+ cursor: "pointer"
224
+ })), Ee = C("div")(() => ({
225
+ margin: "0 auto",
226
+ textAlign: "center",
227
+ display: "flex"
228
+ })), De = C("div")(() => ({
229
+ width: "fit-content",
230
+ minWidth: "140px",
231
+ alignSelf: "center",
232
+ verticalAlign: "middle",
233
+ color: `var(--correct-answer-toggle-label-color, ${O.text()})`,
234
+ fontWeight: "normal",
235
+ ...we
236
+ })), Oe = C("div")(() => ({
237
+ position: "absolute",
238
+ width: "25px",
239
+ "&.enter": { opacity: "0" },
240
+ "&.enter-active": {
241
+ opacity: "1",
242
+ transition: "opacity 0.3s ease-in"
243
+ },
244
+ "&.exit": { opacity: "1" },
245
+ "&.exit-active": {
246
+ opacity: "0",
247
+ transition: "opacity 0.3s ease-in"
248
+ }
249
+ })), ke = C("div")(() => ({
250
+ width: "25px",
251
+ marginRight: "5px",
252
+ display: "flex",
253
+ alignItems: "center"
254
+ })), Ae = class e extends k.Component {
255
+ static propTypes = {
256
+ onToggle: P.default.func,
257
+ toggled: P.default.bool,
258
+ show: P.default.bool,
259
+ hideMessage: P.default.string,
260
+ showMessage: P.default.string,
261
+ className: P.default.string,
262
+ language: P.default.string
263
+ };
264
+ static defaultProps = {
265
+ showMessage: "Show correct answer",
266
+ hideMessage: "Hide correct answer",
267
+ show: !1,
268
+ toggled: !1
269
+ };
270
+ constructor(t) {
271
+ super(t), this.state = { show: t.show }, this.openIconRef = k.createRef(), this.closedIconRef = k.createRef(), e.defaultProps = {
272
+ ...e.defaultProps,
273
+ showMessage: H.t("common:showCorrectAnswer", { lng: t.language }),
274
+ hideMessage: H.t("common:hideCorrectAnswer", { lng: t.language })
275
+ };
276
+ }
277
+ onClick() {
278
+ this.props.onToggle(!this.props.toggled);
279
+ }
280
+ onTouch(e) {
281
+ e.preventDefault(), this.props.onToggle(!this.props.toggled);
282
+ }
283
+ UNSAFE_componentWillReceiveProps(t) {
284
+ this.setState({ show: t.show }), t.language !== this.props?.language && (e.defaultProps = {
285
+ ...e.defaultProps,
286
+ showMessage: H.t("common:showCorrectAnswer", { lng: t.language }),
287
+ hideMessage: H.t("common:hideCorrectAnswer", { lng: t.language })
288
+ });
289
+ }
290
+ render() {
291
+ let { className: e, toggled: t, hideMessage: n, showMessage: r } = this.props;
292
+ return /* @__PURE__ */ A(Te, {
293
+ className: e,
294
+ children: /* @__PURE__ */ A(z, {
295
+ show: this.state.show,
296
+ children: /* @__PURE__ */ j(Ee, {
297
+ onClick: this.onClick.bind(this),
298
+ onTouchEnd: this.onTouch.bind(this),
299
+ children: [/* @__PURE__ */ j(ke, { children: [/* @__PURE__ */ A(w, {
300
+ nodeRef: this.openIconRef,
301
+ timeout: 400,
302
+ in: t,
303
+ exit: !t,
304
+ classNames: {
305
+ enter: "enter",
306
+ enterActive: "enter-active",
307
+ exit: "exit",
308
+ exitActive: "exit-active"
309
+ },
310
+ children: /* @__PURE__ */ A(Oe, {
311
+ ref: this.openIconRef,
312
+ children: /* @__PURE__ */ A(L, { open: t }, "correct-open")
313
+ })
314
+ }), /* @__PURE__ */ A(w, {
315
+ nodeRef: this.closedIconRef,
316
+ timeout: 5e3,
317
+ in: !t,
318
+ exit: t,
319
+ classNames: {
320
+ enter: "enter",
321
+ enterActive: "enter-active",
322
+ exit: "exit",
323
+ exitActive: "exit-active"
324
+ },
325
+ children: /* @__PURE__ */ A(Oe, {
326
+ ref: this.closedIconRef,
327
+ children: /* @__PURE__ */ A(L, { open: t }, "correct-closed")
328
+ })
329
+ })] }), /* @__PURE__ */ A(xe, {
330
+ false: !0,
331
+ children: /* @__PURE__ */ A(De, {
332
+ "aria-hidden": !this.state.show,
333
+ children: t ? n : r
334
+ })
335
+ })]
336
+ })
337
+ })
338
+ });
339
+ }
340
+ }, je = /* @__PURE__ */ s(T(), 1), Me = C("div")(({ theme: e }) => ({
341
+ "&.placeholder": {
342
+ WebkitTouchCallout: "none",
343
+ WebkitUserSelect: "none",
344
+ KhtmlUserSelect: "none",
345
+ MozUserSelect: "none",
346
+ MsUserSelect: "none",
347
+ userSelect: "none",
348
+ width: "100%",
349
+ height: "100%",
350
+ background: O.white(),
351
+ transition: "background-color 200ms linear, border-color 200ms linear",
352
+ boxSizing: "border-box",
353
+ display: "grid",
354
+ gridRowGap: e.spacing(1),
355
+ gridColumnGap: e.spacing(1),
356
+ padding: e.spacing(1),
357
+ border: `2px dashed ${O.black()}`
358
+ },
359
+ "&.disabled": {
360
+ boxShadow: "none",
361
+ background: e.palette.background.paper
362
+ },
363
+ "&.over": {
364
+ border: `1px solid ${v[500]}`,
365
+ backgroundColor: `${v[300]}`
366
+ },
367
+ "&.board": {
368
+ padding: e.spacing(1),
369
+ display: "flex",
370
+ flexWrap: "wrap",
371
+ alignItems: "center",
372
+ minHeight: "100px",
373
+ justifyContent: "center",
374
+ overflow: "hidden",
375
+ touchAction: "none",
376
+ backgroundColor: O.backgroundDark()
377
+ },
378
+ "&.categorizeBoard": {
379
+ padding: e.spacing(.5),
380
+ display: "flex",
381
+ flexWrap: "wrap",
382
+ alignItems: "center",
383
+ minHeight: "100px",
384
+ justifyContent: "center",
385
+ overflow: "hidden",
386
+ touchAction: "none",
387
+ backgroundColor: O.backgroundDark()
388
+ },
389
+ "&.verticalPool": {
390
+ display: "flex",
391
+ flexFlow: "column wrap"
392
+ }
393
+ })), Ne = (e) => {
394
+ let { children: t, className: n, isOver: r, type: i, grid: a, disabled: o, choiceBoard: s, isCategorize: c, isVerticalPool: l, minHeight: u, extraStyles: d } = e, f = (0, je.default)("placeholder", o && "disabled", r && "over", i, n), p = {};
395
+ if (a && a.columns && (p.gridTemplateColumns = `repeat(${a.columns}, 1fr)`), a && a.rows) {
396
+ let e = a.rowsRepeatValue || "1fr";
397
+ p.gridTemplateRows = `repeat(${a.rows}, ${e})`;
398
+ }
399
+ i === "choice" && (p.border = `1px solid ${O.borderLight()}`, p.background = O.backgroundDark());
400
+ let m = c ? "categorizeBoard" : "board";
401
+ return /* @__PURE__ */ A(Me, {
402
+ style: {
403
+ ...p,
404
+ minHeight: u,
405
+ ...d
406
+ },
407
+ className: (0, je.default)(s ? m : f, l && "verticalPool"),
408
+ children: t
409
+ });
410
+ };
411
+ Ne.propTypes = {
412
+ choiceBoard: P.default.bool,
413
+ grid: P.default.shape({
414
+ columns: P.default.number,
415
+ rows: P.default.number,
416
+ rowsRepeatValue: P.default.string
417
+ }),
418
+ children: P.default.oneOfType([P.default.arrayOf(P.default.node), P.default.node]).isRequired,
419
+ className: P.default.string,
420
+ isOver: P.default.bool,
421
+ index: P.default.number,
422
+ type: P.default.string,
423
+ disabled: P.default.bool,
424
+ isCategorize: P.default.bool,
425
+ isVerticalPool: P.default.bool,
426
+ minHeight: P.default.number
427
+ };
428
+ //#endregion
429
+ //#region src/delivery/tile.tsx
430
+ var Pe = (0, N.default)("pie-elements:placement-ordering:tile"), Fe = C("div")(({ theme: e }) => ({
431
+ width: "100%",
432
+ fontSize: e.typography.fontSize + 4,
433
+ textAlign: "center",
434
+ color: `rgba(${e.palette.common.black}, 0.6)`
435
+ })), U = ({ type: e, index: t, isOver: n, disabled: r }) => /* @__PURE__ */ A(Ne, {
436
+ type: e,
437
+ isOver: n,
438
+ disabled: r,
439
+ children: e === "target" && t !== void 0 && /* @__PURE__ */ A(Fe, { children: t })
440
+ });
441
+ U.propTypes = {
442
+ type: P.default.string,
443
+ index: P.default.number,
444
+ isOver: P.default.bool,
445
+ disabled: P.default.bool
446
+ };
447
+ var Ie = C("div")(({ theme: e, isDragging: t, isOver: n, disabled: r, outcome: i, label: a, type: o }) => ({
448
+ cursor: r ? "not-allowed" : "grab",
449
+ width: "100%",
450
+ height: "100%",
451
+ padding: "10px",
452
+ boxSizing: "border-box",
453
+ overflow: "hidden",
454
+ border: o === "choice" || o === "target" ? `1px solid ${e.palette.grey[400]}` : "1px solid transparent",
455
+ backgroundColor: o === "choice" || o === "target" ? O.background() : "transparent",
456
+ transition: o === "choice" || o === "target" ? "background-color 150ms ease, border-color 150ms ease, opacity 150ms ease" : "none",
457
+ pointerEvents: "none",
458
+ userSelect: "none",
459
+ ...(o === "choice" || o === "target") && { "&:hover": {
460
+ backgroundColor: r ? O.background() : O.secondary(),
461
+ borderColor: r ? e.palette.grey[400] : e.palette.primary.main,
462
+ transform: r ? "none" : "scale(1.02)"
463
+ } },
464
+ ...(o === "choice" || o === "target") && n && !r && {
465
+ opacity: .4,
466
+ backgroundColor: O.primaryLight(),
467
+ borderColor: e.palette.primary.main,
468
+ borderStyle: "dashed",
469
+ transform: "scale(1.05)"
470
+ },
471
+ ...(o === "choice" || o === "target") && t && !r && {
472
+ opacity: .6,
473
+ backgroundColor: O.secondaryLight(),
474
+ transform: "scale(1.05) rotate(2deg)",
475
+ boxShadow: "0 8px 16px rgba(0,0,0,0.2)",
476
+ cursor: "grabbing"
477
+ },
478
+ ...(o === "choice" || o === "target") && r && {
479
+ cursor: "not-allowed",
480
+ "&:hover": {
481
+ backgroundColor: O.background(),
482
+ transform: "none"
483
+ }
484
+ },
485
+ ...(o === "choice" || o === "target") && i === "incorrect" && { border: `1px solid ${O.incorrect()}` },
486
+ ...(o === "choice" || o === "target") && i === "correct" && { border: `1px solid ${O.correct()}` },
487
+ ...!a && {
488
+ border: "none",
489
+ "&:hover": { backgroundColor: "unset" }
490
+ }
491
+ })), Le = (e) => {
492
+ let { type: t, isDragging: n, empty: r, isOver: i, label: a, disabled: o, outcome: s, guideIndex: c } = e;
493
+ return r ? /* @__PURE__ */ A(U, {
494
+ type: t,
495
+ index: c,
496
+ isOver: i,
497
+ disabled: o
498
+ }) : /* @__PURE__ */ A(Ie, {
499
+ type: t,
500
+ isDragging: n,
501
+ isOver: i,
502
+ disabled: o,
503
+ outcome: s,
504
+ label: a,
505
+ dangerouslySetInnerHTML: { __html: a }
506
+ });
507
+ }, W = (e) => {
508
+ let { label: t, type: n, id: r, empty: i, disabled: a, outcome: o, index: s, guideIndex: c, instanceId: l, draggable: u, tileIndex: d } = e, f = `tile-${n}-${r ?? "empty"}-${d}-${l}`, p = `drop-${n}-${r ?? "empty"}-${d}-${l}`, { attributes: m, listeners: h, setNodeRef: g, transform: _, isDragging: v } = S({
509
+ id: f,
510
+ data: {
511
+ id: r,
512
+ type: n,
513
+ instanceId: l,
514
+ value: t,
515
+ index: s
516
+ },
517
+ disabled: !u || a
518
+ }), { setNodeRef: y, isOver: b } = E({
519
+ id: p,
520
+ data: {
521
+ id: r,
522
+ type: n,
523
+ instanceId: l,
524
+ value: t,
525
+ index: s
526
+ },
527
+ disabled: v
528
+ }), x = k.useRef(null);
529
+ return k.useEffect(() => {
530
+ let e = x.current, t = (e) => {
531
+ e.preventDefault();
532
+ };
533
+ return e && e.addEventListener("touchstart", t, { passive: !1 }), () => {
534
+ e && e.removeEventListener("touchstart", t);
535
+ };
536
+ }, []), Pe("[render], props: ", e), /* @__PURE__ */ A("div", {
537
+ ref: (e) => {
538
+ x.current = e, g(e), y(e);
539
+ },
540
+ style: {
541
+ transform: _ ? `translate3d(${_.x}px, ${_.y}px, 0)` : void 0,
542
+ boxSizing: "border-box",
543
+ overflow: "visible",
544
+ padding: 0,
545
+ margin: 0,
546
+ textAlign: "center",
547
+ pointerEvents: "auto",
548
+ cursor: a ? "not-allowed" : v ? "grabbing" : "grab",
549
+ zIndex: v ? 1e3 : "auto",
550
+ willChange: v ? "transform" : "auto"
551
+ },
552
+ ...u && !a ? {
553
+ ...h,
554
+ ...m
555
+ } : {},
556
+ children: /* @__PURE__ */ A(Le, {
557
+ label: t,
558
+ id: r,
559
+ empty: i,
560
+ index: s,
561
+ guideIndex: c,
562
+ isOver: b,
563
+ isDragging: v,
564
+ disabled: a,
565
+ outcome: o,
566
+ type: n
567
+ })
568
+ });
569
+ };
570
+ W.propTypes = {
571
+ id: P.default.any,
572
+ label: P.default.string,
573
+ isOver: P.default.bool,
574
+ type: P.default.string,
575
+ empty: P.default.bool,
576
+ disabled: P.default.bool,
577
+ outcome: P.default.string,
578
+ index: P.default.number,
579
+ guideIndex: P.default.number,
580
+ instanceId: P.default.any,
581
+ draggable: P.default.bool,
582
+ tileIndex: P.default.number
583
+ };
584
+ //#endregion
585
+ //#region src/delivery/tiler.tsx
586
+ var G = {
587
+ choiceLabel: P.default.string,
588
+ targetLabel: P.default.string,
589
+ disabled: P.default.bool,
590
+ tiles: P.default.array.isRequired,
591
+ tileSize: P.default.string,
592
+ addGuide: P.default.bool
593
+ }, Re = {
594
+ tileSize: "1fr",
595
+ disabled: !1,
596
+ addGuide: !1
597
+ }, ze = (e) => {
598
+ let t = (t, n) => (t.instanceId = e.instanceId, t.disabled = e.disabled, t.guideIndex = e.addGuide ? t.index + 1 : void 0, t.tileIndex = n, e.includeTargets || t.type === "choice" ? /* @__PURE__ */ le(W, {
599
+ ...t,
600
+ key: n
601
+ }) : /* @__PURE__ */ le(W, {
602
+ ...t,
603
+ label: "",
604
+ key: n
605
+ }));
606
+ return t.propTypes = { ...G }, t;
607
+ }, Be = C("div")(({ theme: e, includeTargets: t }) => ({
608
+ display: "grid",
609
+ paddingBottom: e.spacing(2),
610
+ ...t && { gridGap: "10px" }
611
+ })), Ve = C("div")({ textAlign: "center" }), He = C("div")({
612
+ textAlign: "center",
613
+ gridRow: "3/4"
614
+ }), Ue = C("div")(({ includeTargets: e }) => ({
615
+ gridAutoFlow: "column",
616
+ display: "grid",
617
+ ...e && { gridGap: "10px" }
618
+ })), We = C("div")({
619
+ gridColumn: "1/2",
620
+ textAlign: "center"
621
+ }), Ge = C("div")({
622
+ gridColumn: "2/3",
623
+ textAlign: "center"
624
+ }), Ke = class extends k.Component {
625
+ static propTypes = { ...G };
626
+ static defaultProps = { ...Re };
627
+ render() {
628
+ let { includeTargets: e, choiceLabelEnabled: t, choiceLabel: n, targetLabel: r, tiles: i, tileSize: a } = this.props, o = e ? `auto ${a} auto ${a}` : `auto ${a} auto`, s = e ? i.length / 2 : i.length, c = {
629
+ gridTemplateColumns: e ? `repeat(${s}, ${a})` : `auto repeat(${Math.floor(s / 2) - 1}, ${a} 10px) ${a} auto`,
630
+ gridTemplateRows: o
631
+ }, l = { gridColumn: `1/${s + 1}` };
632
+ return /* @__PURE__ */ j(Be, {
633
+ includeTargets: e,
634
+ style: c,
635
+ children: [
636
+ /* @__PURE__ */ A(Ve, {
637
+ style: l,
638
+ dangerouslySetInnerHTML: { __html: t ? n : "" }
639
+ }),
640
+ e && /* @__PURE__ */ A(He, {
641
+ style: l,
642
+ dangerouslySetInnerHTML: { __html: r }
643
+ }),
644
+ i.map(ze(this.props))
645
+ ]
646
+ });
647
+ }
648
+ }, qe = class extends k.Component {
649
+ static propTypes = { ...G };
650
+ static defaultProps = { ...Re };
651
+ render() {
652
+ let { includeTargets: e, choiceLabelEnabled: t, choiceLabel: n, targetLabel: r, tiles: i, tileSize: a } = this.props, o = e ? 2 : 1, s = e ? i.length / 2 : i.length;
653
+ return /* @__PURE__ */ j(Ue, {
654
+ includeTargets: e,
655
+ style: {
656
+ gridTemplateColumns: `repeat(${o}, ${a})`,
657
+ gridTemplateRows: e ? `auto repeat(${s}, ${a})` : `auto auto repeat(${Math.floor(s / 2) - 1}, ${a} 10px) ${a} auto`
658
+ },
659
+ children: [
660
+ /* @__PURE__ */ A(We, { dangerouslySetInnerHTML: { __html: t ? n : "" } }),
661
+ e && /* @__PURE__ */ A(Ge, { dangerouslySetInnerHTML: { __html: r } }),
662
+ i.map(ze(this.props))
663
+ ]
664
+ });
665
+ }
666
+ }, K = (0, N.default)("pie-elements:placement-ordering:ordering"), Je = (e, t, n) => {
667
+ let r = e.find((e, n) => n === t), i = e.filter((e, n) => n !== t);
668
+ return [
669
+ ...i.slice(0, n),
670
+ r,
671
+ ...i.slice(n)
672
+ ];
673
+ }, Ye = (e, t, n) => {
674
+ if (K("[swap]", e, t, n), !e || e.length <= 1 || t === void 0 || n === void 0) throw Error(`swap requires a non-empty array, fromIndex, toIndex: ${e}, ${t} ${n}`);
675
+ let r = h(e), i = e[n];
676
+ return r[n] = r[t], r[t] = i, r;
677
+ };
678
+ function Xe(e, t) {
679
+ let n = h(e.response);
680
+ if (n[t.index] === t.id) n[t.index] = void 0;
681
+ else throw Error(`Tried to remove from index: ${t.index}, but the id doesn't match: array: ${n}, target: ${t.id}`);
682
+ return n;
683
+ }
684
+ function Ze(e, t, n) {
685
+ let { response: r, opts: i } = e, a = h(r);
686
+ if (i.includeTargets) return t.type === "choice" && n.type === "target" ? (a[n.index] = t.id, a) : t.type === "target" && n.type === "choice" ? (a[t.index] = void 0, a) : t.type === "target" && n.type === "target" ? Ye(r, t.index, n.index) : (K("do nothing to the response"), r);
687
+ {
688
+ let r = e.response.findIndex((e) => e !== void 0 && e === t.id), i = e.response.findIndex((e) => e !== void 0 && e === n.id);
689
+ return K("fromIndex: ", r, "toIndex:", i), Je(e.response, r, i);
690
+ }
691
+ }
692
+ function q(e, t, n, r) {
693
+ if (r.includeTargets) {
694
+ let i = [];
695
+ for (let r = 0; r < t.length; r++) {
696
+ let a = t[r], o = e.find((e) => a != null && e.id === a), s = n[r], c = Object.assign({
697
+ type: "target",
698
+ index: r,
699
+ empty: o === void 0
700
+ }, o, s, { draggable: o !== void 0 });
701
+ i.push(c);
702
+ }
703
+ return e.map((e) => t.indexOf(e.id) !== -1 && !r.allowSameChoiceInTargets ? {
704
+ type: "choice",
705
+ empty: !0,
706
+ droppable: !0,
707
+ draggable: !1
708
+ } : Object.assign({}, e, {
709
+ type: "choice",
710
+ droppable: !1,
711
+ draggable: !0
712
+ })).concat(i);
713
+ } else return t.reduce((t, r, i) => {
714
+ let a = Object.assign({
715
+ type: "empty",
716
+ draggable: !1,
717
+ droppable: !0
718
+ }, e.find((e) => e.id === r), n[i]), o = Object.assign({
719
+ type: "choice",
720
+ draggable: !0,
721
+ droppable: !0
722
+ }, e.find((e) => e.id === r), n[i]);
723
+ return i === 0 && t.push(a), t.push(o, a), t;
724
+ }, []);
725
+ }
726
+ function Qe(e, t, n, r) {
727
+ return r = me({ includeTargets: !0 }, r), n ||= [], t = !t || c(t) ? r.includeTargets ? Array(e.length) : oe(e, (e) => e.id) : t, {
728
+ choices: e,
729
+ response: t,
730
+ opts: r,
731
+ outcomes: n,
732
+ tiles: q(e, t, n, r)
733
+ };
734
+ }
735
+ function $e(e, t) {
736
+ switch (e.type) {
737
+ case "move": {
738
+ let { from: n, to: r } = e, i = Ze(t, n, r), a = q(t.choices, i, t.outcomes, t.opts);
739
+ return Object.assign({}, t, {
740
+ response: i,
741
+ tiles: a
742
+ });
743
+ }
744
+ case "remove": {
745
+ let { target: n } = e, r = Xe(t, n), i = q(t.choices, r, t.outcomes, t.opts);
746
+ return Object.assign({}, t, {
747
+ response: r,
748
+ tiles: i
749
+ });
750
+ }
751
+ }
752
+ return t;
753
+ }
754
+ //#endregion
755
+ //#region src/delivery/utils.ts
756
+ var et = (e, t) => {
757
+ if (!Array.isArray(e) || !Array.isArray(t) || e.length !== t.length) return !1;
758
+ let n = (e) => e.map((e) => JSON.stringify(e)).sort(), r = n(e), i = n(t), a = r.every((e, t) => e === i[t]), o = e.every((e, n) => JSON.stringify(e) === JSON.stringify(t[n]));
759
+ return a && !o;
760
+ };
761
+ //#endregion
762
+ //#region src/delivery/placement-ordering.tsx
763
+ function J(e) {
764
+ return typeof e == "function" || typeof e == "object" && !!e && typeof e.$$typeof == "symbol";
765
+ }
766
+ function Y(e, t) {
767
+ return !e || J(e) ? e : J(e.default) ? e.default : t && J(e[t]) ? e[t] : t && J(e[t]?.default) ? e[t].default : e;
768
+ }
769
+ var tt = Y(ae, "UiLayout") || Y(Q.UiLayout, "UiLayout"), X = Y(x, "PreviewPrompt") || Y(Q.PreviewPrompt, "PreviewPrompt"), nt = Y(b, "Feedback") || Y(Q.Feedback, "Feedback"), rt = Y(d, "Collapsible") || Y(Q.Collapsible, "Collapsible"), it = D, Z = it.default, Q = Z && typeof Z == "object" ? Z : it, { translator: at } = ce, ot = (0, N.default)("pie-elements:placement-ordering"), st = C("div")({
770
+ color: O.text(),
771
+ backgroundColor: O.background(),
772
+ display: "flex",
773
+ flexDirection: "column",
774
+ alignItems: "center",
775
+ boxSizing: "border-box"
776
+ }), ct = C("div")(({ theme: e }) => ({ paddingBottom: e.spacing(1) })), lt = C("div")(({ theme: e }) => ({ paddingBottom: e.spacing(2) })), ut = C(Ae)(({ theme: e }) => ({ paddingBottom: e.spacing(1) })), dt = C(rt)(({ theme: e }) => ({
777
+ marginBottom: e.spacing(2),
778
+ alignSelf: "flex-start"
779
+ })), ft = (e) => {
780
+ let { tiler: t, ordering: n, onDropChoice: r, onRemoveChoice: i, ...a } = e;
781
+ return /* @__PURE__ */ A(t, {
782
+ ...a,
783
+ tiles: n.tiles,
784
+ onDropChoice: (e, t) => r(e, t, n),
785
+ onRemoveChoice: (e) => i(e, n)
786
+ });
787
+ };
788
+ ft.propTypes = {
789
+ tiler: P.default.func,
790
+ ordering: P.default.any,
791
+ onDropChoice: P.default.func,
792
+ onRemoveChoice: P.default.func
793
+ };
794
+ var pt = class extends k.Component {
795
+ static propTypes = {
796
+ onSessionChange: P.default.func.isRequired,
797
+ model: P.default.object.isRequired,
798
+ session: P.default.oneOfType([P.default.array.isRequired, P.default.object.isRequired])
799
+ };
800
+ constructor(e) {
801
+ super(e), this.instanceId = ge();
802
+ let { value: t, needsReset: n } = this.validateSession(e);
803
+ this.state = { showingCorrect: !1 };
804
+ let { model: r } = e || {}, { env: i } = r || {}, { mode: a } = i || {};
805
+ n && a === "gather" && this.props.onSessionChange({
806
+ ...e.session,
807
+ value: t
808
+ });
809
+ }
810
+ toggleCorrect = (e) => this.setState({ showingCorrect: e });
811
+ componentDidUpdate() {
812
+ _(fe.findDOMNode(this));
813
+ }
814
+ validateSession = ({ model: e, session: t }, n = !1) => {
815
+ let { config: r, choices: i } = e || {}, { includeTargets: a } = r || {}, s = i.map((e) => e.id), { value: c } = t || {}, l;
816
+ if (a) c && c.length !== s.length && (l = !0, c = c.length < s.length ? c.concat(Array(s.length - c.length)) : c.filter((e) => s.includes(e)));
817
+ else {
818
+ if (!c || !c.length || n) c = s;
819
+ else {
820
+ let e = M(s, c), t = M(c, s);
821
+ (e.length || t.length) && (c = s);
822
+ }
823
+ l = !o(t.value, c);
824
+ }
825
+ return l && console.warn("This session is not valid anymore. It will be reset."), {
826
+ value: c,
827
+ needsReset: l
828
+ };
829
+ };
830
+ UNSAFE_componentWillReceiveProps(e) {
831
+ let { model: t = {} } = e || {}, { model: n = {} } = this.props || {}, { correctResponse: r, config: i, choices: a = [], env: o } = t, { includeTargets: s } = i || {}, c = {}, l = n.language && n.language !== t.language, u = n.note && n.note === at.t("common:commonCorrectAnswerWithAlternates", { lng: n.language });
832
+ l && u && (n.note = at.t("common:commonCorrectAnswerWithAlternates", { lng: t.language })), r || (c.showingCorrect = !1);
833
+ let d = et(a, n.choices), { value: f, needsReset: p } = this.validateSession(e, d), m = {
834
+ ...e.session,
835
+ value: f
836
+ }, h = n.config?.includeTargets !== s;
837
+ s && h && (p = !0, delete m.value), this.setState(c, () => {
838
+ let { mode: e } = o || {};
839
+ p && e === "gather" && this.props.onSessionChange(m);
840
+ });
841
+ }
842
+ onDropChoice = (e, t, n) => {
843
+ let { onSessionChange: r, session: i } = this.props, a = n.tiles.find((e) => e.id === t.id && e.type === t.type && e.index === t.index), o = e;
844
+ ot("[onDropChoice] ", a, o);
845
+ let s = $e({
846
+ type: "move",
847
+ from: a,
848
+ to: o
849
+ }, n);
850
+ r(Object.assign({}, i, { value: s.response }));
851
+ };
852
+ onRemoveChoice = (e, t) => {
853
+ let { onSessionChange: n, session: r } = this.props;
854
+ ot("[onRemoveChoice]", e);
855
+ let i = $e({
856
+ type: "remove",
857
+ target: e
858
+ }, t);
859
+ n(Object.assign({}, r, { value: i.response }));
860
+ };
861
+ createOrdering = () => {
862
+ let { model: e, session: t } = this.props, { showingCorrect: n } = this.state, { includeTargets: r } = e.config || {
863
+ orientation: "vertical",
864
+ includeTargets: !0
865
+ };
866
+ return n ? Qe(e.choices, e.correctResponse, e.correctResponse.map((e) => ({
867
+ id: e,
868
+ outcome: "correct"
869
+ })), {
870
+ includeTargets: r,
871
+ allowSameChoiceInTargets: e.config.allowSameChoiceInTargets
872
+ }) : Qe(e.choices, t.value, e.outcomes, {
873
+ includeTargets: r,
874
+ allowSameChoiceInTargets: e.config.allowSameChoiceInTargets
875
+ });
876
+ };
877
+ onDragEnd = (e) => {
878
+ let { over: t, active: n } = e, r = this.createOrdering();
879
+ if (t && n) {
880
+ let e = n.data.current, i = t.data.current;
881
+ if (e && i && i.type === "target") {
882
+ this.onDropChoice(i, e, r);
883
+ return;
884
+ }
885
+ e && i && this.onDropChoice(i, e, r);
886
+ } else if (!t && n) {
887
+ let e = n.data.current;
888
+ e && e.type === "target" && this.onRemoveChoice(e, r);
889
+ }
890
+ };
891
+ render() {
892
+ let { model: e } = this.props, { correctResponse: t, correctness: n, extraCSSRules: r, prompt: i, rationale: a, feedback: o, config: s, note: c, showNote: l, env: u, disabled: d, teacherInstructions: f, language: p } = e, m = t && t.length > 0, { showingCorrect: h } = this.state, g = s || {
893
+ orientation: "vertical",
894
+ includeTargets: !0
895
+ }, { orientation: _, includeTargets: v } = g, b = _ === "vertical", x = this.createOrdering(), { mode: S, role: C } = u || {}, w = b ? qe : Ke, T = (h || S === "view" && C === "instructor") && l && c, E = a && (te(a) || y(a)), ne = f && (te(f) || y(f)), D = {
896
+ color: O.text(),
897
+ backgroundColor: O.background(),
898
+ display: "flex",
899
+ flexDirection: "column",
900
+ alignItems: "center",
901
+ boxSizing: "border-box"
902
+ };
903
+ return /* @__PURE__ */ A(re, {
904
+ onDragStart: () => {},
905
+ onDragEnd: this.onDragEnd,
906
+ collisionDetection: ee,
907
+ children: /* @__PURE__ */ A(st, { children: /* @__PURE__ */ j(tt, {
908
+ extraCSSRules: r,
909
+ style: D,
910
+ children: [
911
+ ne && /* @__PURE__ */ A(dt, {
912
+ labels: {
913
+ hidden: "Show Teacher Instructions",
914
+ visible: "Hide Teacher Instructions"
915
+ },
916
+ className: "collapsible",
917
+ children: /* @__PURE__ */ A(X, { prompt: f })
918
+ }),
919
+ /* @__PURE__ */ A(ct, { children: /* @__PURE__ */ A(X, { prompt: i }) }),
920
+ /* @__PURE__ */ A(ut, {
921
+ show: m,
922
+ toggled: h,
923
+ onToggle: this.toggleCorrect,
924
+ language: p
925
+ }),
926
+ /* @__PURE__ */ A(ft, {
927
+ instanceId: this.instanceId,
928
+ choiceLabel: g.choiceLabel,
929
+ targetLabel: g.targetLabel,
930
+ ordering: x,
931
+ tiler: w,
932
+ disabled: d,
933
+ addGuide: g.showOrdering,
934
+ tileSize: g.tileSize,
935
+ includeTargets: v,
936
+ choiceLabelEnabled: e.config && e.config.choiceLabelEnabled
937
+ }),
938
+ T && /* @__PURE__ */ A(lt, { dangerouslySetInnerHTML: { __html: c } }),
939
+ E && /* @__PURE__ */ A(dt, {
940
+ labels: {
941
+ hidden: "Show Rationale",
942
+ visible: "Hide Rationale"
943
+ },
944
+ className: "collapsible",
945
+ children: /* @__PURE__ */ A(X, { prompt: a })
946
+ }),
947
+ !h && /* @__PURE__ */ A(nt, {
948
+ correctness: n,
949
+ feedback: o
950
+ })
951
+ ]
952
+ }) })
953
+ });
954
+ }
955
+ }, mt = class extends k.Component {
956
+ static propTypes = {
957
+ model: P.default.object.isRequired,
958
+ session: P.default.oneOfType([P.default.array.isRequired, P.default.object.isRequired]),
959
+ onSessionChange: P.default.func.isRequired
960
+ };
961
+ render() {
962
+ let { model: e, session: t, onSessionChange: n } = this.props;
963
+ return /* @__PURE__ */ A(pt, {
964
+ model: e,
965
+ session: t,
966
+ onSessionChange: n
967
+ });
968
+ }
969
+ }, $ = (0, N.default)("pie-elements:placement-ordering"), ht = ({ model: e, session: t }) => {
970
+ let { config: n } = e, r = (t && p(t.value) || []).length === e.choices.length;
971
+ return n.includeTargets || r;
972
+ }, gt = class extends HTMLElement {
973
+ constructor() {
974
+ super(), this._root = null, this._mathObserver = null, this._mathRenderPending = !1;
975
+ }
976
+ _scheduleMathRender = () => {
977
+ this._mathRenderPending || (this._mathRenderPending = !0, requestAnimationFrame(() => {
978
+ this._mathObserver && this._mathObserver.disconnect(), _(this), this._mathRenderPending = !1, setTimeout(() => {
979
+ this._mathObserver && this._mathObserver.observe(this, {
980
+ childList: !0,
981
+ subtree: !0
982
+ });
983
+ }, 50);
984
+ }));
985
+ };
986
+ _initMathObserver() {
987
+ this._mathObserver || (this._mathObserver = new MutationObserver(this._scheduleMathRender), this._mathObserver.observe(this, {
988
+ childList: !0,
989
+ subtree: !0
990
+ }));
991
+ }
992
+ _disconnectMathObserver() {
993
+ this._mathObserver &&= (this._mathObserver.disconnect(), null);
994
+ }
995
+ isComplete = (e) => e && p(e).length === this._model.completeLength;
996
+ sessionChange = (e) => {
997
+ this._session.value = e.value, this.render(), this.dispatchEvent(new _e(this.tagName.toLowerCase(), this._session && this.isComplete(this._session.value)));
998
+ };
999
+ set model(e) {
1000
+ this._model = e, this.render(), this.dispatchEvent(new CustomEvent("model-set", {
1001
+ bubbles: !0,
1002
+ detail: { complete: !1 }
1003
+ }));
1004
+ }
1005
+ set session(e) {
1006
+ this._session = e, this.render();
1007
+ }
1008
+ get session() {
1009
+ return this._session;
1010
+ }
1011
+ render() {
1012
+ if (this._model && this._session) {
1013
+ $("[render] session: ", this._session.value), $("[render] model: ", this._model), this._initMathObserver();
1014
+ let e = k.createElement(mt, {
1015
+ model: this._model,
1016
+ session: this._session,
1017
+ onSessionChange: this.sessionChange
1018
+ });
1019
+ this._root ||= de(this), this._root.render(e);
1020
+ }
1021
+ }
1022
+ connectedCallback() {
1023
+ this._initMathObserver();
1024
+ }
1025
+ disconnectedCallback() {
1026
+ this._disconnectMathObserver(), this._root && this._root.unmount();
1027
+ }
1028
+ };
1029
+ //#endregion
1030
+ export { gt as default, ht as isValidSession };
1031
+
1032
+ //# sourceMappingURL=index.js.map