@cuemath/leap 2.8.50 → 2.8.52-link.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 (85) hide show
  1. package/dist/assets/illustrations/illustrations.js +1 -0
  2. package/dist/assets/illustrations/illustrations.js.map +1 -1
  3. package/dist/assets/line-icons/icons/clear-all.js +53 -0
  4. package/dist/assets/line-icons/icons/clear-all.js.map +1 -0
  5. package/dist/assets/line-icons/icons/download.js +48 -0
  6. package/dist/assets/line-icons/icons/download.js.map +1 -0
  7. package/dist/assets/line-icons/icons/equation.js +48 -0
  8. package/dist/assets/line-icons/icons/equation.js.map +1 -0
  9. package/dist/assets/line-icons/icons/grid-icon.js +42 -0
  10. package/dist/assets/line-icons/icons/grid-icon.js.map +1 -0
  11. package/dist/assets/line-icons/icons/pan.js +98 -0
  12. package/dist/assets/line-icons/icons/pan.js.map +1 -0
  13. package/dist/assets/line-icons/icons/square-checked-grid.js +25 -0
  14. package/dist/assets/line-icons/icons/square-checked-grid.js.map +1 -0
  15. package/dist/assets/line-icons/icons/square-dots.js +32 -0
  16. package/dist/assets/line-icons/icons/square-dots.js.map +1 -0
  17. package/dist/assets/line-icons/icons/square-grid.js +17 -0
  18. package/dist/assets/line-icons/icons/square-grid.js.map +1 -0
  19. package/dist/assets/line-icons/icons/square2-grid.js +13 -0
  20. package/dist/assets/line-icons/icons/square2-grid.js.map +1 -0
  21. package/dist/assets/line-icons/icons/text-icon.js +48 -0
  22. package/dist/assets/line-icons/icons/text-icon.js.map +1 -0
  23. package/dist/assets/line-icons/icons/tri-dots.js +27 -0
  24. package/dist/assets/line-icons/icons/tri-dots.js.map +1 -0
  25. package/dist/assets/line-icons/icons/tri-grid.js +27 -0
  26. package/dist/assets/line-icons/icons/tri-grid.js.map +1 -0
  27. package/dist/assets/line-icons/icons/tri2-dots.js +27 -0
  28. package/dist/assets/line-icons/icons/tri2-dots.js.map +1 -0
  29. package/dist/assets/line-icons/icons/tri2-grid.js +27 -0
  30. package/dist/assets/line-icons/icons/tri2-grid.js.map +1 -0
  31. package/dist/assets/line-icons/icons/upload.js +48 -0
  32. package/dist/assets/line-icons/icons/upload.js.map +1 -0
  33. package/dist/assets/line-icons/icons/zoom-in.js +58 -0
  34. package/dist/assets/line-icons/icons/zoom-in.js.map +1 -0
  35. package/dist/assets/line-icons/icons/zoom-out.js +48 -0
  36. package/dist/assets/line-icons/icons/zoom-out.js.map +1 -0
  37. package/dist/features/cue-canvas/cue-canvas-core.js +138 -49
  38. package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
  39. package/dist/features/cue-canvas/cue-canvas-helpers.js +88 -29
  40. package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
  41. package/dist/features/cue-canvas/cue-canvas.js +57 -49
  42. package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
  43. package/dist/features/cue-canvas/cue-cavas-styled.js +127 -92
  44. package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
  45. package/dist/features/cue-canvas/toolbar/color-palette.js +49 -0
  46. package/dist/features/cue-canvas/toolbar/color-palette.js.map +1 -0
  47. package/dist/features/cue-canvas/toolbar/color-picker-menu.js +62 -0
  48. package/dist/features/cue-canvas/toolbar/color-picker-menu.js.map +1 -0
  49. package/dist/features/cue-canvas/toolbar/grid-menu.js +62 -0
  50. package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -0
  51. package/dist/features/cue-canvas/toolbar/icon-map.js +58 -0
  52. package/dist/features/cue-canvas/toolbar/icon-map.js.map +1 -0
  53. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js +56 -0
  54. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js.map +1 -0
  55. package/dist/features/cue-canvas/toolbar/tool.js +34 -0
  56. package/dist/features/cue-canvas/toolbar/tool.js.map +1 -0
  57. package/dist/features/cue-canvas/toolbar/toolbar.js +18 -87
  58. package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
  59. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js +16 -0
  60. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -0
  61. package/dist/features/trial-session/api/trial-nodes.js +6 -5
  62. package/dist/features/trial-session/api/trial-nodes.js.map +1 -1
  63. package/dist/features/trial-session/comps/offering-information/offering-information-constants.js +7 -10
  64. package/dist/features/trial-session/comps/offering-information/offering-information-constants.js.map +1 -1
  65. package/dist/features/trial-session/comps/school-goals/school-goals.js +54 -54
  66. package/dist/features/trial-session/comps/school-goals/school-goals.js.map +1 -1
  67. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js +41 -41
  68. package/dist/features/trial-session/comps/student-enrichment/student-enrichment.js.map +1 -1
  69. package/dist/features/trial-session/comps/student-info/student-info.js +35 -35
  70. package/dist/features/trial-session/comps/student-info/student-info.js.map +1 -1
  71. package/dist/features/trial-session/comps/test-prep/test-prep.js +45 -42
  72. package/dist/features/trial-session/comps/test-prep/test-prep.js.map +1 -1
  73. package/dist/features/trial-session/comps/worksheet/worksheet.js +23 -23
  74. package/dist/features/trial-session/comps/worksheet/worksheet.js.map +1 -1
  75. package/dist/features/trial-session/helper.js +52 -52
  76. package/dist/features/trial-session/helper.js.map +1 -1
  77. package/dist/features/trial-session/trial-session-types.js.map +1 -1
  78. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js +7 -7
  79. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  80. package/dist/features/worksheet/worksheet/worksheet-questions-controller/scribble-switch.js.map +1 -1
  81. package/dist/index.d.ts +16 -2
  82. package/dist/static/chapter-header-bg.4ed173c2.svg +1 -0
  83. package/package.json +1 -1
  84. package/dist/features/cue-canvas/toolbar/color-pallete.js +0 -49
  85. package/dist/features/cue-canvas/toolbar/color-pallete.js.map +0 -1
