@limetech/lime-elements 38.21.3 → 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 (43) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/cjs/{checkbox.template-d2c0b7fc.js → checkbox.template-f624966b.js} +9 -5
  3. package/dist/cjs/checkbox.template-f624966b.js.map +1 -0
  4. package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js +2 -2
  5. package/dist/cjs/limel-checkbox.cjs.entry.js +24 -648
  6. package/dist/cjs/limel-checkbox.cjs.entry.js.map +1 -1
  7. package/dist/cjs/limel-slider.cjs.entry.js +1 -1
  8. package/dist/cjs/{util-b0f5741e.js → util-9af8948d.js} +1 -33
  9. package/dist/cjs/util-9af8948d.js.map +1 -0
  10. package/dist/collection/components/checkbox/checkbox.js +23 -19
  11. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  12. package/dist/collection/components/checkbox/checkbox.template.js +8 -5
  13. package/dist/collection/components/checkbox/checkbox.template.js.map +1 -1
  14. package/dist/esm/{checkbox.template-04a31caa.js → checkbox.template-890a59d7.js} +9 -5
  15. package/dist/esm/checkbox.template-890a59d7.js.map +1 -0
  16. package/dist/esm/limel-breadcrumbs_7.entry.js +2 -2
  17. package/dist/esm/limel-checkbox.entry.js +24 -648
  18. package/dist/esm/limel-checkbox.entry.js.map +1 -1
  19. package/dist/esm/limel-slider.entry.js +1 -1
  20. package/dist/esm/{util-f1bde91c.js → util-a389da1e.js} +2 -33
  21. package/dist/esm/util-a389da1e.js.map +1 -0
  22. package/dist/lime-elements/lime-elements.esm.js +1 -1
  23. package/dist/lime-elements/{p-9faad6eb.js → p-127358a6.js} +2 -2
  24. package/dist/lime-elements/p-127358a6.js.map +1 -0
  25. package/dist/lime-elements/p-2c69d13e.js +2 -0
  26. package/dist/lime-elements/p-2c69d13e.js.map +1 -0
  27. package/dist/lime-elements/{p-e80040b7.entry.js → p-5ca2fc45.entry.js} +2 -2
  28. package/dist/lime-elements/{p-0f113a9e.entry.js → p-a0fa40ee.entry.js} +2 -2
  29. package/dist/lime-elements/p-bd37337a.entry.js +2 -0
  30. package/dist/lime-elements/p-bd37337a.entry.js.map +1 -0
  31. package/dist/types/components/checkbox/checkbox.d.ts +0 -2
  32. package/package.json +1 -1
  33. package/dist/cjs/checkbox.template-d2c0b7fc.js.map +0 -1
  34. package/dist/cjs/util-b0f5741e.js.map +0 -1
  35. package/dist/esm/checkbox.template-04a31caa.js.map +0 -1
  36. package/dist/esm/util-f1bde91c.js.map +0 -1
  37. package/dist/lime-elements/p-9faad6eb.js.map +0 -1
  38. package/dist/lime-elements/p-cc6195a9.entry.js +0 -134
  39. package/dist/lime-elements/p-cc6195a9.entry.js.map +0 -1
  40. package/dist/lime-elements/p-d5b1f00e.js +0 -2
  41. package/dist/lime-elements/p-d5b1f00e.js.map +0 -1
  42. /package/dist/lime-elements/{p-e80040b7.entry.js.map → p-5ca2fc45.entry.js.map} +0 -0
  43. /package/dist/lime-elements/{p-0f113a9e.entry.js.map → p-a0fa40ee.entry.js.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
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
+
1
10
  ## [38.21.3](https://github.com/Lundalogik/lime-elements/compare/v38.21.2...v38.21.3) (2025-08-14)
2
11
 
3
12
 
@@ -19,11 +19,16 @@ 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,
27
32
  'boolean-input': true,
28
33
  checkbox: true,
29
34
  checked: props.checked,
@@ -33,8 +38,7 @@ const CheckboxTemplate = (props) => {
33
38
  indeterminate: props.indeterminate,
34
39
  readonly: props.readonly,
35
40
  } },
36
- index.h("input", Object.assign({ type: "checkbox", class: "mdc-checkbox__native-control" // required by MDC to work
37
- , 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)),
38
42
  index.h("div", { class: "box" },
39
43
  index.h("svg", { class: "check-mark", viewBox: "0 0 24 24", "aria-hidden": "true", focusable: "false" },
40
44
  index.h("path", { fill: "none", d: "M1.73,12.91 8.1,19.28 22.79,4.59" }))),
@@ -51,4 +55,4 @@ const HelperText = (props) => {
51
55
 
52
56
  exports.CheckboxTemplate = CheckboxTemplate;
53
57
 
54
- //# sourceMappingURL=checkbox.template-d2c0b7fc.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}
@@ -11,12 +11,12 @@ const linkHelper = require('./link-helper-24fe2922.js');
11
11
  const config = require('./config-e7e1a299.js');
12
12
  const component = require('./component-44f52caf.js');
13
13
  const debounce = require('./debounce-2e5f4b7e.js');
14
- const checkbox_template = require('./checkbox.template-d2c0b7fc.js');
14
+ const checkbox_template = require('./checkbox.template-f624966b.js');
15
15
  const isEmpty = require('./isEmpty-a8de2cef.js');
16
16
  const ponyfill = require('./ponyfill-63966294.js');
17
17
  const eq = require('./eq-9a943b00.js');
18
18
  const zipObject = require('./zipObject-fec9afa6.js');
19
- const util = require('./util-b0f5741e.js');
19
+ const util = require('./util-9af8948d.js');
20
20
  const component$1 = require('./component-a8e11c4c.js');
21
21
  const dom = require('./dom-81eaa633.js');
22
22
  require('./component-3f00c197.js');