@limetech/lime-elements 38.33.7 → 38.34.0

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 (50) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/cjs/lime-elements.cjs.js +1 -1
  3. package/dist/cjs/{limel-breadcrumbs_8.cjs.entry.js → limel-breadcrumbs_7.cjs.entry.js} +1 -35
  4. package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js.map +1 -0
  5. package/dist/cjs/limel-code-editor.cjs.entry.js +97 -5
  6. package/dist/cjs/limel-code-editor.cjs.entry.js.map +1 -1
  7. package/dist/cjs/limel-helper-line_2.cjs.entry.js +79 -0
  8. package/dist/cjs/limel-helper-line_2.cjs.entry.js.map +1 -0
  9. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +3 -0
  10. package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/collection/components/code-editor/code-editor.css +29 -0
  13. package/dist/collection/components/code-editor/code-editor.js +202 -11
  14. package/dist/collection/components/code-editor/code-editor.js.map +1 -1
  15. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +3 -0
  16. package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js.map +1 -1
  17. package/dist/esm/lime-elements.js +1 -1
  18. package/dist/esm/{limel-breadcrumbs_8.entry.js → limel-breadcrumbs_7.entry.js} +2 -35
  19. package/dist/esm/limel-breadcrumbs_7.entry.js.map +1 -0
  20. package/dist/esm/limel-code-editor.entry.js +98 -6
  21. package/dist/esm/limel-code-editor.entry.js.map +1 -1
  22. package/dist/esm/limel-helper-line_2.entry.js +74 -0
  23. package/dist/esm/limel-helper-line_2.entry.js.map +1 -0
  24. package/dist/esm/limel-prosemirror-adapter.entry.js +3 -0
  25. package/dist/esm/limel-prosemirror-adapter.entry.js.map +1 -1
  26. package/dist/esm/loader.js +1 -1
  27. package/dist/lime-elements/lime-elements.esm.js +1 -1
  28. package/dist/lime-elements/lime-elements.esm.js.map +1 -1
  29. package/dist/lime-elements/{p-033a0aa9.entry.js → p-668e583c.entry.js} +11 -11
  30. package/dist/lime-elements/p-668e583c.entry.js.map +1 -0
  31. package/dist/lime-elements/p-93ea4214.entry.js +2 -0
  32. package/dist/lime-elements/p-93ea4214.entry.js.map +1 -0
  33. package/dist/lime-elements/{p-787be044.entry.js → p-df9bcace.entry.js} +2 -2
  34. package/dist/lime-elements/{p-787be044.entry.js.map → p-df9bcace.entry.js.map} +1 -1
  35. package/dist/lime-elements/p-f1ec1eeb.entry.js +2 -0
  36. package/dist/lime-elements/p-f1ec1eeb.entry.js.map +1 -0
  37. package/dist/types/components/code-editor/code-editor.d.ts +40 -1
  38. package/dist/types/components.d.ts +46 -2
  39. package/package.json +1 -1
  40. package/dist/cjs/limel-breadcrumbs_8.cjs.entry.js.map +0 -1
  41. package/dist/cjs/limel-helper-line.cjs.entry.js +0 -45
  42. package/dist/cjs/limel-helper-line.cjs.entry.js.map +0 -1
  43. package/dist/esm/limel-breadcrumbs_8.entry.js.map +0 -1
  44. package/dist/esm/limel-helper-line.entry.js +0 -41
  45. package/dist/esm/limel-helper-line.entry.js.map +0 -1
  46. package/dist/lime-elements/p-033a0aa9.entry.js.map +0 -1
  47. package/dist/lime-elements/p-2bf4fc20.entry.js +0 -2
  48. package/dist/lime-elements/p-2bf4fc20.entry.js.map +0 -1
  49. package/dist/lime-elements/p-e4bafb75.entry.js +0 -2
  50. package/dist/lime-elements/p-e4bafb75.entry.js.map +0 -1