@@ -1,17 +1,36 @@
1
- const c = (e) => {
2
- var t;
3
- const n = (t = e.current) == null ? void 0 : t.shadowRoot;
4
- if (n) {
5
- const s = n.querySelectorAll("x-polypad");
6
- if (s[0]) {
7
- const a = s[0].querySelector("svg.canvas"), r = a == null ? void 0 : a.querySelector("path.mask");
8
- r == null || r.setAttribute("stroke", "transparent"), r == null || r.setAttribute("fill", "transparent"), r == null || r.removeAttribute("style");
1
+ const d = [
2
+ "none",
3
+ "square2-grid",
4
+ "square-checked",
5
+ "square-dots",
6
+ "tri-dots",
7
+ "tri2-dots",
8
+ "square-grid",
9
+ "tri-grid",
10
+ "tri2-grid"
11
+ ], g = /* @__PURE__ */ new Set([
12
+ "undo",
13
+ "redo",
14
+ "clearAll",
15
+ "home",
16
+ "zoomIn",
17
+ "zoomOut",
18
+ "upload",
19
+ "download"
20
+ ]), A = (e) => {
21
+ var o;
22
+ const r = (o = e.current) == null ? void 0 : o.shadowRoot;
23
+ if (r) {
24
+ const t = r.querySelectorAll("x-polypad");
25
+ if (t[0]) {
26
+ const s = t[0].querySelector("svg.canvas"), n = s == null ? void 0 : s.querySelector("path.mask");
27
+ n == null || n.setAttribute("stroke", "transparent"), n == null || n.setAttribute("fill", "transparent"), n == null || n.removeAttribute("style");
9
28
  }
10
29
  }
11
- }, i = (e, n, t) => t === "canvas" ? {
30
+ }, E = (e, r, o, t) => o === "canvas" ? {
12
31
  canvas: "notebook",
13
32
  canvasX: e,
14
- canvasY: n,
33
+ canvasY: r,
15
34
  noPinchPan: !0,
16
35
  grid: "none",
17
36
  background: "transparent",
@@ -19,9 +38,14 @@ const c = (e) => {
19
38
  } : {
20
39
  canvas: "infinite",
21
40
  canvasX: e,
22
- canvasY: n,
23
- grid: "none"
24
- }, l = (e) => e === "canvas" ? {
41
+ canvasY: r,
42
+ grid: "none",
43
+ noPinchPan: t === "STUDENT",
44
+ noDeleting: t === "STUDENT",
45
+ noCopyPaste: t === "STUDENT",
46
+ noMusic: !0,
47
+ noAudio: !0
48
+ }, T = (e) => e === "canvas" ? {
25
49
  sidebarTiles: !1,
26
50
  sidebarSettings: !1,
27
51
  settings: !1,
@@ -33,12 +57,12 @@ const c = (e) => {
33
57
  sidebarSettings: !1,
34
58
  settings: !1,
35
59
  toolbar: !1
36
- }, o = (e) => [e[1], e[0]], u = (e) => {
37
- const n = /* @__PURE__ */ new Map();
38
- return e.forEach((t, s) => {
39
- n.set(s, o(t));
40
- }), n;
41
- }, g = (e) => {
60
+ }, a = (e) => [e[1], e[0]], S = (e) => {
61
+ const r = /* @__PURE__ */ new Map();
62
+ return e.forEach((o, t) => {
63
+ r.set(t, a(o));
64
+ }), r;
65
+ }, p = (e) => {
42
66
  switch (e) {
43
67
  case "pen":
44
68
  return ["pen", "pen"];
@@ -48,10 +72,41 @@ const c = (e) => {
48
72
  return ["pen", "highlighter"];
49
73
  case "ruler":
50
74
  return ["pen", "ruler"];
75
+ case "equation":
76
+ return ["text", "equation"];
51
77
  default:
52
78
  return [e, void 0];
53
79
  }
54
- }, p = (e) => e === "TEACHER" ? [
80
+ }, i = [
81
+ "pen",
82
+ "ruler",
83
+ "marker",
84
+ "highlighter",
85
+ "eraser",
86
+ "move",
87
+ "pan",
88
+ "clearAll",
89
+ "text",
90
+ "equation",
91
+ "grid",
92
+ "home",
93
+ "undo",
94
+ "redo",
95
+ "zoomIn",
96
+ "zoomOut",
97
+ "upload",
98
+ "download"
99
+ ], c = [
100
+ "pen",
101
+ "ruler",
102
+ "marker",
103
+ "highlighter",
104
+ "move",
105
+ "text",
106
+ "undo",
107
+ "redo",
108
+ "download"
109
+ ], u = [
55
110
  "pen",
56
111
  "ruler",
57
112
  "marker",
@@ -60,15 +115,19 @@ const c = (e) => {
60
115
  "move",
61
116
  "undo",
62
117
  "redo"
63
- ] : ["pen", "ruler", "eraser", "move", "undo", "redo"], A = (e) => e === "TEACHER" ? ["CANVAS_RED", "CANVAS_YELLOW", "CANVAS_GREEN"] : ["CANVAS_BLUE", "CANVAS_PURPLE", "CANVAS_PINK"];
118
+ ], l = ["pen", "ruler", "eraser", "move", "undo", "redo"], h = (e, r) => r === "whiteboard" ? e === "TEACHER" ? i : c : e === "TEACHER" ? u : l, f = (e) => e === "TEACHER" ? ["CANVAS_RED", "CANVAS_YELLOW", "CANVAS_GREEN"] : ["CANVAS_BLUE", "CANVAS_PURPLE", "CANVAS_PINK"], m = (e) => ["pen", "ruler", "marker", "highlighter"].includes(e), v = (e) => Object.values(e).some((r) => !!(!r[0] && r[1] && "name" in r[1] && (r[1].name === "text" || r[1].name === "equation")));
64
119
  export {
65
- i as getCanvasConfig,
66
- l as getCanvasSettings,
67
- A as getColorsForUser,
68
- o as getReverseAction,
69
- u as getReverseMap,
70
- g as getToolAndSubtool,
71
- p as getUserTools,
72
- c as removeMask
120
+ d as GRID_NAMES,
121
+ g as STATELESS_TOOLS,
122
+ v as checkTextOrEquationTool,
123
+ E as getCanvasConfig,
124
+ T as getCanvasSettings,
125
+ f as getColorsForUser,
126
+ m as getIsWritingTool,
127
+ a as getReverseAction,
128
+ S as getReverseMap,
129
+ p as getToolAndSubtool,
130
+ h as getUserTools,
131
+ A as removeMask
73
132
  };
74
133
  //# sourceMappingURL=cue-canvas-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cue-canvas-helpers.js","sources":["../../../src/features/cue-canvas/cue-canvas-helpers.ts"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type {\n TCueCanvasColors,\n TCueCanvasChangeData,\n TCueCanvasTool,\n TCueCanvasToolOption,\n TDrawingData,\n TRenderAs,\n} from './types/cue-canvas';\nimport type { IPolypadCreateOptions, IPolypadOptions } from './types/polypad';\n\nexport const removeMask = (canvasElementRef: React.RefObject<HTMLDivElement>) => {\n const shadowRoot = canvasElementRef.current?.shadowRoot;\n\n if (shadowRoot) {\n const xPolypad = shadowRoot.querySelectorAll('x-polypad');\n\n if (xPolypad[0]) {\n const svgCanvas = xPolypad[0].querySelector('svg.canvas');\n const maskPath = svgCanvas?.querySelector('path.mask');\n\n maskPath?.setAttribute('stroke', 'transparent');\n maskPath?.setAttribute('fill', 'transparent');\n maskPath?.removeAttribute('style');\n }\n }\n\n return undefined;\n};\n\nexport const getCanvasConfig = (\n width: number,\n height: number,\n renderAs: TRenderAs,\n): IPolypadOptions => {\n return renderAs === 'canvas'\n ? {\n canvas: 'notebook',\n canvasX: width,\n canvasY: height,\n noPinchPan: true,\n grid: 'none',\n background: 'transparent',\n noSnapping: true,\n }\n : ({\n canvas: 'infinite',\n canvasX: width,\n canvasY: height,\n grid: 'none',\n } as IPolypadOptions);\n};\n\nexport const getCanvasSettings = (renderAs: TRenderAs): IPolypadCreateOptions => {\n return renderAs === 'canvas'\n ? {\n sidebarTiles: false,\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n canvasMargin: 0,\n }\n : {\n sidebarTiles: false, //userType === 'TEACHER'\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n };\n};\n\nexport const getReverseAction = (action: TDrawingData[]) => [action[1], action[0]];\n\nexport const getReverseMap = (data: TCueCanvasChangeData) => {\n const newData = new Map<string, TDrawingData[]>();\n\n data.forEach((value, key) => {\n newData.set(key, getReverseAction(value));\n });\n\n return newData;\n};\n\nexport const getToolAndSubtool = (\n tool: TCueCanvasTool,\n): [\n Exclude<TCueCanvasTool, 'marker' | 'highlighter' | 'ruler'>,\n TCueCanvasToolOption | undefined,\n] => {\n switch (tool) {\n case 'pen':\n return ['pen', 'pen'];\n case 'marker':\n return ['pen', 'marker'];\n case 'highlighter':\n return ['pen', 'highlighter'];\n case 'ruler':\n return ['pen', 'ruler'];\n default:\n return [tool, undefined];\n }\n};\n\nexport const getUserTools = (userType: TUserTypes) => {\n return userType === 'TEACHER'\n ? ([\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'undo',\n 'redo',\n ] as TCueCanvasTool[])\n : (['pen', 'ruler', 'eraser', 'move', 'undo', 'redo'] as TCueCanvasTool[]);\n};\n\nexport const getColorsForUser = (userType: TUserTypes) => {\n return userType === 'TEACHER'\n ? (['CANVAS_RED', 'CANVAS_YELLOW', 'CANVAS_GREEN'] as TCueCanvasColors[])\n : (['CANVAS_BLUE', 'CANVAS_PURPLE', 'CANVAS_PINK'] as TCueCanvasColors[]);\n};\n"],"names":["removeMask","canvasElementRef","_a","shadowRoot","xPolypad","svgCanvas","maskPath","getCanvasConfig","width","height","renderAs","getCanvasSettings","getReverseAction","action","getReverseMap","data","newData","value","key","getToolAndSubtool","tool","getUserTools","userType","getColorsForUser"],"mappings":"AAWa,MAAAA,IAAa,CAACC,MAAsD;AAApE,MAAAC;AACL,QAAAC,KAAaD,IAAAD,EAAiB,YAAjB,gBAAAC,EAA0B;AAE7C,MAAIC,GAAY;AACR,UAAAC,IAAWD,EAAW,iBAAiB,WAAW;AAEpD,QAAAC,EAAS,CAAC,GAAG;AACf,YAAMC,IAAYD,EAAS,CAAC,EAAE,cAAc,YAAY,GAClDE,IAAWD,KAAA,gBAAAA,EAAW,cAAc;AAEhC,MAAAC,KAAA,QAAAA,EAAA,aAAa,UAAU,gBACvBA,KAAA,QAAAA,EAAA,aAAa,QAAQ,gBAC/BA,KAAA,QAAAA,EAAU,gBAAgB;AAAA,IAC5B;AAAA,EACF;AAGF,GAEaC,IAAkB,CAC7BC,GACAC,GACAC,MAEOA,MAAa,WAChB;AAAA,EACE,QAAQ;AAAA,EACR,SAASF;AAAA,EACT,SAASC;AAAA,EACT,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,YAAY;AAAA,IAEb;AAAA,EACC,QAAQ;AAAA,EACR,SAASD;AAAA,EACT,SAASC;AAAA,EACT,MAAM;AAAA,GAIDE,IAAoB,CAACD,MACzBA,MAAa,WAChB;AAAA,EACE,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,UAAU;AAAA,EACV,SAAS;AAAA,EACT,cAAc;AAAA,IAEhB;AAAA,EACE,cAAc;AAAA;AAAA,EACd,iBAAiB;AAAA,EACjB,UAAU;AAAA,EACV,SAAS;AAAA,GAIJE,IAAmB,CAACC,MAA2B,CAACA,EAAO,CAAC,GAAGA,EAAO,CAAC,CAAC,GAEpEC,IAAgB,CAACC,MAA+B;AACrD,QAAAC,wBAAc;AAEf,SAAAD,EAAA,QAAQ,CAACE,GAAOC,MAAQ;AAC3B,IAAAF,EAAQ,IAAIE,GAAKN,EAAiBK,CAAK,CAAC;AAAA,EAAA,CACzC,GAEMD;AACT,GAEaG,IAAoB,CAC/BC,MAIG;AACH,UAAQA,GAAM;AAAA,IACZ,KAAK;AACI,aAAA,CAAC,OAAO,KAAK;AAAA,IACtB,KAAK;AACI,aAAA,CAAC,OAAO,QAAQ;AAAA,IACzB,KAAK;AACI,aAAA,CAAC,OAAO,aAAa;AAAA,IAC9B,KAAK;AACI,aAAA,CAAC,OAAO,OAAO;AAAA,IACxB;AACS,aAAA,CAACA,GAAM,MAAS;AAAA,EAC3B;AACF,GAEaC,IAAe,CAACC,MACpBA,MAAa,YACf;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,IAED,CAAC,OAAO,SAAS,UAAU,QAAQ,QAAQ,MAAM,GAG3CC,IAAmB,CAACD,MACxBA,MAAa,YACf,CAAC,cAAc,iBAAiB,cAAc,IAC9C,CAAC,eAAe,iBAAiB,aAAa;"}
1
+ {"version":3,"file":"cue-canvas-helpers.js","sources":["../../../src/features/cue-canvas/cue-canvas-helpers.ts"],"sourcesContent":["import type { TUserTypes } from '../ui/types';\nimport type {\n TCueCanvasColors,\n TCueCanvasChangeData,\n TCueCanvasTool,\n TCueCanvasToolOption,\n TDrawingData,\n TRenderAs,\n TCueCanvasGridName,\n TCueCanvasChangeDataObject,\n} from './types/cue-canvas';\nimport type { IPolypadCreateOptions, IPolypadOptions } from './types/polypad';\n\nexport const GRID_NAMES: TCueCanvasGridName[] = [\n 'none',\n 'square2-grid',\n 'square-checked',\n 'square-dots',\n 'tri-dots',\n 'tri2-dots',\n 'square-grid',\n 'tri-grid',\n 'tri2-grid',\n];\n\nexport const STATELESS_TOOLS = new Set<TCueCanvasTool>([\n 'undo',\n 'redo',\n 'clearAll',\n 'home',\n 'zoomIn',\n 'zoomOut',\n 'upload',\n 'download',\n]);\n\nexport const removeMask = (canvasElementRef: React.RefObject<HTMLDivElement>) => {\n const shadowRoot = canvasElementRef.current?.shadowRoot;\n\n if (shadowRoot) {\n const xPolypad = shadowRoot.querySelectorAll('x-polypad');\n\n if (xPolypad[0]) {\n const svgCanvas = xPolypad[0].querySelector('svg.canvas');\n const maskPath = svgCanvas?.querySelector('path.mask');\n\n maskPath?.setAttribute('stroke', 'transparent');\n maskPath?.setAttribute('fill', 'transparent');\n maskPath?.removeAttribute('style');\n }\n }\n\n return undefined;\n};\n\nexport const getCanvasConfig = (\n width: number,\n height: number,\n renderAs: TRenderAs,\n userType: TUserTypes,\n): IPolypadOptions => {\n return renderAs === 'canvas'\n ? {\n canvas: 'notebook',\n canvasX: width,\n canvasY: height,\n noPinchPan: true,\n grid: 'none',\n background: 'transparent',\n noSnapping: true,\n }\n : {\n canvas: 'infinite',\n canvasX: width,\n canvasY: height,\n grid: 'none',\n noPinchPan: userType === 'STUDENT',\n noDeleting: userType === 'STUDENT',\n noCopyPaste: userType === 'STUDENT',\n noMusic: true,\n noAudio: true,\n };\n};\n\nexport const getCanvasSettings = (renderAs: TRenderAs): IPolypadCreateOptions => {\n return renderAs === 'canvas'\n ? {\n sidebarTiles: false,\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n canvasMargin: 0,\n }\n : {\n sidebarTiles: false, //userType === 'TEACHER'\n sidebarSettings: false,\n settings: false,\n toolbar: false,\n };\n};\n\nexport const getReverseAction = (action: TDrawingData[]) => [action[1], action[0]];\n\nexport const getReverseMap = (data: TCueCanvasChangeData) => {\n const newData = new Map<string, TDrawingData[]>();\n\n data.forEach((value, key) => {\n newData.set(key, getReverseAction(value));\n });\n\n return newData;\n};\n\nexport const getToolAndSubtool = (\n tool: TCueCanvasTool,\n): [\n Exclude<TCueCanvasTool, 'marker' | 'highlighter' | 'ruler' | 'equation'>,\n TCueCanvasToolOption | undefined,\n] => {\n switch (tool) {\n case 'pen':\n return ['pen', 'pen'];\n case 'marker':\n return ['pen', 'marker'];\n case 'highlighter':\n return ['pen', 'highlighter'];\n case 'ruler':\n return ['pen', 'ruler'];\n case 'equation':\n return ['text', 'equation'];\n default:\n return [tool, undefined];\n }\n};\n\nconst TEACHER_WHITEBOARD_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'pan',\n 'clearAll',\n 'text',\n 'equation',\n 'grid',\n 'home',\n 'undo',\n 'redo',\n 'zoomIn',\n 'zoomOut',\n 'upload',\n 'download',\n];\n\nconst STUDENT_WHITEBOARD_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'move',\n 'text',\n 'undo',\n 'redo',\n 'download',\n];\n\nconst TEACHER_DEFAULT_TOOLS: TCueCanvasTool[] = [\n 'pen',\n 'ruler',\n 'marker',\n 'highlighter',\n 'eraser',\n 'move',\n 'undo',\n 'redo',\n];\n\nconst STUDENT_DEFAULT_TOOLS: TCueCanvasTool[] = ['pen', 'ruler', 'eraser', 'move', 'undo', 'redo'];\n\nexport const getUserTools = (userType: TUserTypes, renderAs: TRenderAs): TCueCanvasTool[] => {\n if (renderAs === 'whiteboard') {\n return userType === 'TEACHER' ? TEACHER_WHITEBOARD_TOOLS : STUDENT_WHITEBOARD_TOOLS;\n }\n\n return userType === 'TEACHER' ? TEACHER_DEFAULT_TOOLS : STUDENT_DEFAULT_TOOLS;\n};\n\nexport const getColorsForUser = (userType: TUserTypes) => {\n return userType === 'TEACHER'\n ? (['CANVAS_RED', 'CANVAS_YELLOW', 'CANVAS_GREEN'] as TCueCanvasColors[])\n : (['CANVAS_BLUE', 'CANVAS_PURPLE', 'CANVAS_PINK'] as TCueCanvasColors[]);\n};\n\nexport const getIsWritingTool = (penTool: string) => {\n return ['pen', 'ruler', 'marker', 'highlighter'].includes(penTool);\n};\n\nexport const checkTextOrEquationTool = (payload: TCueCanvasChangeDataObject) => {\n return Object.values(payload).some(value => {\n if (\n !value[0] &&\n value[1] &&\n 'name' in value[1] &&\n (value[1].name === 'text' || value[1].name === 'equation')\n ) {\n return true;\n }\n\n return false;\n });\n};\n"],"names":["GRID_NAMES","STATELESS_TOOLS","removeMask","canvasElementRef","_a","shadowRoot","xPolypad","svgCanvas","maskPath","getCanvasConfig","width","height","renderAs","userType","getCanvasSettings","getReverseAction","action","getReverseMap","data","newData","value","key","getToolAndSubtool","tool","TEACHER_WHITEBOARD_TOOLS","STUDENT_WHITEBOARD_TOOLS","TEACHER_DEFAULT_TOOLS","STUDENT_DEFAULT_TOOLS","getUserTools","getColorsForUser","getIsWritingTool","penTool","checkTextOrEquationTool","payload"],"mappings":"AAaO,MAAMA,IAAmC;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,wBAAsB,IAAoB;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC,GAEYC,IAAa,CAACC,MAAsD;AAvB1E,MAAAC;AAwBC,QAAAC,KAAaD,IAAAD,EAAiB,YAAjB,gBAAAC,EAA0B;AAE7C,MAAIC,GAAY;AACR,UAAAC,IAAWD,EAAW,iBAAiB,WAAW;AAEpD,QAAAC,EAAS,CAAC,GAAG;AACf,YAAMC,IAAYD,EAAS,CAAC,EAAE,cAAc,YAAY,GAClDE,IAAWD,KAAA,gBAAAA,EAAW,cAAc;AAEhC,MAAAC,KAAA,QAAAA,EAAA,aAAa,UAAU,gBACvBA,KAAA,QAAAA,EAAA,aAAa,QAAQ,gBAC/BA,KAAA,QAAAA,EAAU,gBAAgB;AAAA,IAC5B;AAAA,EACF;AAGF,GAEaC,IAAkB,CAC7BC,GACAC,GACAC,GACAC,MAEOD,MAAa,WAChB;AAAA,EACE,QAAQ;AAAA,EACR,SAASF;AAAA,EACT,SAASC;AAAA,EACT,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,YAAY;AAAA,IAEd;AAAA,EACE,QAAQ;AAAA,EACR,SAASD;AAAA,EACT,SAASC;AAAA,EACT,MAAM;AAAA,EACN,YAAYE,MAAa;AAAA,EACzB,YAAYA,MAAa;AAAA,EACzB,aAAaA,MAAa;AAAA,EAC1B,SAAS;AAAA,EACT,SAAS;AAAA,GAIJC,IAAoB,CAACF,MACzBA,MAAa,WAChB;AAAA,EACE,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,UAAU;AAAA,EACV,SAAS;AAAA,EACT,cAAc;AAAA,IAEhB;AAAA,EACE,cAAc;AAAA;AAAA,EACd,iBAAiB;AAAA,EACjB,UAAU;AAAA,EACV,SAAS;AAAA,GAIJG,IAAmB,CAACC,MAA2B,CAACA,EAAO,CAAC,GAAGA,EAAO,CAAC,CAAC,GAEpEC,IAAgB,CAACC,MAA+B;AACrD,QAAAC,wBAAc;AAEf,SAAAD,EAAA,QAAQ,CAACE,GAAOC,MAAQ;AAC3B,IAAAF,EAAQ,IAAIE,GAAKN,EAAiBK,CAAK,CAAC;AAAA,EAAA,CACzC,GAEMD;AACT,GAEaG,IAAoB,CAC/BC,MAIG;AACH,UAAQA,GAAM;AAAA,IACZ,KAAK;AACI,aAAA,CAAC,OAAO,KAAK;AAAA,IACtB,KAAK;AACI,aAAA,CAAC,OAAO,QAAQ;AAAA,IACzB,KAAK;AACI,aAAA,CAAC,OAAO,aAAa;AAAA,IAC9B,KAAK;AACI,aAAA,CAAC,OAAO,OAAO;AAAA,IACxB,KAAK;AACI,aAAA,CAAC,QAAQ,UAAU;AAAA,IAC5B;AACS,aAAA,CAACA,GAAM,MAAS;AAAA,EAC3B;AACF,GAEMC,IAA6C;AAAA,EACjD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEMC,IAA6C;AAAA,EACjD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEMC,IAA0C;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEMC,IAA0C,CAAC,OAAO,SAAS,UAAU,QAAQ,QAAQ,MAAM,GAEpFC,IAAe,CAACf,GAAsBD,MAC7CA,MAAa,eACRC,MAAa,YAAYW,IAA2BC,IAGtDZ,MAAa,YAAYa,IAAwBC,GAG7CE,IAAmB,CAAChB,MACxBA,MAAa,YACf,CAAC,cAAc,iBAAiB,cAAc,IAC9C,CAAC,eAAe,iBAAiB,aAAa,GAGxCiB,IAAmB,CAACC,MACxB,CAAC,OAAO,SAAS,UAAU,aAAa,EAAE,SAASA,CAAO,GAGtDC,IAA0B,CAACC,MAC/B,OAAO,OAAOA,CAAO,EAAE,KAAK,CAASb,MAExC,IAACA,EAAM,CAAC,KACRA,EAAM,CAAC,KACP,UAAUA,EAAM,CAAC,MAChBA,EAAM,CAAC,EAAE,SAAS,UAAUA,EAAM,CAAC,EAAE,SAAS,YAMlD;"}
@@ -1,73 +1,81 @@
1
- import { jsx as A } from "react/jsx-runtime";
2
- import { memo as R, useRef as i, useEffect as n } from "react";
1
+ import { jsx as R } from "react/jsx-runtime";
2
+ import { memo as T, useRef as g, useCallback as $, useEffect as o } from "react";
3
3
  import { CueCanvasCore as V } from "./cue-canvas-core.js";
4
- import { getCanvasConfig as j, getCanvasSettings as l } from "./cue-canvas-helpers.js";
5
- import { CueCanvasWrapper as H } from "./cue-cavas-styled.js";
6
- import { useCueCanvasActions as I } from "./hooks/use-cue-canvas-actions.js";
7
- import P from "./hooks/use-height-extender.js";
8
- const W = R(
4
+ import { getCanvasConfig as j, getCanvasSettings as k } from "./cue-canvas-helpers.js";
5
+ import { CueCanvasWrapper as y } from "./cue-cavas-styled.js";
6
+ import { useCueCanvasActions as z } from "./hooks/use-cue-canvas-actions.js";
7
+ import H from "./hooks/use-height-extender.js";
8
+ const M = T(
9
9
  ({
10
- responseId: $,
10
+ responseId: w,
11
11
  width: u,
12
- height: r,
13
- canRender: a,
14
- onUpdateHeight: g,
15
- initialData: s,
12
+ height: t,
13
+ canRender: f,
14
+ onUpdateHeight: x,
15
+ initialData: a,
16
16
  onPublish: v,
17
- onSubscribe: m,
18
- userId: w,
19
- appended: p,
20
- canScribble: t,
21
- userType: x,
22
- renderAs: c = "canvas"
17
+ onSubscribe: p,
18
+ userId: A,
19
+ appended: i,
20
+ canScribble: r,
21
+ userType: l,
22
+ renderAs: s = "canvas"
23
23
  }) => {
24
- const C = i(null), { setActiveInstance: o } = I(), e = i(null);
25
- return P({
24
+ const C = g(null), { setActiveInstance: c, setActiveTool: d } = z(), e = g(null), E = $(
25
+ (n) => {
26
+ d(n);
27
+ },
28
+ [d]
29
+ ), I = $((n) => (console.log(n, "file to upload"), "https://cuemath-intel.s3.amazonaws.com/media/cuemath-whiteboard/2b0b9468-d6d4-11e8-9bfb-02420a000032:practice/Screenshot 2025-04-16 at 3.18.32 PM.png_b9079e2f-4ae6-439c-8edd-104dbfdc6100"), []);
30
+ return H({
26
31
  canvasElementRef: C,
27
32
  cueCanvasRef: e,
28
- canScribble: t
29
- }), n(() => {
30
- t && e.current && (e.current.resetViewPort(), o(e.current));
31
- }, [t, o]), n(() => {
32
- s && e.current && e.current.update(s);
33
- }, [s]), n(() => {
34
- r && e.current && e.current.resetViewPort();
35
- }, [r, u]), n(() => {
36
- if (a && p && !e.current) {
37
- const E = j(u, r, c), y = l(c), f = new V(
33
+ canScribble: r
34
+ }), o(() => {
35
+ r && e.current && (e.current.resetViewPort(), c(e.current));
36
+ }, [r, c]), o(() => {
37
+ a && e.current && e.current.update(a);
38
+ }, [a]), o(() => {
39
+ t && e.current && e.current.resetViewPort();
40
+ }, [t, u]), o(() => {
41
+ if (f && i && !e.current) {
42
+ const n = j(u, t, s, l), P = k(s), m = new V(
38
43
  v,
39
- m,
40
- g,
41
- r,
44
+ p,
45
+ E,
46
+ x,
47
+ I,
48
+ t,
49
+ A,
42
50
  w,
43
- $,
44
- x
51
+ l,
52
+ s
45
53
  );
46
54
  (async () => {
47
- await f.create({
55
+ await m.create({
48
56
  canvasElementRef: C,
49
- canvasConfig: E,
50
- canvasSetting: y,
51
- initialData: s
52
- }), e.current = f, t && o(f);
57
+ canvasConfig: n,
58
+ canvasSetting: P,
59
+ initialData: a
60
+ }), e.current = m, r && c(m);
53
61
  })();
54
62
  }
55
- }, [v, m, o, a, p]), n(() => () => {
63
+ }, [v, p, c, f, i]), o(() => () => {
56
64
  e.current && (e.current.destroy(), e.current = null);
57
- }, []), /* @__PURE__ */ A(
58
- H,
65
+ }, []), /* @__PURE__ */ R(
66
+ y,
59
67
  {
60
68
  ref: C,
61
69
  $width: u,
62
- $height: r,
63
- $canScribble: t,
64
- $canRender: a,
65
- $renderAs: c
70
+ $height: t,
71
+ $canScribble: r,
72
+ $canRender: f,
73
+ $renderAs: s
66
74
  }
67
75
  );
68
76
  }
69
- ), L = W;
77
+ ), K = M;
70
78
  export {
71
- L as default
79
+ K as default
72
80
  };
73
81
  //# sourceMappingURL=cue-canvas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cue-canvas.js","sources":["../../../src/features/cue-canvas/cue-canvas.tsx"],"sourcesContent":["import type { ICueCanvas } from './types/cue-canvas';\n\nimport { memo, useEffect, useRef } from 'react';\n\nimport { CueCanvasCore } from './cue-canvas-core';\nimport { getCanvasConfig, getCanvasSettings } from './cue-canvas-helpers';\nimport { CueCanvasWrapper } from './cue-cavas-styled';\nimport { useCueCanvasActions } from './hooks/use-cue-canvas-actions';\nimport useHeightExtender from './hooks/use-height-extender';\n\nconst CueCanvas: React.FC<ICueCanvas> = memo(\n ({\n responseId,\n width,\n height,\n canRender,\n onUpdateHeight,\n initialData,\n onPublish,\n onSubscribe,\n userId,\n appended,\n canScribble,\n userType,\n renderAs = 'canvas',\n }) => {\n const canvasElementRef = useRef<HTMLDivElement>(null);\n const { setActiveInstance: setActiveCueCanvas } = useCueCanvasActions();\n\n const cueCanvasRef = useRef<CueCanvasCore | null>(null);\n\n useHeightExtender({\n canvasElementRef,\n cueCanvasRef,\n canScribble,\n });\n\n useEffect(() => {\n if (canScribble && cueCanvasRef.current) {\n cueCanvasRef.current.resetViewPort();\n\n setActiveCueCanvas(cueCanvasRef.current);\n }\n }, [canScribble, setActiveCueCanvas]);\n\n useEffect(() => {\n if (initialData && cueCanvasRef.current) {\n cueCanvasRef.current.update(initialData);\n }\n }, [initialData]);\n\n useEffect(() => {\n if (height && cueCanvasRef.current) {\n cueCanvasRef.current.resetViewPort();\n }\n }, [height, width]);\n\n useEffect(() => {\n if (canRender && appended && !cueCanvasRef.current) {\n const canvasConfig = getCanvasConfig(width, height, renderAs);\n const canvasSetting = getCanvasSettings(renderAs);\n const cueCanvasCore = new CueCanvasCore(\n onPublish,\n onSubscribe,\n onUpdateHeight,\n height,\n userId,\n responseId,\n userType,\n );\n const createCueCanvas = async () => {\n await cueCanvasCore.create({\n canvasElementRef,\n canvasConfig,\n canvasSetting,\n initialData,\n });\n cueCanvasRef.current = cueCanvasCore;\n\n if (canScribble) {\n setActiveCueCanvas(cueCanvasCore);\n }\n };\n\n createCueCanvas();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [onPublish, onSubscribe, setActiveCueCanvas, canRender, appended]);\n\n useEffect(() => {\n return () => {\n if (cueCanvasRef.current) {\n cueCanvasRef.current.destroy();\n cueCanvasRef.current = null;\n }\n };\n }, []);\n\n return (\n <CueCanvasWrapper\n ref={canvasElementRef}\n $width={width}\n $height={height}\n $canScribble={canScribble}\n $canRender={canRender}\n $renderAs={renderAs}\n />\n );\n },\n);\n\nexport default CueCanvas;\n"],"names":["CueCanvas","memo","responseId","width","height","canRender","onUpdateHeight","initialData","onPublish","onSubscribe","userId","appended","canScribble","userType","renderAs","canvasElementRef","useRef","setActiveCueCanvas","useCueCanvasActions","cueCanvasRef","useHeightExtender","useEffect","canvasConfig","getCanvasConfig","canvasSetting","getCanvasSettings","cueCanvasCore","CueCanvasCore","jsx","CueCanvasWrapper","CueCanvas$1"],"mappings":";;;;;;;AAUA,MAAMA,IAAkCC;AAAA,EACtC,CAAC;AAAA,IACC,YAAAC;AAAA,IACA,OAAAC;AAAA,IACA,QAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,EAAA,MACP;AACE,UAAAC,IAAmBC,EAAuB,IAAI,GAC9C,EAAE,mBAAmBC,EAAmB,IAAIC,EAAoB,GAEhEC,IAAeH,EAA6B,IAAI;AAEpC,WAAAI,EAAA;AAAA,MAChB,kBAAAL;AAAA,MACA,cAAAI;AAAA,MACA,aAAAP;AAAA,IAAA,CACD,GAEDS,EAAU,MAAM;AACV,MAAAT,KAAeO,EAAa,YAC9BA,EAAa,QAAQ,iBAErBF,EAAmBE,EAAa,OAAO;AAAA,IACzC,GACC,CAACP,GAAaK,CAAkB,CAAC,GAEpCI,EAAU,MAAM;AACV,MAAAd,KAAeY,EAAa,WACjBA,EAAA,QAAQ,OAAOZ,CAAW;AAAA,IACzC,GACC,CAACA,CAAW,CAAC,GAEhBc,EAAU,MAAM;AACV,MAAAjB,KAAUe,EAAa,WACzBA,EAAa,QAAQ;IACvB,GACC,CAACf,GAAQD,CAAK,CAAC,GAElBkB,EAAU,MAAM;AACd,UAAIhB,KAAaM,KAAY,CAACQ,EAAa,SAAS;AAClD,cAAMG,IAAeC,EAAgBpB,GAAOC,GAAQU,CAAQ,GACtDU,IAAgBC,EAAkBX,CAAQ,GAC1CY,IAAgB,IAAIC;AAAA,UACxBnB;AAAA,UACAC;AAAA,UACAH;AAAA,UACAF;AAAA,UACAM;AAAA,UACAR;AAAA,UACAW;AAAA,QAAA;AAgBc,SAdQ,YAAY;AAClC,gBAAMa,EAAc,OAAO;AAAA,YACzB,kBAAAX;AAAA,YACA,cAAAO;AAAA,YACA,eAAAE;AAAA,YACA,aAAAjB;AAAA,UAAA,CACD,GACDY,EAAa,UAAUO,GAEnBd,KACFK,EAAmBS,CAAa;AAAA,QAClC;MAIJ;AAAA,IAAA,GAEC,CAAClB,GAAWC,GAAaQ,GAAoBZ,GAAWM,CAAQ,CAAC,GAEpEU,EAAU,MACD,MAAM;AACX,MAAIF,EAAa,YACfA,EAAa,QAAQ,WACrBA,EAAa,UAAU;AAAA,IACzB,GAED,CAAE,CAAA,GAGH,gBAAAS;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,KAAKd;AAAA,QACL,QAAQZ;AAAA,QACR,SAASC;AAAA,QACT,cAAcQ;AAAA,QACd,YAAYP;AAAA,QACZ,WAAWS;AAAA,MAAA;AAAA,IAAA;AAAA,EAGjB;AACF,GAEAgB,IAAe9B;"}
1
+ {"version":3,"file":"cue-canvas.js","sources":["../../../src/features/cue-canvas/cue-canvas.tsx"],"sourcesContent":["import type { ICueCanvas, TCueCanvasTool } from './types/cue-canvas';\n\nimport { memo, useCallback, useEffect, useRef } from 'react';\n\nimport { CueCanvasCore } from './cue-canvas-core';\nimport { getCanvasConfig, getCanvasSettings } from './cue-canvas-helpers';\nimport { CueCanvasWrapper } from './cue-cavas-styled';\nimport { useCueCanvasActions } from './hooks/use-cue-canvas-actions';\nimport useHeightExtender from './hooks/use-height-extender';\n\nconst CueCanvas: React.FC<ICueCanvas> = memo(\n ({\n responseId,\n width,\n height,\n canRender,\n onUpdateHeight,\n initialData,\n onPublish,\n onSubscribe,\n userId,\n appended,\n canScribble,\n userType,\n renderAs = 'canvas',\n }) => {\n const canvasElementRef = useRef<HTMLDivElement>(null);\n const { setActiveInstance: setActiveCueCanvas, setActiveTool } = useCueCanvasActions();\n\n const cueCanvasRef = useRef<CueCanvasCore | null>(null);\n\n const onUpdateActiveTool = useCallback(\n (tool: TCueCanvasTool) => {\n setActiveTool(tool);\n },\n [setActiveTool],\n );\n\n const uploadImageToS3 = useCallback((file: File) => {\n // Todo @ayushsinghal1998: Update this once upload api is ready\n\n // eslint-disable-next-line no-console\n console.log(file, 'file to upload');\n\n return 'https://cuemath-intel.s3.amazonaws.com/media/cuemath-whiteboard/2b0b9468-d6d4-11e8-9bfb-02420a000032:practice/Screenshot 2025-04-16 at 3.18.32 PM.png_b9079e2f-4ae6-439c-8edd-104dbfdc6100';\n }, []);\n\n useHeightExtender({\n canvasElementRef,\n cueCanvasRef,\n canScribble,\n });\n\n useEffect(() => {\n if (canScribble && cueCanvasRef.current) {\n cueCanvasRef.current.resetViewPort();\n\n setActiveCueCanvas(cueCanvasRef.current);\n }\n }, [canScribble, setActiveCueCanvas]);\n\n useEffect(() => {\n if (initialData && cueCanvasRef.current) {\n cueCanvasRef.current.update(initialData);\n }\n }, [initialData]);\n\n useEffect(() => {\n if (height && cueCanvasRef.current) {\n cueCanvasRef.current.resetViewPort();\n }\n }, [height, width]);\n\n useEffect(() => {\n if (canRender && appended && !cueCanvasRef.current) {\n const canvasConfig = getCanvasConfig(width, height, renderAs, userType);\n const canvasSetting = getCanvasSettings(renderAs);\n const cueCanvasCore = new CueCanvasCore(\n onPublish,\n onSubscribe,\n onUpdateActiveTool,\n onUpdateHeight,\n uploadImageToS3,\n height,\n userId,\n responseId,\n userType,\n renderAs,\n );\n const createCueCanvas = async () => {\n await cueCanvasCore.create({\n canvasElementRef,\n canvasConfig,\n canvasSetting,\n initialData,\n });\n cueCanvasRef.current = cueCanvasCore;\n\n if (canScribble) {\n setActiveCueCanvas(cueCanvasCore);\n }\n };\n\n createCueCanvas();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [onPublish, onSubscribe, setActiveCueCanvas, canRender, appended]);\n\n useEffect(() => {\n return () => {\n if (cueCanvasRef.current) {\n cueCanvasRef.current.destroy();\n cueCanvasRef.current = null;\n }\n };\n }, []);\n\n return (\n <CueCanvasWrapper\n ref={canvasElementRef}\n $width={width}\n $height={height}\n $canScribble={canScribble}\n $canRender={canRender}\n $renderAs={renderAs}\n />\n );\n },\n);\n\nexport default CueCanvas;\n"],"names":["CueCanvas","memo","responseId","width","height","canRender","onUpdateHeight","initialData","onPublish","onSubscribe","userId","appended","canScribble","userType","renderAs","canvasElementRef","useRef","setActiveCueCanvas","setActiveTool","useCueCanvasActions","cueCanvasRef","onUpdateActiveTool","useCallback","tool","uploadImageToS3","file","useHeightExtender","useEffect","canvasConfig","getCanvasConfig","canvasSetting","getCanvasSettings","cueCanvasCore","CueCanvasCore","jsx","CueCanvasWrapper","CueCanvas$1"],"mappings":";;;;;;;AAUA,MAAMA,IAAkCC;AAAA,EACtC,CAAC;AAAA,IACC,YAAAC;AAAA,IACA,OAAAC;AAAA,IACA,QAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,EAAA,MACP;AACE,UAAAC,IAAmBC,EAAuB,IAAI,GAC9C,EAAE,mBAAmBC,GAAoB,eAAAC,MAAkBC,EAAoB,GAE/EC,IAAeJ,EAA6B,IAAI,GAEhDK,IAAqBC;AAAA,MACzB,CAACC,MAAyB;AACxB,QAAAL,EAAcK,CAAI;AAAA,MACpB;AAAA,MACA,CAACL,CAAa;AAAA,IAAA,GAGVM,IAAkBF,EAAY,CAACG,OAI3B,QAAA,IAAIA,GAAM,gBAAgB,GAE3B,+LACN,CAAE,CAAA;AAEa,WAAAC,EAAA;AAAA,MAChB,kBAAAX;AAAA,MACA,cAAAK;AAAA,MACA,aAAAR;AAAA,IAAA,CACD,GAEDe,EAAU,MAAM;AACV,MAAAf,KAAeQ,EAAa,YAC9BA,EAAa,QAAQ,iBAErBH,EAAmBG,EAAa,OAAO;AAAA,IACzC,GACC,CAACR,GAAaK,CAAkB,CAAC,GAEpCU,EAAU,MAAM;AACV,MAAApB,KAAea,EAAa,WACjBA,EAAA,QAAQ,OAAOb,CAAW;AAAA,IACzC,GACC,CAACA,CAAW,CAAC,GAEhBoB,EAAU,MAAM;AACV,MAAAvB,KAAUgB,EAAa,WACzBA,EAAa,QAAQ;IACvB,GACC,CAAChB,GAAQD,CAAK,CAAC,GAElBwB,EAAU,MAAM;AACd,UAAItB,KAAaM,KAAY,CAACS,EAAa,SAAS;AAClD,cAAMQ,IAAeC,EAAgB1B,GAAOC,GAAQU,GAAUD,CAAQ,GAChEiB,IAAgBC,EAAkBjB,CAAQ,GAC1CkB,IAAgB,IAAIC;AAAA,UACxBzB;AAAA,UACAC;AAAA,UACAY;AAAA,UACAf;AAAA,UACAkB;AAAA,UACApB;AAAA,UACAM;AAAA,UACAR;AAAA,UACAW;AAAA,UACAC;AAAA,QAAA;AAgBc,SAdQ,YAAY;AAClC,gBAAMkB,EAAc,OAAO;AAAA,YACzB,kBAAAjB;AAAA,YACA,cAAAa;AAAA,YACA,eAAAE;AAAA,YACA,aAAAvB;AAAA,UAAA,CACD,GACDa,EAAa,UAAUY,GAEnBpB,KACFK,EAAmBe,CAAa;AAAA,QAClC;MAIJ;AAAA,IAAA,GAEC,CAACxB,GAAWC,GAAaQ,GAAoBZ,GAAWM,CAAQ,CAAC,GAEpEgB,EAAU,MACD,MAAM;AACX,MAAIP,EAAa,YACfA,EAAa,QAAQ,WACrBA,EAAa,UAAU;AAAA,IACzB,GAED,CAAE,CAAA,GAGH,gBAAAc;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,KAAKpB;AAAA,QACL,QAAQZ;AAAA,QACR,SAASC;AAAA,QACT,cAAcQ;AAAA,QACd,YAAYP;AAAA,QACZ,WAAWS;AAAA,MAAA;AAAA,IAAA;AAAA,EAGjB;AACF,GAEAsB,IAAepC;"}