@ohbug/extension-feedback 0.6.2 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +123 -123
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -26,5 +26,21 @@ import Ohbug from '@ohbug/browser'
|
|
|
26
26
|
import OhbugExtensionFeedback from '@ohbug/extension-feedback'
|
|
27
27
|
|
|
28
28
|
const client = Ohbug.setup({ apiKey: 'YOUR_API_KEY' })
|
|
29
|
-
client.use(OhbugExtensionFeedback)
|
|
29
|
+
client.use(OhbugExtensionFeedback())
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Parameters
|
|
33
|
+
|
|
34
|
+
### target?: HTMLElement
|
|
35
|
+
|
|
36
|
+
You can customize the dom element to which the feedback popup is mounted, by default it will be mounted in the body.
|
|
37
|
+
|
|
38
|
+
example:
|
|
39
|
+
|
|
40
|
+
```javascript
|
|
41
|
+
import Ohbug from '@ohbug/browser'
|
|
42
|
+
import OhbugExtensionFeedback from '@ohbug/extension-feedback'
|
|
43
|
+
|
|
44
|
+
const client = Ohbug.setup({ apiKey: 'YOUR_API_KEY' })
|
|
45
|
+
client.use(OhbugExtensionFeedback(document.querySelector('#xxx')))
|
|
30
46
|
```
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAIlD,QAAA,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAIlD,QAAA,MAAM,SAAS,YAAa,WAAW,KAAG,cASxC,CAAA;AAEF,eAAe,SAAS,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -28,4 +28,4 @@
|
|
|
28
28
|
height: ${y+r*2}px;
|
|
29
29
|
top: ${E-r}px;
|
|
30
30
|
left: ${P-r}px;
|
|
31
|
-
`)}function u(f){var y;z({working:!0});const a=document.elementFromPoint(f.clientX,f.clientY);if(((y=a==null?void 0:a.dataset)==null?void 0:y.ohbugSelector)!==void 0||a.tagName==="HTML")return!1;c(a)}function g(){document.addEventListener("mousemove",u)}function m(){document.removeEventListener("mousemove",u)}function _(f){var y;const a=document.elementFromPoint(f.clientX,f.clientY);if(((y=a==null?void 0:a.dataset)==null?void 0:y.ohbugSelector)!==void 0||a.tagName==="HTML"||p.selectedElement&&p.working)return!1;t(a),h(e()),m()}function T(){document.addEventListener("mousedown",_)}function I(){document.removeEventListener("mousedown",_)}function O(){t(null),m(),I(),z({working:!1,selectedElement:null})}function q(){z({working:!0,selectedElement:null}),t(null),g()}return pe(()=>{p.working?(g(),T()):(m(),I())}),ze(O),(()=>{const f=rt(),a=f.firstChild,y=a.nextSibling,E=y.nextSibling,P=E.nextSibling,M=P.nextSibling;return v(f,x(U,{get when(){return!p.selectedElement&&p.working},get children(){const d=st(),Ce=d.firstChild,Ne=Ce.firstChild,ue=Ne.nextSibling;return ue.$$click=O,v(ue,x(ie,{})),d}}),a),D(d=>{n=d},a),D(d=>{l=d},y),D(d=>{s=d},E),D(d=>{o=d},P),D(d=>{i=d},M),v(M,x(U,{get when(){return p.selectedElement&&p.working},get children(){return[(()=>{const d=ot();return d.$$click=O,v(d,x(ie,{})),d})(),(()=>{const d=it();return d.$$click=q,d.style.setProperty("transform","translate(4px, -8px)"),d})()]}})),j(()=>Re(M,`fixed -z-1 bg-black bg-opacity-20 border-4 rounded-sm transition cursor-pointer box-border pointer-events-none ${e()?"border-red-500 border-solid":"border-blue-500 border-dashed"}`)),f})()};_e(["click"]);const ut=A('<button class="btn-main" data-ohbug-selector type="button">'),ft=A('<div class="bg-white flex flex-col h-60 shadow z-max right-8 bottom-20 w-80 fixed" data-ohbug-selector><div class="bg-gray-300 p-4" data-ohbug-selector><textarea autofocus class="bg-transparent outline-none w-full resize-none" data-ohbug-selector maxlength="1000" placeholder="Tell me how you feel..." rows="4"></textarea><button class="cursor-pointer" data-ohbug-selector type="button"></button></div><div class="flex flex-1 p-4 justify-between items-center" data-ohbug-selector><span class="text-sm" data-ohbug-selector>Try<a class="ml-1 underline" data-ohbug-selector href="https://ohbug.net" rel="noreferrer" target="_blank">Ohbug</a>?</span><button class="btn-send" data-ohbug-selector type="button"></button></div><button class="rounded-full cursor-pointer flex bg-blue-500 h-6 -top-2 -right-2 w-6 z-10 items-center justify-center absolute" data-ohbug-selector type="button">'),at=A('<div class="z-max relative" data-ohbug-selector><div>'),dt=()=>{const[e,t]=F(!1),[n,l]=F("");function s(){z({working:!0})}const[o,i]=F(!1);async function r(){i(!0);let c,h;const u=Ke().client;if(p.selectedElement){const g={target:p.selectedElement};c=Xe(g),h=p.selectedElement.outerHTML;const m=u.createEvent({category:"feedback",type:"feedback",detail:{selector:c,outerHTML:h,feedback:n()}});await u.notify(m)}else{const g=u.createEvent({category:"feedback",type:"feedback",detail:{feedback:n()}});await u.notify(g)}t(!1),l(""),z({working:!1,selectedElement:null}),i(!1)}return pe(()=>{p.working===!1&&p.selectedElement===null||p.working&&!p.selectedElement?t(!1):t(!0)}),(()=>{const c=at(),h=c.firstChild;return v(c,x(U,{get when(){return p.working},get children(){return x(ct,{})}}),h),v(h,x(U,{get when(){return!(p.working&&!p.selectedElement)},get children(){const u=ut();return u.$$click=()=>t(g=>!g),v(u,()=>e()?"😆":"🙂"),u}}),null),v(h,x(U,{get when(){return e()},get children(){const u=ft(),g=u.firstChild,m=g.firstChild,_=m.nextSibling,T=g.nextSibling,I=T.firstChild,O=I.nextSibling,q=T.nextSibling;return m.$$input=f=>l(f.currentTarget.value),_.$$click=s,v(_,x(lt,{})),O.$$click=r,v(O,()=>o()?"Sending...":"Send"),q.$$click=()=>t(f=>!f),v(q,x(ie,{})),j(f=>{const a=p.selectedElement?"blue":"gray",y=!n()||o();return a!==f._v$&&((f._v$=a)!=null?_.style.setProperty("--color",a):_.style.removeProperty("--color")),y!==f._v$2&&(O.disabled=f._v$2=y),f},{_v$:void 0,_v$2:void 0}),j(()=>m.value=n()),u}}),null),c})()};_e(["click","input"]);const ht={name:"OhbugExtensionFeedback",onSetup:()=>{const e=document.createElement("div");e.id="OhbugExtensionFeedback-ROOT",document.body.appendChild(e),Ue(()=>x(dt,{}),e)}};function styleInject(css,ref){if(ref===void 0){ref={}}var insertAt=ref.insertAt;if(!css||typeof document==="undefined"){return}var head=document.head||document.getElementsByTagName("head")[0];var style=document.createElement("style");style.type="text/css";if(insertAt==="top"){if(head.firstChild){head.insertBefore(style,head.firstChild)}else{head.appendChild(style)}}else{head.appendChild(style)}if(style.styleSheet){style.styleSheet.cssText=css}else{style.appendChild(document.createTextNode(css))}};styleInject("/*\n! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.btn-main {\n z-index: 99999;\n position: fixed;\n right: 2rem;\n bottom: 2rem;\n display: flex;\n height: 2rem;\n width: 2.5rem;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n justify-content: center;\n border-radius: 0.25rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.btn-main:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.btn-send {\n border-radius: 0.125rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.btn-send:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n.tips {\n z-index: 99999;\n position: fixed;\n top: 0px;\n left: 50%;\n display: flex;\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n border-bottom-right-radius: 0.5rem;\n border-bottom-left-radius: 0.5rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n padding: 0.75rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.z-max {\n z-index: 99999;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.-bottom-full {\n bottom: -100%;\n}\n.-right-2 {\n right: -0.5rem;\n}\n.-right-3 {\n right: -0.75rem;\n}\n.-top-2 {\n top: -0.5rem;\n}\n.-top-3 {\n top: -0.75rem;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-20 {\n bottom: 5rem;\n}\n.left-0 {\n left: 0px;\n}\n.right-0 {\n right: 0px;\n}\n.right-8 {\n right: 2rem;\n}\n.top-0 {\n top: 0px;\n}\n.z-10 {\n z-index: 10;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.box-border {\n box-sizing: border-box;\n}\n.flex {\n display: flex;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-60 {\n height: 15rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-80 {\n width: 20rem;\n}\n.w-full {\n width: 100%;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.resize-none {\n resize: none;\n}\n.flex-col {\n flex-direction: column;\n}\n.items-center {\n align-items: center;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-sm {\n border-radius: 0.125rem;\n}\n.border-4 {\n border-width: 4px;\n}\n.border-solid {\n border-style: solid;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n.border-red-500 {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.bg-gray-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity));\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.bg-opacity-20 {\n --tw-bg-opacity: 0.2;\n}\n.bg-opacity-40 {\n --tw-bg-opacity: 0.4;\n}\n.bg-none {\n background-image: none;\n}\n.p-4 {\n padding: 1rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.font-semibold {\n font-weight: 600;\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.underline {\n text-decoration-line: underline;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}");module.exports=ht;
|
|
31
|
+
`)}function u(f){var y;z({working:!0});const a=document.elementFromPoint(f.clientX,f.clientY);if(((y=a==null?void 0:a.dataset)==null?void 0:y.ohbugSelector)!==void 0||a.tagName==="HTML")return!1;c(a)}function g(){document.addEventListener("mousemove",u)}function m(){document.removeEventListener("mousemove",u)}function _(f){var y;const a=document.elementFromPoint(f.clientX,f.clientY);if(((y=a==null?void 0:a.dataset)==null?void 0:y.ohbugSelector)!==void 0||a.tagName==="HTML"||p.selectedElement&&p.working)return!1;t(a),h(e()),m()}function T(){document.addEventListener("mousedown",_)}function I(){document.removeEventListener("mousedown",_)}function O(){t(null),m(),I(),z({working:!1,selectedElement:null})}function q(){z({working:!0,selectedElement:null}),t(null),g()}return pe(()=>{p.working?(g(),T()):(m(),I())}),ze(O),(()=>{const f=rt(),a=f.firstChild,y=a.nextSibling,E=y.nextSibling,P=E.nextSibling,M=P.nextSibling;return v(f,x(U,{get when(){return!p.selectedElement&&p.working},get children(){const d=st(),Ce=d.firstChild,Ne=Ce.firstChild,ue=Ne.nextSibling;return ue.$$click=O,v(ue,x(ie,{})),d}}),a),D(d=>{n=d},a),D(d=>{l=d},y),D(d=>{s=d},E),D(d=>{o=d},P),D(d=>{i=d},M),v(M,x(U,{get when(){return p.selectedElement&&p.working},get children(){return[(()=>{const d=ot();return d.$$click=O,v(d,x(ie,{})),d})(),(()=>{const d=it();return d.$$click=q,d.style.setProperty("transform","translate(4px, -8px)"),d})()]}})),j(()=>Re(M,`fixed -z-1 bg-black bg-opacity-20 border-4 rounded-sm transition cursor-pointer box-border pointer-events-none ${e()?"border-red-500 border-solid":"border-blue-500 border-dashed"}`)),f})()};_e(["click"]);const ut=A('<button class="btn-main" data-ohbug-selector type="button">'),ft=A('<div class="bg-white flex flex-col h-60 shadow z-max right-8 bottom-20 w-80 fixed" data-ohbug-selector><div class="bg-gray-300 p-4" data-ohbug-selector><textarea autofocus class="bg-transparent outline-none w-full resize-none" data-ohbug-selector maxlength="1000" placeholder="Tell me how you feel..." rows="4"></textarea><button class="cursor-pointer" data-ohbug-selector type="button"></button></div><div class="flex flex-1 p-4 justify-between items-center" data-ohbug-selector><span class="text-sm" data-ohbug-selector>Try<a class="ml-1 underline" data-ohbug-selector href="https://ohbug.net" rel="noreferrer" target="_blank">Ohbug</a>?</span><button class="btn-send" data-ohbug-selector type="button"></button></div><button class="rounded-full cursor-pointer flex bg-blue-500 h-6 -top-2 -right-2 w-6 z-10 items-center justify-center absolute" data-ohbug-selector type="button">'),at=A('<div class="z-max relative" data-ohbug-selector><div>'),dt=()=>{const[e,t]=F(!1),[n,l]=F("");function s(){z({working:!0})}const[o,i]=F(!1);async function r(){i(!0);let c,h;const u=Ke().client;if(p.selectedElement){const g={target:p.selectedElement};c=Xe(g),h=p.selectedElement.outerHTML;const m=u.createEvent({category:"feedback",type:"feedback",detail:{selector:c,outerHTML:h,feedback:n()}});await u.notify(m)}else{const g=u.createEvent({category:"feedback",type:"feedback",detail:{feedback:n()}});await u.notify(g)}t(!1),l(""),z({working:!1,selectedElement:null}),i(!1)}return pe(()=>{p.working===!1&&p.selectedElement===null||p.working&&!p.selectedElement?t(!1):t(!0)}),(()=>{const c=at(),h=c.firstChild;return v(c,x(U,{get when(){return p.working},get children(){return x(ct,{})}}),h),v(h,x(U,{get when(){return!(p.working&&!p.selectedElement)},get children(){const u=ut();return u.$$click=()=>t(g=>!g),v(u,()=>e()?"😆":"🙂"),u}}),null),v(h,x(U,{get when(){return e()},get children(){const u=ft(),g=u.firstChild,m=g.firstChild,_=m.nextSibling,T=g.nextSibling,I=T.firstChild,O=I.nextSibling,q=T.nextSibling;return m.$$input=f=>l(f.currentTarget.value),_.$$click=s,v(_,x(lt,{})),O.$$click=r,v(O,()=>o()?"Sending...":"Send"),q.$$click=()=>t(f=>!f),v(q,x(ie,{})),j(f=>{const a=p.selectedElement?"blue":"gray",y=!n()||o();return a!==f._v$&&((f._v$=a)!=null?_.style.setProperty("--color",a):_.style.removeProperty("--color")),y!==f._v$2&&(O.disabled=f._v$2=y),f},{_v$:void 0,_v$2:void 0}),j(()=>m.value=n()),u}}),null),c})()};_e(["click","input"]);const ht=e=>({name:"OhbugExtensionFeedback",onSetup:()=>{const t=document.createElement("div");t.id="OhbugExtensionFeedback-ROOT",(e||document.body).appendChild(t),Ue(()=>x(dt,{}),t)}});function styleInject(css,ref){if(ref===void 0){ref={}}var insertAt=ref.insertAt;if(!css||typeof document==="undefined"){return}var head=document.head||document.getElementsByTagName("head")[0];var style=document.createElement("style");style.type="text/css";if(insertAt==="top"){if(head.firstChild){head.insertBefore(style,head.firstChild)}else{head.appendChild(style)}}else{head.appendChild(style)}if(style.styleSheet){style.styleSheet.cssText=css}else{style.appendChild(document.createTextNode(css))}};styleInject("/*\n! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.btn-main {\n z-index: 99999;\n position: fixed;\n right: 2rem;\n bottom: 2rem;\n display: flex;\n height: 2rem;\n width: 2.5rem;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n justify-content: center;\n border-radius: 0.25rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.btn-main:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.btn-send {\n border-radius: 0.125rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.btn-send:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n.tips {\n z-index: 99999;\n position: fixed;\n top: 0px;\n left: 50%;\n display: flex;\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n border-bottom-right-radius: 0.5rem;\n border-bottom-left-radius: 0.5rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n padding: 0.75rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.z-max {\n z-index: 99999;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.-bottom-full {\n bottom: -100%;\n}\n.-right-2 {\n right: -0.5rem;\n}\n.-right-3 {\n right: -0.75rem;\n}\n.-top-2 {\n top: -0.5rem;\n}\n.-top-3 {\n top: -0.75rem;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-20 {\n bottom: 5rem;\n}\n.left-0 {\n left: 0px;\n}\n.right-0 {\n right: 0px;\n}\n.right-8 {\n right: 2rem;\n}\n.top-0 {\n top: 0px;\n}\n.z-10 {\n z-index: 10;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.box-border {\n box-sizing: border-box;\n}\n.flex {\n display: flex;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-60 {\n height: 15rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-80 {\n width: 20rem;\n}\n.w-full {\n width: 100%;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.resize-none {\n resize: none;\n}\n.flex-col {\n flex-direction: column;\n}\n.items-center {\n align-items: center;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-sm {\n border-radius: 0.125rem;\n}\n.border-4 {\n border-width: 4px;\n}\n.border-solid {\n border-style: solid;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n.border-red-500 {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.bg-gray-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity));\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.bg-opacity-20 {\n --tw-bg-opacity: 0.2;\n}\n.bg-opacity-40 {\n --tw-bg-opacity: 0.4;\n}\n.bg-none {\n background-image: none;\n}\n.p-4 {\n padding: 1rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.font-semibold {\n font-weight: 600;\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.underline {\n text-decoration-line: underline;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}");module.exports=ht;
|
package/dist/index.mjs
CHANGED
|
@@ -11,13 +11,13 @@ const k = 1, W = 2, be = {
|
|
|
11
11
|
var w = null;
|
|
12
12
|
let ne = null, b = null, $ = null, S = null, ee = 0;
|
|
13
13
|
function Pe(e, t) {
|
|
14
|
-
const n = b, l = w,
|
|
14
|
+
const n = b, l = w, o = e.length === 0, s = o ? be : {
|
|
15
15
|
owned: null,
|
|
16
16
|
cleanups: null,
|
|
17
17
|
context: null,
|
|
18
18
|
owner: t === void 0 ? l : t
|
|
19
|
-
}, i =
|
|
20
|
-
w =
|
|
19
|
+
}, i = o ? e : () => e(() => N(() => te(s)));
|
|
20
|
+
w = s, b = null;
|
|
21
21
|
try {
|
|
22
22
|
return H(i, !0);
|
|
23
23
|
} finally {
|
|
@@ -31,7 +31,7 @@ function F(e, t) {
|
|
|
31
31
|
observers: null,
|
|
32
32
|
observerSlots: null,
|
|
33
33
|
comparator: t.equals || void 0
|
|
34
|
-
}, l = (
|
|
34
|
+
}, l = (o) => (typeof o == "function" && (o = o(n.value)), $e(n, o));
|
|
35
35
|
return [ye.bind(n), l];
|
|
36
36
|
}
|
|
37
37
|
function j(e, t, n) {
|
|
@@ -85,9 +85,9 @@ function ye() {
|
|
|
85
85
|
function $e(e, t, n) {
|
|
86
86
|
let l = e.value;
|
|
87
87
|
return (!e.comparator || !e.comparator(l, t)) && (e.value = t, e.observers && e.observers.length && H(() => {
|
|
88
|
-
for (let
|
|
89
|
-
const
|
|
90
|
-
i && ne.disposed.has(
|
|
88
|
+
for (let o = 0; o < e.observers.length; o += 1) {
|
|
89
|
+
const s = e.observers[o], i = ne && ne.running;
|
|
90
|
+
i && ne.disposed.has(s), (i ? !s.tState : !s.state) && (s.pure ? $.push(s) : S.push(s), s.observers && ve(s)), i || (s.state = k);
|
|
91
91
|
}
|
|
92
92
|
if ($.length > 1e6)
|
|
93
93
|
throw $ = [], new Error();
|
|
@@ -104,13 +104,13 @@ function je(e, t, n) {
|
|
|
104
104
|
let l;
|
|
105
105
|
try {
|
|
106
106
|
l = e.fn(t);
|
|
107
|
-
} catch (
|
|
108
|
-
return e.pure && (e.state = k, e.owned && e.owned.forEach(te), e.owned = null), e.updatedAt = n + 1, xe(
|
|
107
|
+
} catch (o) {
|
|
108
|
+
return e.pure && (e.state = k, e.owned && e.owned.forEach(te), e.owned = null), e.updatedAt = n + 1, xe(o);
|
|
109
109
|
}
|
|
110
110
|
(!e.updatedAt || e.updatedAt <= n) && (e.updatedAt != null && "observers" in e ? $e(e, l) : e.value = l, e.updatedAt = n);
|
|
111
111
|
}
|
|
112
|
-
function re(e, t, n, l = k,
|
|
113
|
-
const
|
|
112
|
+
function re(e, t, n, l = k, o) {
|
|
113
|
+
const s = {
|
|
114
114
|
fn: e,
|
|
115
115
|
state: l,
|
|
116
116
|
updatedAt: null,
|
|
@@ -123,7 +123,7 @@ function re(e, t, n, l = k, s) {
|
|
|
123
123
|
context: null,
|
|
124
124
|
pure: n
|
|
125
125
|
};
|
|
126
|
-
return w === null || w !== be && (w.owned ? w.owned.push(
|
|
126
|
+
return w === null || w !== be && (w.owned ? w.owned.push(s) : w.owned = [s]), s;
|
|
127
127
|
}
|
|
128
128
|
function X(e) {
|
|
129
129
|
if (e.state === 0)
|
|
@@ -179,8 +179,8 @@ function Y(e, t) {
|
|
|
179
179
|
for (let n = 0; n < e.sources.length; n += 1) {
|
|
180
180
|
const l = e.sources[n];
|
|
181
181
|
if (l.sources) {
|
|
182
|
-
const
|
|
183
|
-
|
|
182
|
+
const o = l.state;
|
|
183
|
+
o === k ? l !== t && (!l.updatedAt || l.updatedAt < ee) && X(l) : o === W && Y(l, t);
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
186
|
}
|
|
@@ -194,10 +194,10 @@ function te(e) {
|
|
|
194
194
|
let t;
|
|
195
195
|
if (e.sources)
|
|
196
196
|
for (; e.sources.length; ) {
|
|
197
|
-
const n = e.sources.pop(), l = e.sourceSlots.pop(),
|
|
198
|
-
if (
|
|
199
|
-
const
|
|
200
|
-
l <
|
|
197
|
+
const n = e.sources.pop(), l = e.sourceSlots.pop(), o = n.observers;
|
|
198
|
+
if (o && o.length) {
|
|
199
|
+
const s = o.pop(), i = n.observerSlots.pop();
|
|
200
|
+
l < o.length && (s.sourceSlots[i] = l, o[l] = s, n.observerSlots[l] = i);
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
if (e.owned) {
|
|
@@ -226,52 +226,52 @@ function x(e, t) {
|
|
|
226
226
|
const Be = (e) => `Stale read from <${e}>.`;
|
|
227
227
|
function U(e) {
|
|
228
228
|
const t = e.keyed, n = ae(() => e.when, void 0, {
|
|
229
|
-
equals: (l,
|
|
229
|
+
equals: (l, o) => t ? l === o : !l == !o
|
|
230
230
|
});
|
|
231
231
|
return ae(() => {
|
|
232
232
|
const l = n();
|
|
233
233
|
if (l) {
|
|
234
|
-
const
|
|
235
|
-
return typeof
|
|
234
|
+
const o = e.children;
|
|
235
|
+
return typeof o == "function" && o.length > 0 ? N(() => o(t ? l : () => {
|
|
236
236
|
if (!N(n))
|
|
237
237
|
throw Be("Show");
|
|
238
238
|
return e.when;
|
|
239
|
-
})) :
|
|
239
|
+
})) : o;
|
|
240
240
|
}
|
|
241
241
|
return e.fallback;
|
|
242
242
|
}, void 0, void 0);
|
|
243
243
|
}
|
|
244
244
|
function Fe(e, t, n) {
|
|
245
|
-
let l = n.length,
|
|
246
|
-
for (; i <
|
|
245
|
+
let l = n.length, o = t.length, s = l, i = 0, r = 0, c = t[o - 1].nextSibling, h = null;
|
|
246
|
+
for (; i < o || r < s; ) {
|
|
247
247
|
if (t[i] === n[r]) {
|
|
248
248
|
i++, r++;
|
|
249
249
|
continue;
|
|
250
250
|
}
|
|
251
|
-
for (; t[
|
|
252
|
-
|
|
253
|
-
if (
|
|
254
|
-
const u =
|
|
255
|
-
for (; r <
|
|
251
|
+
for (; t[o - 1] === n[s - 1]; )
|
|
252
|
+
o--, s--;
|
|
253
|
+
if (o === i) {
|
|
254
|
+
const u = s < l ? r ? n[r - 1].nextSibling : n[s - r] : c;
|
|
255
|
+
for (; r < s; )
|
|
256
256
|
e.insertBefore(n[r++], u);
|
|
257
|
-
} else if (
|
|
258
|
-
for (; i <
|
|
257
|
+
} else if (s === r)
|
|
258
|
+
for (; i < o; )
|
|
259
259
|
(!h || !h.has(t[i])) && t[i].remove(), i++;
|
|
260
|
-
else if (t[i] === n[
|
|
261
|
-
const u = t[--
|
|
262
|
-
e.insertBefore(n[r++], t[i++].nextSibling), e.insertBefore(n[--
|
|
260
|
+
else if (t[i] === n[s - 1] && n[r] === t[o - 1]) {
|
|
261
|
+
const u = t[--o].nextSibling;
|
|
262
|
+
e.insertBefore(n[r++], t[i++].nextSibling), e.insertBefore(n[--s], u), t[o] = n[s];
|
|
263
263
|
} else {
|
|
264
264
|
if (!h) {
|
|
265
265
|
h = /* @__PURE__ */ new Map();
|
|
266
266
|
let g = r;
|
|
267
|
-
for (; g <
|
|
267
|
+
for (; g < s; )
|
|
268
268
|
h.set(n[g], g++);
|
|
269
269
|
}
|
|
270
270
|
const u = h.get(t[i]);
|
|
271
271
|
if (u != null)
|
|
272
|
-
if (r < u && u <
|
|
272
|
+
if (r < u && u < s) {
|
|
273
273
|
let g = i, m = 1, _;
|
|
274
|
-
for (; ++g <
|
|
274
|
+
for (; ++g < o && g < s && !((_ = h.get(t[g])) == null || _ !== u + m); )
|
|
275
275
|
m++;
|
|
276
276
|
if (m > u - r) {
|
|
277
277
|
const T = t[i];
|
|
@@ -288,26 +288,26 @@ function Fe(e, t, n) {
|
|
|
288
288
|
}
|
|
289
289
|
const de = "_$DX_DELEGATE";
|
|
290
290
|
function Ue(e, t, n, l = {}) {
|
|
291
|
-
let
|
|
292
|
-
return Pe((
|
|
293
|
-
|
|
291
|
+
let o;
|
|
292
|
+
return Pe((s) => {
|
|
293
|
+
o = s, t === document ? e() : v(t, e(), t.firstChild ? null : void 0, n);
|
|
294
294
|
}, l.owner), () => {
|
|
295
|
-
|
|
295
|
+
o(), t.textContent = "";
|
|
296
296
|
};
|
|
297
297
|
}
|
|
298
298
|
function A(e, t, n) {
|
|
299
299
|
let l;
|
|
300
|
-
const
|
|
300
|
+
const o = () => {
|
|
301
301
|
const i = document.createElement("template");
|
|
302
302
|
return i.innerHTML = e, n ? i.content.firstChild.firstChild : i.content.firstChild;
|
|
303
|
-
},
|
|
304
|
-
return
|
|
303
|
+
}, s = t ? () => N(() => document.importNode(l || (l = o()), !0)) : () => (l || (l = o())).cloneNode(!0);
|
|
304
|
+
return s.cloneNode = s, s;
|
|
305
305
|
}
|
|
306
306
|
function _e(e, t = window.document) {
|
|
307
307
|
const n = t[de] || (t[de] = /* @__PURE__ */ new Set());
|
|
308
|
-
for (let l = 0,
|
|
309
|
-
const
|
|
310
|
-
n.has(
|
|
308
|
+
for (let l = 0, o = e.length; l < o; l++) {
|
|
309
|
+
const s = e[l];
|
|
310
|
+
n.has(s) || (n.add(s), t.addEventListener(s, Ve));
|
|
311
311
|
}
|
|
312
312
|
}
|
|
313
313
|
function Re(e, t) {
|
|
@@ -319,7 +319,7 @@ function D(e, t, n) {
|
|
|
319
319
|
function v(e, t, n, l) {
|
|
320
320
|
if (n !== void 0 && !l && (l = []), typeof t != "function")
|
|
321
321
|
return J(e, t, l, n);
|
|
322
|
-
j((
|
|
322
|
+
j((o) => J(e, t(), o, n), l);
|
|
323
323
|
}
|
|
324
324
|
function Ve(e) {
|
|
325
325
|
const t = `$$${e.type}`;
|
|
@@ -335,29 +335,29 @@ function Ve(e) {
|
|
|
335
335
|
}); n; ) {
|
|
336
336
|
const l = n[t];
|
|
337
337
|
if (l && !n.disabled) {
|
|
338
|
-
const
|
|
339
|
-
if (
|
|
338
|
+
const o = n[`${t}Data`];
|
|
339
|
+
if (o !== void 0 ? l.call(n, o, e) : l.call(n, e), e.cancelBubble)
|
|
340
340
|
return;
|
|
341
341
|
}
|
|
342
342
|
n = n._$host || n.parentNode || n.host;
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
|
-
function J(e, t, n, l,
|
|
345
|
+
function J(e, t, n, l, o) {
|
|
346
346
|
for (; typeof n == "function"; )
|
|
347
347
|
n = n();
|
|
348
348
|
if (t === n)
|
|
349
349
|
return n;
|
|
350
|
-
const
|
|
351
|
-
if (e = i && n[0] && n[0].parentNode || e,
|
|
352
|
-
if (
|
|
350
|
+
const s = typeof t, i = l !== void 0;
|
|
351
|
+
if (e = i && n[0] && n[0].parentNode || e, s === "string" || s === "number")
|
|
352
|
+
if (s === "number" && (t = t.toString()), i) {
|
|
353
353
|
let r = n[0];
|
|
354
354
|
r && r.nodeType === 3 ? r.data = t : r = document.createTextNode(t), n = L(e, n, l, r);
|
|
355
355
|
} else
|
|
356
356
|
n !== "" && typeof n == "string" ? n = e.firstChild.data = t : n = e.textContent = t;
|
|
357
|
-
else if (t == null ||
|
|
357
|
+
else if (t == null || s === "boolean")
|
|
358
358
|
n = L(e, n, l);
|
|
359
359
|
else {
|
|
360
|
-
if (
|
|
360
|
+
if (s === "function")
|
|
361
361
|
return j(() => {
|
|
362
362
|
let r = t();
|
|
363
363
|
for (; typeof r == "function"; )
|
|
@@ -366,7 +366,7 @@ function J(e, t, n, l, s) {
|
|
|
366
366
|
}), () => n;
|
|
367
367
|
if (Array.isArray(t)) {
|
|
368
368
|
const r = [], c = n && Array.isArray(n);
|
|
369
|
-
if (le(r, t, n,
|
|
369
|
+
if (le(r, t, n, o))
|
|
370
370
|
return j(() => n = J(e, r, n, l, !0)), () => n;
|
|
371
371
|
if (r.length === 0) {
|
|
372
372
|
if (n = L(e, n, l), i)
|
|
@@ -388,57 +388,57 @@ function J(e, t, n, l, s) {
|
|
|
388
388
|
return n;
|
|
389
389
|
}
|
|
390
390
|
function le(e, t, n, l) {
|
|
391
|
-
let
|
|
392
|
-
for (let
|
|
393
|
-
let r = t[
|
|
391
|
+
let o = !1;
|
|
392
|
+
for (let s = 0, i = t.length; s < i; s++) {
|
|
393
|
+
let r = t[s], c = n && n[s], h;
|
|
394
394
|
if (!(r == null || r === !0 || r === !1))
|
|
395
395
|
if ((h = typeof r) == "object" && r.nodeType)
|
|
396
396
|
e.push(r);
|
|
397
397
|
else if (Array.isArray(r))
|
|
398
|
-
|
|
398
|
+
o = le(e, r, c) || o;
|
|
399
399
|
else if (h === "function")
|
|
400
400
|
if (l) {
|
|
401
401
|
for (; typeof r == "function"; )
|
|
402
402
|
r = r();
|
|
403
|
-
|
|
403
|
+
o = le(e, Array.isArray(r) ? r : [r], Array.isArray(c) ? c : [c]) || o;
|
|
404
404
|
} else
|
|
405
|
-
e.push(r),
|
|
405
|
+
e.push(r), o = !0;
|
|
406
406
|
else {
|
|
407
407
|
const u = String(r);
|
|
408
408
|
c && c.nodeType === 3 && c.data === u ? e.push(c) : e.push(document.createTextNode(u));
|
|
409
409
|
}
|
|
410
410
|
}
|
|
411
|
-
return
|
|
411
|
+
return o;
|
|
412
412
|
}
|
|
413
413
|
function he(e, t, n = null) {
|
|
414
|
-
for (let l = 0,
|
|
414
|
+
for (let l = 0, o = t.length; l < o; l++)
|
|
415
415
|
e.insertBefore(t[l], n);
|
|
416
416
|
}
|
|
417
417
|
function L(e, t, n, l) {
|
|
418
418
|
if (n === void 0)
|
|
419
419
|
return e.textContent = "";
|
|
420
|
-
const
|
|
420
|
+
const o = l || document.createTextNode("");
|
|
421
421
|
if (t.length) {
|
|
422
|
-
let
|
|
422
|
+
let s = !1;
|
|
423
423
|
for (let i = t.length - 1; i >= 0; i--) {
|
|
424
424
|
const r = t[i];
|
|
425
|
-
if (
|
|
425
|
+
if (o !== r) {
|
|
426
426
|
const c = r.parentNode === e;
|
|
427
|
-
!
|
|
427
|
+
!s && !i ? c ? e.replaceChild(o, r) : e.insertBefore(o, n) : c && r.remove();
|
|
428
428
|
} else
|
|
429
|
-
|
|
429
|
+
s = !0;
|
|
430
430
|
}
|
|
431
431
|
} else
|
|
432
|
-
e.insertBefore(
|
|
433
|
-
return [
|
|
432
|
+
e.insertBefore(o, n);
|
|
433
|
+
return [o];
|
|
434
434
|
}
|
|
435
435
|
function Ge(e, t, ...n) {
|
|
436
436
|
if (t === void 0)
|
|
437
437
|
throw new Error("`Ohbug warning(condition, format, ...args)` requires a warning message argument");
|
|
438
438
|
if (!e) {
|
|
439
439
|
let l = 0;
|
|
440
|
-
const
|
|
441
|
-
throw new Error(`Ohbug ${
|
|
440
|
+
const o = t.replace(/%s/g, () => n[l++]);
|
|
441
|
+
throw new Error(`Ohbug ${o}`);
|
|
442
442
|
}
|
|
443
443
|
}
|
|
444
444
|
var Ie = {};
|
|
@@ -465,18 +465,18 @@ var Xe = (e) => {
|
|
|
465
465
|
const l = [];
|
|
466
466
|
for (let i = 0; n && n.nodeType === Node.ELEMENT_NODE && n.nodeType !== Node.DOCUMENT_TYPE_NODE; n = n.previousSibling)
|
|
467
467
|
i && l.push(n), i += 1;
|
|
468
|
-
const
|
|
469
|
-
return
|
|
468
|
+
const o = typeof e.path > "u" ? We(e.target) : e.path, { outerHTML: s } = t;
|
|
469
|
+
return o.reverse().map((i) => (i.localName || "") + (i.id ? `#${i.id}` : "") + (i.className ? `.${i.className}` : "") + (i.outerHTML === s ? `:nth-child(${l.length})` : "")).filter((i) => !!i).join(" > ");
|
|
470
470
|
};
|
|
471
|
-
const
|
|
471
|
+
const oe = Symbol("store-raw"), R = Symbol("store-node");
|
|
472
472
|
function Se(e) {
|
|
473
473
|
let t = e[C];
|
|
474
474
|
if (!t && (Object.defineProperty(e, C, {
|
|
475
475
|
value: t = new Proxy(e, Qe)
|
|
476
476
|
}), !Array.isArray(e))) {
|
|
477
477
|
const n = Object.keys(e), l = Object.getOwnPropertyDescriptors(e);
|
|
478
|
-
for (let
|
|
479
|
-
const i = n[
|
|
478
|
+
for (let o = 0, s = n.length; o < s; o++) {
|
|
479
|
+
const i = n[o];
|
|
480
480
|
l[i].get && Object.defineProperty(e, i, {
|
|
481
481
|
enumerable: l[i].enumerable,
|
|
482
482
|
get: l[i].get.bind(t)
|
|
@@ -490,20 +490,20 @@ function Q(e) {
|
|
|
490
490
|
return e != null && typeof e == "object" && (e[C] || !(t = Object.getPrototypeOf(e)) || t === Object.prototype || Array.isArray(e));
|
|
491
491
|
}
|
|
492
492
|
function V(e, t = /* @__PURE__ */ new Set()) {
|
|
493
|
-
let n, l,
|
|
494
|
-
if (n = e != null && e[
|
|
493
|
+
let n, l, o, s;
|
|
494
|
+
if (n = e != null && e[oe])
|
|
495
495
|
return n;
|
|
496
496
|
if (!Q(e) || t.has(e))
|
|
497
497
|
return e;
|
|
498
498
|
if (Array.isArray(e)) {
|
|
499
499
|
Object.isFrozen(e) ? e = e.slice(0) : t.add(e);
|
|
500
500
|
for (let i = 0, r = e.length; i < r; i++)
|
|
501
|
-
|
|
501
|
+
o = e[i], (l = V(o, t)) !== o && (e[i] = l);
|
|
502
502
|
} else {
|
|
503
503
|
Object.isFrozen(e) ? e = Object.assign({}, e) : t.add(e);
|
|
504
504
|
const i = Object.keys(e), r = Object.getOwnPropertyDescriptors(e);
|
|
505
505
|
for (let c = 0, h = i.length; c < h; c++)
|
|
506
|
-
|
|
506
|
+
s = i[c], !r[s].get && (o = e[s], (l = V(o, t)) !== o && (e[s] = l));
|
|
507
507
|
}
|
|
508
508
|
return e;
|
|
509
509
|
}
|
|
@@ -513,7 +513,7 @@ function ce(e) {
|
|
|
513
513
|
value: t = /* @__PURE__ */ Object.create(null)
|
|
514
514
|
}), t;
|
|
515
515
|
}
|
|
516
|
-
function
|
|
516
|
+
function se(e, t, n) {
|
|
517
517
|
return e[t] || (e[t] = ke(n));
|
|
518
518
|
}
|
|
519
519
|
function Ye(e, t) {
|
|
@@ -538,24 +538,24 @@ function ke(e) {
|
|
|
538
538
|
}
|
|
539
539
|
const Qe = {
|
|
540
540
|
get(e, t, n) {
|
|
541
|
-
if (t ===
|
|
541
|
+
if (t === oe)
|
|
542
542
|
return e;
|
|
543
543
|
if (t === C)
|
|
544
544
|
return n;
|
|
545
545
|
if (t === fe)
|
|
546
546
|
return Ae(e), n;
|
|
547
|
-
const l = ce(e),
|
|
548
|
-
let
|
|
547
|
+
const l = ce(e), o = l[t];
|
|
548
|
+
let s = o ? o() : e[t];
|
|
549
549
|
if (t === R || t === "__proto__")
|
|
550
|
-
return
|
|
551
|
-
if (!
|
|
550
|
+
return s;
|
|
551
|
+
if (!o) {
|
|
552
552
|
const i = Object.getOwnPropertyDescriptor(e, t);
|
|
553
|
-
we() && (typeof
|
|
553
|
+
we() && (typeof s != "function" || e.hasOwnProperty(t)) && !(i && i.get) && (s = se(l, t, s)());
|
|
554
554
|
}
|
|
555
|
-
return Q(
|
|
555
|
+
return Q(s) ? Se(s) : s;
|
|
556
556
|
},
|
|
557
557
|
has(e, t) {
|
|
558
|
-
return t ===
|
|
558
|
+
return t === oe || t === C || t === fe || t === R || t === "__proto__" ? !0 : (this.get(e, t, e), t in e);
|
|
559
559
|
},
|
|
560
560
|
set() {
|
|
561
561
|
return !0;
|
|
@@ -569,21 +569,21 @@ const Qe = {
|
|
|
569
569
|
function Z(e, t, n, l = !1) {
|
|
570
570
|
if (!l && e[t] === n)
|
|
571
571
|
return;
|
|
572
|
-
const
|
|
572
|
+
const o = e[t], s = e.length;
|
|
573
573
|
n === void 0 ? delete e[t] : e[t] = n;
|
|
574
574
|
let i = ce(e), r;
|
|
575
|
-
if ((r =
|
|
576
|
-
for (let c = e.length; c <
|
|
575
|
+
if ((r = se(i, t, o)) && r.$(() => n), Array.isArray(e) && e.length !== s) {
|
|
576
|
+
for (let c = e.length; c < s; c++)
|
|
577
577
|
(r = i[c]) && r.$();
|
|
578
|
-
(r =
|
|
578
|
+
(r = se(i, "length", s)) && r.$(e.length);
|
|
579
579
|
}
|
|
580
580
|
(r = i._) && r.$();
|
|
581
581
|
}
|
|
582
582
|
function Oe(e, t) {
|
|
583
583
|
const n = Object.keys(t);
|
|
584
584
|
for (let l = 0; l < n.length; l += 1) {
|
|
585
|
-
const
|
|
586
|
-
Z(e,
|
|
585
|
+
const o = n[l];
|
|
586
|
+
Z(e, o, t[o]);
|
|
587
587
|
}
|
|
588
588
|
}
|
|
589
589
|
function Ze(e, t) {
|
|
@@ -592,15 +592,15 @@ function Ze(e, t) {
|
|
|
592
592
|
return;
|
|
593
593
|
let n = 0, l = t.length;
|
|
594
594
|
for (; n < l; n++) {
|
|
595
|
-
const
|
|
596
|
-
e[n] !==
|
|
595
|
+
const o = t[n];
|
|
596
|
+
e[n] !== o && Z(e, n, o);
|
|
597
597
|
}
|
|
598
598
|
Z(e, "length", l);
|
|
599
599
|
} else
|
|
600
600
|
Oe(e, t);
|
|
601
601
|
}
|
|
602
602
|
function B(e, t, n = []) {
|
|
603
|
-
let l,
|
|
603
|
+
let l, o = e;
|
|
604
604
|
if (t.length > 1) {
|
|
605
605
|
l = t.shift();
|
|
606
606
|
const i = typeof l, r = Array.isArray(e);
|
|
@@ -625,26 +625,26 @@ function B(e, t, n = []) {
|
|
|
625
625
|
B(e[l], t, [l].concat(n));
|
|
626
626
|
return;
|
|
627
627
|
}
|
|
628
|
-
|
|
628
|
+
o = e[l], n = [l].concat(n);
|
|
629
629
|
}
|
|
630
|
-
let
|
|
631
|
-
typeof
|
|
630
|
+
let s = t[0];
|
|
631
|
+
typeof s == "function" && (s = s(o, n), s === o) || l === void 0 && s == null || (s = V(s), l === void 0 || Q(o) && Q(s) && !Array.isArray(s) ? Oe(o, s) : Z(e, l, s));
|
|
632
632
|
}
|
|
633
633
|
function et(...[e, t]) {
|
|
634
|
-
const n = V(e || {}), l = Array.isArray(n),
|
|
635
|
-
function
|
|
634
|
+
const n = V(e || {}), l = Array.isArray(n), o = Se(n);
|
|
635
|
+
function s(...i) {
|
|
636
636
|
Le(() => {
|
|
637
637
|
l && i.length === 1 ? Ze(n, i[0]) : B(n, i);
|
|
638
638
|
});
|
|
639
639
|
}
|
|
640
|
-
return [
|
|
640
|
+
return [o, s];
|
|
641
641
|
}
|
|
642
642
|
const [p, z] = et({ working: !1, selectedElement: null }), tt = /* @__PURE__ */ A('<svg data-ohbug-selector height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" data-ohbug-selector fill="none"></path><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636z" data-ohbug-selector fill="rgba(255,255,255,1)">'), nt = /* @__PURE__ */ A('<svg data-ohbug-selector height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" data-ohbug-selector fill="none"></path><path d="M3 3h2v2H3V3zm4 0h2v2H7V3zm4 0h2v2h-2V3zm4 0h2v2h-2V3zm4 0h2v2h-2V3zm0 4h2v2h-2V7zM3 19h2v2H3v-2zm0-4h2v2H3v-2zm0-4h2v2H3v-2zm0-4h2v2H3V7zm7.667 4l1.036-1.555A1 1 0 0 1 12.535 9h2.93a1 1 0 0 1 .832.445L17.333 11H20a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1h2.667zM9 19h10v-6h-2.737l-1.333-2h-1.86l-1.333 2H9v6zm5-1a2 2 0 1 1 0-4 2 2 0 0 1 0 4z" data-ohbug-selector>'), ie = () => tt(), lt = () => (() => {
|
|
643
643
|
const e = nt();
|
|
644
644
|
return e.firstChild.nextSibling.style.setProperty("fill", "var(--color)"), e;
|
|
645
|
-
})(),
|
|
645
|
+
})(), ot = /* @__PURE__ */ A('<div class="bg-none border-solid border-4 border-blue-500 transition top-0 right-0 bottom-0 left-0 z-10 fixed pointer-events-none" data-ohbug-selector><div class="tips" data-ohbug-selector>Select element on the page<button class="stop-btn" type="button">'), st = /* @__PURE__ */ A('<button class="rounded-full cursor-pointer flex bg-red-500 h-6 -top-3 -right-3 w-6 z-10 items-center justify-center absolute pointer-events-auto" data-ohbug-selector type="button">'), it = /* @__PURE__ */ A('<button class="border-solid cursor-pointer font-semibold bg-red-500 border-4 border-red-500 -bottom-full text-white right-0 absolute pointer-events-auto" data-ohbug-selector type="button">Change'), rt = /* @__PURE__ */ A('<div class="-z-1 fixed" data-ohbug-selector><div class="bg-black bg-opacity-40 transition -z-1 fixed pointer-events-none" data-ohbug-selector></div><div class="bg-black bg-opacity-40 transition -z-1 fixed pointer-events-none" data-ohbug-selector></div><div class="bg-black bg-opacity-40 transition -z-1 fixed pointer-events-none" data-ohbug-selector></div><div class="bg-black bg-opacity-40 transition -z-1 fixed pointer-events-none" data-ohbug-selector></div><div data-ohbug-selector>'), ct = () => {
|
|
646
646
|
const [e, t] = F();
|
|
647
|
-
let n, l,
|
|
647
|
+
let n, l, o, s, i;
|
|
648
648
|
const r = 2;
|
|
649
649
|
function c(f) {
|
|
650
650
|
if (!f || f.tagName === "HTML")
|
|
@@ -672,12 +672,12 @@ const [p, z] = et({ working: !1, selectedElement: null }), tt = /* @__PURE__ */
|
|
|
672
672
|
right: 0;
|
|
673
673
|
bottom: 0;
|
|
674
674
|
left: ${P}px;
|
|
675
|
-
`),
|
|
675
|
+
`), o == null || o.setAttribute("style", `
|
|
676
676
|
width: ${a + d}px;
|
|
677
677
|
top: ${M}px;
|
|
678
678
|
bottom: 0;
|
|
679
679
|
left: 0;
|
|
680
|
-
`),
|
|
680
|
+
`), s == null || s.setAttribute("style", `
|
|
681
681
|
width: ${d}px;
|
|
682
682
|
height: ${y}px;
|
|
683
683
|
top: ${E}px;
|
|
@@ -752,7 +752,7 @@ const [p, z] = et({ working: !1, selectedElement: null }), tt = /* @__PURE__ */
|
|
|
752
752
|
return !p.selectedElement && p.working;
|
|
753
753
|
},
|
|
754
754
|
get children() {
|
|
755
|
-
const d =
|
|
755
|
+
const d = ot(), Ce = d.firstChild, Ne = Ce.firstChild, ue = Ne.nextSibling;
|
|
756
756
|
return ue.$$click = O, v(ue, x(ie, {})), d;
|
|
757
757
|
}
|
|
758
758
|
}), a), D((d) => {
|
|
@@ -760,9 +760,9 @@ const [p, z] = et({ working: !1, selectedElement: null }), tt = /* @__PURE__ */
|
|
|
760
760
|
}, a), D((d) => {
|
|
761
761
|
l = d;
|
|
762
762
|
}, y), D((d) => {
|
|
763
|
-
s = d;
|
|
764
|
-
}, E), D((d) => {
|
|
765
763
|
o = d;
|
|
764
|
+
}, E), D((d) => {
|
|
765
|
+
s = d;
|
|
766
766
|
}, P), D((d) => {
|
|
767
767
|
i = d;
|
|
768
768
|
}, M), v(M, x(U, {
|
|
@@ -771,7 +771,7 @@ const [p, z] = et({ working: !1, selectedElement: null }), tt = /* @__PURE__ */
|
|
|
771
771
|
},
|
|
772
772
|
get children() {
|
|
773
773
|
return [(() => {
|
|
774
|
-
const d =
|
|
774
|
+
const d = st();
|
|
775
775
|
return d.$$click = O, v(d, x(ie, {})), d;
|
|
776
776
|
})(), (() => {
|
|
777
777
|
const d = it();
|
|
@@ -784,12 +784,12 @@ const [p, z] = et({ working: !1, selectedElement: null }), tt = /* @__PURE__ */
|
|
|
784
784
|
_e(["click"]);
|
|
785
785
|
const ut = /* @__PURE__ */ A('<button class="btn-main" data-ohbug-selector type="button">'), ft = /* @__PURE__ */ A('<div class="bg-white flex flex-col h-60 shadow z-max right-8 bottom-20 w-80 fixed" data-ohbug-selector><div class="bg-gray-300 p-4" data-ohbug-selector><textarea autofocus class="bg-transparent outline-none w-full resize-none" data-ohbug-selector maxlength="1000" placeholder="Tell me how you feel..." rows="4"></textarea><button class="cursor-pointer" data-ohbug-selector type="button"></button></div><div class="flex flex-1 p-4 justify-between items-center" data-ohbug-selector><span class="text-sm" data-ohbug-selector>Try<a class="ml-1 underline" data-ohbug-selector href="https://ohbug.net" rel="noreferrer" target="_blank">Ohbug</a>?</span><button class="btn-send" data-ohbug-selector type="button"></button></div><button class="rounded-full cursor-pointer flex bg-blue-500 h-6 -top-2 -right-2 w-6 z-10 items-center justify-center absolute" data-ohbug-selector type="button">'), at = /* @__PURE__ */ A('<div class="z-max relative" data-ohbug-selector><div>'), dt = () => {
|
|
786
786
|
const [e, t] = F(!1), [n, l] = F("");
|
|
787
|
-
function
|
|
787
|
+
function o() {
|
|
788
788
|
z({
|
|
789
789
|
working: !0
|
|
790
790
|
});
|
|
791
791
|
}
|
|
792
|
-
const [
|
|
792
|
+
const [s, i] = F(!1);
|
|
793
793
|
async function r() {
|
|
794
794
|
i(!0);
|
|
795
795
|
let c, h;
|
|
@@ -849,8 +849,8 @@ const ut = /* @__PURE__ */ A('<button class="btn-main" data-ohbug-selector type=
|
|
|
849
849
|
},
|
|
850
850
|
get children() {
|
|
851
851
|
const u = ft(), g = u.firstChild, m = g.firstChild, _ = m.nextSibling, T = g.nextSibling, I = T.firstChild, O = I.nextSibling, q = T.nextSibling;
|
|
852
|
-
return m.$$input = (f) => l(f.currentTarget.value), _.$$click =
|
|
853
|
-
const a = p.selectedElement ? "blue" : "gray", y = !n() ||
|
|
852
|
+
return m.$$input = (f) => l(f.currentTarget.value), _.$$click = o, v(_, x(lt, {})), O.$$click = r, v(O, () => s() ? "Sending..." : "Send"), q.$$click = () => t((f) => !f), v(q, x(ie, {})), j((f) => {
|
|
853
|
+
const a = p.selectedElement ? "blue" : "gray", y = !n() || s();
|
|
854
854
|
return a !== f._v$ && ((f._v$ = a) != null ? _.style.setProperty("--color", a) : _.style.removeProperty("--color")), y !== f._v$2 && (O.disabled = f._v$2 = y), f;
|
|
855
855
|
}, {
|
|
856
856
|
_v$: void 0,
|
|
@@ -861,13 +861,13 @@ const ut = /* @__PURE__ */ A('<button class="btn-main" data-ohbug-selector type=
|
|
|
861
861
|
})();
|
|
862
862
|
};
|
|
863
863
|
_e(["click", "input"]);
|
|
864
|
-
const ht = {
|
|
864
|
+
const ht = (e) => ({
|
|
865
865
|
name: "OhbugExtensionFeedback",
|
|
866
866
|
onSetup: () => {
|
|
867
|
-
const
|
|
868
|
-
|
|
867
|
+
const t = document.createElement("div");
|
|
868
|
+
t.id = "OhbugExtensionFeedback-ROOT", (e || document.body).appendChild(t), Ue(() => x(dt, {}), t);
|
|
869
869
|
}
|
|
870
|
-
};
|
|
870
|
+
});
|
|
871
871
|
function styleInject(css,ref){if(ref===void 0){ref={}}var insertAt=ref.insertAt;if(!css||typeof document==="undefined"){return}var head=document.head||document.getElementsByTagName("head")[0];var style=document.createElement("style");style.type="text/css";if(insertAt==="top"){if(head.firstChild){head.insertBefore(style,head.firstChild)}else{head.appendChild(style)}}else{head.appendChild(style)}if(style.styleSheet){style.styleSheet.cssText=css}else{style.appendChild(document.createTextNode(css))}};styleInject("/*\n! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.btn-main {\n z-index: 99999;\n position: fixed;\n right: 2rem;\n bottom: 2rem;\n display: flex;\n height: 2rem;\n width: 2.5rem;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n justify-content: center;\n border-radius: 0.25rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.btn-main:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.btn-send {\n border-radius: 0.125rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.btn-send:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n.tips {\n z-index: 99999;\n position: fixed;\n top: 0px;\n left: 50%;\n display: flex;\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n border-bottom-right-radius: 0.5rem;\n border-bottom-left-radius: 0.5rem;\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n padding: 0.75rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.z-max {\n z-index: 99999;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.-bottom-full {\n bottom: -100%;\n}\n.-right-2 {\n right: -0.5rem;\n}\n.-right-3 {\n right: -0.75rem;\n}\n.-top-2 {\n top: -0.5rem;\n}\n.-top-3 {\n top: -0.75rem;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-20 {\n bottom: 5rem;\n}\n.left-0 {\n left: 0px;\n}\n.right-0 {\n right: 0px;\n}\n.right-8 {\n right: 2rem;\n}\n.top-0 {\n top: 0px;\n}\n.z-10 {\n z-index: 10;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.box-border {\n box-sizing: border-box;\n}\n.flex {\n display: flex;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-60 {\n height: 15rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-80 {\n width: 20rem;\n}\n.w-full {\n width: 100%;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.resize-none {\n resize: none;\n}\n.flex-col {\n flex-direction: column;\n}\n.items-center {\n align-items: center;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-sm {\n border-radius: 0.125rem;\n}\n.border-4 {\n border-width: 4px;\n}\n.border-solid {\n border-style: solid;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n.border-red-500 {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.bg-gray-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity));\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.bg-opacity-20 {\n --tw-bg-opacity: 0.2;\n}\n.bg-opacity-40 {\n --tw-bg-opacity: 0.4;\n}\n.bg-none {\n background-image: none;\n}\n.p-4 {\n padding: 1rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.font-semibold {\n font-weight: 600;\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.underline {\n text-decoration-line: underline;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}");
|
|
872
872
|
export {
|
|
873
873
|
ht as default
|