@crowdstrike/glide-core 0.20.4 → 0.22.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 (43) hide show
  1. package/dist/checkbox-group.js +5 -4
  2. package/dist/checkbox.js +6 -4
  3. package/dist/checkbox.styles.js +4 -0
  4. package/dist/dropdown.js +11 -10
  5. package/dist/dropdown.option.d.ts +1 -0
  6. package/dist/dropdown.option.js +1 -1
  7. package/dist/dropdown.styles.js +15 -1
  8. package/dist/icons/x.js +1 -1
  9. package/dist/input.d.ts +2 -2
  10. package/dist/input.js +10 -10
  11. package/dist/library/localize.d.ts +6 -1
  12. package/dist/menu.link.js +1 -1
  13. package/dist/modal.d.ts +3 -0
  14. package/dist/modal.js +1 -1
  15. package/dist/radio-group.js +15 -14
  16. package/dist/tag.js +1 -1
  17. package/dist/tag.styles.js +24 -21
  18. package/dist/textarea.d.ts +0 -2
  19. package/dist/textarea.js +1 -2
  20. package/dist/toasts.toast.js +1 -1
  21. package/dist/toasts.toast.styles.js +3 -1
  22. package/dist/translations/en.js +1 -1
  23. package/dist/translations/fr.d.ts +1 -1
  24. package/dist/translations/fr.js +1 -1
  25. package/dist/translations/ja.d.ts +1 -1
  26. package/dist/translations/ja.js +1 -1
  27. package/package.json +11 -12
  28. package/dist/tree.d.ts +0 -29
  29. package/dist/tree.item.d.ts +0 -55
  30. package/dist/tree.item.icon-button.d.ts +0 -22
  31. package/dist/tree.item.icon-button.js +0 -1
  32. package/dist/tree.item.icon-button.styles.d.ts +0 -2
  33. package/dist/tree.item.icon-button.styles.js +0 -9
  34. package/dist/tree.item.js +0 -1
  35. package/dist/tree.item.menu.d.ts +0 -29
  36. package/dist/tree.item.menu.js +0 -1
  37. package/dist/tree.item.menu.styles.d.ts +0 -2
  38. package/dist/tree.item.menu.styles.js +0 -17
  39. package/dist/tree.item.styles.d.ts +0 -2
  40. package/dist/tree.item.styles.js +0 -151
  41. package/dist/tree.js +0 -1
  42. package/dist/tree.styles.d.ts +0 -2
  43. package/dist/tree.styles.js +0 -7
