@foxy.io/elements 1.16.0-beta.6 → 1.16.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/foxy-access-recovery-form.js +1 -1
- package/dist/cdn/foxy-address-card.js +1 -1
- package/dist/cdn/foxy-address-form.js +1 -1
- package/dist/cdn/foxy-api-browser.js +5 -0
- package/dist/cdn/foxy-applied-tax-card.js +1 -1
- package/dist/cdn/foxy-attribute-card.js +1 -1
- package/dist/cdn/foxy-attribute-form.js +1 -1
- package/dist/cdn/foxy-cancellation-form.js +1 -1
- package/dist/cdn/foxy-collection-page.js +1 -1
- package/dist/cdn/foxy-collection-pages.js +1 -1
- package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
- package/dist/cdn/foxy-coupon-card.js +1 -1
- package/dist/cdn/foxy-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-coupon-codes-form.js +1 -1
- package/dist/cdn/foxy-coupon-detail-card.js +1 -1
- package/dist/cdn/foxy-coupon-form.js +1 -1
- package/dist/cdn/foxy-custom-field-card.js +1 -1
- package/dist/cdn/foxy-custom-field-form.js +1 -1
- package/dist/cdn/foxy-customer-api.js +1 -1
- package/dist/cdn/foxy-customer-card.js +1 -1
- package/dist/cdn/foxy-customer-form.js +1 -1
- package/dist/cdn/foxy-customer-portal-settings.js +1 -1
- package/dist/cdn/foxy-customer-portal.js +1 -1
- package/dist/cdn/foxy-customer.js +1 -1
- package/dist/cdn/foxy-customers-table.js +1 -1
- package/dist/cdn/foxy-discount-builder.js +1 -1
- package/dist/cdn/foxy-discount-card.js +1 -1
- package/dist/cdn/foxy-discount-detail-card.js +1 -1
- package/dist/cdn/foxy-donation.js +1 -1
- package/dist/cdn/foxy-email-template-form.js +1 -1
- package/dist/cdn/foxy-error-entry-card.js +1 -1
- package/dist/cdn/foxy-form-dialog.js +1 -1
- package/dist/cdn/foxy-generate-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-card.js +1 -1
- package/dist/cdn/foxy-gift-card-code-form.js +1 -1
- package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-form.js +1 -1
- package/dist/cdn/foxy-i18n.js +1 -1
- package/dist/cdn/foxy-item-card.js +1 -1
- package/dist/cdn/foxy-item-form.js +1 -1
- package/dist/cdn/foxy-item-option-card.js +1 -1
- package/dist/cdn/foxy-item-option-form.js +1 -1
- package/dist/cdn/foxy-items-form.js +1 -1
- package/dist/cdn/foxy-nucleon-element.js +1 -1
- package/dist/cdn/foxy-pagination.js +1 -1
- package/dist/cdn/foxy-payment-card.js +1 -1
- package/dist/cdn/foxy-payment-method-card.js +1 -1
- package/dist/cdn/foxy-query-builder.js +1 -1
- package/dist/cdn/foxy-report-form.js +1 -1
- package/dist/cdn/foxy-reports-table.js +1 -1
- package/dist/cdn/foxy-shipment-card.js +2 -2
- package/dist/cdn/foxy-sign-in-form.js +1 -1
- package/dist/cdn/foxy-spinner.js +1 -1
- package/dist/cdn/foxy-subscription-card.js +1 -1
- package/dist/cdn/foxy-subscription-form.js +1 -1
- package/dist/cdn/foxy-subscriptions-table.js +1 -1
- package/dist/cdn/foxy-swipe-actions.js +1 -1
- package/dist/cdn/foxy-table.js +1 -1
- package/dist/cdn/foxy-tax-card.js +1 -1
- package/dist/cdn/foxy-tax-form.js +1 -1
- package/dist/cdn/foxy-template-config-form.js +1 -1
- package/dist/cdn/foxy-template-form.js +1 -1
- package/dist/cdn/foxy-transaction-card.js +1 -1
- package/dist/cdn/foxy-transaction.js +2 -2
- package/dist/cdn/foxy-transactions-table.js +1 -1
- package/dist/cdn/foxy-user-form.js +1 -1
- package/dist/cdn/foxy-users-table.js +1 -1
- package/dist/cdn/foxy-webhook-card.js +1 -1
- package/dist/cdn/foxy-webhook-form.js +7 -7
- package/dist/cdn/foxy-webhook-log-card.js +1 -1
- package/dist/cdn/foxy-webhook-status-card.js +1 -1
- package/dist/cdn/shared-01a36c73.js +1 -0
- package/dist/cdn/{shared-16b54a16.js → shared-079141d8.js} +1 -1
- package/dist/cdn/{shared-e0e3bdc1.js → shared-0c468500.js} +1 -1
- package/dist/cdn/{shared-99065f2a.js → shared-0eb966c5.js} +1 -1
- package/dist/cdn/{shared-dd0fd816.js → shared-13a60e89.js} +1 -1
- package/dist/cdn/{shared-803a0366.js → shared-15e064b7.js} +1 -1
- package/dist/cdn/{shared-db34c00a.js → shared-198e7e30.js} +1 -1
- package/dist/cdn/{shared-0af1128f.js → shared-209bcce9.js} +1 -1
- package/dist/cdn/{shared-f3b35364.js → shared-22ba9566.js} +1 -1
- package/dist/cdn/{shared-ea0ac28c.js → shared-242babd5.js} +5 -5
- package/dist/cdn/{shared-1b064836.js → shared-25ef9e09.js} +1 -1
- package/dist/cdn/{shared-b65bb8ec.js → shared-3641bc33.js} +1 -1
- package/dist/cdn/{shared-9ad10520.js → shared-3aaa2bd1.js} +1 -1
- package/dist/cdn/{shared-30a41bea.js → shared-3f1f5801.js} +1 -1
- package/dist/cdn/{shared-2bb49907.js → shared-40315eea.js} +1 -1
- package/dist/cdn/{shared-96df3c85.js → shared-40c5712e.js} +1 -1
- package/dist/cdn/shared-567c8c48.js +1 -0
- package/dist/cdn/{shared-8f7f868c.js → shared-572bfe87.js} +1 -1
- package/dist/cdn/{shared-06014421.js → shared-58a9174f.js} +1 -1
- package/dist/cdn/{shared-28f78e36.js → shared-6366d131.js} +1 -1
- package/dist/cdn/{shared-0f2e2799.js → shared-64a2a826.js} +1 -1
- package/dist/cdn/{shared-3026cee0.js → shared-6eb57269.js} +1 -1
- package/dist/cdn/{shared-c76687b7.js → shared-741c109e.js} +1 -1
- package/dist/cdn/{shared-5f934d4e.js → shared-78f0bdad.js} +1 -1
- package/dist/cdn/shared-801b74d4.js +1 -0
- package/dist/cdn/{shared-eeecd876.js → shared-8be45bd7.js} +1 -1
- package/dist/cdn/{shared-d33bf73b.js → shared-8e973f80.js} +1 -1
- package/dist/cdn/{shared-a89fd2f0.js → shared-9418c6bb.js} +1 -1
- package/dist/cdn/{shared-3138e990.js → shared-9509bb93.js} +1 -1
- package/dist/cdn/shared-964c9ca9.js +1 -0
- package/dist/cdn/{shared-f3655f42.js → shared-968add7f.js} +1 -1
- package/dist/cdn/{shared-d3bf9ac0.js → shared-9803aa7c.js} +2 -2
- package/dist/cdn/{shared-11c2efc8.js → shared-99940888.js} +1 -1
- package/dist/cdn/{shared-dc545318.js → shared-9bd21899.js} +1 -1
- package/dist/cdn/{shared-9a91c68f.js → shared-9ce24b40.js} +1 -1
- package/dist/cdn/{shared-d519a301.js → shared-a0c6a159.js} +2 -2
- package/dist/cdn/{shared-eba18a6f.js → shared-a13bbf00.js} +1 -1
- package/dist/cdn/{shared-634813cb.js → shared-a1fb450b.js} +1 -1
- package/dist/cdn/{shared-bcfaeb2c.js → shared-a740808f.js} +1 -1
- package/dist/cdn/{shared-6b4564c6.js → shared-a7facb5b.js} +3 -3
- package/dist/cdn/{shared-6c9541a9.js → shared-a95d3bdd.js} +1 -1
- package/dist/cdn/{shared-6e80f6b9.js → shared-b31902a6.js} +2 -2
- package/dist/cdn/{shared-bebc774a.js → shared-bd0a55e6.js} +1 -1
- package/dist/cdn/{shared-0cab3007.js → shared-c0c55e07.js} +1 -1
- package/dist/cdn/{shared-8d8d637f.js → shared-c65ae0ed.js} +3 -3
- package/dist/cdn/{shared-7f33a83a.js → shared-dc73b9a5.js} +1 -1
- package/dist/cdn/shared-e0437bb4.js +1 -0
- package/dist/cdn/{shared-0479553e.js → shared-e1c1e8e2.js} +1 -1
- package/dist/cdn/{shared-65f1f0a5.js → shared-e5e7d3bd.js} +1 -1
- package/dist/cdn/{shared-4c35a2b7.js → shared-ef9fc547.js} +1 -1
- package/dist/cdn/{shared-012b606d.js → shared-f046baf7.js} +3 -3
- package/dist/cdn/{shared-e6f3e9f0.js → shared-f9f9ed5b.js} +1 -1
- package/dist/cdn/{shared-180ca311.js → shared-fd1913ad.js} +7 -7
- package/dist/cdn/translations/api-browser/en.json +22 -0
- package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.d.ts +30 -0
- package/dist/elements/internal/{InternalCollectionCard/InternalCollectionCard.js → InternalAsyncDetailsControl/InternalAsyncDetailsControl.js} +57 -45
- package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.js.map +1 -0
- package/dist/elements/internal/InternalAsyncDetailsControl/index.d.ts +7 -0
- package/dist/elements/internal/InternalAsyncDetailsControl/index.js +9 -0
- package/dist/elements/internal/InternalAsyncDetailsControl/index.js.map +1 -0
- package/dist/elements/internal/{InternalDetailsControl/InternalDetailsControl.d.ts → InternalDetails/InternalDetails.d.ts} +3 -3
- package/dist/elements/internal/{InternalDetailsControl/InternalDetailsControl.js → InternalDetails/InternalDetails.js} +3 -3
- package/dist/elements/internal/InternalDetails/InternalDetails.js.map +1 -0
- package/dist/elements/internal/{InternalDetailsControl → InternalDetails}/index.d.ts +2 -2
- package/dist/elements/internal/InternalDetails/index.js +8 -0
- package/dist/elements/internal/InternalDetails/index.js.map +1 -0
- package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.d.ts +10 -4
- package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js +9 -1
- package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js.map +1 -1
- package/dist/elements/internal/InternalRadioGroupControl/types.d.ts +6 -0
- package/dist/elements/internal/InternalRadioGroupControl/types.js +2 -0
- package/dist/elements/internal/InternalRadioGroupControl/types.js.map +1 -0
- package/dist/elements/public/ApiBrowser/ApiBrowser.d.ts +23 -0
- package/dist/elements/public/ApiBrowser/ApiBrowser.js +204 -0
- package/dist/elements/public/ApiBrowser/ApiBrowser.js.map +1 -0
- package/dist/elements/public/ApiBrowser/index.d.ts +9 -0
- package/dist/elements/public/ApiBrowser/index.js +11 -0
- package/dist/elements/public/ApiBrowser/index.js.map +1 -0
- package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.d.ts +25 -0
- package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.js +276 -0
- package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.js.map +1 -0
- package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.d.ts +8 -0
- package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.js +10 -0
- package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.js.map +1 -0
- package/dist/elements/public/ApiBrowser/types.d.ts +10 -0
- package/dist/elements/public/ApiBrowser/types.js +2 -0
- package/dist/elements/public/ApiBrowser/types.js.map +1 -0
- package/dist/elements/public/ItemForm/ItemForm.js +8 -8
- package/dist/elements/public/ItemForm/ItemForm.js.map +1 -1
- package/dist/elements/public/ItemForm/index.d.ts +1 -1
- package/dist/elements/public/ItemForm/index.js +1 -1
- package/dist/elements/public/ItemForm/index.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.js +2 -2
- package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.d.ts +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.js +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.js +2 -2
- package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.d.ts +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.js +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.js +2 -2
- package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.d.ts +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.js +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.js +2 -2
- package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.d.ts +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.js +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.js +2 -2
- package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.js.map +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.d.ts +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.js +1 -1
- package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.js.map +1 -1
- package/dist/elements/public/ShipmentCard/ShipmentCard.js +2 -2
- package/dist/elements/public/ShipmentCard/ShipmentCard.js.map +1 -1
- package/dist/elements/public/ShipmentCard/index.d.ts +1 -1
- package/dist/elements/public/ShipmentCard/index.js +1 -1
- package/dist/elements/public/ShipmentCard/index.js.map +1 -1
- package/dist/elements/public/Transaction/Transaction.js +12 -12
- package/dist/elements/public/Transaction/Transaction.js.map +1 -1
- package/dist/elements/public/Transaction/index.d.ts +1 -1
- package/dist/elements/public/Transaction/index.js +1 -1
- package/dist/elements/public/Transaction/index.js.map +1 -1
- package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.js +2 -2
- package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.js.map +1 -1
- package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.d.ts +1 -1
- package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.js +1 -1
- package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.js.map +1 -1
- package/dist/elements/public/WebhookForm/WebhookForm.js +4 -4
- package/dist/elements/public/WebhookForm/WebhookForm.js.map +1 -1
- package/dist/elements/public/WebhookForm/index.d.ts +1 -1
- package/dist/elements/public/WebhookForm/index.js +1 -1
- package/dist/elements/public/WebhookForm/index.js.map +1 -1
- package/dist/elements/public/index.d.ts +1 -0
- package/dist/elements/public/index.defined.d.ts +1 -0
- package/dist/elements/public/index.defined.js +1 -0
- package/dist/elements/public/index.defined.js.map +1 -1
- package/dist/elements/public/index.js +1 -0
- package/dist/elements/public/index.js.map +1 -1
- package/dist/mixins/themeable.js +192 -64
- package/dist/mixins/themeable.js.map +1 -1
- package/package.json +1 -1
- package/dist/cdn/shared-9d4835ed.js +0 -1
- package/dist/cdn/shared-dcb80bcf.js +0 -1
- package/dist/cdn/shared-dd43ab46.js +0 -1
- package/dist/cdn/shared-fe347acc.js +0 -1
- package/dist/elements/internal/InternalCollectionCard/InternalCollectionCard.d.ts +0 -13
- package/dist/elements/internal/InternalCollectionCard/InternalCollectionCard.js.map +0 -1
- package/dist/elements/internal/InternalCollectionCard/index.d.ts +0 -7
- package/dist/elements/internal/InternalCollectionCard/index.js +0 -9
- package/dist/elements/internal/InternalCollectionCard/index.js.map +0 -1
- package/dist/elements/internal/InternalDetailsControl/InternalDetailsControl.js.map +0 -1
- package/dist/elements/internal/InternalDetailsControl/index.js +0 -8
- package/dist/elements/internal/InternalDetailsControl/index.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{I as e,_ as t}from"./shared-2eee69db.js";import{F as a}from"./shared-
|
|
1
|
+
import{I as e,_ as t}from"./shared-2eee69db.js";import{F as a}from"./shared-198e7e30.js";import{E as s,C as i,T as r}from"./shared-3641bc33.js";import"./shared-8be45bd7.js";import"./shared-e5e7d3bd.js";import{a as l}from"./shared-3f1f5801.js";import"./shared-64a2a826.js";import{h as n,P as o}from"./shared-079141d8.js";import{d,P as h,A as u,L as c,c as p,h as m}from"./shared-dc73b9a5.js";import"./shared-13a60e89.js";import{p as v}from"./shared-a740808f.js";import{a as g,x as b}from"./shared-a7facb5b.js";import{Q as _,T as f,U as y,V as x,W as w,X as E,Y as T,Z as k,b as S,$,a0 as A,a1 as V,a2 as C,a3 as I,a4 as M,a5 as z,m as F,a6 as L}from"./shared-6eb57269.js";import{s as j}from"./shared-99940888.js";import{i as q}from"./shared-968add7f.js";var P={raise:_,send:f,sendParent:y,sendUpdate:x,log:w,cancel:E,start:T,stop:k,assign:S,after:$,done:A,respond:V,forwardTo:C,escalate:I,choose:M,pure:z};const H=d((e=>t=>{const{element:a,name:s,strings:i}=t.committer;if(2!==i.length||""!==i[0]||""!==i[1])throw new Error("live directive bindings must not contain any static values");if(t.committer.parts.length>1)throw new Error("live directive must be the only directive for an attribute or property");if(t instanceof h)a[s]!==e&&t.setValue(e);else{if(!(t instanceof u))throw new Error("live directive can only be used on attributes or properties");a.getAttribute(s)!==e&&t.setValue(e)}})),O=n`<dom-module id="lumo-text-area" theme-for="vaadin-text-area">
|
|
2
2
|
<template>
|
|
3
3
|
<style include="lumo-text-field">
|
|
4
4
|
[part="input-field"],
|
|
@@ -56,13 +56,13 @@ import{I as e,_ as t}from"./shared-2eee69db.js";import{F as a}from"./shared-db34
|
|
|
56
56
|
}
|
|
57
57
|
</style>
|
|
58
58
|
</template>
|
|
59
|
-
</dom-module>`;document.head.appendChild(
|
|
59
|
+
</dom-module>`;document.head.appendChild(O.content);
|
|
60
60
|
/**
|
|
61
61
|
@license
|
|
62
62
|
Copyright (c) 2017 Vaadin Ltd.
|
|
63
63
|
This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
64
64
|
*/
|
|
65
|
-
class
|
|
65
|
+
class U extends(s(l(i(r(o))))){static get template(){return n`
|
|
66
66
|
<style include="vaadin-text-field-shared-styles">
|
|
67
67
|
.vaadin-text-area-container {
|
|
68
68
|
flex: auto;
|
|
@@ -131,7 +131,7 @@ class O extends(s(n(i(r(o))))){static get template(){return l`
|
|
|
131
131
|
<div part="error-message" id="[[_errorId]]" aria-live="assertive" aria-hidden\$="[[_getErrorMessageAriaHidden(invalid, errorMessage, _errorId)]]">[[errorMessage]]</div>
|
|
132
132
|
|
|
133
133
|
</div>
|
|
134
|
-
`}static get is(){return"vaadin-text-area"}static get version(){return"2.9.2"}static get properties(){return{pattern:{type:String}}}static get observers(){return["_textAreaValueChanged(value)"]}ready(){super.ready(),this._updateHeight(),this.addEventListener("animationend",this._onAnimationEnd),this._inputField=this.root.querySelector("[part=input-field]"),this._inputField.addEventListener("wheel",(e=>{const t=this._inputField.scrollTop;this._inputField.scrollTop+=e.deltaY,t!==this._inputField.scrollTop&&(e.preventDefault(),this.__scrollPositionUpdated())})),this.__scrollPositionUpdated()}__scrollPositionUpdated(){this.updateStyles({"--_text-area-vertical-scroll-position":this._inputField.scrollTop+"px"})}_onAnimationEnd(e){0===e.animationName.indexOf("vaadin-text-area-appear")&&this._updateHeight()}get _slottedTagName(){return"textarea"}_textAreaValueChanged(e){this._updateHeight()}_updateHeight(){const e=this.root.querySelector("[part=input-field]"),t=e.scrollTop,a=this.inputElement,s=this.value?this.value.length:0;if(this._oldValueLength>=s){const t=getComputedStyle(e).height,s=getComputedStyle(a).width;e.style.display="block",e.style.height=t,a.style.maxWidth=s,a.style.height="auto"}this._oldValueLength=s;const i=a.scrollHeight;i>a.clientHeight&&(a.style.height=i+"px"),a.style.removeProperty("max-width"),e.style.removeProperty("display"),e.style.removeProperty("height"),e.scrollTop=t,this._dispatchIronResizeEventIfNeeded("InputHeight",i)}checkValidity(){if(!super.checkValidity())return!1;if(!this.pattern||!this.inputElement.value)return!0;try{const e=this.inputElement.value.match(this.pattern);return!!e&&e[0]===e.input}catch(e){return!0}}}customElements.define(
|
|
134
|
+
`}static get is(){return"vaadin-text-area"}static get version(){return"2.9.2"}static get properties(){return{pattern:{type:String}}}static get observers(){return["_textAreaValueChanged(value)"]}ready(){super.ready(),this._updateHeight(),this.addEventListener("animationend",this._onAnimationEnd),this._inputField=this.root.querySelector("[part=input-field]"),this._inputField.addEventListener("wheel",(e=>{const t=this._inputField.scrollTop;this._inputField.scrollTop+=e.deltaY,t!==this._inputField.scrollTop&&(e.preventDefault(),this.__scrollPositionUpdated())})),this.__scrollPositionUpdated()}__scrollPositionUpdated(){this.updateStyles({"--_text-area-vertical-scroll-position":this._inputField.scrollTop+"px"})}_onAnimationEnd(e){0===e.animationName.indexOf("vaadin-text-area-appear")&&this._updateHeight()}get _slottedTagName(){return"textarea"}_textAreaValueChanged(e){this._updateHeight()}_updateHeight(){const e=this.root.querySelector("[part=input-field]"),t=e.scrollTop,a=this.inputElement,s=this.value?this.value.length:0;if(this._oldValueLength>=s){const t=getComputedStyle(e).height,s=getComputedStyle(a).width;e.style.display="block",e.style.height=t,a.style.maxWidth=s,a.style.height="auto"}this._oldValueLength=s;const i=a.scrollHeight;i>a.clientHeight&&(a.style.height=i+"px"),a.style.removeProperty("max-width"),e.style.removeProperty("display"),e.style.removeProperty("height"),e.scrollTop=t,this._dispatchIronResizeEventIfNeeded("InputHeight",i)}checkValidity(){if(!super.checkValidity())return!1;if(!this.pattern||!this.inputElement.value)return!0;try{const e=this.inputElement.value.match(this.pattern);return!!e&&e[0]===e.input}catch(e){return!0}}}customElements.define(U.is,U);class N extends CustomEvent{constructor(e){super("change",{detail:e})}}const D=n`<dom-module id="lumo-custom-field" theme-for="vaadin-custom-field">
|
|
135
135
|
<template>
|
|
136
136
|
<style include="lumo-required-field">
|
|
137
137
|
:host {
|
|
@@ -255,12 +255,12 @@ class O extends(s(n(i(r(o))))){static get template(){return l`
|
|
|
255
255
|
}
|
|
256
256
|
</style>
|
|
257
257
|
</template>
|
|
258
|
-
</dom-module>`;document.head.appendChild(
|
|
258
|
+
</dom-module>`;document.head.appendChild(D.content);const B=e=>class extends e{static get properties(){return{inputs:{type:Array,readOnly:!0},i18n:{type:Object,value:()=>({parseValue:function(e){return e.split("\t")},formatValue:function(e){return e.join("\t")}})},__errorId:String,__labelId:String,__helperTextId:String,__hasSlottedHelper:Boolean}}connectedCallback(){super.connectedCallback(),this.__observer&&this.__observer.connect()}disconnectedCallback(){super.disconnectedCallback(),this.__observer&&this.__observer.disconnect()}ready(){super.ready(),this.__setInputsFromSlot(),this.__observer=new a(this.$.slot,(()=>{this.__setInputsFromSlot()})),this.$.helperSlot.addEventListener("slotchange",this.__onHelperSlotChange.bind(this)),this.__onHelperSlotChange();const e=/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor);this.addEventListener("keydown",(t=>{if(9===t.keyCode){if("slot"===t.target.parentElement.localName&&!t.defaultPrevented&&e){const e=t.target.parentElement;e.setAttribute("tabindex",-1),setTimeout((()=>e.removeAttribute("tabindex")))}this.inputs.indexOf(t.target)<this.inputs.length-1&&!t.shiftKey||this.inputs.indexOf(t.target)>0&&t.shiftKey?this.dispatchEvent(new CustomEvent("internal-tab")):this.__setValue()}})),this.addEventListener("focusin",(()=>this.setAttribute("focused",""))),this.addEventListener("focusout",(e=>{const t=this.getRootNode().activeElement;this.inputs.some((e=>t===e||e.shadowRoot&&e.shadowRoot.contains(t)))||this.removeAttribute("focused")}));var t=B._uniqueId=1+B._uniqueId||1;this.__errorId=`${this.constructor.is}-error-${t}`,this.__labelId=`${this.constructor.is}-label-${t}`,this.__helperTextId=`${this.constructor.is}-helper-${t}`}focus(){this.inputs&&this.inputs[0]&&this.inputs[0].focus()}__updateValue(e){e&&e.stopPropagation(),this.__setValue(),this.validate(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,cancelable:!1,detail:{value:this.value}}))}__setValue(){this.__settingValue=!0,this.value=this.i18n.formatValue.apply(this,[this.inputs.map((e=>e.value))]),this.__settingValue=!1}__queryAllAssignedElements(e){const t=[];let a;return"SLOT"===e.tagName?a=e.assignedNodes({flatten:!0}).filter((e=>e.nodeType===Node.ELEMENT_NODE)):(t.push(e),a=Array.from(e.children)),a.forEach((e=>t.push(...this.__queryAllAssignedElements(e)))),t}__getInputsFromSlot(){return this.__queryAllAssignedElements(this.$.slot).filter((e=>e.validate||e.checkValidity))}__setInputsFromSlot(){this._setInputs(this.__getInputsFromSlot()),this.__setValue()}__valueChanged(e,t){if(this.__settingValue||!this.inputs)return;const a=this.i18n.parseValue(e);a&&0!=a.length?(this.inputs.forEach(((e,t)=>e.value=a[t])),void 0!==t&&this.validate()):console.warn("Value parser has not provided values array")}__onHelperSlotChange(){const e=this.$.helperSlot.assignedNodes({flatten:!0});this.__hasSlottedHelper=e.filter((e=>3!==e.nodeType)).length>0,this.__hasSlottedHelper?this.setAttribute("has-helper","slotted"):""!==this.helperText&&null!==this.helperText||this.removeAttribute("has-helper")}}
|
|
259
259
|
/**
|
|
260
260
|
@license
|
|
261
261
|
Copyright (c) 2018 Vaadin Ltd.
|
|
262
262
|
This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
263
|
-
*/;class
|
|
263
|
+
*/;class R extends(s(B(r(o)))){static get template(){return n`
|
|
264
264
|
<style>
|
|
265
265
|
:host {
|
|
266
266
|
display: inline-flex;
|
|
@@ -299,4 +299,4 @@ This program is available under Apache License Version 2.0, available at https:/
|
|
|
299
299
|
</div>
|
|
300
300
|
<div part="error-message" id="[[__errorId]]" aria-live="assertive" aria-hidden\$="[[__getErrorMessageAriaHidden(invalid, errorMessage, __errorId)]]">[[errorMessage]]</div>
|
|
301
301
|
</div>
|
|
302
|
-
`}static get is(){return"vaadin-custom-field"}static get version(){return"1.3.0"}static get properties(){return{label:{type:String,value:"",observer:"_labelChanged"},name:String,required:{type:Boolean,reflectToAttribute:!0},value:{type:String,observer:"__valueChanged",notify:!0},invalid:{type:Boolean,reflectToAttribute:!0,notify:!0,value:!1,observer:"__invalidChanged"},errorMessage:{type:String,value:"",observer:"__errorMessageChanged"},helperText:{type:String,value:"",observer:"__helperTextChanged"}}}static get observers(){return["__getActiveErrorId(invalid, errorMessage, __errorId, helperText, __helperTextId, __hasSlottedHelper)","__getActiveLabelId(label, __labelId)","__toggleHasValue(value)"]}__invalidChanged(e){this.__setOrToggleAttribute("aria-invalid",e,this)}__errorMessageChanged(e){this.__setOrToggleAttribute("has-error-message",!!e,this)}__helperTextChanged(e){this.__setOrToggleAttribute("has-helper",!!e,this)}__toggleHasValue(e){null!==e&&""!==e.trim()?this.setAttribute("has-value",""):this.removeAttribute("has-value")}_labelChanged(e){""!==e&&null!=e?this.setAttribute("has-label",""):this.removeAttribute("has-label")}validate(){return!(this.invalid=!this.checkValidity())}checkValidity(){return!(this.inputs.filter((e=>!(e.validate||e.checkValidity).call(e))).length||this.required&&!this.value.trim())}__setOrToggleAttribute(e,t,a){e&&a&&a.hasAttribute(e)===!t&&(t?a.setAttribute(e,"boolean"==typeof t?"":t):a.removeAttribute(e))}__getActiveErrorId(e,t,a,s,i,r){const n=[];(s||r)&&n.push(i),t&&e&&n.push(a),n.length>0?this.setAttribute("aria-describedby",n.join(" ")):this.removeAttribute("aria-describedby")}__getActiveLabelId(e,t){this.__setOrToggleAttribute("aria-labelledby",e?t:void 0,this)}__getErrorMessageAriaHidden(e,t,a){return(!(t&&e?a:void 0)).toString()}}customElements.define(B.is,B);class R extends CustomEvent{constructor(e){super("change",{detail:e})}}class Y extends R{}const W=d((e=>t=>{const{element:a,name:s,strings:i}=t.committer;if(2!==i.length||""!==i[0]||""!==i[1])throw new Error("live directive bindings must not contain any static values");if(t.committer.parts.length>1)throw new Error("live directive must be the only directive for an attribute or property");if(t instanceof h)a[s]!==e&&t.setValue(e);else{if(!(t instanceof u))throw new Error("live directive can only be used on attributes or properties");a.getAttribute(s)!==e&&t.setValue(e)}}));let X,K,G=e=>e;class Q extends(g(e(c))){constructor(){super(...arguments),this.label="",this.value="",this.disabled=!1,this.readonly=!1,this.errorMessage="",this.__i18n={formatValue:e=>e.join(""),parseValue:e=>{const{count:t,units:a}=v(e);return[t.toString(),a]}},this.__getItems=F((e=>{const t=v(e).count;return[{value:"d",label:this.t("day",{count:t})},{value:"w",label:this.t("week",{count:t})},{value:"m",label:this.t("month",{count:t})},{value:"y",label:this.t("year",{count:t})}]}))}static get properties(){return t(t({},super.properties),{},{checkValidity:{attribute:!1},errorMessage:{type:String,attribute:"error-message"},disabled:{type:Boolean,reflect:!0},readonly:{type:Boolean,reflect:!0},label:{type:String},value:{type:String}})}static get styles(){return p(X||(X=G`:host{display:block}vaadin-custom-field{width:100%;font-size:0;line-height:0;padding-top:0!important}vaadin-custom-field::part(label){padding-bottom:var(--lumo-space-s)}vaadin-custom-field::part(error-message)[aria-hidden=false]{padding-top:var(--lumo-space-xs)}vaadin-combo-box,vaadin-integer-field{width:calc(50% - (var(--lumo-space-s)/ 2))}vaadin-integer-field{margin-right:var(--lumo-space-s);padding:0}vaadin-combo-box::part(text-field){padding:0}`))}render(){return m(K||(K=G` <vaadin-custom-field data-testid="field" .i18n="${0}" .label="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" .errorMessage="${0}" .checkValidity="${0}" @change="${0}"> <vaadin-integer-field data-testid="value" min="1" max="999" has-controls prevent-invalid-input ?invalid="${0}" ?disabled="${0}" ?readonly="${0}"> </vaadin-integer-field> <vaadin-combo-box data-testid="units" item-value-path="value" item-label-path="label" .items="${0}" ?invalid="${0}" ?disabled="${0}" ?readonly="${0}"> </vaadin-combo-box> </vaadin-custom-field> `),this.__i18n,this.label,W(this.value),this.disabled,this.readonly,this.errorMessage,this.checkValidity,this.__handleChange,!this.checkValidity(),this.disabled,this.readonly,this.__getItems(this.value),!this.checkValidity(),this.disabled,this.readonly)}updated(e){super.updated(e);const t=this.renderRoot.firstElementChild;t.value!==this.value&&(t.value=this.value)}checkValidity(){return!0}__handleChange(e){const t=e.target;this.value=t.value,this.dispatchEvent(new Y(this.value))}}const Z=L({id:"choice",type:"parallel",context:{defaultCustomValue:"",customValue:null,custom:!1,items:[],value:null,type:"text",min:null,max:null},states:{mutability:{initial:"editable",states:{editable:{},readonly:{}},on:{SET_READONLY:[{target:".editable",cond:"isPayloadFalsey"},{target:".readonly",cond:"isPayloadTruthy"}]}},interactivity:{initial:"enabled",states:{enabled:{},disabled:{}},on:{SET_DISABLED:[{target:".enabled",cond:"isPayloadFalsey"},{target:".disabled",cond:"isPayloadTruthy"}]}},selection:{initial:"unknown",states:{unknown:{always:[{target:"multiple",cond:"isValueArray"},{target:"single"}]},none:{},single:{},multiple:{}}},extension:{initial:"unknown",states:{unknown:{always:[{target:"present",cond:"hasCustom"},{target:"absent"}]},absent:{},present:{initial:"unknown",states:{unknown:{always:[{target:"selected",cond:"hasCustomValue"},{target:"available"}]},available:{on:{SET_TYPE:{actions:"setType"}}},selected:{initial:"unknown",states:{unknown:{always:[{target:"integer",cond:"showsIntegerField"},{target:"textarea",cond:"showsTextarea"},{target:"frequency",cond:"showsFrequency"},{target:"text"}]},text:{},frequency:{},textarea:{},integer:{type:"parallel",states:{min:{initial:"unknown",states:{unknown:{always:[{target:"custom",cond:"hasMinConstraint"},{target:"none"}]},none:{},custom:{}}},max:{initial:"unknown",states:{unknown:{always:[{target:"custom",cond:"hasMaxConstraint"},{target:"none"}]},none:{},custom:{}}}}}}}}}}}},on:{SET_DEFAULT_CUSTOM_VALUE:{actions:"setDefaultCustomValue"},SET_CUSTOM:{actions:"setCustom",target:[".selection.unknown",".extension.unknown"]},SET_VALUE:{actions:"setValue",target:[".selection.unknown",".extension.unknown"]},SET_ITEMS:{actions:"setItems",target:[".selection.unknown",".extension.unknown"]},SET_TYPE:{actions:"setType",target:".extension.unknown"},SET_MIN:{actions:"setMin",target:".extension.unknown"},SET_MAX:{actions:"setMax",target:".extension.unknown"}}},{guards:{isPayloadFalsey:(e,t)=>!t.data,isPayloadTruthy:(e,t)=>!!t.data,isValueArray:e=>Array.isArray(e.value),showsIntegerField:e=>"integer"===e.type,showsFrequency:e=>"frequency"===e.type,showsTextarea:e=>"textarea"===e.type,hasMinConstraint:e=>"number"==typeof e.min,hasMaxConstraint:e=>"number"==typeof e.max,hasCustomValue:e=>"string"==typeof e.customValue,hasCustom:e=>e.custom},actions:{setDefaultCustomValue:q.assign({defaultCustomValue:(e,t)=>t.data}),setValue:q.assign({value:(e,t)=>t.data,customValue:(e,t)=>Array.isArray(t.data)?t.data.find((t=>!e.items.includes(t))):e.items.includes(t.data)?null:t.data}),setCustom:q.assign({custom:(e,t)=>t.data}),setItems:q.assign({items:(e,t)=>t.data}),setType:q.assign({type:(e,t)=>t.data}),setMin:q.assign({min:(e,t)=>t.data}),setMax:q.assign({max:(e,t)=>t.data})}});let J,ee,te,ae,se,ie,re,ne,le,oe,de,he,ue,ce=e=>e;const pe=`@foxy.io/elements::other[${(Math.pow(10,10)*Math.random()).toFixed(0)}]`;class me extends b{constructor(){super(...arguments),this.getText=e=>e,this.__service=j(Z).onChange((()=>this.requestUpdate())).onTransition((({changed:e})=>e&&this.requestUpdate())).start()}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-text-field":customElements.get("vaadin-text-field"),"x-frequency-input":Q,"vaadin-text-area":customElements.get("vaadin-text-area"),"iron-icon":customElements.get("iron-icon")}}static get styles(){return[super.styles,p(te||(te=ce`:host{--item-width:calc((var(--lumo-space-m) * 2) + 1.25rem)}.ml-xxl{margin-left:var(--item-width)}.item{height:var(--lumo-size-l);width:var(--item-width)}.radio{height:1.25rem;width:1.25rem}.check{height:1.125rem;width:1.125rem}.dot{height:.5rem;width:.5rem}`))]}static get properties(){return t(t({},super.properties),{},{defaultCustomValue:{type:String,attribute:"default-custom-value"},disabled:{type:Boolean},readonly:{type:Boolean},custom:{type:Boolean},type:{type:String},min:{type:Number},max:{type:Number},value:{type:Array},items:{type:Array},getText:{attribute:!1}})}get defaultCustomValue(){return this.__service.state.context.defaultCustomValue}set defaultCustomValue(e){this.__service.send("SET_DEFAULT_CUSTOM_VALUE",{data:e})}get readonly(){return this.__service.state.matches("mutability.readonly")}set readonly(e){this.__service.send("SET_READONLY",{data:e})}get disabled(){return this.__service.state.matches("interactivity.disabled")}set disabled(e){this.__service.send("SET_DISABLED",{data:e})}get custom(){return this.__service.state.matches("extension.present")}set custom(e){this.__service.send("SET_CUSTOM",{data:e})}get type(){return this.__service.state.context.type}set type(e){this.__service.send("SET_TYPE",{data:e})}get min(){return this.__service.state.context.min}set min(e){this.__service.send("SET_MIN",{data:e})}get max(){return this.__service.state.context.max}set max(e){this.__service.send("SET_MAX",{data:e})}get value(){return this.__service.state.context.value}set value(e){this.__service.send("SET_VALUE",{data:e})}get items(){return this.__service.state.context.items}set items(e){this.__service.send("SET_ITEMS",{data:e})}render(){const e=this.custom?[...this.items,pe]:this.items,t=Array.isArray(this.value),a=this.__service.state.matches("extension.present.selected"),s=m(ae||(ae=ce` ${0} `),e.map(((e,s,i)=>{var r;const n=this.custom&&s===i.length-1,l=n?a:t?!!(null===(r=this.value)||void 0===r?void 0:r.includes(e)):e===String(this.value),o=this.disabled||!this._isI18nReady,d=P({value:n?pe:e,name:t?e:"choice","data-testid":`item-${e}`,"?disabled":o,"@change":t=>{if(this.readonly)return t.preventDefault();const a=t.target.checked,s=e===pe?this.defaultCustomValue:e,i=this.value;Array.isArray(i)?this.value=e===pe?a?[...i,s]:i.slice(0,i.length-1):a?[s,...i]:i.filter((e=>e!==s)):this.value=a?s:null,this.dispatchEvent(new U(this.value))}}),h=m(se||(se=ce` <div> ${0} </div> `),e===pe?this._t("choice.other").toString():m(ie||(ie=ce`<slot name="${0}">${0}</slot>`),`${e}-label`,this.getText(e)));return m(re||(re=ce` <div class="ml-xxl border-t border-contrast-10 ${0}"></div> ${0} <div class="mr-m ml-xxl"> ${0} ${0} </div> `),s?"":"hidden",t?function(e,t,a,s,i){const r="transition ease-in-out duration-200",n=`${r} transform ${a?"scale-100":"scale-0"} ${e?"text-contrast-70":"text-tint"}`;return m(ee||(ee=ce` <label class="group flex items-center ${0}"> <div class="item flex items-center justify-center flex-shrink-0 text-primary-contrast"> <div class="check rounded-s ${0} ${0} ${0} focus-within-shadow-outline"> <iron-icon icon="lumo:checkmark" class="block w-full h-full ${0}"></iron-icon> <input type="checkbox" class="sr-only" .checked="${0}" ...="${0}"> </div> </div> <div class="font-lumo leading-m ${0}">${0}</div> </label> `),t||e?"":"cursor-pointer","border "+(e?"border-dashed border-contrast-30":"border-transparent"),r,e?"":t?a?"bg-primary-50":"bg-contrast-10":a?"bg-primary":"bg-contrast-20 group-hover-bg-contrast-30",n,a,s,t?"text-disabled":e?"text-secondary":"text-body",i)}(this.readonly,o,l,d,h):function(e,t,a,s,i){const r="transition ease-in-out duration-200",n=`${r} ${t||e?"":"shadow-xs"} transform ${a?"scale-100":"scale-0"} ${e?"bg-contrast-70":"bg-tint"}`;return m(J||(J=ce` <label class="group flex items-center ${0}"> <div class="item flex items-center justify-center flex-shrink-0"> <div class="flex radio rounded-full ${0} ${0} ${0} focus-within-shadow-outline"> <div class="dot m-auto rounded-full ${0}"></div> <input type="radio" class="sr-only" .checked="${0}" ...="${0}"> </div> </div> <div class="font-lumo leading-m ${0}">${0}</div> </label> `),t||e?"":"cursor-pointer","border "+(e?"border-dashed border-contrast-30":"border-transparent"),r,e?"":t?a?"bg-primary-50":"bg-contrast-10":a?"bg-primary":"bg-contrast-20 group-hover-bg-contrast-30",n,a,s,t?"text-disabled":e?"text-secondary":"text-body",i)}(this.readonly,o,l,d,h),e===pe&&a?this.__field:"",e!==pe?m(ne||(ne=ce`<slot name="${0}"></slot>`),e):"")})));return m(le||(le=ce`<form>${0}</form> `),s)}get __field(){const e=P({placeholder:this._t("choice.other").toString(),class:"w-full mb-m",value:this.__service.state.context.customValue,max:this.max,min:this.min,ns:this.ns,"?disabled":this.disabled,"?readonly":this.readonly,"data-testid":"field","@change":e=>{e.stopPropagation();const t=e.target.value;Array.isArray(this.value)?this.value=this.value.slice(0,this.value.length-1).concat(t):this.value=t,this.dispatchEvent(new U(this.value))}});return"frequency"===this.type?m(oe||(oe=ce`<x-frequency-input ...="${0}"></x-frequency-input>`),e):"integer"===this.type?m(de||(de=ce`<vaadin-integer-field ...="${0}" has-controls></vaadin-integer-field>`),e):"textarea"===this.type?m(he||(he=ce`<vaadin-text-area ...="${0}"></vaadin-text-area>`),e):m(ue||(ue=ce`<vaadin-text-field ...="${0}"></vaadin-text-field>`),e)}}export{me as C,R as D,Q as F,B as a,U as b,q as c};
|
|
302
|
+
`}static get is(){return"vaadin-custom-field"}static get version(){return"1.3.0"}static get properties(){return{label:{type:String,value:"",observer:"_labelChanged"},name:String,required:{type:Boolean,reflectToAttribute:!0},value:{type:String,observer:"__valueChanged",notify:!0},invalid:{type:Boolean,reflectToAttribute:!0,notify:!0,value:!1,observer:"__invalidChanged"},errorMessage:{type:String,value:"",observer:"__errorMessageChanged"},helperText:{type:String,value:"",observer:"__helperTextChanged"}}}static get observers(){return["__getActiveErrorId(invalid, errorMessage, __errorId, helperText, __helperTextId, __hasSlottedHelper)","__getActiveLabelId(label, __labelId)","__toggleHasValue(value)"]}__invalidChanged(e){this.__setOrToggleAttribute("aria-invalid",e,this)}__errorMessageChanged(e){this.__setOrToggleAttribute("has-error-message",!!e,this)}__helperTextChanged(e){this.__setOrToggleAttribute("has-helper",!!e,this)}__toggleHasValue(e){null!==e&&""!==e.trim()?this.setAttribute("has-value",""):this.removeAttribute("has-value")}_labelChanged(e){""!==e&&null!=e?this.setAttribute("has-label",""):this.removeAttribute("has-label")}validate(){return!(this.invalid=!this.checkValidity())}checkValidity(){return!(this.inputs.filter((e=>!(e.validate||e.checkValidity).call(e))).length||this.required&&!this.value.trim())}__setOrToggleAttribute(e,t,a){e&&a&&a.hasAttribute(e)===!t&&(t?a.setAttribute(e,"boolean"==typeof t?"":t):a.removeAttribute(e))}__getActiveErrorId(e,t,a,s,i,r){const l=[];(s||r)&&l.push(i),t&&e&&l.push(a),l.length>0?this.setAttribute("aria-describedby",l.join(" ")):this.removeAttribute("aria-describedby")}__getActiveLabelId(e,t){this.__setOrToggleAttribute("aria-labelledby",e?t:void 0,this)}__getErrorMessageAriaHidden(e,t,a){return(!(t&&e?a:void 0)).toString()}}customElements.define(R.is,R);class Y extends CustomEvent{constructor(e){super("change",{detail:e})}}class W extends Y{}let X,K,G=e=>e;class Q extends(g(e(c))){constructor(){super(...arguments),this.label="",this.value="",this.disabled=!1,this.readonly=!1,this.errorMessage="",this.__i18n={formatValue:e=>e.join(""),parseValue:e=>{const{count:t,units:a}=v(e);return[t.toString(),a]}},this.__getItems=F((e=>{const t=v(e).count;return[{value:"d",label:this.t("day",{count:t})},{value:"w",label:this.t("week",{count:t})},{value:"m",label:this.t("month",{count:t})},{value:"y",label:this.t("year",{count:t})}]}))}static get properties(){return t(t({},super.properties),{},{checkValidity:{attribute:!1},errorMessage:{type:String,attribute:"error-message"},disabled:{type:Boolean,reflect:!0},readonly:{type:Boolean,reflect:!0},label:{type:String},value:{type:String}})}static get styles(){return p(X||(X=G`:host{display:block}vaadin-custom-field{width:100%;font-size:0;line-height:0;padding-top:0!important}vaadin-custom-field::part(label){padding-bottom:var(--lumo-space-s)}vaadin-custom-field::part(error-message)[aria-hidden=false]{padding-top:var(--lumo-space-xs)}vaadin-combo-box,vaadin-integer-field{width:calc(50% - (var(--lumo-space-s)/ 2))}vaadin-integer-field{margin-right:var(--lumo-space-s);padding:0}vaadin-combo-box::part(text-field){padding:0}`))}render(){return m(K||(K=G` <vaadin-custom-field data-testid="field" .i18n="${0}" .label="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" .errorMessage="${0}" .checkValidity="${0}" @change="${0}"> <vaadin-integer-field data-testid="value" min="1" max="999" has-controls prevent-invalid-input ?invalid="${0}" ?disabled="${0}" ?readonly="${0}"> </vaadin-integer-field> <vaadin-combo-box data-testid="units" item-value-path="value" item-label-path="label" .items="${0}" ?invalid="${0}" ?disabled="${0}" ?readonly="${0}"> </vaadin-combo-box> </vaadin-custom-field> `),this.__i18n,this.label,H(this.value),this.disabled,this.readonly,this.errorMessage,this.checkValidity,this.__handleChange,!this.checkValidity(),this.disabled,this.readonly,this.__getItems(this.value),!this.checkValidity(),this.disabled,this.readonly)}updated(e){super.updated(e);const t=this.renderRoot.firstElementChild;t.value!==this.value&&(t.value=this.value)}checkValidity(){return!0}__handleChange(e){const t=e.target;this.value=t.value,this.dispatchEvent(new W(this.value))}}const Z=L({id:"choice",type:"parallel",context:{defaultCustomValue:"",customValue:null,custom:!1,items:[],value:null,type:"text",min:null,max:null},states:{mutability:{initial:"editable",states:{editable:{},readonly:{}},on:{SET_READONLY:[{target:".editable",cond:"isPayloadFalsey"},{target:".readonly",cond:"isPayloadTruthy"}]}},interactivity:{initial:"enabled",states:{enabled:{},disabled:{}},on:{SET_DISABLED:[{target:".enabled",cond:"isPayloadFalsey"},{target:".disabled",cond:"isPayloadTruthy"}]}},selection:{initial:"unknown",states:{unknown:{always:[{target:"multiple",cond:"isValueArray"},{target:"single"}]},none:{},single:{},multiple:{}}},extension:{initial:"unknown",states:{unknown:{always:[{target:"present",cond:"hasCustom"},{target:"absent"}]},absent:{},present:{initial:"unknown",states:{unknown:{always:[{target:"selected",cond:"hasCustomValue"},{target:"available"}]},available:{on:{SET_TYPE:{actions:"setType"}}},selected:{initial:"unknown",states:{unknown:{always:[{target:"integer",cond:"showsIntegerField"},{target:"textarea",cond:"showsTextarea"},{target:"frequency",cond:"showsFrequency"},{target:"text"}]},text:{},frequency:{},textarea:{},integer:{type:"parallel",states:{min:{initial:"unknown",states:{unknown:{always:[{target:"custom",cond:"hasMinConstraint"},{target:"none"}]},none:{},custom:{}}},max:{initial:"unknown",states:{unknown:{always:[{target:"custom",cond:"hasMaxConstraint"},{target:"none"}]},none:{},custom:{}}}}}}}}}}}},on:{SET_DEFAULT_CUSTOM_VALUE:{actions:"setDefaultCustomValue"},SET_CUSTOM:{actions:"setCustom",target:[".selection.unknown",".extension.unknown"]},SET_VALUE:{actions:"setValue",target:[".selection.unknown",".extension.unknown"]},SET_ITEMS:{actions:"setItems",target:[".selection.unknown",".extension.unknown"]},SET_TYPE:{actions:"setType",target:".extension.unknown"},SET_MIN:{actions:"setMin",target:".extension.unknown"},SET_MAX:{actions:"setMax",target:".extension.unknown"}}},{guards:{isPayloadFalsey:(e,t)=>!t.data,isPayloadTruthy:(e,t)=>!!t.data,isValueArray:e=>Array.isArray(e.value),showsIntegerField:e=>"integer"===e.type,showsFrequency:e=>"frequency"===e.type,showsTextarea:e=>"textarea"===e.type,hasMinConstraint:e=>"number"==typeof e.min,hasMaxConstraint:e=>"number"==typeof e.max,hasCustomValue:e=>"string"==typeof e.customValue,hasCustom:e=>e.custom},actions:{setDefaultCustomValue:P.assign({defaultCustomValue:(e,t)=>t.data}),setValue:P.assign({value:(e,t)=>t.data,customValue:(e,t)=>Array.isArray(t.data)?t.data.find((t=>!e.items.includes(t))):e.items.includes(t.data)?null:t.data}),setCustom:P.assign({custom:(e,t)=>t.data}),setItems:P.assign({items:(e,t)=>t.data}),setType:P.assign({type:(e,t)=>t.data}),setMin:P.assign({min:(e,t)=>t.data}),setMax:P.assign({max:(e,t)=>t.data})}});let J,ee,te,ae,se,ie,re,le,ne,oe,de,he,ue,ce=e=>e;const pe=`@foxy.io/elements::other[${(Math.pow(10,10)*Math.random()).toFixed(0)}]`;class me extends b{constructor(){super(...arguments),this.getText=e=>e,this.__service=q(Z).onChange((()=>this.requestUpdate())).onTransition((({changed:e})=>e&&this.requestUpdate())).start()}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-text-field":customElements.get("vaadin-text-field"),"x-frequency-input":Q,"vaadin-text-area":customElements.get("vaadin-text-area"),"iron-icon":customElements.get("iron-icon")}}static get styles(){return[super.styles,p(te||(te=ce`:host{--item-width:calc((var(--lumo-space-m) * 2) + 1.25rem)}.ml-xxl{margin-left:var(--item-width)}.item{height:var(--lumo-size-l);width:var(--item-width)}.radio{height:1.25rem;width:1.25rem}.check{height:1.125rem;width:1.125rem}.dot{height:.5rem;width:.5rem}`))]}static get properties(){return t(t({},super.properties),{},{defaultCustomValue:{type:String,attribute:"default-custom-value"},disabled:{type:Boolean},readonly:{type:Boolean},custom:{type:Boolean},type:{type:String},min:{type:Number},max:{type:Number},value:{type:Array},items:{type:Array},getText:{attribute:!1}})}get defaultCustomValue(){return this.__service.state.context.defaultCustomValue}set defaultCustomValue(e){this.__service.send("SET_DEFAULT_CUSTOM_VALUE",{data:e})}get readonly(){return this.__service.state.matches("mutability.readonly")}set readonly(e){this.__service.send("SET_READONLY",{data:e})}get disabled(){return this.__service.state.matches("interactivity.disabled")}set disabled(e){this.__service.send("SET_DISABLED",{data:e})}get custom(){return this.__service.state.matches("extension.present")}set custom(e){this.__service.send("SET_CUSTOM",{data:e})}get type(){return this.__service.state.context.type}set type(e){this.__service.send("SET_TYPE",{data:e})}get min(){return this.__service.state.context.min}set min(e){this.__service.send("SET_MIN",{data:e})}get max(){return this.__service.state.context.max}set max(e){this.__service.send("SET_MAX",{data:e})}get value(){return this.__service.state.context.value}set value(e){this.__service.send("SET_VALUE",{data:e})}get items(){return this.__service.state.context.items}set items(e){this.__service.send("SET_ITEMS",{data:e})}render(){const e=this.custom?[...this.items,pe]:this.items,t=Array.isArray(this.value),a=this.__service.state.matches("extension.present.selected"),s=m(ae||(ae=ce` ${0} `),e.map(((e,s,i)=>{var r;const l=this.custom&&s===i.length-1,n=l?a:t?!!(null===(r=this.value)||void 0===r?void 0:r.includes(e)):e===String(this.value),o=this.disabled||!this._isI18nReady,d=j({value:l?pe:e,name:t?e:"choice","data-testid":`item-${e}`,"?disabled":o,"@change":t=>{if(this.readonly)return t.preventDefault();const a=t.target.checked,s=e===pe?this.defaultCustomValue:e,i=this.value;Array.isArray(i)?this.value=e===pe?a?[...i,s]:i.slice(0,i.length-1):a?[s,...i]:i.filter((e=>e!==s)):this.value=a?s:null,this.dispatchEvent(new N(this.value))}}),h=m(se||(se=ce` <div> ${0} </div> `),e===pe?this._t("choice.other").toString():m(ie||(ie=ce`<slot name="${0}">${0}</slot>`),`${e}-label`,this.getText(e)));return m(re||(re=ce` <div class="ml-xxl border-t border-contrast-10 ${0}"></div> ${0} <div class="mr-m ml-xxl"> ${0} ${0} </div> `),s?"":"hidden",t?function(e,t,a,s,i){const r="transition ease-in-out duration-200",l=`${r} transform ${a?"scale-100":"scale-0"} ${e?"text-contrast-70":"text-tint"}`;return m(ee||(ee=ce` <label class="group flex items-center ${0}"> <div class="item flex items-center justify-center flex-shrink-0 text-primary-contrast"> <div class="check rounded-s ${0} ${0} ${0} focus-within-shadow-outline"> <iron-icon icon="lumo:checkmark" class="block w-full h-full ${0}"></iron-icon> <input type="checkbox" class="sr-only" .checked="${0}" ...="${0}"> </div> </div> <div class="font-lumo leading-m ${0}">${0}</div> </label> `),t||e?"":"cursor-pointer","border "+(e?"border-dashed border-contrast-30":"border-transparent"),r,e?"":t?a?"bg-primary-50":"bg-contrast-10":a?"bg-primary":"bg-contrast-20 group-hover-bg-contrast-30",l,a,s,t?"text-disabled":e?"text-secondary":"text-body",i)}(this.readonly,o,n,d,h):function(e,t,a,s,i){const r="transition ease-in-out duration-200",l=`${r} ${t||e?"":"shadow-xs"} transform ${a?"scale-100":"scale-0"} ${e?"bg-contrast-70":"bg-tint"}`;return m(J||(J=ce` <label class="group flex items-center ${0}"> <div class="item flex items-center justify-center flex-shrink-0"> <div class="flex radio rounded-full ${0} ${0} ${0} focus-within-shadow-outline"> <div class="dot m-auto rounded-full ${0}"></div> <input type="radio" class="sr-only" .checked="${0}" ...="${0}"> </div> </div> <div class="font-lumo leading-m ${0}">${0}</div> </label> `),t||e?"":"cursor-pointer","border "+(e?"border-dashed border-contrast-30":"border-transparent"),r,e?"":t?a?"bg-primary-50":"bg-contrast-10":a?"bg-primary":"bg-contrast-20 group-hover-bg-contrast-30",l,a,s,t?"text-disabled":e?"text-secondary":"text-body",i)}(this.readonly,o,n,d,h),e===pe&&a?this.__field:"",e!==pe?m(le||(le=ce`<slot name="${0}"></slot>`),e):"")})));return m(ne||(ne=ce`<form>${0}</form> `),s)}get __field(){const e=j({placeholder:this._t("choice.other").toString(),class:"w-full mb-m",value:this.__service.state.context.customValue,max:this.max,min:this.min,ns:this.ns,"?disabled":this.disabled,"?readonly":this.readonly,"data-testid":"field","@change":e=>{e.stopPropagation();const t=e.target.value;Array.isArray(this.value)?this.value=this.value.slice(0,this.value.length-1).concat(t):this.value=t,this.dispatchEvent(new N(this.value))}});return"frequency"===this.type?m(oe||(oe=ce`<x-frequency-input ...="${0}"></x-frequency-input>`),e):"integer"===this.type?m(de||(de=ce`<vaadin-integer-field ...="${0}" has-controls></vaadin-integer-field>`),e):"textarea"===this.type?m(he||(he=ce`<vaadin-text-area ...="${0}"></vaadin-text-area>`),e):m(ue||(ue=ce`<vaadin-text-field ...="${0}"></vaadin-text-field>`),e)}}export{me as C,Y as D,Q as F,R as a,N as b,P as c};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"go_back": "Go back",
|
|
3
|
+
"go_home": "Go home",
|
|
4
|
+
"refresh": "Refresh",
|
|
5
|
+
"first": "First",
|
|
6
|
+
"last": "Last",
|
|
7
|
+
"next": "Next",
|
|
8
|
+
"pagination": "{{from}}-{{to}} out of {{total}}",
|
|
9
|
+
"previous": "Previous",
|
|
10
|
+
"delete": "Delete",
|
|
11
|
+
"submit": "Submit",
|
|
12
|
+
"undo": "Undo",
|
|
13
|
+
"copy-to-clipboard": {
|
|
14
|
+
"click_to_copy": "Click to copy",
|
|
15
|
+
"copying": "Copying",
|
|
16
|
+
"done": "Done",
|
|
17
|
+
"failed_to_copy": "Failed to copy"
|
|
18
|
+
},
|
|
19
|
+
"spinner": {
|
|
20
|
+
"loading_busy": "Loading"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { PropertyDeclarations, TemplateResult } from 'lit-element';
|
|
2
|
+
import type { CollectionPage } from '../../public';
|
|
3
|
+
import type { FormDialog } from '../../index';
|
|
4
|
+
import { InternalControl } from '../InternalControl/InternalControl';
|
|
5
|
+
/**
|
|
6
|
+
* Internal control displaying a collapsible card with
|
|
7
|
+
* optionally editable hAPI collection items.
|
|
8
|
+
*
|
|
9
|
+
* @tag foxy-internal-async-details-control
|
|
10
|
+
* @since 1.17.0
|
|
11
|
+
*/
|
|
12
|
+
export declare class InternalAsyncDetailsControl extends InternalControl {
|
|
13
|
+
static get properties(): PropertyDeclarations;
|
|
14
|
+
/** Same as the `related` property of `NucleonElement`. */
|
|
15
|
+
related: string[];
|
|
16
|
+
/** Limit query parameter to apply to the `first` URL. */
|
|
17
|
+
limit: number;
|
|
18
|
+
/** URI of the first page of the hAPI collection to display. */
|
|
19
|
+
first: string;
|
|
20
|
+
/** Same as the `form` property of `FormDialog`. If set, will open a dialog on item click. */
|
|
21
|
+
form: FormDialog['form'];
|
|
22
|
+
/** Same as the `item` property of `CollectionPage`. */
|
|
23
|
+
item: CollectionPage<any>['item'];
|
|
24
|
+
/** Same as the `open` property of `InternalDetails`. */
|
|
25
|
+
open: boolean;
|
|
26
|
+
private __itemRenderer;
|
|
27
|
+
renderControl(): TemplateResult;
|
|
28
|
+
private get __dialog();
|
|
29
|
+
private get __cardRenderer();
|
|
30
|
+
}
|
|
@@ -1,16 +1,52 @@
|
|
|
1
|
-
import { html } from 'lit-element';
|
|
2
1
|
import { InternalControl } from "../InternalControl/InternalControl.js";
|
|
3
|
-
import { ifDefined } from 'lit-html/directives/if-defined';
|
|
4
2
|
import { classMap } from "../../../utils/class-map.js";
|
|
5
|
-
|
|
3
|
+
import { html } from 'lit-element';
|
|
4
|
+
/**
|
|
5
|
+
* Internal control displaying a collapsible card with
|
|
6
|
+
* optionally editable hAPI collection items.
|
|
7
|
+
*
|
|
8
|
+
* @tag foxy-internal-async-details-control
|
|
9
|
+
* @since 1.17.0
|
|
10
|
+
*/
|
|
11
|
+
export class InternalAsyncDetailsControl extends InternalControl {
|
|
6
12
|
constructor() {
|
|
7
13
|
super(...arguments);
|
|
14
|
+
/** Same as the `related` property of `NucleonElement`. */
|
|
8
15
|
this.related = [];
|
|
16
|
+
/** Limit query parameter to apply to the `first` URL. */
|
|
9
17
|
this.limit = 20;
|
|
18
|
+
/** URI of the first page of the hAPI collection to display. */
|
|
10
19
|
this.first = '';
|
|
20
|
+
/** Same as the `form` property of `FormDialog`. If set, will open a dialog on item click. */
|
|
11
21
|
this.form = '';
|
|
22
|
+
/** Same as the `item` property of `CollectionPage`. */
|
|
12
23
|
this.item = '';
|
|
24
|
+
/** Same as the `open` property of `InternalDetails`. */
|
|
13
25
|
this.open = false;
|
|
26
|
+
this.__itemRenderer = ctx => {
|
|
27
|
+
if (!this.form || !ctx.data)
|
|
28
|
+
return this.__cardRenderer(ctx);
|
|
29
|
+
const isDisabled = this.disabledSelector.matches('card', true);
|
|
30
|
+
return html `
|
|
31
|
+
<button
|
|
32
|
+
?disabled=${isDisabled}
|
|
33
|
+
class=${classMap({
|
|
34
|
+
'focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50': true,
|
|
35
|
+
'text-left w-full block transition-colors': true,
|
|
36
|
+
'hover-bg-contrast-5': !isDisabled,
|
|
37
|
+
})}
|
|
38
|
+
@click=${(evt) => {
|
|
39
|
+
const button = evt.currentTarget;
|
|
40
|
+
const dialog = this.__dialog;
|
|
41
|
+
dialog.header = 'header_update';
|
|
42
|
+
dialog.href = ctx.href;
|
|
43
|
+
dialog.show(button);
|
|
44
|
+
}}
|
|
45
|
+
>
|
|
46
|
+
${this.__cardRenderer(ctx)}
|
|
47
|
+
</button>
|
|
48
|
+
`;
|
|
49
|
+
};
|
|
14
50
|
}
|
|
15
51
|
static get properties() {
|
|
16
52
|
return {
|
|
@@ -24,59 +60,29 @@ export class InternalCollectionCard extends InternalControl {
|
|
|
24
60
|
};
|
|
25
61
|
}
|
|
26
62
|
renderControl() {
|
|
27
|
-
var _a, _b;
|
|
28
63
|
let first;
|
|
29
64
|
try {
|
|
30
65
|
const url = new URL(this.first);
|
|
31
66
|
url.searchParams.set('limit', String(this.limit));
|
|
32
67
|
first = url.toString();
|
|
33
68
|
}
|
|
34
|
-
catch (
|
|
69
|
+
catch (_a) {
|
|
35
70
|
first = this.first;
|
|
36
71
|
}
|
|
37
|
-
const cardRenderer = new Function('ctx', `return ctx.html\`<${this.item} related=\${JSON.stringify(ctx.related)} parent=\${ctx.parent} class="p-m" infer href=\${ctx.href}></${this.item}>\``);
|
|
38
|
-
const itemRenderer = ctx => {
|
|
39
|
-
if (this.form && !!ctx.data) {
|
|
40
|
-
const isDisabled = this.disabledSelector.matches('card', true);
|
|
41
|
-
return html `
|
|
42
|
-
<button
|
|
43
|
-
?disabled=${isDisabled}
|
|
44
|
-
class=${classMap({
|
|
45
|
-
'focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50': true,
|
|
46
|
-
'text-left w-full block transition-colors': true,
|
|
47
|
-
'hover-bg-contrast-5': !isDisabled,
|
|
48
|
-
})}
|
|
49
|
-
@click=${(evt) => {
|
|
50
|
-
const dialog = this.renderRoot.querySelector('#form');
|
|
51
|
-
const button = evt.currentTarget;
|
|
52
|
-
dialog.header = 'header_update';
|
|
53
|
-
dialog.href = ctx.href;
|
|
54
|
-
dialog.show(button);
|
|
55
|
-
}}
|
|
56
|
-
>
|
|
57
|
-
${cardRenderer(ctx)}
|
|
58
|
-
</button>
|
|
59
|
-
`;
|
|
60
|
-
}
|
|
61
|
-
return cardRenderer(ctx);
|
|
62
|
-
};
|
|
63
72
|
return html `
|
|
64
|
-
<foxy-internal-details
|
|
73
|
+
<foxy-internal-details
|
|
65
74
|
summary="title"
|
|
66
|
-
infer
|
|
75
|
+
infer=""
|
|
67
76
|
?open=${this.open}
|
|
68
|
-
@toggle=${(evt) =>
|
|
69
|
-
this.open = evt.currentTarget.open;
|
|
70
|
-
}}
|
|
77
|
+
@toggle=${(evt) => (this.open = evt.currentTarget.open)}
|
|
71
78
|
>
|
|
72
79
|
${this.form
|
|
73
80
|
? html `
|
|
74
81
|
<foxy-form-dialog
|
|
75
|
-
related=${JSON.stringify(this.related)}
|
|
76
82
|
parent=${first}
|
|
77
|
-
group=${ifDefined((_a = this.nucleon) === null || _a === void 0 ? void 0 : _a.group)}
|
|
78
83
|
infer="dialog"
|
|
79
84
|
id="form"
|
|
85
|
+
.related=${this.related}
|
|
80
86
|
.form=${this.form}
|
|
81
87
|
>
|
|
82
88
|
</foxy-form-dialog>
|
|
@@ -90,10 +96,11 @@ export class InternalCollectionCard extends InternalControl {
|
|
|
90
96
|
@click=${(evt) => {
|
|
91
97
|
evt.preventDefault();
|
|
92
98
|
evt.stopPropagation();
|
|
93
|
-
const dialog = this.
|
|
99
|
+
const dialog = this.__dialog;
|
|
100
|
+
const button = evt.currentTarget;
|
|
94
101
|
dialog.header = 'header_create';
|
|
95
102
|
dialog.href = '';
|
|
96
|
-
dialog.show(
|
|
103
|
+
dialog.show(button);
|
|
97
104
|
}}
|
|
98
105
|
>
|
|
99
106
|
<iron-icon class="icon-inline" icon="icons:add"></iron-icon>
|
|
@@ -104,16 +111,21 @@ export class InternalCollectionCard extends InternalControl {
|
|
|
104
111
|
|
|
105
112
|
<foxy-pagination class="px-m pb-s" first=${first} infer="pagination">
|
|
106
113
|
<foxy-collection-page
|
|
107
|
-
related=${JSON.stringify(this.related)}
|
|
108
114
|
class="-mx-m block divide-y divide-contrast-10 mb-s"
|
|
109
|
-
group=${ifDefined((_b = this.nucleon) === null || _b === void 0 ? void 0 : _b.group)}
|
|
110
115
|
infer="card"
|
|
111
|
-
.
|
|
116
|
+
.related=${this.related}
|
|
117
|
+
.item=${this.__itemRenderer}
|
|
112
118
|
>
|
|
113
119
|
</foxy-collection-page>
|
|
114
120
|
</foxy-pagination>
|
|
115
|
-
</foxy-internal-details
|
|
121
|
+
</foxy-internal-details>
|
|
116
122
|
`;
|
|
117
123
|
}
|
|
124
|
+
get __dialog() {
|
|
125
|
+
return this.renderRoot.querySelector('#form');
|
|
126
|
+
}
|
|
127
|
+
get __cardRenderer() {
|
|
128
|
+
return new Function('ctx', `return ctx.html\`<${this.item} related=\${JSON.stringify(ctx.related)} parent=\${ctx.parent} class="p-m" infer href=\${ctx.href}></${this.item}>\``);
|
|
129
|
+
}
|
|
118
130
|
}
|
|
119
|
-
//# sourceMappingURL=
|
|
131
|
+
//# sourceMappingURL=InternalAsyncDetailsControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InternalAsyncDetailsControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,8CAA2C;AACrE,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,OAAO,2BAA4B,SAAQ,eAAe;IAAhE;;QAaE,0DAA0D;QAC1D,YAAO,GAAG,EAAc,CAAC;QAEzB,yDAAyD;QACzD,UAAK,GAAG,EAAE,CAAC;QAEX,+DAA+D;QAC/D,UAAK,GAAG,EAAE,CAAC;QAEX,6FAA6F;QAC7F,SAAI,GAAuB,EAAE,CAAC;QAE9B,uDAAuD;QACvD,SAAI,GAAgC,EAAE,CAAC;QAEvC,wDAAwD;QACxD,SAAI,GAAG,KAAK,CAAC;QAEL,mBAAc,GAAiB,GAAG,CAAC,EAAE;YAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAE7D,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAE/D,OAAO,IAAI,CAAA;;oBAEK,UAAU;gBACd,QAAQ,CAAC;gBACf,wEAAwE,EAAE,IAAI;gBAC9E,0CAA0C,EAAE,IAAI;gBAChD,qBAAqB,EAAE,CAAC,UAAU;aACnC,CAAC;iBACO,CAAC,GAAU,EAAE,EAAE;gBACtB,MAAM,MAAM,GAAG,GAAG,CAAC,aAAkC,CAAC;gBACtD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAE7B,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC;gBAChC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;;UAEC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;;KAE7B,CAAC;QACJ,CAAC,CAAC;IA+EJ,CAAC;IAtIC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACvB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACvB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACtB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACtB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SACxB,CAAC;IACJ,CAAC;IA+CD,aAAa;QACX,IAAI,KAAa,CAAC;QAElB,IAAI;YACF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAClD,KAAK,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;SACxB;QAAC,WAAM;YACN,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;SACpB;QAED,OAAO,IAAI,CAAA;;;;gBAIC,IAAI,CAAC,IAAI;kBACP,CAAC,GAAU,EAAE,EAAE,CACvB,CAAC,IAAI,CAAC,IAAI,GAAI,GAAG,CAAC,aAA6C,CAAC,IAAI,CAAC;;UAErE,IAAI,CAAC,IAAI;YACT,CAAC,CAAC,IAAI,CAAA;;yBAES,KAAK;;;2BAGH,IAAI,CAAC,OAAO;wBACf,IAAI,CAAC,IAAW;;;;gBAIxB,IAAI,CAAC,QAAQ;gBACb,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,IAAI,CAAA;;;;+BAIS,CAAC,GAAU,EAAE,EAAE;oBACtB,GAAG,CAAC,cAAc,EAAE,CAAC;oBACrB,GAAG,CAAC,eAAe,EAAE,CAAC;oBAEtB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,aAAkC,CAAC;oBAEtD,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC;oBAChC,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;oBACjB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtB,CAAC;;;;mBAIJ;aACN;YACH,CAAC,CAAC,EAAE;;mDAEqC,KAAK;;;;uBAIjC,IAAI,CAAC,OAAO;oBACf,IAAI,CAAC,cAAqB;;;;;KAKzC,CAAC;IACJ,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAe,CAAC;IAC9D,CAAC;IAED,IAAY,cAAc;QACxB,OAAO,IAAI,QAAQ,CACjB,KAAK,EACL,qBAAqB,IAAI,CAAC,IAAI,wGAAwG,IAAI,CAAC,IAAI,KAAK,CACrI,CAAC;IACpB,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { CollectionPage } from '../../public';\nimport type { ItemRenderer } from '../../public/CollectionPage/types';\nimport type { FormDialog } from '../../index';\n\nimport { InternalControl } from '../InternalControl/InternalControl';\nimport { classMap } from '../../../utils/class-map';\nimport { html } from 'lit-element';\n\n/**\n * Internal control displaying a collapsible card with\n * optionally editable hAPI collection items.\n *\n * @tag foxy-internal-async-details-control\n * @since 1.17.0\n */\nexport class InternalAsyncDetailsControl extends InternalControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n related: { type: Array },\n first: { type: String },\n limit: { type: Number },\n form: { type: String },\n item: { type: String },\n open: { type: Boolean },\n };\n }\n\n /** Same as the `related` property of `NucleonElement`. */\n related = [] as string[];\n\n /** Limit query parameter to apply to the `first` URL. */\n limit = 20;\n\n /** URI of the first page of the hAPI collection to display. */\n first = '';\n\n /** Same as the `form` property of `FormDialog`. If set, will open a dialog on item click. */\n form: FormDialog['form'] = '';\n\n /** Same as the `item` property of `CollectionPage`. */\n item: CollectionPage<any>['item'] = '';\n\n /** Same as the `open` property of `InternalDetails`. */\n open = false;\n\n private __itemRenderer: ItemRenderer = ctx => {\n if (!this.form || !ctx.data) return this.__cardRenderer(ctx);\n\n const isDisabled = this.disabledSelector.matches('card', true);\n\n return html`\n <button\n ?disabled=${isDisabled}\n class=${classMap({\n 'focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50': true,\n 'text-left w-full block transition-colors': true,\n 'hover-bg-contrast-5': !isDisabled,\n })}\n @click=${(evt: Event) => {\n const button = evt.currentTarget as HTMLButtonElement;\n const dialog = this.__dialog;\n\n dialog.header = 'header_update';\n dialog.href = ctx.href;\n dialog.show(button);\n }}\n >\n ${this.__cardRenderer(ctx)}\n </button>\n `;\n };\n\n renderControl(): TemplateResult {\n let first: string;\n\n try {\n const url = new URL(this.first);\n url.searchParams.set('limit', String(this.limit));\n first = url.toString();\n } catch {\n first = this.first;\n }\n\n return html`\n <foxy-internal-details\n summary=\"title\"\n infer=\"\"\n ?open=${this.open}\n @toggle=${(evt: Event) =>\n (this.open = (evt.currentTarget as InternalAsyncDetailsControl).open)}\n >\n ${this.form\n ? html`\n <foxy-form-dialog\n parent=${first}\n infer=\"dialog\"\n id=\"form\"\n .related=${this.related}\n .form=${this.form as any}\n >\n </foxy-form-dialog>\n\n ${this.readonly\n ? ''\n : html`\n <button\n class=\"h-xs w-xs rounded-full text-success flex items-center justify-center text-l focus-outline-none focus-ring-2 focus-ring-primary-50\"\n slot=\"actions\"\n @click=${(evt: Event) => {\n evt.preventDefault();\n evt.stopPropagation();\n\n const dialog = this.__dialog;\n const button = evt.currentTarget as HTMLButtonElement;\n\n dialog.header = 'header_create';\n dialog.href = '';\n dialog.show(button);\n }}\n >\n <iron-icon class=\"icon-inline\" icon=\"icons:add\"></iron-icon>\n </button>\n `}\n `\n : ''}\n\n <foxy-pagination class=\"px-m pb-s\" first=${first} infer=\"pagination\">\n <foxy-collection-page\n class=\"-mx-m block divide-y divide-contrast-10 mb-s\"\n infer=\"card\"\n .related=${this.related}\n .item=${this.__itemRenderer as any}\n >\n </foxy-collection-page>\n </foxy-pagination>\n </foxy-internal-details>\n `;\n }\n\n private get __dialog() {\n return this.renderRoot.querySelector('#form') as FormDialog;\n }\n\n private get __cardRenderer() {\n return new Function(\n 'ctx',\n `return ctx.html\\`<${this.item} related=\\${JSON.stringify(ctx.related)} parent=\\${ctx.parent} class=\"p-m\" infer href=\\${ctx.href}></${this.item}>\\``\n ) as ItemRenderer;\n }\n}\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import '../../public/CollectionPage/index';
|
|
2
|
+
import '../../public/FormDialog/index';
|
|
3
|
+
import '../../public/Pagination/index';
|
|
4
|
+
import '../../public/I18n/index';
|
|
5
|
+
import '../InternalDetails/index';
|
|
6
|
+
import { InternalAsyncDetailsControl as Control } from './InternalAsyncDetailsControl';
|
|
7
|
+
export { Control as InternalAsyncDetailsControl };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "../../public/CollectionPage/index.js";
|
|
2
|
+
import "../../public/FormDialog/index.js";
|
|
3
|
+
import "../../public/Pagination/index.js";
|
|
4
|
+
import "../../public/I18n/index.js";
|
|
5
|
+
import "../InternalDetails/index.js";
|
|
6
|
+
import { InternalAsyncDetailsControl as Control } from "./InternalAsyncDetailsControl.js";
|
|
7
|
+
customElements.define('foxy-internal-async-details-control', Control);
|
|
8
|
+
export { Control as InternalAsyncDetailsControl };
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalAsyncDetailsControl/index.ts"],"names":[],"mappings":"AAAA,8CAA2C;AAC3C,0CAAuC;AACvC,0CAAuC;AACvC,oCAAiC;AAEjC,qCAAkC;AAElC,OAAO,EAAE,2BAA2B,IAAI,OAAO,EAAE,yCAAsC;AAEvF,cAAc,CAAC,MAAM,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;AAEtE,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,CAAC","sourcesContent":["import '../../public/CollectionPage/index';\nimport '../../public/FormDialog/index';\nimport '../../public/Pagination/index';\nimport '../../public/I18n/index';\n\nimport '../InternalDetails/index';\n\nimport { InternalAsyncDetailsControl as Control } from './InternalAsyncDetailsControl';\n\ncustomElements.define('foxy-internal-async-details-control', Control);\n\nexport { Control as InternalAsyncDetailsControl };\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { PropertyDeclarations, TemplateResult } from 'lit-element';
|
|
2
2
|
import { LitElement } from 'lit-element';
|
|
3
|
-
declare const
|
|
3
|
+
declare const InternalDetails_base: typeof LitElement & import("lit-element").Constructor<import("../../../mixins/inferrable").InferrableMixinHost> & {
|
|
4
4
|
inferredProperties: string[];
|
|
5
5
|
} & {
|
|
6
6
|
styles: import("lit-element").CSSResultArray;
|
|
@@ -9,9 +9,9 @@ declare const InternalDetailsControl_base: typeof LitElement & import("lit-eleme
|
|
|
9
9
|
* Internal details/summary control.
|
|
10
10
|
*
|
|
11
11
|
* @since 1.17.0
|
|
12
|
-
* @tag foxy-internal-details
|
|
12
|
+
* @tag foxy-internal-details
|
|
13
13
|
*/
|
|
14
|
-
export declare class
|
|
14
|
+
export declare class InternalDetails extends InternalDetails_base {
|
|
15
15
|
static get properties(): PropertyDeclarations;
|
|
16
16
|
/** i18n key for summary text. */
|
|
17
17
|
summary: string | null;
|
|
@@ -6,9 +6,9 @@ import { classMap } from "../../../utils/class-map.js";
|
|
|
6
6
|
* Internal details/summary control.
|
|
7
7
|
*
|
|
8
8
|
* @since 1.17.0
|
|
9
|
-
* @tag foxy-internal-details
|
|
9
|
+
* @tag foxy-internal-details
|
|
10
10
|
*/
|
|
11
|
-
export class
|
|
11
|
+
export class InternalDetails extends ThemeableMixin(InferrableMixin(LitElement)) {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
/** i18n key for summary text. */
|
|
@@ -68,4 +68,4 @@ export class InternalDetailsControl extends ThemeableMixin(InferrableMixin(LitEl
|
|
|
68
68
|
`;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
//# sourceMappingURL=
|
|
71
|
+
//# sourceMappingURL=InternalDetails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InternalDetails.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalDetails/InternalDetails.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,sCAAmC;AAC7D,OAAO,EAAE,cAAc,EAAE,qCAAkC;AAC3D,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AAEpD;;;;;GAKG;AACH,MAAM,OAAO,eAAgB,SAAQ,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAAhF;;QASE,iCAAiC;QACjC,YAAO,GAAkB,IAAI,CAAC;QAE9B,4CAA4C;QAC5C,SAAI,GAAG,KAAK,CAAC;IA6Cf,CAAC;IAzDC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACzB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SACxB,CAAC;IACJ,CAAC;IAQD,MAAM;;QACJ,OAAO,IAAI,CAAA;;;gBAGC,IAAI,CAAC,IAAI;kBACP,CAAC,GAAU,EAAE,EAAE;YACvB,IAAI,CAAC,IAAI,GAAI,GAAG,CAAC,aAAoC,CAAC,IAAI,CAAC;QAC7D,CAAC;;;kBAGS,QAAQ,CAAC;YACf,wEAAwE,EAAE,IAAI;YAC9E,sDAAsD,EAAE,IAAI;YAC5D,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI;SAC1B,CAAC;;;;;;;sBAOU,MAAA,IAAI,CAAC,OAAO,mCAAI,EAAE;;;;;;;;;mCASL,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;;;;;;;;;;KAUzD,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\n\nimport { html, LitElement } from 'lit-element';\nimport { InferrableMixin } from '../../../mixins/inferrable';\nimport { ThemeableMixin } from '../../../mixins/themeable';\nimport { classMap } from '../../../utils/class-map';\n\n/**\n * Internal details/summary control.\n *\n * @since 1.17.0\n * @tag foxy-internal-details\n */\nexport class InternalDetails extends ThemeableMixin(InferrableMixin(LitElement)) {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n summary: { type: String },\n open: { type: Boolean },\n };\n }\n\n /** i18n key for summary text. */\n summary: string | null = null;\n\n /** Same as `HTMLDetailsElement['open']`. */\n open = false;\n\n render(): TemplateResult {\n return html`\n <details\n class=\"w-full border border-contrast-10 rounded-t-l rounded-b-l\"\n ?open=${this.open}\n @toggle=${(evt: Event) => {\n this.open = (evt.currentTarget as HTMLDetailsElement).open;\n }}\n >\n <summary\n class=${classMap({\n 'focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50': true,\n 'transition-colors cursor-pointer hover-bg-contrast-5': true,\n 'rounded-t-l': true,\n 'rounded-b-l': !this.open,\n })}\n >\n <div class=\"flex items-center h-m pl-m pr-s\">\n <div class=\"flex items-center flex-1\">\n <foxy-i18n\n class=\"flex items-center text-xs tracking-wide uppercase font-bold text-body\"\n infer=\"\"\n key=${this.summary ?? ''}\n >\n </foxy-i18n>\n\n <slot name=\"actions\"></slot>\n </div>\n\n <iron-icon\n class=\"icon-inline text-xl text-body\"\n icon=\"icons:expand-${this.open ? 'less' : 'more'}\"\n >\n </iron-icon>\n </div>\n </summary>\n\n <div class=\"border-t border-contrast-10\">\n <slot></slot>\n </div>\n </details>\n `;\n }\n}\n"]}
|
|
@@ -2,5 +2,5 @@ import '@polymer/iron-icons';
|
|
|
2
2
|
import '@polymer/iron-icon';
|
|
3
3
|
import '../InternalControl/index';
|
|
4
4
|
import '../../public/I18n/index';
|
|
5
|
-
import {
|
|
6
|
-
export { Control as
|
|
5
|
+
import { InternalDetails as Control } from './InternalDetails';
|
|
6
|
+
export { Control as InternalDetails };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import '@polymer/iron-icons';
|
|
2
|
+
import '@polymer/iron-icon';
|
|
3
|
+
import "../InternalControl/index.js";
|
|
4
|
+
import "../../public/I18n/index.js";
|
|
5
|
+
import { InternalDetails as Control } from "./InternalDetails.js";
|
|
6
|
+
customElements.define('foxy-internal-details', Control);
|
|
7
|
+
export { Control as InternalDetails };
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalDetails/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,OAAO,oBAAoB,CAAC;AAE5B,qCAAkC;AAClC,oCAAiC;AAEjC,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,6BAA0B;AAE/D,cAAc,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;AAExD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC","sourcesContent":["import '@polymer/iron-icons';\nimport '@polymer/iron-icon';\n\nimport '../InternalControl/index';\nimport '../../public/I18n/index';\n\nimport { InternalDetails as Control } from './InternalDetails';\n\ncustomElements.define('foxy-internal-details', Control);\n\nexport { Control as InternalDetails };\n"]}
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import type { PropertyDeclarations, TemplateResult } from 'lit-element';
|
|
2
|
+
import type { Option } from './types';
|
|
2
3
|
import { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';
|
|
4
|
+
/**
|
|
5
|
+
* Internal control wrapper for `vaadin-radio-group` element.
|
|
6
|
+
*
|
|
7
|
+
* @since 1.17.0
|
|
8
|
+
* @tag foxy-internal-radio-group-control
|
|
9
|
+
*/
|
|
3
10
|
export declare class InternalRadioGroupControl extends InternalEditableControl {
|
|
4
11
|
static get properties(): PropertyDeclarations;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}[];
|
|
12
|
+
/** List of radio buttons to render. */
|
|
13
|
+
options: Option[];
|
|
14
|
+
/** Same as the "theme" attribute/property of `vaadin-radio-group`. */
|
|
9
15
|
theme: string | null;
|
|
10
16
|
renderControl(): TemplateResult;
|
|
11
17
|
}
|
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { InternalEditableControl } from "../InternalEditableControl/InternalEditableControl.js";
|
|
2
2
|
import { ifDefined } from 'lit-html/directives/if-defined';
|
|
3
3
|
import { html } from 'lit-html';
|
|
4
|
+
/**
|
|
5
|
+
* Internal control wrapper for `vaadin-radio-group` element.
|
|
6
|
+
*
|
|
7
|
+
* @since 1.17.0
|
|
8
|
+
* @tag foxy-internal-radio-group-control
|
|
9
|
+
*/
|
|
4
10
|
export class InternalRadioGroupControl extends InternalEditableControl {
|
|
5
11
|
constructor() {
|
|
6
12
|
super(...arguments);
|
|
13
|
+
/** List of radio buttons to render. */
|
|
7
14
|
this.options = [];
|
|
15
|
+
/** Same as the "theme" attribute/property of `vaadin-radio-group`. */
|
|
8
16
|
this.theme = null;
|
|
9
17
|
}
|
|
10
18
|
static get properties() {
|
|
@@ -25,7 +33,7 @@ export class InternalRadioGroupControl extends InternalEditableControl {
|
|
|
25
33
|
theme=${ifDefined((_a = this.theme) !== null && _a !== void 0 ? _a : undefined)}
|
|
26
34
|
?disabled=${this.disabled || this.readonly}
|
|
27
35
|
.checkValidity=${this._checkValidity}
|
|
28
|
-
.value=${
|
|
36
|
+
.value=${this._value}
|
|
29
37
|
@change=${(evt) => {
|
|
30
38
|
const field = evt.currentTarget;
|
|
31
39
|
this._value = field.value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InternalRadioGroupControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InternalRadioGroupControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,OAAO,yBAA0B,SAAQ,uBAAuB;IAAtE;;QASE,uCAAuC;QACvC,YAAO,GAAa,EAAE,CAAC;QAEvB,sEAAsE;QACtE,UAAK,GAAkB,IAAI,CAAC;IA4B9B,CAAC;IAxCC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACxB,CAAC;IACJ,CAAC;IAQD,aAAa;;QACX,OAAO,IAAI,CAAA;;wBAES,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;sBAC/B,IAAI,CAAC,UAAU;gBACrB,IAAI,CAAC,KAAK;;gBAEV,SAAS,OAAC,IAAI,CAAC,KAAK,mCAAI,SAAS,CAAC;oBAC9B,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;yBACzB,IAAI,CAAC,cAAc;iBAC3B,IAAI,CAAC,MAAuB;kBAC3B,CAAC,GAAgB,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,aAAkC,CAAC;YACrD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC5B,CAAC;;UAEC,IAAI,CAAC,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,EAAE,CAAC,IAAI,CAAA;yCACiB,MAAM,CAAC,KAAK;wCACb,MAAM,CAAC,KAAK;;WAEzC,CACF;;KAEJ,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { RadioGroupElement } from '@vaadin/vaadin-radio-button/vaadin-radio-group';\nimport type { Option } from './types';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\n/**\n * Internal control wrapper for `vaadin-radio-group` element.\n *\n * @since 1.17.0\n * @tag foxy-internal-radio-group-control\n */\nexport class InternalRadioGroupControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n options: { type: Array },\n theme: { type: String },\n };\n }\n\n /** List of radio buttons to render. */\n options: Option[] = [];\n\n /** Same as the \"theme\" attribute/property of `vaadin-radio-group`. */\n theme: string | null = null;\n\n renderControl(): TemplateResult {\n return html`\n <vaadin-radio-group\n error-message=${ifDefined(this._errorMessage)}\n helper-text=${this.helperText}\n label=${this.label}\n class=\"w-full\"\n theme=${ifDefined(this.theme ?? undefined)}\n ?disabled=${this.disabled || this.readonly}\n .checkValidity=${this._checkValidity}\n .value=${this._value as string | null}\n @change=${(evt: CustomEvent) => {\n const field = evt.currentTarget as RadioGroupElement;\n this._value = field.value;\n }}\n >\n ${this.options.map(\n option => html`\n <vaadin-radio-button value=${option.value}>\n <foxy-i18n infer=\"\" key=${option.label}></foxy-i18n>\n </vaadin-radio-button>\n `\n )}\n </vaadin-radio-group>\n `;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalRadioGroupControl/types.ts"],"names":[],"mappings":"","sourcesContent":["export type Option = {\n /** I18n label key for the radio button. */\n label: string;\n /** Radio button value. */\n value: string;\n};\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PropertyDeclarations, TemplateResult } from 'lit-element';
|
|
2
|
+
import type { Data } from './types';
|
|
3
|
+
import { NucleonElement } from '../NucleonElement/NucleonElement';
|
|
4
|
+
declare const Base: typeof NucleonElement & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
|
|
5
|
+
defaultNS: string;
|
|
6
|
+
} & {
|
|
7
|
+
styles: import("lit-element").CSSResultArray;
|
|
8
|
+
};
|
|
9
|
+
export declare class ApiBrowser extends Base<Data> {
|
|
10
|
+
static get properties(): PropertyDeclarations;
|
|
11
|
+
home: string | null;
|
|
12
|
+
private __history;
|
|
13
|
+
private __renderItem;
|
|
14
|
+
private __handleExistingResourceFetch;
|
|
15
|
+
render(): TemplateResult;
|
|
16
|
+
private get __canGoBack();
|
|
17
|
+
private get __canGoHome();
|
|
18
|
+
private get __mode();
|
|
19
|
+
private set __mode(value);
|
|
20
|
+
private __goBack;
|
|
21
|
+
private __goHome;
|
|
22
|
+
}
|
|
23
|
+
export {};
|