@limetech/lime-elements 38.21.2 → 38.21.4

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.
Files changed (71) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/cjs/{checkbox.template-882253c2.js → checkbox.template-f624966b.js} +12 -7
  3. package/dist/cjs/checkbox.template-f624966b.js.map +1 -0
  4. package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js +14 -15
  5. package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js.map +1 -1
  6. package/dist/cjs/limel-checkbox.cjs.entry.js +25 -649
  7. package/dist/cjs/limel-checkbox.cjs.entry.js.map +1 -1
  8. package/dist/cjs/limel-chip_2.cjs.entry.js +1 -1
  9. package/dist/cjs/limel-chip_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/limel-dynamic-label_3.cjs.entry.js +1 -1
  11. package/dist/cjs/limel-dynamic-label_3.cjs.entry.js.map +1 -1
  12. package/dist/cjs/limel-slider.cjs.entry.js +1 -1
  13. package/dist/cjs/{util-b0f5741e.js → util-9af8948d.js} +1 -33
  14. package/dist/cjs/util-9af8948d.js.map +1 -0
  15. package/dist/collection/components/checkbox/checkbox.css +72 -37
  16. package/dist/collection/components/checkbox/checkbox.js +23 -19
  17. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  18. package/dist/collection/components/checkbox/checkbox.template.js +9 -5
  19. package/dist/collection/components/checkbox/checkbox.template.js.map +1 -1
  20. package/dist/collection/components/chip-set/chip-set.css +2 -0
  21. package/dist/collection/components/input-field/input-field.css +9 -0
  22. package/dist/collection/components/list/list.css +282 -430
  23. package/dist/collection/components/list/radio-button/radio-button.template.js +6 -4
  24. package/dist/collection/components/list/radio-button/radio-button.template.js.map +1 -1
  25. package/dist/collection/components/menu-list/menu-list.css +282 -430
  26. package/dist/collection/components/notched-outline/notched-outline.css +1 -0
  27. package/dist/collection/style/internal/boolean-input.scss +178 -0
  28. package/dist/collection/style/internal/shared_input-select-picker.scss +3 -168
  29. package/dist/esm/{checkbox.template-0a54ff6e.js → checkbox.template-890a59d7.js} +12 -7
  30. package/dist/esm/checkbox.template-890a59d7.js.map +1 -0
  31. package/dist/esm/limel-breadcrumbs_7.entry.js +14 -15
  32. package/dist/esm/limel-breadcrumbs_7.entry.js.map +1 -1
  33. package/dist/esm/limel-checkbox.entry.js +25 -649
  34. package/dist/esm/limel-checkbox.entry.js.map +1 -1
  35. package/dist/esm/limel-chip_2.entry.js +1 -1
  36. package/dist/esm/limel-chip_2.entry.js.map +1 -1
  37. package/dist/esm/limel-dynamic-label_3.entry.js +1 -1
  38. package/dist/esm/limel-dynamic-label_3.entry.js.map +1 -1
  39. package/dist/esm/limel-slider.entry.js +1 -1
  40. package/dist/esm/{util-f1bde91c.js → util-a389da1e.js} +2 -33
  41. package/dist/esm/util-a389da1e.js.map +1 -0
  42. package/dist/lime-elements/lime-elements.esm.js +1 -1
  43. package/dist/lime-elements/{p-9faad6eb.js → p-127358a6.js} +2 -2
  44. package/dist/lime-elements/p-127358a6.js.map +1 -0
  45. package/dist/lime-elements/p-2c69d13e.js +2 -0
  46. package/dist/lime-elements/p-2c69d13e.js.map +1 -0
  47. package/dist/lime-elements/{p-2869405b.entry.js → p-576a290b.entry.js} +2 -2
  48. package/dist/lime-elements/{p-2869405b.entry.js.map → p-576a290b.entry.js.map} +1 -1
  49. package/dist/lime-elements/p-5ca2fc45.entry.js +266 -0
  50. package/dist/lime-elements/p-5ca2fc45.entry.js.map +1 -0
  51. package/dist/lime-elements/{p-0f113a9e.entry.js → p-a0fa40ee.entry.js} +2 -2
  52. package/dist/lime-elements/p-bd37337a.entry.js +2 -0
  53. package/dist/lime-elements/p-bd37337a.entry.js.map +1 -0
  54. package/dist/lime-elements/{p-84f3deba.entry.js → p-e5ae9af8.entry.js} +2 -2
  55. package/dist/lime-elements/{p-84f3deba.entry.js.map → p-e5ae9af8.entry.js.map} +1 -1
  56. package/dist/lime-elements/style/internal/boolean-input.scss +178 -0
  57. package/dist/lime-elements/style/internal/shared_input-select-picker.scss +3 -168
  58. package/dist/types/components/checkbox/checkbox.d.ts +0 -2
  59. package/package.json +1 -1
  60. package/dist/cjs/checkbox.template-882253c2.js.map +0 -1
  61. package/dist/cjs/util-b0f5741e.js.map +0 -1
  62. package/dist/esm/checkbox.template-0a54ff6e.js.map +0 -1
  63. package/dist/esm/util-f1bde91c.js.map +0 -1
  64. package/dist/lime-elements/p-3fab45c9.entry.js +0 -134
  65. package/dist/lime-elements/p-3fab45c9.entry.js.map +0 -1
  66. package/dist/lime-elements/p-6b746479.js +0 -2
  67. package/dist/lime-elements/p-6b746479.js.map +0 -1
  68. package/dist/lime-elements/p-6e698e38.entry.js +0 -266
  69. package/dist/lime-elements/p-6e698e38.entry.js.map +0 -1
  70. package/dist/lime-elements/p-9faad6eb.js.map +0 -1
  71. /package/dist/lime-elements/{p-0f113a9e.entry.js.map → p-a0fa40ee.entry.js.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
1
+ ## [38.21.4](https://github.com/Lundalogik/lime-elements/compare/v38.21.3...v38.21.4) (2025-08-18)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+
7
+ * **checkbox:** improve accessibility by better handling indeterminate state ([7b8308b](https://github.com/Lundalogik/lime-elements/commit/7b8308b0b3c70547ce5d8bc208dd16db52486176))
8
+ * **checkbox:** prevent early lifecycle crashes ([710a954](https://github.com/Lundalogik/lime-elements/commit/710a954164cf6a9fafab0619e59cb4534fe97d20))
9
+
10
+ ## [38.21.3](https://github.com/Lundalogik/lime-elements/compare/v38.21.2...v38.21.3) (2025-08-14)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+
16
+ * **input-field:** ensure font is correctly rendered ([31961cb](https://github.com/Lundalogik/lime-elements/commit/31961cb9dbbf9f837b793a1c3211fe62cd2a236f))
17
+
1
18
  ## [38.21.2](https://github.com/Lundalogik/lime-elements/compare/v38.21.1...v38.21.2) (2025-08-08)
2
19
 
3
20
 
@@ -19,11 +19,17 @@ const CheckboxTemplate = (props) => {
19
19
  }
20
20
  if (props.indeterminate) {
21
21
  inputProps['data-indeterminate'] = 'true';
22
+ inputProps['aria-checked'] = 'mixed';
23
+ }
24
+ else {
25
+ inputProps['data-indeterminate'] = 'false';
26
+ if (typeof props.checked === 'boolean') {
27
+ inputProps['aria-checked'] = String(props.checked);
28
+ }
22
29
  }
23
30
  return [
24
31
  index.h("div", { class: {
25
- 'mdc-form-field': true,
26
- 'mdc-checkbox': true,
32
+ 'boolean-input': true,
27
33
  checkbox: true,
28
34
  checked: props.checked,
29
35
  invalid: props.invalid,
@@ -32,12 +38,11 @@ const CheckboxTemplate = (props) => {
32
38
  indeterminate: props.indeterminate,
33
39
  readonly: props.readonly,
34
40
  } },
35
- index.h("input", Object.assign({ type: "checkbox", class: "mdc-checkbox__native-control" // required by MDC to work
36
- , id: props.id, checked: props.checked, disabled: props.disabled || props.readonly, required: props.required, onChange: props.onChange, "aria-controls": props.helperTextId, "aria-describedby": props.helperTextId }, inputProps)),
41
+ index.h("input", Object.assign({ type: "checkbox", id: props.id, checked: props.checked, disabled: props.disabled || props.readonly, required: props.required, onChange: props.onChange, "aria-controls": props.helperTextId, "aria-describedby": props.helperTextId }, inputProps)),
37
42
  index.h("div", { class: "box" },
38
- index.h("svg", { viewBox: "0 0 24 24", "aria-hidden": "true", focusable: "false" },
43
+ index.h("svg", { class: "check-mark", viewBox: "0 0 24 24", "aria-hidden": "true", focusable: "false" },
39
44
  index.h("path", { fill: "none", d: "M1.73,12.91 8.1,19.28 22.79,4.59" }))),
40
- index.h("label", { htmlFor: props.id }, props.label)),
45
+ index.h("label", { class: "boolean-input-label", htmlFor: props.id }, props.label)),
41
46
  index.h(HelperText, { text: props.helperText, helperTextId: props.helperTextId, invalid: props.invalid }),
42
47
  ];
43
48
  };
@@ -50,4 +55,4 @@ const HelperText = (props) => {
50
55
 
51
56
  exports.CheckboxTemplate = CheckboxTemplate;
52
57
 
53
- //# sourceMappingURL=checkbox.template-882253c2.js.map
58
+ //# sourceMappingURL=checkbox.template-f624966b.js.map
@@ -0,0 +1 @@
1
+ {"file":"checkbox.template-f624966b.js","mappings":";;;;MAmBa,gBAAgB,GAA+C,CACxE,KAAK;EAEL,MAAM,UAAU,GAAG,EAAE,CAAC;EACtB,IAAI,KAAK,CAAC,QAAQ,EAAE;IAChB,IAAI,IAAI,GAAkB,OAAO,CAAC;IAClC,IAAI,KAAK,CAAC,OAAO,EAAE;MACf,IAAI,GAAG;QACH,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,6DAA6D;OACvE,CAAC;KACL;IAED,OAAO;MACHA,iCACI,KAAK,EAAE,KAAK,CAAC,OAAO,mBACL,KAAK,CAAC,YAAY,EACjC,YAAY,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAC/C,MAAM,EAAE,KAAK,CAAC,cAAc,GAC9B;MACFA,QAAC,UAAU,IACP,IAAI,EAAE,KAAK,CAAC,UAAU,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,OAAO,EAAE,KAAK,CAAC,OAAO,GACxB;KACL,CAAC;GACL;EAED,IAAI,KAAK,CAAC,aAAa,EAAE;IACrB,UAAU,CAAC,oBAAoB,CAAC,GAAG,MAAM,CAAC;IAC1C,UAAU,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC;GACxC;OAAM;IACH,UAAU,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC;IAC3C,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE;MACpC,UAAU,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KACtD;GACJ;EAED,OAAO;IACHA,iBACI,KAAK,EAAE;QACH,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;OAC3B;MAEDA,iCACI,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,mBACT,KAAK,CAAC,YAAY,sBACf,KAAK,CAAC,YAAY,IAChC,UAAU,EAChB;MACFA,iBAAK,KAAK,EAAC,KAAK;QACZA,iBACI,KAAK,EAAC,YAAY,EAClB,OAAO,EAAC,WAAW,iBACP,MAAM,EAClB,SAAS,EAAC,OAAO;UAEjBA,kBAAM,IAAI,EAAC,MAAM,EAAC,CAAC,EAAC,kCAAkC,GAAG,CACvD,CACJ;MACNA,mBAAO,KAAK,EAAC,qBAAqB,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAC/C,KAAK,CAAC,KAAK,CACR,CACN;IACNA,QAAC,UAAU,IACP,IAAI,EAAE,KAAK,CAAC,UAAU,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,OAAO,EAAE,KAAK,CAAC,OAAO,GACxB;GACL,CAAC;AACN,EAAE;AAEF,MAAM,UAAU,GAIX,CAAC,KAAK;EACP,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;IAChC,OAAO;GACV;EAED,QACIA,+BACI,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAC7B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,OAAO,EAAE,KAAK,CAAC,OAAO,GACxB,EACJ;AACN,CAAC;;;;","names":["h"],"sources":["./src/components/checkbox/checkbox.template.tsx"],"sourcesContent":["import { FunctionalComponent, h } from '@stencil/core';\nimport { Label } from '../dynamic-label/label.types';\nimport { Icon } from '../../interface';\n\ninterface CheckboxTemplateProps {\n disabled?: boolean;\n id: string;\n checked?: boolean;\n readonly?: boolean;\n indeterminate?: boolean;\n required?: boolean;\n invalid?: boolean;\n onChange?: (event: Event) => void;\n label?: string;\n helperText?: string;\n helperTextId?: string;\n readonlyLabels?: Array<Label<boolean>>;\n}\n\nexport const CheckboxTemplate: FunctionalComponent<CheckboxTemplateProps> = (\n props\n) => {\n const inputProps = {};\n if (props.readonly) {\n let icon: string | Icon = 'minus';\n if (props.checked) {\n icon = {\n name: 'ok',\n color: 'var(--lime-primary-color, var(--limel-theme-primary-color))',\n };\n }\n\n return [\n <limel-dynamic-label\n value={props.checked}\n aria-controls={props.helperTextId}\n defaultLabel={{ text: props.label, icon: icon }}\n labels={props.readonlyLabels}\n />,\n <HelperText\n text={props.helperText}\n helperTextId={props.helperTextId}\n invalid={props.invalid}\n />,\n ];\n }\n\n if (props.indeterminate) {\n inputProps['data-indeterminate'] = 'true';\n inputProps['aria-checked'] = 'mixed';\n } else {\n inputProps['data-indeterminate'] = 'false';\n if (typeof props.checked === 'boolean') {\n inputProps['aria-checked'] = String(props.checked);\n }\n }\n\n return [\n <div\n class={{\n 'boolean-input': true,\n checkbox: true,\n checked: props.checked,\n invalid: props.invalid,\n disabled: props.disabled,\n required: props.required,\n indeterminate: props.indeterminate,\n readonly: props.readonly,\n }}\n >\n <input\n type=\"checkbox\"\n id={props.id}\n checked={props.checked}\n disabled={props.disabled || props.readonly}\n required={props.required}\n onChange={props.onChange}\n aria-controls={props.helperTextId}\n aria-describedby={props.helperTextId}\n {...inputProps}\n />\n <div class=\"box\">\n <svg\n class=\"check-mark\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <path fill=\"none\" d=\"M1.73,12.91 8.1,19.28 22.79,4.59\" />\n </svg>\n </div>\n <label class=\"boolean-input-label\" htmlFor={props.id}>\n {props.label}\n </label>\n </div>,\n <HelperText\n text={props.helperText}\n helperTextId={props.helperTextId}\n invalid={props.invalid}\n />,\n ];\n};\n\nconst HelperText: FunctionalComponent<{\n helperTextId: string;\n text: string;\n invalid?: boolean;\n}> = (props) => {\n if (typeof props.text !== 'string') {\n return;\n }\n\n return (\n <limel-helper-line\n helperText={props.text.trim()}\n helperTextId={props.helperTextId}\n invalid={props.invalid}\n />\n );\n};\n"],"version":3}