@cuemath/leap 2.8.49 → 2.8.50-as2

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 (75) hide show
  1. package/dist/assets/line-icons/icons/clear-all.js +53 -0
  2. package/dist/assets/line-icons/icons/clear-all.js.map +1 -0
  3. package/dist/assets/line-icons/icons/download.js +48 -0
  4. package/dist/assets/line-icons/icons/download.js.map +1 -0
  5. package/dist/assets/line-icons/icons/equation.js +48 -0
  6. package/dist/assets/line-icons/icons/equation.js.map +1 -0
  7. package/dist/assets/line-icons/icons/grid-icon.js +42 -0
  8. package/dist/assets/line-icons/icons/grid-icon.js.map +1 -0
  9. package/dist/assets/line-icons/icons/pan.js +98 -0
  10. package/dist/assets/line-icons/icons/pan.js.map +1 -0
  11. package/dist/assets/line-icons/icons/square-checked-grid.js +25 -0
  12. package/dist/assets/line-icons/icons/square-checked-grid.js.map +1 -0
  13. package/dist/assets/line-icons/icons/square-dots.js +32 -0
  14. package/dist/assets/line-icons/icons/square-dots.js.map +1 -0
  15. package/dist/assets/line-icons/icons/square-grid.js +17 -0
  16. package/dist/assets/line-icons/icons/square-grid.js.map +1 -0
  17. package/dist/assets/line-icons/icons/square2-grid.js +13 -0
  18. package/dist/assets/line-icons/icons/square2-grid.js.map +1 -0
  19. package/dist/assets/line-icons/icons/text-icon.js +48 -0
  20. package/dist/assets/line-icons/icons/text-icon.js.map +1 -0
  21. package/dist/assets/line-icons/icons/tri-dots.js +27 -0
  22. package/dist/assets/line-icons/icons/tri-dots.js.map +1 -0
  23. package/dist/assets/line-icons/icons/tri-grid.js +27 -0
  24. package/dist/assets/line-icons/icons/tri-grid.js.map +1 -0
  25. package/dist/assets/line-icons/icons/tri2-dots.js +27 -0
  26. package/dist/assets/line-icons/icons/tri2-dots.js.map +1 -0
  27. package/dist/assets/line-icons/icons/tri2-grid.js +27 -0
  28. package/dist/assets/line-icons/icons/tri2-grid.js.map +1 -0
  29. package/dist/assets/line-icons/icons/upload.js +48 -0
  30. package/dist/assets/line-icons/icons/upload.js.map +1 -0
  31. package/dist/assets/line-icons/icons/zoom-in.js +58 -0
  32. package/dist/assets/line-icons/icons/zoom-in.js.map +1 -0
  33. package/dist/assets/line-icons/icons/zoom-out.js +48 -0
  34. package/dist/assets/line-icons/icons/zoom-out.js.map +1 -0
  35. package/dist/features/cue-canvas/cue-canvas-core.js +138 -49
  36. package/dist/features/cue-canvas/cue-canvas-core.js.map +1 -1
  37. package/dist/features/cue-canvas/cue-canvas-helpers.js +88 -29
  38. package/dist/features/cue-canvas/cue-canvas-helpers.js.map +1 -1
  39. package/dist/features/cue-canvas/cue-canvas.js +57 -49
  40. package/dist/features/cue-canvas/cue-canvas.js.map +1 -1
  41. package/dist/features/cue-canvas/cue-cavas-styled.js +96 -59
  42. package/dist/features/cue-canvas/cue-cavas-styled.js.map +1 -1
  43. package/dist/features/cue-canvas/toolbar/color-palette.js +49 -0
  44. package/dist/features/cue-canvas/toolbar/color-palette.js.map +1 -0
  45. package/dist/features/cue-canvas/toolbar/color-picker-menu.js +62 -0
  46. package/dist/features/cue-canvas/toolbar/color-picker-menu.js.map +1 -0
  47. package/dist/features/cue-canvas/toolbar/grid-menu.js +62 -0
  48. package/dist/features/cue-canvas/toolbar/grid-menu.js.map +1 -0
  49. package/dist/features/cue-canvas/toolbar/icon-map.js +58 -0
  50. package/dist/features/cue-canvas/toolbar/icon-map.js.map +1 -0
  51. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js +56 -0
  52. package/dist/features/cue-canvas/toolbar/pen-tool-menu.js.map +1 -0
  53. package/dist/features/cue-canvas/toolbar/tool.js +27 -0
  54. package/dist/features/cue-canvas/toolbar/tool.js.map +1 -0
  55. package/dist/features/cue-canvas/toolbar/toolbar.js +18 -87
  56. package/dist/features/cue-canvas/toolbar/toolbar.js.map +1 -1
  57. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js +16 -0
  58. package/dist/features/cue-canvas/toolbar/whiteboard-toolbar.js.map +1 -0
  59. package/dist/features/trial-session/comps/session-report/session-report.js +41 -41
  60. package/dist/features/trial-session/comps/session-report/session-report.js.map +1 -1
  61. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js +7 -7
  62. package/dist/features/worksheet/worksheet/worksheet-action-bar/worksheet-action-bar.js.map +1 -1
  63. package/dist/index.d.ts +13 -1
  64. package/dist/static/fonts/Athletics-Black.woff +0 -0
  65. package/dist/static/fonts/Athletics-Bold.woff +0 -0
  66. package/dist/static/fonts/Athletics-Light.woff +0 -0
  67. package/dist/static/fonts/Athletics-Medium.woff +0 -0
  68. package/dist/static/fonts/Athletics-Regular.woff +0 -0
  69. package/dist/static/fonts/untitled-sans-medium.woff +0 -0
  70. package/dist/static/fonts/untitled-sans-medium.woff2 +0 -0
  71. package/dist/static/fonts/untitled-sans-regular.woff +0 -0
  72. package/dist/static/fonts/untitled-sans-regular.woff2 +0 -0
  73. package/package.json +2 -2
  74. package/dist/features/cue-canvas/toolbar/color-pallete.js +0 -49
  75. 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;"}
