@masterteam/components 0.0.33 → 0.0.35
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/assets/common.css +1 -1
- package/fesm2022/masterteam-components-button.mjs +3 -3
- package/fesm2022/masterteam-components-button.mjs.map +1 -1
- package/fesm2022/masterteam-components-color-picker-field.mjs +1 -1
- package/fesm2022/masterteam-components-color-picker-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-formula-builder.mjs +1 -1
- package/fesm2022/masterteam-components-formula-builder.mjs.map +1 -1
- package/fesm2022/masterteam-components-pick-list-field.mjs +190 -0
- package/fesm2022/masterteam-components-pick-list-field.mjs.map +1 -0
- package/fesm2022/masterteam-components-table.mjs +56 -9
- package/fesm2022/masterteam-components-table.mjs.map +1 -1
- package/fesm2022/masterteam-components-text-field.mjs +45 -12
- package/fesm2022/masterteam-components-text-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-tooltip.mjs +5 -5
- package/fesm2022/masterteam-components-tooltip.mjs.map +1 -1
- package/fesm2022/masterteam-components-user-search-field.mjs +6 -7
- package/fesm2022/masterteam-components-user-search-field.mjs.map +1 -1
- package/fesm2022/masterteam-components.mjs +41 -1
- package/fesm2022/masterteam-components.mjs.map +1 -1
- package/index.d.ts +34 -3
- package/package.json +49 -45
- package/pick-list-field/index.d.ts +59 -0
- package/table/index.d.ts +23 -6
- package/text-field/index.d.ts +6 -3
- package/tooltip/index.d.ts +1 -1
package/assets/common.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */
|
|
2
|
-
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-green-50:oklch(98.2% .018 155.826);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-blue-50:oklch(97% .014 254.604);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wider:.05em;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{label.required:after{content:"*";color:var(--p-red-500);padding-inline-start:2px}.dark label.required:after{color:var(--p-red-600)}}@layer utilities{.\@container{container-type:inline-size}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing)*0)}.right-3{right:calc(var(--spacing)*3)}.z-10{z-index:10}.order-1{order:1}.col-span-6{grid-column:span 6/span 6}.m-0{margin:calc(var(--spacing)*0)}.ms-2{margin-inline-start:calc(var(--spacing)*2)}.mt-2{margin-top:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.size-full{width:100%;height:100%}.h-full{height:100%}.w-12{width:calc(var(--spacing)*12)}.w-72{width:calc(var(--spacing)*72)}.w-full{width:100%}.min-w-full{min-width:100%}.min-w-max{min-width:max-content}.flex-1{flex:1}.grow{flex-grow:1}.table-fixed{table-layout:fixed}.origin-top-right{transform-origin:100% 0}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*4)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-md{border-bottom-right-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.border,.border-1{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--p-content-border-color\){border-color:var(--p-content-border-color)}.border-\(--p-inputtext-invalid-border-color\)\!{border-color:var(--p-inputtext-invalid-border-color)!important}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-500{border-color:var(--color-gray-500)}.border-primary-400{border-color:var(--p-primary-400)}@supports (color:color-mix(in lab, red, red)){.border-primary-400{border-color:color-mix(in srgb,var(--p-primary-400)calc(100%*1),transparent)}}.border-surface{border-color:var(--p-content-border-color)}.border-surface-200{border-color:var(--p-surface-200)}@supports (color:color-mix(in lab, red, red)){.border-surface-200{border-color:color-mix(in srgb,var(--p-surface-200)calc(100%*1),transparent)}}.border-surface-300{border-color:var(--p-surface-300)}@supports (color:color-mix(in lab, red, red)){.border-surface-300{border-color:color-mix(in srgb,var(--p-surface-300)calc(100%*1),transparent)}}.\!bg-white{background-color:var(--color-white)!important}.bg-\(--p-inputtext-filled-background\){background-color:var(--p-inputtext-filled-background)}.bg-content{background-color:var(--p-content-background)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-primary-50{background-color:var(--p-primary-50)}@supports (color:color-mix(in lab, red, red)){.bg-primary-50{background-color:color-mix(in srgb,var(--p-primary-50)calc(100%*1),transparent)}}.bg-surface-50{background-color:var(--p-surface-50)}@supports (color:color-mix(in lab, red, red)){.bg-surface-50{background-color:color-mix(in srgb,var(--p-surface-50)calc(100%*1),transparent)}}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing)*0)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-8{padding:calc(var(--spacing)*8)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-3{padding-block:calc(var(--spacing)*3)}.py-5{padding-block:calc(var(--spacing)*5)}.text-center{text-align:center}.text-end{text-align:end}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.align-super\!{vertical-align:super!important}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[\.95rem\]{font-size:.95rem}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-blue-600{color:var(--color-blue-600)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-muted-color{color:var(--p-text-muted-color)}.text-primary-400{color:var(--p-primary-400)}@supports (color:color-mix(in lab, red, red)){.text-primary-400{color:color-mix(in srgb,var(--p-primary-400)calc(100%*1),transparent)}}.text-primary-700{color:var(--p-primary-700)}@supports (color:color-mix(in lab, red, red)){.text-primary-700{color:color-mix(in srgb,var(--p-primary-700)calc(100%*1),transparent)}}.text-purple-600{color:var(--color-purple-600)}.text-red-600{color:var(--color-red-600)}.text-surface-500{color:var(--p-surface-500)}@supports (color:color-mix(in lab, red, red)){.text-surface-500{color:color-mix(in srgb,var(--p-surface-500)calc(100%*1),transparent)}}.text-yellow-600{color:var(--color-yellow-600)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-50{opacity:.5}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-black{--tw-ring-color:var(--color-black)}.ring-primary-200{--tw-ring-color:var(--p-primary-200)}@supports (color:color-mix(in lab, red, red)){.ring-primary-200{--tw-ring-color:color-mix(in srgb,var(--p-primary-200)calc(100%*1),transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{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,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:border-\(--p-inputtext-hover-border-color\)\!:hover{border-color:var(--p-inputtext-hover-border-color)!important}.hover\:border-gray-400:hover{border-color:var(--color-gray-400)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-green-50:hover{background-color:var(--color-green-50)}.hover\:bg-purple-50:hover{background-color:var(--color-purple-50)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-yellow-50:hover{background-color:var(--color-yellow-50)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-green-700:hover{color:var(--color-green-700)}.hover\:text-purple-700:hover{color:var(--color-purple-700)}.hover\:text-red-700:hover{color:var(--color-red-700)}.hover\:text-yellow-700:hover{color:var(--color-yellow-700)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@container (min-width:28rem){.\@md\:col-span-3{grid-column:span 3/span 3}}@container (min-width:42rem){.\@2xl\:col-span-2{grid-column:span 2/span 2}}.dark\:border-surface-500:where(.dark,.dark *){border-color:var(--p-surface-500)}@supports (color:color-mix(in lab, red, red)){.dark\:border-surface-500:where(.dark,.dark *){border-color:color-mix(in srgb,var(--p-surface-500)calc(100%*1),transparent)}}.dark\:bg-primary-800:where(.dark,.dark *){background-color:var(--p-primary-800)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-primary-800:where(.dark,.dark *){background-color:color-mix(in srgb,var(--p-primary-800)calc(100%*1),transparent)}}.dark\:bg-primary-900\/20:where(.dark,.dark *){background-color:var(--p-primary-900)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-primary-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,color-mix(in srgb,var(--p-primary-900)calc(100%*1),transparent)20%,transparent)}}.dark\:bg-surface-950:where(.dark,.dark *){background-color:var(--p-surface-950)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-950:where(.dark,.dark *){background-color:color-mix(in srgb,var(--p-surface-950)calc(100%*1),transparent)}}.dark\:text-gray-50:where(.dark,.dark *){color:var(--color-gray-50)}.dark\:text-gray-100:where(.dark,.dark *){color:var(--color-gray-100)}.dark\:text-gray-200:where(.dark,.dark *){color:var(--color-gray-200)}.dark\:text-primary-300:where(.dark,.dark *){color:var(--p-primary-300)}@supports (color:color-mix(in lab, red, red)){.dark\:text-primary-300:where(.dark,.dark *){color:color-mix(in srgb,var(--p-primary-300)calc(100%*1),transparent)}}@media (hover:hover){.dark\:hover\:bg-gray-800:where(.dark,.dark *):hover{background-color:var(--color-gray-800)}.dark\:hover\:bg-surface-950:where(.dark,.dark *):hover{background-color:var(--p-surface-950)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-surface-950:where(.dark,.dark *):hover{background-color:color-mix(in srgb,var(--p-surface-950)calc(100%*1),transparent)}}.dark\:hover\:text-gray-100:where(.dark,.dark *):hover{color:var(--color-gray-100)}}}:root{--app-background:var(--p-surface-100)}:root[class=dark]{--app-background:var(--p-surface-950)}body{background-color:var(--app-background)}.mt-dialog .p-dialog-header{background-color:var(--p-surface-100);border-radius:.75rem .75rem 0 0;padding:1rem 1.25rem}.mt-dialog .p-dialog-header .p-dialog-header-actions .p-dialog-close-button{background-color:#fff;border-radius:.3rem;justify-content:center;width:2rem;height:2rem}.mt-dialog .p-dialog-content{border-radius:.8rem;height:100%;overflow-y:hidden}.mt-dialog .p-dialog-content .mt-modal-content{height:100%;padding-bottom:5rem;overflow:auto}.mt-dialog .p-dialog-content .mt-modal-footer{background-color:var(--p-surface-100);justify-content:end;gap:10px;padding:.8rem 1.25rem;display:flex;position:sticky;bottom:0}.mt-drawer .p-drawer-content .mt-modal-content{height:calc(100% - 60px);overflow:auto}.mt-drawer .p-drawer-content .mt-modal-footer{border-top:1px solid var(--p-surface-200);justify-content:flex-end;gap:.5rem;height:15rem;padding:.75rem;display:flex}.mt-custom-drawer .p-drawer-header,.mt-custom-drawer .p-drawer-content,.mt-custom-drawer .p-drawer-footer,.mt-drawer .p-drawer-header,.mt-drawer .p-drawer-content,.mt-drawer .p-drawer-footer{padding:0}.mt-drawer .p-drawer-content,body:has(:is(.p-dialog-mask.p-overlay-mask,.p-drawer-mask.p-overlay-mask)){overflow:hidden}@keyframes enter{0%{opacity:var(--p-enter-opacity,1);transform:translate3d(var(--p-enter-translate-x,0),var(--p-enter-translate-y,0),0)scale3d(var(--p-enter-scale,1),var(--p-enter-scale,1),var(--p-enter-scale,1))rotate(var(--p-enter-rotate,0))}}@keyframes leave{to{opacity:var(--p-leave-opacity,1);transform:translate3d(var(--p-leave-translate-x,0),var(--p-leave-translate-y,0),0)scale3d(var(--p-leave-scale,1),var(--p-leave-scale,1),var(--p-leave-scale,1))rotate(var(--p-leave-rotate,0))}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-green-50:oklch(98.2% .018 155.826);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-blue-50:oklch(97% .014 254.604);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wider:.05em;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{label.required:after{content:"*";color:var(--p-red-500);padding-inline-start:2px}.dark label.required:after{color:var(--p-red-600)}}@layer utilities{.\@container{container-type:inline-size}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing)*0)}.right-3{right:calc(var(--spacing)*3)}.z-10{z-index:10}.order-1{order:1}.col-span-6{grid-column:span 6/span 6}.m-0{margin:calc(var(--spacing)*0)}.ms-2{margin-inline-start:calc(var(--spacing)*2)}.mt-2{margin-top:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.hidden\!{display:none!important}.inline{display:inline}.table{display:table}.size-full{width:100%;height:100%}.h-full{height:100%}.w-12{width:calc(var(--spacing)*12)}.w-72{width:calc(var(--spacing)*72)}.w-full{width:100%}.min-w-full{min-width:100%}.min-w-max{min-width:max-content}.flex-1{flex:1}.grow{flex-grow:1}.table-fixed{table-layout:fixed}.origin-top-right{transform-origin:100% 0}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*4)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-md{border-bottom-right-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.border,.border-1{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--p-content-border-color\){border-color:var(--p-content-border-color)}.border-\(--p-inputtext-invalid-border-color\)\!{border-color:var(--p-inputtext-invalid-border-color)!important}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-500{border-color:var(--color-gray-500)}.border-primary-400{border-color:var(--p-primary-400)}@supports (color:color-mix(in lab, red, red)){.border-primary-400{border-color:color-mix(in srgb,var(--p-primary-400)calc(100%*1),transparent)}}.border-surface{border-color:var(--p-content-border-color)}.border-surface-200{border-color:var(--p-surface-200)}@supports (color:color-mix(in lab, red, red)){.border-surface-200{border-color:color-mix(in srgb,var(--p-surface-200)calc(100%*1),transparent)}}.border-surface-300{border-color:var(--p-surface-300)}@supports (color:color-mix(in lab, red, red)){.border-surface-300{border-color:color-mix(in srgb,var(--p-surface-300)calc(100%*1),transparent)}}.\!bg-white{background-color:var(--color-white)!important}.bg-\(--p-inputtext-filled-background\){background-color:var(--p-inputtext-filled-background)}.bg-content{background-color:var(--p-content-background)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-primary-50{background-color:var(--p-primary-50)}@supports (color:color-mix(in lab, red, red)){.bg-primary-50{background-color:color-mix(in srgb,var(--p-primary-50)calc(100%*1),transparent)}}.bg-surface-50{background-color:var(--p-surface-50)}@supports (color:color-mix(in lab, red, red)){.bg-surface-50{background-color:color-mix(in srgb,var(--p-surface-50)calc(100%*1),transparent)}}.bg-white{background-color:var(--color-white)}.p-0{padding:calc(var(--spacing)*0)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-3{padding-block:calc(var(--spacing)*3)}.py-5{padding-block:calc(var(--spacing)*5)}.text-center{text-align:center}.text-end\!{text-align:end!important}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.align-super\!{vertical-align:super!important}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[\.95rem\]{font-size:.95rem}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-blue-600{color:var(--color-blue-600)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-muted-color{color:var(--p-text-muted-color)}.text-primary-400{color:var(--p-primary-400)}@supports (color:color-mix(in lab, red, red)){.text-primary-400{color:color-mix(in srgb,var(--p-primary-400)calc(100%*1),transparent)}}.text-primary-700{color:var(--p-primary-700)}@supports (color:color-mix(in lab, red, red)){.text-primary-700{color:color-mix(in srgb,var(--p-primary-700)calc(100%*1),transparent)}}.text-purple-600{color:var(--color-purple-600)}.text-red-600{color:var(--color-red-600)}.text-surface-500{color:var(--p-surface-500)}@supports (color:color-mix(in lab, red, red)){.text-surface-500{color:color-mix(in srgb,var(--p-surface-500)calc(100%*1),transparent)}}.text-yellow-600{color:var(--color-yellow-600)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-50{opacity:.5}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-black{--tw-ring-color:var(--color-black)}.ring-primary-200{--tw-ring-color:var(--p-primary-200)}@supports (color:color-mix(in lab, red, red)){.ring-primary-200{--tw-ring-color:color-mix(in srgb,var(--p-primary-200)calc(100%*1),transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{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,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:border-\(--p-inputtext-hover-border-color\)\!:hover{border-color:var(--p-inputtext-hover-border-color)!important}.hover\:border-gray-400:hover{border-color:var(--color-gray-400)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-green-50:hover{background-color:var(--color-green-50)}.hover\:bg-purple-50:hover{background-color:var(--color-purple-50)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-yellow-50:hover{background-color:var(--color-yellow-50)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-green-700:hover{color:var(--color-green-700)}.hover\:text-purple-700:hover{color:var(--color-purple-700)}.hover\:text-red-700:hover{color:var(--color-red-700)}.hover\:text-yellow-700:hover{color:var(--color-yellow-700)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@container (min-width:28rem){.\@md\:col-span-3{grid-column:span 3/span 3}}@container (min-width:42rem){.\@2xl\:col-span-2{grid-column:span 2/span 2}}.dark\:border-surface-500:where(.dark,.dark *){border-color:var(--p-surface-500)}@supports (color:color-mix(in lab, red, red)){.dark\:border-surface-500:where(.dark,.dark *){border-color:color-mix(in srgb,var(--p-surface-500)calc(100%*1),transparent)}}.dark\:bg-primary-800:where(.dark,.dark *){background-color:var(--p-primary-800)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-primary-800:where(.dark,.dark *){background-color:color-mix(in srgb,var(--p-primary-800)calc(100%*1),transparent)}}.dark\:bg-primary-900\/20:where(.dark,.dark *){background-color:var(--p-primary-900)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-primary-900\/20:where(.dark,.dark *){background-color:color-mix(in oklab,color-mix(in srgb,var(--p-primary-900)calc(100%*1),transparent)20%,transparent)}}.dark\:bg-surface-950:where(.dark,.dark *){background-color:var(--p-surface-950)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-surface-950:where(.dark,.dark *){background-color:color-mix(in srgb,var(--p-surface-950)calc(100%*1),transparent)}}.dark\:text-gray-50:where(.dark,.dark *){color:var(--color-gray-50)}.dark\:text-gray-100:where(.dark,.dark *){color:var(--color-gray-100)}.dark\:text-gray-300:where(.dark,.dark *){color:var(--color-gray-300)}.dark\:text-primary-300:where(.dark,.dark *){color:var(--p-primary-300)}@supports (color:color-mix(in lab, red, red)){.dark\:text-primary-300:where(.dark,.dark *){color:color-mix(in srgb,var(--p-primary-300)calc(100%*1),transparent)}}@media (hover:hover){.dark\:hover\:bg-gray-800:where(.dark,.dark *):hover{background-color:var(--color-gray-800)}.dark\:hover\:bg-surface-950:where(.dark,.dark *):hover{background-color:var(--p-surface-950)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-surface-950:where(.dark,.dark *):hover{background-color:color-mix(in srgb,var(--p-surface-950)calc(100%*1),transparent)}}.dark\:hover\:text-gray-100:where(.dark,.dark *):hover{color:var(--color-gray-100)}}}:root{--app-background:var(--p-surface-100)}:root[class=dark]{--app-background:var(--p-surface-950)}body{background-color:var(--app-background)}.mt-dialog .p-dialog-header{background-color:var(--p-surface-100);border-radius:.75rem .75rem 0 0;padding:1rem 1.25rem}.mt-dialog .p-dialog-header .p-dialog-header-actions .p-dialog-close-button{background-color:#fff;border-radius:.3rem;justify-content:center;width:2rem;height:2rem}.mt-dialog .p-dialog-content{border-radius:.8rem;height:100%;overflow-y:hidden}.mt-dialog .p-dialog-content .mt-modal-content{height:100%;padding-bottom:5rem;overflow:auto}.mt-dialog .p-dialog-content .mt-modal-footer{background-color:var(--p-surface-100);justify-content:end;gap:10px;padding:.8rem 1.25rem;display:flex;position:sticky;bottom:0}.mt-drawer .p-drawer-content .mt-modal-content{height:calc(100% - 60px);overflow:auto}.mt-drawer .p-drawer-content .mt-modal-footer{border-top:1px solid var(--p-surface-200);justify-content:flex-end;gap:.5rem;height:15rem;padding:.75rem;display:flex}.mt-custom-drawer .p-drawer-header,.mt-custom-drawer .p-drawer-content,.mt-custom-drawer .p-drawer-footer,.mt-drawer .p-drawer-header,.mt-drawer .p-drawer-content,.mt-drawer .p-drawer-footer{padding:0}.mt-drawer .p-drawer-content,body:has(:is(.p-dialog-mask.p-overlay-mask,.p-drawer-mask.p-overlay-mask)){overflow:hidden}@keyframes enter{0%{opacity:var(--p-enter-opacity,1);transform:translate3d(var(--p-enter-translate-x,0),var(--p-enter-translate-y,0),0)scale3d(var(--p-enter-scale,1),var(--p-enter-scale,1),var(--p-enter-scale,1))rotate(var(--p-enter-rotate,0))}}@keyframes leave{to{opacity:var(--p-leave-opacity,1);transform:translate3d(var(--p-leave-translate-x,0),var(--p-leave-translate-y,0),0)scale3d(var(--p-leave-scale,1),var(--p-leave-scale,1),var(--p-leave-scale,1))rotate(var(--p-leave-rotate,0))}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
|
|
@@ -3,7 +3,7 @@ import { input, booleanAttribute, output, Component } from '@angular/core';
|
|
|
3
3
|
import * as i1 from 'primeng/button';
|
|
4
4
|
import { ButtonModule } from 'primeng/button';
|
|
5
5
|
import { Icon } from '@masterteam/icons';
|
|
6
|
-
import { Tooltip } from '
|
|
6
|
+
import { Tooltip } from '@masterteam/components/tooltip';
|
|
7
7
|
|
|
8
8
|
class Button {
|
|
9
9
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
@@ -54,14 +54,14 @@ class Button {
|
|
|
54
54
|
onFocus = output();
|
|
55
55
|
onBlur = output();
|
|
56
56
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: Button, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
57
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: Button, isStandalone: true, selector: "mt-button", inputs: { iconText: { classPropertyName: "iconText", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, badgeSeverity: { classPropertyName: "badgeSeverity", publicName: "badgeSeverity", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, iconPos: { classPropertyName: "iconPos", publicName: "iconPos", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: true, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: true, isRequired: false, transformFunction: null }, link: { classPropertyName: "link", publicName: "link", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, host: { properties: { "class.w-full": "fluid()" }, classAttribute: "grid gap-1" }, ngImport: i0, template: "<p-button\n [fluid]=\"fluid()\"\n [severity]=\"severity()\"\n [size]=\"size()\"\n [label]=\"label()\"\n [
|
|
57
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: Button, isStandalone: true, selector: "mt-button", inputs: { iconText: { classPropertyName: "iconText", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, badgeSeverity: { classPropertyName: "badgeSeverity", publicName: "badgeSeverity", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, iconPos: { classPropertyName: "iconPos", publicName: "iconPos", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: true, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: true, isRequired: false, transformFunction: null }, link: { classPropertyName: "link", publicName: "link", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, host: { properties: { "class.w-full": "fluid()" }, classAttribute: "grid gap-1" }, ngImport: i0, template: "<p-button\n [fluid]=\"fluid()\"\n [severity]=\"severity()\"\n [size]=\"size()\"\n [label]=\"label()\"\n [mtTooltip]=\"tooltip()\"\n tooltipPosition=\"top\"\n [iconPos]=\"iconPos()\"\n [type]=\"type()\"\n [badge]=\"badge()\"\n [badgeSeverity]=\"badgeSeverity()\"\n [variant]=\"variant()\"\n [loading]=\"loading()\"\n [disabled]=\"disabled()\"\n [link]=\"link()\"\n [plain]=\"plain()\"\n [text]=\"text()\"\n [raised]=\"raised()\"\n [outlined]=\"outlined()\"\n [rounded]=\"rounded()\"\n [autofocus]=\"autofocus()\"\n [styleClass]=\"styleClass()\"\n (onClick)=\"onClick.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n (onBlur)=\"onBlur.emit($event)\"\n>\n @if (iconText()) {\n <ng-template #icon>\n <mt-icon\n [class.order-1]=\"iconPos() === 'end' || iconPos() === 'bottom'\"\n [icon]=\"iconText()\"\n />\n </ng-template>\n }\n\n <!-- <ng-template #loadingicon> -->\n <!-- <mt-icon -->\n <!-- class=\"p-icon-spin\" -->\n <!-- [class.order-1]=\"iconPos() === 'end' || iconPos() === 'bottom'\" -->\n <!-- icon=\"general.loading-01\" -->\n <!-- /> -->\n <!-- </ng-template> -->\n</p-button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: Icon, selector: "mt-icon", inputs: ["icon"] }, { kind: "directive", type: Tooltip, selector: "[mtTooltip]" }] });
|
|
58
58
|
}
|
|
59
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: Button, decorators: [{
|
|
60
60
|
type: Component,
|
|
61
61
|
args: [{ selector: 'mt-button', standalone: true, imports: [ButtonModule, Icon, Tooltip], host: {
|
|
62
62
|
class: 'grid gap-1',
|
|
63
63
|
'[class.w-full]': 'fluid()',
|
|
64
|
-
}, template: "<p-button\n [fluid]=\"fluid()\"\n [severity]=\"severity()\"\n [size]=\"size()\"\n [label]=\"label()\"\n [
|
|
64
|
+
}, template: "<p-button\n [fluid]=\"fluid()\"\n [severity]=\"severity()\"\n [size]=\"size()\"\n [label]=\"label()\"\n [mtTooltip]=\"tooltip()\"\n tooltipPosition=\"top\"\n [iconPos]=\"iconPos()\"\n [type]=\"type()\"\n [badge]=\"badge()\"\n [badgeSeverity]=\"badgeSeverity()\"\n [variant]=\"variant()\"\n [loading]=\"loading()\"\n [disabled]=\"disabled()\"\n [link]=\"link()\"\n [plain]=\"plain()\"\n [text]=\"text()\"\n [raised]=\"raised()\"\n [outlined]=\"outlined()\"\n [rounded]=\"rounded()\"\n [autofocus]=\"autofocus()\"\n [styleClass]=\"styleClass()\"\n (onClick)=\"onClick.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n (onBlur)=\"onBlur.emit($event)\"\n>\n @if (iconText()) {\n <ng-template #icon>\n <mt-icon\n [class.order-1]=\"iconPos() === 'end' || iconPos() === 'bottom'\"\n [icon]=\"iconText()\"\n />\n </ng-template>\n }\n\n <!-- <ng-template #loadingicon> -->\n <!-- <mt-icon -->\n <!-- class=\"p-icon-spin\" -->\n <!-- [class.order-1]=\"iconPos() === 'end' || iconPos() === 'bottom'\" -->\n <!-- icon=\"general.loading-01\" -->\n <!-- /> -->\n <!-- </ng-template> -->\n</p-button>\n" }]
|
|
65
65
|
}] });
|
|
66
66
|
|
|
67
67
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-button.mjs","sources":["../../../../packages/masterteam/components/button/button.ts","../../../../packages/masterteam/components/button/button.html","../../../../packages/masterteam/components/button/masterteam-components-button.ts"],"sourcesContent":["import { Component, input, booleanAttribute, output } from '@angular/core';\nimport { ButtonModule, ButtonProps, ButtonSeverity } from 'primeng/button';\nimport { Icon, MTIcon } from '@masterteam/icons';\nimport { Tooltip } from '
|
|
1
|
+
{"version":3,"file":"masterteam-components-button.mjs","sources":["../../../../packages/masterteam/components/button/button.ts","../../../../packages/masterteam/components/button/button.html","../../../../packages/masterteam/components/button/masterteam-components-button.ts"],"sourcesContent":["import { Component, input, booleanAttribute, output } from '@angular/core';\nimport { ButtonModule, ButtonProps, ButtonSeverity } from 'primeng/button';\nimport { Icon, MTIcon } from '@masterteam/icons';\nimport { Tooltip } from '@masterteam/components/tooltip';\n\n@Component({\n selector: 'mt-button',\n standalone: true,\n imports: [ButtonModule, Icon, Tooltip],\n templateUrl: './button.html',\n styleUrls: ['./button.scss'],\n host: {\n class: 'grid gap-1',\n '[class.w-full]': 'fluid()',\n },\n})\nexport class Button {\n // eslint-disable-next-line @angular-eslint/no-input-rename\n readonly iconText = input<MTIcon>(undefined, { alias: 'icon' });\n readonly label = input<string>();\n readonly tooltip = input<string>();\n readonly class = input<string>('');\n readonly type = input<string>('button');\n readonly styleClass = input<string>('');\n readonly severity = input<ButtonSeverity>();\n readonly badge = input<string>();\n readonly variant = input<'text' | 'outlined' | undefined>();\n readonly badgeSeverity = input<\n | 'info'\n | 'success'\n | 'warn'\n | 'danger'\n | 'secondary'\n | 'contrast'\n | 'help'\n | 'primary'\n >('secondary');\n readonly size = input<'small' | 'large' | undefined>();\n readonly iconPos = input<'top' | 'bottom' | 'end' | undefined>();\n readonly autofocus = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly fluid = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly raised = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly rounded = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly text = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly plain = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly outlined = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly link = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly disabled = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly loading = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly pInputs = input<Partial<ButtonProps>>();\n\n onClick = output<MouseEvent>();\n onFocus = output<FocusEvent>();\n onBlur = output<FocusEvent>();\n}\n","<p-button\n [fluid]=\"fluid()\"\n [severity]=\"severity()\"\n [size]=\"size()\"\n [label]=\"label()\"\n [mtTooltip]=\"tooltip()\"\n tooltipPosition=\"top\"\n [iconPos]=\"iconPos()\"\n [type]=\"type()\"\n [badge]=\"badge()\"\n [badgeSeverity]=\"badgeSeverity()\"\n [variant]=\"variant()\"\n [loading]=\"loading()\"\n [disabled]=\"disabled()\"\n [link]=\"link()\"\n [plain]=\"plain()\"\n [text]=\"text()\"\n [raised]=\"raised()\"\n [outlined]=\"outlined()\"\n [rounded]=\"rounded()\"\n [autofocus]=\"autofocus()\"\n [styleClass]=\"styleClass()\"\n (onClick)=\"onClick.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n (onBlur)=\"onBlur.emit($event)\"\n>\n @if (iconText()) {\n <ng-template #icon>\n <mt-icon\n [class.order-1]=\"iconPos() === 'end' || iconPos() === 'bottom'\"\n [icon]=\"iconText()\"\n />\n </ng-template>\n }\n\n <!-- <ng-template #loadingicon> -->\n <!-- <mt-icon -->\n <!-- class=\"p-icon-spin\" -->\n <!-- [class.order-1]=\"iconPos() === 'end' || iconPos() === 'bottom'\" -->\n <!-- icon=\"general.loading-01\" -->\n <!-- /> -->\n <!-- </ng-template> -->\n</p-button>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -73,7 +73,7 @@ class ColorPickerField {
|
|
|
73
73
|
this.disabled.set(disabled);
|
|
74
74
|
}
|
|
75
75
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: ColorPickerField, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
76
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: ColorPickerField, isStandalone: true, selector: "mt-color-picker-field", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange" }, host: { properties: { "class": "class()" } }, viewQueries: [{ propertyName: "colorPicker", first: true, predicate: ["colorPicker"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"flex flex-col gap-1 min-w-full\">\n @if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n }\n <div\n class=\"flex items-center hover:border-(--p-inputtext-hover-border-color)! p-inputtext\"\n [class.bg-(--p-inputtext-filled-background)]=\"variant() === 'filled'\"\n [class.border-(--p-inputtext-invalid-border-color)!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n >\n <p-colorpicker\n #colorPicker=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"leading-none\"\n [invalid]=\"isInvalid(ngControl?.control)\"\n ></p-colorpicker>\n <div class=\"ms-2 w-full\">\n <mt-text-field\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (change)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"No color selected\"\n class=\"leading-none min-w-max p-0 input-no-border px-0\"\n hint=\"Should be a hex color code, e.g. #ff5733 or #f00\"\n ></mt-text-field>\n </div>\n </div>\n <mt-field-validation [control]=\"ngControl?.control\"></mt-field-validation>\n</div>\n", styles: [":host{display:flex;align-items:center}::ng-deep .input-no-border .p-component{border:none;box-shadow:none;background-color:transparent;width:100%}::ng-deep .input-no-border .p-inputgroupaddon{border-inline:none;border-block-start:none;border-block-end:none;padding:0!important}::ng-deep .input-no-border .p-inputgroupaddon:last-child{border-inline-end:none}::ng-deep .p-inputtext .p-inputtext{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ColorPickerModule }, { kind: "component", type: i2.ColorPicker, selector: "p-colorPicker, p-colorpicker, p-color-picker", inputs: ["styleClass", "inline", "format", "tabindex", "inputId", "autoZIndex", "showTransitionOptions", "hideTransitionOptions", "autofocus", "defaultColor", "appendTo"], outputs: ["onChange", "onShow", "onHide"] }, { kind: "component", type: FieldValidation, selector: "mt-field-validation", inputs: ["control", "touched"] }, { kind: "component", type: TextField, selector: "mt-text-field", inputs: ["field", "hint", "label", "placeholder", "class", "type", "readonly", "pInputs", "
|
|
76
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: ColorPickerField, isStandalone: true, selector: "mt-color-picker-field", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange" }, host: { properties: { "class": "class()" } }, viewQueries: [{ propertyName: "colorPicker", first: true, predicate: ["colorPicker"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"flex flex-col gap-1 min-w-full\">\n @if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n }\n <div\n class=\"flex items-center hover:border-(--p-inputtext-hover-border-color)! p-inputtext\"\n [class.bg-(--p-inputtext-filled-background)]=\"variant() === 'filled'\"\n [class.border-(--p-inputtext-invalid-border-color)!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n >\n <p-colorpicker\n #colorPicker=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"leading-none\"\n [invalid]=\"isInvalid(ngControl?.control)\"\n ></p-colorpicker>\n <div class=\"ms-2 w-full\">\n <mt-text-field\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (change)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"No color selected\"\n class=\"leading-none min-w-max p-0 input-no-border px-0\"\n hint=\"Should be a hex color code, e.g. #ff5733 or #f00\"\n ></mt-text-field>\n </div>\n </div>\n <mt-field-validation [control]=\"ngControl?.control\"></mt-field-validation>\n</div>\n", styles: [":host{display:flex;align-items:center}::ng-deep .input-no-border .p-component{border:none;box-shadow:none;background-color:transparent;width:100%}::ng-deep .input-no-border .p-inputgroupaddon{border-inline:none;border-block-start:none;border-block-end:none;padding:0!important}::ng-deep .input-no-border .p-inputgroupaddon:last-child{border-inline-end:none}::ng-deep .p-inputtext .p-inputtext{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ColorPickerModule }, { kind: "component", type: i2.ColorPicker, selector: "p-colorPicker, p-colorpicker, p-color-picker", inputs: ["styleClass", "inline", "format", "tabindex", "inputId", "autoZIndex", "showTransitionOptions", "hideTransitionOptions", "autofocus", "defaultColor", "appendTo"], outputs: ["onChange", "onShow", "onHide"] }, { kind: "component", type: FieldValidation, selector: "mt-field-validation", inputs: ["control", "touched"] }, { kind: "component", type: TextField, selector: "mt-text-field", inputs: ["field", "hint", "label", "placeholder", "class", "type", "readonly", "pInputs", "required", "icon", "iconPosition"] }] });
|
|
77
77
|
}
|
|
78
78
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: ColorPickerField, decorators: [{
|
|
79
79
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-color-picker-field.mjs","sources":["../../../../packages/masterteam/components/color-picker-field/color-picker-field.ts","../../../../packages/masterteam/components/color-picker-field/color-picker-field.html","../../../../packages/masterteam/components/color-picker-field/masterteam-components-color-picker-field.ts"],"sourcesContent":["import {\n Component,\n ViewChild,\n signal,\n input,\n output,\n inject,\n effect,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport {\n ColorPickerModule,\n ColorPicker,\n ColorPickerChangeEvent,\n} from 'primeng/colorpicker';\nimport { FieldValidation } from '@masterteam/components/field-validation';\nimport { TextField } from '@masterteam/components/text-field';\nimport { isInvalid } from '@masterteam/components';\n\n@Component({\n selector: 'mt-color-picker-field',\n standalone: true,\n imports: [FormsModule, ColorPickerModule, FieldValidation, TextField],\n templateUrl: './color-picker-field.html',\n styleUrls: ['./color-picker-field.scss'],\n host: {\n '[class]': 'class()',\n },\n})\nexport class ColorPickerField implements ControlValueAccessor {\n @ViewChild('colorPicker', { static: true })\n colorPicker: ColorPicker;\n\n label = input<string>();\n placeholder = input<string>();\n class = input<string>('');\n variant = input<'outlined' | 'filled'>('outlined');\n readonly = input<boolean>(false);\n pInputs = input<Partial<ColorPicker>>();\n required = input<boolean>(false);\n\n onChange = output<ColorPickerChangeEvent>();\n\n public ngControl = inject(NgControl, { self: true });\n\n requiredValidator = Validators.required;\n value = signal<string | null>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: string | null) => void = () => {};\n isInvalid = isInvalid;\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n\n // Effect to apply pInputs reactively when the pInputs signal changes\n effect(() => {\n const currentPInputs = this.pInputs();\n // Ensure colorPicker ViewChild is initialized and pInputs has a value\n // @ViewChild with static: true makes 'colorPicker' available during construction/ngOnInit\n if (this.colorPicker && currentPInputs) {\n this.applyInputsToColorPicker();\n }\n });\n\n // Effect to add required validator if required input is true\n effect(() => {\n if (this.ngControl.control && this.required()) {\n this.ngControl.control.addValidators(Validators.required);\n this.ngControl.control.updateValueAndValidity();\n }\n if (this.ngControl.control) {\n this.ngControl.control.addValidators(\n Validators.pattern(/^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/),\n );\n }\n });\n }\n\n applyInputsToColorPicker() {\n const currentPInputs = this.pInputs();\n if (currentPInputs) {\n Object.assign(this.colorPicker, currentPInputs);\n }\n }\n\n onValueChange(value: string | null) {\n this.onModelChange(value);\n this.onTouched();\n this.value.set(value);\n }\n\n writeValue(value: string | null) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","<div class=\"flex flex-col gap-1 min-w-full\">\n @if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n }\n <div\n class=\"flex items-center hover:border-(--p-inputtext-hover-border-color)! p-inputtext\"\n [class.bg-(--p-inputtext-filled-background)]=\"variant() === 'filled'\"\n [class.border-(--p-inputtext-invalid-border-color)!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n >\n <p-colorpicker\n #colorPicker=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"leading-none\"\n [invalid]=\"isInvalid(ngControl?.control)\"\n ></p-colorpicker>\n <div class=\"ms-2 w-full\">\n <mt-text-field\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (change)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"No color selected\"\n class=\"leading-none min-w-max p-0 input-no-border px-0\"\n hint=\"Should be a hex color code, e.g. #ff5733 or #f00\"\n ></mt-text-field>\n </div>\n </div>\n <mt-field-validation [control]=\"ngControl?.control\"></mt-field-validation>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"masterteam-components-color-picker-field.mjs","sources":["../../../../packages/masterteam/components/color-picker-field/color-picker-field.ts","../../../../packages/masterteam/components/color-picker-field/color-picker-field.html","../../../../packages/masterteam/components/color-picker-field/masterteam-components-color-picker-field.ts"],"sourcesContent":["import {\n Component,\n ViewChild,\n signal,\n input,\n output,\n inject,\n effect,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport {\n ColorPickerModule,\n ColorPicker,\n ColorPickerChangeEvent,\n} from 'primeng/colorpicker';\nimport { FieldValidation } from '@masterteam/components/field-validation';\nimport { TextField } from '@masterteam/components/text-field';\nimport { isInvalid } from '@masterteam/components';\n\n@Component({\n selector: 'mt-color-picker-field',\n standalone: true,\n imports: [FormsModule, ColorPickerModule, FieldValidation, TextField],\n templateUrl: './color-picker-field.html',\n styleUrls: ['./color-picker-field.scss'],\n host: {\n '[class]': 'class()',\n },\n})\nexport class ColorPickerField implements ControlValueAccessor {\n @ViewChild('colorPicker', { static: true })\n colorPicker: ColorPicker;\n\n label = input<string>();\n placeholder = input<string>();\n class = input<string>('');\n variant = input<'outlined' | 'filled'>('outlined');\n readonly = input<boolean>(false);\n pInputs = input<Partial<ColorPicker>>();\n required = input<boolean>(false);\n\n onChange = output<ColorPickerChangeEvent>();\n\n public ngControl = inject(NgControl, { self: true });\n\n requiredValidator = Validators.required;\n value = signal<string | null>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: string | null) => void = () => {};\n isInvalid = isInvalid;\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n\n // Effect to apply pInputs reactively when the pInputs signal changes\n effect(() => {\n const currentPInputs = this.pInputs();\n // Ensure colorPicker ViewChild is initialized and pInputs has a value\n // @ViewChild with static: true makes 'colorPicker' available during construction/ngOnInit\n if (this.colorPicker && currentPInputs) {\n this.applyInputsToColorPicker();\n }\n });\n\n // Effect to add required validator if required input is true\n effect(() => {\n if (this.ngControl.control && this.required()) {\n this.ngControl.control.addValidators(Validators.required);\n this.ngControl.control.updateValueAndValidity();\n }\n if (this.ngControl.control) {\n this.ngControl.control.addValidators(\n Validators.pattern(/^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/),\n );\n }\n });\n }\n\n applyInputsToColorPicker() {\n const currentPInputs = this.pInputs();\n if (currentPInputs) {\n Object.assign(this.colorPicker, currentPInputs);\n }\n }\n\n onValueChange(value: string | null) {\n this.onModelChange(value);\n this.onTouched();\n this.value.set(value);\n }\n\n writeValue(value: string | null) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","<div class=\"flex flex-col gap-1 min-w-full\">\n @if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n }\n <div\n class=\"flex items-center hover:border-(--p-inputtext-hover-border-color)! p-inputtext\"\n [class.bg-(--p-inputtext-filled-background)]=\"variant() === 'filled'\"\n [class.border-(--p-inputtext-invalid-border-color)!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n >\n <p-colorpicker\n #colorPicker=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"leading-none\"\n [invalid]=\"isInvalid(ngControl?.control)\"\n ></p-colorpicker>\n <div class=\"ms-2 w-full\">\n <mt-text-field\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (change)=\"onChange.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"No color selected\"\n class=\"leading-none min-w-max p-0 input-no-border px-0\"\n hint=\"Should be a hex color code, e.g. #ff5733 or #f00\"\n ></mt-text-field>\n </div>\n </div>\n <mt-field-validation [control]=\"ngControl?.control\"></mt-field-validation>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -334,7 +334,7 @@ class FormulaBuilder {
|
|
|
334
334
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: FormulaBuilder, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
335
335
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: FormulaBuilder, isStandalone: true, selector: "mt-formula-builder", inputs: { hideTitle: { classPropertyName: "hideTitle", publicName: "hideTitle", isSignal: true, isRequired: false, transformFunction: null }, properties: { classPropertyName: "properties", publicName: "properties", isSignal: true, isRequired: false, transformFunction: null }, validationUrl: { classPropertyName: "validationUrl", publicName: "validationUrl", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"@container w-full flex flex-col gap-2\">\n @if (!hideTitle()) {\n <h6 class=\"m-0\" translate>formula-builder.formula-builder</h6>\n }\n @if (!disabled()) {\n <div class=\"grid grid-cols-6 gap-2\">\n @if (properties()?.length) {\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <mt-select-field\n #propertyDropdown=\"\"\n (onChange)=\"onAddProperty($event, propertyDropdown)\"\n label=\"formula-builder.property\"\n selectId=\"-1\"\n placeholder=\"{{ 'formula-builder.select-property' }}\"\n styleClass=\"w-full\"\n [filter]=\"true\"\n filterBy=\"name\"\n [ngModel]=\"null\"\n [options]=\"properties()\"\n optionLabel=\"name\"\n dataKey=\"key\"\n appendTo=\"body\"\n ></mt-select-field>\n </div>\n }\n @if (functions?.length) {\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <mt-select-field\n #functionDropdown=\"\"\n label=\"formula-builder.function\"\n (onChange)=\"onAddFunction($event, functionDropdown)\"\n selectId=\"-1\"\n placeholder=\"{{ 'formula-builder.select-function' }}\"\n styleClass=\"w-full\"\n [filter]=\"true\"\n filterBy=\"name\"\n [ngModel]=\"null\"\n [options]=\"functions\"\n optionLabel=\"name\"\n dataKey=\"key\"\n appendTo=\"body\"\n ></mt-select-field>\n </div>\n }\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <label for=\"configuration\" translate>formula-builder.operators</label>\n <div dir=\"ltr\" class=\"flex flex-wrap gap-1\">\n @for (operator of operators; track operator) {\n <mt-button\n type=\"button\"\n [outlined]=\"true\"\n [label]=\"operator.name\"\n (click)=\"onAdd(operator)\"\n >\n </mt-button>\n }\n </div>\n </div>\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <label for=\"configuration\" translate\n >formula-builder.custom-value</label\n >\n <p-input-group>\n <mt-text-field\n #customInput\n type=\"text\"\n [field]=\"false\"\n [placeholder]=\"'formula-builder.custom-value'\"\n style=\"width: 100%\"\n ></mt-text-field>\n <p-inputgroup-addon>\n <mt-button\n class=\"\"\n type=\"button\"\n (click)=\"onAddValue(customInput)\"\n [disabled]=\"disabled() || !customInput.value()\"\n label=\"\"\n icon=\"general.plus\"\n ></mt-button>\n </p-inputgroup-addon>\n </p-input-group>\n </div>\n </div>\n }\n <div>\n <label for=\"configuration\" translate>formula-builder.formula</label>\n <div\n dir=\"ltr\"\n cdkDropList=\"\"\n cdkDropListOrientation=\"mixed\"\n [cdkDropListData]=\"formula()\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"disabled()\"\n class=\"flex flex-wrap gap-1 rounded-lg border-1 border-gray-500 bg-gray-50 p-2 formula-preview\"\n >\n @for (item of formula(); track item; let i = $index) {\n <p-chip\n [style]=\"{\n background: types[item.type]?.bg ?? 'var(--p-gary-50)',\n borderColor: types[item.type]?.border ?? 'var(--p-gary-500)',\n }\"\n styleClass=\"text-black-alpha-90 border-1 border-round cursor-grab\"\n [label]=\"item.name\"\n [removable]=\"!disabled()\"\n (onRemove)=\"onRemove(i)\"\n [cdkDragDisabled]=\"disabled()\"\n cdkDrag=\"\"\n ></p-chip>\n }\n </div>\n </div>\n</div>\n", styles: [":host .formula-preview{border-color:var(--p-gray-500);min-height:60px}:host.ng-valid .formula-preview{border-color:var(--p-green-500)}:host.ng-invalid .formula-preview{border-color:var(--p-red-500)}:host ::ng-deep .cdk-drop-list{display:flex}:host ::ng-deep .cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;z-index:1000}:host ::ng-deep .cdk-drag-placeholder{opacity:.5}:host ::ng-deep .cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}:host ::ng-deep .formula-preview.cdk-drop-list-dragging .formula-preview:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}::ng-deep .p-inputgroupaddon:first-child .p-inputtext,::ng-deep .p-inputgroup>mt-text-field:first-child .p-inputtext{height:100%;width:100%;border-radius:0;border-start-start-radius:var(--p-inputgroup-addon-border-radius);border-end-start-radius:var(--p-inputgroup-addon-border-radius)}::ng-deep .p-inputgroupaddon:first-child,::ng-deep .p-inputgroup>p-autocomplete:first-child{width:100%}::ng-deep .p-inputgroupaddon:first-child>div,::ng-deep .p-inputgroup>p-autocomplete:first-child>div{width:100%;height:100%}::ng-deep .p-inputgroupaddon:first-child>div ul,::ng-deep .p-inputgroup>p-autocomplete:first-child>div ul{border-radius:0;border-start-start-radius:var(--p-inputgroup-addon-border-radius);border-end-start-radius:var(--p-inputgroup-addon-border-radius)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SelectField, selector: "mt-select-field", inputs: ["field", "label", "placeholder", "hasPlaceholderPrefix", "class", "readonly", "pInputs", "options", "optionValue", "optionLabel", "filter", "filterBy", "dataKey", "showClear", "clearAfterSelect", "required"], outputs: ["onChange"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "component", type: Button, selector: "mt-button", inputs: ["icon", "label", "tooltip", "class", "type", "styleClass", "severity", "badge", "variant", "badgeSeverity", "size", "iconPos", "autofocus", "fluid", "raised", "rounded", "text", "plain", "outlined", "link", "disabled", "loading", "pInputs"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ChipModule }, { kind: "component", type: i2.Chip, selector: "p-chip", inputs: ["label", "icon", "image", "alt", "styleClass", "removable", "removeIcon", "chipProps"], outputs: ["onRemove", "onImageError"] }, { kind: "ngmodule", type:
|
|
336
336
|
// TranslateModule,
|
|
337
|
-
DragDropModule }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: InputGroupModule }, { kind: "component", type: i4.InputGroup, selector: "p-inputgroup, p-inputGroup, p-input-group", inputs: ["styleClass"] }, { kind: "ngmodule", type: InputGroupAddonModule }, { kind: "component", type: i5.InputGroupAddon, selector: "p-inputgroup-addon, p-inputGroupAddon", inputs: ["style", "styleClass"] }, { kind: "component", type: TextField, selector: "mt-text-field", inputs: ["field", "hint", "label", "placeholder", "class", "type", "readonly", "pInputs", "
|
|
337
|
+
DragDropModule }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: InputGroupModule }, { kind: "component", type: i4.InputGroup, selector: "p-inputgroup, p-inputGroup, p-input-group", inputs: ["styleClass"] }, { kind: "ngmodule", type: InputGroupAddonModule }, { kind: "component", type: i5.InputGroupAddon, selector: "p-inputgroup-addon, p-inputGroupAddon", inputs: ["style", "styleClass"] }, { kind: "component", type: TextField, selector: "mt-text-field", inputs: ["field", "hint", "label", "placeholder", "class", "type", "readonly", "pInputs", "required", "icon", "iconPosition"] }] });
|
|
338
338
|
}
|
|
339
339
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: FormulaBuilder, decorators: [{
|
|
340
340
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-formula-builder.mjs","sources":["../../../../packages/masterteam/components/formula-builder/formula-builder.utils.ts","../../../../packages/masterteam/components/formula-builder/formula-builder.ts","../../../../packages/masterteam/components/formula-builder/formula-builder.html","../../../../packages/masterteam/components/formula-builder/masterteam-components-formula-builder.ts"],"sourcesContent":["export const types = {\n function: {\n bg: 'var(--p-green-50)',\n border: 'var(--p-green-500)',\n },\n value: {\n bg: 'var(--p-purple-100)',\n border: 'var(--p-purple-500)',\n },\n field: {\n bg: 'var(--p-orange-50)',\n border: 'var(--p-orange-500)',\n },\n operator: {\n bg: 'var(--p-primary-50)',\n border: 'var(--p-primary-500)',\n },\n};\n\nexport const operators = [\n {\n key: '+',\n name: '+',\n type: 'operator',\n },\n {\n key: '-',\n name: '-',\n type: 'operator',\n },\n {\n key: '*',\n name: '×',\n type: 'operator',\n },\n {\n key: '/',\n name: '÷',\n type: 'operator',\n },\n // {\n // key: '==',\n // name: '=',\n // type: 'operator',\n // },\n // {\n // key: '!=',\n // name: '≠',\n // type: 'operator',\n // },\n // {\n // key: '<',\n // name: '<',\n // type: 'operator',\n // },\n // {\n // key: '<=',\n // name: '≤',\n // type: 'operator',\n // },\n // {\n // key: '>',\n // name: '>',\n // type: 'operator',\n // },\n // {\n // key: '>=',\n // name: '≥',\n // type: 'operator',\n // },\n // {\n // key: '||',\n // name: '||',\n // type: 'operator',\n // },\n // {\n // key: '&&',\n // name: '&&',\n // type: 'operator',\n // },\n {\n key: '(',\n name: '(',\n type: 'operator',\n },\n {\n key: ')',\n name: ')',\n type: 'operator',\n },\n {\n key: ',',\n name: ',',\n type: 'operator',\n },\n {\n key: ';',\n name: ';',\n type: 'operator',\n },\n];\n","import {\n booleanAttribute,\n Component,\n computed,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n FormsModule,\n // NG_ASYNC_VALIDATORS,\n // NG_VALUE_ACCESSOR,\n ValidationErrors,\n} from '@angular/forms';\nimport {\n CdkDragDrop,\n DragDropModule,\n moveItemInArray,\n} from '@angular/cdk/drag-drop';\nimport { Button } from '@masterteam/components/button';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { ChipModule } from 'primeng/chip';\n// import { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { HttpClient } from '@angular/common/http';\nimport { catchError, EMPTY, map, Observable, of } from 'rxjs';\nimport { operators, types } from './formula-builder.utils';\nimport { SelectField } from '@masterteam/components/select-field';\nimport { InputGroupModule } from 'primeng/inputgroup';\nimport { InputGroupAddonModule } from 'primeng/inputgroupaddon';\nimport { TextField } from '@masterteam/components/text-field';\n\nexport interface FormulaBuilderProperty {\n key: string;\n name: string;\n dataType: string;\n}\n\n@Component({\n selector: 'mt-formula-builder',\n standalone: true,\n imports: [\n FormsModule,\n SelectField,\n InputTextModule,\n Button,\n ChipModule,\n // TranslateModule,\n DragDropModule,\n InputGroupModule,\n InputGroupAddonModule,\n TextField,\n ],\n // providers: [\n // {\n // provide: NG_VALUE_ACCESSOR,\n // multi: true,\n // useExisting: FormulaBuilder,\n // },\n // {\n // provide: NG_ASYNC_VALIDATORS,\n // multi: true,\n // useExisting: FormulaBuilder,\n // },\n // ],\n templateUrl: './formula-builder.html',\n styleUrls: ['./formula-builder.scss'],\n})\nexport class FormulaBuilder implements ControlValueAccessor {\n hideTitle = input<boolean, unknown>(false, { transform: booleanAttribute });\n properties = input<FormulaBuilderProperty[]>([]);\n // validationUrl = input<string>('app/checkformula');\n validationUrl = input<string>();\n\n httpClient: HttpClient = inject(HttpClient);\n // translateService: TranslateService = inject(TranslateService);\n\n // functions = computed(() => []);\n protected readonly functions: any[] = [\n {\n // name: this.translateService.instant('formula-builder.count'),\n name: 'formula-builder.count',\n key: 'count',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.sum'),\n name: 'formula-builder.sum',\n key: 'sum',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.average'),\n name: 'formula-builder.average',\n key: 'average',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.count-value'),\n name: 'formula-builder.count-value',\n key: 'countvalue',\n // hint: this.translateService.instant('formula-builder.count-value-hint'),\n hint: 'formula-builder.count-value-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.average-count'),\n name: 'formula-builder.average-count',\n key: 'averagecount',\n // hint: this.translateService.instant('formula-builder.average-count-hint'),\n hint: 'formula-builder.average-count-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.mode'),\n name: 'formula-builder.mode',\n key: 'mode',\n // hint: this.translateService.instant('formula-builder.mode-hint'),\n hint: 'formula-builder.mode-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.median'),\n name: 'formula-builder.median',\n key: 'median',\n // hint: this.translateService.instant('formula-builder.median-hint'),\n hint: 'formula-builder.median-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.standard-deviation'),\n name: 'formula-builder.standard-deviation',\n key: 'stddev',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.min-max'),\n name: 'formula-builder.min-max',\n key: 'range',\n // hint: this.translateService.instant('formula-builder.min-max-hint'),\n hint: 'formula-builder.min-max-hint',\n },\n ];\n selectedLookup = signal<any>(null);\n formula = signal<any[]>([]);\n disabled = signal<boolean>(false);\n touched = signal<boolean>(false);\n types = types;\n operators = operators;\n\n formulaText = computed<string>(() => {\n return '';\n });\n\n onChange(_formula: string) {}\n\n onTouched() {}\n\n emitChange() {\n const str = this.formula()\n .map((x) => x.key)\n .join(' ');\n this.onChange(str);\n }\n\n onAdd(item: any) {\n this.markAsTouched();\n if (!this.disabled()) {\n this.formula.update((formula) => [...formula, item]);\n this.emitChange();\n }\n }\n\n onRemove(index: number) {\n this.markAsTouched();\n if (!this.disabled()) {\n this.formula.update((formula) => {\n formula.splice(index, 1);\n return formula;\n });\n\n this.emitChange();\n }\n }\n\n onAddProperty(property: any, dropdown: SelectField) {\n if (!property?.key) return;\n this.onAdd({\n key: property.key,\n name: property.name,\n type: 'field',\n dataType: property?.dataType,\n });\n // TODO: fix input clearing\n dropdown?.clearSelection();\n this.selectedLookup.set(null);\n }\n\n onAddValue(el: TextField) {\n this.onAdd({\n key: el.value(),\n name: el.value(),\n type: 'value',\n });\n el.value.set('');\n }\n\n onAddFunction(func: any, dropdown: SelectField) {\n if (!func?.key) return;\n this.onAdd({\n key: func.key,\n name: func.name,\n type: 'function',\n });\n dropdown?.clearSelection();\n }\n\n writeValue(formulaString: string): void {\n if (formulaString) {\n this.formula.set(this.parseStringToItems(formulaString));\n }\n }\n\n registerOnChange(onChange: any) {\n this.onChange = onChange;\n }\n\n registerOnTouched(onTouched: any) {\n this.onTouched = onTouched;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled.set(isDisabled);\n }\n\n markAsTouched() {\n if (!this.touched()) {\n this.onTouched();\n this.touched.set(true);\n }\n }\n\n validate(control: AbstractControl): Observable<ValidationErrors | null> {\n const formula = control.value;\n\n if (this.validationUrl()) {\n const res$ = this.httpClient.post<any>(this.validationUrl() as string, {\n formula,\n });\n return res$.pipe(\n map(({ data }) => {\n return data ? null : { mustBeValidFormula: formula };\n }),\n catchError(() => {\n return EMPTY;\n }),\n );\n } else {\n return of(null);\n }\n }\n\n drop(event: CdkDragDrop<any[]>) {\n this.formula.update((formula) => {\n moveItemInArray(formula, event.previousIndex, event.currentIndex);\n return formula;\n });\n }\n\n parseStringToItems(strValue: string): any[] {\n if (!strValue || !strValue.trim()) return [];\n\n const tokens = strValue.split(/\\s+/);\n const results: any[] = [];\n\n tokens.forEach((token) => {\n let found: any = this.operators.find((el) => el.key === token);\n\n if (found) {\n results.push(found);\n return;\n }\n\n found = this.functions.find((el) => el.key === token);\n\n if (found) {\n results.push({\n key: token,\n name: found.name,\n type: 'function',\n });\n\n return;\n }\n\n found = this.properties().find((el) => el.key === token);\n\n if (found) {\n results.push({\n key: token,\n name: found.name,\n type: 'field',\n });\n return;\n }\n\n results.push({\n key: token,\n name: token,\n type: 'value',\n });\n });\n\n return results;\n }\n}\n","<div class=\"@container w-full flex flex-col gap-2\">\n @if (!hideTitle()) {\n <h6 class=\"m-0\" translate>formula-builder.formula-builder</h6>\n }\n @if (!disabled()) {\n <div class=\"grid grid-cols-6 gap-2\">\n @if (properties()?.length) {\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <mt-select-field\n #propertyDropdown=\"\"\n (onChange)=\"onAddProperty($event, propertyDropdown)\"\n label=\"formula-builder.property\"\n selectId=\"-1\"\n placeholder=\"{{ 'formula-builder.select-property' }}\"\n styleClass=\"w-full\"\n [filter]=\"true\"\n filterBy=\"name\"\n [ngModel]=\"null\"\n [options]=\"properties()\"\n optionLabel=\"name\"\n dataKey=\"key\"\n appendTo=\"body\"\n ></mt-select-field>\n </div>\n }\n @if (functions?.length) {\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <mt-select-field\n #functionDropdown=\"\"\n label=\"formula-builder.function\"\n (onChange)=\"onAddFunction($event, functionDropdown)\"\n selectId=\"-1\"\n placeholder=\"{{ 'formula-builder.select-function' }}\"\n styleClass=\"w-full\"\n [filter]=\"true\"\n filterBy=\"name\"\n [ngModel]=\"null\"\n [options]=\"functions\"\n optionLabel=\"name\"\n dataKey=\"key\"\n appendTo=\"body\"\n ></mt-select-field>\n </div>\n }\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <label for=\"configuration\" translate>formula-builder.operators</label>\n <div dir=\"ltr\" class=\"flex flex-wrap gap-1\">\n @for (operator of operators; track operator) {\n <mt-button\n type=\"button\"\n [outlined]=\"true\"\n [label]=\"operator.name\"\n (click)=\"onAdd(operator)\"\n >\n </mt-button>\n }\n </div>\n </div>\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <label for=\"configuration\" translate\n >formula-builder.custom-value</label\n >\n <p-input-group>\n <mt-text-field\n #customInput\n type=\"text\"\n [field]=\"false\"\n [placeholder]=\"'formula-builder.custom-value'\"\n style=\"width: 100%\"\n ></mt-text-field>\n <p-inputgroup-addon>\n <mt-button\n class=\"\"\n type=\"button\"\n (click)=\"onAddValue(customInput)\"\n [disabled]=\"disabled() || !customInput.value()\"\n label=\"\"\n icon=\"general.plus\"\n ></mt-button>\n </p-inputgroup-addon>\n </p-input-group>\n </div>\n </div>\n }\n <div>\n <label for=\"configuration\" translate>formula-builder.formula</label>\n <div\n dir=\"ltr\"\n cdkDropList=\"\"\n cdkDropListOrientation=\"mixed\"\n [cdkDropListData]=\"formula()\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"disabled()\"\n class=\"flex flex-wrap gap-1 rounded-lg border-1 border-gray-500 bg-gray-50 p-2 formula-preview\"\n >\n @for (item of formula(); track item; let i = $index) {\n <p-chip\n [style]=\"{\n background: types[item.type]?.bg ?? 'var(--p-gary-50)',\n borderColor: types[item.type]?.border ?? 'var(--p-gary-500)',\n }\"\n styleClass=\"text-black-alpha-90 border-1 border-round cursor-grab\"\n [label]=\"item.name\"\n [removable]=\"!disabled()\"\n (onRemove)=\"onRemove(i)\"\n [cdkDragDisabled]=\"disabled()\"\n cdkDrag=\"\"\n ></p-chip>\n }\n </div>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"masterteam-components-formula-builder.mjs","sources":["../../../../packages/masterteam/components/formula-builder/formula-builder.utils.ts","../../../../packages/masterteam/components/formula-builder/formula-builder.ts","../../../../packages/masterteam/components/formula-builder/formula-builder.html","../../../../packages/masterteam/components/formula-builder/masterteam-components-formula-builder.ts"],"sourcesContent":["export const types = {\n function: {\n bg: 'var(--p-green-50)',\n border: 'var(--p-green-500)',\n },\n value: {\n bg: 'var(--p-purple-100)',\n border: 'var(--p-purple-500)',\n },\n field: {\n bg: 'var(--p-orange-50)',\n border: 'var(--p-orange-500)',\n },\n operator: {\n bg: 'var(--p-primary-50)',\n border: 'var(--p-primary-500)',\n },\n};\n\nexport const operators = [\n {\n key: '+',\n name: '+',\n type: 'operator',\n },\n {\n key: '-',\n name: '-',\n type: 'operator',\n },\n {\n key: '*',\n name: '×',\n type: 'operator',\n },\n {\n key: '/',\n name: '÷',\n type: 'operator',\n },\n // {\n // key: '==',\n // name: '=',\n // type: 'operator',\n // },\n // {\n // key: '!=',\n // name: '≠',\n // type: 'operator',\n // },\n // {\n // key: '<',\n // name: '<',\n // type: 'operator',\n // },\n // {\n // key: '<=',\n // name: '≤',\n // type: 'operator',\n // },\n // {\n // key: '>',\n // name: '>',\n // type: 'operator',\n // },\n // {\n // key: '>=',\n // name: '≥',\n // type: 'operator',\n // },\n // {\n // key: '||',\n // name: '||',\n // type: 'operator',\n // },\n // {\n // key: '&&',\n // name: '&&',\n // type: 'operator',\n // },\n {\n key: '(',\n name: '(',\n type: 'operator',\n },\n {\n key: ')',\n name: ')',\n type: 'operator',\n },\n {\n key: ',',\n name: ',',\n type: 'operator',\n },\n {\n key: ';',\n name: ';',\n type: 'operator',\n },\n];\n","import {\n booleanAttribute,\n Component,\n computed,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n FormsModule,\n // NG_ASYNC_VALIDATORS,\n // NG_VALUE_ACCESSOR,\n ValidationErrors,\n} from '@angular/forms';\nimport {\n CdkDragDrop,\n DragDropModule,\n moveItemInArray,\n} from '@angular/cdk/drag-drop';\nimport { Button } from '@masterteam/components/button';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { ChipModule } from 'primeng/chip';\n// import { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { HttpClient } from '@angular/common/http';\nimport { catchError, EMPTY, map, Observable, of } from 'rxjs';\nimport { operators, types } from './formula-builder.utils';\nimport { SelectField } from '@masterteam/components/select-field';\nimport { InputGroupModule } from 'primeng/inputgroup';\nimport { InputGroupAddonModule } from 'primeng/inputgroupaddon';\nimport { TextField } from '@masterteam/components/text-field';\n\nexport interface FormulaBuilderProperty {\n key: string;\n name: string;\n dataType: string;\n}\n\n@Component({\n selector: 'mt-formula-builder',\n standalone: true,\n imports: [\n FormsModule,\n SelectField,\n InputTextModule,\n Button,\n ChipModule,\n // TranslateModule,\n DragDropModule,\n InputGroupModule,\n InputGroupAddonModule,\n TextField,\n ],\n // providers: [\n // {\n // provide: NG_VALUE_ACCESSOR,\n // multi: true,\n // useExisting: FormulaBuilder,\n // },\n // {\n // provide: NG_ASYNC_VALIDATORS,\n // multi: true,\n // useExisting: FormulaBuilder,\n // },\n // ],\n templateUrl: './formula-builder.html',\n styleUrls: ['./formula-builder.scss'],\n})\nexport class FormulaBuilder implements ControlValueAccessor {\n hideTitle = input<boolean, unknown>(false, { transform: booleanAttribute });\n properties = input<FormulaBuilderProperty[]>([]);\n // validationUrl = input<string>('app/checkformula');\n validationUrl = input<string>();\n\n httpClient: HttpClient = inject(HttpClient);\n // translateService: TranslateService = inject(TranslateService);\n\n // functions = computed(() => []);\n protected readonly functions: any[] = [\n {\n // name: this.translateService.instant('formula-builder.count'),\n name: 'formula-builder.count',\n key: 'count',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.sum'),\n name: 'formula-builder.sum',\n key: 'sum',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.average'),\n name: 'formula-builder.average',\n key: 'average',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.count-value'),\n name: 'formula-builder.count-value',\n key: 'countvalue',\n // hint: this.translateService.instant('formula-builder.count-value-hint'),\n hint: 'formula-builder.count-value-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.average-count'),\n name: 'formula-builder.average-count',\n key: 'averagecount',\n // hint: this.translateService.instant('formula-builder.average-count-hint'),\n hint: 'formula-builder.average-count-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.mode'),\n name: 'formula-builder.mode',\n key: 'mode',\n // hint: this.translateService.instant('formula-builder.mode-hint'),\n hint: 'formula-builder.mode-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.median'),\n name: 'formula-builder.median',\n key: 'median',\n // hint: this.translateService.instant('formula-builder.median-hint'),\n hint: 'formula-builder.median-hint',\n },\n {\n // name: this.translateService.instant('formula-builder.standard-deviation'),\n name: 'formula-builder.standard-deviation',\n key: 'stddev',\n hint: '',\n },\n {\n // name: this.translateService.instant('formula-builder.min-max'),\n name: 'formula-builder.min-max',\n key: 'range',\n // hint: this.translateService.instant('formula-builder.min-max-hint'),\n hint: 'formula-builder.min-max-hint',\n },\n ];\n selectedLookup = signal<any>(null);\n formula = signal<any[]>([]);\n disabled = signal<boolean>(false);\n touched = signal<boolean>(false);\n types = types;\n operators = operators;\n\n formulaText = computed<string>(() => {\n return '';\n });\n\n onChange(_formula: string) {}\n\n onTouched() {}\n\n emitChange() {\n const str = this.formula()\n .map((x) => x.key)\n .join(' ');\n this.onChange(str);\n }\n\n onAdd(item: any) {\n this.markAsTouched();\n if (!this.disabled()) {\n this.formula.update((formula) => [...formula, item]);\n this.emitChange();\n }\n }\n\n onRemove(index: number) {\n this.markAsTouched();\n if (!this.disabled()) {\n this.formula.update((formula) => {\n formula.splice(index, 1);\n return formula;\n });\n\n this.emitChange();\n }\n }\n\n onAddProperty(property: any, dropdown: SelectField) {\n if (!property?.key) return;\n this.onAdd({\n key: property.key,\n name: property.name,\n type: 'field',\n dataType: property?.dataType,\n });\n // TODO: fix input clearing\n dropdown?.clearSelection();\n this.selectedLookup.set(null);\n }\n\n onAddValue(el: TextField) {\n this.onAdd({\n key: el.value(),\n name: el.value(),\n type: 'value',\n });\n el.value.set('');\n }\n\n onAddFunction(func: any, dropdown: SelectField) {\n if (!func?.key) return;\n this.onAdd({\n key: func.key,\n name: func.name,\n type: 'function',\n });\n dropdown?.clearSelection();\n }\n\n writeValue(formulaString: string): void {\n if (formulaString) {\n this.formula.set(this.parseStringToItems(formulaString));\n }\n }\n\n registerOnChange(onChange: any) {\n this.onChange = onChange;\n }\n\n registerOnTouched(onTouched: any) {\n this.onTouched = onTouched;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled.set(isDisabled);\n }\n\n markAsTouched() {\n if (!this.touched()) {\n this.onTouched();\n this.touched.set(true);\n }\n }\n\n validate(control: AbstractControl): Observable<ValidationErrors | null> {\n const formula = control.value;\n\n if (this.validationUrl()) {\n const res$ = this.httpClient.post<any>(this.validationUrl() as string, {\n formula,\n });\n return res$.pipe(\n map(({ data }) => {\n return data ? null : { mustBeValidFormula: formula };\n }),\n catchError(() => {\n return EMPTY;\n }),\n );\n } else {\n return of(null);\n }\n }\n\n drop(event: CdkDragDrop<any[]>) {\n this.formula.update((formula) => {\n moveItemInArray(formula, event.previousIndex, event.currentIndex);\n return formula;\n });\n }\n\n parseStringToItems(strValue: string): any[] {\n if (!strValue || !strValue.trim()) return [];\n\n const tokens = strValue.split(/\\s+/);\n const results: any[] = [];\n\n tokens.forEach((token) => {\n let found: any = this.operators.find((el) => el.key === token);\n\n if (found) {\n results.push(found);\n return;\n }\n\n found = this.functions.find((el) => el.key === token);\n\n if (found) {\n results.push({\n key: token,\n name: found.name,\n type: 'function',\n });\n\n return;\n }\n\n found = this.properties().find((el) => el.key === token);\n\n if (found) {\n results.push({\n key: token,\n name: found.name,\n type: 'field',\n });\n return;\n }\n\n results.push({\n key: token,\n name: token,\n type: 'value',\n });\n });\n\n return results;\n }\n}\n","<div class=\"@container w-full flex flex-col gap-2\">\n @if (!hideTitle()) {\n <h6 class=\"m-0\" translate>formula-builder.formula-builder</h6>\n }\n @if (!disabled()) {\n <div class=\"grid grid-cols-6 gap-2\">\n @if (properties()?.length) {\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <mt-select-field\n #propertyDropdown=\"\"\n (onChange)=\"onAddProperty($event, propertyDropdown)\"\n label=\"formula-builder.property\"\n selectId=\"-1\"\n placeholder=\"{{ 'formula-builder.select-property' }}\"\n styleClass=\"w-full\"\n [filter]=\"true\"\n filterBy=\"name\"\n [ngModel]=\"null\"\n [options]=\"properties()\"\n optionLabel=\"name\"\n dataKey=\"key\"\n appendTo=\"body\"\n ></mt-select-field>\n </div>\n }\n @if (functions?.length) {\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <mt-select-field\n #functionDropdown=\"\"\n label=\"formula-builder.function\"\n (onChange)=\"onAddFunction($event, functionDropdown)\"\n selectId=\"-1\"\n placeholder=\"{{ 'formula-builder.select-function' }}\"\n styleClass=\"w-full\"\n [filter]=\"true\"\n filterBy=\"name\"\n [ngModel]=\"null\"\n [options]=\"functions\"\n optionLabel=\"name\"\n dataKey=\"key\"\n appendTo=\"body\"\n ></mt-select-field>\n </div>\n }\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <label for=\"configuration\" translate>formula-builder.operators</label>\n <div dir=\"ltr\" class=\"flex flex-wrap gap-1\">\n @for (operator of operators; track operator) {\n <mt-button\n type=\"button\"\n [outlined]=\"true\"\n [label]=\"operator.name\"\n (click)=\"onAdd(operator)\"\n >\n </mt-button>\n }\n </div>\n </div>\n <div class=\"col-span-6 @md:col-span-3 @2xl:col-span-2\">\n <label for=\"configuration\" translate\n >formula-builder.custom-value</label\n >\n <p-input-group>\n <mt-text-field\n #customInput\n type=\"text\"\n [field]=\"false\"\n [placeholder]=\"'formula-builder.custom-value'\"\n style=\"width: 100%\"\n ></mt-text-field>\n <p-inputgroup-addon>\n <mt-button\n class=\"\"\n type=\"button\"\n (click)=\"onAddValue(customInput)\"\n [disabled]=\"disabled() || !customInput.value()\"\n label=\"\"\n icon=\"general.plus\"\n ></mt-button>\n </p-inputgroup-addon>\n </p-input-group>\n </div>\n </div>\n }\n <div>\n <label for=\"configuration\" translate>formula-builder.formula</label>\n <div\n dir=\"ltr\"\n cdkDropList=\"\"\n cdkDropListOrientation=\"mixed\"\n [cdkDropListData]=\"formula()\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"disabled()\"\n class=\"flex flex-wrap gap-1 rounded-lg border-1 border-gray-500 bg-gray-50 p-2 formula-preview\"\n >\n @for (item of formula(); track item; let i = $index) {\n <p-chip\n [style]=\"{\n background: types[item.type]?.bg ?? 'var(--p-gary-50)',\n borderColor: types[item.type]?.border ?? 'var(--p-gary-500)',\n }\"\n styleClass=\"text-black-alpha-90 border-1 border-round cursor-grab\"\n [label]=\"item.name\"\n [removable]=\"!disabled()\"\n (onRemove)=\"onRemove(i)\"\n [cdkDragDisabled]=\"disabled()\"\n cdkDrag=\"\"\n ></p-chip>\n }\n </div>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|