qureal-editor 1.0.22 → 1.0.25

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
@@ -93,10 +93,25 @@ function QurealiFrame(_ref) {
93
93
  query = _ref.query,
94
94
  _ref$type = _ref.type,
95
95
  type = _ref$type === undefined ? "creation" : _ref$type,
96
+ _ref$creation_type = _ref.creation_type,
97
+ creation_type = _ref$creation_type === undefined ? "singlepage" : _ref$creation_type,
96
98
  _ref$style = _ref.style,
97
99
  style = _ref$style === undefined ? {} : _ref$style;
98
100
 
99
101
 
102
+ var prefix = "ts";
103
+ if (creation_type === "document") {
104
+ if (type === "creation") {
105
+ prefix = "d";
106
+ } else {
107
+ prefix = "td";
108
+ }
109
+ } else {
110
+ if (type === "creation") {
111
+ prefix = "embed";
112
+ }
113
+ }
114
+
100
115
  return React.createElement(
101
116
  Fragment,
102
117
  null,
@@ -105,9 +120,9 @@ function QurealiFrame(_ref) {
105
120
  title: "Qureal"
106
121
  // src={`http://localhost:3201/embed/${creation_slug}`}
107
122
  // src={type === "creation" ? `https://show.qureal.com/embed/${slug}?${preview ? "preview&" : ""}${query}` : `https://show.qureal.com/ts/${slug}?${preview ? "preview&" : ""}${query}`}
108
- , src: "https://show.qureal.com/" + (type === "creation" ? "embed" : "ts") + "/" + slug + "?" + (preview ? "preview&" : "") + query
109
- // src={type === "creation" ? `http://localhost:3201/embed/${slug}?${preview ? "preview&" : ""}${query}` : `https://show.qureal.com/ts/${slug}`}
110
- , style: _extends({
123
+ // src={`https://show.qureal.com/${type === "creation" ? "embed" : "ts"}/${slug}?${preview ? "preview&" : ""}${query}`}
124
+ , src: "https://show.qureal.com/" + prefix + "/" + slug + "?" + (preview ? "preview&" : "") + query,
125
+ style: _extends({
111
126
  width: "100%",
112
127
  height: "100vh",
113
128
  outline: "none",
@@ -181,6 +196,8 @@ function QurealViewer(_ref) {
181
196
  prefill = _ref$prefill === undefined ? {} : _ref$prefill,
182
197
  _ref$type = _ref.type,
183
198
  type = _ref$type === undefined ? "creation" : _ref$type,
199
+ _ref$creation_type = _ref.creation_type,
200
+ creation_type = _ref$creation_type === undefined ? "singlepage" : _ref$creation_type,
184
201
  _ref$onFormSubmit = _ref.onFormSubmit,
185
202
  onFormSubmit = _ref$onFormSubmit === undefined ? function () {} : _ref$onFormSubmit,
186
203
  _ref$style = _ref.style,
@@ -289,6 +306,7 @@ function QurealViewer(_ref) {
289
306
  preview: preview,
290
307
  query: "" + queryfy(prefill) + (organization ? "&qi_organization=" + organization : "") + (person ? "&qi_person=" + person : "") + (background ? "&qi_background=" + background : "") + (fit ? "&qi_fit" : ""),
291
308
  type: type,
309
+ creation_type: creation_type,
292
310
  style: style
293
311
  });
294
312
  }
@@ -332,5 +350,39 @@ function useQurealActions() {
332
350
  return { actionRef: actionRef, download: download, share: share };
333
351
  }
334
352
 
335
- export { QurealViewer, useQurealActions };
353
+ function QurealCollection() {
354
+ return React.createElement(
355
+ "div",
356
+ null,
357
+ React.createElement(
358
+ "h3",
359
+ null,
360
+ "Qureal Collectionnnnnkkk"
361
+ ),
362
+ React.createElement(
363
+ "p",
364
+ null,
365
+ "Hello from collection"
366
+ )
367
+ );
368
+ }
369
+
370
+ function TestComp() {
371
+ return React.createElement(
372
+ "div",
373
+ null,
374
+ React.createElement(
375
+ "h4",
376
+ null,
377
+ "Test Component"
378
+ ),
379
+ React.createElement(
380
+ "p",
381
+ null,
382
+ "This is demo"
383
+ )
384
+ );
385
+ }
386
+
387
+ export { QurealViewer, useQurealActions, QurealCollection, TestComp };
336
388
  //# sourceMappingURL=index.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js"],"sourcesContent":["import React, { Fragment, useEffect, useRef } from \"react\";\n\n\nfunction QurealiFrame({ slug, preview, query, type = \"creation\", style = {} }) {\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={type === \"creation\" ? `http://localhost:3201/embed/${slug}?${preview ? \"preview&\" : \"\"}${query}` : `https://show.qureal.com/ts/${slug}`}\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 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 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;"],"names":["QurealiFrame","slug","preview","query","type","style","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","prefix","Object","keys","map","value","key","prefixedKey","join","useQurealActions","useState","setActionRef","download"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,SAASA,YAAT,OAA+E;QAAvDC,IAAuD,QAAvDA,IAAuD;QAAjDC,OAAiD,QAAjDA,OAAiD;QAAxCC,KAAwC,QAAxCA,KAAwC;yBAAjCC,IAAiC;QAAjCA,IAAiC,6BAA1B,UAA0B;0BAAdC,KAAc;QAAdA,KAAc,8BAAN,EAAM;;;WAIvE;gBAAA;;;gBAEW,eADP;mBAEU;;;cAGN,mCAAgCD,SAAS,UAAT,GAAsB,OAAtB,GAAgC,IAAhE,UAAwEH,IAAxE,UAAgFC,UAAU,UAAV,GAAuB,EAAvG,IAA4GC;;cAE5G;uBACW,MADX;wBAEY,OAFZ;yBAGa,MAHb;wBAIY;eACLE,KALP,CAPJ;mBAcU;;KAhBlB;;;;AAuBJ,qBAAeC,MAAMC,IAAN,CAAWP,YAAX,EAAyB;WAAM,IAAN;CAAzB,CAAf;;;sEC7BO,iBAAqBQ,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,OAcG;yBAbCb,IAaD;QAbCA,IAaD,6BAbQ,WAaR;4BAZCC,OAYD;QAZCA,OAYD,gCAZW,KAYX;4BAXCa,OAWD;QAXCA,OAWD,gCAXW,EAWX;yBAVCX,IAUD;QAVCA,IAUD,6BAVQ,UAUR;iCATCY,YASD;QATCA,YASD,qCATgB,YAAM,EAStB;0BARCX,KAQD;QARCA,KAQD,8BARS,EAQT;8BAPCY,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;;cAWU,YAAM;qBACC;0BACK,eADL;kBAEH;sBACIzB,IADJ;yBAEOC,OAFP;yBAGOa,OAHP;sBAII;kCACYG,YADZ;4BAEMC;;;SARpB;KADJ,EAaG,CAAClB,IAAD,EAAOC,OAAP,CAbH;;cAeU,YAAM;qBACC;0BACK,SADL;kBAEH;yBACOa;;SAHjB;KADJ,EAOG,CAACA,OAAD,CAPH;;cASU,YAAM;YACR,CAAC,UAAD,EAAa,OAAb,EAAsBkB,QAAtB,CAA+BhB,UAAUb,IAAzC,CAAJ,EAAoD;yBACnC;8BACKa,UAAUb,IADf;sBAEHa,UAAUT,IAAV,IAAkB;aAF5B;;KAFR,EAOG,CAACS,SAAD,CAPH;;cASU,YAAM;qBACC;0BACK,UADL;kBAEH;8BACYC,YADZ;wBAEMC;;SAJhB;KADJ,EAQG,CAACD,YAAD,EAAeC,MAAf,CARH;;cAUU,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;;WA4BI,oBAAClC,cAAD;cACUC,IADV;iBAEaC,OAFb;oBAGcwC,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;cAIUjB,IAJV;eAKWC;MANf;;;AAeJ,SAASqC,OAAT,CAAiBC,GAAjB,EAAsB;QACZC,aAAa,SAAbA,UAAa,CAACC,MAAD,EAASF,GAAT,EAAiB;eACzBG,OAAOC,IAAP,CAAYJ,GAAZ,EACFK,GADE,CACE,eAAO;gBACFC,QAAQN,IAAIO,GAAJ,CAAd;gBACMC,cAAcN,SAAYA,MAAZ,SAAsBK,GAAtB,GAA8BA,GAAlD;gBACI,QAAOD,KAAP,yCAAOA,KAAP,OAAiB,QAAjB,IAA6BA,UAAU,IAA3C,EAAiD;uBACtCL,WAAWO,WAAX,EAAwBF,KAAxB,CAAP;aADJ,MAEO;uBACOE,WAAV,SAAyBF,KAAzB;;SAPL,EAUFG,IAVE,CAUG,GAVH,CAAP;KADJ;;WAcOR,WAAW,EAAX,EAAeD,GAAf,CAAP;;;ACnIJ,SAASU,gBAAT,GAA4B;oBACUC,SAAS,EAAT,CADV;;QACjBrC,SADiB;QACNsC,YADM;;aAGfC,QAAT,GAAoB;qBACH;kBACH,UADG;kBAEH;SAFV;;;aAOK9C,KAAT,GAAiB;qBACA;kBACH,OADG;kBAEH;SAFV;;;WAUG,EAAEO,oBAAF,EAAauC,kBAAb,EAAuB9C,YAAvB,EAAP;;;;;"}
1
+ {"version":3,"file":"index.es.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js","../src/QurealCollection.js","../src/TestComp.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() {\n return <div>\n <h3>Qureal Collectionnnnnkkk</h3>\n <p>Hello from collection</p>\n </div>\n}\n\nexport default QurealCollection;","import React from \"react\";\n\nfunction TestComp() {\n return <div>\n <h4>Test Component</h4>\n <p>This is demo</p>\n </div>;\n}\n\nexport default TestComp;"],"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","TestComp"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -100,10 +100,25 @@ function QurealiFrame(_ref) {
100
100
  query = _ref.query,
101
101
  _ref$type = _ref.type,
102
102
  type = _ref$type === undefined ? "creation" : _ref$type,
103
+ _ref$creation_type = _ref.creation_type,
104
+ creation_type = _ref$creation_type === undefined ? "singlepage" : _ref$creation_type,
103
105
  _ref$style = _ref.style,
104
106
  style = _ref$style === undefined ? {} : _ref$style;
105
107
 
106
108
 
109
+ var prefix = "ts";
110
+ if (creation_type === "document") {
111
+ if (type === "creation") {
112
+ prefix = "d";
113
+ } else {
114
+ prefix = "td";
115
+ }
116
+ } else {
117
+ if (type === "creation") {
118
+ prefix = "embed";
119
+ }
120
+ }
121
+
107
122
  return React__default.createElement(
108
123
  React.Fragment,
109
124
  null,
@@ -112,9 +127,9 @@ function QurealiFrame(_ref) {
112
127
  title: "Qureal"
113
128
  // src={`http://localhost:3201/embed/${creation_slug}`}
114
129
  // src={type === "creation" ? `https://show.qureal.com/embed/${slug}?${preview ? "preview&" : ""}${query}` : `https://show.qureal.com/ts/${slug}?${preview ? "preview&" : ""}${query}`}
115
- , src: "https://show.qureal.com/" + (type === "creation" ? "embed" : "ts") + "/" + slug + "?" + (preview ? "preview&" : "") + query
116
- // src={type === "creation" ? `http://localhost:3201/embed/${slug}?${preview ? "preview&" : ""}${query}` : `https://show.qureal.com/ts/${slug}`}
117
- , style: _extends({
130
+ // src={`https://show.qureal.com/${type === "creation" ? "embed" : "ts"}/${slug}?${preview ? "preview&" : ""}${query}`}
131
+ , src: "https://show.qureal.com/" + prefix + "/" + slug + "?" + (preview ? "preview&" : "") + query,
132
+ style: _extends({
118
133
  width: "100%",
119
134
  height: "100vh",
120
135
  outline: "none",
@@ -188,6 +203,8 @@ function QurealViewer(_ref) {
188
203
  prefill = _ref$prefill === undefined ? {} : _ref$prefill,
189
204
  _ref$type = _ref.type,
190
205
  type = _ref$type === undefined ? "creation" : _ref$type,
206
+ _ref$creation_type = _ref.creation_type,
207
+ creation_type = _ref$creation_type === undefined ? "singlepage" : _ref$creation_type,
191
208
  _ref$onFormSubmit = _ref.onFormSubmit,
192
209
  onFormSubmit = _ref$onFormSubmit === undefined ? function () {} : _ref$onFormSubmit,
193
210
  _ref$style = _ref.style,
@@ -296,6 +313,7 @@ function QurealViewer(_ref) {
296
313
  preview: preview,
297
314
  query: "" + queryfy(prefill) + (organization ? "&qi_organization=" + organization : "") + (person ? "&qi_person=" + person : "") + (background ? "&qi_background=" + background : "") + (fit ? "&qi_fit" : ""),
298
315
  type: type,
316
+ creation_type: creation_type,
299
317
  style: style
300
318
  });
301
319
  }
@@ -339,6 +357,42 @@ function useQurealActions() {
339
357
  return { actionRef: actionRef, download: download, share: share };
340
358
  }
341
359
 
360
+ function QurealCollection() {
361
+ return React__default.createElement(
362
+ "div",
363
+ null,
364
+ React__default.createElement(
365
+ "h3",
366
+ null,
367
+ "Qureal Collectionnnnnkkk"
368
+ ),
369
+ React__default.createElement(
370
+ "p",
371
+ null,
372
+ "Hello from collection"
373
+ )
374
+ );
375
+ }
376
+
377
+ function TestComp() {
378
+ return React__default.createElement(
379
+ "div",
380
+ null,
381
+ React__default.createElement(
382
+ "h4",
383
+ null,
384
+ "Test Component"
385
+ ),
386
+ React__default.createElement(
387
+ "p",
388
+ null,
389
+ "This is demo"
390
+ )
391
+ );
392
+ }
393
+
342
394
  exports.QurealViewer = QurealViewer;
343
395
  exports.useQurealActions = useQurealActions;
396
+ exports.QurealCollection = QurealCollection;
397
+ exports.TestComp = TestComp;
344
398
  //# sourceMappingURL=index.js.map
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"],"sourcesContent":["import React, { Fragment, useEffect, useRef } from \"react\";\n\n\nfunction QurealiFrame({ slug, preview, query, type = \"creation\", style = {} }) {\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={type === \"creation\" ? `http://localhost:3201/embed/${slug}?${preview ? \"preview&\" : \"\"}${query}` : `https://show.qureal.com/ts/${slug}`}\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 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 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;"],"names":["QurealiFrame","slug","preview","query","type","style","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","prefix","Object","keys","map","value","key","prefixedKey","join","useQurealActions","useState","setActionRef","download"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/QurealiFrame.js","../src/utils.js","../src/QurealViewer.js","../src/use-action.js","../src/QurealCollection.js","../src/TestComp.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() {\n return <div>\n <h3>Qureal Collectionnnnnkkk</h3>\n <p>Hello from collection</p>\n </div>\n}\n\nexport default QurealCollection;","import React from \"react\";\n\nfunction TestComp() {\n return <div>\n <h4>Test Component</h4>\n <p>This is demo</p>\n </div>;\n}\n\nexport default TestComp;"],"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","TestComp"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qureal-editor",
3
- "version": "1.0.22",
3
+ "version": "1.0.25",
4
4
  "description": "Official Qureal React components",
5
5
  "author": "shivampip",
6
6
  "license": "MIT",
@@ -19,7 +19,8 @@
19
19
  "start": "rollup -c -w",
20
20
  "prepare": "npm run build",
21
21
  "predeploy": "cd example && npm install && npm run build",
22
- "deploy": "gh-pages -d example/build"
22
+ "deploy": "gh-pages -d example/build",
23
+ "buildlocal": "npm run build && cp -r dist /Users/shivam/p/pro/qureal_blank/node_modules/qureal-editor/"
23
24
  },
24
25
  "peerDependencies": {
25
26
  "prop-types": "^15.5.4",