@@ -1,86 +1,95 @@
1
- import s, { css as e } from "styled-components";
1
+ import s, { css as n } from "styled-components";
2
2
  import c from "../../assets/line-icons/icons/check.js";
3
- import a from "../../assets/line-icons/icons/highlighter.js";
4
- import h from "../../assets/line-icons/icons/pencil.js";
5
- import u from "../../assets/line-icons/icons/ruler.js";
6
- import d from "../../assets/line-icons/icons/sketch.js";
3
+ import d from "../../assets/line-icons/icons/down.js";
4
+ import h from "../../assets/line-icons/icons/highlighter.js";
5
+ import u from "../../assets/line-icons/icons/pencil.js";
6
+ import f from "../../assets/line-icons/icons/ruler.js";
7
+ import g from "../../assets/line-icons/icons/sketch.js";
8
+ import $ from "../../assets/line-icons/icons/undo.js";
7
9
  import p from "../ui/layout/flex-view.js";
8
- import { CANVAS_COLORS as n } from "./constants/constants.js";
9
- const C = s(h)(({
10
+ import { CANVAS_COLORS as a } from "./constants/constants.js";
11
+ const b = s(u)(({
10
12
  theme: r,
11
13
  $active: o,
12
- $activeColor: t
14
+ $activeColor: t,
15
+ $isWhiteBoard: l
13
16
  }) => {
14
- const { colors: l } = r, i = o ? n[t] : l.REAL_BLACK_50;
15
- return e`
17
+ const { colors: e } = r, i = o ? a[t] : e.REAL_BLACK_50;
18
+ return n`
16
19
  position: relative;
17
20
  transition: top 0.3s ease-in-out;
18
- top: ${o ? "0px" : "8px"};
21
+ top: ${o && !l ? "0px" : "8px"};
19
22
  cursor: ${o ? "auto" : "pointer"};
20
23
  .pencil-dark-shade {
21
- fill: ${o ? i : l.GREY_3};
24
+ fill: ${o ? i : e.GREY_3};
22
25
  }
23
26
 
24
27
  .pencil-light-shade {
25
- fill: ${o ? i : l.GREY_2};
28
+ fill: ${o ? i : e.GREY_2};
26
29
  opacity: ${o ? 0.3 : 1};
27
30
  }
28
31
 
29
- ${!o && e`
32
+ ${!o && n`
30
33
  &:hover {
31
34
  .pencil-dark-shade {
32
- fill: ${l.GREY_4};
35
+ fill: ${e.GREY_4};
33
36
  }
34
37
  .pencil-light-shade {
35
- fill: ${l.GREY_2};
38
+ fill: ${e.GREY_2};
36
39
  }
37
40
  }
38
41
  `}
39
42
  `;
40
- }), k = s(u)(({ theme: r, $active: o, $activeColor: t }) => {
41
- const { colors: l } = r, i = o ? n[t] : l.REAL_BLACK_50;
42
- return e`
43
+ }), I = s(f)(({
44
+ theme: r,
45
+ $active: o,
46
+ $activeColor: t,
47
+ $isWhiteBoard: l
48
+ }) => {
49
+ const { colors: e } = r, i = o ? a[t] : e.REAL_BLACK_50;
50
+ return n`
43
51
  cursor: ${o ? "auto" : "pointer"};
44
52
  position: relative;
45
53
  transition: top 0.3s ease-in-out;
46
- top: ${o ? "0px" : "8px"};
54
+ top: ${o && !l ? "0px" : "8px"};
47
55
 
48
56
  .ruler-rect-color {
49
- fill: ${o ? i : l.GREY_3};
57
+ fill: ${o ? i : e.GREY_3};
50
58
  }
51
59
 
52
60
  .ruler-stripe-base {
53
- fill: ${o ? i : l.GREY_2};
61
+ fill: ${o ? i : e.GREY_2};
54
62
  opacity: ${o ? 0.2 : 1};
55
63
  }
56
64
 
57
65
  .ruler-small-stripe {
58
- fill: ${l.REAL_BLACK};
66
+ fill: ${e.REAL_BLACK};
59
67
  }
60
68
 
61
- ${!o && e`
69
+ ${!o && n`
62
70
  &:hover {
63
71
  .ruler-rect-color {
64
- fill: ${l.GREY_4};
72
+ fill: ${e.GREY_4};
65
73
  }
66
74
  .ruler-stripe-base {
67
- fill: ${l.GREY_3};
75
+ fill: ${e.GREY_3};
68
76
  }
69
77
  }
70
78
  `}
71
79
  `;
72
- }), E = s(a)(({
80
+ }), B = s(h)(({
73
81
  $active: r,
74
82
  theme: o,
75
- $activeColor: t
83
+ $activeColor: t,
84
+ $isWhiteBoard: l
76
85
  }) => {
77
- const { colors: l } = o, i = r ? n[t] : l.REAL_BLACK_50;
78
- return e`
86
+ const { colors: e } = o, i = r ? a[t] : e.REAL_BLACK_50;
87
+ return n`
79
88
  cursor: ${r ? "auto" : "pointer"};
80
89
  position: relative;
81
90
  transition: top 0.3s ease-in-out;
82
- top: ${r ? "0px" : "8px"};
83
- ${!r && e`
91
+ top: ${r && !l ? "0px" : "8px"};
92
+ ${!r && n`
84
93
  &:hover {
85
94
  .highlighter-tip {
86
95
  fill: ${o.colors.BLACK};
@@ -96,7 +105,7 @@ const C = s(h)(({
96
105
  }
97
106
  `}
98
107
 
99
- ${r && e`
108
+ ${r && n`
100
109
  .highlighter-tip {
101
110
  fill: ${i};
102
111
  }
@@ -112,19 +121,20 @@ const C = s(h)(({
112
121
  }
113
122
  `}
114
123
  `;
115
- }), R = s(d)(({
124
+ }), K = s(g)(({
116
125
  $active: r,
117
126
  theme: o,
118
- $activeColor: t
127
+ $activeColor: t,
128
+ $isWhiteBoard: l
119
129
  }) => {
120
- const { colors: l } = o, i = r ? n[t] : l.REAL_BLACK_50;
121
- return e`
130
+ const { colors: e } = o, i = r ? a[t] : e.REAL_BLACK_50;
131
+ return n`
122
132
  cursor: ${r ? "auto" : "pointer"};
123
133
  position: relative;
124
134
  transition: top 0.3s ease-in-out;
125
- top: ${r ? "0px" : "8px"};
135
+ top: ${r && !l ? "0px" : "8px"};
126
136
 
127
- ${!r && e`
137
+ ${!r && n`
128
138
  &:hover {
129
139
  .pen-tip {
130
140
  fill: ${o.colors.BLACK};
@@ -140,7 +150,7 @@ const C = s(h)(({
140
150
  }
141
151
  `}
142
152
 
143
- ${r && e`
153
+ ${r && n`
144
154
  cursor: ${r ? "auto" : "pointer"};
145
155
  .pen-tip {
146
156
  fill: ${i};
@@ -157,12 +167,12 @@ const C = s(h)(({
157
167
  }
158
168
  `}
159
169
  `;
160
- }), m = s(p)(({
170
+ }), W = s(p)(({
161
171
  theme: r,
162
172
  $active: o
163
173
  }) => {
164
174
  const { colors: t } = r;
165
- return e`
175
+ return n`
166
176
  cursor: ${o ? "auto" : "pointer"};
167
177
  width: 32px;
168
178
  height: 32px;
@@ -176,13 +186,13 @@ const C = s(h)(({
176
186
  &:hover {
177
187
  border: 1px solid ${t.REAL_BLACK};
178
188
  }
179
- ${!o && e`
189
+ ${!o && n`
180
190
  &:hover {
181
191
  border: 1px solid ${t.REAL_BLACK};
182
192
  }
183
193
  `}
184
194
 
185
- ${o && e`
195
+ ${o && n`
186
196
  cursor: auto;
187
197
  background: ${t.BLACK};
188
198
  svg {
@@ -200,11 +210,13 @@ const C = s(h)(({
200
210
  }
201
211
  `}
202
212
  `;
203
- }), B = s(c)`
213
+ }), G = s(c)`
204
214
  path {
205
215
  stroke: ${"white"};
206
216
  }
207
- `, K = s(p)`
217
+ `, S = s($)`
218
+ transform: scaleX(-1);
219
+ `, Y = s(p)`
208
220
  position: absolute;
209
221
  display: flex;
210
222
  justify-content: center;
@@ -212,7 +224,7 @@ const C = s(h)(({
212
224
  transition:
213
225
  opacity 0.5s ease,
214
226
  transform 0.5s ease;
215
- `, b = s(p)(
227
+ `, w = s(p)(
216
228
  ({ $canScribble: r, $canRender: o, $renderAs: t }) => `
217
229
  display: ${o ? "block" : "none"};
218
230
  opacity: ${r ? 1 : 0.5};
@@ -225,20 +237,45 @@ const C = s(h)(({
225
237
  `}
226
238
 
227
239
  `
228
- ), I = s(p)(
240
+ ), H = s(p)(
229
241
  ({ $color: r }) => `
230
- background: ${n[r]};
242
+ background: ${a[r]};
231
243
  `
232
- );
244
+ ), P = s(d)`
245
+ pointer-events: none;
246
+ transition: transform 0.5s ease;
247
+ transform: ${({ $isAnimating: r }) => r ? "rotate(180deg)" : "rotate(0deg)"};
248
+ `, T = s(p)`
249
+ overflow: hidden;
250
+ border-right: 1px solid ${({ theme: r }) => r.colors.GREY_1};
251
+ `, j = s(p)`
252
+ position: absolute;
253
+ padding: 8px 8px 0 8px;
254
+ overflow: hidden;
255
+ bottom: 58px;
256
+ border-top-left-radius: 8px;
257
+ border-top-right-radius: 8px;
258
+ transition:
259
+ opacity 0.5s ease,
260
+ transform 0.5s ease;
261
+
262
+ :hover {
263
+ cursor: pointer;
264
+ }
265
+ `;
233
266
  export {
234
- I as ColorPicker,
235
- b as CueCanvasWrapper,
236
- K as PalleteWrapper,
237
- B as StyledCheckIcon,
238
- E as StyledHighlighterWrapper,
239
- C as StyledPencilIcon,
240
- k as StyledRulerIcon,
241
- R as StyledSketchWrapper,
242
- m as StyledWrapper
267
+ H as ColorPicker,
268
+ w as CueCanvasWrapper,
269
+ j as MenuWrapper,
270
+ Y as PaletteWrapper,
271
+ T as PenIconWrapper,
272
+ S as RedoIcon,
273
+ G as StyledCheckIcon,
274
+ P as StyledDownIcon,
275
+ B as StyledHighlighterWrapper,
276
+ b as StyledPencilIcon,
277
+ I as StyledRulerIcon,
278
+ K as StyledSketchWrapper,
279
+ W as StyledWrapper
243
280
  };
244
281
  //# sourceMappingURL=cue-cavas-styled.js.map