@public-ui/themes 1.7.6 → 1.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -301,7 +301,7 @@ var loglevel = {exports: {}};
301
301
  }));
302
302
  } (loglevel));
303
303
 
304
- const createTranslation=(e,t)=>o=>o(e,t),createTheme=(e,t)=>o=>o(e,t),STORE="object"==typeof window?window:"object"==typeof global?global:"object"==typeof self?self:{};const STYLING_TASK_QUEUE=new Map,HYDRATED_HISTORY=[],CSS_PROPERTIES_REGISTERED=new Set,CSS_STYLE_CACHE=new Map,REGEX_CSS_PROPERTIES=/--[^;]+/g,REGEX_SPLIT_CSS_PROPERTY=/:/;"object"==typeof STORE.A11yUi&&null!==STORE.A11yUi||(STORE.A11yUi={CSS_STYLE_CACHE:CSS_STYLE_CACHE,HYDRATED_HISTORY:HYDRATED_HISTORY,STYLING_TASK_QUEUE:STYLING_TASK_QUEUE});const extractProperties=(e,t)=>{let o=t.match(REGEX_CSS_PROPERTIES);if(Array.isArray(o)){o=o.filter((e=>REGEX_SPLIT_CSS_PROPERTY.test(e)));const t=document.createElement("style");t.innerHTML=`.${e} {${o.join(";")}}`,document.querySelector("head")?.appendChild(t);}CSS_PROPERTIES_REGISTERED.add(e);},getCssStyle=(e,t)=>"object"==typeof STORE.A11yUi&&null!==STORE.A11yUi&&"object"==typeof STORE.A11yUi.Themes&&null!==STORE.A11yUi.Themes&&"object"==typeof STORE.A11yUi.Themes[e]&&null!==STORE.A11yUi.Themes[e]&&"string"==typeof STORE.A11yUi.Themes[e][t]?STORE.A11yUi.Themes[e][t].replace(/\r?\n/g,""):"",removeStyle=e=>{for(const t of Array.from(e.childNodes)){if(!(t instanceof HTMLStyleElement&&"STYLE"===t.tagName))break;e.removeChild(t);}},patchStyle=(e,t)=>{try{const o=[];t.forEach((e=>{const t=new CSSStyleSheet;t.replaceSync(e),o.push(t);})),e.adoptedStyleSheets=o;}catch(o){t.reverse().forEach((t=>{const o=document.createElement("style");o.innerHTML=t,e.insertBefore(o,e.firstChild);}));}},encroachStyles=(e,t,o)=>{if(!1!==o){const s=[...Array.from(e.childNodes).filter((e=>e instanceof HTMLStyleElement&&"STYLE"===e.tagName))];let r;try{r=[...Array.from(e.adoptedStyleSheets)];}catch(e){r=[];}"before"===o?.mode?(s.reverse().forEach((e=>t.unshift(e.innerHTML))),r.reverse().forEach((e=>t.unshift(Array.from(e.cssRules).map((e=>e.cssText)).join(""))))):"after"===o?.mode&&(s.forEach((e=>t.push(e.innerHTML))),r.forEach((e=>t.push(Array.from(e.cssRules).map((e=>e.cssText)).join("")))));}},setThemeStyleAfterHydrated=(e,t,o)=>{const s=t.name||"default";let r;try{if(null===e.shadowRoot)throw new Error("ShadowRoot is null");r=e.shadowRoot;}catch(t){r=e;}if(CSS_STYLE_CACHE.get(s)?.has(e.tagName))switchStyle(e,r,CSS_STYLE_CACHE.get(s)?.get(e.tagName),o);else {const a=getCssStyle(s,"PROPERTIES"),n=getCssStyle(s,"GLOBAL"),l=getCssStyle(s,e.tagName);!1===CSS_PROPERTIES_REGISTERED.has(s)&&extractProperties(s,n);const i=[a,n,l];encroachStyles(r,i,t.encroachCss),"debug"===t.loglevel&&console.log(e.tagName,i),!0===t.cache&&(!1===CSS_STYLE_CACHE.has(s)&&CSS_STYLE_CACHE.set(s,new Map),CSS_STYLE_CACHE.get(s)?.set(e.tagName,i)),switchStyle(e,r,i,o);}},switchStyle=(e,t,o,s)=>{removeStyle(t),patchStyle(t,o),e.style.display=s;},logHydratedHistory=e=>{"debug"===e.loglevel&&HYDRATED_HISTORY.push({timestamp:Date.now(),numberOfTasks:STYLING_TASK_QUEUE.size});},deleteDoneTask=e=>{STYLING_TASK_QUEUE.delete(e);},loggedDeleteDoneTask=(e,t)=>{deleteDoneTask(e),logHydratedHistory(t);},observerCallback=e=>{for(const t of e)if(STYLING_TASK_QUEUE.has(t.target)&&t.target.classList.contains("hydrated")){const{styleDisplay:e,themeDetails:o}=STYLING_TASK_QUEUE.get(t.target);setThemeStyleAfterHydrated(t.target,o,e),loggedDeleteDoneTask(t.target,o);}};let observer;try{observer=new MutationObserver(observerCallback);}catch(e){observer=null;}class Theme{constructor(e,t,o){this.createTheme=(e,t)=>createTheme(e,t),this.createTranslation=(e,t)=>createTranslation(e,t),this.Prefix=e,this.Key=Object.getOwnPropertyNames(t),this.Tag=Object.getOwnPropertyNames(o);}}
304
+ const N=(e,t)=>s=>s(e,t),P=(e,t)=>s=>s(e,t,{append:!1}),o=typeof window=="object"?window:typeof global=="object"?global:typeof self=="object"?self:{};const c=new Map,C=[],v=new Set,h=new Map,B=/--[^;]+/g,G=/:/;(typeof o.A11yUi!="object"||o.A11yUi===null)&&(o.A11yUi={CSS_STYLE_CACHE:h,HYDRATED_HISTORY:C,STYLING_TASK_QUEUE:c});const K=(e,t)=>{let s=t.match(B);if(Array.isArray(s)){s=s.filter(r=>G.test(r));const a=document.createElement("style");a.innerHTML=`.${e} {${s.join(";")}}`,document.querySelector("head")?.appendChild(a);}v.add(e);},d=(e,t)=>typeof o.A11yUi=="object"&&o.A11yUi!==null&&typeof o.A11yUi.Themes=="object"&&o.A11yUi.Themes!==null&&typeof o.A11yUi.Themes[e]=="object"&&o.A11yUi.Themes[e]!==null&&typeof o.A11yUi.Themes[e][t]=="string"?o.A11yUi.Themes[e][t].replace(/\r?\n/g,""):"",q=e=>{for(const t of Array.from(e.childNodes))if(t instanceof HTMLStyleElement&&t.tagName==="STYLE")e.removeChild(t);else break},F=(e,t)=>{try{const s=[];t.forEach(a=>{const r=new CSSStyleSheet;r.replaceSync(a),s.push(r);}),e.adoptedStyleSheets=s;}catch{t.reverse().forEach(s=>{const a=document.createElement("style");a.innerHTML=s,e.insertBefore(a,e.firstChild);});}},Q=(e,t,s)=>{if(s!==!1){const a=[...Array.from(e.childNodes).filter(n=>n instanceof HTMLStyleElement&&n.tagName==="STYLE")];let r;try{r=[...Array.from(e.adoptedStyleSheets)];}catch{r=[];}s?.mode==="before"?(a.reverse().forEach(n=>t.unshift(n.innerHTML)),r.reverse().forEach(n=>t.unshift(Array.from(n.cssRules).map(i=>i.cssText).join("")))):s?.mode==="after"&&(a.forEach(n=>t.push(n.innerHTML)),r.forEach(n=>t.push(Array.from(n.cssRules).map(i=>i.cssText).join(""))));}},L=(e,t,s)=>{const a=t.name||"default";let r;try{if(e.shadowRoot===null)throw new Error("ShadowRoot is null");r=e.shadowRoot;}catch{r=e;}if(h.get(a)?.has(e.tagName))M(e,r,h.get(a)?.get(e.tagName),s);else {const n=d(a,"PROPERTIES"),i=d(a,"GLOBAL"),H=d(a,e.tagName);v.has(a)===!1&&K(a,i);const m=[n,i,H];Q(r,m,t.encroachCss),t.loglevel==="debug"&&console.log(e.tagName,m),t.cache===!0&&(h.has(a)===!1&&h.set(a,new Map),h.get(a)?.set(e.tagName,m)),M(e,r,m,s);}},M=(e,t,s,a)=>{q(t),F(t,s),e.style.display=a;},$=e=>{e.loglevel==="debug"&&C.push({timestamp:Date.now(),numberOfTasks:c.size});},W=e=>{c.delete(e);},O=(e,t)=>{W(e),$(t);},X=e=>{for(const t of e)if(c.has(t.target)&&t.target.classList.contains("hydrated")){const{styleDisplay:s,themeDetails:a}=c.get(t.target);L(t.target,a,s),O(t.target,a);}};let f;try{f=new MutationObserver(X);}catch{f=null;}class te{constructor(t,s,a){this.createTheme=(r,n)=>P(r,n),this.createTranslation=(r,n)=>N(r,n),this.Prefix=t,this.Key=Object.getOwnPropertyNames(s),this.Tag=Object.getOwnPropertyNames(a);}}
305
305
 