@@ -1,151 +0,0 @@
1
- import{css}from"lit";import focusOutline from"./styles/focus-outline.js";export default[css`
2
- ${focusOutline(".label-container:not(.selected):focus-visible")}
3
- `,css`
4
- :host {
5
- cursor: pointer;
6
- display: flex;
7
- flex-direction: column;
8
- }
9
-
10
- .component {
11
- display: contents;
12
- font-family: var(--glide-core-body-sm-font-family);
13
- font-style: var(--glide-core-body-sm-font-style);
14
- font-weight: var(--glide-core-body-sm-font-weight);
15
- grid-template-columns: repeat(auto-fill, 2.5rem);
16
- line-height: 1.25rem;
17
-
18
- --private-color: var(--glide-core-text-body-1);
19
-
20
- &.selected {
21
- --private-color: var(--glide-core-text-selected);
22
-
23
- ::slotted([slot='prefix']),
24
- ::slotted([slot='menu']),
25
- ::slotted([slot='suffix']) {
26
- --private-hovered-icon-button-color: var(--glide-core-icon-hover);
27
- }
28
- }
29
- }
30
-
31
- .expand-icon-container {
32
- flex-shrink: 0;
33
- min-inline-size: 1.5625rem;
34
-
35
- &.expanded {
36
- svg {
37
- rotate: 0deg;
38
- }
39
- }
40
-
41
- svg {
42
- align-items: center;
43
- cursor: pointer;
44
- display: flex;
45
- justify-content: center;
46
- rotate: -90deg;
47
-
48
- @media (prefers-reduced-motion: no-preference) {
49
- transition: 250ms rotate ease;
50
- }
51
- }
52
- }
53
-
54
- .prefix-slot {
55
- align-items: center;
56
- display: flex;
57
- }
58
-
59
- .label-and-children {
60
- display: flex;
61
- flex-direction: column;
62
- }
63
-
64
- .label-container {
65
- align-items: center;
66
- border-radius: 0.5rem;
67
- color: var(--private-color);
68
- display: flex;
69
- font-size: var(--glide-core-body-sm-font-size);
70
- padding-block: var(--glide-core-spacing-xxs);
71
- padding-inline: var(--glide-core-spacing-xs);
72
-
73
- @media (prefers-reduced-motion: no-preference) {
74
- transition: background-color 150ms ease-in-out;
75
- }
76
-
77
- &.selected {
78
- background-color: var(--glide-core-surface-selected);
79
- }
80
-
81
- &:hover {
82
- background-color: var(--glide-core-surface-hover);
83
-
84
- &.selected {
85
- background-color: var(--glide-core-surface-selected-hover);
86
- }
87
- }
88
-
89
- &:focus-visible {
90
- &:not(&.selected) {
91
- /* The outline is inside the component since children have overflow hidden */
92
- outline-offset: -2px;
93
- }
94
-
95
- &.selected {
96
- outline: 1px solid var(--glide-core-icon-selected);
97
- outline-offset: -3px;
98
- }
99
- }
100
- }
101
-
102
- ::slotted([slot='menu']) {
103
- visibility: hidden;
104
- }
105
-
106
- ::slotted([slot='prefix']),
107
- ::slotted([slot='menu']),
108
- ::slotted([slot='suffix']) {
109
- --private-icon-button-color: var(--private-color);
110
- }
111
-
112
- .label-container:hover,
113
- .label-container:focus,
114
- .label-container:focus-within,
115
- .label-container:focus-visible {
116
- ::slotted([slot='menu']) {
117
- visibility: visible;
118
- }
119
- }
120
-
121
- .label {
122
- margin-inline-end: auto;
123
- min-inline-size: 0;
124
- overflow: hidden;
125
- text-overflow: ellipsis;
126
- white-space: nowrap;
127
-
128
- &.prefix-icon {
129
- padding-inline-start: var(--glide-core-spacing-xs);
130
- }
131
- }
132
-
133
- .default-slot-container {
134
- block-size: 0;
135
- display: flex;
136
- flex-direction: column;
137
- overflow: hidden;
138
- visibility: hidden;
139
-
140
- &.expanded {
141
- block-size: auto;
142
- visibility: visible;
143
- }
144
- }
145
-
146
- .icon-container {
147
- display: flex;
148
- gap: var(--glide-core-spacing-xxs);
149
- padding-inline: var(--glide-core-spacing-xxs);
150
- }
151
- `];
package/dist/tree.js DELETED
@@ -1 +0,0 @@
1
- var __decorate=this&&this.__decorate||function(e,t,o,r){var s,i=arguments.length,n=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,o,r);else for(var l=e.length-1;l>=0;l--)(s=e[l])&&(n=(i<3?s(n):i>3?s(t,o,n):s(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n};import{html,LitElement}from"lit";import{createRef,ref}from"lit/directives/ref.js";import{customElement,property,state}from"lit/decorators.js";import packageJson from"../package.json"with{type:"json"};import GlideCoreTreeItem from"./tree.item.js";import styles from"./tree.styles.js";import assertSlot from"./library/assert-slot.js";import shadowRootMode from"./library/shadow-root-mode.js";import final from"./library/final.js";let GlideCoreTree=class GlideCoreTree extends LitElement{static{this.shadowRootOptions={...LitElement.shadowRootOptions,mode:shadowRootMode}}static{this.styles=styles}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("focusin",this.#e),this.removeEventListener("focusout",this.#t)}render(){return html`<div class="component" role="tree" tabindex="${this.privateTabIndex}" @click="${this.#o}" @keydown="${this.#r}"><slot ${ref(this.#s)} ${assertSlot([GlideCoreTreeItem])}></slot></div>`}selectItem(e){if(this.#i)for(const t of this.#i){e===t?(t.setAttribute("selected","true"),this.selectedItem=t):t.removeAttribute("selected");const o=t.selectItem(e);o&&(this.selectedItem=o)}}constructor(){super(),this.version=packageJson.version,this.privateTabIndex=0,this.#s=createRef(),this.addEventListener("focusin",this.#e),this.addEventListener("focusout",this.#t)}#s;get#i(){return this.#s.value?.assignedElements().filter((e=>e instanceof GlideCoreTreeItem))}#n(e){e?.focus(),this.focusedItem=e}#l(){const e=new Set;return[...this.querySelectorAll("glide-core-tree-item")].filter((t=>{const o=t.parentElement?.closest("glide-core-tree-item");return!o||o.expanded&&!e.has(o)||e.add(t),!e.has(t)}))}#o(e){const t=e.target;if(t.closest("glide-core-tree-item-icon-button")??t.closest("glide-core-tree-item-menu"))return;const o=t.closest("glide-core-tree-item");o&&(o.privateHasChildTreeItems&&!o.nonCollapsible?o.privateToggleExpand():this.selectItem(o))}#r(e){if(!["ArrowRight","ArrowLeft","ArrowDown","ArrowUp","Home","End","Enter"].includes(e.key))return;if(["ArrowRight","ArrowLeft","ArrowDown","ArrowUp","Home","End"].includes(e.key)&&e.preventDefault(),e.target&&e.target instanceof HTMLElement&&(e.target.closest("glide-core-tree-item-icon-button")??e.target.closest("glide-core-tree-item-menu")))return;const t=this.#l(),{focusedItem:o}=this,r=t.findIndex((e=>e.matches(":focus")));if("ArrowRight"===e.key&&o?.privateHasChildTreeItems&&(o.expanded?this.#n(o.querySelector("glide-core-tree-item")):o.privateToggleExpand()),"ArrowLeft"===e.key)if(o?.expanded&&!o.nonCollapsible)o.privateToggleExpand();else{const e=o?.parentElement?.closest("glide-core-tree-item");this.#n(e)}"ArrowDown"===e.key&&-1!==r&&r<t.length-1&&this.#n(t[r+1]),"ArrowUp"===e.key&&r>0&&this.#n(t[r-1]),"Home"===e.key&&this.#n(t[0]),"End"===e.key&&this.#n(t.at(-1)),"Enter"===e.key&&o&&(o.privateHasChildTreeItems&&!o.nonCollapsible?o.privateToggleExpand():this.selectItem(o))}#e(e){let t;e.target===this?t=this.selectedItem?.checkVisibility({visibilityProperty:!0})?this.selectedItem:this.#i?.[0]:e.target instanceof GlideCoreTreeItem&&(t=e.target,this.privateTabIndex=-1),this.#n(t)}#t(e){e.relatedTarget&&e.relatedTarget instanceof HTMLElement&&this.contains(e.relatedTarget)||(this.privateTabIndex=0,this.focusedItem=void 0)}};__decorate([property({reflect:!0})],GlideCoreTree.prototype,"version",void 0),__decorate([state()],GlideCoreTree.prototype,"focusedItem",void 0),__decorate([state()],GlideCoreTree.prototype,"privateTabIndex",void 0),__decorate([state()],GlideCoreTree.prototype,"selectedItem",void 0),GlideCoreTree=__decorate([customElement("glide-core-tree"),final],GlideCoreTree);export default GlideCoreTree;
@@ -1,2 +0,0 @@
1
- declare const _default: import("lit").CSSResult[];
2
- export default _default;
@@ -1,7 +0,0 @@
1
- import{css}from"lit";export default[css`
2
- .component {
3
- font-family: var(--glide-core-body-sm-font-family);
4
- font-style: var(--glide-core-body-sm-font-style);
5
- font-weight: var(--glide-core-body-sm-font-weight);
6
- }
7
- `];