@@ -0,0 +1,74 @@
1
+ import { r as registerInstance, h, H as Host } from './index-2714248e.js';
2
+
3
+ const helperLineCss = ":host(limel-helper-line){transition:opacity 0.2s ease;box-sizing:border-box;display:grid;min-width:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:0.6875rem;line-height:normal;color:rgb(var(--contrast-1200))}div{display:flex;justify-content:space-between;gap:0.75rem;overflow:hidden;padding:0 1rem}:host(limel-helper-line.invalid){--limel-h-l-grid-template-rows-transition-speed:0.46s;--limel-h-l-grid-template-rows:1fr}:host(limel-helper-line.invalid) .helper-text{color:var(--limel-theme-error-color)}.counter{flex-shrink:0;margin-left:auto}.helper-text,.counter{padding-top:0.125rem}:host(limel-helper-line){transition:grid-template-rows var(--limel-h-l-grid-template-rows-transition-speed, 0.46s) cubic-bezier(1, 0.09, 0, 0.89);grid-template-rows:var(--limel-h-l-grid-template-rows, 1fr)}:host(limel-helper-line.hide){--limel-h-l-grid-template-rows-transition-speed:0.3s;--limel-h-l-grid-template-rows:0fr}";
4
+
5
+ const HelperLine = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.hasContent = () => {
9
+ return !!(this.maxLength > 0 ||
10
+ (this.helperText && this.helperText.length > 0));
11
+ };
12
+ this.renderHelperText = () => {
13
+ if (!this.helperText) {
14
+ return;
15
+ }
16
+ return (h("span", { class: "helper-text", id: this.helperTextId }, this.helperText));
17
+ };
18
+ this.renderCharacterCounter = () => {
19
+ const counter = `${this.length} / ${this.maxLength}`;
20
+ if (!this.maxLength) {
21
+ return;
22
+ }
23
+ return h("span", { class: "counter" }, counter);
24
+ };
25
+ this.helperText = undefined;
26
+ this.length = undefined;
27
+ this.maxLength = undefined;
28
+ this.invalid = false;
29
+ this.helperTextId = undefined;
30
+ }
31
+ render() {
32
+ return (h(Host, { tabIndex: -1, class: {
33
+ invalid: this.invalid,
34
+ }, style: this.hasContent() ? {} : { display: 'none' }, "aria-hidden": !this.hasContent() }, h("div", null, this.renderHelperText(), this.renderCharacterCounter())));
35
+ }
36
+ };
37
+ HelperLine.style = helperLineCss;
38
+
39
+ const notchedOutlineCss = "@charset \"UTF-8\";*,*:before,*:after{box-sizing:border-box}limel-notched-outline{--limel-notched-outline-border-color:rgba(var(--contrast-700), 0.65);--limel-notched-outline-background-color:rgba(var(--contrast-200), 0.5);display:block;width:100%;height:fit-content}.limel-notched-outline{position:relative;width:100%;height:100%}.limel-notched-outline [slot=content]{background-color:var(--limel-notched-outline-background-color);border-radius:var(--limel-notched-outline-border-radius, 0.25rem)}.limel-notched-outline--outlines{pointer-events:none;position:absolute;inset:0;z-index:var(--limel-notched-outline-z-index, 0);display:flex}.limel-notched-outline--leading-outline,.limel-notched-outline--notch,.limel-notched-outline--trailing-outline{transition:border-color 0.2s ease;border-width:1px;border-style:solid;border-color:var(--limel-notched-outline-border-color)}.limel-notched-outline--leading-outline{flex-shrink:0;width:0.75rem;border-right-width:0;border-top-left-radius:var(--limel-notched-outline-border-radius, 0.25rem);border-bottom-left-radius:var(--limel-notched-outline-border-radius, 0.25rem)}.limel-notched-outline--notch{flex-shrink:0;position:relative;z-index:2;border-top-color:var(--limel-notched-outline-notch-border-top-color, var(--limel-notched-outline-border-color));border-right-width:0;border-left-width:0;max-width:calc(100% - 1.5rem)}.limel-notched-outline--notch label{all:unset;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;transition:color 0.2s ease, font-size 0.2s ease, transform 0.12s cubic-bezier(0.4, 0, 0.2, 1);transform:translate3d(var(--limel-notched-outline-label-transform-x, 0), var(--limel-notched-outline-label-transform-y, 0.62rem), 0);display:block;padding:0 0.25rem;color:var(--limel-notched-outline-label-color, rgba(var(--contrast-1200), 1));font-size:var(--limel-notched-outline-label-font-size, var(--limel-theme-default-font-size));letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);line-height:normal}.limel-notched-outline--notch label:after{position:absolute;right:0;padding:0 0.25rem}.limel-notched-outline--trailing-outline{flex-grow:1;border-left-width:0;border-top-right-radius:var(--limel-notched-outline-border-radius, 0.25rem);border-bottom-right-radius:var(--limel-notched-outline-border-radius, 0.25rem)}.limel-notched-outline--empty-readonly-value{position:absolute;top:0.62rem;left:1rem}.limel-notched-outline--empty-readonly-value .lime-looks-like-input-value{line-height:1.75rem;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:rgba(var(--contrast-1400), 1);font-size:var(--limel-theme-default-font-size);font-weight:400;font-family:inherit;letter-spacing:0.009375em}.mdc-text-field--disabled .limel-notched-outline--empty-readonly-value .lime-looks-like-input-value{cursor:not-allowed;opacity:0.4}limel-notched-outline:not([disabled]:not([disabled=false])):hover{--limel-notched-outline-border-color:rgba(var(--contrast-700), 1);--limel-notched-outline-background-color:rgba(var(--contrast-200), 1)}limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-visible),limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-within){--limel-notched-outline-border-color:var(--lime-primary-color, var(--limel-theme-primary-color));--limel-notched-outline-background-color:rgba(var(--contrast-100), 0.8)}limel-notched-outline[disabled]:not([disabled=false]){--limel-notched-outline-label-color:rgba(var(--contrast-1200), 0.5)}limel-notched-outline[required]:not([required=false]) .limel-notched-outline--notch label{padding-right:0.75rem}limel-notched-outline[required]:not([required=false]) .limel-notched-outline--notch label:after{content:\"*\";scale:1.3}limel-notched-outline[invalid]:not([invalid=false]):not([disabled]:not([disabled=false])){--limel-notched-outline-border-color:var(\n --limel-theme-error-text-color\n )}limel-notched-outline[invalid]:not([invalid=false]):not([disabled]:not([disabled=false])):hover{--limel-notched-outline-border-color:var(\n --limel-theme-error-color\n )}limel-notched-outline[invalid]:not([invalid=false]) .limel-notched-outline--notch label:after{color:var(--limel-theme-error-text-color)}limel-notched-outline[readonly]:not([readonly=false]){--limel-notched-outline-border-color:transparent !important;--limel-notched-outline-background-color:transparent !important}limel-notched-outline[readonly]:not([readonly=false]) .limel-notched-outline--notch label{transition-duration:0s}limel-notched-outline[has-leading-icon]:not([has-leading-icon=false]):not([has-floating-label]):not([has-value]){--limel-notched-outline-label-transform-x:1.25rem}limel-notched-outline[has-leading-icon] .limel-notched-outline--empty-readonly-value{left:2.25rem}limel-notched-outline:not([disabled]:not([disabled=false])):hover label,limel-notched-outline:not([disabled]:not([disabled=false])):focus label,limel-notched-outline:not([disabled]:not([disabled=false])):focus-within label{will-change:color, transform, font-size}limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-visible),limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-within){--limel-notched-outline-label-font-size:0.65rem;--limel-notched-outline-label-transform-x:0;--limel-notched-outline-label-transform-y:calc(-50% - 0.09375rem);--limel-notched-outline-notch-border-top-color:transparent}limel-notched-outline[has-floating-label],limel-notched-outline[has-value]:not([has-value=false]),limel-notched-outline[readonly]:not([has-value]:not([has-value=true])){--limel-notched-outline-label-font-size:0.65rem;--limel-notched-outline-label-transform-x:0;--limel-notched-outline-label-transform-y:calc(-50% - 0.09375rem);--limel-notched-outline-notch-border-top-color:transparent}";
40
+
41
+ const NotchedOutline = class {
42
+ constructor(hostRef) {
43
+ registerInstance(this, hostRef);
44
+ this.required = false;
45
+ this.readonly = false;
46
+ this.invalid = false;
47
+ this.disabled = false;
48
+ this.label = undefined;
49
+ this.labelId = undefined;
50
+ this.hasValue = false;
51
+ this.hasLeadingIcon = false;
52
+ this.hasFloatingLabel = false;
53
+ }
54
+ render() {
55
+ return (h("div", { class: "limel-notched-outline" }, h("slot", { name: "content" }), h("span", { class: "limel-notched-outline--outlines", "aria-hidden": "true" }, h("span", { class: "limel-notched-outline--leading-outline" }), this.renderLabel(), h("span", { class: "limel-notched-outline--trailing-outline" }), this.renderEmptyReadonlyValue())));
56
+ }
57
+ renderLabel() {
58
+ if (!this.label) {
59
+ return;
60
+ }
61
+ return (h("span", { class: "limel-notched-outline--notch" }, h("label", { htmlFor: this.labelId }, this.label)));
62
+ }
63
+ renderEmptyReadonlyValue() {
64
+ if (!this.readonly || this.hasValue) {
65
+ return;
66
+ }
67
+ return (h("span", { class: "limel-notched-outline--empty-readonly-value", "aria-hidden": "true" }, "\u2013"));
68
+ }
69
+ };
70
+ NotchedOutline.style = notchedOutlineCss;
71
+
72
+ export { HelperLine as limel_helper_line, NotchedOutline as limel_notched_outline };
73
+
74
+ //# sourceMappingURL=limel-helper-line_2.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"limel-helper-line.limel-notched-outline.entry.js","mappings":";;AAAA,MAAM,aAAa,GAAG,i7BAAi7B;;MC2B17B,UAAU;;;IAqDX,eAAU,GAAG;MACjB,OAAO,CAAC,EACJ,IAAI,CAAC,SAAS,GAAG,CAAC;SACjB,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAClD,CAAC;KACL,CAAC;IAEM,qBAAgB,GAAG;MACvB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;QAClB,OAAO;OACV;MAED,QACI,YAAM,KAAK,EAAC,aAAa,EAAC,EAAE,EAAE,IAAI,CAAC,YAAY,IAC1C,IAAI,CAAC,UAAU,CACb,EACT;KACL,CAAC;IAEM,2BAAsB,GAAG;MAC7B,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;MAErD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;QACjB,OAAO;OACV;MAED,OAAO,YAAM,KAAK,EAAC,SAAS,IAAE,OAAO,CAAQ,CAAC;KACjD,CAAC;;;;mBArDyB,KAAK;;;EAQzB,MAAM;IACT,QACI,EAAC,IAAI,IACD,QAAQ,EAAE,CAAC,CAAC,EACZ,KAAK,EAAE;QACH,OAAO,EAAE,IAAI,CAAC,OAAO;OACxB,EACD,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,iBACtC,CAAC,IAAI,CAAC,UAAU,EAAE,IAE/B,eACK,IAAI,CAAC,gBAAgB,EAAE,EACvB,IAAI,CAAC,sBAAsB,EAAE,CAC5B,CACH,EACT;GACL;;;;AC9EL,MAAM,iBAAiB,GAAG,ouLAAouL;;MCuBjvL,cAAc;;;oBAOL,KAAK;oBAOL,KAAK;mBAON,KAAK;oBAQJ,KAAK;;;oBAwBL,KAAK;0BAQC,KAAK;4BASH,KAAK;;EAExB,MAAM;IACT,QACI,WAAK,KAAK,EAAC,uBAAuB,IAC9B,YAAM,IAAI,EAAC,SAAS,GAAG,EACvB,YACI,KAAK,EAAC,iCAAiC,iBAC3B,MAAM,IAElB,YAAM,KAAK,EAAC,wCAAwC,GAAG,EACtD,IAAI,CAAC,WAAW,EAAE,EACnB,YAAM,KAAK,EAAC,yCAAyC,GAAG,EACvD,IAAI,CAAC,wBAAwB,EAAE,CAC7B,CACL,EACR;GACL;EAEO,WAAW;IACf,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;MACb,OAAO;KACV;IAED,QACI,YAAM,KAAK,EAAC,8BAA8B,IACtC,aAAO,OAAO,EAAE,IAAI,CAAC,OAAO,IAAG,IAAI,CAAC,KAAK,CAAS,CAC/C,EACT;GACL;EAEO,wBAAwB;IAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;MACjC,OAAO;KACV;IAED,QACI,YACI,KAAK,EAAC,6CAA6C,iBACvC,MAAM,aAGf,EACT;GACL;;;;;;","names":[],"sources":["./src/components/helper-line/helper-line.scss?tag=limel-helper-line&encapsulation=shadow","./src/components/helper-line/helper-line.tsx","./src/components/notched-outline/notched-outline.scss?tag=limel-notched-outline","./src/components/notched-outline/notched-outline.tsx"],"sourcesContent":[":host(limel-helper-line) {\n transition: opacity 0.2s ease;\n\n box-sizing: border-box;\n display: grid;\n\n min-width: 0; // prevents overflowing, if component is placed in flex containers\n\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-size: 0.6875rem;\n line-height: normal;\n\n color: rgb(var(--contrast-1200));\n}\n\ndiv {\n display: flex;\n justify-content: space-between;\n gap: 0.75rem;\n overflow: hidden;\n padding: 0 1rem;\n}\n\n:host(limel-helper-line.invalid) {\n --limel-h-l-grid-template-rows-transition-speed: 0.46s;\n --limel-h-l-grid-template-rows: 1fr;\n\n .helper-text {\n color: var(--limel-theme-error-color);\n }\n}\n\n.counter {\n flex-shrink: 0;\n margin-left: auto;\n}\n\n.helper-text,\n.counter {\n padding-top: 0.125rem;\n}\n\n// This animates height of the helper line, from `0` to `auto`.\n// To get this animation effect, the consumer component should\n// add `hide` classed accordingly.\n:host(limel-helper-line) {\n transition: grid-template-rows\n var(--limel-h-l-grid-template-rows-transition-speed, 0.46s)\n cubic-bezier(1, 0.09, 0, 0.89);\n grid-template-rows: var(--limel-h-l-grid-template-rows, 1fr);\n}\n\n:host(limel-helper-line.hide) {\n --limel-h-l-grid-template-rows-transition-speed: 0.3s;\n --limel-h-l-grid-template-rows: 0fr;\n}\n// End: animating height\n","import { Component, Host, Prop, h } from '@stencil/core';\n\n/**\n * This is an internal and private component that many input fields\n * use to display a helper text, along with a character counter below the\n * input field.\n *\n * We created this to keep the visual styles the same everywhere\n * and to avoid importing styles separately.\n *\n * Also this enables us to open the helper line in limel-portal,\n * more easily without having to send the styles to the portal.\n *\n * @exampleComponent limel-example-helper-line\n * @exampleComponent limel-example-helper-line-invalid\n * @exampleComponent limel-example-helper-line-long-text\n * @exampleComponent limel-example-helper-line-long-text-no-counter\n * @exampleComponent limel-example-helper-line-character-counter\n * @exampleComponent limel-example-helper-line-empty\n * @exampleComponent limel-example-helper-line-animation\n * @private\n */\n@Component({\n tag: 'limel-helper-line',\n shadow: true,\n styleUrl: 'helper-line.scss',\n})\nexport class HelperLine {\n /**\n * The helper text that is displayed on the left side.\n */\n @Prop({ reflect: true })\n public helperText?: string;\n\n /**\n * Length of the current input value, coming from the parent component.\n * Used in the character counter section on the right side.\n */\n @Prop({ reflect: true })\n public length?: number;\n\n /**\n * Maximum length of the characters, defined on the parent component.\n * Used in the character counter section on the right side.\n */\n @Prop({ reflect: true })\n public maxLength?: number;\n\n /**\n * Turns `true`, when the parent component is invalid.\n * For example, when the parent component is `required` but is left empty.\n * Or when the input format is invalid.\n */\n @Prop({ reflect: true })\n public invalid?: boolean = false;\n\n /**\n * Used by `aria-controls` and `aria-describedby` in the parent component.\n */\n @Prop({ reflect: true })\n public helperTextId?: string;\n\n public render() {\n return (\n <Host\n tabIndex={-1}\n class={{\n invalid: this.invalid,\n }}\n style={this.hasContent() ? {} : { display: 'none' }}\n aria-hidden={!this.hasContent()}\n >\n <div>\n {this.renderHelperText()}\n {this.renderCharacterCounter()}\n </div>\n </Host>\n );\n }\n\n private hasContent = () => {\n return !!(\n this.maxLength > 0 ||\n (this.helperText && this.helperText.length > 0)\n );\n };\n\n private renderHelperText = () => {\n if (!this.helperText) {\n return;\n }\n\n return (\n <span class=\"helper-text\" id={this.helperTextId}>\n {this.helperText}\n </span>\n );\n };\n\n private renderCharacterCounter = () => {\n const counter = `${this.length} / ${this.maxLength}`;\n\n if (!this.maxLength) {\n return;\n }\n\n return <span class=\"counter\">{counter}</span>;\n };\n}\n","@use '../../style/mixins.scss';\n@use '../../style/internal/shared_input-select-picker';\n/**\n * @prop --limel-notched-outline-z-index: Defines the `z-index` of the outlines & the label, since they are absolutely positioned. Useful if there are other elements with z-indexes in the consumer.\n */\n\n$border-radius: 0.25rem;\n$value-top: 0.62rem;\n\n*,\n*:before,\n*:after {\n box-sizing: border-box;\n}\n\nlimel-notched-outline {\n --limel-notched-outline-border-color: #{shared_input-select-picker.$lime-text-field-outline-color};\n --limel-notched-outline-background-color: #{shared_input-select-picker.$background-color-normal};\n\n display: block;\n width: 100%;\n height: fit-content;\n}\n\n.limel-notched-outline {\n position: relative;\n width: 100%;\n height: 100%;\n\n [slot='content'] {\n background-color: var(--limel-notched-outline-background-color);\n border-radius: var(\n --limel-notched-outline-border-radius,\n $border-radius\n );\n }\n\n // Why is everything prefixed?\n // Because the component has `shadow: false;`\n // and this ensures that we are not inheriting styles.\n &--outlines {\n pointer-events: none;\n position: absolute;\n inset: 0;\n z-index: var(--limel-notched-outline-z-index, 0);\n display: flex;\n }\n\n &--leading-outline,\n &--notch,\n &--trailing-outline {\n transition: border-color 0.2s ease;\n border-width: 1px;\n border-style: solid;\n border-color: var(--limel-notched-outline-border-color);\n }\n\n &--leading-outline {\n flex-shrink: 0;\n width: 0.75rem;\n border-right-width: 0;\n border-top-left-radius: var(\n --limel-notched-outline-border-radius,\n $border-radius\n );\n border-bottom-left-radius: var(\n --limel-notched-outline-border-radius,\n $border-radius\n );\n }\n\n &--notch {\n flex-shrink: 0;\n\n position: relative;\n z-index: 2;\n\n border-top-color: var(\n --limel-notched-outline-notch-border-top-color,\n var(--limel-notched-outline-border-color)\n );\n border-right-width: 0;\n border-left-width: 0;\n\n max-width: calc(100% - 1.5rem);\n\n label {\n all: unset;\n @include mixins.truncate-text;\n position: relative;\n transition:\n color 0.2s ease,\n font-size 0.2s ease,\n transform 0.12s cubic-bezier(0.4, 0, 0.2, 1);\n\n transform: translate3d(\n var(--limel-notched-outline-label-transform-x, 0),\n var(--limel-notched-outline-label-transform-y, $value-top),\n 0\n );\n display: block;\n padding: 0 0.25rem;\n\n color: var(\n --limel-notched-outline-label-color,\n #{shared_input-select-picker.$label-color}\n );\n font-size: var(\n --limel-notched-outline-label-font-size,\n var(--limel-theme-default-font-size)\n );\n letter-spacing: var(\n --mdc-typography-subtitle1-letter-spacing,\n 0.009375em\n );\n line-height: normal;\n\n &:after {\n position: absolute;\n right: 0;\n padding: 0 0.25rem;\n }\n }\n }\n\n &--trailing-outline {\n flex-grow: 1;\n border-left-width: 0;\n border-top-right-radius: var(\n --limel-notched-outline-border-radius,\n $border-radius\n );\n border-bottom-right-radius: var(\n --limel-notched-outline-border-radius,\n $border-radius\n );\n }\n\n &--empty-readonly-value {\n @include shared_input-select-picker.lime-looks-like-input-value;\n position: absolute;\n top: $value-top;\n left: 1rem;\n }\n}\n\nlimel-notched-outline {\n &:not([disabled]:not([disabled='false'])) {\n &:hover {\n --limel-notched-outline-border-color: #{shared_input-select-picker.$lime-text-field-outline-color--hovered};\n --limel-notched-outline-background-color: #{shared_input-select-picker.$background-color-hovered};\n }\n\n &:has([slot='content']:focus-visible),\n &:has([slot='content']:focus-within) {\n --limel-notched-outline-border-color: #{shared_input-select-picker.$lime-text-field-outline-color--focused};\n --limel-notched-outline-background-color: #{shared_input-select-picker.$background-color-focused};\n }\n }\n\n &[disabled]:not([disabled='false']) {\n --limel-notched-outline-label-color: #{shared_input-select-picker.$label-color-disabled};\n }\n\n &[required]:not([required='false']) {\n .limel-notched-outline--notch {\n label {\n padding-right: 0.75rem;\n\n &:after {\n content: '*';\n scale: 1.3;\n }\n }\n }\n }\n\n &[invalid]:not([invalid='false']) {\n &:not([disabled]:not([disabled='false'])) {\n --limel-notched-outline-border-color: var(\n --limel-theme-error-text-color\n );\n &:hover {\n --limel-notched-outline-border-color: var(\n --limel-theme-error-color\n );\n }\n }\n\n .limel-notched-outline--notch {\n label {\n &:after {\n color: var(--limel-theme-error-text-color);\n }\n }\n }\n }\n\n &[readonly]:not([readonly='false']) {\n --limel-notched-outline-border-color: transparent !important;\n --limel-notched-outline-background-color: transparent !important;\n\n .limel-notched-outline--notch {\n label {\n transition-duration: 0s;\n }\n }\n }\n\n &[has-leading-icon] {\n &:not([has-leading-icon='false']):not([has-floating-label]):not(\n [has-value]\n ) {\n --limel-notched-outline-label-transform-x: 1.25rem;\n }\n\n .limel-notched-outline--empty-readonly-value {\n left: 2.25rem;\n }\n }\n}\n\n// Transitioning the floating label\n@mixin float-label {\n --limel-notched-outline-label-font-size: 0.65rem; // `10.4px` similar to MDC's floating label\n --limel-notched-outline-label-transform-x: 0;\n --limel-notched-outline-label-transform-y: calc(-50% - 0.09375rem);\n --limel-notched-outline-notch-border-top-color: transparent;\n}\n\nlimel-notched-outline {\n &:not([disabled]:not([disabled='false'])) {\n &:hover,\n &:focus,\n &:focus-within {\n label {\n will-change: color, transform, font-size;\n }\n }\n\n &:has([slot='content']:focus-visible),\n &:has([slot='content']:focus-within) {\n @include float-label;\n }\n }\n\n &[has-floating-label],\n &[has-value]:not([has-value='false']),\n &[readonly]:not([has-value]:not([has-value='true'])) {\n @include float-label;\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n/**\n * This is a private component, used to render a notched outline\n * around all input elements that can have a floating label.\n * Inspired by Material Design's styles for input fields.\n * We use it in various components to unify styles and avoid\n * repeating code.\n *\n * :::note\n * The component has `shadow: false`. This is to improve performance,\n * and ensure that its internal elements are considered as internal parts\n * of the consumer's DOM. This way, the value `for` in `<label for=\"id-of-input-element\">`\n * would be correctly associated with the input element's `id`, in the consumer component.\n * :::\n * @exampleComponent limel-example-notched-outline-basic\n * @private\n */\n@Component({\n tag: 'limel-notched-outline',\n styleUrl: 'notched-outline.scss',\n shadow: false,\n})\nexport class NotchedOutline {\n /**\n * Set to `true` when the input element is required.\n * This applies proper visual styles, such as inclusion of an asterisk\n * beside the label.\n */\n @Prop({ reflect: true })\n public required = false;\n\n /**\n * Set to `true` when the input element is readonly.\n * This applies proper visual styles, such as making the outline transparent.\n */\n @Prop({ reflect: true })\n public readonly = false;\n\n /**\n * Set to `true` to indicate that the current value of the input element is\n * invalid. This applies proper visual styles, such as making the outlines red.\n */\n @Prop({ reflect: true })\n public invalid = false;\n\n /**\n * Set to `true` to indicate that the input element is\n * disabled. This applies proper visual styles, such as making the outlines\n * and the label transparent.\n */\n @Prop({ reflect: true })\n public disabled = false;\n\n /**\n * Label to display for the input element.\n * :::important\n * Note that the input element of the consumer component will be\n * labeled by this label, using the `labelId` prop.\n * :::\n */\n @Prop({ reflect: true })\n public label?: string;\n\n /**\n * The `id` of the input element which should be\n * labeled by the provided label.\n */\n @Prop({ reflect: true })\n public labelId?: string;\n\n /**\n * Set to `true` when the user has entered a value for the input element,\n * shrinking the label in size, and visually rendering it above the entered value.\n */\n @Prop({ reflect: true })\n public hasValue = false;\n\n /**\n * Set to `true` when the consumer element displays a leading icon.\n * This applies proper visual styles, such as rendering the label\n * correctly placed beside the leading icon.\n */\n @Prop({ reflect: true })\n public hasLeadingIcon = false;\n\n /**\n * Set to `true` when the consumer element needs to render the\n * label above the input element, despite existence of a `value`.\n * For example in the `text-editor` or `limel-select`,\n * where the default layout requires a floating label.\n */\n @Prop({ reflect: true })\n public hasFloatingLabel = false;\n\n public render() {\n return (\n <div class=\"limel-notched-outline\">\n <slot name=\"content\" />\n <span\n class=\"limel-notched-outline--outlines\"\n aria-hidden=\"true\"\n >\n <span class=\"limel-notched-outline--leading-outline\" />\n {this.renderLabel()}\n <span class=\"limel-notched-outline--trailing-outline\" />\n {this.renderEmptyReadonlyValue()}\n </span>\n </div>\n );\n }\n\n private renderLabel() {\n if (!this.label) {\n return;\n }\n\n return (\n <span class=\"limel-notched-outline--notch\">\n <label htmlFor={this.labelId}>{this.label}</label>\n </span>\n );\n }\n\n private renderEmptyReadonlyValue() {\n if (!this.readonly || this.hasValue) {\n return;\n }\n\n return (\n <span\n class=\"limel-notched-outline--empty-readonly-value\"\n aria-hidden=\"true\"\n >\n –\n </span>\n );\n }\n}\n"],"version":3}
@@ -28744,6 +28744,7 @@ const ProsemirrorAdapter = class {
28744
28744
  const { doc, tr } = this.view.state;
28745
28745
  const resolvedPos = doc.resolve(this.lastClickedPos);
28746
28746
  const selection = Selection.near(resolvedPos);
28747
+ tr.setMeta('pointer', true);
28747
28748
  this.view.dispatch(tr.setSelection(selection));
28748
28749
  }
28749
28750
  }, 0);
@@ -28866,6 +28867,8 @@ const ProsemirrorAdapter = class {
28866
28867
  if (this.value) {
28867
28868
  this.updateView(this.value);
28868
28869
  }
28870
+ // Initialize lastEmittedValue to prevent false change events
28871
+ this.lastEmittedValue = this.contentConverter.serialize(this.view, this.schema);
28869
28872
  }
28870
28873
  initializeSchema() {
28871
28874
  let nodes = schema$1.spec.nodes;