@vertexvis/ui 0.1.2-canary.0 → 0.1.2-canary.2

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 (124) hide show
  1. package/dist/cjs/index.cjs.js +3 -3
  2. package/dist/cjs/{menu-d1ecf43b.js → menu-25f83cd7.js} +13 -3
  3. package/dist/cjs/{resizable-e4248256.js → resizable-c0a69532.js} +22 -4
  4. package/dist/cjs/vertex-menu.cjs.entry.js +1 -1
  5. package/dist/cjs/vertex-resizable.cjs.entry.js +2 -1
  6. package/dist/collection/components/menu/menu.js +13 -3
  7. package/dist/collection/components/resizable/resizable.js +23 -5
  8. package/dist/components/auto-resize-textarea.js +157 -0
  9. package/dist/components/color-swatch.js +124 -0
  10. package/dist/components/components.esm.js +1 -1
  11. package/dist/components/dom.js +13 -0
  12. package/dist/components/expandable.js +100 -0
  13. package/dist/components/icon-button.js +63 -0
  14. package/dist/components/icon-helper.js +722 -0
  15. package/dist/components/icon.js +43 -0
  16. package/dist/components/index.d.ts +71 -0
  17. package/dist/components/index.esm.js +1 -1
  18. package/dist/components/index.js +52 -0
  19. package/dist/components/index2.js +89 -0
  20. package/dist/components/menu.js +99 -0
  21. package/dist/components/p-1b85c1d1.entry.js +1 -0
  22. package/dist/components/p-95358d00.entry.js +1 -0
  23. package/dist/components/p-c9a967d9.js +1 -0
  24. package/dist/components/p-ee5c8bd3.js +1 -0
  25. package/dist/components/popover.js +1737 -0
  26. package/dist/components/result-list.js +565 -0
  27. package/dist/components/slots.js +26 -0
  28. package/dist/components/text-field.js +171 -0
  29. package/dist/components/tooltip.js +360 -0
  30. package/dist/components/tslib.es6.js +65 -0
  31. package/dist/components/vertex-auto-resize-textarea.d.ts +11 -0
  32. package/dist/components/vertex-auto-resize-textarea.js +6 -0
  33. package/dist/components/vertex-avatar-group.d.ts +11 -0
  34. package/dist/components/vertex-avatar-group.js +34 -0
  35. package/dist/components/vertex-avatar.d.ts +11 -0
  36. package/dist/components/vertex-avatar.js +68 -0
  37. package/dist/components/vertex-badge.d.ts +11 -0
  38. package/dist/components/vertex-badge.js +43 -0
  39. package/dist/components/vertex-banner.d.ts +11 -0
  40. package/dist/components/vertex-banner.js +141 -0
  41. package/dist/components/vertex-button.d.ts +11 -0
  42. package/dist/components/vertex-button.js +96 -0
  43. package/dist/components/vertex-card-group.d.ts +11 -0
  44. package/dist/components/vertex-card-group.js +51 -0
  45. package/dist/components/vertex-card.d.ts +11 -0
  46. package/dist/components/vertex-card.js +49 -0
  47. package/dist/components/vertex-chip.d.ts +11 -0
  48. package/dist/components/vertex-chip.js +45 -0
  49. package/dist/components/vertex-click-to-edit-textfield.d.ts +11 -0
  50. package/dist/components/vertex-click-to-edit-textfield.js +156 -0
  51. package/dist/components/vertex-collapsible.d.ts +11 -0
  52. package/dist/components/vertex-collapsible.js +63 -0
  53. package/dist/components/vertex-color-circle-picker.d.ts +11 -0
  54. package/dist/components/vertex-color-circle-picker.js +104 -0
  55. package/dist/components/vertex-color-picker.d.ts +11 -0
  56. package/dist/components/vertex-color-picker.js +75 -0
  57. package/dist/components/vertex-color-swatch.d.ts +11 -0
  58. package/dist/components/vertex-color-swatch.js +6 -0
  59. package/dist/components/vertex-context-menu.d.ts +11 -0
  60. package/dist/components/vertex-context-menu.js +125 -0
  61. package/dist/components/vertex-dialog.d.ts +11 -0
  62. package/dist/components/vertex-dialog.js +263 -0
  63. package/dist/components/vertex-draggable-popover.d.ts +11 -0
  64. package/dist/components/vertex-draggable-popover.js +119 -0
  65. package/dist/components/vertex-dropdown-menu.d.ts +11 -0
  66. package/dist/components/vertex-dropdown-menu.js +64 -0
  67. package/dist/components/vertex-expandable.d.ts +11 -0
  68. package/dist/components/vertex-expandable.js +6 -0
  69. package/dist/components/vertex-help-tooltip.d.ts +11 -0
  70. package/dist/components/vertex-help-tooltip.js +67 -0
  71. package/dist/components/vertex-icon-button.d.ts +11 -0
  72. package/dist/components/vertex-icon-button.js +6 -0
  73. package/dist/components/vertex-icon.d.ts +11 -0
  74. package/dist/components/vertex-icon.js +6 -0
  75. package/dist/components/vertex-logo-loading.d.ts +11 -0
  76. package/dist/components/vertex-logo-loading.js +34 -0
  77. package/dist/components/vertex-menu-divider.d.ts +11 -0
  78. package/dist/components/vertex-menu-divider.js +34 -0
  79. package/dist/components/vertex-menu-item.d.ts +11 -0
  80. package/dist/components/vertex-menu-item.js +44 -0
  81. package/dist/components/vertex-menu.d.ts +11 -0
  82. package/dist/components/vertex-menu.js +6 -0
  83. package/dist/components/vertex-popover.d.ts +11 -0
  84. package/dist/components/vertex-popover.js +6 -0
  85. package/dist/components/vertex-radio-group.d.ts +11 -0
  86. package/dist/components/vertex-radio-group.js +88 -0
  87. package/dist/components/vertex-radio.d.ts +11 -0
  88. package/dist/components/vertex-radio.js +56 -0
  89. package/dist/components/vertex-resizable.d.ts +11 -0
  90. package/dist/components/vertex-resizable.js +463 -0
  91. package/dist/components/vertex-result-list.d.ts +11 -0
  92. package/dist/components/vertex-result-list.js +6 -0
  93. package/dist/components/vertex-search-bar.d.ts +11 -0
  94. package/dist/components/vertex-search-bar.js +568 -0
  95. package/dist/components/vertex-select.d.ts +11 -0
  96. package/dist/components/vertex-select.js +200 -0
  97. package/dist/components/vertex-slider.d.ts +11 -0
  98. package/dist/components/vertex-slider.js +81 -0
  99. package/dist/components/vertex-spinner.d.ts +11 -0
  100. package/dist/components/vertex-spinner.js +49 -0
  101. package/dist/components/vertex-tab.d.ts +11 -0
  102. package/dist/components/vertex-tab.js +46 -0
  103. package/dist/components/vertex-tabs.d.ts +11 -0
  104. package/dist/components/vertex-tabs.js +133 -0
  105. package/dist/components/vertex-textfield.d.ts +11 -0
  106. package/dist/components/vertex-textfield.js +6 -0
  107. package/dist/components/vertex-toast.d.ts +11 -0
  108. package/dist/components/vertex-toast.js +127 -0
  109. package/dist/components/vertex-toggle.d.ts +11 -0
  110. package/dist/components/vertex-toggle.js +67 -0
  111. package/dist/components/vertex-tooltip.d.ts +11 -0
  112. package/dist/components/vertex-tooltip.js +6 -0
  113. package/dist/esm/index.js +3 -3
  114. package/dist/esm/{menu-daa7f9c9.js → menu-b8ff7d6a.js} +13 -3
  115. package/dist/esm/{resizable-a147709b.js → resizable-833336bf.js} +23 -5
  116. package/dist/esm/vertex-menu.entry.js +1 -1
  117. package/dist/esm/vertex-resizable.entry.js +2 -1
  118. package/dist/types/components/menu/menu.d.ts +2 -0
  119. package/dist/types/components/resizable/resizable.d.ts +1 -0
  120. package/package.json +2 -2
  121. package/dist/components/p-0517ca62.entry.js +0 -1
  122. package/dist/components/p-6ec189d2.js +0 -1
  123. package/dist/components/p-7b75e004.js +0 -1
  124. package/dist/components/p-ea4a2f74.entry.js +0 -1