306
306
  var KeyEnum = /* @__PURE__ */ ((KeyEnum2) => {
307
307
  KeyEnum2[KeyEnum2["error"] = 0] = "error";
@@ -385,7 +385,7 @@ var TagEnum = /* @__PURE__ */ ((TagEnum2) => {
385
385
  return TagEnum2;
386
386
  })(TagEnum || {});
387
387
 
388
- const KoliBri = new Theme("kol", KeyEnum, TagEnum);
388
+ const KoliBri = new te("kol", KeyEnum, TagEnum);
389
389
 
390
390
  const BAMF = KoliBri.createTheme("bamf", {});
391
391
 
@@ -413,7 +413,7 @@ const DESYv1 = KoliBri.createTheme("desy-v1", {
413
413
  --spacing: 0.25em;
414
414
  }
415
415
  :host {
416
- color: var(--color-black);
416
+ background-color: transparent; /* Reset global background-color defined by components */
417
417
  }
418
418
  :host * {
419
419
  box-sizing: border-box;
@@ -1592,7 +1592,7 @@ const DESYv1 = KoliBri.createTheme("desy-v1", {
1592
1592
  border-color: var(--border-default);
1593
1593
  background-color: var(--background-light-grey);
1594
1594
  }
1595
- :host fieldset #error {
1595
+ kol-alert.error {
1596
1596
  order: 3;
1597
1597
  }
1598
1598
  :host fieldset legend {
@@ -1602,7 +1602,7 @@ const DESYv1 = KoliBri.createTheme("desy-v1", {
1602
1602
  :host fieldset kol-input {
1603
1603
  order: 2;
1604
1604
  }
1605
- :host fieldset kol-alert#error {
1605
+ kol-alert.error {
1606
1606
  padding-left: 0.5em;
1607
1607
  color: var(--color-warning);
1608
1608
  }
@@ -3252,7 +3252,7 @@ const DESYv2 = KoliBri.createTheme("desy-v2", {
3252
3252
  --spacing: 0.25em;
3253
3253
  }
3254
3254
  :host {
3255
- color: var(--color-black);
3255
+ background-color: transparent; /* Reset global background-color defined by components */
3256
3256
  }
3257
3257
  :host * {
3258
3258
  box-sizing: border-box;
@@ -4346,10 +4346,10 @@ const DESYv2 = KoliBri.createTheme("desy-v2", {
4346
4346
  height: 1.25em;
4347
4347
  left: 2px;
4348
4348
  }
4349
- &:has(input:checked) .icon {
4349
+ &.checked .icon {
4350
4350
  transform: translate(2em, -50%);
4351
4351
  }
4352
- &:has(input:indeterminate) .icon {
4352
+ &.indeterminate .icon {
4353
4353
  transform: translate(1em, -50%);
4354
4354
  }
4355
4355
  }
@@ -4444,7 +4444,7 @@ const DESYv2 = KoliBri.createTheme("desy-v2", {
4444
4444
  border-color: var(--border-default);
4445
4445
  background-color: var(--background-light-grey);
4446
4446
  }
4447
- :host fieldset #error {
4447
+ kol-alert.error {
4448
4448
  order: 3;
4449
4449
  }
4450
4450
  :host fieldset legend {
@@ -4454,7 +4454,7 @@ const DESYv2 = KoliBri.createTheme("desy-v2", {
4454
4454
  :host fieldset kol-input {
4455
4455
  order: 2;
4456
4456
  }
4457
- :host fieldset kol-alert#error {
4457
+ kol-alert.error {
4458
4458
  padding-left: 0.5em;
4459
4459
  color: var(--color-warning);
4460
4460
  }
@@ -8797,6 +8797,7 @@ const BMF = KoliBri.createTheme("bmf", {
8797
8797
  --spacing: 0.25em;
8798
8798
  }
8799
8799
  :host {
8800
+ background-color: transparent; /* Reset global background-color defined by components */
8800
8801
  font-family: var(--font-family); /* font-size: var(--font-size); */
8801
8802
  }
8802
8803
  * {
@@ -8847,7 +8848,7 @@ const BMF = KoliBri.createTheme("bmf", {
8847
8848
  }
8848
8849
  kol-tooltip-wc .tooltip-area {
8849
8850
  background-color: var(--color-white);
8850
- color: var(--color-metal);
8851
+ color: var(--color-black);
8851
8852
  }
8852
8853
  kol-tooltip-wc .tooltip-content {
8853
8854
  border-radius: var(--border-radius);
@@ -8907,6 +8908,12 @@ const BMF = KoliBri.createTheme("bmf", {
8907
8908
  border-color: var(--color-red);
8908
8909
  color: var(--color-white);
8909
8910
  }
8911
+ .success :is(a, button) > kol-span-wc,
8912
+ .success :is(a, button):disabled:hover > kol-span-wc {
8913
+ background-color: var(--color-green);
8914
+ border-color: var(--color-green);
8915
+ color: var(--color-white);
8916
+ }
8910
8917
  .ghost :is(a, button) > kol-span-wc,
8911
8918
  .ghost :is(a, button):disabled:hover > kol-span-wc {
8912
8919
  border-color: var(--color-white);
@@ -8922,6 +8929,8 @@ const BMF = KoliBri.createTheme("bmf", {
8922
8929
  .normal :is(a, button):hover > kol-span-wc,
8923
8930
  .danger :is(a, button):active > kol-span-wc,
8924
8931
  .danger :is(a, button):hover > kol-span-wc,
8932
+ .success :is(a, button):active > kol-span-wc,
8933
+ .success :is(a, button):hover > kol-span-wc,
8925
8934
  .ghost :is(a, button):active > kol-span-wc,
8926
8935
  .ghost :is(a, button):hover > kol-span-wc {
8927
8936
  background-color: var(--color-ocean);
@@ -8942,6 +8951,7 @@ const BMF = KoliBri.createTheme("bmf", {
8942
8951
  .secondary :is(a, button):active > kol-span-wc,
8943
8952
  .normal :is(a, button):active > kol-span-wc,
8944
8953
  .danger :is(a, button):active > kol-span-wc,
8954
+ .success :is(a, button):active > kol-span-wc,
8945
8955
  .ghost :is(a, button):active > kol-span-wc {
8946
8956
  border-color: var(--color-white);
8947
8957
  box-shadow: none;
@@ -8967,6 +8977,14 @@ const BMF = KoliBri.createTheme("bmf", {
8967
8977
  :is(a, button).transparent > kol-span-wc {
8968
8978
  background-color: transparent;
8969
8979
  border-color: transparent;
8980
+ }
8981
+ /** CUSTOM_CLASS */
8982
+ :is(a, button).icon-only > kol-span-wc {
8983
+ padding: 8px;
8984
+ width: unset;
8985
+ }
8986
+ :is(a, button).icon-only > kol-span-wc > span > span {
8987
+ display: block;
8970
8988
  }`,
8971
8989
  "KOL-INPUT-TEXT": `kol-input {
8972
8990
  gap: 0.25em;
@@ -10544,11 +10562,11 @@ const BMF = KoliBri.createTheme("bmf", {
10544
10562
  width: 100%;
10545
10563
  min-height: 44px;
10546
10564
  }
10547
- :host kol-input.default {
10565
+ :host kol-input.default:not(.hide-label) {
10548
10566
  grid-template-columns: 1.5rem auto;
10549
10567
  gap: 0.4em;
10550
10568
  }
10551
- :host kol-input.switch {
10569
+ :host kol-input.switch:not(.hide-label) {
10552
10570
  grid-template-columns: 3.5rem auto;
10553
10571
  gap: 0.4em;
10554
10572
  }
@@ -10597,6 +10615,17 @@ const BMF = KoliBri.createTheme("bmf", {
10597
10615
  line-height: 24px;
10598
10616
  font-size: 1rem;
10599
10617
  }
10618
+ :host kol-input.default .checkbox-container {
10619
+ justify-content: flex-start;
10620
+ }
10621
+ :host kol-input.default input[type='checkbox']:indeterminate {
10622
+ background-color: var(--color-midnight);
10623
+ border-color: var(--color-midnight);
10624
+ }
10625
+ :host kol-input.default .icon {
10626
+ color: var(--color-white);
10627
+ margin: -0.125rem 0 0 0.25rem; /* visually align */
10628
+ }
10600
10629
  :host input:hover {
10601
10630
  border-color: var(--color-midnight);
10602
10631
  box-shadow: 0px 2px 8px 2px rgba(8, 35, 48, 0.24);
@@ -10636,42 +10665,17 @@ const BMF = KoliBri.createTheme("bmf", {
10636
10665
  min-width: calc(6 * var(--spacing));
10637
10666
  width: calc(6 * var(--spacing));
10638
10667
  }
10639
- :host kol-input.default input[type="checkbox"]:before {
10640
- border-radius: 1.5em;
10641
- background-color: transparent;
10642
- display: block;
10643
- height: calc(6 * var(--spacing));
10644
- position: relative;
10645
- width: calc(6 * var(--spacing));
10646
- }
10647
- :host kol-input.default input[type="checkbox"]:checked:before {
10648
- border-right-width: 3px;
10649
- border-bottom-width: 3px;
10650
- left: calc(1.5 * var(--spacing) - 2px);
10651
- top: calc(2.85 * var(--spacing) - 2px);
10652
- transform: rotate(40deg) translate(-50%, -50%);
10653
- background-color: transparent;
10654
- border-width: 0px 3px 3px 0px;
10655
- border-color: white;
10656
- border-radius: 1px;
10657
- border-style: solid;
10658
- height: calc(3 * var(--spacing));
10659
- width: calc(1.5 * var(--spacing));
10660
- }
10661
- :host kol-input.default input[type="checkbox"]:indeterminate {
10662
- --tw-bg-opacity: 1;
10663
- background-color: var(--color-midnight);
10664
- }
10665
- :host kol-input.default input[type="checkbox"]:indeterminate:before {
10666
- background-color: var(--color-white);
10667
- height: 0.125rem;
10668
- top: 0.6rem;
10669
- left: 0.25rem;
10670
- width: calc(3 * var(--spacing));
10671
- transform: inherit;
10672
- }
10673
- :host kol-input.default input[type="checkbox"]:checked:indeterminate:before {
10674
- border-width: 0px 1px 1px 0px;
10668
+ .default {
10669
+ .icon::part(icon) {
10670
+ font-family: 'Font Awesome 6 Free';
10671
+ font-weight: 900;
10672
+ }
10673
+ &.checked .icon::part(icon)::before {
10674
+ content: '\\f00c';
10675
+ }
10676
+ &.indeterminate .icon::part(icon)::before {
10677
+ content: '\\f068';
10678
+ }
10675
10679
  }
10676
10680
  :host kol-input.switch input[type="checkbox"] {
10677
10681
  min-width: 3.5em;
@@ -10680,7 +10684,6 @@ const BMF = KoliBri.createTheme("bmf", {
10680
10684
  border-width: 0;
10681
10685
  height: 1.5em;
10682
10686
  border-radius: 1.25em;
10683
- display: inline-block;
10684
10687
  position: relative;
10685
10688
  }
10686
10689
  :host kol-input.switch input[type="checkbox"]:before {
@@ -10716,6 +10719,9 @@ const BMF = KoliBri.createTheme("bmf", {
10716
10719
  transform: translateX(1em);
10717
10720
  }
10718
10721
  .switch {
10722
+ & .checkbox-input-element {
10723
+ display: block;
10724
+ }
10719
10725
  & .icon {
10720
10726
  width: 1.25em;
10721
10727
  height: 1.25em;
@@ -10729,13 +10735,13 @@ const BMF = KoliBri.createTheme("bmf", {
10729
10735
  content: "\\2b";
10730
10736
  }
10731
10737
  }
10732
- &:has(input:checked) .icon {
10738
+ &.checked .icon {
10733
10739
  transform: translate(2em, -50%);
10734
10740
  &::part(icon)::before {
10735
10741
  content: "\\f00c";
10736
10742
  }
10737
10743
  }
10738
- &:has(input:indeterminate) .icon {
10744
+ &.indeterminate .icon {
10739
10745
  transform: translate(1em, -50%);
10740
10746
  &::part(icon)::before {
10741
10747
  content: "\\f068";
@@ -10770,6 +10776,10 @@ const BMF = KoliBri.createTheme("bmf", {
10770
10776
  min-width: 32px;
10771
10777
  place-content: center;
10772
10778
  }
10779
+ :host kol-input.button.hide-label > .input {
10780
+ border-top-right-radius: var(--border-radius);
10781
+ border-bottom-right-radius: var(--border-radius);
10782
+ }
10773
10783
  :host kol-input.button > .input > div {
10774
10784
  display: flex;
10775
10785
  }
@@ -10871,7 +10881,7 @@ const BMF = KoliBri.createTheme("bmf", {
10871
10881
  border-color: var(--border-default);
10872
10882
  background-color: var(--background-light-grey);
10873
10883
  }
10874
- fieldset #error {
10884
+ kol-alert.error {
10875
10885
  order: 1;
10876
10886
  }
10877
10887
  fieldset legend {
@@ -10885,7 +10895,7 @@ const BMF = KoliBri.createTheme("bmf", {
10885
10895
  padding-left: 1em;
10886
10896
  border-left: 3px solid var(--color-red);
10887
10897
  }
10888
- fieldset kol-alert#error {
10898
+ kol-alert.error {
10889
10899
  color: var(--color-red);
10890
10900
  font-weight: 700;
10891
10901
  }
@@ -18518,6 +18528,7 @@ const DEFAULT = KoliBri.createTheme("default", {
18518
18528
  --color-mute-variant: var(--kolibri-color-mute-variant, #bec5c9);
18519
18529
  }
18520
18530
  :host {
18531
+ background-color: transparent; /* Reset global background-color defined by components */
18521
18532
  font-family: var(--font-family);
18522
18533
  font-size: var(--font-size);
18523
18534
  }
@@ -20141,6 +20152,9 @@ const DEFAULT = KoliBri.createTheme("default", {
20141
20152
  :host kol-input.button {
20142
20153
  gap: 0.4rem 0;
20143
20154
  }
20155
+ .checkbox-container {
20156
+ justify-content: flex-start;
20157
+ }
20144
20158
  :host kol-input > div.input {
20145
20159
  display: inherit;
20146
20160
  min-height: var(--a11y-min-size);
@@ -20209,13 +20223,6 @@ const DEFAULT = KoliBri.createTheme("default", {
20209
20223
  cursor: pointer;
20210
20224
  transition: 0.5s;
20211
20225
  }
20212
- :host kol-input input[type='checkbox'].kol-disabled:before {
20213
- cursor: not-allowed;
20214
- }
20215
- :host kol-input input[type='checkbox']:before {
20216
- content: '';
20217
- cursor: pointer;
20218
- }
20219
20226
  :host kol-input input[type='checkbox']:checked {
20220
20227
  background-color: var(--color-primary);
20221
20228
  border-color: var(--color-primary);
@@ -20226,51 +20233,22 @@ const DEFAULT = KoliBri.createTheme("default", {
20226
20233
  min-width: calc(6 * 0.25rem);
20227
20234
  width: calc(6 * 0.25rem);
20228
20235
  }
20229
- :host kol-input.default input[type='checkbox']:before {
20230
- border-radius: 1.5em;
20231
- background-color: transparent;
20232
- display: block;
20233
- height: calc(6 * 0.25rem);
20234
- position: relative;
20235
- width: calc(6 * 0.25rem);
20236
- }
20237
- :host kol-input.default input[type='checkbox']:checked:before {
20238
- border-right-width: 3px;
20239
- border-bottom-width: 3px;
20240
- left: calc(1.5 * 0.25rem - 2px);
20241
- top: calc(2.85 * 0.25rem - 2px);
20242
- transform: rotate(40deg) translate(-50%, -50%);
20243
- background-color: transparent;
20244
- border-width: 0px 3px 3px 0px;
20245
- border-color: white;
20246
- border-radius: 1px;
20247
- border-style: solid;
20248
- height: calc(3 * 0.25rem);
20249
- width: calc(1.5 * 0.25rem);
20250
- }
20251
20236
  :host kol-input.default input[type='checkbox']:indeterminate {
20252
20237
  background-color: var(--color-primary);
20253
20238
  }
20254
- :host kol-input.default input[type='checkbox']:indeterminate:before {
20255
- background-color: var(--color-light);
20256
- height: 0.125rem;
20257
- top: 0.6rem;
20258
- left: 0.25rem;
20259
- width: calc(3 * 0.25rem);
20260
- transform: inherit;
20261
- }
20262
- :host kol-input.default input[type='checkbox']:checked:indeterminate:before {
20263
- border-width: 0px 1px 1px 0px;
20239
+ :host kol-input.default .icon {
20240
+ color: var(--color-light);
20241
+ margin-left: 0.25rem;
20264
20242
  }
20265
20243
  :host kol-input.switch input[type='checkbox'] {
20266
- min-width: 3.5em;
20267
- width: 3.5em;
20268
20244
  background-color: var(--color-subtle);
20245
+ border-radius: 1.25em;
20269
20246
  border-width: 0;
20247
+ display: block;
20270
20248
  height: 1.5em;
20271
- border-radius: 1.25em;
20272
- display: inline-block;
20249
+ min-width: 3.5em;
20273
20250
  position: relative;
20251
+ width: 3.5em;
20274
20252
  }
20275
20253
  :host kol-input.switch input[type='checkbox']:before {
20276
20254
  width: 1.25em;
@@ -20297,11 +20275,11 @@ const DEFAULT = KoliBri.createTheme("default", {
20297
20275
  left: 2px;
20298
20276
  }
20299
20277
 
20300
- &:has(input:checked) .icon {
20278
+ &.checked .icon {
20301
20279
  transform: translate(2em, -50%);
20302
20280
  }
20303
20281
 
20304
- &:has(input:indeterminate) .icon {
20282
+ &.indeterminate .icon {
20305
20283
  transform: translate(1em, -50%);
20306
20284
  }
20307
20285
  }
@@ -20398,7 +20376,7 @@ const DEFAULT = KoliBri.createTheme("default", {
20398
20376
  cursor: not-allowed;
20399
20377
  background-color: var(--color-mute-variant);
20400
20378
  }
20401
- fieldset #error {
20379
+ kol-alert.error {
20402
20380
  order: 1;
20403
20381
  }
20404
20382
  fieldset legend {
@@ -20412,7 +20390,7 @@ const DEFAULT = KoliBri.createTheme("default", {
20412
20390
  padding-left: 1rem;
20413
20391
  border-left: 3px solid var(--color-danger);
20414
20392
  }
20415
- fieldset kol-alert#error {
20393
+ kol-alert.error {
20416
20394
  color: var(--color-danger);
20417
20395
  font-weight: 700;
20418
20396
  }
@@ -20986,6 +20964,7 @@ const ECL_EC = KoliBri.createTheme("ecl-ec", {
20986
20964
  --spacing-2xs: 4px; /* ?! */
20987
20965
  }
20988
20966
  :host {
20967
+ background-color: transparent; /* Reset global background-color defined by components */
20989
20968
  display: inline-block;
20990
20969
  font-family: var(--font-family);
20991
20970
  }
@@ -21479,7 +21458,11 @@ const ECL_EC = KoliBri.createTheme("ecl-ec", {
21479
21458
  background-color: var(--color-blue);
21480
21459
  border-color: var(--color-blue);
21481
21460
  }`,
21482
- "KOL-INPUT-CHECKBOX": `input[type="checkbox"] {
21461
+ "KOL-INPUT-CHECKBOX": `
21462
+ .checkbox-container {
21463
+ justify-content: flex-start;
21464
+ }
21465
+ input[type="checkbox"] {
21483
21466
  background-color: var(--color-white);
21484
21467
  border-width: 2px;
21485
21468
  border-style: solid;
@@ -21507,12 +21490,6 @@ const ECL_EC = KoliBri.createTheme("ecl-ec", {
21507
21490
  background-color: var(--color-blue-130);
21508
21491
  border-color: var(--color-blue-130);
21509
21492
  }
21510
- input[type="checkbox"]:checked::before {
21511
- border-color: var(--color-white);
21512
- }
21513
- input[type="checkbox"]:indeterminate:hover::before {
21514
- background-color: var(--color-blue-130);
21515
- }
21516
21493
  .error input[type="checkbox"] {
21517
21494
  border-color: var(--color-red);
21518
21495
  }
@@ -21527,12 +21504,18 @@ const ECL_EC = KoliBri.createTheme("ecl-ec", {
21527
21504
  background-color: var(--color-red-1xx);
21528
21505
  border-color: var(--color-red-1xx);
21529
21506
  }
21530
- .error input[type="checkbox"]:indeterminate:hover::before {
21531
- background-color: var(--color-red-1xx);
21532
- }
21533
21507
  .error.required label > span::after {
21534
21508
  color: var(--color-red);
21535
21509
  }
21510
+ .default .icon {
21511
+ margin-left: 0.2rem;
21512
+ }
21513
+ .default.checked .icon {
21514
+ color: var(--color-white);
21515
+ }
21516
+ .switch input[type='checkbox'] {
21517
+ display: block;
21518
+ }
21536
21519
  .switch input[type="checkbox"]::before,
21537
21520
  .switch input[type="checkbox"]:indeterminate::before {
21538
21521
  background-color: var(--color-grey-75);
@@ -22524,6 +22507,7 @@ const ECL_EU = KoliBri.createTheme("ecl-eu", {
22524
22507
  --spacing-2xs: 4px; /* ?! */
22525
22508
  }
22526
22509
  :host {
22510
+ background-color: transparent; /* Reset global background-color defined by components */
22527
22511
  display: inline-block;
22528
22512
  font-family: var(--font-family);
22529
22513
  }
@@ -23087,7 +23071,10 @@ const ECL_EU = KoliBri.createTheme("ecl-eu", {
23087
23071
  :host > div > div.content + div.footer {
23088
23072
  border-top: 2px solid var(--color-blue);
23089
23073
  }`,
23090
- "KOL-INPUT-CHECKBOX": `input[type="checkbox"] {
23074
+ "KOL-INPUT-CHECKBOX": `.checkbox-container {
23075
+ justify-content: flex-start;
23076
+ }
23077
+ input[type="checkbox"] {
23091
23078
  background-color: var(--color-white);
23092
23079
  border-width: 2px;
23093
23080
  border-style: solid;
@@ -23115,12 +23102,6 @@ const ECL_EU = KoliBri.createTheme("ecl-eu", {
23115
23102
  background-color: var(--color-blue-130);
23116
23103
  border-color: var(--color-blue-130);
23117
23104
  }
23118
- input[type="checkbox"]:checked::before {
23119
- border-color: var(--color-white);
23120
- }
23121
- input[type="checkbox"]:indeterminate:hover::before {
23122
- background-color: var(--color-blue-130);
23123
- }
23124
23105
  .error input[type="checkbox"] {
23125
23106
  border-color: var(--color-red);
23126
23107
  }
@@ -23135,12 +23116,18 @@ const ECL_EU = KoliBri.createTheme("ecl-eu", {
23135
23116
  background-color: var(--color-red-1xx);
23136
23117
  border-color: var(--color-red-1xx);
23137
23118
  }
23138
- .error input[type="checkbox"]:indeterminate:hover::before {
23139
- background-color: var(--color-red-1xx);
23140
- }
23141
23119
  .error.required label > span::after {
23142
23120
  color: var(--color-red);
23143
23121
  }
23122
+ .default .icon {
23123
+ margin-left: 0.2rem;
23124
+ }
23125
+ .default.checked .icon {
23126
+ color: var(--color-white);
23127
+ }
23128
+ .switch input[type='checkbox'] {
23129
+ display: block;
23130
+ }
23144
23131
  .switch input[type="checkbox"]::before,
23145
23132
  .switch input[type="checkbox"]:indeterminate::before {
23146
23133
  background-color: var(--color-grey-75);
@@ -23957,6 +23944,7 @@ const ITZBund = KoliBri.createTheme("itzbund", {
23957
23944
  --kolibri-spacing: calc(2 * var(--spacing));
23958
23945
  }
23959
23946
  :host {
23947
+ background-color: transparent; /* Reset global background-color defined by components */
23960
23948
  font-family: var(--font-family); /* font-size: var(--font-size); */
23961
23949
  }
23962
23950
  * {
@@ -25221,7 +25209,11 @@ const ITZBund = KoliBri.createTheme("itzbund", {
25221
25209
  border-top-color: var(--color-achat);
25222
25210
  border-top-width: 1px;
25223
25211
  }`,
25224
- "KOL-INPUT-CHECKBOX": `/* ALL INPUT, SELECT, TEXTAREA */
25212
+ "KOL-INPUT-CHECKBOX": `
25213
+ .checkbox-container {
25214
+ justify-content: flex-start;
25215
+ }
25216
+ /* ALL INPUT, SELECT, TEXTAREA */
25225
25217
  label {
25226
25218
  cursor: pointer;
25227
25219
  }
@@ -25281,13 +25273,6 @@ const ITZBund = KoliBri.createTheme("itzbund", {
25281
25273
  cursor: pointer;
25282
25274
  transition: 0.5s;
25283
25275
  }
25284
- input[type="checkbox"].kol-disabled:before {
25285
- cursor: not-allowed;
25286
- }
25287
- input[type="checkbox"]:before {
25288
- content: "";
25289
- cursor: pointer;
25290
- }
25291
25276
  input[type="checkbox"]:checked {
25292
25277
  background-color: var(--color-petrol);
25293
25278
  border-color: var(--color-petrol);
@@ -25298,41 +25283,17 @@ const ITZBund = KoliBri.createTheme("itzbund", {
25298
25283
  min-width: calc(6 * 2 * var(--spacing));
25299
25284
  width: calc(6 * 2 * var(--spacing));
25300
25285
  }
25301
- .default input[type="checkbox"]:before {
25302
- /* border-radius: 0.25em; */
25303
- background-color: transparent;
25304
- display: block;
25305
- height: calc(6 * 2 * var(--spacing));
25306
- position: relative;
25307
- width: calc(6 * 2 * var(--spacing));
25308
- }
25309
- .default input[type="checkbox"]:checked:before {
25310
- border-right-width: 3px;
25311
- border-bottom-width: 3px;
25312
- left: calc(1.5 * 2 * var(--spacing) - 2px);
25313
- top: calc(2.85 * 2 * var(--spacing) - 2px);
25314
- transform: rotate(40deg) translate(-50%, -50%);
25315
- background-color: transparent;
25316
- border-width: 0px 3px 3px 0px;
25317
- border-color: white;
25318
- border-radius: 1px;
25319
- border-style: solid;
25320
- height: calc(3 * 2 * var(--spacing));
25321
- width: calc(1.5 * 2 * var(--spacing));
25286
+ .default .icon {
25287
+ margin-left: 0.25rem;
25322
25288
  }
25323
- .default input[type="checkbox"]:indeterminate:before {
25324
- background-color: var(--kolibri-color-normal);
25325
- height: 0.375rem;
25326
- top: 0.45rem;
25327
- left: 0.15rem;
25328
- width: calc(4 * 2 * var(--spacing));
25289
+ .default.checked .icon {
25290
+ color: var(--color-weiss);
25329
25291
  }
25330
25292
  .switch input[type="checkbox"] {
25331
- /* border-radius: 0.25em; */
25293
+ display: block;
25332
25294
  min-width: 3.2em;
25333
25295
  width: 3.2em;
25334
25296
  height: 1.7em;
25335
- display: inline-block;
25336
25297
  position: relative;
25337
25298
  }
25338
25299
  .switch input[type="checkbox"]:before {
@@ -25362,15 +25323,12 @@ const ITZBund = KoliBri.createTheme("itzbund", {
25362
25323
  transform: translateX(0.75em);
25363
25324
  background-color: var(--color-petrol);
25364
25325
  }
25365
- .switch:has(input:not(:checked), input:indeterminate) .icon {
25326
+ .switch:is(:not(.checked), .indeterminate) .icon {
25366
25327
  color: #fff;
25367
25328
  }
25368
25329
  .disabled {
25369
25330
  opacity: 0.33;
25370
25331
  }
25371
- .default kol-icon {
25372
- display: none;
25373
- }
25374
25332
  kol-input span.hint {
25375
25333
  grid-column: span 2;
25376
25334
  font-style: italic;
@@ -25700,6 +25658,7 @@ const MFM = KoliBri.createTheme("mfm", {
25700
25658
  --spacing: 0.25em;
25701
25659
  }
25702
25660
  :host {
25661
+ background-color: transparent; /* Reset global background-color defined by components */
25703
25662
  font-family: var(--font-family); /* font-size: var(--font-size); */
25704
25663
  }
25705
25664
  * {
@@ -27612,7 +27571,7 @@ const MFM = KoliBri.createTheme("mfm", {
27612
27571
  border-color: var(--border-default);
27613
27572
  background-color: var(--background-light-grey);
27614
27573
  }
27615
- fieldset #error {
27574
+ kol-alert.error {
27616
27575
  order: 1;
27617
27576
  }
27618
27577
  fieldset legend {
@@ -27626,7 +27585,7 @@ const MFM = KoliBri.createTheme("mfm", {
27626
27585
  padding-left: 1em;
27627
27586
  border-left: 3px solid var(--color-red);
27628
27587
  }
27629
- fieldset kol-alert#error {
27588
+ kol-alert.error {
27630
27589
  color: var(--color-red);
27631
27590
  font-weight: 700;
27632
27591
  }
@@ -35282,6 +35241,7 @@ const MAPZ = KoliBri.createTheme("mapz", {
35282
35241
  --font-size: 16px;
35283
35242
  }
35284
35243
  :host {
35244
+ background-color: transparent; /* Reset global background-color defined by components */1
35285
35245
  font-family: var(--font-family); /* font-size: var(--font-size); */
35286
35246
  }
35287
35247
  * {
@@ -36115,6 +36075,9 @@ const MAPZ = KoliBri.createTheme("mapz", {
36115
36075
  content: "*";
36116
36076
  padding-left: 0.125em;
36117
36077
  }
36078
+ .checkbox-container {
36079
+ justify-content: flex-start;
36080
+ }
36118
36081
  input:hover {
36119
36082
  border-color: var(--kolibri-color-primary);
36120
36083
  } /* NEU */
@@ -36155,13 +36118,6 @@ const MAPZ = KoliBri.createTheme("mapz", {
36155
36118
  cursor: pointer;
36156
36119
  transition: 0.5s;
36157
36120
  }
36158
- input[type="checkbox"].kol-disabled:before {
36159
- cursor: not-allowed;
36160
- }
36161
- input[type="checkbox"]:before {
36162
- content: "";
36163
- cursor: pointer;
36164
- }
36165
36121
  input[type="checkbox"]:checked {
36166
36122
  background-color: var(--kolibri-color-primary);
36167
36123
  border-color: var(--kolibri-color-primary);
@@ -36172,41 +36128,21 @@ const MAPZ = KoliBri.createTheme("mapz", {
36172
36128
  min-width: calc(6 * var(--kolibri-spacing));
36173
36129
  width: calc(6 * var(--kolibri-spacing));
36174
36130
  }
36175
- .default input[type="checkbox"]:before {
36176
- border-radius: 0.25em;
36177
- background-color: transparent;
36178
- display: block;
36179
- height: calc(6 * var(--kolibri-spacing));
36180
- position: relative;
36181
- width: calc(6 * var(--kolibri-spacing));
36131
+ .default .icon {
36132
+ margin-left: 0.25rem;
36182
36133
  }
36183
- .default input[type="checkbox"]:checked:before {
36184
- border-right-width: 3px;
36185
- border-bottom-width: 3px;
36186
- left: calc(1.5 * var(--kolibri-spacing) - 2px);
36187
- top: calc(2.85 * var(--kolibri-spacing) - 2px);
36188
- transform: rotate(40deg) translate(-50%, -50%);
36189
- background-color: transparent;
36190
- border-width: 0px 3px 3px 0px;
36191
- border-color: white;
36192
- border-radius: 1px;
36193
- border-style: solid;
36194
- height: calc(3 * var(--kolibri-spacing));
36195
- width: calc(1.5 * var(--kolibri-spacing));
36134
+ .default.checked .icon {
36135
+ color: #fff;
36196
36136
  }
36197
- .default input[type="checkbox"]:indeterminate:before {
36198
- background-color: var(--kolibri-color-normal);
36199
- height: 0.375rem;
36200
- top: 0.45rem;
36201
- left: 0.15rem;
36202
- width: calc(4 * var(--kolibri-spacing));
36137
+ .default.indeterminate .icon {
36138
+ color: var(--kolibri-color-normal);
36203
36139
  }
36204
36140
  .switch input[type="checkbox"] {
36141
+ display: block;
36205
36142
  min-width: 3.2em;
36206
36143
  width: 3.2em;
36207
36144
  height: 1.7em;
36208
36145
  border-radius: 0.25em;
36209
- display: inline-block;
36210
36146
  position: relative;
36211
36147
  }
36212
36148
  .switch input[type="checkbox"]:before {
@@ -36236,7 +36172,7 @@ const MAPZ = KoliBri.createTheme("mapz", {
36236
36172
  transform: translateX(0.75em);
36237
36173
  background-color: var(--kolibri-color-primary);
36238
36174
  }
36239
- .switch:has(input:not(:checked), input:indeterminate) .icon {
36175
+ .switch:is(.checked, .indeterminate) .icon {
36240
36176
  color: #fff;
36241
36177
  }
36242
36178
  .disabled {
@@ -36316,7 +36252,7 @@ const MAPZ = KoliBri.createTheme("mapz", {
36316
36252
  box-shadow: 0 0 0.1rem black;
36317
36253
  background-color: var(--kolibri-color-primary);
36318
36254
  }
36319
- fieldset #error {
36255
+ kol-alert.error {
36320
36256
  margin: 0.4em 0;
36321
36257
  order: 3;
36322
36258
  }
@@ -52853,6 +52789,7 @@ const css = (input) => input.join(``);
52853
52789
  const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
52854
52790
  GLOBAL: css`
52855
52791
  :host {
52792
+ background-color: transparent; /* Reset global background-color defined by components */
52856
52793
  --border-color: var(--color-neutral);
52857
52794
  --border-radius: 0.25rem;
52858
52795
  --box-shadow: rgba(0, 0, 0, 0.12) 0 12px 12px -4px, rgba(0, 0, 0, 0.04) 0 4px 4px -4px;
@@ -53669,12 +53606,16 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53669
53606
  :host {
53670
53607
  --spacing: 0.25rem;
53671
53608
  }
53609
+
53610
+ .checkbox-container {
53611
+ justify-content: flex-start;
53612
+ }
53672
53613
  input {
53673
53614
  border-color: var(--color-neutral-dark);
53674
53615
  border-width: 2px;
53675
53616
  border-style: solid;
53676
53617
  }
53677
- label {
53618
+ .input-label {
53678
53619
  padding-left: 0.75rem;
53679
53620
  }
53680
53621
  kol-input:not(.disabled):hover label,
@@ -53687,10 +53628,6 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53687
53628
  :host kol-input:not(.disabled) :is(.input, label) {
53688
53629
  cursor: pointer;
53689
53630
  }
53690
- :host kol-input.disabled :is(.input, label),
53691
- :host kol-input.disabled input[type='checkbox']::before {
53692
- cursor: not-allowed;
53693
- }
53694
53631
  .required label > span::after {
53695
53632
  content: '*';
53696
53633
  padding-left: 0.125em;
@@ -53734,9 +53671,6 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53734
53671
  background-color: white;
53735
53672
  transition: 0.5s;
53736
53673
  }
53737
- input[type='checkbox']:before {
53738
- content: '';
53739
- }
53740
53674
  input[type='checkbox']:checked,
53741
53675
  input[type='checkbox']:indeterminate {
53742
53676
  background-color: var(--color-blau);
@@ -53748,44 +53682,19 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53748
53682
  min-width: calc(6 * var(--spacing));
53749
53683
  width: calc(6 * var(--spacing));
53750
53684
  }
53751
- .default input[type='checkbox']:before {
53752
- border-radius: 0.25em;
53753
- background-color: transparent;
53754
- display: block;
53755
- height: calc(6 * var(--spacing));
53756
- position: relative;
53757
- width: calc(6 * var(--spacing));
53758
- }
53759
- .default input[type='checkbox']:checked:before {
53760
- border-right-width: 3px;
53761
- border-bottom-width: 3px;
53762
- left: calc(1.5 * var(--spacing) - 2px);
53763
- top: calc(2.85 * var(--spacing) - 2px);
53764
- transform: rotate(40deg) translate(-50%, -50%);
53765
- background-color: transparent;
53766
- border-width: 0px 3px 3px 0px;
53767
- border-color: white;
53768
- border-radius: 1px;
53769
- border-style: solid;
53770
- height: calc(3 * var(--spacing));
53771
- width: calc(1.5 * var(--spacing));
53772
- }
53773
53685
  .default input[type='checkbox']:indeterminate {
53774
53686
  background-color: var(--color-blau);
53775
53687
  }
53776
- .default input[type='checkbox']:indeterminate:before {
53777
- background-color: white;
53778
- height: 0.25rem;
53779
- top: 0.5rem;
53780
- left: 0.25rem;
53781
- width: 0.75rem;
53688
+ .default .icon {
53689
+ color: #fff;
53690
+ margin-left: 0.25rem;
53782
53691
  }
53783
53692
  .switch input[type='checkbox'] {
53693
+ display: block;
53784
53694
  min-width: 3.2em;
53785
53695
  width: 3.2em;
53786
53696
  height: 1.7em;
53787
53697
  border-radius: 0.25em;
53788
- display: inline-block;
53789
53698
  position: relative;
53790
53699
  }
53791
53700
  .switch input[type='checkbox']:before {
@@ -53818,7 +53727,7 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53818
53727
  transform: translateX(0.75em);
53819
53728
  background-color: white;
53820
53729
  }
53821
- .switch:has(input:not(:checked, :indeterminate)) .icon {
53730
+ .switch:not(.checked):not(.indeterminate) .icon {
53822
53731
  color: #fff;
53823
53732
  }
53824
53733
  .disabled {
@@ -53846,12 +53755,13 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53846
53755
  border-width: 2px;
53847
53756
  border-style: solid;
53848
53757
  }
53849
- kol-input:has(input:disabled) input,
53850
- kol-input:has(input:disabled) label {
53758
+
53759
+ kol-input.disabled input,
53760
+ kol-input.disabled label {
53851
53761
  cursor: not-allowed !important;
53852
53762
  opacity: 0.5;
53853
53763
  }
53854
- kol-input:hover:has(input:not(:disabled)) label,
53764
+ kol-input:hover:not(.disabled) label,
53855
53765
  kol-input:focus-within {
53856
53766
  text-decoration: underline;
53857
53767
  }
@@ -53906,7 +53816,7 @@ const ZOLLv2 = KoliBri.createTheme("zoll-v2", {
53906
53816
  box-shadow: 0 0 0.1rem black;
53907
53817
  background-color: var(--color-blau);
53908
53818
  }
53909
- fieldset #error {
53819
+ kol-alert.error {
53910
53820
  margin: 0.4em 0;
53911
53821
  order: 3;
53912
53822
  }