@openmrs/esm-implementer-tools-app 3.2.1-pre.1067 → 3.2.1-pre.1081

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/494.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunk_openmrs_esm_implementer_tools_app=self.webpackChunk_openmrs_esm_implementer_tools_app||[]).push([[494],{4790:(e,n,t)=>{t.d(n,{Z:()=>r});var o=t(8251),l=t(6983),s=t.n(l),i=s().createElement("path",{d:"M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4 14.6 16 8 22.6 9.4 24 16 17.4 22.6 24 24 22.6 17.4 16 24 9.4z"});const r=s().forwardRef((function(e,n){var t=e.children,l=(0,o._)(e,["children"]);return s().createElement(o.I,(0,o.a)({width:16,height:16,viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",ref:n},l),i,t)}))},5494:(e,n,t)=>{t.r(n),t.d(n,{ExitButton:()=>T,SlotOverlay:()=>N,default:()=>O});var o=t(6983),l=t.n(o),s=t(487),i=t.n(s),r=t(631),a=t.n(r),A=t(2052),m=t.n(A),_=t(4010),d=t.n(_),c=t(1469),E=t.n(c),u=t(9329),p=t.n(u),C=t(3539),b={};b.styleTagTransform=p(),b.setAttributes=d(),b.insert=m().bind(null,"head"),b.domAPI=a(),b.insertStyleElement=E(),i()(C.Z,b);const g=C.Z&&C.Z.locals?C.Z.locals:void 0;var x=t(4790),h=t(7657),y=t(9784),v=t(5412);function B(e){let{el:n,children:t}=e;return n?(0,v.createPortal)(t,n):null}function w(e){let{extensionName:n,slotModuleName:t,slotName:s,domElement:i}=e;const[r,a]=(0,o.useState)();return(0,o.useEffect)((()=>{if(i){const e=document.createElement("div");i.parentElement?.appendChild(e),a(e)}}),[i]),r?l().createElement(B,{key:`extension-overlay-${t}-${s}-${n}`,el:r},l().createElement(k,{extensionId:n})):null}function k(e){let{extensionId:n}=e;return l().createElement("button",{className:g.extensionOverlay},l().createElement("span",{className:g.extensionTooltip},n))}var f=t(7704);function O(){const{slots:e,extensions:n}=(0,h.useStore)((0,h.getExtensionInternalStore)()),{isOpen:t}=(0,h.useStore)(f.wT);return l().createElement(l().Fragment,null,t?null:l().createElement(T,null),e?Object.entries(e).map((e=>{let[n,t]=e;return l().createElement(B,{key:`slot-overlay-${t.moduleName}-${n}`,el:document.querySelector(`*[data-extension-slot-name="${n}"][data-extension-slot-module-name="${t.moduleName}"]`)},l().createElement(N,{slotName:n}))})):null,n?Object.entries(n).map((e=>{let[n,t]=e;return Object.entries(t.instances).map((e=>{let[t,o]=e;return Object.entries(o).map((e=>{let[o,s]=e;return l().createElement(w,{key:o,extensionName:n,slotModuleName:t,slotName:o,domElement:document.querySelector(`*[data-extension-slot-name="${o}"][data-extension-slot-module-name="${t}"] *[data-extension-id="${s.id}"]`)})}))}))})):null)}function N(e){let{slotName:n}=e;return l().createElement(l().Fragment,null,l().createElement("div",{className:g.slotOverlay}),l().createElement("div",{className:g.slotName},n))}const S={toggleIsUIEditorEnabled(e){let{isUIEditorEnabled:n}=e;return{isUIEditorEnabled:!n}}};function T(){const{toggleIsUIEditorEnabled:e}=(0,h.useStoreWithActions)(f.wT,S);return l().createElement(y.Button,{className:g.exitButton,kind:"danger",size:"sm",renderIcon:x.Z,iconDescription:"Exit UI Editor",tooltipPosition:"left",onClick:e,hasIconOnly:!0})}},3539:(e,n,t)=>{t.d(n,{Z:()=>r});var o=t(9233),l=t.n(o),s=t(361),i=t.n(s)()(l());i.push([e.id,".-esm-implementer-tools__styles__slotOverlay___0dSua {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(43, 43, 185, 0.1);\n border: 1px solid rgba(43, 43, 185, 0.4);\n pointer-events: none;\n}\n\n.-esm-implementer-tools__styles__slotName___gwNsi {\n background-color: rgb(255, 255, 255, 0.85);\n border: 1px solid rgba(43, 43, 185, 0.4);\n color: #393939;\n position: absolute;\n bottom: 0;\n right: 0;\n padding: 0.5em 0.5em 0.5em 0.5em;\n pointer-events: none;\n}\n\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: none;\n border: none;\n}\n\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover {\n background-color: rgba(43, 43, 185, 0.1);\n}\n\n/* Show the tooltip text when you mouse over the tooltip container */\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:focus .-esm-implementer-tools__styles__extensionTooltip___QVban,\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover .-esm-implementer-tools__styles__extensionTooltip___QVban {\n visibility: visible;\n opacity: 1;\n}\n\n.-esm-implementer-tools__styles__extensionTooltip___QVban {\n visibility: hidden;\n width: auto;\n background-color: rgb(255, 255, 255, 0.85);\n text-align: center;\n padding: 0.5em 0.5em 0.5em 0.5em;\n border: 1px solid rgba(43, 43, 185, 0.4);\n\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.-esm-implementer-tools__styles__exitButton___VWj92 {\n position: fixed !important;\n bottom: 0;\n right: 0;\n z-index: 999999;\n}\n","",{version:3,sources:["webpack://./src/ui-editor/styles.css"],names:[],mappings:"AAAA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,wCAAwC;EACxC,wCAAwC;EACxC,oBAAoB;AACtB;;AAEA;EACE,0CAA0C;EAC1C,wCAAwC;EACxC,cAAc;EACd,kBAAkB;EAClB,SAAS;EACT,QAAQ;EACR,gCAAgC;EAChC,oBAAoB;AACtB;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;AACd;;AAEA;EACE,wCAAwC;AAC1C;;AAEA,oEAAoE;AACpE;;EAEE,mBAAmB;EACnB,UAAU;AACZ;;AAEA;EACE,kBAAkB;EAClB,WAAW;EACX,0CAA0C;EAC1C,kBAAkB;EAClB,gCAAgC;EAChC,wCAAwC;;EAExC,kBAAkB;EAClB,MAAM;EACN,OAAO;AACT;;AAEA;EACE,0BAA0B;EAC1B,SAAS;EACT,QAAQ;EACR,eAAe;AACjB",sourcesContent:[".slotOverlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(43, 43, 185, 0.1);\n border: 1px solid rgba(43, 43, 185, 0.4);\n pointer-events: none;\n}\n\n.slotName {\n background-color: rgb(255, 255, 255, 0.85);\n border: 1px solid rgba(43, 43, 185, 0.4);\n color: #393939;\n position: absolute;\n bottom: 0;\n right: 0;\n padding: 0.5em 0.5em 0.5em 0.5em;\n pointer-events: none;\n}\n\n.extensionOverlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: none;\n border: none;\n}\n\n.extensionOverlay:hover {\n background-color: rgba(43, 43, 185, 0.1);\n}\n\n/* Show the tooltip text when you mouse over the tooltip container */\n.extensionOverlay:focus .extensionTooltip,\n.extensionOverlay:hover .extensionTooltip {\n visibility: visible;\n opacity: 1;\n}\n\n.extensionTooltip {\n visibility: hidden;\n width: auto;\n background-color: rgb(255, 255, 255, 0.85);\n text-align: center;\n padding: 0.5em 0.5em 0.5em 0.5em;\n border: 1px solid rgba(43, 43, 185, 0.4);\n\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.exitButton {\n position: fixed !important;\n bottom: 0;\n right: 0;\n z-index: 999999;\n}\n"],sourceRoot:""}]),i.locals={slotOverlay:"-esm-implementer-tools__styles__slotOverlay___0dSua",slotName:"-esm-implementer-tools__styles__slotName___gwNsi",extensionOverlay:"-esm-implementer-tools__styles__extensionOverlay___EKzCd",extensionTooltip:"-esm-implementer-tools__styles__extensionTooltip___QVban",exitButton:"-esm-implementer-tools__styles__exitButton___VWj92"};const r=i}}]);
1
+ "use strict";(self.webpackChunk_openmrs_esm_implementer_tools_app=self.webpackChunk_openmrs_esm_implementer_tools_app||[]).push([[494],{4790:(e,n,t)=>{t.d(n,{Z:()=>r});var o=t(8251),l=t(6983),s=t.n(l),i=s().createElement("path",{d:"M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4 14.6 16 8 22.6 9.4 24 16 17.4 22.6 24 24 22.6 17.4 16 24 9.4z"});const r=s().forwardRef((function(e,n){var t=e.children,l=(0,o._)(e,["children"]);return s().createElement(o.I,(0,o.a)({width:16,height:16,viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",ref:n},l),i,t)}))},5494:(e,n,t)=>{t.r(n),t.d(n,{ExitButton:()=>T,SlotOverlay:()=>N,default:()=>O});var o=t(6983),l=t.n(o),s=t(487),i=t.n(s),r=t(631),a=t.n(r),A=t(2052),m=t.n(A),_=t(4010),d=t.n(_),c=t(1469),E=t.n(c),u=t(9329),p=t.n(u),C=t(3539),b={};b.styleTagTransform=p(),b.setAttributes=d(),b.insert=m().bind(null,"head"),b.domAPI=a(),b.insertStyleElement=E(),i()(C.Z,b);const g=C.Z&&C.Z.locals?C.Z.locals:void 0;var x=t(4790),h=t(3614),y=t(9784),v=t(5412);function B(e){let{el:n,children:t}=e;return n?(0,v.createPortal)(t,n):null}function w(e){let{extensionName:n,slotModuleName:t,slotName:s,domElement:i}=e;const[r,a]=(0,o.useState)();return(0,o.useEffect)((()=>{if(i){const e=document.createElement("div");i.parentElement?.appendChild(e),a(e)}}),[i]),r?l().createElement(B,{key:`extension-overlay-${t}-${s}-${n}`,el:r},l().createElement(k,{extensionId:n})):null}function k(e){let{extensionId:n}=e;return l().createElement("button",{className:g.extensionOverlay},l().createElement("span",{className:g.extensionTooltip},n))}var f=t(7704);function O(){const{slots:e,extensions:n}=(0,h.useStore)((0,h.getExtensionInternalStore)()),{isOpen:t}=(0,h.useStore)(f.wT);return l().createElement(l().Fragment,null,t?null:l().createElement(T,null),e?Object.entries(e).map((e=>{let[n,t]=e;return l().createElement(B,{key:`slot-overlay-${t.moduleName}-${n}`,el:document.querySelector(`*[data-extension-slot-name="${n}"][data-extension-slot-module-name="${t.moduleName}"]`)},l().createElement(N,{slotName:n}))})):null,n?Object.entries(n).map((e=>{let[n,t]=e;return Object.entries(t.instances).map((e=>{let[t,o]=e;return Object.entries(o).map((e=>{let[o,s]=e;return l().createElement(w,{key:o,extensionName:n,slotModuleName:t,slotName:o,domElement:document.querySelector(`*[data-extension-slot-name="${o}"][data-extension-slot-module-name="${t}"] *[data-extension-id="${s.id}"]`)})}))}))})):null)}function N(e){let{slotName:n}=e;return l().createElement(l().Fragment,null,l().createElement("div",{className:g.slotOverlay}),l().createElement("div",{className:g.slotName},n))}const S={toggleIsUIEditorEnabled(e){let{isUIEditorEnabled:n}=e;return{isUIEditorEnabled:!n}}};function T(){const{toggleIsUIEditorEnabled:e}=(0,h.useStoreWithActions)(f.wT,S);return l().createElement(y.Button,{className:g.exitButton,kind:"danger",size:"sm",renderIcon:x.Z,iconDescription:"Exit UI Editor",tooltipPosition:"left",onClick:e,hasIconOnly:!0})}},3539:(e,n,t)=>{t.d(n,{Z:()=>r});var o=t(9233),l=t.n(o),s=t(361),i=t.n(s)()(l());i.push([e.id,".-esm-implementer-tools__styles__slotOverlay___0dSua {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(43, 43, 185, 0.1);\n border: 1px solid rgba(43, 43, 185, 0.4);\n pointer-events: none;\n}\n\n.-esm-implementer-tools__styles__slotName___gwNsi {\n background-color: rgb(255, 255, 255, 0.85);\n border: 1px solid rgba(43, 43, 185, 0.4);\n color: #393939;\n position: absolute;\n bottom: 0;\n right: 0;\n padding: 0.5em 0.5em 0.5em 0.5em;\n pointer-events: none;\n}\n\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: none;\n border: none;\n}\n\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover {\n background-color: rgba(43, 43, 185, 0.1);\n}\n\n/* Show the tooltip text when you mouse over the tooltip container */\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:focus .-esm-implementer-tools__styles__extensionTooltip___QVban,\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover .-esm-implementer-tools__styles__extensionTooltip___QVban {\n visibility: visible;\n opacity: 1;\n}\n\n.-esm-implementer-tools__styles__extensionTooltip___QVban {\n visibility: hidden;\n width: auto;\n background-color: rgb(255, 255, 255, 0.85);\n text-align: center;\n padding: 0.5em 0.5em 0.5em 0.5em;\n border: 1px solid rgba(43, 43, 185, 0.4);\n\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.-esm-implementer-tools__styles__exitButton___VWj92 {\n position: fixed !important;\n bottom: 0;\n right: 0;\n z-index: 999999;\n}\n","",{version:3,sources:["webpack://./src/ui-editor/styles.css"],names:[],mappings:"AAAA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,wCAAwC;EACxC,wCAAwC;EACxC,oBAAoB;AACtB;;AAEA;EACE,0CAA0C;EAC1C,wCAAwC;EACxC,cAAc;EACd,kBAAkB;EAClB,SAAS;EACT,QAAQ;EACR,gCAAgC;EAChC,oBAAoB;AACtB;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;AACd;;AAEA;EACE,wCAAwC;AAC1C;;AAEA,oEAAoE;AACpE;;EAEE,mBAAmB;EACnB,UAAU;AACZ;;AAEA;EACE,kBAAkB;EAClB,WAAW;EACX,0CAA0C;EAC1C,kBAAkB;EAClB,gCAAgC;EAChC,wCAAwC;;EAExC,kBAAkB;EAClB,MAAM;EACN,OAAO;AACT;;AAEA;EACE,0BAA0B;EAC1B,SAAS;EACT,QAAQ;EACR,eAAe;AACjB",sourcesContent:[".slotOverlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(43, 43, 185, 0.1);\n border: 1px solid rgba(43, 43, 185, 0.4);\n pointer-events: none;\n}\n\n.slotName {\n background-color: rgb(255, 255, 255, 0.85);\n border: 1px solid rgba(43, 43, 185, 0.4);\n color: #393939;\n position: absolute;\n bottom: 0;\n right: 0;\n padding: 0.5em 0.5em 0.5em 0.5em;\n pointer-events: none;\n}\n\n.extensionOverlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: none;\n border: none;\n}\n\n.extensionOverlay:hover {\n background-color: rgba(43, 43, 185, 0.1);\n}\n\n/* Show the tooltip text when you mouse over the tooltip container */\n.extensionOverlay:focus .extensionTooltip,\n.extensionOverlay:hover .extensionTooltip {\n visibility: visible;\n opacity: 1;\n}\n\n.extensionTooltip {\n visibility: hidden;\n width: auto;\n background-color: rgb(255, 255, 255, 0.85);\n text-align: center;\n padding: 0.5em 0.5em 0.5em 0.5em;\n border: 1px solid rgba(43, 43, 185, 0.4);\n\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.exitButton {\n position: fixed !important;\n bottom: 0;\n right: 0;\n z-index: 999999;\n}\n"],sourceRoot:""}]),i.locals={slotOverlay:"-esm-implementer-tools__styles__slotOverlay___0dSua",slotName:"-esm-implementer-tools__styles__slotName___gwNsi",extensionOverlay:"-esm-implementer-tools__styles__extensionOverlay___EKzCd",extensionTooltip:"-esm-implementer-tools__styles__extensionTooltip___QVban",exitButton:"-esm-implementer-tools__styles__exitButton___VWj92"};const r=i}}]);
2
2
  //# sourceMappingURL=494.js.map
package/dist/494.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"494.js","mappings":"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","sources":["webpack://@openmrs/esm-implementer-tools-app/../../../node_modules/@carbon/icons-react/es/close/16.js","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/styles.css?a044","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/portal.tsx","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/extension-overlay.component.tsx","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/ui-editor.tsx","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/styles.css"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2020\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * Code generated by @carbon/icon-build-helpers. DO NOT EDIT.\n */\nimport { _ as _objectWithoutProperties, I as Icon, a as _extends } from '../Icon-63ed8f4f.js';\nimport React from 'react';\nimport '@carbon/icon-helpers';\nimport 'prop-types';\n\nvar _ref2 =\n/*#__PURE__*/\n\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4 14.6 16 8 22.6 9.4 24 16 17.4 22.6 24 24 22.6 17.4 16 24 9.4z\"\n});\n\nvar Close16 = /*#__PURE__*/React.forwardRef(function Close16(_ref, ref) {\n var children = _ref.children,\n rest = _objectWithoutProperties(_ref, [\"children\"]);\n\n return /*#__PURE__*/React.createElement(Icon, _extends({\n width: 16,\n height: 16,\n viewBox: \"0 0 32 32\",\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n ref: ref\n }, rest), _ref2, children);\n});\n\nexport default Close16;\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./styles.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./styles.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { createPortal } from \"react-dom\";\n\nexport function Portal({ el, children }) {\n return el ? createPortal(children, el) : null;\n}\n","import React, { useEffect, useState } from \"react\";\nimport { Portal } from \"./portal\";\nimport styles from \"./styles.css\";\n\nexport interface ExtensionOverlayProps {\n extensionName: string;\n slotModuleName: string;\n slotName: string;\n domElement: HTMLElement | null;\n}\n\nexport function ExtensionOverlay({\n extensionName,\n slotModuleName,\n slotName,\n domElement,\n}: ExtensionOverlayProps) {\n const [overlayDomElement, setOverlayDomElement] = useState<HTMLElement>();\n\n useEffect(() => {\n if (domElement) {\n const newOverlayDomElement = document.createElement(\"div\");\n domElement.parentElement?.appendChild(newOverlayDomElement);\n setOverlayDomElement(newOverlayDomElement);\n }\n }, [domElement]);\n\n return overlayDomElement ? (\n <Portal\n key={`extension-overlay-${slotModuleName}-${slotName}-${extensionName}`}\n el={overlayDomElement}\n >\n <Content extensionId={extensionName} />\n </Portal>\n ) : null;\n}\n\nfunction Content({ extensionId }) {\n return (\n <button className={styles.extensionOverlay}>\n <span className={styles.extensionTooltip}>{extensionId}</span>\n </button>\n );\n}\n","import React from \"react\";\nimport styles from \"./styles.css\";\nimport Close16 from \"@carbon/icons-react/es/close/16\";\nimport {\n getExtensionInternalStore,\n useStore,\n useStoreWithActions,\n} from \"@openmrs/esm-framework\";\nimport { Button } from \"carbon-components-react\";\nimport { Portal } from \"./portal\";\nimport { ExtensionOverlay } from \"./extension-overlay.component\";\nimport { ImplementerToolsStore, implementerToolsStore } from \"../store\";\n\nexport default function UiEditor() {\n const { slots, extensions } = useStore(getExtensionInternalStore());\n const { isOpen: implementerToolsIsOpen } = useStore(implementerToolsStore);\n\n return (\n <>\n {implementerToolsIsOpen ? null : <ExitButton />}\n {slots\n ? Object.entries(slots).map(([slotName, slotInfo]) => (\n <Portal\n key={`slot-overlay-${slotInfo.moduleName}-${slotName}`}\n el={document.querySelector(\n `*[data-extension-slot-name=\"${slotName}\"][data-extension-slot-module-name=\"${slotInfo.moduleName}\"]`\n )}\n >\n <SlotOverlay slotName={slotName} />\n </Portal>\n ))\n : null}\n {extensions\n ? Object.entries(extensions).map(([extensionName, extensionInfo]) =>\n Object.entries(extensionInfo.instances).map(\n ([slotModuleName, bySlotName]) =>\n Object.entries(bySlotName).map(\n ([slotName, extensionInstance]) => (\n <ExtensionOverlay\n key={slotName}\n extensionName={extensionName}\n slotModuleName={slotModuleName}\n slotName={slotName}\n domElement={document.querySelector(\n `*[data-extension-slot-name=\"${slotName}\"][data-extension-slot-module-name=\"${slotModuleName}\"] *[data-extension-id=\"${extensionInstance.id}\"]`\n )}\n />\n )\n )\n )\n )\n : null}\n </>\n );\n}\n\nexport function SlotOverlay({ slotName }) {\n return (\n <>\n <div className={styles.slotOverlay}></div>\n <div className={styles.slotName}>{slotName}</div>\n </>\n );\n}\n\nconst actions = {\n toggleIsUIEditorEnabled({ isUIEditorEnabled }: ImplementerToolsStore) {\n return { isUIEditorEnabled: !isUIEditorEnabled };\n },\n};\n\nexport function ExitButton() {\n const { toggleIsUIEditorEnabled } = useStoreWithActions(\n implementerToolsStore,\n actions\n );\n return (\n <Button\n className={styles.exitButton}\n kind=\"danger\"\n size=\"sm\"\n renderIcon={Close16}\n iconDescription=\"Exit UI Editor\"\n tooltipPosition=\"left\"\n onClick={toggleIsUIEditorEnabled}\n hasIconOnly\n />\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".-esm-implementer-tools__styles__slotOverlay___0dSua {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(43, 43, 185, 0.1);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n pointer-events: none;\\n}\\n\\n.-esm-implementer-tools__styles__slotName___gwNsi {\\n background-color: rgb(255, 255, 255, 0.85);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n color: #393939;\\n position: absolute;\\n bottom: 0;\\n right: 0;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n pointer-events: none;\\n}\\n\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background: none;\\n border: none;\\n}\\n\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover {\\n background-color: rgba(43, 43, 185, 0.1);\\n}\\n\\n/* Show the tooltip text when you mouse over the tooltip container */\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:focus .-esm-implementer-tools__styles__extensionTooltip___QVban,\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover .-esm-implementer-tools__styles__extensionTooltip___QVban {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.-esm-implementer-tools__styles__extensionTooltip___QVban {\\n visibility: hidden;\\n width: auto;\\n background-color: rgb(255, 255, 255, 0.85);\\n text-align: center;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n\\n position: absolute;\\n top: 0;\\n left: 0;\\n}\\n\\n.-esm-implementer-tools__styles__exitButton___VWj92 {\\n position: fixed !important;\\n bottom: 0;\\n right: 0;\\n z-index: 999999;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/ui-editor/styles.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,wCAAwC;EACxC,wCAAwC;EACxC,oBAAoB;AACtB;;AAEA;EACE,0CAA0C;EAC1C,wCAAwC;EACxC,cAAc;EACd,kBAAkB;EAClB,SAAS;EACT,QAAQ;EACR,gCAAgC;EAChC,oBAAoB;AACtB;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;AACd;;AAEA;EACE,wCAAwC;AAC1C;;AAEA,oEAAoE;AACpE;;EAEE,mBAAmB;EACnB,UAAU;AACZ;;AAEA;EACE,kBAAkB;EAClB,WAAW;EACX,0CAA0C;EAC1C,kBAAkB;EAClB,gCAAgC;EAChC,wCAAwC;;EAExC,kBAAkB;EAClB,MAAM;EACN,OAAO;AACT;;AAEA;EACE,0BAA0B;EAC1B,SAAS;EACT,QAAQ;EACR,eAAe;AACjB\",\"sourcesContent\":[\".slotOverlay {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(43, 43, 185, 0.1);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n pointer-events: none;\\n}\\n\\n.slotName {\\n background-color: rgb(255, 255, 255, 0.85);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n color: #393939;\\n position: absolute;\\n bottom: 0;\\n right: 0;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n pointer-events: none;\\n}\\n\\n.extensionOverlay {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background: none;\\n border: none;\\n}\\n\\n.extensionOverlay:hover {\\n background-color: rgba(43, 43, 185, 0.1);\\n}\\n\\n/* Show the tooltip text when you mouse over the tooltip container */\\n.extensionOverlay:focus .extensionTooltip,\\n.extensionOverlay:hover .extensionTooltip {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.extensionTooltip {\\n visibility: hidden;\\n width: auto;\\n background-color: rgb(255, 255, 255, 0.85);\\n text-align: center;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n\\n position: absolute;\\n top: 0;\\n left: 0;\\n}\\n\\n.exitButton {\\n position: fixed !important;\\n bottom: 0;\\n right: 0;\\n z-index: 999999;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"slotOverlay\": \"-esm-implementer-tools__styles__slotOverlay___0dSua\",\n\t\"slotName\": \"-esm-implementer-tools__styles__slotName___gwNsi\",\n\t\"extensionOverlay\": \"-esm-implementer-tools__styles__extensionOverlay___EKzCd\",\n\t\"extensionTooltip\": \"-esm-implementer-tools__styles__extensionTooltip___QVban\",\n\t\"exitButton\": \"-esm-implementer-tools__styles__exitButton___VWj92\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["_ref2","d","_ref","ref","children","rest","_","I","width","height","viewBox","xmlns","fill","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","Portal","el","createPortal","ExtensionOverlay","extensionName","slotModuleName","slotName","domElement","overlayDomElement","setOverlayDomElement","useState","useEffect","newOverlayDomElement","document","createElement","parentElement","appendChild","key","Content","extensionId","className","styles","UiEditor","slots","extensions","useStore","getExtensionInternalStore","isOpen","implementerToolsIsOpen","implementerToolsStore","ExitButton","Object","entries","map","slotInfo","moduleName","querySelector","SlotOverlay","extensionInfo","instances","bySlotName","extensionInstance","id","actions","toggleIsUIEditorEnabled","isUIEditorEnabled","useStoreWithActions","Button","kind","size","renderIcon","Close16","iconDescription","tooltipPosition","onClick","hasIconOnly","___CSS_LOADER_EXPORT___","push","module","locals"],"sourceRoot":""}
1
+ {"version":3,"file":"494.js","mappings":"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","sources":["webpack://@openmrs/esm-implementer-tools-app/../../../node_modules/@carbon/icons-react/es/close/16.js","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/styles.css?a044","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/portal.tsx","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/extension-overlay.component.tsx","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/ui-editor.tsx","webpack://@openmrs/esm-implementer-tools-app/./src/ui-editor/styles.css"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2020\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * Code generated by @carbon/icon-build-helpers. DO NOT EDIT.\n */\nimport { _ as _objectWithoutProperties, I as Icon, a as _extends } from '../Icon-63ed8f4f.js';\nimport React from 'react';\nimport '@carbon/icon-helpers';\nimport 'prop-types';\n\nvar _ref2 =\n/*#__PURE__*/\n\n/*#__PURE__*/\nReact.createElement(\"path\", {\n d: \"M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4 14.6 16 8 22.6 9.4 24 16 17.4 22.6 24 24 22.6 17.4 16 24 9.4z\"\n});\n\nvar Close16 = /*#__PURE__*/React.forwardRef(function Close16(_ref, ref) {\n var children = _ref.children,\n rest = _objectWithoutProperties(_ref, [\"children\"]);\n\n return /*#__PURE__*/React.createElement(Icon, _extends({\n width: 16,\n height: 16,\n viewBox: \"0 0 32 32\",\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n ref: ref\n }, rest), _ref2, children);\n});\n\nexport default Close16;\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./styles.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./styles.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { createPortal } from \"react-dom\";\n\nexport function Portal({ el, children }) {\n return el ? createPortal(children, el) : null;\n}\n","import React, { useEffect, useState } from \"react\";\nimport { Portal } from \"./portal\";\nimport styles from \"./styles.css\";\n\nexport interface ExtensionOverlayProps {\n extensionName: string;\n slotModuleName: string;\n slotName: string;\n domElement: HTMLElement | null;\n}\n\nexport function ExtensionOverlay({\n extensionName,\n slotModuleName,\n slotName,\n domElement,\n}: ExtensionOverlayProps) {\n const [overlayDomElement, setOverlayDomElement] = useState<HTMLElement>();\n\n useEffect(() => {\n if (domElement) {\n const newOverlayDomElement = document.createElement(\"div\");\n domElement.parentElement?.appendChild(newOverlayDomElement);\n setOverlayDomElement(newOverlayDomElement);\n }\n }, [domElement]);\n\n return overlayDomElement ? (\n <Portal\n key={`extension-overlay-${slotModuleName}-${slotName}-${extensionName}`}\n el={overlayDomElement}\n >\n <Content extensionId={extensionName} />\n </Portal>\n ) : null;\n}\n\nfunction Content({ extensionId }) {\n return (\n <button className={styles.extensionOverlay}>\n <span className={styles.extensionTooltip}>{extensionId}</span>\n </button>\n );\n}\n","import React from \"react\";\nimport styles from \"./styles.css\";\nimport Close16 from \"@carbon/icons-react/es/close/16\";\nimport {\n getExtensionInternalStore,\n useStore,\n useStoreWithActions,\n} from \"@openmrs/esm-framework/src/internal\";\nimport { Button } from \"carbon-components-react\";\nimport { Portal } from \"./portal\";\nimport { ExtensionOverlay } from \"./extension-overlay.component\";\nimport { ImplementerToolsStore, implementerToolsStore } from \"../store\";\n\nexport default function UiEditor() {\n const { slots, extensions } = useStore(getExtensionInternalStore());\n const { isOpen: implementerToolsIsOpen } = useStore(implementerToolsStore);\n\n return (\n <>\n {implementerToolsIsOpen ? null : <ExitButton />}\n {slots\n ? Object.entries(slots).map(([slotName, slotInfo]) => (\n <Portal\n key={`slot-overlay-${slotInfo.moduleName}-${slotName}`}\n el={document.querySelector(\n `*[data-extension-slot-name=\"${slotName}\"][data-extension-slot-module-name=\"${slotInfo.moduleName}\"]`\n )}\n >\n <SlotOverlay slotName={slotName} />\n </Portal>\n ))\n : null}\n {extensions\n ? Object.entries(extensions).map(([extensionName, extensionInfo]) =>\n Object.entries(extensionInfo.instances).map(\n ([slotModuleName, bySlotName]) =>\n Object.entries(bySlotName).map(\n ([slotName, extensionInstance]) => (\n <ExtensionOverlay\n key={slotName}\n extensionName={extensionName}\n slotModuleName={slotModuleName}\n slotName={slotName}\n domElement={document.querySelector(\n `*[data-extension-slot-name=\"${slotName}\"][data-extension-slot-module-name=\"${slotModuleName}\"] *[data-extension-id=\"${extensionInstance.id}\"]`\n )}\n />\n )\n )\n )\n )\n : null}\n </>\n );\n}\n\nexport function SlotOverlay({ slotName }) {\n return (\n <>\n <div className={styles.slotOverlay}></div>\n <div className={styles.slotName}>{slotName}</div>\n </>\n );\n}\n\nconst actions = {\n toggleIsUIEditorEnabled({ isUIEditorEnabled }: ImplementerToolsStore) {\n return { isUIEditorEnabled: !isUIEditorEnabled };\n },\n};\n\nexport function ExitButton() {\n const { toggleIsUIEditorEnabled } = useStoreWithActions(\n implementerToolsStore,\n actions\n );\n return (\n <Button\n className={styles.exitButton}\n kind=\"danger\"\n size=\"sm\"\n renderIcon={Close16}\n iconDescription=\"Exit UI Editor\"\n tooltipPosition=\"left\"\n onClick={toggleIsUIEditorEnabled}\n hasIconOnly\n />\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".-esm-implementer-tools__styles__slotOverlay___0dSua {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(43, 43, 185, 0.1);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n pointer-events: none;\\n}\\n\\n.-esm-implementer-tools__styles__slotName___gwNsi {\\n background-color: rgb(255, 255, 255, 0.85);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n color: #393939;\\n position: absolute;\\n bottom: 0;\\n right: 0;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n pointer-events: none;\\n}\\n\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background: none;\\n border: none;\\n}\\n\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover {\\n background-color: rgba(43, 43, 185, 0.1);\\n}\\n\\n/* Show the tooltip text when you mouse over the tooltip container */\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:focus .-esm-implementer-tools__styles__extensionTooltip___QVban,\\n.-esm-implementer-tools__styles__extensionOverlay___EKzCd:hover .-esm-implementer-tools__styles__extensionTooltip___QVban {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.-esm-implementer-tools__styles__extensionTooltip___QVban {\\n visibility: hidden;\\n width: auto;\\n background-color: rgb(255, 255, 255, 0.85);\\n text-align: center;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n\\n position: absolute;\\n top: 0;\\n left: 0;\\n}\\n\\n.-esm-implementer-tools__styles__exitButton___VWj92 {\\n position: fixed !important;\\n bottom: 0;\\n right: 0;\\n z-index: 999999;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/ui-editor/styles.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,wCAAwC;EACxC,wCAAwC;EACxC,oBAAoB;AACtB;;AAEA;EACE,0CAA0C;EAC1C,wCAAwC;EACxC,cAAc;EACd,kBAAkB;EAClB,SAAS;EACT,QAAQ;EACR,gCAAgC;EAChC,oBAAoB;AACtB;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;AACd;;AAEA;EACE,wCAAwC;AAC1C;;AAEA,oEAAoE;AACpE;;EAEE,mBAAmB;EACnB,UAAU;AACZ;;AAEA;EACE,kBAAkB;EAClB,WAAW;EACX,0CAA0C;EAC1C,kBAAkB;EAClB,gCAAgC;EAChC,wCAAwC;;EAExC,kBAAkB;EAClB,MAAM;EACN,OAAO;AACT;;AAEA;EACE,0BAA0B;EAC1B,SAAS;EACT,QAAQ;EACR,eAAe;AACjB\",\"sourcesContent\":[\".slotOverlay {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(43, 43, 185, 0.1);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n pointer-events: none;\\n}\\n\\n.slotName {\\n background-color: rgb(255, 255, 255, 0.85);\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n color: #393939;\\n position: absolute;\\n bottom: 0;\\n right: 0;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n pointer-events: none;\\n}\\n\\n.extensionOverlay {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background: none;\\n border: none;\\n}\\n\\n.extensionOverlay:hover {\\n background-color: rgba(43, 43, 185, 0.1);\\n}\\n\\n/* Show the tooltip text when you mouse over the tooltip container */\\n.extensionOverlay:focus .extensionTooltip,\\n.extensionOverlay:hover .extensionTooltip {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.extensionTooltip {\\n visibility: hidden;\\n width: auto;\\n background-color: rgb(255, 255, 255, 0.85);\\n text-align: center;\\n padding: 0.5em 0.5em 0.5em 0.5em;\\n border: 1px solid rgba(43, 43, 185, 0.4);\\n\\n position: absolute;\\n top: 0;\\n left: 0;\\n}\\n\\n.exitButton {\\n position: fixed !important;\\n bottom: 0;\\n right: 0;\\n z-index: 999999;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"slotOverlay\": \"-esm-implementer-tools__styles__slotOverlay___0dSua\",\n\t\"slotName\": \"-esm-implementer-tools__styles__slotName___gwNsi\",\n\t\"extensionOverlay\": \"-esm-implementer-tools__styles__extensionOverlay___EKzCd\",\n\t\"extensionTooltip\": \"-esm-implementer-tools__styles__extensionTooltip___QVban\",\n\t\"exitButton\": \"-esm-implementer-tools__styles__exitButton___VWj92\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["_ref2","d","_ref","ref","children","rest","_","I","width","height","viewBox","xmlns","fill","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","Portal","el","createPortal","ExtensionOverlay","extensionName","slotModuleName","slotName","domElement","overlayDomElement","setOverlayDomElement","useState","useEffect","newOverlayDomElement","document","createElement","parentElement","appendChild","key","Content","extensionId","className","styles","UiEditor","slots","extensions","useStore","getExtensionInternalStore","isOpen","implementerToolsIsOpen","implementerToolsStore","ExitButton","Object","entries","map","slotInfo","moduleName","querySelector","SlotOverlay","extensionInfo","instances","bySlotName","extensionInstance","id","actions","toggleIsUIEditorEnabled","isUIEditorEnabled","useStoreWithActions","Button","kind","size","renderIcon","Close16","iconDescription","tooltipPosition","onClick","hasIconOnly","___CSS_LOADER_EXPORT___","push","module","locals"],"sourceRoot":""}