@@ -0,0 +1,68 @@
1
+ import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+
4
+ const avatarCss = ".root{width:1.875rem;height:1.875rem;font-size:var(--vertex-ui-text-xs)}.small{width:1.5rem;height:1.5rem;font-size:var(--vertex-ui-text-t)}.avatar{border-radius:50%;font-weight:var(--vertex-ui-font-weight-medium);font-family:var(--vertex-ui-font-family);color:var(--vertex-ui-blue-800);border:solid 1px var(--vertex-ui-blue-800);background-color:var(--vertex-ui-neutral-050);display:flex;align-items:center;justify-content:center;user-select:none}.avatar.value{color:var(--vertex-ui-white);border:solid 1px var(--vertex-ui-white);background-color:var(--vertex-ui-neutral-500)}.avatar.active{cursor:pointer}.avatar.active:hover{background-color:var(--vertex-ui-neutral-200)}";
5
+
6
+ const Avatar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.firstName = undefined;
12
+ this.lastName = undefined;
13
+ this.value = undefined;
14
+ this.active = false;
15
+ this.variant = 'default';
16
+ }
17
+ render() {
18
+ if (!this.isValidStringValue(this.firstName) &&
19
+ !this.isValidStringValue(this.value)) {
20
+ return h("div", null);
21
+ }
22
+ return (h("div", { class: classnames('avatar', {
23
+ root: this.variant === 'default',
24
+ small: this.variant === 'small',
25
+ active: this.active,
26
+ value: !this.isValidStringValue(this.firstName),
27
+ }) }, this.getDisplayValue()));
28
+ }
29
+ isValidStringValue(value) {
30
+ return value != null && value !== '';
31
+ }
32
+ getDisplayValue() {
33
+ if (this.isValidStringValue(this.firstName)) {
34
+ return this.isValidStringValue(this.lastName)
35
+ ? `${this.firstName[0]}${this.lastName[0]}`
36
+ : this.firstName[0];
37
+ }
38
+ else if (this.isValidStringValue(this.value)) {
39
+ return this.value;
40
+ }
41
+ }
42
+ static get style() { return avatarCss; }
43
+ }, [1, "vertex-avatar", {
44
+ "firstName": [1, "first-name"],
45
+ "lastName": [1, "last-name"],
46
+ "value": [1],
47
+ "active": [4],
48
+ "variant": [1]
49
+ }]);
50
+ function defineCustomElement$1() {
51
+ if (typeof customElements === "undefined") {
52
+ return;
53
+ }
54
+ const components = ["vertex-avatar"];
55
+ components.forEach(tagName => { switch (tagName) {
56
+ case "vertex-avatar":
57
+ if (!customElements.get(tagName)) {
58
+ customElements.define(tagName, Avatar);
59
+ }
60
+ break;
61
+ } });
62
+ }
63
+ defineCustomElement$1();
64
+
65
+ const VertexAvatar = Avatar;
66
+ const defineCustomElement = defineCustomElement$1;
67
+
68
+ export { Avatar as A, VertexAvatar, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexBadge extends Components.VertexBadge, HTMLElement {}
4
+ export const VertexBadge: {
5
+ prototype: VertexBadge;
6
+ new (): VertexBadge;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,43 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+
4
+ const badgeCss = ".string-overlay{width:100%;line-height:1.0rem;margin-left:5px;margin-right:5px;border-radius:10px;font-size:var(--vertex-ui-text-xxs)}.string-overlay.primary{color:var(--vertex-ui-white);background-color:var(--vertex-ui-blue-600)}.string-overlay.secondary{color:var(--vertex-ui-black);background-color:var(--vertex-ui-neutral-300)}";
5
+
6
+ const Badge = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.badgeText = undefined;
12
+ this.badgeColor = 'primary';
13
+ }
14
+ render() {
15
+ return (h(Host, null, h("div", { class: classnames('string-overlay', {
16
+ primary: this.badgeColor === 'primary',
17
+ secondary: this.badgeColor === 'secondary',
18
+ }) }, this.badgeText)));
19
+ }
20
+ static get style() { return badgeCss; }
21
+ }, [1, "vertex-badge", {
22
+ "badgeText": [1, "badge-text"],
23
+ "badgeColor": [1, "badge-color"]
24
+ }]);
25
+ function defineCustomElement$1() {
26
+ if (typeof customElements === "undefined") {
27
+ return;
28
+ }
29
+ const components = ["vertex-badge"];
30
+ components.forEach(tagName => { switch (tagName) {
31
+ case "vertex-badge":
32
+ if (!customElements.get(tagName)) {
33
+ customElements.define(tagName, Badge);
34
+ }
35
+ break;
36
+ } });
37
+ }
38
+ defineCustomElement$1();
39
+
40
+ const VertexBadge = Badge;
41
+ const defineCustomElement = defineCustomElement$1;
42
+
43
+ export { Badge as B, VertexBadge, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexBanner extends Components.VertexBanner, HTMLElement {}
4
+ export const VertexBanner: {
5
+ prototype: VertexBanner;
6
+ new (): VertexBanner;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,141 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+ import { g as getSvg } from './icon-helper.js';
4
+ import { d as defineCustomElement$3 } from './icon-button.js';
5
+ import { d as defineCustomElement$2 } from './popover.js';
6
+
7
+ const bannerCss = ":host{--banner-width:auto;--banner-min-width:25rem;--banner-max-width:35rem;--banner-white-space:normal}.anchor{position:fixed}.top-left{left:24px;top:24px}.top{left:50vw;top:24px}.top-right{right:24px;top:24px}.popover{position:fixed;--open-animation-name:open-fade-in;--close-animation-name:close-fade-out}.actions{display:flex;align-items:center;margin-left:auto}.close{cursor:pointer;margin-left:16px}.close:hover{color:var(--vertex-ui-blue-500)}.banner{position:relative;display:flex;align-items:center;width:var(--banner-width);min-width:var(--banner-min-width);max-width:var(--banner-max-width);padding:16px;font-family:var(--vertex-ui-font-family);font-size:var(--vertex-ui-text-base);border-radius:4px;white-space:var(--banner-white-space);user-select:none;filter:drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));border:1px solid var(--vertex-ui-neutral-300)}.banner.hidden{pointer-events:none}.icon{display:flex;margin-right:16px;justify-content:center;align-items:center;fill:currentColor;height:1.25rem;width:1.25rem}.icon-info{color:var(--vertex-ui-blue-600)}.icon-success{color:var(--vertex-ui-green-600)}.icon-warn{color:var(--vertex-ui-orange-600)}.icon-error{color:var(--vertex-ui-red-600)}.message{align-items:center}.info{background-color:var(--vertex-ui-blue-100);color:var(--vertex-ui-neutral-800)}.success{background-color:var(--vertex-ui-green-100);color:var(--vertex-ui-neutral-800)}.warn{background-color:var(--vertex-ui-orange-100);color:var(--vertex-ui-neutral-800)}.error{background-color:var(--vertex-ui-red-100);color:var(--vertex-ui-neutral-800)}";
8
+
9
+ const DEFAULT_BANNER_DURATION = 3000;
10
+ const Banner = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ this.closed = createEvent(this, "closed", 7);
16
+ this.content = undefined;
17
+ this.placement = 'top';
18
+ this.duration = DEFAULT_BANNER_DURATION;
19
+ this.animated = true;
20
+ this.open = false;
21
+ this.type = 'info';
22
+ this.isOpen = undefined;
23
+ this.handleClose = this.handleClose.bind(this);
24
+ this.startCloseTimeout = this.startCloseTimeout.bind(this);
25
+ this.clearCloseTimeout = this.clearCloseTimeout.bind(this);
26
+ this.restartCloseTimeout = this.restartCloseTimeout.bind(this);
27
+ }
28
+ componentDidLoad() {
29
+ // This allows the component to render once initially to correctly
30
+ // place the popover anchor.
31
+ this.isOpen = this.open;
32
+ if (this.isOpen) {
33
+ this.restartCloseTimeout();
34
+ }
35
+ }
36
+ async handleOpenChanged(open) {
37
+ if (open) {
38
+ this.restartCloseTimeout();
39
+ this.isOpen = open;
40
+ }
41
+ }
42
+ render() {
43
+ return (h("vertex-popover", { class: "popover", open: this.isOpen, resizeBehavior: "fixed", backdrop: false, placement: this.getPopoverPlacement(), animated: this.animated }, h("div", { slot: "anchor", class: classnames('anchor', this.placement) }), h("div", { class: classnames('banner', {
44
+ hidden: !this.isOpen,
45
+ info: this.type === 'info',
46
+ success: this.type === 'success',
47
+ warn: this.type === 'warn',
48
+ error: this.type === 'error',
49
+ }) }, h("div", { class: classnames('icon', {
50
+ 'icon-info': this.type === 'info',
51
+ 'icon-success': this.type === 'success',
52
+ 'icon-warn': this.type === 'warn',
53
+ 'icon-error': this.type === 'error',
54
+ }) }, getSvg(this.getIconName())), this.content ? h("div", { class: "message" }, this.content) : h("slot", null), h("div", { class: "actions" }, h("slot", { name: "action" }), h("vertex-icon-button", { class: "close", iconName: "close", iconSize: "sm", variant: "plain", onClick: this.handleClose })))));
55
+ }
56
+ handleClose() {
57
+ this.clearCloseTimeout();
58
+ this.isOpen = false;
59
+ this.closed.emit();
60
+ }
61
+ startCloseTimeout() {
62
+ if (this.closeTimeout == null && this.duration > 0) {
63
+ this.closeTimeout = setTimeout(() => {
64
+ this.handleClose();
65
+ }, this.duration);
66
+ }
67
+ }
68
+ clearCloseTimeout() {
69
+ if (this.closeTimeout != null) {
70
+ clearTimeout(this.closeTimeout);
71
+ this.closeTimeout = undefined;
72
+ }
73
+ }
74
+ restartCloseTimeout() {
75
+ this.clearCloseTimeout();
76
+ this.startCloseTimeout();
77
+ }
78
+ getPopoverPlacement() {
79
+ switch (this.placement) {
80
+ case 'top-left':
81
+ return 'bottom-start';
82
+ case 'top':
83
+ return 'bottom';
84
+ case 'top-right':
85
+ return 'bottom-end';
86
+ }
87
+ }
88
+ getIconName() {
89
+ switch (this.type) {
90
+ case 'info':
91
+ return 'info';
92
+ case 'success':
93
+ return 'check-circle';
94
+ case 'warn':
95
+ return 'caution';
96
+ case 'error':
97
+ return 'error-circle';
98
+ }
99
+ }
100
+ static get watchers() { return {
101
+ "open": ["handleOpenChanged"]
102
+ }; }
103
+ static get style() { return bannerCss; }
104
+ }, [1, "vertex-banner", {
105
+ "content": [1],
106
+ "placement": [1],
107
+ "duration": [2],
108
+ "animated": [4],
109
+ "open": [4],
110
+ "type": [1],
111
+ "isOpen": [32]
112
+ }]);
113
+ function defineCustomElement$1() {
114
+ if (typeof customElements === "undefined") {
115
+ return;
116
+ }
117
+ const components = ["vertex-banner", "vertex-icon-button", "vertex-popover"];
118
+ components.forEach(tagName => { switch (tagName) {
119
+ case "vertex-banner":
120
+ if (!customElements.get(tagName)) {
121
+ customElements.define(tagName, Banner);
122
+ }
123
+ break;
124
+ case "vertex-icon-button":
125
+ if (!customElements.get(tagName)) {
126
+ defineCustomElement$3();
127
+ }
128
+ break;
129
+ case "vertex-popover":
130
+ if (!customElements.get(tagName)) {
131
+ defineCustomElement$2();
132
+ }
133
+ break;
134
+ } });
135
+ }
136
+ defineCustomElement$1();
137
+
138
+ const VertexBanner = Banner;
139
+ const defineCustomElement = defineCustomElement$1;
140
+
141
+ export { Banner as B, VertexBanner, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexButton extends Components.VertexButton, HTMLElement {}
4
+ export const VertexButton: {
5
+ prototype: VertexButton;
6
+ new (): VertexButton;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,96 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+
4
+ const buttonCss = "button{border:none;background-color:transparent;font-family:var(--vertex-ui-font-family);font-size:0.875rem;padding:0}a{text-decoration:none;font-family:var(--vertex-ui-font-family)}:host{--enabled-cursor:pointer;--disabled-cursor:not-allowed}:host([type]){-webkit-appearance:none !important}:host([disabled=\"\"]){pointer-events:none}.btn{display:flex;align-items:center;justify-content:center;border-radius:0.25rem;box-sizing:border-box;text-decoration:none;cursor:var(--enabled-cursor)}.btn-full{width:100%}.btn.disabled,.btn:not(.disabled):focus-visible,.btn:not(.disabled):active{outline:none}.btn.disabled{cursor:var(--disabled-cursor)}.btn-sm{font-size:var(--vertex-ui-text-sm)}.btn-sm:not(.btn-plaintext){padding:0 0.25rem}.btn-md{font-size:var(--vertex-ui-text-base)}.btn-md:not(.btn-plaintext){padding:0.5rem 1rem}.btn-lg{font-size:var(--vertex-ui-text-lg)}.btn-lg:not(.btn-plaintext){padding:0.75rem 0.75rem}.btn-plaintext{color:var(--vertex-ui-neutral-800)}.btn-primary{color:white;background-color:var(--vertex-ui-blue-700)}.btn-primary:not(.disabled):hover{background-color:var(--vertex-ui-blue-500)}.btn-primary:not(.disabled):focus-visible,.btn-primary:not(.disabled):active{background-color:var(--vertex-ui-blue-600)}.btn-primary:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-blue-900)}.btn-primary:not(.disabled):active{box-shadow:none}.btn-primary.disabled{background-color:var(--vertex-ui-blue-200);cursor:var(--disabled-cursor)}.btn-secondary{color:var(--vertex-ui-neutral-800);background-color:var(--vertex-ui-neutral-300)}.btn-secondary:not(.disabled):hover{box-shadow:0 2px 2px rgb(0 0 0 / 20%)}.btn-secondary:not(.disabled):focus-visible,.btn-secondary:not(.disabled):active{background-color:var(--vertex-ui-neutral-400)}.btn-secondary:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-neutral-900)}.btn-secondary:not(.disabled):active{box-shadow:none}.btn-secondary.disabled{background-color:var(--vertex-ui-neutral-200);color:var(--vertex-ui-neutral-400)}.btn-danger{color:white;background-color:var(--vertex-ui-red-600)}.btn-danger:not(.disabled):hover{background-color:var(--vertex-ui-red-400)}.btn-danger:not(.disabled):focus-visible{background-color:var(--vertex-ui-red-500);box-shadow:0 0 0 1px var(--vertex-ui-red-900)}.btn-danger:not(.disabled):active{background-color:var(--vertex-ui-red-600);box-shadow:none}.btn-danger.disabled{background-color:var(--vertex-ui-red-200);box-shadow:none}.btn-txt-primary{color:var(--vertex-ui-blue-600)}.btn-txt-primary:not(.disabled):hover{color:var(--vertex-ui-blue-800);background-color:var(--vertex-ui-blue-200)}.btn-txt-primary:not(.disabled):focus-visible,.btn-txt-primary:not(.disabled):active{color:var(--vertex-ui-blue-800);background-color:var(--vertex-ui-blue-300)}.btn-txt-primary:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-blue-900)}.btn-txt-primary:not(.disabled):active{box-shadow:none}.btn-txt-primary.disabled{color:var(--vertex-ui-blue-300);box-shadow:none}.btn-txt-secondary{color:var(--vertex-ui-neutral-700)}.btn-txt-secondary:not(.disabled):hover,.btn-txt-secondary:not(.disabled):active,.btn-txt-secondary:not(.disabled):focus-visible{color:var(--vertex-ui-neutral-800);background-color:var(--vertex-ui-neutral-300)}.btn-txt-secondary:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-neutral-900)}.btn-txt-secondary.disabled{color:var(--vertex-ui-neutral-300);box-shadow:none}.btn-txt-danger{color:var(--vertex-ui-red-600)}.btn-txt-danger:not(.disabled):focus-visible,.btn-txt-danger:not(.disabled):active,.btn-txt-danger:not(.disabled):hover{color:var(--vertex-ui-red-800)}.btn-txt-danger:not(.disabled):hover{background-color:var(--vertex-ui-red-200)}.btn-txt-danger:not(.disabled):focus-visible,.btn-txt-danger:not(.disabled):active{background-color:var(--vertex-ui-red-300)}.btn-txt-danger:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-red-900)}.btn-txt-danger:not(.disabled):active{box-shadow:none}.btn-txt-danger.disabled{color:var(--vertex-ui-red-300);box-shadow:none}.btn-outline-primary{color:var(--vertex-ui-blue-600);border:1px solid var(--vertex-ui-blue-600)}.btn-outline-primary:not(.disabled):hover{color:var(--vertex-ui-blue-800);background-color:var(--vertex-ui-blue-200)}.btn-outline-primary:not(.disabled):focus-visible,.btn-outline-primary:not(.disabled):active{color:var(--vertex-ui-blue-800);background-color:var(--vertex-ui-blue-300)}.btn-outline-primary:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-blue-900)}.btn-outline-primary:not(.disabled):active{box-shadow:none}.btn-outline-primary.disabled{color:var(--vertex-ui-blue-300);box-shadow:none}.btn-outline-secondary{color:var(--vertex-ui-neutral-700);border:1px solid var(--vertex-ui-neutral-700)}.btn-outline-secondary:not(.disabled):hover{box-shadow:0 2px 2px rgb(0 0 0 / 20%);background-color:var(--vertex-ui-neutral-300)}.btn-outline-secondary:not(.disabled):focus-visible,.btn-outline-secondary:not(.disabled):active{background-color:var(--vertex-ui-neutral-400)}.btn-outline-secondary:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-neutral-900)}.btn-outline-secondary.disabled{color:var(--vertex-ui-neutral-300);box-shadow:none}.btn-outline-danger{color:var(--vertex-ui-red-600);border:1px solid var(--vertex-ui-red-600)}.btn-outline-danger:not(.disabled):focus-visible,.btn-outline-danger:not(.disabled):active,.btn-outline-danger:not(.disabled):hover{color:var(--vertex-ui-red-800)}.btn-outline-danger:not(.disabled):hover{background-color:var(--vertex-ui-red-200)}.btn-outline-danger:not(.disabled):focus-visible,.btn-outline-danger:not(.disabled):active{background-color:var(--vertex-ui-red-300)}.btn-outline-danger:not(.disabled):focus-visible{box-shadow:0 0 0 1px var(--vertex-ui-red-900)}.btn-outline-danger:not(.disabled):active{box-shadow:none}.btn-outline-danger.disabled{color:var(--vertex-ui-red-300);box-shadow:none}";
5
+
6
+ const Button = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.type = undefined;
12
+ this.color = 'secondary';
13
+ this.variant = 'solid';
14
+ this.size = 'md';
15
+ this.expand = 'block';
16
+ this.href = undefined;
17
+ this.target = undefined;
18
+ this.disabled = undefined;
19
+ }
20
+ connectedCallback() {
21
+ if (this.hostElement != null && this.type === 'submit') {
22
+ const form = this.hostElement.closest('form');
23
+ if (form != null) {
24
+ this.fakeButton = document.createElement('button');
25
+ this.fakeButton.setAttribute('type', this.type);
26
+ this.fakeButton.setAttribute('style', 'display: none');
27
+ this.fakeButton.setAttribute('data-testid', 'vertex-fake-button');
28
+ form.appendChild(this.fakeButton);
29
+ }
30
+ }
31
+ }
32
+ disconnectedCallback() {
33
+ if (this.hostElement != null && this.fakeButton != null) {
34
+ this.fakeButton.remove();
35
+ }
36
+ }
37
+ render() {
38
+ const classes = classnames('btn', {
39
+ 'btn-full': this.expand === 'full',
40
+ 'btn-sm': this.size === 'sm',
41
+ 'btn-md': this.size === 'md',
42
+ 'btn-lg': this.size === 'lg',
43
+ 'btn-primary': this.color === 'primary' && this.variant === 'solid',
44
+ 'btn-secondary': this.color === 'secondary' && this.variant === 'solid',
45
+ 'btn-danger': this.color === 'danger' && this.variant === 'solid',
46
+ 'btn-txt-primary': this.color === 'primary' && this.variant === 'text',
47
+ 'btn-txt-secondary': this.color === 'secondary' && this.variant === 'text',
48
+ 'btn-txt-danger': this.color === 'danger' && this.variant === 'text',
49
+ 'btn-outline-primary': this.color === 'primary' && this.variant === 'outline',
50
+ 'btn-outline-secondary': this.color === 'secondary' && this.variant === 'outline',
51
+ 'btn-outline-danger': this.color === 'danger' && this.variant === 'outline',
52
+ 'btn-plaintext': this.variant === 'plaintext',
53
+ disabled: this.disabled,
54
+ });
55
+ if (this.href != null && this.type != null) {
56
+ console.warn('The type attribute is ignored when href is provided');
57
+ }
58
+ return (h(Host, { style: { pointerEvents: this.disabled ? 'none' : undefined } }, this.href != null && this.href !== '' ? (h("a", { href: this.href, target: this.target, class: classes, tabIndex: this.disabled ? -1 : 0 }, h("slot", null))) : (h("button", { class: classes, disabled: this.disabled, type: this.type, onClick: (event) => this.handleClick(event) }, h("slot", { name: "left" }), h("slot", null)))));
59
+ }
60
+ handleClick(event) {
61
+ if (this.fakeButton != null) {
62
+ event.preventDefault();
63
+ this.fakeButton.click();
64
+ }
65
+ }
66
+ get hostElement() { return this; }
67
+ static get style() { return buttonCss; }
68
+ }, [1, "vertex-button", {
69
+ "type": [1],
70
+ "color": [1],
71
+ "variant": [1],
72
+ "size": [1],
73
+ "expand": [1],
74
+ "href": [1],
75
+ "target": [1],
76
+ "disabled": [516]
77
+ }]);
78
+ function defineCustomElement$1() {
79
+ if (typeof customElements === "undefined") {
80
+ return;
81
+ }
82
+ const components = ["vertex-button"];
83
+ components.forEach(tagName => { switch (tagName) {
84
+ case "vertex-button":
85
+ if (!customElements.get(tagName)) {
86
+ customElements.define(tagName, Button);
87
+ }
88
+ break;
89
+ } });
90
+ }
91
+ defineCustomElement$1();
92
+
93
+ const VertexButton = Button;
94
+ const defineCustomElement = defineCustomElement$1;
95
+
96
+ export { Button as B, VertexButton, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexCardGroup extends Components.VertexCardGroup, HTMLElement {}
4
+ export const VertexCardGroup: {
5
+ prototype: VertexCardGroup;
6
+ new (): VertexCardGroup;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,51 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+
4
+ const cardGroupCss = ":host{width:100%;height:100%;position:relative;display:inline-block;--selected-color:var(--vertex-ui-blue-700);--hovered-color:var(--vertex-ui-blue-400)}.root{position:relative}.root.selected,.root:hover{box-shadow:0 2px 4px rgba(0, 0, 0, 0.25)}.content{cursor:pointer}.selected::after{content:\" \";position:absolute;width:0.1875rem;height:100%;left:0;top:0;background-color:var(--selected-color)}.hovered::after{content:\" \";position:absolute;width:0.1875rem;height:100%;left:0;top:0;background-color:var(--hovered-color)}.expand-target{font-family:var(--vertex-ui-font-family);font-size:var(--vertex-ui-text-base);color:var(--vertex-ui-neutral-700);cursor:pointer}.expand-target slot::slotted(*){padding:0.5rem 0.5rem 0.5rem 0.75rem}.hidden{display:none}";
5
+
6
+ const CardGroup = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.selected = false;
12
+ this.hovered = false;
13
+ this.expanded = false;
14
+ }
15
+ render() {
16
+ return (h(Host, null, h("div", { class: classnames('root', {
17
+ selected: this.selected,
18
+ hovered: this.hovered,
19
+ }) }, h("div", { class: "content" }, h("slot", { name: "primary" })), h("div", { class: classnames({
20
+ hidden: !this.selected,
21
+ }) }, h("slot", null), h("div", { "data-testid": "expanded-content-wrapper", class: classnames({
22
+ hidden: !this.expanded,
23
+ }) }, h("slot", { name: "expanded-content" })), h("div", { "data-testid": "expanded-target-wrapper", class: classnames({
24
+ hidden: this.expanded,
25
+ }) }, h("div", { class: "expand-target" }, h("slot", { name: "expand-target" })))), h("div", { class: "action" }, h("slot", { name: "action" }))), h("slot", { name: "overlay" })));
26
+ }
27
+ static get style() { return cardGroupCss; }
28
+ }, [1, "vertex-card-group", {
29
+ "selected": [516],
30
+ "hovered": [516],
31
+ "expanded": [516]
32
+ }]);
33
+ function defineCustomElement$1() {
34
+ if (typeof customElements === "undefined") {
35
+ return;
36
+ }
37
+ const components = ["vertex-card-group"];
38
+ components.forEach(tagName => { switch (tagName) {
39
+ case "vertex-card-group":
40
+ if (!customElements.get(tagName)) {
41
+ customElements.define(tagName, CardGroup);
42
+ }
43
+ break;
44
+ } });
45
+ }
46
+ defineCustomElement$1();
47
+
48
+ const VertexCardGroup = CardGroup;
49
+ const defineCustomElement = defineCustomElement$1;
50
+
51
+ export { CardGroup as C, VertexCardGroup, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexCard extends Components.VertexCard, HTMLElement {}
4
+ export const VertexCard: {
5
+ prototype: VertexCard;
6
+ new (): VertexCard;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,49 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const cardCss = ":host{width:100%;height:100%;display:flex;position:relative;--border:1px solid var(--vertex-ui-neutral-200)}.content{display:flex;flex-direction:column;width:100%;height:100%;font-family:var(--vertex-ui-font-family);font-size:var(--vertex-ui-text-base);color:var(--vertex-ui-neutral-800);border:var(--border)}.header{display:flex;align-items:center;padding:0.5rem 0.5rem 0 0.5rem}.header-text{display:flex;flex-direction:column}.text{padding:0.75rem 0.5rem 0.75rem 1rem;color:var(--vertex-ui-neutral-700);white-space:pre-line}.avatar{padding-left:0.25rem;padding-right:0.75rem}.label slot::slotted(*){font-weight:var(--vertex-ui-font-weight-bold)}.timestamp slot::slotted(*){padding-top:0.125rem;font-size:var(--vertex-ui-text-sm);color:var(--vertex-ui-neutral-500)}.action{margin-left:auto;margin-bottom:auto}.actions *::slotted(*){display:flex;justify-content:flex-end;padding:0 0.5rem 0.5rem 0.5rem}";
4
+
5
+ const Card = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ this.__attachShadow();
10
+ this.contentClick = createEvent(this, "contentClick", 7);
11
+ this.handleContentClick = (event) => {
12
+ this.contentClick.emit(event);
13
+ };
14
+ this.handleTextClick = (event) => {
15
+ if (this.mode === 'edit') {
16
+ event.stopImmediatePropagation();
17
+ }
18
+ else {
19
+ this.contentClick.emit(event);
20
+ }
21
+ };
22
+ this.mode = 'display';
23
+ }
24
+ render() {
25
+ return (h(Host, null, h("div", { class: "content" }, h("div", { class: "header", onClick: this.handleContentClick }, h("div", { class: "avatar" }, h("slot", { name: "avatar" })), h("div", { class: "header-text" }, h("div", { class: "label" }, h("slot", { name: "label" })), h("div", { class: "timestamp" }, h("slot", { name: "timestamp" }))), h("div", { class: "action" }, h("slot", { name: "action" }))), h("div", { class: "text", onClick: this.handleTextClick }, h("slot", null)), h("div", { class: "actions" }, h("slot", { name: "actions" }))), h("slot", { name: "overlay" })));
26
+ }
27
+ static get style() { return cardCss; }
28
+ }, [1, "vertex-card", {
29
+ "mode": [1]
30
+ }]);
31
+ function defineCustomElement$1() {
32
+ if (typeof customElements === "undefined") {
33
+ return;
34
+ }
35
+ const components = ["vertex-card"];
36
+ components.forEach(tagName => { switch (tagName) {
37
+ case "vertex-card":
38
+ if (!customElements.get(tagName)) {
39
+ customElements.define(tagName, Card);
40
+ }
41
+ break;
42
+ } });
43
+ }
44
+ defineCustomElement$1();
45
+
46
+ const VertexCard = Card;
47
+ const defineCustomElement = defineCustomElement$1;
48
+
49
+ export { Card as C, VertexCard, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexChip extends Components.VertexChip, HTMLElement {}
4
+ export const VertexChip: {
5
+ prototype: VertexChip;
6
+ new (): VertexChip;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,45 @@
1
+ import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
+ import { c as classnames } from './index2.js';
3
+
4
+ const chipCss = ".root{display:flex;align-items:center;width:fit-content;border-radius:16px;font-size:var(--vertex-ui-text-base);padding:0.5rem;padding-left:0.25rem;max-height:1rem}.filled{color:white}.chip-primary{color:white}.chip-secondary{color:var(--vertex-ui-neutral-800)}.filled.chip-secondary{color:var(--vertex-ui-neutral-800);background-color:var(--vertex-ui-neutral-300)}.filled.chip-primary{background-color:var(--vertex-ui-blue-700)}.outlined.chip-primary{border:1px solid var(--vertex-ui-blue-700);color:var(--vertex-ui-blue-700)}.outlined.chip-secondary{border:1px solid var(--vertex-ui-neutral-300);color:var(--vertex-ui-neutral-700)}.avatar{margin-right:0.25rem}";
5
+
6
+ const Chip = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.variant = 'filled';
12
+ this.color = 'secondary';
13
+ }
14
+ render() {
15
+ return (h("div", { class: classnames('root', {
16
+ filled: this.variant === 'filled',
17
+ outlined: this.variant === 'outlined',
18
+ 'chip-primary': this.color === 'primary',
19
+ 'chip-secondary': this.color === 'secondary',
20
+ }) }, h("div", { class: "avatar" }, h("slot", { name: "avatar" })), h("slot", null), h("slot", { name: "icon" })));
21
+ }
22
+ static get style() { return chipCss; }
23
+ }, [1, "vertex-chip", {
24
+ "variant": [1],
25
+ "color": [1]
26
+ }]);
27
+ function defineCustomElement$1() {
28
+ if (typeof customElements === "undefined") {
29
+ return;
30
+ }
31
+ const components = ["vertex-chip"];
32
+ components.forEach(tagName => { switch (tagName) {
33
+ case "vertex-chip":
34
+ if (!customElements.get(tagName)) {
35
+ customElements.define(tagName, Chip);
36
+ }
37
+ break;
38
+ } });
39
+ }
40
+ defineCustomElement$1();
41
+
42
+ const VertexChip = Chip;
43
+ const defineCustomElement = defineCustomElement$1;
44
+
45
+ export { Chip as C, VertexChip, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VertexClickToEditTextfield extends Components.VertexClickToEditTextfield, HTMLElement {}
4
+ export const VertexClickToEditTextfield: {
5
+ prototype: VertexClickToEditTextfield;
6
+ new (): VertexClickToEditTextfield;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;