qureal-editor 1.0.28 → 1.0.30

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.
package/dist/index.es.js CHANGED
@@ -138,7 +138,7 @@ var QurealiFrame$1 = React.memo(QurealiFrame, function () {
138
138
  return true;
139
139
  });
140
140
 
141
- var share = function () {
141
+ var share$1 = function () {
142
142
  var _ref = asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(data) {
143
143
  return regeneratorRuntime.wrap(function _callee$(_context) {
144
144
  while (1) {
@@ -185,8 +185,6 @@ var share = function () {
185
185
  };
186
186
  }();
187
187
 
188
- var ALLOWED_ORIGINS = ["https://show.qureal.com", "http://localhost:3201"];
189
-
190
188
  function QurealViewer(_ref) {
191
189
  var _ref$slug = _ref.slug,
192
190
  slug = _ref$slug === undefined ? "qi_sample" : _ref$slug,
@@ -274,25 +272,25 @@ function QurealViewer(_ref) {
274
272
 
275
273
  useEffect(function () {
276
274
  var handler = function handler(ev) {
277
- if (ALLOWED_ORIGINS.includes(ev.origin) && _typeof(ev.data) === "object") {
278
- switch (ev.data.event_type) {
279
- case "WHOAMI":
280
- onInit(ev.data.data);
281
- break;
282
- case "STATUS_UPDATE":
283
- onStatusUpdate(ev.data.data);
284
- break;
285
- case "FORM_SUBMIT":
286
- onFormSubmit(ev.data.data);
287
- break;
288
- case "SHARE":
289
- share(ev.data.data);
290
- break;
291
- default:
292
- console.log("No event type found");
293
- console.log(ev.data);
294
- }
275
+ // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === "object") {
276
+ switch (ev.data.event_type) {
277
+ case "WHOAMI":
278
+ onInit(ev.data.data);
279
+ break;
280
+ case "STATUS_UPDATE":
281
+ onStatusUpdate(ev.data.data);
282
+ break;
283
+ case "FORM_SUBMIT":
284
+ onFormSubmit(ev.data.data);
285
+ break;
286
+ case "SHARE":
287
+ share$1(ev.data.data);
288
+ break;
289
+ default:
290
+ console.log("No event type found");
291
+ console.log(ev.data);
295
292
  }
293
+ // }
296
294
  };
297
295
 
298
296
  window.addEventListener("message", handler);
@@ -353,9 +351,105 @@ function useQurealActions() {
353
351
  function QurealCollection(_ref) {
354
352
  var _ref$collection_id = _ref.collection_id,
355
353
  collection_id = _ref$collection_id === undefined ? "934ffe42-1d0a-4fa0-ad23-60b066c0b9ab" : _ref$collection_id,
354
+ _ref$prefill = _ref.prefill,
355
+ prefill = _ref$prefill === undefined ? {} : _ref$prefill,
356
356
  _ref$style = _ref.style,
357
- style = _ref$style === undefined ? {} : _ref$style;
357
+ style = _ref$style === undefined ? {} : _ref$style,
358
+ _ref$actionRef = _ref.actionRef,
359
+ actionRef = _ref$actionRef === undefined ? {} : _ref$actionRef,
360
+ _ref$organization = _ref.organization,
361
+ organization = _ref$organization === undefined ? null : _ref$organization,
362
+ _ref$person = _ref.person,
363
+ person = _ref$person === undefined ? null : _ref$person,
364
+ _ref$background = _ref.background,
365
+ _ref$fit = _ref.fit,
366
+ _ref$onInit = _ref.onInit,
367
+ onInit = _ref$onInit === undefined ? function () {} : _ref$onInit,
368
+ _ref$onStatusUpdate = _ref.onStatusUpdate,
369
+ onStatusUpdate = _ref$onStatusUpdate === undefined ? function () {} : _ref$onStatusUpdate;
370
+
371
+
372
+ var sendToIFrame = function sendToIFrame(msg) {
373
+ console.log("Sending data to iFrame");
374
+ var qureal_element = document.getElementById("qureal_iframe");
375
+ var qureal_window = qureal_element ? qureal_element.contentWindow : null;
376
+ if (qureal_window) {
377
+ qureal_window.postMessage(msg, "*");
378
+ console.log("Data sent to iframe");
379
+ }
380
+ };
381
+
382
+ // useEffect(() => {
383
+ // sendToIFrame({
384
+ // message_type: "OPEN_CREATION",
385
+ // data: {
386
+ // slug: slug,
387
+ // preview: preview,
388
+ // prefill: prefill,
389
+ // ictx: {
390
+ // organization: organization,
391
+ // person: person
392
+ // }
393
+ // }
394
+ // })
395
+ // }, [slug, preview])
396
+
397
+ useEffect(function () {
398
+ sendToIFrame({
399
+ message_type: "PREFILL",
400
+ data: {
401
+ prefill: prefill
402
+ }
403
+ });
404
+ }, [prefill]);
405
+
406
+ useEffect(function () {
407
+ if (["DOWNLOAD", "SHARE"].includes(actionRef.type)) {
408
+ sendToIFrame({
409
+ message_type: actionRef.type,
410
+ data: actionRef.data || {}
411
+ });
412
+ }
413
+ }, [actionRef]);
414
+
415
+ useEffect(function () {
416
+ sendToIFrame({
417
+ message_type: "SET_ICTX",
418
+ data: {
419
+ organization: organization,
420
+ person: person
421
+ }
422
+ });
423
+ }, [organization, person]);
424
+
425
+ useEffect(function () {
426
+ var handler = function handler(ev) {
427
+ // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === "object") {
428
+ switch (ev.data.event_type) {
429
+ case "WHOAMI":
430
+ onInit(ev.data.data);
431
+ break;
432
+ case "STATUS_UPDATE":
433
+ onStatusUpdate(ev.data.data);
434
+ break;
435
+ case "FORM_SUBMIT":
436
+ onFormSubmit(ev.data.data);
437
+ break;
438
+ case "SHARE":
439
+ share(ev.data.data);
440
+ break;
441
+ default:
442
+ console.log("No event type found");
443
+ console.log(ev.data);
444
+ }
445
+ // }
446
+ };
358
447
 
448
+ window.addEventListener("message", handler);
449
+ return function () {
450
+ return window.removeEventListener("message", handler);
451
+ };
452
+ }, []);
359
453
 
360
454
  return React.createElement("iframe", {
361
455
  id: "qureal_iframe",
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js","../src/QurealCollection.js"],"sourcesContent":["import React, { Fragment, useEffect, useRef } from \"react\";\n\n\nfunction QurealiFrame({ slug, preview, query, type = \"creation\", creation_type = \"singlepage\", style = {} }) {\n\n let prefix = \"ts\";\n if (creation_type === \"document\") {\n if (type === \"creation\") {\n prefix = \"d\";\n } else {\n prefix = \"td\";\n }\n } else {\n if (type === \"creation\") {\n prefix = \"embed\";\n }\n }\n\n return (\n <Fragment>\n <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n // src={`http://localhost:3201/embed/${creation_slug}`}\n // src={type === \"creation\" ? `https://show.qureal.com/embed/${slug}?${preview ? \"preview&\" : \"\"}${query}` : `https://show.qureal.com/ts/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n // src={`https://show.qureal.com/${type === \"creation\" ? \"embed\" : \"ts\"}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n src={`https://show.qureal.com/${prefix}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n </Fragment>\n );\n}\n\n// export default QurealiFrame;\nexport default React.memo(QurealiFrame, () => true)\n","export async function share(data) {\n try {\n if (navigator.share && navigator.canShare(data)) {\n await navigator.share(data);\n } else {\n console.error(\"Can't share\");\n alert(\"Share only available for mobile devices\")\n }\n } catch (err) {\n console.error(err);\n }\n}","import React, { Fragment, useEffect, useRef } from \"react\";\nimport QurealiFrame from \"./QurealiFrame\";\nimport { share } from \"./utils\";\n\nconst ALLOWED_ORIGINS = [\"https://show.qureal.com\", \"http://localhost:3201\"];\n\nfunction QurealViewer({\n slug = \"qi_sample\",\n preview = false,\n prefill = {},\n type = \"creation\", // creation or template \n creation_type = \"singlepage\",\n onFormSubmit = () => { },\n style = {},\n actionRef = {},\n organization = null,\n person = null,\n background = null,\n fit = false,\n onInit = () => { },\n onStatusUpdate = () => { },\n}) {\n\n const sendToIFrame = (msg) => {\n console.log(\"Sending data to iFrame\")\n const qureal_element = document.getElementById(\"qureal_iframe\");\n\n const qureal_window = qureal_element ? qureal_element.contentWindow : null;\n if (qureal_window) {\n qureal_window.postMessage(msg, \"*\");\n console.log(\"Data sent to iframe\")\n }\n }\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"OPEN_CREATION\",\n data: {\n slug: slug,\n preview: preview,\n prefill: prefill,\n ictx: {\n organization: organization,\n person: person\n }\n }\n })\n }, [slug, preview])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"PREFILL\",\n data: {\n prefill: prefill\n }\n })\n }, [prefill])\n\n useEffect(() => {\n if ([\"DOWNLOAD\", \"SHARE\"].includes(actionRef.type)) {\n sendToIFrame({\n message_type: actionRef.type,\n data: actionRef.data || {}\n })\n }\n }, [actionRef])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"SET_ICTX\",\n data: {\n organization: organization,\n person: person\n }\n })\n }, [organization, person])\n\n useEffect(() => {\n const handler = (ev) => {\n if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === \"object\") {\n switch (ev.data.event_type) {\n case \"WHOAMI\":\n onInit(ev.data.data);\n break;\n case \"STATUS_UPDATE\":\n onStatusUpdate(ev.data.data);\n break;\n case \"FORM_SUBMIT\":\n onFormSubmit(ev.data.data);\n break;\n case \"SHARE\":\n share(ev.data.data);\n break;\n default:\n console.log(\"No event type found\");\n console.log(ev.data);\n }\n }\n };\n\n window.addEventListener(\"message\", handler);\n return () => window.removeEventListener(\"message\", handler);\n }, []);\n\n return (\n <QurealiFrame\n slug={slug}\n preview={preview}\n query={`${queryfy(prefill)}${organization ? `&qi_organization=${organization}` : \"\"}${person ? `&qi_person=${person}` : \"\"}${background ? `&qi_background=${background}` : \"\"}${fit ? \"&qi_fit\" : \"\"}`}\n type={type}\n creation_type={creation_type}\n style={style}\n />\n );\n}\n\n// export default QurealiFrame;\nexport default QurealViewer\n\n\nfunction queryfy(obj) {\n const buildQuery = (prefix, obj) => {\n return Object.keys(obj)\n .map(key => {\n const value = obj[key];\n const prefixedKey = prefix ? `${prefix}.${key}` : key;\n if (typeof value === 'object' && value !== null) {\n return buildQuery(prefixedKey, value);\n } else {\n return `${prefixedKey}=${value}`;\n }\n })\n .join(\"&\");\n };\n\n return buildQuery(\"\", obj);\n}","import { useState } from \"react\"\n\nfunction useQurealActions() {\n const [actionRef, setActionRef] = useState({});\n\n function download() {\n setActionRef({\n type: \"DOWNLOAD\",\n data: {}\n })\n }\n\n\n function share() {\n setActionRef({\n type: \"SHARE\",\n data: {}\n })\n }\n\n function setPreset() {\n\n }\n\n return { actionRef, download, share }\n}\n\nexport default useQurealActions;","import React from \"react\";\n\nfunction QurealCollection({ collection_id = \"934ffe42-1d0a-4fa0-ad23-60b066c0b9ab\", style = {} }) {\n\n\n return <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n src={`https://show.qureal.com/embedlist/${collection_id}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n}\n\nexport default QurealCollection;"],"names":["QurealiFrame","slug","preview","query","type","creation_type","style","prefix","React","memo","data","navigator","share","canShare","error","ALLOWED_ORIGINS","QurealViewer","prefill","onFormSubmit","actionRef","organization","person","background","fit","onInit","onStatusUpdate","sendToIFrame","msg","log","qureal_element","document","getElementById","qureal_window","contentWindow","postMessage","includes","handler","ev","origin","babelHelpers.typeof","event_type","addEventListener","window","removeEventListener","queryfy","obj","buildQuery","Object","keys","map","value","key","prefixedKey","join","useQurealActions","useState","setActionRef","download","QurealCollection","collection_id"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js","../src/QurealCollection.js"],"sourcesContent":["import React, { Fragment, useEffect, useRef } from \"react\";\n\n\nfunction QurealiFrame({ slug, preview, query, type = \"creation\", creation_type = \"singlepage\", style = {} }) {\n\n let prefix = \"ts\";\n if (creation_type === \"document\") {\n if (type === \"creation\") {\n prefix = \"d\";\n } else {\n prefix = \"td\";\n }\n } else {\n if (type === \"creation\") {\n prefix = \"embed\";\n }\n }\n\n return (\n <Fragment>\n <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n // src={`http://localhost:3201/embed/${creation_slug}`}\n // src={type === \"creation\" ? `https://show.qureal.com/embed/${slug}?${preview ? \"preview&\" : \"\"}${query}` : `https://show.qureal.com/ts/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n // src={`https://show.qureal.com/${type === \"creation\" ? \"embed\" : \"ts\"}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n src={`https://show.qureal.com/${prefix}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n </Fragment>\n );\n}\n\n// export default QurealiFrame;\nexport default React.memo(QurealiFrame, () => true)\n","export async function share(data) {\n try {\n if (navigator.share && navigator.canShare(data)) {\n await navigator.share(data);\n } else {\n console.error(\"Can't share\");\n alert(\"Share only available for mobile devices\")\n }\n } catch (err) {\n console.error(err);\n }\n}","import React, { Fragment, useEffect, useRef } from \"react\";\nimport QurealiFrame from \"./QurealiFrame\";\nimport { share } from \"./utils\";\n\nconst ALLOWED_ORIGINS = [\"https://show.qureal.com\", \"http://localhost:3201\"];\n\nfunction QurealViewer({\n slug = \"qi_sample\",\n preview = false,\n prefill = {},\n type = \"creation\", // creation or template \n creation_type = \"singlepage\",\n onFormSubmit = () => { },\n style = {},\n actionRef = {},\n organization = null,\n person = null,\n background = null,\n fit = false,\n onInit = () => { },\n onStatusUpdate = () => { },\n}) {\n\n const sendToIFrame = (msg) => {\n console.log(\"Sending data to iFrame\")\n const qureal_element = document.getElementById(\"qureal_iframe\");\n\n const qureal_window = qureal_element ? qureal_element.contentWindow : null;\n if (qureal_window) {\n qureal_window.postMessage(msg, \"*\");\n console.log(\"Data sent to iframe\")\n }\n }\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"OPEN_CREATION\",\n data: {\n slug: slug,\n preview: preview,\n prefill: prefill,\n ictx: {\n organization: organization,\n person: person\n }\n }\n })\n }, [slug, preview])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"PREFILL\",\n data: {\n prefill: prefill\n }\n })\n }, [prefill])\n\n useEffect(() => {\n if ([\"DOWNLOAD\", \"SHARE\"].includes(actionRef.type)) {\n sendToIFrame({\n message_type: actionRef.type,\n data: actionRef.data || {}\n })\n }\n }, [actionRef])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"SET_ICTX\",\n data: {\n organization: organization,\n person: person\n }\n })\n }, [organization, person])\n\n useEffect(() => {\n const handler = (ev) => {\n // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === \"object\") {\n switch (ev.data.event_type) {\n case \"WHOAMI\":\n onInit(ev.data.data);\n break;\n case \"STATUS_UPDATE\":\n onStatusUpdate(ev.data.data);\n break;\n case \"FORM_SUBMIT\":\n onFormSubmit(ev.data.data);\n break;\n case \"SHARE\":\n share(ev.data.data);\n break;\n default:\n console.log(\"No event type found\");\n console.log(ev.data);\n }\n // }\n };\n\n window.addEventListener(\"message\", handler);\n return () => window.removeEventListener(\"message\", handler);\n }, []);\n\n return (\n <QurealiFrame\n slug={slug}\n preview={preview}\n query={`${queryfy(prefill)}${organization ? `&qi_organization=${organization}` : \"\"}${person ? `&qi_person=${person}` : \"\"}${background ? `&qi_background=${background}` : \"\"}${fit ? \"&qi_fit\" : \"\"}`}\n type={type}\n creation_type={creation_type}\n style={style}\n />\n );\n}\n\n// export default QurealiFrame;\nexport default QurealViewer\n\n\nfunction queryfy(obj) {\n const buildQuery = (prefix, obj) => {\n return Object.keys(obj)\n .map(key => {\n const value = obj[key];\n const prefixedKey = prefix ? `${prefix}.${key}` : key;\n if (typeof value === 'object' && value !== null) {\n return buildQuery(prefixedKey, value);\n } else {\n return `${prefixedKey}=${value}`;\n }\n })\n .join(\"&\");\n };\n\n return buildQuery(\"\", obj);\n}","import { useState } from \"react\"\n\nfunction useQurealActions() {\n const [actionRef, setActionRef] = useState({});\n\n function download() {\n setActionRef({\n type: \"DOWNLOAD\",\n data: {}\n })\n }\n\n\n function share() {\n setActionRef({\n type: \"SHARE\",\n data: {}\n })\n }\n\n function setPreset() {\n\n }\n\n return { actionRef, download, share }\n}\n\nexport default useQurealActions;","import React, { useEffect } from \"react\";\n\nconst ALLOWED_ORIGINS = [\"https://show.qureal.com\", \"http://localhost:3201\"];\n\n\nfunction QurealCollection({\n collection_id = \"934ffe42-1d0a-4fa0-ad23-60b066c0b9ab\",\n // preview = false,\n prefill = {},\n // onFormSubmit = () => { },\n style = {},\n actionRef = {},\n organization = null,\n person = null,\n background = null,\n fit = false,\n onInit = () => { },\n onStatusUpdate = () => { },\n}) {\n\n const sendToIFrame = (msg) => {\n console.log(\"Sending data to iFrame\")\n const qureal_element = document.getElementById(\"qureal_iframe\");\n const qureal_window = qureal_element ? qureal_element.contentWindow : null;\n if (qureal_window) {\n qureal_window.postMessage(msg, \"*\");\n console.log(\"Data sent to iframe\")\n }\n }\n\n // useEffect(() => {\n // sendToIFrame({\n // message_type: \"OPEN_CREATION\",\n // data: {\n // slug: slug,\n // preview: preview,\n // prefill: prefill,\n // ictx: {\n // organization: organization,\n // person: person\n // }\n // }\n // })\n // }, [slug, preview])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"PREFILL\",\n data: {\n prefill: prefill\n }\n })\n }, [prefill])\n\n useEffect(() => {\n if ([\"DOWNLOAD\", \"SHARE\"].includes(actionRef.type)) {\n sendToIFrame({\n message_type: actionRef.type,\n data: actionRef.data || {}\n })\n }\n }, [actionRef])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"SET_ICTX\",\n data: {\n organization: organization,\n person: person\n }\n })\n }, [organization, person])\n\n useEffect(() => {\n const handler = (ev) => {\n // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === \"object\") {\n switch (ev.data.event_type) {\n case \"WHOAMI\":\n onInit(ev.data.data);\n break;\n case \"STATUS_UPDATE\":\n onStatusUpdate(ev.data.data);\n break;\n case \"FORM_SUBMIT\":\n onFormSubmit(ev.data.data);\n break;\n case \"SHARE\":\n share(ev.data.data);\n break;\n default:\n console.log(\"No event type found\");\n console.log(ev.data);\n }\n // }\n };\n\n window.addEventListener(\"message\", handler);\n return () => window.removeEventListener(\"message\", handler);\n }, []);\n\n\n return <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n src={`https://show.qureal.com/embedlist/${collection_id}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n}\n\nexport default QurealCollection;"],"names":["QurealiFrame","slug","preview","query","type","creation_type","style","prefix","React","memo","data","navigator","share","canShare","error","QurealViewer","prefill","onFormSubmit","actionRef","organization","person","background","fit","onInit","onStatusUpdate","sendToIFrame","msg","log","qureal_element","document","getElementById","qureal_window","contentWindow","postMessage","includes","handler","ev","event_type","addEventListener","window","removeEventListener","queryfy","obj","buildQuery","Object","keys","map","value","key","prefixedKey","join","useQurealActions","useState","setActionRef","download","QurealCollection","collection_id"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -145,7 +145,7 @@ var QurealiFrame$1 = React__default.memo(QurealiFrame, function () {
145
145
  return true;
146
146
  });
147
147
 
148
- var share = function () {
148
+ var share$1 = function () {
149
149
  var _ref = asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(data) {
150
150
  return regeneratorRuntime.wrap(function _callee$(_context) {
151
151
  while (1) {
@@ -192,8 +192,6 @@ var share = function () {
192
192
  };
193
193
  }();
194
194
 
195
- var ALLOWED_ORIGINS = ["https://show.qureal.com", "http://localhost:3201"];
196
-
197
195
  function QurealViewer(_ref) {
198
196
  var _ref$slug = _ref.slug,
199
197
  slug = _ref$slug === undefined ? "qi_sample" : _ref$slug,
@@ -281,25 +279,25 @@ function QurealViewer(_ref) {
281
279
 
282
280
  React.useEffect(function () {
283
281
  var handler = function handler(ev) {
284
- if (ALLOWED_ORIGINS.includes(ev.origin) && _typeof(ev.data) === "object") {
285
- switch (ev.data.event_type) {
286
- case "WHOAMI":
287
- onInit(ev.data.data);
288
- break;
289
- case "STATUS_UPDATE":
290
- onStatusUpdate(ev.data.data);
291
- break;
292
- case "FORM_SUBMIT":
293
- onFormSubmit(ev.data.data);
294
- break;
295
- case "SHARE":
296
- share(ev.data.data);
297
- break;
298
- default:
299
- console.log("No event type found");
300
- console.log(ev.data);
301
- }
282
+ // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === "object") {
283
+ switch (ev.data.event_type) {
284
+ case "WHOAMI":
285
+ onInit(ev.data.data);
286
+ break;
287
+ case "STATUS_UPDATE":
288
+ onStatusUpdate(ev.data.data);
289
+ break;
290
+ case "FORM_SUBMIT":
291
+ onFormSubmit(ev.data.data);
292
+ break;
293
+ case "SHARE":
294
+ share$1(ev.data.data);
295
+ break;
296
+ default:
297
+ console.log("No event type found");
298
+ console.log(ev.data);
302
299
  }
300
+ // }
303
301
  };
304
302
 
305
303
  window.addEventListener("message", handler);
@@ -360,9 +358,105 @@ function useQurealActions() {
360
358
  function QurealCollection(_ref) {
361
359
  var _ref$collection_id = _ref.collection_id,
362
360
  collection_id = _ref$collection_id === undefined ? "934ffe42-1d0a-4fa0-ad23-60b066c0b9ab" : _ref$collection_id,
361
+ _ref$prefill = _ref.prefill,
362
+ prefill = _ref$prefill === undefined ? {} : _ref$prefill,
363
363
  _ref$style = _ref.style,
364
- style = _ref$style === undefined ? {} : _ref$style;
364
+ style = _ref$style === undefined ? {} : _ref$style,
365
+ _ref$actionRef = _ref.actionRef,
366
+ actionRef = _ref$actionRef === undefined ? {} : _ref$actionRef,
367
+ _ref$organization = _ref.organization,
368
+ organization = _ref$organization === undefined ? null : _ref$organization,
369
+ _ref$person = _ref.person,
370
+ person = _ref$person === undefined ? null : _ref$person,
371
+ _ref$background = _ref.background,
372
+ _ref$fit = _ref.fit,
373
+ _ref$onInit = _ref.onInit,
374
+ onInit = _ref$onInit === undefined ? function () {} : _ref$onInit,
375
+ _ref$onStatusUpdate = _ref.onStatusUpdate,
376
+ onStatusUpdate = _ref$onStatusUpdate === undefined ? function () {} : _ref$onStatusUpdate;
377
+
378
+
379
+ var sendToIFrame = function sendToIFrame(msg) {
380
+ console.log("Sending data to iFrame");
381
+ var qureal_element = document.getElementById("qureal_iframe");
382
+ var qureal_window = qureal_element ? qureal_element.contentWindow : null;
383
+ if (qureal_window) {
384
+ qureal_window.postMessage(msg, "*");
385
+ console.log("Data sent to iframe");
386
+ }
387
+ };
388
+
389
+ // useEffect(() => {
390
+ // sendToIFrame({
391
+ // message_type: "OPEN_CREATION",
392
+ // data: {
393
+ // slug: slug,
394
+ // preview: preview,
395
+ // prefill: prefill,
396
+ // ictx: {
397
+ // organization: organization,
398
+ // person: person
399
+ // }
400
+ // }
401
+ // })
402
+ // }, [slug, preview])
403
+
404
+ React.useEffect(function () {
405
+ sendToIFrame({
406
+ message_type: "PREFILL",
407
+ data: {
408
+ prefill: prefill
409
+ }
410
+ });
411
+ }, [prefill]);
412
+
413
+ React.useEffect(function () {
414
+ if (["DOWNLOAD", "SHARE"].includes(actionRef.type)) {
415
+ sendToIFrame({
416
+ message_type: actionRef.type,
417
+ data: actionRef.data || {}
418
+ });
419
+ }
420
+ }, [actionRef]);
421
+
422
+ React.useEffect(function () {
423
+ sendToIFrame({
424
+ message_type: "SET_ICTX",
425
+ data: {
426
+ organization: organization,
427
+ person: person
428
+ }
429
+ });
430
+ }, [organization, person]);
431
+
432
+ React.useEffect(function () {
433
+ var handler = function handler(ev) {
434
+ // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === "object") {
435
+ switch (ev.data.event_type) {
436
+ case "WHOAMI":
437
+ onInit(ev.data.data);
438
+ break;
439
+ case "STATUS_UPDATE":
440
+ onStatusUpdate(ev.data.data);
441
+ break;
442
+ case "FORM_SUBMIT":
443
+ onFormSubmit(ev.data.data);
444
+ break;
445
+ case "SHARE":
446
+ share(ev.data.data);
447
+ break;
448
+ default:
449
+ console.log("No event type found");
450
+ console.log(ev.data);
451
+ }
452
+ // }
453
+ };
365
454
 
455
+ window.addEventListener("message", handler);
456
+ return function () {
457
+ return window.removeEventListener("message", handler);
458
+ };
459
+ }, []);
366
460
 
367
461
  return React__default.createElement("iframe", {
368
462
  id: "qureal_iframe",
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js","../src/QurealCollection.js"],"sourcesContent":["import React, { Fragment, useEffect, useRef } from \"react\";\n\n\nfunction QurealiFrame({ slug, preview, query, type = \"creation\", creation_type = \"singlepage\", style = {} }) {\n\n let prefix = \"ts\";\n if (creation_type === \"document\") {\n if (type === \"creation\") {\n prefix = \"d\";\n } else {\n prefix = \"td\";\n }\n } else {\n if (type === \"creation\") {\n prefix = \"embed\";\n }\n }\n\n return (\n <Fragment>\n <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n // src={`http://localhost:3201/embed/${creation_slug}`}\n // src={type === \"creation\" ? `https://show.qureal.com/embed/${slug}?${preview ? \"preview&\" : \"\"}${query}` : `https://show.qureal.com/ts/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n // src={`https://show.qureal.com/${type === \"creation\" ? \"embed\" : \"ts\"}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n src={`https://show.qureal.com/${prefix}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n </Fragment>\n );\n}\n\n// export default QurealiFrame;\nexport default React.memo(QurealiFrame, () => true)\n","export async function share(data) {\n try {\n if (navigator.share && navigator.canShare(data)) {\n await navigator.share(data);\n } else {\n console.error(\"Can't share\");\n alert(\"Share only available for mobile devices\")\n }\n } catch (err) {\n console.error(err);\n }\n}","import React, { Fragment, useEffect, useRef } from \"react\";\nimport QurealiFrame from \"./QurealiFrame\";\nimport { share } from \"./utils\";\n\nconst ALLOWED_ORIGINS = [\"https://show.qureal.com\", \"http://localhost:3201\"];\n\nfunction QurealViewer({\n slug = \"qi_sample\",\n preview = false,\n prefill = {},\n type = \"creation\", // creation or template \n creation_type = \"singlepage\",\n onFormSubmit = () => { },\n style = {},\n actionRef = {},\n organization = null,\n person = null,\n background = null,\n fit = false,\n onInit = () => { },\n onStatusUpdate = () => { },\n}) {\n\n const sendToIFrame = (msg) => {\n console.log(\"Sending data to iFrame\")\n const qureal_element = document.getElementById(\"qureal_iframe\");\n\n const qureal_window = qureal_element ? qureal_element.contentWindow : null;\n if (qureal_window) {\n qureal_window.postMessage(msg, \"*\");\n console.log(\"Data sent to iframe\")\n }\n }\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"OPEN_CREATION\",\n data: {\n slug: slug,\n preview: preview,\n prefill: prefill,\n ictx: {\n organization: organization,\n person: person\n }\n }\n })\n }, [slug, preview])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"PREFILL\",\n data: {\n prefill: prefill\n }\n })\n }, [prefill])\n\n useEffect(() => {\n if ([\"DOWNLOAD\", \"SHARE\"].includes(actionRef.type)) {\n sendToIFrame({\n message_type: actionRef.type,\n data: actionRef.data || {}\n })\n }\n }, [actionRef])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"SET_ICTX\",\n data: {\n organization: organization,\n person: person\n }\n })\n }, [organization, person])\n\n useEffect(() => {\n const handler = (ev) => {\n if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === \"object\") {\n switch (ev.data.event_type) {\n case \"WHOAMI\":\n onInit(ev.data.data);\n break;\n case \"STATUS_UPDATE\":\n onStatusUpdate(ev.data.data);\n break;\n case \"FORM_SUBMIT\":\n onFormSubmit(ev.data.data);\n break;\n case \"SHARE\":\n share(ev.data.data);\n break;\n default:\n console.log(\"No event type found\");\n console.log(ev.data);\n }\n }\n };\n\n window.addEventListener(\"message\", handler);\n return () => window.removeEventListener(\"message\", handler);\n }, []);\n\n return (\n <QurealiFrame\n slug={slug}\n preview={preview}\n query={`${queryfy(prefill)}${organization ? `&qi_organization=${organization}` : \"\"}${person ? `&qi_person=${person}` : \"\"}${background ? `&qi_background=${background}` : \"\"}${fit ? \"&qi_fit\" : \"\"}`}\n type={type}\n creation_type={creation_type}\n style={style}\n />\n );\n}\n\n// export default QurealiFrame;\nexport default QurealViewer\n\n\nfunction queryfy(obj) {\n const buildQuery = (prefix, obj) => {\n return Object.keys(obj)\n .map(key => {\n const value = obj[key];\n const prefixedKey = prefix ? `${prefix}.${key}` : key;\n if (typeof value === 'object' && value !== null) {\n return buildQuery(prefixedKey, value);\n } else {\n return `${prefixedKey}=${value}`;\n }\n })\n .join(\"&\");\n };\n\n return buildQuery(\"\", obj);\n}","import { useState } from \"react\"\n\nfunction useQurealActions() {\n const [actionRef, setActionRef] = useState({});\n\n function download() {\n setActionRef({\n type: \"DOWNLOAD\",\n data: {}\n })\n }\n\n\n function share() {\n setActionRef({\n type: \"SHARE\",\n data: {}\n })\n }\n\n function setPreset() {\n\n }\n\n return { actionRef, download, share }\n}\n\nexport default useQurealActions;","import React from \"react\";\n\nfunction QurealCollection({ collection_id = \"934ffe42-1d0a-4fa0-ad23-60b066c0b9ab\", style = {} }) {\n\n\n return <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n src={`https://show.qureal.com/embedlist/${collection_id}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n}\n\nexport default QurealCollection;"],"names":["QurealiFrame","slug","preview","query","type","creation_type","style","prefix","React","memo","data","navigator","share","canShare","error","ALLOWED_ORIGINS","QurealViewer","prefill","onFormSubmit","actionRef","organization","person","background","fit","onInit","onStatusUpdate","sendToIFrame","msg","log","qureal_element","document","getElementById","qureal_window","contentWindow","postMessage","includes","handler","ev","origin","babelHelpers.typeof","event_type","addEventListener","window","removeEventListener","queryfy","obj","buildQuery","Object","keys","map","value","key","prefixedKey","join","useQurealActions","useState","setActionRef","download","QurealCollection","collection_id"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,SAASA,YAAT,OAA6G;QAArFC,IAAqF,QAArFA,IAAqF;QAA/EC,OAA+E,QAA/EA,OAA+E;QAAtEC,KAAsE,QAAtEA,KAAsE;yBAA/DC,IAA+D;QAA/DA,IAA+D,6BAAxD,UAAwD;kCAA5CC,aAA4C;QAA5CA,aAA4C,sCAA5B,YAA4B;0BAAdC,KAAc;QAAdA,KAAc,8BAAN,EAAM;;;QAErGC,SAAS,IAAb;QACIF,kBAAkB,UAAtB,EAAkC;YAC1BD,SAAS,UAAb,EAAyB;qBACZ,GAAT;SADJ,MAEO;qBACM,IAAT;;KAJR,MAMO;YACCA,SAAS,UAAb,EAAyB;qBACZ,OAAT;;;;WAKJI;sBAAA;;;gBAEW,eADP;mBAEU;;;;cAIN,kCAAgCD,MAAhC,SAA0CN,IAA1C,UAAkDC,UAAU,UAAV,GAAuB,EAAzE,IAA8EC,KANlF;;uBAQe,MADX;wBAEY,OAFZ;yBAGa,MAHb;wBAIY;eACLG,KALP,CAPJ;mBAcU;;KAhBlB;;;;AAuBJ,qBAAeE,eAAMC,IAAN,CAAWT,YAAX,EAAyB;WAAM,IAAN;CAAzB,CAAf;;;sECzCO,iBAAqBU,IAArB;;;;;;;8BAEKC,UAAUC,KAAV,IAAmBD,UAAUE,QAAV,CAAmBH,IAAnB,CAFxB;;;;;;+BAGWC,UAAUC,KAAV,CAAgBF,IAAhB,CAHX;;;;;;;gCAKaI,KAAR,CAAc,aAAd;8BACM,yCAAN;;;;;;;;;;gCAGIA,KAAR;;;;;;;;KATR;;oBAAsBF,KAAtB;;;;;ACIA,IAAMG,kBAAkB,CAAC,yBAAD,EAA4B,uBAA5B,CAAxB;;AAEA,SAASC,YAAT,OAeG;yBAdCf,IAcD;QAdCA,IAcD,6BAdQ,WAcR;4BAbCC,OAaD;QAbCA,OAaD,gCAbW,KAaX;4BAZCe,OAYD;QAZCA,OAYD,gCAZW,EAYX;yBAXCb,IAWD;QAXCA,IAWD,6BAXQ,UAWR;kCAVCC,aAUD;QAVCA,aAUD,sCAViB,YAUjB;iCATCa,YASD;QATCA,YASD,qCATgB,YAAM,EAStB;0BARCZ,KAQD;QARCA,KAQD,8BARS,EAQT;8BAPCa,SAOD;QAPCA,SAOD,kCAPa,EAOb;iCANCC,YAMD;QANCA,YAMD,qCANgB,IAMhB;2BALCC,MAKD;QALCA,MAKD,+BALU,IAKV;+BAJCC,UAID;QAJCA,UAID,mCAJc,IAId;wBAHCC,GAGD;QAHCA,GAGD,4BAHO,KAGP;2BAFCC,MAED;QAFCA,MAED,+BAFU,YAAM,EAEhB;mCADCC,cACD;QADCA,cACD,uCADkB,YAAM,EACxB;;;QAEOC,eAAe,SAAfA,YAAe,CAACC,GAAD,EAAS;gBAClBC,GAAR,CAAY,wBAAZ;YACMC,iBAAiBC,SAASC,cAAT,CAAwB,eAAxB,CAAvB;;YAEMC,gBAAgBH,iBAAiBA,eAAeI,aAAhC,GAAgD,IAAtE;YACID,aAAJ,EAAmB;0BACDE,WAAd,CAA0BP,GAA1B,EAA+B,GAA/B;oBACQC,GAAR,CAAY,qBAAZ;;KAPR;;oBAWU,YAAM;qBACC;0BACK,eADL;kBAEH;sBACI3B,IADJ;yBAEOC,OAFP;yBAGOe,OAHP;sBAII;kCACYG,YADZ;4BAEMC;;;SARpB;KADJ,EAaG,CAACpB,IAAD,EAAOC,OAAP,CAbH;;oBAeU,YAAM;qBACC;0BACK,SADL;kBAEH;yBACOe;;SAHjB;KADJ,EAOG,CAACA,OAAD,CAPH;;oBASU,YAAM;YACR,CAAC,UAAD,EAAa,OAAb,EAAsBkB,QAAtB,CAA+BhB,UAAUf,IAAzC,CAAJ,EAAoD;yBACnC;8BACKe,UAAUf,IADf;sBAEHe,UAAUT,IAAV,IAAkB;aAF5B;;KAFR,EAOG,CAACS,SAAD,CAPH;;oBASU,YAAM;qBACC;0BACK,UADL;kBAEH;8BACYC,YADZ;wBAEMC;;SAJhB;KADJ,EAQG,CAACD,YAAD,EAAeC,MAAf,CARH;;oBAUU,YAAM;YACNe,UAAU,SAAVA,OAAU,CAACC,EAAD,EAAQ;gBAChBtB,gBAAgBoB,QAAhB,CAAyBE,GAAGC,MAA5B,KAAuCC,QAAOF,GAAG3B,IAAV,MAAmB,QAA9D,EAAwE;wBAC5D2B,GAAG3B,IAAH,CAAQ8B,UAAhB;yBACS,QAAL;+BACWH,GAAG3B,IAAH,CAAQA,IAAf;;yBAEC,eAAL;uCACmB2B,GAAG3B,IAAH,CAAQA,IAAvB;;yBAEC,aAAL;qCACiB2B,GAAG3B,IAAH,CAAQA,IAArB;;yBAEC,OAAL;8BACU2B,GAAG3B,IAAH,CAAQA,IAAd;;;gCAGQkB,GAAR,CAAY,qBAAZ;gCACQA,GAAR,CAAYS,GAAG3B,IAAf;;;SAjBhB;;eAsBO+B,gBAAP,CAAwB,SAAxB,EAAmCL,OAAnC;eACO;mBAAMM,OAAOC,mBAAP,CAA2B,SAA3B,EAAsCP,OAAtC,CAAN;SAAP;KAxBJ,EAyBG,EAzBH;;WA4BI5B,6BAACR,cAAD;cACUC,IADV;iBAEaC,OAFb;oBAGc0C,QAAQ3B,OAAR,CAAV,IAA6BG,qCAAmCA,YAAnC,GAAoD,EAAjF,KAAsFC,yBAAuBA,MAAvB,GAAkC,EAAxH,KAA6HC,iCAA+BA,UAA/B,GAA8C,EAA3K,KAAgLC,MAAM,SAAN,GAAkB,EAAlM,CAHJ;cAIUnB,IAJV;uBAKmBC,aALnB;eAMWC;MAPf;;;AAgBJ,SAASsC,OAAT,CAAiBC,GAAjB,EAAsB;QACZC,aAAa,SAAbA,UAAa,CAACvC,MAAD,EAASsC,GAAT,EAAiB;eACzBE,OAAOC,IAAP,CAAYH,GAAZ,EACFI,GADE,CACE,eAAO;gBACFC,QAAQL,IAAIM,GAAJ,CAAd;gBACMC,cAAc7C,SAAYA,MAAZ,SAAsB4C,GAAtB,GAA8BA,GAAlD;gBACI,QAAOD,KAAP,yCAAOA,KAAP,OAAiB,QAAjB,IAA6BA,UAAU,IAA3C,EAAiD;uBACtCJ,WAAWM,WAAX,EAAwBF,KAAxB,CAAP;aADJ,MAEO;uBACOE,WAAV,SAAyBF,KAAzB;;SAPL,EAUFG,IAVE,CAUG,GAVH,CAAP;KADJ;;WAcOP,WAAW,EAAX,EAAeD,GAAf,CAAP;;;ACrIJ,SAASS,gBAAT,GAA4B;oBACUC,eAAS,EAAT,CADV;;QACjBpC,SADiB;QACNqC,YADM;;aAGfC,QAAT,GAAoB;qBACH;kBACH,UADG;kBAEH;SAFV;;;aAOK7C,KAAT,GAAiB;qBACA;kBACH,OADG;kBAEH;SAFV;;;WAUG,EAAEO,oBAAF,EAAasC,kBAAb,EAAuB7C,YAAvB,EAAP;;;ACtBJ,SAAS8C,gBAAT,OAAkG;kCAAtEC,aAAsE;QAAtEA,aAAsE,sCAAtD,sCAAsD;0BAAdrD,KAAc;QAAdA,KAAc,8BAAN,EAAM;;;WAGvFE;YACA,eADA;eAEG,QAFH;oDAGuCmD,aAHvC;;mBAKQ,MADX;oBAEY,OAFZ;qBAGa,MAHb;oBAIY;WACLrD,KALP,CAJG;eAWG;MAXV;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js","../src/QurealCollection.js"],"sourcesContent":["import React, { Fragment, useEffect, useRef } from \"react\";\n\n\nfunction QurealiFrame({ slug, preview, query, type = \"creation\", creation_type = \"singlepage\", style = {} }) {\n\n let prefix = \"ts\";\n if (creation_type === \"document\") {\n if (type === \"creation\") {\n prefix = \"d\";\n } else {\n prefix = \"td\";\n }\n } else {\n if (type === \"creation\") {\n prefix = \"embed\";\n }\n }\n\n return (\n <Fragment>\n <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n // src={`http://localhost:3201/embed/${creation_slug}`}\n // src={type === \"creation\" ? `https://show.qureal.com/embed/${slug}?${preview ? \"preview&\" : \"\"}${query}` : `https://show.qureal.com/ts/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n // src={`https://show.qureal.com/${type === \"creation\" ? \"embed\" : \"ts\"}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n src={`https://show.qureal.com/${prefix}/${slug}?${preview ? \"preview&\" : \"\"}${query}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n </Fragment>\n );\n}\n\n// export default QurealiFrame;\nexport default React.memo(QurealiFrame, () => true)\n","export async function share(data) {\n try {\n if (navigator.share && navigator.canShare(data)) {\n await navigator.share(data);\n } else {\n console.error(\"Can't share\");\n alert(\"Share only available for mobile devices\")\n }\n } catch (err) {\n console.error(err);\n }\n}","import React, { Fragment, useEffect, useRef } from \"react\";\nimport QurealiFrame from \"./QurealiFrame\";\nimport { share } from \"./utils\";\n\nconst ALLOWED_ORIGINS = [\"https://show.qureal.com\", \"http://localhost:3201\"];\n\nfunction QurealViewer({\n slug = \"qi_sample\",\n preview = false,\n prefill = {},\n type = \"creation\", // creation or template \n creation_type = \"singlepage\",\n onFormSubmit = () => { },\n style = {},\n actionRef = {},\n organization = null,\n person = null,\n background = null,\n fit = false,\n onInit = () => { },\n onStatusUpdate = () => { },\n}) {\n\n const sendToIFrame = (msg) => {\n console.log(\"Sending data to iFrame\")\n const qureal_element = document.getElementById(\"qureal_iframe\");\n\n const qureal_window = qureal_element ? qureal_element.contentWindow : null;\n if (qureal_window) {\n qureal_window.postMessage(msg, \"*\");\n console.log(\"Data sent to iframe\")\n }\n }\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"OPEN_CREATION\",\n data: {\n slug: slug,\n preview: preview,\n prefill: prefill,\n ictx: {\n organization: organization,\n person: person\n }\n }\n })\n }, [slug, preview])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"PREFILL\",\n data: {\n prefill: prefill\n }\n })\n }, [prefill])\n\n useEffect(() => {\n if ([\"DOWNLOAD\", \"SHARE\"].includes(actionRef.type)) {\n sendToIFrame({\n message_type: actionRef.type,\n data: actionRef.data || {}\n })\n }\n }, [actionRef])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"SET_ICTX\",\n data: {\n organization: organization,\n person: person\n }\n })\n }, [organization, person])\n\n useEffect(() => {\n const handler = (ev) => {\n // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === \"object\") {\n switch (ev.data.event_type) {\n case \"WHOAMI\":\n onInit(ev.data.data);\n break;\n case \"STATUS_UPDATE\":\n onStatusUpdate(ev.data.data);\n break;\n case \"FORM_SUBMIT\":\n onFormSubmit(ev.data.data);\n break;\n case \"SHARE\":\n share(ev.data.data);\n break;\n default:\n console.log(\"No event type found\");\n console.log(ev.data);\n }\n // }\n };\n\n window.addEventListener(\"message\", handler);\n return () => window.removeEventListener(\"message\", handler);\n }, []);\n\n return (\n <QurealiFrame\n slug={slug}\n preview={preview}\n query={`${queryfy(prefill)}${organization ? `&qi_organization=${organization}` : \"\"}${person ? `&qi_person=${person}` : \"\"}${background ? `&qi_background=${background}` : \"\"}${fit ? \"&qi_fit\" : \"\"}`}\n type={type}\n creation_type={creation_type}\n style={style}\n />\n );\n}\n\n// export default QurealiFrame;\nexport default QurealViewer\n\n\nfunction queryfy(obj) {\n const buildQuery = (prefix, obj) => {\n return Object.keys(obj)\n .map(key => {\n const value = obj[key];\n const prefixedKey = prefix ? `${prefix}.${key}` : key;\n if (typeof value === 'object' && value !== null) {\n return buildQuery(prefixedKey, value);\n } else {\n return `${prefixedKey}=${value}`;\n }\n })\n .join(\"&\");\n };\n\n return buildQuery(\"\", obj);\n}","import { useState } from \"react\"\n\nfunction useQurealActions() {\n const [actionRef, setActionRef] = useState({});\n\n function download() {\n setActionRef({\n type: \"DOWNLOAD\",\n data: {}\n })\n }\n\n\n function share() {\n setActionRef({\n type: \"SHARE\",\n data: {}\n })\n }\n\n function setPreset() {\n\n }\n\n return { actionRef, download, share }\n}\n\nexport default useQurealActions;","import React, { useEffect } from \"react\";\n\nconst ALLOWED_ORIGINS = [\"https://show.qureal.com\", \"http://localhost:3201\"];\n\n\nfunction QurealCollection({\n collection_id = \"934ffe42-1d0a-4fa0-ad23-60b066c0b9ab\",\n // preview = false,\n prefill = {},\n // onFormSubmit = () => { },\n style = {},\n actionRef = {},\n organization = null,\n person = null,\n background = null,\n fit = false,\n onInit = () => { },\n onStatusUpdate = () => { },\n}) {\n\n const sendToIFrame = (msg) => {\n console.log(\"Sending data to iFrame\")\n const qureal_element = document.getElementById(\"qureal_iframe\");\n const qureal_window = qureal_element ? qureal_element.contentWindow : null;\n if (qureal_window) {\n qureal_window.postMessage(msg, \"*\");\n console.log(\"Data sent to iframe\")\n }\n }\n\n // useEffect(() => {\n // sendToIFrame({\n // message_type: \"OPEN_CREATION\",\n // data: {\n // slug: slug,\n // preview: preview,\n // prefill: prefill,\n // ictx: {\n // organization: organization,\n // person: person\n // }\n // }\n // })\n // }, [slug, preview])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"PREFILL\",\n data: {\n prefill: prefill\n }\n })\n }, [prefill])\n\n useEffect(() => {\n if ([\"DOWNLOAD\", \"SHARE\"].includes(actionRef.type)) {\n sendToIFrame({\n message_type: actionRef.type,\n data: actionRef.data || {}\n })\n }\n }, [actionRef])\n\n useEffect(() => {\n sendToIFrame({\n message_type: \"SET_ICTX\",\n data: {\n organization: organization,\n person: person\n }\n })\n }, [organization, person])\n\n useEffect(() => {\n const handler = (ev) => {\n // if (ALLOWED_ORIGINS.includes(ev.origin) && typeof ev.data === \"object\") {\n switch (ev.data.event_type) {\n case \"WHOAMI\":\n onInit(ev.data.data);\n break;\n case \"STATUS_UPDATE\":\n onStatusUpdate(ev.data.data);\n break;\n case \"FORM_SUBMIT\":\n onFormSubmit(ev.data.data);\n break;\n case \"SHARE\":\n share(ev.data.data);\n break;\n default:\n console.log(\"No event type found\");\n console.log(ev.data);\n }\n // }\n };\n\n window.addEventListener(\"message\", handler);\n return () => window.removeEventListener(\"message\", handler);\n }, []);\n\n\n return <iframe\n id=\"qureal_iframe\"\n title=\"Qureal\"\n src={`https://show.qureal.com/embedlist/${collection_id}`}\n style={{\n width: \"100%\",\n height: \"100vh\",\n outline: \"none\",\n border: \"1px solid #777\",\n ...style\n }}\n allow=\"web-share\"\n />\n}\n\nexport default QurealCollection;"],"names":["QurealiFrame","slug","preview","query","type","creation_type","style","prefix","React","memo","data","navigator","share","canShare","error","QurealViewer","prefill","onFormSubmit","actionRef","organization","person","background","fit","onInit","onStatusUpdate","sendToIFrame","msg","log","qureal_element","document","getElementById","qureal_window","contentWindow","postMessage","includes","handler","ev","event_type","addEventListener","window","removeEventListener","queryfy","obj","buildQuery","Object","keys","map","value","key","prefixedKey","join","useQurealActions","useState","setActionRef","download","QurealCollection","collection_id"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qureal-editor",
3
- "version": "1.0.28",
3
+ "version": "1.0.30",
4
4
  "description": "Official Qureal React components",
5
5
  "author": "shivampip",
6
6
  "license": "MIT",