@paperless/core 2.0.1-beta.31 → 2.0.1-beta.33
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/CHANGELOG.md +23 -0
- package/dist/build/{p-850c70f0.js → p-2c6f3984.js} +1 -1
- package/dist/build/p-4a10de20.entry.js +2 -0
- package/dist/build/p-4a10de20.entry.js.map +1 -0
- package/dist/build/p-5c2b9a8d.entry.js +2 -0
- package/dist/{paperless/p-c066c38b.entry.js.map → build/p-5c2b9a8d.entry.js.map} +1 -1
- package/dist/build/p-e77d5ca1.entry.js +2 -0
- package/dist/build/p-e77d5ca1.entry.js.map +1 -0
- package/dist/build/paperless.esm.js +1 -1
- package/dist/build/paperless.esm.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/p-checkbox_3.cjs.entry.js +7 -17
- package/dist/cjs/p-checkbox_3.cjs.entry.js.map +1 -1
- package/dist/cjs/p-field_2.cjs.entry.js +49 -10
- package/dist/cjs/p-field_2.cjs.entry.js.map +1 -1
- package/dist/cjs/p-toggle.cjs.entry.js +8 -18
- package/dist/cjs/p-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/paperless.cjs.js +1 -1
- package/dist/collection/components/atoms/checkbox/checkbox.component.css +1 -1
- package/dist/collection/components/atoms/checkbox/checkbox.component.js +6 -16
- package/dist/collection/components/atoms/checkbox/checkbox.component.js.map +1 -1
- package/dist/collection/components/atoms/toggle/toggle.component.css +1 -1
- package/dist/collection/components/atoms/toggle/toggle.component.js +7 -17
- package/dist/collection/components/atoms/toggle/toggle.component.js.map +1 -1
- package/dist/collection/components/molecules/field/field.component.css +1 -1
- package/dist/collection/components/molecules/field/field.component.js +75 -18
- package/dist/collection/components/molecules/field/field.component.js.map +1 -1
- package/dist/collection/components/molecules/field-container/field-container.component.js +22 -1
- package/dist/collection/components/molecules/field-container/field-container.component.js.map +1 -1
- package/dist/components/checkbox.component.js +7 -17
- package/dist/components/checkbox.component.js.map +1 -1
- package/dist/components/field-container.component.js +4 -1
- package/dist/components/field-container.component.js.map +1 -1
- package/dist/components/field.component.js +47 -9
- package/dist/components/field.component.js.map +1 -1
- package/dist/components/p-toggle.js +8 -18
- package/dist/components/p-toggle.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/p-checkbox_3.entry.js +7 -17
- package/dist/esm/p-checkbox_3.entry.js.map +1 -1
- package/dist/esm/p-field_2.entry.js +49 -10
- package/dist/esm/p-field_2.entry.js.map +1 -1
- package/dist/esm/p-toggle.entry.js +8 -18
- package/dist/esm/p-toggle.entry.js.map +1 -1
- package/dist/esm/paperless.js +1 -1
- package/dist/index.html +1 -1
- package/dist/paperless/p-4a10de20.entry.js +2 -0
- package/dist/paperless/p-4a10de20.entry.js.map +1 -0
- package/dist/paperless/p-5c2b9a8d.entry.js +2 -0
- package/dist/{build/p-c066c38b.entry.js.map → paperless/p-5c2b9a8d.entry.js.map} +1 -1
- package/dist/paperless/p-e77d5ca1.entry.js +2 -0
- package/dist/paperless/p-e77d5ca1.entry.js.map +1 -0
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/paperless/paperless.esm.js.map +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/types/components/molecules/field/field.component.d.ts +15 -11
- package/dist/types/components/molecules/field-container/field-container.component.d.ts +4 -0
- package/dist/types/components.d.ts +36 -20
- package/hydrate/index.js +66 -45
- package/hydrate/index.mjs +66 -45
- package/package.json +1 -1
- package/dist/build/p-3f0837c4.entry.js +0 -2
- package/dist/build/p-3f0837c4.entry.js.map +0 -1
- package/dist/build/p-52056fb3.entry.js +0 -2
- package/dist/build/p-52056fb3.entry.js.map +0 -1
- package/dist/build/p-c066c38b.entry.js +0 -2
- package/dist/paperless/p-3f0837c4.entry.js +0 -2
- package/dist/paperless/p-3f0837c4.entry.js.map +0 -1
- package/dist/paperless/p-52056fb3.entry.js +0 -2
- package/dist/paperless/p-52056fb3.entry.js.map +0 -1
- package/dist/paperless/p-c066c38b.entry.js +0 -2
|
@@ -3,6 +3,7 @@ import { formatTranslation, getLocaleComponentStrings } from "../../../utils";
|
|
|
3
3
|
export class FieldContainer {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.label = undefined;
|
|
6
|
+
this.variant = undefined;
|
|
6
7
|
this.helper = undefined;
|
|
7
8
|
this.required = undefined;
|
|
8
9
|
this.error = undefined;
|
|
@@ -22,7 +23,8 @@ export class FieldContainer {
|
|
|
22
23
|
}
|
|
23
24
|
render() {
|
|
24
25
|
const { hasHeaderSlot, hasErrorSlot, helper, label, errorAndErrorIsNotBoolean, } = this._getSlotInfo();
|
|
25
|
-
|
|
26
|
+
const contentSlot = (h("slot", { key: 'a7e3919d645cc21fa538340b0c9ea7a98e66ca90', name: 'content', slot: 'trigger' }));
|
|
27
|
+
return (h(Host, { key: '44a79d2058aafb4d9bf89f09cb3e7a1a708d99f9', class: 'p-field-container' }, h("div", { key: '47af2893a5f27a1a905c846a016c183756d026f8', class: 'flex w-inherit flex-col gap-1' }, h("div", { key: 'cd64bc812c19e11d35ea4eb1756f9885a1f2a148', class: 'flex items-end justify-between gap-1' }, label && (h("div", { key: '962aecba76c4ba9326ed992d6ad39c1efbdab8ab', class: 'text-xs font-medium text-black-teal-300', onClick: () => this.focus.emit() }, label)), (!this.required || helper || hasHeaderSlot) && (h("div", { key: 'd0cdd8810de8098eaca90d2aeddd1f01fbcd0faf', class: 'flex items-center gap-1' }, !this.required && this.variant === 'write' && (h("span", { key: 'e83d37fcb0050bad328d0aa2d6890c1226fe17fb', class: 'text-xs font-medium text-black-teal-200' }, this.optionalTemplate())), (helper || hasHeaderSlot) && (h(Fragment, { key: 'c156ee1c951fec9dbe602cf317ff7591a6bce9bf' }, hasHeaderSlot && h("slot", { key: 'e568644b05673354c9059042b0ba40f137d1709c', name: 'header' }), helper && (h("p-helper", { key: '7dcbdd61deb2eba74abf8f57b245b011fbf9066b', class: `flex ${hasHeaderSlot ? 'ml-2' : ''}`, placement: 'top-end' }, helper))))))), h("p-tooltip", { key: '41588daf8a794d9d16d32bcd841f5f4cbe64349a', class: 'w-full', variant: 'error', content: this.error, show: errorAndErrorIsNotBoolean && this.forceShowTooltip, enableUserInput: false, placement: this.errorPlacement }, hasErrorSlot && (h("slot", { key: 'a61dd91094db6ac2b016ee79320cffd887976e12', name: 'error', slot: 'content' })), contentSlot))));
|
|
26
28
|
}
|
|
27
29
|
async _setLocales() {
|
|
28
30
|
this._locales = await getLocaleComponentStrings(this._el);
|
|
@@ -84,6 +86,25 @@ export class FieldContainer {
|
|
|
84
86
|
"attribute": "label",
|
|
85
87
|
"reflect": false
|
|
86
88
|
},
|
|
89
|
+
"variant": {
|
|
90
|
+
"type": "string",
|
|
91
|
+
"mutable": false,
|
|
92
|
+
"complexType": {
|
|
93
|
+
"original": "'read' | 'write'",
|
|
94
|
+
"resolved": "\"read\" | \"write\"",
|
|
95
|
+
"references": {}
|
|
96
|
+
},
|
|
97
|
+
"required": false,
|
|
98
|
+
"optional": false,
|
|
99
|
+
"docs": {
|
|
100
|
+
"tags": [],
|
|
101
|
+
"text": "The variant of the field container"
|
|
102
|
+
},
|
|
103
|
+
"getter": false,
|
|
104
|
+
"setter": false,
|
|
105
|
+
"attribute": "variant",
|
|
106
|
+
"reflect": false
|
|
107
|
+
},
|
|
87
108
|
"helper": {
|
|
88
109
|
"type": "string",
|
|
89
110
|
"mutable": false,
|
package/dist/collection/components/molecules/field-container/field-container.component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-container.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/field-container/field-container.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,SAAS,EACT,OAAO,EAEP,CAAC,EACD,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,MAAM,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAU9E,MAAM,OAAO,cAAc
|
|
1
|
+
{"version":3,"file":"field-container.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/field-container/field-container.component.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n\tComponent,\n\tElement,\n\tEventEmitter,\n\th,\n\tHost,\n\tEvent,\n\tProp,\n\tFragment,\n\tState,\n\tListen,\n} from '@stencil/core';\nimport { formatTranslation, getLocaleComponentStrings } from '../../../utils';\nimport { Placement } from '@floating-ui/dom';\n\nexport type templateFunc = () => string;\n\n@Component({\n\ttag: 'p-field-container',\n\tstyleUrl: 'field-container.component.css',\n\tshadow: true,\n})\nexport class FieldContainer {\n\tprivate _defaultOptionalTemplate: templateFunc = () =>\n\t\tformatTranslation(this._locales.optional);\n\n\t/**\n\t * The label of the input group\n\t */\n\t@Prop() label: string | HTMLSlotElement;\n\n\t/**\n\t * The variant of the field container\n\t */\n\t@Prop() variant: 'read' | 'write';\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop() helper: string | HTMLSlotElement;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop({ reflect: true }) error: string | HTMLSlotElement;\n\n\t/**\n\t * The placement of the error popover\n\t */\n\t@Prop() errorPlacement: Placement;\n\n\t/**\n\t * Force show the error tooltip\n\t */\n\t@Prop({ reflect: true }) forceShowTooltip: boolean = false;\n\n\t/**\n\t * The template for the optional text\n\t */\n\t@Prop() optionalTemplate: templateFunc = this._defaultOptionalTemplate;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@Event() focus: EventEmitter<void>;\n\n\t/**\n\t * Locales used for this component\n\t */\n\t@State() private _locales: any = {};\n\n\tcomponentWillLoad() {\n\t\tthis._setLocales();\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\thasHeaderSlot,\n\t\t\thasErrorSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t} = this._getSlotInfo();\n\n\t\tconst contentSlot = (\n\t\t\t<slot\n\t\t\t\tname='content'\n\t\t\t\tslot='trigger'\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<Host class='p-field-container'>\n\t\t\t\t<div class='flex w-inherit flex-col gap-1'>\n\t\t\t\t\t<div class='flex items-end justify-between gap-1'>\n\t\t\t\t\t\t{label && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass='text-xs font-medium text-black-teal-300'\n\t\t\t\t\t\t\t\tonClick={() => this.focus.emit()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{(!this.required || helper || hasHeaderSlot) && (\n\t\t\t\t\t\t\t<div class='flex items-center gap-1'>\n\t\t\t\t\t\t\t\t{!this.required && this.variant === 'write' && (\n\t\t\t\t\t\t\t\t\t<span class='text-xs font-medium text-black-teal-200'>\n\t\t\t\t\t\t\t\t\t\t{this.optionalTemplate()}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{(helper || hasHeaderSlot) && (\n\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t{hasHeaderSlot && <slot name='header' />}\n\t\t\t\t\t\t\t\t\t\t{helper && (\n\t\t\t\t\t\t\t\t\t\t\t<p-helper\n\t\t\t\t\t\t\t\t\t\t\t\tclass={`flex ${hasHeaderSlot ? 'ml-2' : ''}`}\n\t\t\t\t\t\t\t\t\t\t\t\tplacement='top-end'\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{helper}\n\t\t\t\t\t\t\t\t\t\t\t</p-helper>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\tclass='w-full'\n\t\t\t\t\t\tvariant='error'\n\t\t\t\t\t\tcontent={this.error}\n\t\t\t\t\t\tshow={errorAndErrorIsNotBoolean && this.forceShowTooltip}\n\t\t\t\t\t\tenableUserInput={false}\n\t\t\t\t\t\tplacement={this.errorPlacement}\n\t\t\t\t\t>\n\t\t\t\t\t\t{hasErrorSlot && (\n\t\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\t\tname='error'\n\t\t\t\t\t\t\t\tslot='content'\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{contentSlot}\n\t\t\t\t\t</p-tooltip>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('localeChanged', { target: 'body' })\n\tprivate async _setLocales(): Promise<void> {\n\t\tthis._locales = await getLocaleComponentStrings(this._el);\n\t}\n\n\tprivate _getSlotInfo() {\n\t\tconst hasHelperSlot = !!this._el.querySelector(':scope > [slot=\"helper\"]');\n\t\tconst hasLabelSlot = !!this._el.querySelector(':scope > [slot=\"label\"]');\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\t\tconst hasErrorSlot = !!this._el.querySelector(':scope > [slot=\"error\"]');\n\n\t\tconst helper = hasHelperSlot ? <slot name='helper' /> : this.helper;\n\t\tconst label = hasLabelSlot ? <slot name='label' /> : this.label;\n\n\t\tconst errorAndErrorIsNotBoolean =\n\t\t\thasErrorSlot ||\n\t\t\t(this.error && typeof this.error === 'string' && this.error !== 'true');\n\n\t\treturn {\n\t\t\thasHelperSlot,\n\t\t\thasLabelSlot,\n\t\t\thasHeaderSlot,\n\t\t\thasErrorSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t};\n\t}\n}\n"]}
|
|
@@ -3,7 +3,7 @@ import { c as cva } from './index2.js';
|
|
|
3
3
|
import { n as nonce } from './nonce.js';
|
|
4
4
|
import { d as defineCustomElement$1 } from './icon.component.js';
|
|
5
5
|
|
|
6
|
-
const checkboxComponentCss = "*{box-sizing:border-box}.pointer-events-none{pointer-events:none!important}.static{position:static!important}.absolute{position:absolute!important}.relative{position:relative!important}.left-1\\/2{left:50%!important}.top-1\\/2{top:50%!important}.m-0{margin:0!important}.flex{display:flex!important}.hidden{display:none!important}.h-4{height:1rem!important}.h-6{height:1.5rem!important}.w-4{width:1rem!important}.w-6{width:1.5rem!important}.flex-shrink-0{flex-shrink:0!important}.-translate-x-1\\/2{--tw-translate-x:-50%!important}.-translate-x-1\\/2,.-translate-y-1\\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-translate-y-1\\/2{--tw-translate-y:-50%!important}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-pointer{cursor:pointer!important}.appearance-none{appearance:none!important}.items-center{align-items:center!important}.justify-start{justify-content:flex-start!important}.gap-2{gap:.5rem!important}.rounded{border-radius:.25rem!important}.rounded-lg{border-radius:.5rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-black-teal-100{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.border-black-teal-50{--tw-border-opacity:1!important;border-color:rgb(230 234 233/var(--tw-border-opacity,1))!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.bg-white,.bg-white-600{--tw-bg-opacity:1!important}.bg-white-600{background-color:rgb(250 250 250/var(--tw-bg-opacity,1))!important}.text-black-teal{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}.text-black-teal-200{--tw-text-opacity:1!important;color:rgb(154 170 167/var(--tw-text-opacity,1))!important}.text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.shadow-1{--tw-shadow:0 1px 1px rgba(0,2,2,.08)!important;--tw-shadow-colored:0 1px 1px var(--tw-shadow-color)!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.outline-none{outline:2px solid transparent!important;outline-offset:2px!important}.drop-shadow-black-teal-10\\%{--tw-drop-shadow:drop-shadow(0px 1px 0px rgba(3,42,36,.1))!important;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.checked\\:border-black-teal\\/20:checked{border-color:rgba(3,42,36,.2)!important}.checked\\:bg-supportive-lilac:checked{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.checked\\:ring-2:checked{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.checked\\:ring-supportive-lilac-100:checked{--tw-ring-opacity:1!important;--tw-ring-color:rgb(246 239 255/var(--tw-ring-opacity,1))!important}.indeterminate\\:border-black-teal\\/20:indeterminate{border-color:rgba(3,42,36,.2)!important}.indeterminate\\:bg-supportive-lilac:indeterminate{--tw-bg-opacity:1!important;background-color:rgb(
|
|
6
|
+
const checkboxComponentCss = "*{box-sizing:border-box}.pointer-events-none{pointer-events:none!important}.static{position:static!important}.absolute{position:absolute!important}.relative{position:relative!important}.left-1\\/2{left:50%!important}.top-1\\/2{top:50%!important}.m-0{margin:0!important}.flex{display:flex!important}.hidden{display:none!important}.h-4{height:1rem!important}.h-6{height:1.5rem!important}.w-4{width:1rem!important}.w-6{width:1.5rem!important}.flex-shrink-0{flex-shrink:0!important}.-translate-x-1\\/2{--tw-translate-x:-50%!important}.-translate-x-1\\/2,.-translate-y-1\\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-translate-y-1\\/2{--tw-translate-y:-50%!important}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-pointer{cursor:pointer!important}.appearance-none{appearance:none!important}.items-center{align-items:center!important}.justify-start{justify-content:flex-start!important}.gap-2{gap:.5rem!important}.rounded{border-radius:.25rem!important}.rounded-lg{border-radius:.5rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-black-teal-100{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.border-black-teal-50{--tw-border-opacity:1!important;border-color:rgb(230 234 233/var(--tw-border-opacity,1))!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.bg-white,.bg-white-600{--tw-bg-opacity:1!important}.bg-white-600{background-color:rgb(250 250 250/var(--tw-bg-opacity,1))!important}.text-black-teal{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}.text-black-teal-200{--tw-text-opacity:1!important;color:rgb(154 170 167/var(--tw-text-opacity,1))!important}.text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.shadow-1{--tw-shadow:0 1px 1px rgba(0,2,2,.08)!important;--tw-shadow-colored:0 1px 1px var(--tw-shadow-color)!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.outline-none{outline:2px solid transparent!important;outline-offset:2px!important}.drop-shadow-black-teal-10\\%{--tw-drop-shadow:drop-shadow(0px 1px 0px rgba(3,42,36,.1))!important;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.checked\\:border-black-teal\\/20:checked{border-color:rgba(3,42,36,.2)!important}.checked\\:bg-supportive-lilac:checked{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.checked\\:ring-2:checked{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.checked\\:ring-supportive-lilac-100:checked{--tw-ring-opacity:1!important;--tw-ring-color:rgb(246 239 255/var(--tw-ring-opacity,1))!important}.indeterminate\\:border-black-teal\\/20:indeterminate{border-color:rgba(3,42,36,.2)!important}.indeterminate\\:bg-supportive-lilac-700:indeterminate{--tw-bg-opacity:1!important;background-color:rgb(200 159 255/var(--tw-bg-opacity,1))!important}.indeterminate\\:ring-2:indeterminate{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.indeterminate\\:ring-supportive-lilac-100:indeterminate{--tw-ring-opacity:1!important;--tw-ring-color:rgb(246 239 255/var(--tw-ring-opacity,1))!important}.hover\\:border-black-teal-100:hover{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.hover\\:bg-supportive-lilac-100:hover{--tw-bg-opacity:1!important;background-color:rgb(246 239 255/var(--tw-bg-opacity,1))!important}.checked\\:hover\\:border-black-teal\\/20:hover:checked{border-color:rgba(3,42,36,.2)!important}.checked\\:hover\\:bg-supportive-lilac-700:hover:checked{--tw-bg-opacity:1!important;background-color:rgb(200 159 255/var(--tw-bg-opacity,1))!important}.indeterminate\\:hover\\:border-black-teal\\/20:hover:indeterminate{border-color:rgba(3,42,36,.2)!important}.indeterminate\\:hover\\:bg-supportive-lilac:hover:indeterminate{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.peer:checked~.peer-checked\\:flex{display:flex!important}.peer:indeterminate~.peer-indeterminate\\:flex{display:flex!important}";
|
|
7
7
|
const PCheckboxStyle0 = checkboxComponentCss;
|
|
8
8
|
|
|
9
9
|
const checkbox = cva([
|
|
@@ -19,27 +19,17 @@ const checkbox = cva([
|
|
|
19
19
|
false: [
|
|
20
20
|
'cursor-pointer shadow-1',
|
|
21
21
|
'bg-white border-black-teal-100',
|
|
22
|
-
'hover:bg-
|
|
22
|
+
'hover:bg-supportive-lilac-100 hover:border-black-teal-100',
|
|
23
23
|
'checked:bg-supportive-lilac checked:border-black-teal/20',
|
|
24
24
|
'checked:ring-2 checked:ring-supportive-lilac-100',
|
|
25
|
-
'checked:hover:bg-supportive-lilac checked:hover:border-black-teal/20',
|
|
26
|
-
'indeterminate:bg-supportive-lilac indeterminate:border-black-teal/20',
|
|
25
|
+
'checked:hover:bg-supportive-lilac-700 checked:hover:border-black-teal/20',
|
|
26
|
+
'indeterminate:bg-supportive-lilac-700 indeterminate:border-black-teal/20',
|
|
27
27
|
'indeterminate:ring-2 indeterminate:ring-supportive-lilac-100',
|
|
28
28
|
'indeterminate:hover:bg-supportive-lilac indeterminate:hover:border-black-teal/20',
|
|
29
29
|
],
|
|
30
30
|
true: 'bg-white-600 border-black-teal-50 cursor-not-allowed ',
|
|
31
31
|
},
|
|
32
32
|
},
|
|
33
|
-
compoundVariants: [
|
|
34
|
-
{
|
|
35
|
-
disabled: false,
|
|
36
|
-
class: [
|
|
37
|
-
'cursor-pointer shadow-1',
|
|
38
|
-
'bg-white border-black-teal-100',
|
|
39
|
-
'hover:bg-supportive-lilac-100 hover:border-black-teal-100',
|
|
40
|
-
],
|
|
41
|
-
},
|
|
42
|
-
],
|
|
43
33
|
});
|
|
44
34
|
const icon = cva([
|
|
45
35
|
'hidden peer-indeterminate:flex peer-checked:flex',
|
|
@@ -76,12 +66,12 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
|
|
|
76
66
|
*/
|
|
77
67
|
indeterminateChange;
|
|
78
68
|
render() {
|
|
79
|
-
return (h(Host, { key: '
|
|
69
|
+
return (h(Host, { key: 'e2efce30f2d5a1f955c2a8ddefb2b229eca1cfd5', class: 'p-checkbox' }, h("label", { key: 'd26d81c88cb2f2a941cd9539e8060fbf60aa634f', htmlFor: this.id ?? this._nonce, class: 'flex items-center justify-start gap-2 text-black-teal' }, h("div", { key: 'd59c67ca2cbccdd8c91f860f5aa7561f34f79120', class: 'relative flex flex-shrink-0 items-center' }, h("input", { key: '6a8317350b7f60e3fdb7665d7d68d3f1a2ce9868', class: checkbox({
|
|
80
70
|
size: this.size,
|
|
81
71
|
disabled: this.disabled,
|
|
82
|
-
}), type: 'checkbox', id: this.id ?? this._nonce, name: this.name, required: this.required, checked: !!this.checked, indeterminate: this.indeterminate, disabled: this.disabled, onChange: ev => this._onChange(ev) }), h("div", { key: '
|
|
72
|
+
}), type: 'checkbox', id: this.id ?? this._nonce, name: this.name, required: this.required, checked: !!this.checked, indeterminate: this.indeterminate, disabled: this.disabled, onChange: ev => this._onChange(ev) }), h("div", { key: 'b9010adaa74914c00b8018566b0c31808cc63b33', class: icon({
|
|
83
73
|
disabled: this.disabled,
|
|
84
|
-
}) }, h("p-icon", { key: '
|
|
74
|
+
}) }, h("p-icon", { key: '3d760b5e7ee1b76b79dae46beff4094dc00fe8b0', size: this.size, class: 'drop-shadow-black-teal-10%', variant: !!this.indeterminate ? 'minus' : 'checkmark' }))), h("slot", { key: '17f8e47facc7b631494534b68986eebe5aa96fa0' }))));
|
|
85
75
|
}
|
|
86
76
|
_onChange(ev) {
|
|
87
77
|
if (this.disabled) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"checkbox.component.js","mappings":";;;;;AAAA,MAAM,oBAAoB,GAAG,
|
|
1
|
+
{"file":"checkbox.component.js","mappings":";;;;;AAAA,MAAM,oBAAoB,GAAG,0lKAA0lK,CAAC;AACxnK,wBAAe,oBAAoB;;ACWnC,MAAM,QAAQ,GAAG,GAAG,CACnB;IACC,qDAAqD;IACrD,mCAAmC;CACnC,EACD;IACC,QAAQ,EAAE;QACT,IAAI,EAAE;YACL,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,oBAAoB;SAC1B;QACD,QAAQ,EAAE;YACT,KAAK,EAAE;gBACN,yBAAyB;gBACzB,gCAAgC;gBAChC,2DAA2D;gBAC3D,0DAA0D;gBAC1D,kDAAkD;gBAClD,0EAA0E;gBAC1E,0EAA0E;gBAC1E,8DAA8D;gBAC9D,kFAAkF;aAClF;YACD,IAAI,EAAE,uDAAuD;SAC7D;KACD;CACD,CACD,CAAC;AAEF,MAAM,IAAI,GAAG,GAAG,CACf;IACC,kDAAkD;IAClD,2FAA2F;CAC3F,EACD;IACC,QAAQ,EAAE;QACT,QAAQ,EAAE;YACT,KAAK,EAAE,YAAY;YACnB,IAAI,EAAE,qBAAqB;SAC3B;KACD;CACD,CACD,CAAC;MAMW,QAAQ;;;;;;;;oBAcU,MAAM;wBAKS,KAAK;wBAKL,IAAI;;;sBAqBvB,KAAK,CAAC,CAAC,CAAC;;;;;IANzB,aAAa,CAAwB;;;;IAIrC,mBAAmB,CAAwB;IAIpD,MAAM;QACL,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,YAAY,IACvB,8DACC,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,EAC/B,KAAK,EAAC,uDAAuD,IAE7D,4DAAK,KAAK,EAAC,0CAA0C,IACpD,8DACC,KAAK,EAAE,QAAQ,CAAC;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACvB,CAAC,EACF,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,EAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EACvB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,GACjC,EACF,4DACC,KAAK,EAAE,IAAI,CAAC;gBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACvB,CAAC,IAEF,+DACC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,OAAO,GAAG,WAAW,GACpD,CACG,CACD,EACN,8DAAa,CACN,CACF,EACN;KACF;IAEO,SAAS,CAAC,EAAS;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,EAAE,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;SACP;QAED,MAAM,OAAO,GAAI,EAAE,CAAC,MAA2B,CAAC,OAAO,CAAC;QACxD,MAAM,aAAa,GAAI,EAAE,CAAC,MAA2B,CAAC,aAAa,CAAC;QAEpE,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE;YAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACjC;QAED,IAAI,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE;YACxC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;YACnC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC7C;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/atoms/checkbox/checkbox.component.css?tag=p-checkbox","src/components/atoms/checkbox/checkbox.component.tsx"],"sourcesContent":["","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\tHost,\n\tProp,\n\tState,\n\th,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { nonce } from '../../../utils/nonce';\n\nconst checkbox = cva(\n\t[\n\t\t'peer appearance-none m-0 outline-none flex-shrink-0',\n\t\t'border border-inset border-solid ',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\tsm: 'rounded w-4 h-4',\n\t\t\t\tbase: 'rounded-lg w-6 h-6',\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tfalse: [\n\t\t\t\t\t'cursor-pointer shadow-1',\n\t\t\t\t\t'bg-white border-black-teal-100',\n\t\t\t\t\t'hover:bg-supportive-lilac-100 hover:border-black-teal-100',\n\t\t\t\t\t'checked:bg-supportive-lilac checked:border-black-teal/20',\n\t\t\t\t\t'checked:ring-2 checked:ring-supportive-lilac-100',\n\t\t\t\t\t'checked:hover:bg-supportive-lilac-700 checked:hover:border-black-teal/20',\n\t\t\t\t\t'indeterminate:bg-supportive-lilac-700 indeterminate:border-black-teal/20',\n\t\t\t\t\t'indeterminate:ring-2 indeterminate:ring-supportive-lilac-100',\n\t\t\t\t\t'indeterminate:hover:bg-supportive-lilac indeterminate:hover:border-black-teal/20',\n\t\t\t\t],\n\t\t\t\ttrue: 'bg-white-600 border-black-teal-50 cursor-not-allowed ',\n\t\t\t},\n\t\t},\n\t}\n);\n\nconst icon = cva(\n\t[\n\t\t'hidden peer-indeterminate:flex peer-checked:flex',\n\t\t'absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 pointer-events-none',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tdisabled: {\n\t\t\t\tfalse: 'text-white',\n\t\t\t\ttrue: 'text-black-teal-200',\n\t\t\t},\n\t\t},\n\t}\n);\n\n@Component({\n\ttag: 'p-checkbox',\n\tstyleUrl: 'checkbox.component.css',\n})\nexport class Checkbox {\n\t/**\n\t * Wether the checkbox is checked\n\t */\n\t@Prop() checked: boolean;\n\n\t/**\n\t * Wether the checkbox is in indeterminate state\n\t */\n\t@Prop() indeterminate: boolean;\n\n\t/**\n\t * The size of the checkbox\n\t */\n\t@Prop() size: 'sm' | 'base' = 'base';\n\n\t/**\n\t * Wether the checkbox is disabled\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether the checkbox is required\n\t */\n\t@Prop({ reflect: true }) required: boolean = true;\n\n\t/**\n\t * The id of the checkbox button\n\t */\n\t@Prop({ reflect: true }) id: string;\n\n\t/**\n\t * The name of the checkbox button\n\t */\n\t@Prop({ reflect: true }) name: string;\n\n\t/**\n\t * Event whenever the checked changes\n\t */\n\t@Event() checkedChange: EventEmitter<boolean>;\n\t/**\n\t * Event whenever the indeterminate changes\n\t */\n\t@Event() indeterminateChange: EventEmitter<boolean>;\n\n\t@State() private _nonce = nonce(5);\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class='p-checkbox'>\n\t\t\t\t<label\n\t\t\t\t\thtmlFor={this.id ?? this._nonce}\n\t\t\t\t\tclass='flex items-center justify-start gap-2 text-black-teal'\n\t\t\t\t>\n\t\t\t\t\t<div class='relative flex flex-shrink-0 items-center'>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tclass={checkbox({\n\t\t\t\t\t\t\t\tsize: this.size,\n\t\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\ttype='checkbox'\n\t\t\t\t\t\t\tid={this.id ?? this._nonce}\n\t\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\t\tchecked={!!this.checked}\n\t\t\t\t\t\t\tindeterminate={this.indeterminate}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tonChange={ev => this._onChange(ev)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass={icon({\n\t\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\t\t\tclass='drop-shadow-black-teal-10%'\n\t\t\t\t\t\t\t\tvariant={!!this.indeterminate ? 'minus' : 'checkmark'}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</label>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _onChange(ev: Event) {\n\t\tif (this.disabled) {\n\t\t\tev.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tconst checked = (ev.target as HTMLInputElement).checked;\n\t\tconst indeterminate = (ev.target as HTMLInputElement).indeterminate;\n\n\t\tif (checked != this.checked) {\n\t\t\tthis.checked = checked;\n\t\t\tthis.checkedChange.emit(checked);\n\t\t}\n\n\t\tif (indeterminate != this.indeterminate) {\n\t\t\tthis.indeterminate = indeterminate;\n\t\t\tthis.indeterminateChange.emit(indeterminate);\n\t\t}\n\t}\n}\n"],"version":3}
|
|
@@ -14,6 +14,7 @@ const FieldContainer = /*@__PURE__*/ proxyCustomElement(class FieldContainer ext
|
|
|
14
14
|
this.__attachShadow();
|
|
15
15
|
this.focus = createEvent(this, "focus", 7);
|
|
16
16
|
this.label = undefined;
|
|
17
|
+
this.variant = undefined;
|
|
17
18
|
this.helper = undefined;
|
|
18
19
|
this.required = undefined;
|
|
19
20
|
this.error = undefined;
|
|
@@ -30,7 +31,8 @@ const FieldContainer = /*@__PURE__*/ proxyCustomElement(class FieldContainer ext
|
|
|
30
31
|
}
|
|
31
32
|
render() {
|
|
32
33
|
const { hasHeaderSlot, hasErrorSlot, helper, label, errorAndErrorIsNotBoolean, } = this._getSlotInfo();
|
|
33
|
-
|
|
34
|
+
const contentSlot = (h("slot", { key: 'a7e3919d645cc21fa538340b0c9ea7a98e66ca90', name: 'content', slot: 'trigger' }));
|
|
35
|
+
return (h(Host, { key: '44a79d2058aafb4d9bf89f09cb3e7a1a708d99f9', class: 'p-field-container' }, h("div", { key: '47af2893a5f27a1a905c846a016c183756d026f8', class: 'flex w-inherit flex-col gap-1' }, h("div", { key: 'cd64bc812c19e11d35ea4eb1756f9885a1f2a148', class: 'flex items-end justify-between gap-1' }, label && (h("div", { key: '962aecba76c4ba9326ed992d6ad39c1efbdab8ab', class: 'text-xs font-medium text-black-teal-300', onClick: () => this.focus.emit() }, label)), (!this.required || helper || hasHeaderSlot) && (h("div", { key: 'd0cdd8810de8098eaca90d2aeddd1f01fbcd0faf', class: 'flex items-center gap-1' }, !this.required && this.variant === 'write' && (h("span", { key: 'e83d37fcb0050bad328d0aa2d6890c1226fe17fb', class: 'text-xs font-medium text-black-teal-200' }, this.optionalTemplate())), (helper || hasHeaderSlot) && (h(Fragment, { key: 'c156ee1c951fec9dbe602cf317ff7591a6bce9bf' }, hasHeaderSlot && h("slot", { key: 'e568644b05673354c9059042b0ba40f137d1709c', name: 'header' }), helper && (h("p-helper", { key: '7dcbdd61deb2eba74abf8f57b245b011fbf9066b', class: `flex ${hasHeaderSlot ? 'ml-2' : ''}`, placement: 'top-end' }, helper))))))), h("p-tooltip", { key: '41588daf8a794d9d16d32bcd841f5f4cbe64349a', class: 'w-full', variant: 'error', content: this.error, show: errorAndErrorIsNotBoolean && this.forceShowTooltip, enableUserInput: false, placement: this.errorPlacement }, hasErrorSlot && (h("slot", { key: 'a61dd91094db6ac2b016ee79320cffd887976e12', name: 'error', slot: 'content' })), contentSlot))));
|
|
34
36
|
}
|
|
35
37
|
async _setLocales() {
|
|
36
38
|
this._locales = await getLocaleComponentStrings(this._el);
|
|
@@ -57,6 +59,7 @@ const FieldContainer = /*@__PURE__*/ proxyCustomElement(class FieldContainer ext
|
|
|
57
59
|
static get style() { return PFieldContainerStyle0; }
|
|
58
60
|
}, [1, "p-field-container", {
|
|
59
61
|
"label": [1],
|
|
62
|
+
"variant": [1],
|
|
60
63
|
"helper": [1],
|
|
61
64
|
"required": [516],
|
|
62
65
|
"error": [513],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"field-container.component.js","mappings":";;;;;;AAAA,MAAM,0BAA0B,GAAG,+sBAA+sB,CAAC;AACnvB,8BAAe,0BAA0B;;MCqB5B,cAAc
|
|
1
|
+
{"file":"field-container.component.js","mappings":"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","names":[],"sources":["src/components/molecules/field-container/field-container.component.css?tag=p-field-container&encapsulation=shadow","src/components/molecules/field-container/field-container.component.tsx"],"sourcesContent":["","import {\n\tComponent,\n\tElement,\n\tEventEmitter,\n\th,\n\tHost,\n\tEvent,\n\tProp,\n\tFragment,\n\tState,\n\tListen,\n} from '@stencil/core';\nimport { formatTranslation, getLocaleComponentStrings } from '../../../utils';\nimport { Placement } from '@floating-ui/dom';\n\nexport type templateFunc = () => string;\n\n@Component({\n\ttag: 'p-field-container',\n\tstyleUrl: 'field-container.component.css',\n\tshadow: true,\n})\nexport class FieldContainer {\n\tprivate _defaultOptionalTemplate: templateFunc = () =>\n\t\tformatTranslation(this._locales.optional);\n\n\t/**\n\t * The label of the input group\n\t */\n\t@Prop() label: string | HTMLSlotElement;\n\n\t/**\n\t * The variant of the field container\n\t */\n\t@Prop() variant: 'read' | 'write';\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop() helper: string | HTMLSlotElement;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop({ reflect: true }) error: string | HTMLSlotElement;\n\n\t/**\n\t * The placement of the error popover\n\t */\n\t@Prop() errorPlacement: Placement;\n\n\t/**\n\t * Force show the error tooltip\n\t */\n\t@Prop({ reflect: true }) forceShowTooltip: boolean = false;\n\n\t/**\n\t * The template for the optional text\n\t */\n\t@Prop() optionalTemplate: templateFunc = this._defaultOptionalTemplate;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@Event() focus: EventEmitter<void>;\n\n\t/**\n\t * Locales used for this component\n\t */\n\t@State() private _locales: any = {};\n\n\tcomponentWillLoad() {\n\t\tthis._setLocales();\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\thasHeaderSlot,\n\t\t\thasErrorSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t} = this._getSlotInfo();\n\n\t\tconst contentSlot = (\n\t\t\t<slot\n\t\t\t\tname='content'\n\t\t\t\tslot='trigger'\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<Host class='p-field-container'>\n\t\t\t\t<div class='flex w-inherit flex-col gap-1'>\n\t\t\t\t\t<div class='flex items-end justify-between gap-1'>\n\t\t\t\t\t\t{label && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass='text-xs font-medium text-black-teal-300'\n\t\t\t\t\t\t\t\tonClick={() => this.focus.emit()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{(!this.required || helper || hasHeaderSlot) && (\n\t\t\t\t\t\t\t<div class='flex items-center gap-1'>\n\t\t\t\t\t\t\t\t{!this.required && this.variant === 'write' && (\n\t\t\t\t\t\t\t\t\t<span class='text-xs font-medium text-black-teal-200'>\n\t\t\t\t\t\t\t\t\t\t{this.optionalTemplate()}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{(helper || hasHeaderSlot) && (\n\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t{hasHeaderSlot && <slot name='header' />}\n\t\t\t\t\t\t\t\t\t\t{helper && (\n\t\t\t\t\t\t\t\t\t\t\t<p-helper\n\t\t\t\t\t\t\t\t\t\t\t\tclass={`flex ${hasHeaderSlot ? 'ml-2' : ''}`}\n\t\t\t\t\t\t\t\t\t\t\t\tplacement='top-end'\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{helper}\n\t\t\t\t\t\t\t\t\t\t\t</p-helper>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\tclass='w-full'\n\t\t\t\t\t\tvariant='error'\n\t\t\t\t\t\tcontent={this.error}\n\t\t\t\t\t\tshow={errorAndErrorIsNotBoolean && this.forceShowTooltip}\n\t\t\t\t\t\tenableUserInput={false}\n\t\t\t\t\t\tplacement={this.errorPlacement}\n\t\t\t\t\t>\n\t\t\t\t\t\t{hasErrorSlot && (\n\t\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\t\tname='error'\n\t\t\t\t\t\t\t\tslot='content'\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{contentSlot}\n\t\t\t\t\t</p-tooltip>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('localeChanged', { target: 'body' })\n\tprivate async _setLocales(): Promise<void> {\n\t\tthis._locales = await getLocaleComponentStrings(this._el);\n\t}\n\n\tprivate _getSlotInfo() {\n\t\tconst hasHelperSlot = !!this._el.querySelector(':scope > [slot=\"helper\"]');\n\t\tconst hasLabelSlot = !!this._el.querySelector(':scope > [slot=\"label\"]');\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\t\tconst hasErrorSlot = !!this._el.querySelector(':scope > [slot=\"error\"]');\n\n\t\tconst helper = hasHelperSlot ? <slot name='helper' /> : this.helper;\n\t\tconst label = hasLabelSlot ? <slot name='label' /> : this.label;\n\n\t\tconst errorAndErrorIsNotBoolean =\n\t\t\thasErrorSlot ||\n\t\t\t(this.error && typeof this.error === 'string' && this.error !== 'true');\n\n\t\treturn {\n\t\t\thasHelperSlot,\n\t\t\thasLabelSlot,\n\t\t\thasHeaderSlot,\n\t\t\thasErrorSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t};\n\t}\n}\n"],"version":3}
|
|
@@ -6,14 +6,18 @@ import { d as defineCustomElement$3 } from './icon.component.js';
|
|
|
6
6
|
import { d as defineCustomElement$2 } from './portal.component.js';
|
|
7
7
|
import { d as defineCustomElement$1 } from './tooltip.component.js';
|
|
8
8
|
|
|
9
|
-
const fieldComponentCss = "*{box-sizing:border-box}.static{position:static!important}.flex{display:flex!important}.h-6{height:1.5rem!important}.h-8{height:2rem!important}.h-full{height:100%!important}.w-inherit{width:inherit!important}.min-w-0{min-width:0!important}.flex-1{flex:1 1 0%!important}.flex-shrink-0{flex-shrink:0!important}.cursor-not-allowed{cursor:not-allowed!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.gap-2{gap:.5rem!important}.rounded-lg{border-radius:.5rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-none{border-style:none!important}.border-black-teal-100{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.border-negative-red{--tw-border-opacity:1!important;border-color:rgb(230 30 30/var(--tw-border-opacity,1))!important}.border-supportive-lilac-800{--tw-border-opacity:1!important;border-color:rgb(189 140 255/var(--tw-border-opacity,1))!important}.bg-transparent{background-color:transparent!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.bg-white,.bg-white-600{--tw-bg-opacity:1!important}.bg-white-600{background-color:rgb(250 250 250/var(--tw-bg-opacity,1))!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-center{text-align:center!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-black-teal{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}.text-black-teal-100{--tw-text-opacity:1!important;color:rgb(205 212 211/var(--tw-text-opacity,1))!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.text-black-teal-500{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}.text-negative-red{--tw-text-opacity:1!important;color:rgb(230 30 30/var(--tw-text-opacity,1))!important}.text-negative-red-800{--tw-text-opacity:1!important;color:rgb(141 16 16/var(--tw-text-opacity,1))!important}.outline-none{outline:2px solid transparent!important;outline-offset:2px!important}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.ring-negative-red-50{--tw-ring-opacity:1!important;--tw-ring-color:rgb(253 237 237/var(--tw-ring-opacity,1))!important}.ring-supportive-lilac-100{--tw-ring-opacity:1!important;--tw-ring-color:rgb(246 239 255/var(--tw-ring-opacity,1))!important}.selection\\:bg-negative-red-50 ::selection{--tw-bg-opacity:1!important;background-color:rgb(253 237 237/var(--tw-bg-opacity,1))!important}.selection\\:bg-supportive-lilac ::selection{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.selection\\:bg-negative-red-50::selection{--tw-bg-opacity:1!important;background-color:rgb(253 237 237/var(--tw-bg-opacity,1))!important}.selection\\:bg-supportive-lilac::selection{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.placeholder\\:text-sm::placeholder{font-size:.875rem!important;line-height:1.25rem!important}.placeholder\\:text-black-teal-200::placeholder{--tw-text-opacity:1!important;color:rgb(154 170 167/var(--tw-text-opacity,1))!important}.focus\\:outline-none:focus{outline:2px solid transparent!important;outline-offset:2px!important}";
|
|
9
|
+
const fieldComponentCss = "*{box-sizing:border-box}.static{position:static!important}.flex{display:flex!important}.h-4{height:1rem!important}.h-6{height:1.5rem!important}.h-8{height:2rem!important}.h-full{height:100%!important}.w-inherit{width:inherit!important}.min-w-0{min-width:0!important}.flex-1{flex:1 1 0%!important}.flex-shrink-0{flex-shrink:0!important}.cursor-not-allowed{cursor:not-allowed!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.gap-2{gap:.5rem!important}.rounded-lg{border-radius:.5rem!important}.border{border-width:1px!important}.border-0{border-width:0!important}.border-solid{border-style:solid!important}.border-none{border-style:none!important}.border-black-teal-100{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.border-negative-red{--tw-border-opacity:1!important;border-color:rgb(230 30 30/var(--tw-border-opacity,1))!important}.border-supportive-lilac-800{--tw-border-opacity:1!important;border-color:rgb(189 140 255/var(--tw-border-opacity,1))!important}.bg-transparent{background-color:transparent!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.bg-white,.bg-white-600{--tw-bg-opacity:1!important}.bg-white-600{background-color:rgb(250 250 250/var(--tw-bg-opacity,1))!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-center{text-align:center!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-black-teal{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}.text-black-teal-100{--tw-text-opacity:1!important;color:rgb(205 212 211/var(--tw-text-opacity,1))!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.text-black-teal-500{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}.text-negative-red{--tw-text-opacity:1!important;color:rgb(230 30 30/var(--tw-text-opacity,1))!important}.text-negative-red-800{--tw-text-opacity:1!important;color:rgb(141 16 16/var(--tw-text-opacity,1))!important}.outline-none{outline:2px solid transparent!important;outline-offset:2px!important}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.ring-negative-red-50{--tw-ring-opacity:1!important;--tw-ring-color:rgb(253 237 237/var(--tw-ring-opacity,1))!important}.ring-supportive-lilac-100{--tw-ring-opacity:1!important;--tw-ring-color:rgb(246 239 255/var(--tw-ring-opacity,1))!important}.selection\\:bg-negative-red-50 ::selection{--tw-bg-opacity:1!important;background-color:rgb(253 237 237/var(--tw-bg-opacity,1))!important}.selection\\:bg-supportive-lilac ::selection{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.selection\\:bg-negative-red-50::selection{--tw-bg-opacity:1!important;background-color:rgb(253 237 237/var(--tw-bg-opacity,1))!important}.selection\\:bg-supportive-lilac::selection{--tw-bg-opacity:1!important;background-color:rgb(209 174 255/var(--tw-bg-opacity,1))!important}.placeholder\\:text-sm::placeholder{font-size:.875rem!important;line-height:1.25rem!important}.placeholder\\:text-black-teal-200::placeholder{--tw-text-opacity:1!important;color:rgb(154 170 167/var(--tw-text-opacity,1))!important}.focus\\:outline-none:focus{outline:2px solid transparent!important;outline-offset:2px!important}";
|
|
10
10
|
const PFieldStyle0 = fieldComponentCss;
|
|
11
11
|
|
|
12
|
-
const field = cva(['flex gap-2', 'w-inherit
|
|
12
|
+
const field = cva(['flex gap-2', 'w-inherit', 'border-solid rounded-lg'], {
|
|
13
13
|
variants: {
|
|
14
|
+
variant: {
|
|
15
|
+
read: 'border-0 items-center',
|
|
16
|
+
write: 'border px-2',
|
|
17
|
+
},
|
|
14
18
|
size: {
|
|
15
|
-
sm:
|
|
16
|
-
base:
|
|
19
|
+
sm: null,
|
|
20
|
+
base: null,
|
|
17
21
|
},
|
|
18
22
|
disabled: {
|
|
19
23
|
false: 'bg-white',
|
|
@@ -29,6 +33,26 @@ const field = cva(['flex gap-2', 'w-inherit px-2', 'border border-solid rounded-
|
|
|
29
33
|
},
|
|
30
34
|
},
|
|
31
35
|
compoundVariants: [
|
|
36
|
+
{
|
|
37
|
+
size: 'sm',
|
|
38
|
+
variant: 'write',
|
|
39
|
+
class: 'h-6',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
size: 'base',
|
|
43
|
+
variant: 'write',
|
|
44
|
+
class: 'h-8',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
size: 'sm',
|
|
48
|
+
variant: 'read',
|
|
49
|
+
class: 'h-4',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
size: 'base',
|
|
53
|
+
variant: 'read',
|
|
54
|
+
class: 'h-6',
|
|
55
|
+
},
|
|
32
56
|
{
|
|
33
57
|
focused: false,
|
|
34
58
|
error: false,
|
|
@@ -75,6 +99,10 @@ const prefixAndSuffix = cva(['flex flex-shrink-0 justify-center items-center tex
|
|
|
75
99
|
false: null,
|
|
76
100
|
true: null,
|
|
77
101
|
},
|
|
102
|
+
isText: {
|
|
103
|
+
false: null,
|
|
104
|
+
true: 'text-sm',
|
|
105
|
+
},
|
|
78
106
|
},
|
|
79
107
|
compoundVariants: [
|
|
80
108
|
{
|
|
@@ -110,6 +138,7 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
|
|
|
110
138
|
this.__attachShadow();
|
|
111
139
|
this.valueChange = createEvent(this, "valueChange", 7);
|
|
112
140
|
this.inputRefChange = createEvent(this, "inputRefChange", 7);
|
|
141
|
+
this.variant = 'write';
|
|
113
142
|
this.size = 'base';
|
|
114
143
|
this.type = 'text';
|
|
115
144
|
this.properties = {};
|
|
@@ -149,20 +178,23 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
|
|
|
149
178
|
this._checkAutoFocus();
|
|
150
179
|
}
|
|
151
180
|
render() {
|
|
152
|
-
const { prefix, suffix, hasHeaderSlot, hasLabelSlot, hasHelperSlot, hasErrorSlot, } = this._getSlotInfo();
|
|
153
|
-
return (h(Host, { key: '
|
|
181
|
+
const { prefix, suffix, hasHeaderSlot, hasLabelSlot, hasHelperSlot, hasErrorSlot, hasValueSlot, } = this._getSlotInfo();
|
|
182
|
+
return (h(Host, { key: '1a79a5c8f8247833586cf9e8e663b5c6fe6a2bd9', class: 'p-field' }, h("p-field-container", { key: '10b84cef30d39755c90812095158541c5d653002', forceShowTooltip: this.forceShowTooltip || this._focused, label: this.label, helper: this.helper, error: this.error, required: this.required, variant: this.variant }, hasLabelSlot && (h("slot", { key: 'bffa3ae2c58bb688956bfe65652fd578968227f4', name: 'label', slot: 'label' })), hasHeaderSlot && (h("slot", { key: '1e4c706e8166014605a494c975bd16c502ff79cf', name: 'header', slot: 'header' })), hasHelperSlot && (h("slot", { key: '298572eb4da550e87443aecc0d68842eef9e9f98', name: 'helper', slot: 'helper' })), hasErrorSlot && (h("slot", { key: '4a9f6b0a99b88cffc4c0d84e31d880a3d07776b2', name: 'error', slot: 'error' })), h("div", { key: 'cc5d1bff2b66717facdf1df95e11bc4c16e401c2', class: field({
|
|
154
183
|
error: !!this.error?.length,
|
|
155
184
|
disabled: this.disabled,
|
|
156
185
|
focused: this.focused || this._focused,
|
|
157
186
|
size: this.size,
|
|
158
|
-
|
|
187
|
+
variant: this.variant,
|
|
188
|
+
}), slot: 'content' }, (prefix || (this.icon && this.iconPosition === 'start')) && (h("div", { key: '9a559c208e22f1c512121a81648777f5496375c9', class: prefixAndSuffix({
|
|
159
189
|
error: !!this.error?.length,
|
|
160
190
|
disabled: this.disabled,
|
|
161
191
|
focused: this.focused || this._focused,
|
|
162
|
-
|
|
192
|
+
isText: typeof suffix === 'string',
|
|
193
|
+
}), onClick: () => this._focusInput() }, this.icon && this.iconPosition === 'start' ? (h("p-icon", { class: 'flex', variant: this.icon, rotate: this.iconRotate, flip: this.iconFlip })) : (prefix))), this._getContent(hasValueSlot), (suffix || (this.icon && this.iconPosition === 'end')) && (h("div", { key: '6ae960c4a1fe98dd99d83af0035992e3aedcf86f', class: prefixAndSuffix({
|
|
163
194
|
error: !!this.error?.length,
|
|
164
195
|
disabled: this.disabled,
|
|
165
196
|
focused: this.focused || this._focused,
|
|
197
|
+
isText: typeof suffix === 'string',
|
|
166
198
|
}), onClick: () => this._focusInput() }, this.icon && this.iconPosition === 'end' ? (h("p-icon", { class: 'flex', variant: this.icon, rotate: this.iconRotate, flip: this.iconFlip })) : (suffix)))))));
|
|
167
199
|
}
|
|
168
200
|
handleFocusIn() {
|
|
@@ -185,6 +217,7 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
|
|
|
185
217
|
const hasSuffixSlot = !!this._el.querySelector(':scope > [slot="suffix"]');
|
|
186
218
|
const hasHeaderSlot = !!this._el.querySelector(':scope > [slot="header"]');
|
|
187
219
|
const hasErrorSlot = !!this._el.querySelector(':scope > [slot="error"]');
|
|
220
|
+
const hasValueSlot = !!this._el.querySelector(':scope > [slot="value"]');
|
|
188
221
|
const prefix = hasPrefixSlot ? h("slot", { name: 'prefix' }) : this.prefix;
|
|
189
222
|
const suffix = hasSuffixSlot ? h("slot", { name: 'suffix' }) : this.suffix;
|
|
190
223
|
const errorAndErrorIsNotBoolean = this.error && typeof this.error === 'string' && this.error !== 'true';
|
|
@@ -195,12 +228,16 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
|
|
|
195
228
|
hasSuffixSlot,
|
|
196
229
|
hasHeaderSlot,
|
|
197
230
|
hasErrorSlot,
|
|
231
|
+
hasValueSlot,
|
|
198
232
|
prefix,
|
|
199
233
|
suffix,
|
|
200
234
|
errorAndErrorIsNotBoolean,
|
|
201
235
|
};
|
|
202
236
|
}
|
|
203
|
-
|
|
237
|
+
_getContent(hasValueSlot = false) {
|
|
238
|
+
if (this.variant === 'read') {
|
|
239
|
+
return (h("div", { class: 'text-sm' }, hasValueSlot ? (h("slot", { name: 'value' })) : !!this.value && this.value.length > 0 ? (this.value) : ('—')));
|
|
240
|
+
}
|
|
204
241
|
if (this.type === 'slot') {
|
|
205
242
|
return h("slot", { name: 'input' });
|
|
206
243
|
}
|
|
@@ -257,6 +294,7 @@ const Field = /*@__PURE__*/ proxyCustomElement(class Field extends HTMLElement {
|
|
|
257
294
|
}
|
|
258
295
|
static get style() { return PFieldStyle0; }
|
|
259
296
|
}, [1, "p-field", {
|
|
297
|
+
"variant": [1],
|
|
260
298
|
"size": [1],
|
|
261
299
|
"type": [1],
|
|
262
300
|
"properties": [8],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"field.component.js","mappings":"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","names":[],"sources":["src/components/molecules/field/field.component.css?tag=p-field&encapsulation=shadow","src/components/molecules/field/field.component.tsx"],"sourcesContent":["","import { Placement } from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { HTMLInputTypeAttribute } from 'react';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\nimport { templateFunc } from '../field-container/field-container.component';\n\nconst field = cva(\n\t['flex gap-2', 'w-inherit px-2', 'border border-solid rounded-lg'],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\tsm: 'h-6',\n\t\t\t\tbase: 'h-8',\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tfalse: 'bg-white',\n\t\t\t\ttrue: 'bg-white-600 cursor-not-allowed',\n\t\t\t},\n\t\t\tfocused: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: null,\n\t\t\t},\n\t\t\terror: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: null,\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\tfocused: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'border-black-teal-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: true,\n\t\t\t\terror: false,\n\t\t\t\tclass:\n\t\t\t\t\t'border-supportive-lilac-800 ring ring-supportive-lilac-100 selection:bg-supportive-lilac',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\terror: true,\n\t\t\t\tclass: 'border-negative-red',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: true,\n\t\t\t\terror: true,\n\t\t\t\tclass: 'ring ring-negative-red-50 selection:bg-negative-red-50',\n\t\t\t},\n\t\t],\n\t}\n);\n\nconst input = cva(\n\t'text-sm placeholder:text-sm placeholder:text-black-teal-200 text-black-teal border-none outline-none focus:outline-none bg-transparent flex-1 min-w-0 h-full',\n\t{\n\t\tvariants: {\n\t\t\tdisabled: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: 'cursor-not-allowed',\n\t\t\t},\n\t\t},\n\t}\n);\n\nconst prefixAndSuffix = cva(\n\t['flex flex-shrink-0 justify-center items-center text-center'],\n\t{\n\t\tvariants: {\n\t\t\tdisabled: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: 'text-black-teal-100',\n\t\t\t},\n\t\t\tfocused: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: null,\n\t\t\t},\n\t\t\terror: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: null,\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'text-black-teal-300',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: true,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'text-black-teal-500',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: false,\n\t\t\t\terror: true,\n\t\t\t\tclass: 'text-negative-red',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: true,\n\t\t\t\terror: true,\n\t\t\t\tclass: 'text-negative-red-800',\n\t\t\t},\n\t\t],\n\t}\n);\n\n@Component({\n\ttag: 'p-field',\n\tstyleUrl: './field.component.css',\n\tshadow: true,\n})\nexport class Field {\n\t/**\n\t * The size of the input group\n\t */\n\t@Prop() size: 'sm' | 'base' = 'base';\n\n\t/**\n\t * The type of the input group\n\t */\n\t@Prop() type: HTMLInputTypeAttribute | 'textarea' | 'slot' = 'text';\n\n\t/**\n\t * The size of the input group\n\t */\n\t@Prop() properties: any | string = {};\n\n\t/**\n\t * The prefix of the input group\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The suffix of the input group\n\t */\n\t@Prop() suffix: string;\n\n\t/**\n\t * Icon of the input group\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * Icon flip */\n\t@Prop() iconFlip: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate: RotateOptions;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition: 'start' | 'end' = 'start';\n\n\t/**\n\t * The value of the input\n\t */\n\t@Prop() value: string;\n\n\t/**\n\t * The label of the input group\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean = true;\n\n\t/**\n\t * Wether to autofocus the field\n\t */\n\t@Prop({ reflect: true }) autofocus: boolean = false;\n\n\t/**\n\t * The error to display\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * The placement of the error popover\n\t */\n\t@Prop() errorPlacement: Placement;\n\n\t/**\n\t * Wether the input group is disabled\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether the input group is focused\n\t */\n\t@Prop({ reflect: true }) focused: boolean = false;\n\n\t/**\n\t * Force show the error tooltip\n\t */\n\t@Prop({ reflect: true }) forceShowTooltip: boolean = false;\n\n\t/**\n\t * Wether to select all text on focus\n\t */\n\t@Prop({ reflect: true }) selectAllOnFocus: boolean = true;\n\n\t/**\n\t * The method to use when focusing the input\n\t */\n\t@Prop() focusMethod: 'focus' | 'click' = 'focus';\n\n\t/**\n\t * The template for the optional text\n\t */\n\t@Prop() optionalTemplate: templateFunc;\n\n\t/**\n\t * Event whenever the value changes\n\t */\n\t@Event() valueChange: EventEmitter<string>;\n\n\t/**\n\t * Event whenever the input ref changes\n\t */\n\t@Event() inputRefChange: EventEmitter<HTMLInputElement | HTMLTextAreaElement>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _focused = false;\n\n\tprivate _inputRef: HTMLInputElement | HTMLTextAreaElement;\n\n\tcomponentDidLoad() {\n\t\tthis._checkAutoFocus();\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\thasHeaderSlot,\n\t\t\thasLabelSlot,\n\t\t\thasHelperSlot,\n\t\t\thasErrorSlot,\n\t\t} = this._getSlotInfo();\n\n\t\treturn (\n\t\t\t<Host class='p-field'>\n\t\t\t\t<p-field-container\n\t\t\t\t\tforceShowTooltip={this.forceShowTooltip || this._focused}\n\t\t\t\t\tlabel={this.label}\n\t\t\t\t\thelper={this.helper}\n\t\t\t\t\terror={this.error}\n\t\t\t\t\trequired={this.required}\n\t\t\t\t>\n\t\t\t\t\t{hasLabelSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='label'\n\t\t\t\t\t\t\tslot='label'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{hasHeaderSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='header'\n\t\t\t\t\t\t\tslot='header'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{hasHelperSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='helper'\n\t\t\t\t\t\t\tslot='helper'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{hasErrorSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='error'\n\t\t\t\t\t\t\tslot='error'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass={field({\n\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\tfocused: this.focused || this._focused,\n\t\t\t\t\t\t\tsize: this.size,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tslot='content'\n\t\t\t\t\t>\n\t\t\t\t\t\t{(prefix || (this.icon && this.iconPosition === 'start')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={prefixAndSuffix({\n\t\t\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\t\t\tfocused: this.focused || this._focused,\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.icon && this.iconPosition === 'start' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass='flex'\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tprefix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{this._getInput()}\n\n\t\t\t\t\t\t{(suffix || (this.icon && this.iconPosition === 'end')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={prefixAndSuffix({\n\t\t\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\t\t\tfocused: this.focused || this._focused,\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.icon && this.iconPosition === 'end' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass='flex'\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tsuffix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</p-field-container>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('focusin')\n\thandleFocusIn() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focused = true;\n\t\tthis._selectAll();\n\t}\n\n\t@Listen('focusout')\n\thandleFocusOut() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focused = false;\n\t}\n\n\tprivate _getSlotInfo() {\n\t\tconst hasHelperSlot = !!this._el.querySelector(':scope > [slot=\"helper\"]');\n\t\tconst hasLabelSlot = !!this._el.querySelector(':scope > [slot=\"label\"]');\n\t\tconst hasPrefixSlot = !!this._el.querySelector(':scope > [slot=\"prefix\"]');\n\t\tconst hasSuffixSlot = !!this._el.querySelector(':scope > [slot=\"suffix\"]');\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\t\tconst hasErrorSlot = !!this._el.querySelector(':scope > [slot=\"error\"]');\n\n\t\tconst prefix = hasPrefixSlot ? <slot name='prefix' /> : this.prefix;\n\t\tconst suffix = hasSuffixSlot ? <slot name='suffix' /> : this.suffix;\n\n\t\tconst errorAndErrorIsNotBoolean =\n\t\t\tthis.error && typeof this.error === 'string' && this.error !== 'true';\n\n\t\treturn {\n\t\t\thasHelperSlot,\n\t\t\thasLabelSlot,\n\t\t\thasPrefixSlot,\n\t\t\thasSuffixSlot,\n\t\t\thasHeaderSlot,\n\t\t\thasErrorSlot,\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t};\n\t}\n\n\tprivate _getInput() {\n\t\tif (this.type === 'slot') {\n\t\t\treturn <slot name='input' />;\n\t\t}\n\n\t\tconst props = {\n\t\t\tclass: input({\n\t\t\t\tdisabled: this.disabled,\n\t\t\t}),\n\t\t\tvalue: this.value,\n\t\t\tplaceholder: this.placeholder,\n\t\t\tdisabled: this.disabled,\n\t\t\tonInput: (ev: Event) => this._valueChange(ev),\n\t\t};\n\n\t\tlet properties = this.properties ?? {};\n\t\tif (typeof properties === 'string') {\n\t\t\tproperties = JSON.parse(this.properties);\n\t\t}\n\n\t\tif (this.type === 'textarea') {\n\t\t\t<textarea\n\t\t\t\tref={ref => this._setInputRef(ref)}\n\t\t\t\t{...props}\n\t\t\t\t{...properties}\n\t\t\t/>;\n\t\t}\n\n\t\treturn (\n\t\t\t<input\n\t\t\t\ttype={this.type}\n\t\t\t\tref={ref => this._setInputRef(ref)}\n\t\t\t\t{...props}\n\t\t\t\t{...properties}\n\t\t\t/>\n\t\t);\n\t}\n\n\tprivate _setInputRef(ref: HTMLInputElement | HTMLTextAreaElement) {\n\t\tthis._inputRef = ref;\n\t\tthis.inputRefChange.emit(ref);\n\t}\n\n\tprivate _focusInput() {\n\t\tif (this._inputRef) {\n\t\t\tthis._inputRef.focus();\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this._el.querySelector(':scope > [slot=\"input\"]');\n\t\t(input as HTMLElement)[this.focusMethod]();\n\t}\n\n\tprivate _selectAll() {\n\t\tif (!this._inputRef || !this.selectAllOnFocus) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._inputRef.select();\n\t}\n\n\tprivate _valueChange(ev) {\n\t\tconst value = (ev.target as HTMLTextAreaElement | HTMLInputElement).value;\n\t\tthis.value = value;\n\t\tthis.valueChange.emit(value);\n\t}\n\n\tprivate _checkAutoFocus() {\n\t\tif (!this.autofocus) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._inputRef) {\n\t\t\tsetTimeout(() => this._checkAutoFocus(), 100);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focusInput();\n\t}\n}\n"],"version":3}
|
|
1
|
+
{"file":"field.component.js","mappings":";;;;;;;;AAAA,MAAM,iBAAiB,GAAG,6mHAA6mH,CAAC;AACxoH,qBAAe,iBAAiB;;ACiBhC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,yBAAyB,CAAC,EAAE;IACzE,QAAQ,EAAE;QACT,OAAO,EAAE;YACR,IAAI,EAAE,uBAAuB;YAC7B,KAAK,EAAE,aAAa;SACpB;QACD,IAAI,EAAE;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,IAAI;SACV;QACD,QAAQ,EAAE;YACT,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,iCAAiC;SACvC;QACD,OAAO,EAAE;YACR,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;SACV;QACD,KAAK,EAAE;YACN,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;SACV;KACD;IACD,gBAAgB,EAAE;QACjB;YACC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;SACZ;QACD;YACC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;SACZ;QAED;YACC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,KAAK;SACZ;QACD;YACC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,KAAK;SACZ;QAED;YACC,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,uBAAuB;SAC9B;QACD;YACC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,KAAK;YACZ,KAAK,EACJ,0FAA0F;SAC3F;QAED;YACC,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,qBAAqB;SAC5B;QACD;YACC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,wDAAwD;SAC/D;KACD;CACD,CAAC,CAAC;AAEH,MAAM,KAAK,GAAG,GAAG,CAChB,8JAA8J,EAC9J;IACC,QAAQ,EAAE;QACT,QAAQ,EAAE;YACT,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,oBAAoB;SAC1B;KACD;CACD,CACD,CAAC;AAEF,MAAM,eAAe,GAAG,GAAG,CAC1B,CAAC,4DAA4D,CAAC,EAC9D;IACC,QAAQ,EAAE;QACT,QAAQ,EAAE;YACT,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,qBAAqB;SAC3B;QACD,OAAO,EAAE;YACR,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;SACV;QACD,KAAK,EAAE;YACN,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;SACV;QACD,MAAM,EAAE;YACP,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,SAAS;SACf;KACD;IACD,gBAAgB,EAAE;QACjB;YACC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,qBAAqB;SAC5B;QAED;YACC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,qBAAqB;SAC5B;QAED;YACC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,mBAAmB;SAC1B;QAED;YACC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,uBAAuB;SAC9B;KACD;CACD,CACD,CAAC;MAOW,KAAK;;;;;;;uBAImB,OAAO;oBAKb,MAAM;oBAKyB,MAAM;0BAKhC,EAAE;;;;;;4BA6BG,OAAO;;;;;wBAyBF,IAAI;yBAKH,KAAK;;;wBAeN,KAAK;uBAKN,KAAK;gCAKI,KAAK;gCAKL,IAAI;2BAKhB,OAAO;;wBAsBpB,KAAK;;;;;IAZxB,WAAW,CAAuB;;;;IAKlC,cAAc,CAAuD;;IAStE,SAAS,CAAyC;IAE1D,gBAAgB;QACf,IAAI,CAAC,eAAe,EAAE,CAAC;KACvB;IAED,MAAM;QACL,MAAM,EACL,MAAM,EACN,MAAM,EACN,aAAa,EACb,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,GACZ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAExB,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,SAAS,IACpB,0EACC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,QAAQ,EACxD,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IAEpB,YAAY,KACZ,6DACC,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,OAAO,GACX,CACF,EAEA,aAAa,KACb,6DACC,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,GACZ,CACF,EAEA,aAAa,KACb,6DACC,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,GACZ,CACF,EAEA,YAAY,KACZ,6DACC,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,OAAO,GACX,CACF,EAED,4DACC,KAAK,EAAE,KAAK,CAAC;gBACZ,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ;gBACtC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;aACrB,CAAC,EACF,IAAI,EAAC,SAAS,IAEb,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,MACvD,4DACC,KAAK,EAAE,eAAe,CAAC;gBACtB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ;gBACtC,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ;aAClC,CAAC,EACF,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEhC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,IAC1C,cACC,KAAK,EAAC,MAAM,EACZ,OAAO,EAAE,IAAI,CAAC,IAAI,EAClB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,IAAI,EAAE,IAAI,CAAC,QAAQ,GAClB,KAEF,MAAM,CACN,CACI,CACN,EAEA,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAE9B,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,MACrD,4DACC,KAAK,EAAE,eAAe,CAAC;gBACtB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ;gBACtC,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ;aAClC,CAAC,EACF,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEhC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,IACxC,cACC,KAAK,EAAC,MAAM,EACZ,OAAO,EAAE,IAAI,CAAC,IAAI,EAClB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,IAAI,EAAE,IAAI,CAAC,QAAQ,GAClB,KAEF,MAAM,CACN,CACI,CACN,CACI,CACa,CACd,EACN;KACF;IAGD,aAAa;QACZ,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO;SACP;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,UAAU,EAAE,CAAC;KAClB;IAGD,cAAc;QACb,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO;SACP;QAED,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;KACtB;IAEO,YAAY;QACnB,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QAEzE,MAAM,MAAM,GAAG,aAAa,GAAG,YAAM,IAAI,EAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;QACpE,MAAM,MAAM,GAAG,aAAa,GAAG,YAAM,IAAI,EAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;QAEpE,MAAM,yBAAyB,GAC9B,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC;QAEvE,OAAO;YACN,aAAa;YACb,YAAY;YACZ,aAAa;YACb,aAAa;YACb,aAAa;YACb,YAAY;YACZ,YAAY;YACZ,MAAM;YACN,MAAM;YACN,yBAAyB;SACzB,CAAC;KACF;IAEO,WAAW,CAAC,YAAY,GAAG,KAAK;QACvC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE;YAC5B,QACC,WAAK,KAAK,EAAC,SAAS,IAClB,YAAY,IACZ,YAAM,IAAI,EAAC,OAAO,GAAG,IAClB,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IACxC,IAAI,CAAC,KAAK,KAEV,GAAG,CACH,CACI,EACL;SACF;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;YACzB,OAAO,YAAM,IAAI,EAAC,OAAO,GAAG,CAAC;SAC7B;QAED,MAAM,KAAK,GAAG;YACb,KAAK,EAAE,KAAK,CAAC;gBACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACvB,CAAC;YACF,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,CAAC,EAAS,KAAK,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;SAC7C,CAAC;QAEF,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;QACvC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YACnC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACzC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE;YAC7B,gBACC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAC9B,KAAK,KACL,UAAU,GACb,CAAC;SACH;QAED,QACC,aACC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAC9B,KAAK,KACL,UAAU,GACb,EACD;KACF;IAEO,YAAY,CAAC,GAA2C;QAC/D,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAC9B;IAEO,WAAW;QAClB,IAAI,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO;SACP;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QAC/D,KAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;KAC3C;IAEO,UAAU;QACjB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC9C,OAAO;SACP;QAED,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;KACxB;IAEO,YAAY,CAAC,EAAE;QACtB,MAAM,KAAK,GAAI,EAAE,CAAC,MAAiD,CAAC,KAAK,CAAC;QAC1E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC7B;IAEO,eAAe;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACpB,OAAO;SACP;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACpB,UAAU,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,EAAE,GAAG,CAAC,CAAC;YAC9C,OAAO;SACP;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;KACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/molecules/field/field.component.css?tag=p-field&encapsulation=shadow","src/components/molecules/field/field.component.tsx"],"sourcesContent":["","import { Placement } from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { HTMLInputTypeAttribute } from 'react';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\nimport { templateFunc } from '../field-container/field-container.component';\n\nconst field = cva(['flex gap-2', 'w-inherit', 'border-solid rounded-lg'], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tread: 'border-0 items-center',\n\t\t\twrite: 'border px-2',\n\t\t},\n\t\tsize: {\n\t\t\tsm: null,\n\t\t\tbase: null,\n\t\t},\n\t\tdisabled: {\n\t\t\tfalse: 'bg-white',\n\t\t\ttrue: 'bg-white-600 cursor-not-allowed',\n\t\t},\n\t\tfocused: {\n\t\t\tfalse: null,\n\t\t\ttrue: null,\n\t\t},\n\t\terror: {\n\t\t\tfalse: null,\n\t\t\ttrue: null,\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tsize: 'sm',\n\t\t\tvariant: 'write',\n\t\t\tclass: 'h-6',\n\t\t},\n\t\t{\n\t\t\tsize: 'base',\n\t\t\tvariant: 'write',\n\t\t\tclass: 'h-8',\n\t\t},\n\n\t\t{\n\t\t\tsize: 'sm',\n\t\t\tvariant: 'read',\n\t\t\tclass: 'h-4',\n\t\t},\n\t\t{\n\t\t\tsize: 'base',\n\t\t\tvariant: 'read',\n\t\t\tclass: 'h-6',\n\t\t},\n\n\t\t{\n\t\t\tfocused: false,\n\t\t\terror: false,\n\t\t\tclass: 'border-black-teal-100',\n\t\t},\n\t\t{\n\t\t\tdisabled: false,\n\t\t\tfocused: true,\n\t\t\terror: false,\n\t\t\tclass:\n\t\t\t\t'border-supportive-lilac-800 ring ring-supportive-lilac-100 selection:bg-supportive-lilac',\n\t\t},\n\n\t\t{\n\t\t\tdisabled: false,\n\t\t\terror: true,\n\t\t\tclass: 'border-negative-red',\n\t\t},\n\t\t{\n\t\t\tdisabled: false,\n\t\t\tfocused: true,\n\t\t\terror: true,\n\t\t\tclass: 'ring ring-negative-red-50 selection:bg-negative-red-50',\n\t\t},\n\t],\n});\n\nconst input = cva(\n\t'text-sm placeholder:text-sm placeholder:text-black-teal-200 text-black-teal border-none outline-none focus:outline-none bg-transparent flex-1 min-w-0 h-full',\n\t{\n\t\tvariants: {\n\t\t\tdisabled: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: 'cursor-not-allowed',\n\t\t\t},\n\t\t},\n\t}\n);\n\nconst prefixAndSuffix = cva(\n\t['flex flex-shrink-0 justify-center items-center text-center'],\n\t{\n\t\tvariants: {\n\t\t\tdisabled: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: 'text-black-teal-100',\n\t\t\t},\n\t\t\tfocused: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: null,\n\t\t\t},\n\t\t\terror: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: null,\n\t\t\t},\n\t\t\tisText: {\n\t\t\t\tfalse: null,\n\t\t\t\ttrue: 'text-sm',\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'text-black-teal-300',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: true,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'text-black-teal-500',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: false,\n\t\t\t\terror: true,\n\t\t\t\tclass: 'text-negative-red',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tdisabled: false,\n\t\t\t\tfocused: true,\n\t\t\t\terror: true,\n\t\t\t\tclass: 'text-negative-red-800',\n\t\t\t},\n\t\t],\n\t}\n);\n\n@Component({\n\ttag: 'p-field',\n\tstyleUrl: './field.component.css',\n\tshadow: true,\n})\nexport class Field {\n\t/**\n\t * The variant of the field\n\t */\n\t@Prop() variant: 'read' | 'write' = 'write';\n\n\t/**\n\t * The size of the field\n\t */\n\t@Prop() size: 'sm' | 'base' = 'base';\n\n\t/**\n\t * The type of the field\n\t */\n\t@Prop() type: HTMLInputTypeAttribute | 'textarea' | 'slot' = 'text';\n\n\t/**\n\t * The size of the field\n\t */\n\t@Prop() properties: any | string = {};\n\n\t/**\n\t * The prefix of the field\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The suffix of the field\n\t */\n\t@Prop() suffix: string;\n\n\t/**\n\t * Icon of the field\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * Icon flip */\n\t@Prop() iconFlip: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate: RotateOptions;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition: 'start' | 'end' = 'start';\n\n\t/**\n\t * The value of the input\n\t */\n\t@Prop() value: string;\n\n\t/**\n\t * The label of the field\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The helper of the field\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean = true;\n\n\t/**\n\t * Wether to autofocus the field\n\t */\n\t@Prop({ reflect: true }) autofocus: boolean = false;\n\n\t/**\n\t * The error to display\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * The placement of the error popover\n\t */\n\t@Prop() errorPlacement: Placement;\n\n\t/**\n\t * Wether the field is disabled\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether the field is focused\n\t */\n\t@Prop({ reflect: true }) focused: boolean = false;\n\n\t/**\n\t * Force show the error tooltip\n\t */\n\t@Prop({ reflect: true }) forceShowTooltip: boolean = false;\n\n\t/**\n\t * Wether to select all text on focus\n\t */\n\t@Prop({ reflect: true }) selectAllOnFocus: boolean = true;\n\n\t/**\n\t * The method to use when focusing the input\n\t */\n\t@Prop() focusMethod: 'focus' | 'click' = 'focus';\n\n\t/**\n\t * The template for the optional text\n\t */\n\t@Prop() optionalTemplate: templateFunc;\n\n\t/**\n\t * Event whenever the value changes\n\t */\n\t@Event() valueChange: EventEmitter<string>;\n\n\t/**\n\t * Event whenever the input ref changes\n\t */\n\t@Event() inputRefChange: EventEmitter<HTMLInputElement | HTMLTextAreaElement>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _focused = false;\n\n\tprivate _inputRef: HTMLInputElement | HTMLTextAreaElement;\n\n\tcomponentDidLoad() {\n\t\tthis._checkAutoFocus();\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\thasHeaderSlot,\n\t\t\thasLabelSlot,\n\t\t\thasHelperSlot,\n\t\t\thasErrorSlot,\n\t\t\thasValueSlot,\n\t\t} = this._getSlotInfo();\n\n\t\treturn (\n\t\t\t<Host class='p-field'>\n\t\t\t\t<p-field-container\n\t\t\t\t\tforceShowTooltip={this.forceShowTooltip || this._focused}\n\t\t\t\t\tlabel={this.label}\n\t\t\t\t\thelper={this.helper}\n\t\t\t\t\terror={this.error}\n\t\t\t\t\trequired={this.required}\n\t\t\t\t\tvariant={this.variant}\n\t\t\t\t>\n\t\t\t\t\t{hasLabelSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='label'\n\t\t\t\t\t\t\tslot='label'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{hasHeaderSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='header'\n\t\t\t\t\t\t\tslot='header'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{hasHelperSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='helper'\n\t\t\t\t\t\t\tslot='helper'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{hasErrorSlot && (\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\tname='error'\n\t\t\t\t\t\t\tslot='error'\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass={field({\n\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\tfocused: this.focused || this._focused,\n\t\t\t\t\t\t\tsize: this.size,\n\t\t\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tslot='content'\n\t\t\t\t\t>\n\t\t\t\t\t\t{(prefix || (this.icon && this.iconPosition === 'start')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={prefixAndSuffix({\n\t\t\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\t\t\tfocused: this.focused || this._focused,\n\t\t\t\t\t\t\t\t\tisText: typeof suffix === 'string',\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.icon && this.iconPosition === 'start' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass='flex'\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tprefix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{this._getContent(hasValueSlot)}\n\n\t\t\t\t\t\t{(suffix || (this.icon && this.iconPosition === 'end')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={prefixAndSuffix({\n\t\t\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t\t\t\tfocused: this.focused || this._focused,\n\t\t\t\t\t\t\t\t\tisText: typeof suffix === 'string',\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.icon && this.iconPosition === 'end' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass='flex'\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tsuffix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</p-field-container>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('focusin')\n\thandleFocusIn() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focused = true;\n\t\tthis._selectAll();\n\t}\n\n\t@Listen('focusout')\n\thandleFocusOut() {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focused = false;\n\t}\n\n\tprivate _getSlotInfo() {\n\t\tconst hasHelperSlot = !!this._el.querySelector(':scope > [slot=\"helper\"]');\n\t\tconst hasLabelSlot = !!this._el.querySelector(':scope > [slot=\"label\"]');\n\t\tconst hasPrefixSlot = !!this._el.querySelector(':scope > [slot=\"prefix\"]');\n\t\tconst hasSuffixSlot = !!this._el.querySelector(':scope > [slot=\"suffix\"]');\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\t\tconst hasErrorSlot = !!this._el.querySelector(':scope > [slot=\"error\"]');\n\t\tconst hasValueSlot = !!this._el.querySelector(':scope > [slot=\"value\"]');\n\n\t\tconst prefix = hasPrefixSlot ? <slot name='prefix' /> : this.prefix;\n\t\tconst suffix = hasSuffixSlot ? <slot name='suffix' /> : this.suffix;\n\n\t\tconst errorAndErrorIsNotBoolean =\n\t\t\tthis.error && typeof this.error === 'string' && this.error !== 'true';\n\n\t\treturn {\n\t\t\thasHelperSlot,\n\t\t\thasLabelSlot,\n\t\t\thasPrefixSlot,\n\t\t\thasSuffixSlot,\n\t\t\thasHeaderSlot,\n\t\t\thasErrorSlot,\n\t\t\thasValueSlot,\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t};\n\t}\n\n\tprivate _getContent(hasValueSlot = false) {\n\t\tif (this.variant === 'read') {\n\t\t\treturn (\n\t\t\t\t<div class='text-sm'>\n\t\t\t\t\t{hasValueSlot ? (\n\t\t\t\t\t\t<slot name='value' />\n\t\t\t\t\t) : !!this.value && this.value.length > 0 ? (\n\t\t\t\t\t\tthis.value\n\t\t\t\t\t) : (\n\t\t\t\t\t\t'—'\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tif (this.type === 'slot') {\n\t\t\treturn <slot name='input' />;\n\t\t}\n\n\t\tconst props = {\n\t\t\tclass: input({\n\t\t\t\tdisabled: this.disabled,\n\t\t\t}),\n\t\t\tvalue: this.value,\n\t\t\tplaceholder: this.placeholder,\n\t\t\tdisabled: this.disabled,\n\t\t\tonInput: (ev: Event) => this._valueChange(ev),\n\t\t};\n\n\t\tlet properties = this.properties ?? {};\n\t\tif (typeof properties === 'string') {\n\t\t\tproperties = JSON.parse(this.properties);\n\t\t}\n\n\t\tif (this.type === 'textarea') {\n\t\t\t<textarea\n\t\t\t\tref={ref => this._setInputRef(ref)}\n\t\t\t\t{...props}\n\t\t\t\t{...properties}\n\t\t\t/>;\n\t\t}\n\n\t\treturn (\n\t\t\t<input\n\t\t\t\ttype={this.type}\n\t\t\t\tref={ref => this._setInputRef(ref)}\n\t\t\t\t{...props}\n\t\t\t\t{...properties}\n\t\t\t/>\n\t\t);\n\t}\n\n\tprivate _setInputRef(ref: HTMLInputElement | HTMLTextAreaElement) {\n\t\tthis._inputRef = ref;\n\t\tthis.inputRefChange.emit(ref);\n\t}\n\n\tprivate _focusInput() {\n\t\tif (this._inputRef) {\n\t\t\tthis._inputRef.focus();\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this._el.querySelector(':scope > [slot=\"input\"]');\n\t\t(input as HTMLElement)[this.focusMethod]();\n\t}\n\n\tprivate _selectAll() {\n\t\tif (!this._inputRef || !this.selectAllOnFocus) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._inputRef.select();\n\t}\n\n\tprivate _valueChange(ev) {\n\t\tconst value = (ev.target as HTMLTextAreaElement | HTMLInputElement).value;\n\t\tthis.value = value;\n\t\tthis.valueChange.emit(value);\n\t}\n\n\tprivate _checkAutoFocus() {\n\t\tif (!this.autofocus) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._inputRef) {\n\t\t\tsetTimeout(() => this._checkAutoFocus(), 100);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._focusInput();\n\t}\n}\n"],"version":3}
|