@fluid-topics/ft-reader-feedback 1.0.21 → 1.0.23
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.
|
@@ -132,7 +132,9 @@ class FtReaderFeedback extends FtLitElementWithI18n {
|
|
|
132
132
|
const disliked = this.ratingType === "LIKE" && this.ratingValue === 0;
|
|
133
133
|
const liked = this.ratingType === "LIKE" && this.ratingValue === 1;
|
|
134
134
|
return html `
|
|
135
|
-
<ft-switch
|
|
135
|
+
<ft-switch unselectable
|
|
136
|
+
@change=${(e) => this.rate(e.detail)}
|
|
137
|
+
part="rating rating-like">
|
|
136
138
|
<ft-switch-option .value=${1}
|
|
137
139
|
?selected=${liked}
|
|
138
140
|
.iconVariant=${this.iconVariant}
|
|
@@ -151,7 +153,8 @@ class FtReaderFeedback extends FtLitElementWithI18n {
|
|
|
151
153
|
const no = this.ratingType === "DICHOTOMOUS" && this.ratingValue === 0;
|
|
152
154
|
const yes = this.ratingType === "DICHOTOMOUS" && this.ratingValue === 1;
|
|
153
155
|
return html `
|
|
154
|
-
<ft-switch
|
|
156
|
+
<ft-switch unselectable
|
|
157
|
+
@change=${(e) => this.rate(e.detail)}
|
|
155
158
|
part="rating rating-dichotomous">
|
|
156
159
|
<ft-switch-option .value=${1}
|
|
157
160
|
?selected=${yes}>
|
|
@@ -635,7 +635,7 @@ const ue=Symbol.for(""),be=t=>{if((null==t?void 0:t.r)===ue)return null==t?void
|
|
|
635
635
|
position: relative;
|
|
636
636
|
}
|
|
637
637
|
|
|
638
|
-
.ft-switch-option--
|
|
638
|
+
.ft-switch-option--selected .ft-switch-option--content:before {
|
|
639
639
|
background-color: ${Ct.selectedBackgroundColor};
|
|
640
640
|
border-radius: ${Me.borderRadiusLeft} ${Me.borderRadiusRight} ${Me.borderRadiusRight} ${Me.borderRadiusLeft};
|
|
641
641
|
position: absolute;
|
|
@@ -656,7 +656,7 @@ const ue=Symbol.for(""),be=t=>{if((null==t?void 0:t.r)===ue)return null==t?void
|
|
|
656
656
|
${e.setVariable(ot.lineHeight,"var(--ft-switch-option-internal-content-height)")}
|
|
657
657
|
}
|
|
658
658
|
|
|
659
|
-
.ft-switch-option--
|
|
659
|
+
.ft-switch-option--selected .ft-switch-option--label {
|
|
660
660
|
color: ${Ct.selectedTextColor};
|
|
661
661
|
}
|
|
662
662
|
|
|
@@ -681,14 +681,14 @@ const ue=Symbol.for(""),be=t=>{if((null==t?void 0:t.r)===ue)return null==t?void
|
|
|
681
681
|
color: ${Ct.iconColor};
|
|
682
682
|
}
|
|
683
683
|
|
|
684
|
-
.ft-switch-option--
|
|
684
|
+
.ft-switch-option--selected ft-icon {
|
|
685
685
|
color: ${Ct.selectedTextColor};
|
|
686
686
|
}
|
|
687
|
-
`;var Fe=function(t,e,i,o){for(var s,n=arguments.length,r=n<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o,a=t.length-1;a>=0;a--)(s=t[a])&&(r=(n<3?s(r):n>3?s(e,i,r):s(e,i))||r);return n>3&&r&&Object.defineProperty(e,i,r),r};class Le extends CustomEvent{constructor(){super("option-change",{bubbles:!0,composed:!0})}}class Pe extends e.FtLitElement{constructor(){super(...arguments),this.value="",this.label="",this.tooltipPosition="bottom",this.selected=!1,this.trailingIcon=!1,this.unselectable=!1}focus(){this.input.focus()}updated(t){super.updated(t),t.has("selected")&&this.dispatchEvent(new Le)}render(){const t={"ft-switch-option":!0,"ft-switch-option--trailing-icon":this.trailingIcon};return this.addTooltip(i.html`
|
|
687
|
+
`;var Fe=function(t,e,i,o){for(var s,n=arguments.length,r=n<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o,a=t.length-1;a>=0;a--)(s=t[a])&&(r=(n<3?s(r):n>3?s(e,i,r):s(e,i))||r);return n>3&&r&&Object.defineProperty(e,i,r),r};class Le extends CustomEvent{constructor(){super("option-change",{bubbles:!0,composed:!0})}}class Pe extends e.FtLitElement{constructor(){super(...arguments),this.value="",this.label="",this.tooltipPosition="bottom",this.selected=!1,this.trailingIcon=!1,this.unselectable=!1}focus(){this.input.focus()}updated(t){super.updated(t),t.has("selected")&&this.dispatchEvent(new Le)}render(){const t={"ft-switch-option":!0,"ft-switch-option--trailing-icon":this.trailingIcon,"ft-switch-option--selected":this.selected};return this.addTooltip(i.html`
|
|
688
|
+
<input id="input" type="radio" class="ft-switch-option--input"
|
|
689
|
+
.checked=${this.selected}>
|
|
688
690
|
<label part="label" for="input" class=${n.classMap(t)}
|
|
689
691
|
@click=${this.onChange}>
|
|
690
|
-
<input id="input" type="radio" class="ft-switch-option--input"
|
|
691
|
-
.checked=${this.selected}>
|
|
692
692
|
<div class="ft-switch-option--content">
|
|
693
693
|
<ft-ripple part="ripple" class="ft-switch-option--ripple"></ft-ripple>
|
|
694
694
|
<ft-typography part="text"
|
|
@@ -713,7 +713,7 @@ const ue=Symbol.for(""),be=t=>{if((null==t?void 0:t.r)===ue)return null==t?void
|
|
|
713
713
|
<slot @slotchange=${this.onSlotchange}
|
|
714
714
|
@option-change=${this.onOptionChange}></slot>
|
|
715
715
|
</div>
|
|
716
|
-
`}onKeyDown(t){let e;"ArrowDown"!=t.key&&"ArrowRight"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)+1:0),"ArrowUp"!=t.key&&"ArrowLeft"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)-1:this.options.length-1),null!=e&&(t.preventDefault(),this.options[this.fixIndex(e)].selected=!0)}fixIndex(t){return t<0?this.options.length-1:t>this.options.length-1?0:t}onSlotchange(){var t;this.options=[],null===(t=this.slottedContent)||void 0===t||t.assignedElements().forEach((t=>{t instanceof Pe&&this.registerOption(t)})),this.selectedOption=this.options.find((t=>t.selected))}registerOption(t){t.setAttribute("tabindex","-1"),t.unselectable=this.unselectable,this.options.push(t)}onOptionChange(t){t.stopPropagation();let e=t.target;e.selected?this.selectedOption=e:this.selectedOption=this.options.find((t=>t.selected))}focus(){this.ftSwitchDiv.focus()}updateOptions(){this.options.forEach((t=>{t.selected=t
|
|
716
|
+
`}onKeyDown(t){let e;"ArrowDown"!=t.key&&"ArrowRight"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)+1:0),"ArrowUp"!=t.key&&"ArrowLeft"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)-1:this.options.length-1),null!=e&&(t.preventDefault(),this.options[this.fixIndex(e)].selected=!0)}fixIndex(t){return t<0?this.options.length-1:t>this.options.length-1?0:t}onSlotchange(){var t;this.options=[],null===(t=this.slottedContent)||void 0===t||t.assignedElements().forEach((t=>{t instanceof Pe&&this.registerOption(t)})),this.selectedOption=this.options.find((t=>t.selected))}registerOption(t){t.setAttribute("tabindex","-1"),t.unselectable=this.unselectable,this.options.push(t)}onOptionChange(t){t.stopPropagation();let e=t.target;e.selected?this.selectedOption=e:this.selectedOption=this.options.find((t=>t.selected))}focus(){this.ftSwitchDiv.focus()}updateOptions(){this.options.forEach((t=>{t.selected=t===this.selectedOption}))}}We.elementDefinitions={},We.styles=i.css`
|
|
717
717
|
:host {
|
|
718
718
|
display: inline-block;
|
|
719
719
|
}
|
|
@@ -1116,7 +1116,9 @@ const ue=Symbol.for(""),be=t=>{if((null==t?void 0:t.r)===ue)return null==t?void
|
|
|
1116
1116
|
`}))}
|
|
1117
1117
|
</div>
|
|
1118
1118
|
`;case"LIKE":const t="LIKE"===this.ratingType&&0===this.ratingValue,e="LIKE"===this.ratingType&&1===this.ratingValue;return i.html`
|
|
1119
|
-
<ft-switch
|
|
1119
|
+
<ft-switch unselectable
|
|
1120
|
+
@change=${t=>this.rate(t.detail)}
|
|
1121
|
+
part="rating rating-like">
|
|
1120
1122
|
<ft-switch-option .value=${1}
|
|
1121
1123
|
?selected=${e}
|
|
1122
1124
|
.iconVariant=${this.iconVariant}
|
|
@@ -1131,7 +1133,8 @@ const ue=Symbol.for(""),be=t=>{if((null==t?void 0:t.r)===ue)return null==t?void
|
|
|
1131
1133
|
</ft-switch-option>
|
|
1132
1134
|
</ft-switch>
|
|
1133
1135
|
`;case"DICHOTOMOUS":const o="DICHOTOMOUS"===this.ratingType&&0===this.ratingValue,s="DICHOTOMOUS"===this.ratingType&&1===this.ratingValue;return i.html`
|
|
1134
|
-
<ft-switch
|
|
1136
|
+
<ft-switch unselectable
|
|
1137
|
+
@change=${t=>this.rate(t.detail)}
|
|
1135
1138
|
part="rating rating-dichotomous">
|
|
1136
1139
|
<ft-switch-option .value=${1}
|
|
1137
1140
|
?selected=${s}>
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
*
|
|
15
15
|
* @see https://github.com/webcomponents/polyfills/tree/master/packages/scoped-custom-element-registry
|
|
16
16
|
*/
|
|
17
|
-
if(!ShadowRoot.prototype.createElement){const t=window.HTMLElement,e=window.customElements.define,i=window.customElements.get,n=window.customElements,o=new WeakMap,r=new WeakMap,s=new WeakMap,a=new WeakMap;let l;window.CustomElementRegistry=class{constructor(){this._definitionsByTag=new Map,this._definitionsByClass=new Map,this._whenDefinedPromises=new Map,this._awaitingUpgrade=new Map}define(t,o){if(t=t.toLowerCase(),void 0!==this._getDefinition(t))throw new DOMException(`Failed to execute 'define' on 'CustomElementRegistry': the name "${t}" has already been used with this registry`);if(void 0!==this._definitionsByClass.get(o))throw new DOMException("Failed to execute 'define' on 'CustomElementRegistry': this constructor has already been used with this registry");const a=o.prototype.attributeChangedCallback,l=new Set(o.observedAttributes||[]);f(o,l,a);const c={elementClass:o,connectedCallback:o.prototype.connectedCallback,disconnectedCallback:o.prototype.disconnectedCallback,adoptedCallback:o.prototype.adoptedCallback,attributeChangedCallback:a,formAssociated:o.formAssociated,formAssociatedCallback:o.prototype.formAssociatedCallback,formDisabledCallback:o.prototype.formDisabledCallback,formResetCallback:o.prototype.formResetCallback,formStateRestoreCallback:o.prototype.formStateRestoreCallback,observedAttributes:l};this._definitionsByTag.set(t,c),this._definitionsByClass.set(o,c);let u=i.call(n,t);u||(u=h(t),e.call(n,t,u)),this===window.customElements&&(s.set(o,c),c.standInClass=u);const d=this._awaitingUpgrade.get(t);if(d){this._awaitingUpgrade.delete(t);for(const t of d)r.delete(t),p(t,c,!0)}const v=this._whenDefinedPromises.get(t);return void 0!==v&&(v.resolve(o),this._whenDefinedPromises.delete(t)),o}upgrade(){b.push(this),n.upgrade.apply(n,arguments),b.pop()}get(t){const e=this._definitionsByTag.get(t);return e?.elementClass}_getDefinition(t){return this._definitionsByTag.get(t)}whenDefined(t){const e=this._getDefinition(t);if(void 0!==e)return Promise.resolve(e.elementClass);let i=this._whenDefinedPromises.get(t);return void 0===i&&(i={},i.promise=new Promise((t=>i.resolve=t)),this._whenDefinedPromises.set(t,i)),i.promise}_upgradeWhenDefined(t,e,i){let n=this._awaitingUpgrade.get(e);n||this._awaitingUpgrade.set(e,n=new Set),i?n.add(t):n.delete(t)}},window.HTMLElement=function(){let e=l;if(e)return l=void 0,e;const i=s.get(this.constructor);if(!i)throw new TypeError("Illegal constructor (custom element class must be registered with global customElements registry to be newable)");return e=Reflect.construct(t,[],i.standInClass),Object.setPrototypeOf(e,this.constructor.prototype),o.set(e,i),e},window.HTMLElement.prototype=t.prototype;const c=t=>t===document||t instanceof ShadowRoot,u=t=>{let e=t.getRootNode();if(!c(e)){const t=b[b.length-1];if(t instanceof CustomElementRegistry)return t;e=t.getRootNode(),c(e)||(e=a.get(e)?.getRootNode()||document)}return e.customElements},h=e=>class{static get formAssociated(){return!0}constructor(){const i=Reflect.construct(t,[],this.constructor);Object.setPrototypeOf(i,HTMLElement.prototype);const n=u(i)||window.customElements,o=n._getDefinition(e);return o?p(i,o):r.set(i,n),i}connectedCallback(){const t=o.get(this);t?t.connectedCallback&&t.connectedCallback.apply(this,arguments):r.get(this)._upgradeWhenDefined(this,e,!0)}disconnectedCallback(){const t=o.get(this);t?t.disconnectedCallback&&t.disconnectedCallback.apply(this,arguments):r.get(this)._upgradeWhenDefined(this,e,!1)}adoptedCallback(){const t=o.get(this);t?.adoptedCallback?.apply(this,arguments)}formAssociatedCallback(){const t=o.get(this);t&&t.formAssociated&&t?.formAssociatedCallback?.apply(this,arguments)}formDisabledCallback(){const t=o.get(this);t?.formAssociated&&t?.formDisabledCallback?.apply(this,arguments)}formResetCallback(){const t=o.get(this);t?.formAssociated&&t?.formResetCallback?.apply(this,arguments)}formStateRestoreCallback(){const t=o.get(this);t?.formAssociated&&t?.formStateRestoreCallback?.apply(this,arguments)}},f=(t,e,i)=>{if(0===e.size||void 0===i)return;const n=t.prototype.setAttribute;n&&(t.prototype.setAttribute=function(t,o){const r=t.toLowerCase();if(e.has(r)){const t=this.getAttribute(r);n.call(this,r,o),i.call(this,r,t,o)}else n.call(this,r,o)});const o=t.prototype.removeAttribute;o&&(t.prototype.removeAttribute=function(t){const n=t.toLowerCase();if(e.has(n)){const t=this.getAttribute(n);o.call(this,n),i.call(this,n,t,null)}else o.call(this,n)})},d=e=>{const i=Object.getPrototypeOf(e);if(i!==window.HTMLElement)return i===t||"HTMLElement"===i?.prototype?.constructor?.name?Object.setPrototypeOf(e,window.HTMLElement):d(i)},p=(t,e,i=!1)=>{Object.setPrototypeOf(t,e.elementClass.prototype),o.set(t,e),l=t;try{new e.elementClass}catch(t){d(e.elementClass),new e.elementClass}e.observedAttributes.forEach((i=>{t.hasAttribute(i)&&e.attributeChangedCallback.call(t,i,null,t.getAttribute(i))})),i&&e.connectedCallback&&t.isConnected&&e.connectedCallback.call(t)},v=Element.prototype.attachShadow;Element.prototype.attachShadow=function(t){const e=v.apply(this,arguments);return t.customElements&&(e.customElements=t.customElements),e};let b=[document];const y=(t,e,i=void 0)=>{const n=(i?Object.getPrototypeOf(i):t.prototype)[e];t.prototype[e]=function(){b.push(this);const t=n.apply(i||this,arguments);return void 0!==t&&a.set(t,this),b.pop(),t}};y(ShadowRoot,"createElement",document),y(ShadowRoot,"importNode",document),y(Element,"insertAdjacentHTML");const g=(t,e)=>{const i=Object.getOwnPropertyDescriptor(t.prototype,e);Object.defineProperty(t.prototype,e,{...i,set(t){b.push(this),i.set.call(this,t),b.pop()}})};if(g(Element,"innerHTML"),g(ShadowRoot,"innerHTML"),Object.defineProperty(window,"customElements",{value:new CustomElementRegistry,configurable:!0,writable:!0}),window.ElementInternals&&window.ElementInternals.prototype.setFormValue){const t=new WeakMap,e=HTMLElement.prototype.attachInternals,i=["setFormValue","setValidity","checkValidity","reportValidity"];HTMLElement.prototype.attachInternals=function(...i){const n=e.call(this,...i);return t.set(n,this),n},i.forEach((e=>{const i=window.ElementInternals.prototype,n=i[e];i[e]=function(...e){const i=t.get(this);if(!0!==o.get(i).formAssociated)throw new DOMException(`Failed to execute ${n} on 'ElementInternals': The target element is not a form-associated custom element.`);n?.call(this,...e)}}));class n extends Array{constructor(t){super(...t),this._elements=t}get value(){return this._elements.find((t=>!0===t.checked))?.value||""}}class r{constructor(t){const e=new Map;t.forEach(((t,i)=>{const n=t.getAttribute("name"),o=e.get(n)||[];this[+i]=t,o.push(t),e.set(n,o)})),this.length=t.length,e.forEach(((t,e)=>{t&&(1===t.length?this[e]=t[0]:this[e]=new n(t))}))}namedItem(t){return this[t]}}const s=Object.getOwnPropertyDescriptor(HTMLFormElement.prototype,"elements");Object.defineProperty(HTMLFormElement.prototype,"elements",{get:function(){const t=s.get.call(this,[]),e=[];for(const i of t){const t=o.get(i);t&&!0!==t.formAssociated||e.push(i)}return new r(e)}})}}try{window.customElements.define("custom-element",null)}catch(xo){const t=window.customElements.define;window.customElements.define=(e,i,n)=>{if(null!==i)try{t.bind(window.customElements)(e,i,n)}catch(t){console.info(e,i,n,t)}}}class e extends Error{constructor(t,e,i){super(t),this.canceledPromiseResult=e,this.canceledPromiseError=i}}class i extends Promise{constructor(t){super(((i,n)=>t((t=>{this.isCanceled?n(new e("Promise has been canceled",t)):i(t)}),(t=>{this.isCanceled?n(new e("Promise has been canceled",void 0,t)):n(t)})))),this.isCanceled=!1}cancel(){this.isCanceled=!0}}class n{constructor(){this.loaders={},this.content={},this.clearTimeouts={},this.finalContent=new Set}register(t,e){this.loaders[t]=e,this.finalContent.delete(t)}registerFinal(t,e){this.loaders[t]=e,this.finalContent.add(t)}clearAll(){for(let t in this.content)this.clear(t)}clear(t){this.finalContent.has(t)||this.forceClear(t)}forceClear(t){null!=this.clearTimeouts[t]&&(window.clearTimeout(this.clearTimeouts[t]),delete this.clearTimeouts[t]),this.content[t]instanceof i&&this.content[t].cancel(),delete this.content[t]}set(t,e){this.forceClear(t),this.register(t,(async()=>e)),this.content[t]=e}setFinal(t,e){this.forceClear(t),this.registerFinal(t,(async()=>e)),this.content[t]=e}async get(t,e,n){if(void 0===this.content[t]){if(null==(e=null!=e?e:this.loaders[t]))throw new Error("Unknown cache key "+t);const o=(t=>new i(((e,i)=>t.then(e).catch(i))))(e());return this.content[t]=o,o.then((e=>(this.content[t]=e,null!=n&&(this.clearTimeouts[t]=window.setTimeout((()=>this.clear(t)),n)),e)))}if(this.content[t]instanceof Error)throw this.content[t];return this.content[t]}isResolvedValue(t){return!(null==t||t instanceof Promise||t instanceof Error)}getNow(t){if(this.isResolvedValue(this.content[t]))return this.content[t]}has(t){return null!=this.content[t]}resolvedKeys(){return Object.keys(this.content).filter((t=>this.isResolvedValue(this.content[t])))}resolvedValues(){return Object.values(this.content).filter((t=>this.isResolvedValue(t)))}keys(){return Object.keys(this.content)}values(){return Object.values(this.content)}}class o{constructor(t=0){this.timeout=t,this.callbacks=[]}run(t,e){return this.callbacks=[t],this.debounce(e)}queue(t,e){return this.callbacks.push(t),this.debounce(e)}cancel(){this.clearTimeout(),this.resolvePromise&&this.resolvePromise(!1),this.clearPromise()}debounce(t){return null==this.promise&&(this.promise=new Promise(((t,e)=>{this.resolvePromise=t,this.rejectPromise=e}))),this.clearTimeout(),this._debounce=window.setTimeout((()=>this.runCallbacks()),null!=t?t:this.timeout),this.promise}async runCallbacks(){var t,e;const i=[...this.callbacks];this.callbacks=[];const n=null!==(t=this.rejectPromise)&&void 0!==t?t:()=>null,o=null!==(e=this.resolvePromise)&&void 0!==e?e:()=>null;this.clearPromise();for(let t of i)try{await t()}catch(t){return void n(t)}o(!0)}clearTimeout(){null!=this._debounce&&window.clearTimeout(this._debounce)}clearPromise(){this.promise=void 0,this.resolvePromise=void 0,this.rejectPromise=void 0}}
|
|
17
|
+
if(!ShadowRoot.prototype.createElement){const t=window.HTMLElement,e=window.customElements.define,i=window.customElements.get,n=window.customElements,o=new WeakMap,r=new WeakMap,s=new WeakMap,a=new WeakMap;let l;window.CustomElementRegistry=class{constructor(){this._definitionsByTag=new Map,this._definitionsByClass=new Map,this._whenDefinedPromises=new Map,this._awaitingUpgrade=new Map}define(t,o){if(t=t.toLowerCase(),void 0!==this._getDefinition(t))throw new DOMException(`Failed to execute 'define' on 'CustomElementRegistry': the name "${t}" has already been used with this registry`);if(void 0!==this._definitionsByClass.get(o))throw new DOMException("Failed to execute 'define' on 'CustomElementRegistry': this constructor has already been used with this registry");const a=o.prototype.attributeChangedCallback,l=new Set(o.observedAttributes||[]);f(o,l,a);const c={elementClass:o,connectedCallback:o.prototype.connectedCallback,disconnectedCallback:o.prototype.disconnectedCallback,adoptedCallback:o.prototype.adoptedCallback,attributeChangedCallback:a,formAssociated:o.formAssociated,formAssociatedCallback:o.prototype.formAssociatedCallback,formDisabledCallback:o.prototype.formDisabledCallback,formResetCallback:o.prototype.formResetCallback,formStateRestoreCallback:o.prototype.formStateRestoreCallback,observedAttributes:l};this._definitionsByTag.set(t,c),this._definitionsByClass.set(o,c);let u=i.call(n,t);u||(u=h(t),e.call(n,t,u)),this===window.customElements&&(s.set(o,c),c.standInClass=u);const d=this._awaitingUpgrade.get(t);if(d){this._awaitingUpgrade.delete(t);for(const t of d)r.delete(t),p(t,c,!0)}const v=this._whenDefinedPromises.get(t);return void 0!==v&&(v.resolve(o),this._whenDefinedPromises.delete(t)),o}upgrade(){b.push(this),n.upgrade.apply(n,arguments),b.pop()}get(t){const e=this._definitionsByTag.get(t);return e?.elementClass}_getDefinition(t){return this._definitionsByTag.get(t)}whenDefined(t){const e=this._getDefinition(t);if(void 0!==e)return Promise.resolve(e.elementClass);let i=this._whenDefinedPromises.get(t);return void 0===i&&(i={},i.promise=new Promise((t=>i.resolve=t)),this._whenDefinedPromises.set(t,i)),i.promise}_upgradeWhenDefined(t,e,i){let n=this._awaitingUpgrade.get(e);n||this._awaitingUpgrade.set(e,n=new Set),i?n.add(t):n.delete(t)}},window.HTMLElement=function(){let e=l;if(e)return l=void 0,e;const i=s.get(this.constructor);if(!i)throw new TypeError("Illegal constructor (custom element class must be registered with global customElements registry to be newable)");return e=Reflect.construct(t,[],i.standInClass),Object.setPrototypeOf(e,this.constructor.prototype),o.set(e,i),e},window.HTMLElement.prototype=t.prototype;const c=t=>t===document||t instanceof ShadowRoot,u=t=>{let e=t.getRootNode();if(!c(e)){const t=b[b.length-1];if(t instanceof CustomElementRegistry)return t;e=t.getRootNode(),c(e)||(e=a.get(e)?.getRootNode()||document)}return e.customElements},h=e=>class{static get formAssociated(){return!0}constructor(){const i=Reflect.construct(t,[],this.constructor);Object.setPrototypeOf(i,HTMLElement.prototype);const n=u(i)||window.customElements,o=n._getDefinition(e);return o?p(i,o):r.set(i,n),i}connectedCallback(){const t=o.get(this);t?t.connectedCallback&&t.connectedCallback.apply(this,arguments):r.get(this)._upgradeWhenDefined(this,e,!0)}disconnectedCallback(){const t=o.get(this);t?t.disconnectedCallback&&t.disconnectedCallback.apply(this,arguments):r.get(this)._upgradeWhenDefined(this,e,!1)}adoptedCallback(){const t=o.get(this);t?.adoptedCallback?.apply(this,arguments)}formAssociatedCallback(){const t=o.get(this);t&&t.formAssociated&&t?.formAssociatedCallback?.apply(this,arguments)}formDisabledCallback(){const t=o.get(this);t?.formAssociated&&t?.formDisabledCallback?.apply(this,arguments)}formResetCallback(){const t=o.get(this);t?.formAssociated&&t?.formResetCallback?.apply(this,arguments)}formStateRestoreCallback(){const t=o.get(this);t?.formAssociated&&t?.formStateRestoreCallback?.apply(this,arguments)}},f=(t,e,i)=>{if(0===e.size||void 0===i)return;const n=t.prototype.setAttribute;n&&(t.prototype.setAttribute=function(t,o){const r=t.toLowerCase();if(e.has(r)){const t=this.getAttribute(r);n.call(this,r,o),i.call(this,r,t,o)}else n.call(this,r,o)});const o=t.prototype.removeAttribute;o&&(t.prototype.removeAttribute=function(t){const n=t.toLowerCase();if(e.has(n)){const t=this.getAttribute(n);o.call(this,n),i.call(this,n,t,null)}else o.call(this,n)})},d=e=>{const i=Object.getPrototypeOf(e);if(i!==window.HTMLElement)return i===t||"HTMLElement"===i?.prototype?.constructor?.name?Object.setPrototypeOf(e,window.HTMLElement):d(i)},p=(t,e,i=!1)=>{Object.setPrototypeOf(t,e.elementClass.prototype),o.set(t,e),l=t;try{new e.elementClass}catch(t){d(e.elementClass),new e.elementClass}e.observedAttributes.forEach((i=>{t.hasAttribute(i)&&e.attributeChangedCallback.call(t,i,null,t.getAttribute(i))})),i&&e.connectedCallback&&t.isConnected&&e.connectedCallback.call(t)},v=Element.prototype.attachShadow;Element.prototype.attachShadow=function(t){const e=v.apply(this,arguments);return t.customElements&&(e.customElements=t.customElements),e};let b=[document];const y=(t,e,i=void 0)=>{const n=(i?Object.getPrototypeOf(i):t.prototype)[e];t.prototype[e]=function(){b.push(this);const t=n.apply(i||this,arguments);return void 0!==t&&a.set(t,this),b.pop(),t}};y(ShadowRoot,"createElement",document),y(ShadowRoot,"importNode",document),y(Element,"insertAdjacentHTML");const g=(t,e)=>{const i=Object.getOwnPropertyDescriptor(t.prototype,e);Object.defineProperty(t.prototype,e,{...i,set(t){b.push(this),i.set.call(this,t),b.pop()}})};if(g(Element,"innerHTML"),g(ShadowRoot,"innerHTML"),Object.defineProperty(window,"customElements",{value:new CustomElementRegistry,configurable:!0,writable:!0}),window.ElementInternals&&window.ElementInternals.prototype.setFormValue){const t=new WeakMap,e=HTMLElement.prototype.attachInternals,i=["setFormValue","setValidity","checkValidity","reportValidity"];HTMLElement.prototype.attachInternals=function(...i){const n=e.call(this,...i);return t.set(n,this),n},i.forEach((e=>{const i=window.ElementInternals.prototype,n=i[e];i[e]=function(...e){const i=t.get(this);if(!0!==o.get(i).formAssociated)throw new DOMException(`Failed to execute ${n} on 'ElementInternals': The target element is not a form-associated custom element.`);n?.call(this,...e)}}));class n extends Array{constructor(t){super(...t),this._elements=t}get value(){return this._elements.find((t=>!0===t.checked))?.value||""}}class r{constructor(t){const e=new Map;t.forEach(((t,i)=>{const n=t.getAttribute("name"),o=e.get(n)||[];this[+i]=t,o.push(t),e.set(n,o)})),this.length=t.length,e.forEach(((t,e)=>{t&&(1===t.length?this[e]=t[0]:this[e]=new n(t))}))}namedItem(t){return this[t]}}const s=Object.getOwnPropertyDescriptor(HTMLFormElement.prototype,"elements");Object.defineProperty(HTMLFormElement.prototype,"elements",{get:function(){const t=s.get.call(this,[]),e=[];for(const i of t){const t=o.get(i);t&&!0!==t.formAssociated||e.push(i)}return new r(e)}})}}try{window.customElements.define("custom-element",null)}catch(xo){const t=window.customElements.define;window.customElements.define=(e,i,n)=>{if(null!==i)try{t.bind(window.customElements)(e,i,n)}catch(t){console.info(e,i,n,t)}}}class e extends Error{constructor(t,e,i){super(t),this.canceledPromiseResult=e,this.canceledPromiseError=i}}class i extends Promise{constructor(t){super(((i,n)=>t((t=>{this.isCanceled?n(new e("Promise has been canceled",t)):i(t)}),(t=>{this.isCanceled?n(new e("Promise has been canceled",void 0,t)):n(t)})))),this.isCanceled=!1}cancel(){this.isCanceled=!0}}class n{constructor(){this.loaders={},this.content={},this.clearTimeouts={},this.finalContent=new Set}register(t,e){this.loaders[t]=e,this.finalContent.delete(t)}registerFinal(t,e){this.loaders[t]=e,this.finalContent.add(t)}clearAll(){for(let t in this.content)this.clear(t)}clear(t){this.finalContent.has(t)||this.forceClear(t)}forceClear(t){this.clearClearTimeout(t),this.content[t]instanceof i&&this.content[t].cancel(),delete this.content[t]}clearClearTimeout(t){null!=this.clearTimeouts[t]&&(window.clearTimeout(this.clearTimeouts[t]),delete this.clearTimeouts[t])}set(t,e){this.forceClear(t),this.register(t,(async()=>e)),this.content[t]=e}setFinal(t,e){this.forceClear(t),this.registerFinal(t,(async()=>e)),this.content[t]=e}async get(t,e,n){if(void 0===this.content[t]){if(null==(e=null!=e?e:this.loaders[t]))throw new Error("Unknown cache key "+t);const o=(t=>new i(((e,i)=>t.then(e).catch(i))))(e());return this.content[t]=o,o.then((e=>(this.content[t]=e,null!=n&&(this.clearClearTimeout(t),this.clearTimeouts[t]=window.setTimeout((()=>this.clear(t)),n)),e)))}if(this.content[t]instanceof Error)throw this.content[t];return this.content[t]}isResolvedValue(t){return!(null==t||t instanceof Promise||t instanceof Error)}getNow(t){if(this.isResolvedValue(this.content[t]))return this.content[t]}has(t){return null!=this.content[t]}resolvedKeys(){return Object.keys(this.content).filter((t=>this.isResolvedValue(this.content[t])))}resolvedValues(){return Object.values(this.content).filter((t=>this.isResolvedValue(t)))}keys(){return Object.keys(this.content)}values(){return Object.values(this.content)}}class o{constructor(t=0){this.timeout=t,this.callbacks=[]}run(t,e){return this.callbacks=[t],this.debounce(e)}queue(t,e){return this.callbacks.push(t),this.debounce(e)}cancel(){this.clearTimeout(),this.resolvePromise&&this.resolvePromise(!1),this.clearPromise()}debounce(t){return null==this.promise&&(this.promise=new Promise(((t,e)=>{this.resolvePromise=t,this.rejectPromise=e}))),this.clearTimeout(),this._debounce=window.setTimeout((()=>this.runCallbacks()),null!=t?t:this.timeout),this.promise}async runCallbacks(){var t,e;const i=[...this.callbacks];this.callbacks=[];const n=null!==(t=this.rejectPromise)&&void 0!==t?t:()=>null,o=null!==(e=this.resolvePromise)&&void 0!==e?e:()=>null;this.clearPromise();for(let t of i)try{await t()}catch(t){return void n(t)}o(!0)}clearTimeout(){null!=this._debounce&&window.clearTimeout(this._debounce)}clearPromise(){this.promise=void 0,this.resolvePromise=void 0,this.rejectPromise=void 0}}
|
|
18
18
|
/**
|
|
19
19
|
* @license
|
|
20
20
|
* Copyright 2017 Google LLC
|
|
@@ -747,7 +747,7 @@ const Ao=yo(class extends go{constructor(t){var e;if(super(t),t.type!==vo||"clas
|
|
|
747
747
|
position: relative;
|
|
748
748
|
}
|
|
749
749
|
|
|
750
|
-
.ft-switch-option--
|
|
750
|
+
.ft-switch-option--selected .ft-switch-option--content:before {
|
|
751
751
|
background-color: ${no.selectedBackgroundColor};
|
|
752
752
|
border-radius: ${Fo.borderRadiusLeft} ${Fo.borderRadiusRight} ${Fo.borderRadiusRight} ${Fo.borderRadiusLeft};
|
|
753
753
|
position: absolute;
|
|
@@ -768,7 +768,7 @@ const Ao=yo(class extends go{constructor(t){var e;if(super(t),t.type!==vo||"clas
|
|
|
768
768
|
${St(In.lineHeight,"var(--ft-switch-option-internal-content-height)")}
|
|
769
769
|
}
|
|
770
770
|
|
|
771
|
-
.ft-switch-option--
|
|
771
|
+
.ft-switch-option--selected .ft-switch-option--label {
|
|
772
772
|
color: ${no.selectedTextColor};
|
|
773
773
|
}
|
|
774
774
|
|
|
@@ -793,14 +793,14 @@ const Ao=yo(class extends go{constructor(t){var e;if(super(t),t.type!==vo||"clas
|
|
|
793
793
|
color: ${no.iconColor};
|
|
794
794
|
}
|
|
795
795
|
|
|
796
|
-
.ft-switch-option--
|
|
796
|
+
.ft-switch-option--selected ft-icon {
|
|
797
797
|
color: ${no.selectedTextColor};
|
|
798
798
|
}
|
|
799
|
-
`;var Do=function(t,e,i,n){for(var o,r=arguments.length,s=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n,a=t.length-1;a>=0;a--)(o=t[a])&&(s=(r<3?o(s):r>3?o(e,i,s):o(e,i))||s);return r>3&&s&&Object.defineProperty(e,i,s),s};class Bo extends CustomEvent{constructor(){super("option-change",{bubbles:!0,composed:!0})}}class Lo extends It{constructor(){super(...arguments),this.value="",this.label="",this.tooltipPosition="bottom",this.selected=!1,this.trailingIcon=!1,this.unselectable=!1}focus(){this.input.focus()}updated(t){super.updated(t),t.has("selected")&&this.dispatchEvent(new Bo)}render(){const t={"ft-switch-option":!0,"ft-switch-option--trailing-icon":this.trailingIcon};return this.addTooltip(tt`
|
|
799
|
+
`;var Do=function(t,e,i,n){for(var o,r=arguments.length,s=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n,a=t.length-1;a>=0;a--)(o=t[a])&&(s=(r<3?o(s):r>3?o(e,i,s):o(e,i))||s);return r>3&&s&&Object.defineProperty(e,i,s),s};class Bo extends CustomEvent{constructor(){super("option-change",{bubbles:!0,composed:!0})}}class Lo extends It{constructor(){super(...arguments),this.value="",this.label="",this.tooltipPosition="bottom",this.selected=!1,this.trailingIcon=!1,this.unselectable=!1}focus(){this.input.focus()}updated(t){super.updated(t),t.has("selected")&&this.dispatchEvent(new Bo)}render(){const t={"ft-switch-option":!0,"ft-switch-option--trailing-icon":this.trailingIcon,"ft-switch-option--selected":this.selected};return this.addTooltip(tt`
|
|
800
|
+
<input id="input" type="radio" class="ft-switch-option--input"
|
|
801
|
+
.checked=${this.selected}>
|
|
800
802
|
<label part="label" for="input" class=${Ao(t)}
|
|
801
803
|
@click=${this.onChange}>
|
|
802
|
-
<input id="input" type="radio" class="ft-switch-option--input"
|
|
803
|
-
.checked=${this.selected}>
|
|
804
804
|
<div class="ft-switch-option--content">
|
|
805
805
|
<ft-ripple part="ripple" class="ft-switch-option--ripple"></ft-ripple>
|
|
806
806
|
<ft-typography part="text"
|
|
@@ -825,7 +825,7 @@ const Ao=yo(class extends go{constructor(t){var e;if(super(t),t.type!==vo||"clas
|
|
|
825
825
|
<slot @slotchange=${this.onSlotchange}
|
|
826
826
|
@option-change=${this.onOptionChange}></slot>
|
|
827
827
|
</div>
|
|
828
|
-
`}onKeyDown(t){let e;"ArrowDown"!=t.key&&"ArrowRight"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)+1:0),"ArrowUp"!=t.key&&"ArrowLeft"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)-1:this.options.length-1),null!=e&&(t.preventDefault(),this.options[this.fixIndex(e)].selected=!0)}fixIndex(t){return t<0?this.options.length-1:t>this.options.length-1?0:t}onSlotchange(){var t;this.options=[],null===(t=this.slottedContent)||void 0===t||t.assignedElements().forEach((t=>{t instanceof Lo&&this.registerOption(t)})),this.selectedOption=this.options.find((t=>t.selected))}registerOption(t){t.setAttribute("tabindex","-1"),t.unselectable=this.unselectable,this.options.push(t)}onOptionChange(t){t.stopPropagation();let e=t.target;e.selected?this.selectedOption=e:this.selectedOption=this.options.find((t=>t.selected))}focus(){this.ftSwitchDiv.focus()}updateOptions(){this.options.forEach((t=>{t.selected=t
|
|
828
|
+
`}onKeyDown(t){let e;"ArrowDown"!=t.key&&"ArrowRight"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)+1:0),"ArrowUp"!=t.key&&"ArrowLeft"!=t.key||(e=this.selectedOption?this.options.indexOf(this.selectedOption)-1:this.options.length-1),null!=e&&(t.preventDefault(),this.options[this.fixIndex(e)].selected=!0)}fixIndex(t){return t<0?this.options.length-1:t>this.options.length-1?0:t}onSlotchange(){var t;this.options=[],null===(t=this.slottedContent)||void 0===t||t.assignedElements().forEach((t=>{t instanceof Lo&&this.registerOption(t)})),this.selectedOption=this.options.find((t=>t.selected))}registerOption(t){t.setAttribute("tabindex","-1"),t.unselectable=this.unselectable,this.options.push(t)}onOptionChange(t){t.stopPropagation();let e=t.target;e.selected?this.selectedOption=e:this.selectedOption=this.options.find((t=>t.selected))}focus(){this.ftSwitchDiv.focus()}updateOptions(){this.options.forEach((t=>{t.selected=t===this.selectedOption}))}}Ko.elementDefinitions={},Ko.styles=w`
|
|
829
829
|
:host {
|
|
830
830
|
display: inline-block;
|
|
831
831
|
}
|
|
@@ -1239,7 +1239,9 @@ const{I:sr}=bt,ar=()=>document.createComment(""),lr=(t,e,i)=>{var n;const o=t._$
|
|
|
1239
1239
|
`}))}
|
|
1240
1240
|
</div>
|
|
1241
1241
|
`;case"LIKE":const t="LIKE"===this.ratingType&&0===this.ratingValue,e="LIKE"===this.ratingType&&1===this.ratingValue;return tt`
|
|
1242
|
-
<ft-switch
|
|
1242
|
+
<ft-switch unselectable
|
|
1243
|
+
@change=${t=>this.rate(t.detail)}
|
|
1244
|
+
part="rating rating-like">
|
|
1243
1245
|
<ft-switch-option .value=${1}
|
|
1244
1246
|
?selected=${e}
|
|
1245
1247
|
.iconVariant=${this.iconVariant}
|
|
@@ -1254,7 +1256,8 @@ const{I:sr}=bt,ar=()=>document.createComment(""),lr=(t,e,i)=>{var n;const o=t._$
|
|
|
1254
1256
|
</ft-switch-option>
|
|
1255
1257
|
</ft-switch>
|
|
1256
1258
|
`;case"DICHOTOMOUS":const i="DICHOTOMOUS"===this.ratingType&&0===this.ratingValue,n="DICHOTOMOUS"===this.ratingType&&1===this.ratingValue;return tt`
|
|
1257
|
-
<ft-switch
|
|
1259
|
+
<ft-switch unselectable
|
|
1260
|
+
@change=${t=>this.rate(t.detail)}
|
|
1258
1261
|
part="rating rating-dichotomous">
|
|
1259
1262
|
<ft-switch-option .value=${1}
|
|
1260
1263
|
?selected=${n}>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluid-topics/ft-reader-feedback",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.23",
|
|
4
4
|
"description": "Feedback forms for a map and its topics in an integrated reader",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Lit"
|
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
"url": "ssh://git@scm.mrs.antidot.net:2222/fluidtopics/ft-web-components.git"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@fluid-topics/ft-app-context": "1.0.
|
|
23
|
-
"@fluid-topics/ft-reader-context": "1.0.
|
|
24
|
-
"@fluid-topics/ft-wc-utils": "1.0.
|
|
22
|
+
"@fluid-topics/ft-app-context": "1.0.23",
|
|
23
|
+
"@fluid-topics/ft-reader-context": "1.0.23",
|
|
24
|
+
"@fluid-topics/ft-wc-utils": "1.0.23",
|
|
25
25
|
"lit": "2.7.2"
|
|
26
26
|
},
|
|
27
|
-
"gitHead": "
|
|
27
|
+
"gitHead": "ca610d7009cc6f8fb34383c9a65bbfe139dc16b7"
|
|
28
28
|
}
|