@vanjana/vue-ui 0.1.62 → 0.1.85
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.
- package/dist/theme-light.css +1 -1
- package/dist/types/components/chip-group.vue.d.ts +40 -0
- package/dist/types/components/chip-selector.vue.d.ts +24 -0
- package/dist/types/components/chip.vue.d.ts +2 -2
- package/dist/types/components/dialog.vue.d.ts +2 -2
- package/dist/types/components/editable-label.vue.d.ts +13 -0
- package/dist/types/components/form/form-field.vue.d.ts +2 -2
- package/dist/types/components/form/input-select.vue.d.ts +1 -1
- package/dist/types/components/form/input-slider.vue.d.ts +2 -2
- package/dist/types/components/form/input-text-area.vue.d.ts +2 -2
- package/dist/types/components/form/input-text.vue.d.ts +2 -2
- package/dist/types/components/form/input.vue.d.ts +1 -1
- package/dist/types/components/form/textarea.vue.d.ts +1 -1
- package/dist/types/components/index.d.ts +10 -2
- package/dist/types/components/notification/notification.vue.d.ts +13 -0
- package/dist/types/components/notification/notifications.vue.d.ts +3 -0
- package/dist/types/components/paginator.vue.d.ts +1 -1
- package/dist/types/components/radio.vue.d.ts +15 -0
- package/dist/types/components/shell/shell-navigation-item.vue.d.ts +1 -1
- package/dist/types/components/shell/shell.vue.d.ts +4 -2
- package/dist/types/components/skeleton.vue.d.ts +8 -0
- package/dist/types/components/slider.vue.d.ts +2 -2
- package/dist/types/config.d.ts +2 -0
- package/dist/types/model/FormFieldProps.d.ts +2 -1
- package/dist/types/model/Icons.d.ts +43 -3
- package/dist/types/services/index.d.ts +2 -1
- package/dist/types/services/notification.service.d.ts +62 -0
- package/dist/types/stories/components/chip-group.stories.d.ts +48 -0
- package/dist/types/stories/components/chip-selector.stories.d.ts +38 -0
- package/dist/types/stories/components/chip.stories.d.ts +2 -2
- package/dist/types/stories/components/compact.stories.d.ts +2 -2
- package/dist/types/stories/components/dialog.stories.d.ts +5 -5
- package/dist/types/stories/components/editable-label.stories.d.ts +30 -0
- package/dist/types/stories/components/form-field.stories.d.ts +27 -2
- package/dist/types/stories/components/input.stories.d.ts +1 -1
- package/dist/types/stories/components/notification.stories.d.ts +44 -0
- package/dist/types/stories/components/radio.stories.d.ts +65 -0
- package/dist/types/stories/components/shell.stories.d.ts +4 -0
- package/dist/types/stories/components/skeleton.stories.d.ts +30 -0
- package/dist/types/stories/components/textarea.stories.d.ts +1 -1
- package/dist/vanjana-vue-ui.es.js +1943 -1522
- package/dist/vanjana-vue-ui.umd.js +1 -1
- package/dist/vue-ui.css +1 -1
- package/package.json +3 -2
- package/themes/common/_components.scss +4 -0
- package/themes/common/_mixins.scss +1 -1
- package/themes/common/components/_checkbox.scss +43 -9
- package/themes/common/components/_radio.scss +59 -0
- package/themes/common/components/_shell.scss +25 -28
- package/themes/common/components/_skeleton.scss +31 -0
- package/themes/common/components/form/_form-field.scss +39 -2
- package/themes/common/components/form/_input.scss +1 -1
- package/themes/common/components/notification/_notification.scss +39 -0
- package/themes/light/theme.scss +27 -13
package/dist/theme-light.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";.button{transition:opacity .1s ease-in-out;justify-content:center;align-items:center;box-shadow:var(--box-shadow-component);border-radius:var(--border-radius-component);padding:var(--space-s) var(--space-m);gap:var(--space-m);font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button)}.button.primary{background-color:var(--surface-button-primary);color:var(--on-surface-button-primary, inherit);border:none}.button.secondary{background-color:var(--surface-button-secondary);color:var(--on-surface-button-secondary, inherit);border:none}.button.tertiary{background-color:var(--surface-button-tertiary);color:var(--on-surface-button-tertiary, inherit);border:none}.button:not(:disabled):hover{background-color:var(--surface-button-hover);color:var(--on-surface-button-hover, inherit);cursor:pointer}.button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.button:active{transform:scale(.98);opacity:.8}.button.icon-only{width:40px;height:40px;border-radius:50%}.button-bar,.button-bar .left,.button-bar .right{gap:var(--space-m)}.card{background-color:var(--surface-base);color:var(--on-surface-base, inherit)}.card .header-actions .button:not(.menu-action){padding:0 var(--space-m)}.card .header-actions .button.icon-only:not(.menu-action){width:32px;height:32px;border-radius:50%}.card.scrollable{height:calc(100% - var(--space-m) - var(--space-m) - var(--space-s) - var(--space-s));overflow:hidden}.chip{justify-content:center;align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-xl);border-radius:2rem;background:#0000000f;color:inherit;font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button)}.chip__close{align-items:center;justify-content:center;padding:0;border:none;background:transparent;cursor:pointer}.checkbox{gap:var(--space-s)}.checkbox:hover .checkbox-box{border-color:var(--color-primary)}.checkbox-box{border-color:var(--color-border);border-radius:var(--border-radius-s);background-color:var(--color-background)}.checkbox-icon{color:var(--color-primary-contrast)}.checkbox-input:checked+.checkbox-box{background-color:var(--color-primary);border-color:var(--color-primary)}.checkbox-label{color:var(--color-text-primary)}.dialog-card{background-color:var(--surface-base);color:var(--on-surface-base, inherit)}.dialog-card .header-actions .button:not(.menu-action){padding:0 var(--space-m)}.dialog-card .header-actions .button.icon-only:not(.menu-action){width:32px;height:32px;border-radius:50%}.button.dot-menu{background-color:var(--surface-dot-menu);color:var(--on-surface-dot-menu, inherit)}.button.dot-menu:hover{background-color:var(--surface-button-hover);color:var(--on-surface-button-hover, inherit);cursor:pointer}.icon-size-s{font-size:1rem}.icon-size-m{font-size:1.5rem}.icon-size-l{font-size:2rem}.vj-loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#fff9;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:9999;pointer-events:all}.vj-loading-overlay .vj-loading-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xl);padding:var(--space-xl);border-radius:var(--space-m);background:#ffffffeb;box-shadow:var(--box-shadow-container);pointer-events:none}.vj-loading-overlay .vj-loading-inner .spinner{width:5rem;height:5rem}.vj-loading-overlay .vj-loading-inner--small .spinner{width:2rem;height:2rem}.vj-loading-overlay .vj-loading-inner--small{padding:12px;gap:8px}.vj-loading-overlay .vj-loading-inner--minimal{padding:6px;background:transparent;box-shadow:none}.vj-loading-overlay .vj-loading-inner--minimal .spinner{width:1rem;height:1rem}.vj-loading-overlay--hidden{display:none}.vj-loading-text{text-align:center;font-size:var(--font-size-secondary);font-weight:var(--font-weight-secondary);line-height:var(--line-height-secondary);letter-spacing:var(--letter-spacing-secondary);font-family:var(--font-family-secondary);background-color:var(--surface-base);color:var(--on-surface-base, inherit)}.vj-loading-text--hidden{display:none}.menu{box-shadow:var(--box-shadow-container);border-radius:var(--border-radius-container);padding:var(--space-m);background-color:var(--surface-base);color:var(--on-surface-base, inherit)}.menu-action{box-shadow:var(--box-shadow-component);border-radius:0;padding:var(--space-s) var(--space-m);gap:var(--space-m)}.menu-action .menu-action--icon{width:24px;height:24px}.page{gap:var(--space-m)}.page header{gap:var(--space-m);padding-bottom:var(--space-m)}.page header>span{gap:var(--space-s)}.page main footer{padding-top:var(--space-s);background-color:var(--surface-base);color:var(--on-surface-base, inherit)}.search-field{padding:var(--space-s) var(--space-l);border-radius:var(--border-radius-input);outline:var(--border-input);outline-offset:-1px;font-size:var(--font-size-primary);font-weight:var(--font-weight-primary);line-height:var(--line-height-primary);letter-spacing:var(--letter-spacing-primary);font-family:var(--font-family-primary);background-color:var(--surface-input);color:var(--on-surface-input, inherit)}.search-field>*{align-self:center}.search-field:focus-within{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.search-field input{border:none;outline:none;padding:0;margin:0 var(--space-s);background:transparent;font:inherit;color:inherit}.search-field .reset{transition:opacity .2s ease-in}.shell{padding:0}.shell>header{padding:var(--space-s)}.shell>header .shell-title{gap:var(--space-m)}.shell>header .shell-title img{width:40px;height:40px}.shell>header .header-actions{display:flex;gap:var(--space-s)}.shell>header{--application__color: blue;--application-gradient: linear-gradient(90deg, #e0f7ff 0%, #c5dbff 20%, #fff9e6 50%, #ffe4f0 75%, #ffd9f2 100%);border-bottom:solid var(--space-s) var(--application__color);border-image-slice:1;border-image-source:var(--application-gradient)}.shell .shell-content main{padding:0;overflow:auto}.shell .shell-content aside{border-left:1px solid var(--color-border)}.shell .shell-content.with-navigation main{padding:0 var(--space-m)}.shell .shell-navigation{flex-basis:4rem;border-radius:0 10px 20px 0!important;border-bottom:var(--border-footer)!important;background-color:var(--surface-navigation);color:var(--on-surface-navigation, inherit);box-shadow:var(--box-shadow-container);border-radius:var(--border-radius-container);padding:var(--space-m)}.shell .shell-navigation ul{padding:0;margin:0;gap:var(--space-s)}.shell .shell-navigation ul .shell-navigation-item{padding:0;margin:0}.shell .shell-navigation ul .shell-navigation-item .shell-navigation-item-link{padding:var(--space-m) var(--space-s);text-decoration:none;border-left:solid 5px transparent;transition:all .2s ease}.shell .shell-navigation ul .shell-navigation-item .shell-navigation-item-link .shell-navigation-icon{font-size:1.5rem}.shell .shell-navigation ul .shell-navigation-item .shell-navigation-item-link{background-color:var(--surface-navigation-item);color:var(--on-surface-navigation-item, inherit)}.shell .shell-navigation ul .shell-navigation-item .shell-navigation-item-link:hover{background-color:var(--surface-navigation-hover);color:var(--on-surface-navigation-hover, inherit);border-left:solid 5px currentColor}.shell .shell-navigation ul .shell-navigation-item .shell-navigation-item-link.router-link-active{background-color:var(--surface-navigation-hover);color:var(--on-surface-navigation-hover, inherit);border-left:solid 5px currentColor;background-color:#ffffff80}.shell .shell-navigation .shell-navigation-item-label{display:none}.shell .shell-navigation.with-labels .shell-navigation-item-label{display:inline}.shell .shell-navigation .navigation-bottom{margin-top:auto}.tab-view .tab-view-header{gap:var(--space-s);position:relative}.tab-view .tab-view-header .tab-button{padding:var(--space-s) var(--space-l);background:none;border:none;cursor:pointer;transition:color .2s;font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button);background-color:var(--surface-tab);color:var(--on-surface-tab, inherit)}.tab-view .tab-view-header .tab-button:hover{background-color:var(--surface-tab-hover);color:var(--on-surface-tab-hover, inherit)}.tab-view .tab-view-header .tab-button.active{background-color:var(--surface-tab-active);color:var(--on-surface-tab-active, inherit)}.tab-indicator{height:var(--tab-indicator-height);background-color:var(--color-border-highlight);transition:all .3s ease}.tab-line{height:var(--tab-indicator-height);background-color:var(--color-border)}.tab-view-content{flex:1}.tab{animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.form-field{margin-top:var(--space-s);font-family:inherit}.form-field .form-field__label{left:8px;padding:0 var(--space-xs);font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-family:var(--font-family-caption);background-color:var(--surface-input-label);color:var(--on-surface-input-label, inherit)}.form-field .form-field__label--float{left:12px;font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-family:var(--font-family-caption);background-color:var(--surface-input-label-floating);color:var(--on-surface-input-label-floating, inherit)}.form-field.disabled{opacity:var(--opacity-disabled)}.form-field.labelless{margin-top:0}.form-field.labelless .form-field__label{display:none}.input{padding:var(--space-s) var(--space-l);border-radius:var(--border-radius-input);outline:var(--border-input);outline-offset:-1px;gap:var(--space-s);font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);background-color:var(--surface-input);color:var(--on-surface-input, inherit)}.input>*{align-self:center;width:100%}.input:focus-within{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.input input{border:none;outline:none;padding:0;margin:0 var(--space-s);background:transparent;font:inherit;color:inherit}.input input:disabled{opacity:.5;cursor:not-allowed}.input .clear-icon{transition:opacity .2s ease-in}.select:not(.form-field--control) .select-trigger{border:var(--border-input);border-radius:var(--border-radius-input);padding:var(--space-s) var(--space-l);text-align:left;transition:all .2s;height:40px;outline:var(--border-input);outline-offset:-1px;background-color:var(--surface-input);color:var(--on-surface-input, inherit);font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input)}.select:not(.form-field--control) .select-trigger:hover:not(:disabled){background-color:var(--surface-input-hover);color:var(--on-surface-input-hover, inherit);border-color:var(--color-primary)}.select:not(.form-field--control) .select-trigger:focus-visible{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.select:not(.form-field--control) .select-placeholder{color:var(--on-surface-input, inherit)}.select:not(.form-field--control) .select-dropdown{background-color:var(--color-background);border-color:var(--color-border);border-radius:var(--border-radius-s)}.select:not(.form-field--control) .select-option:hover,.select:not(.form-field--control) .select-option.highlighted{background-color:var(--color-hover)}.select:not(.form-field--control) .select-option.selected{background-color:var(--color-primary-light);color:var(--color-primary)}.select.form-field--control .select-trigger{font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);background-color:var(--surface-input);color:var(--on-surface-input, inherit)}.select.form-field--control .select-placeholder{color:var(--color-text-secondary)}.textarea{padding:var(--space-s) var(--space-l);border-radius:var(--border-radius-input);outline:var(--border-input);outline-offset:-1px;font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);background-color:var(--surface-input);color:var(--on-surface-input, inherit)}.textarea>*{align-self:flex-start}.textarea:focus-within{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.textarea textarea{border:none;outline:none;padding:0;margin:0 var(--space-s);background:transparent;font:inherit;color:inherit}.textarea textarea:disabled{opacity:.5;cursor:not-allowed}.textarea .clear-icon{transition:opacity .2s ease-in}:root{--box-shadow-container: rgba(0, 0, 0, .24) 0px 3px 8px;--padding-container: .5rem;--border-radius-component: 6px;--border-radius-container: 4px;--space-xs: .25rem;--space-s: .5rem;--space-m: .75rem;--space-l: 1em;--space-xl: 1.5rem}.compact{--space-xs: .15rem;--space-s: .25rem;--space-m: .5rem;--space-l: .75em;--space-xl: 1rem}.compact .select:not(.form-field--control) .select-trigger{height:32px}:root{--color-border: #dedede;--color-border-highlight: #4f46e5;--border-footer: solid 1px var(--color-border);--border-input: solid 1px var(--color-border);--border-radius-input: 6px;--opacity-disabled: .5;--tab-indicator-height: 3px;--spinner-gradient: linear-gradient(90deg, #0b7a73, #c8a2ff, #fff7d6, #f97316, #051937);--surface-base: #ffffff;--on-surface-base: #333333;--surface-input: #ffffff;--on-surface-input: #333333;--surface-input-label: #ffffff;--on-surface-input-label: #64748b;--surface-input-label-floating: #ffffff;--on-surface-input-label-floating: #4c1d95;--surface-navigation: #ffffff;--on-surface-navigation: #2d3748;--surface-navigation-item: transparent;--on-surface-navigation-item: #64748b;--surface-navigation-hover: transparent;--on-surface-navigation-hover: #4f46e5;--surface-button-primary: #4f46e5;--on-surface-button-primary: #ffffff;--surface-button-secondary: #f97316;--on-surface-button-secondary: #ffffff;--surface-button-tertiary: transparent;--on-surface-button-tertiary: #374151;--surface-dot-menu: #eeeeee;--on-surface-dot-menu: #374151;--surface-button-hover: #403b9c;--on-surface-button-hover: #ffffff;--surface-tab: transparent;--on-surface-tab: #333333;--surface-tab-hover: transparent;--on-surface-tab-hover: #4f46e5;--surface-tab-active: transparent;--on-surface-tab-active: #4f46e5;--surface-primary: #4f46e5;--on-surface-primary: #ffffff;--surface-success: #e6ffef;--on-surface-success: #0b7a3a;--surface-info: #e6f0ff;--on-surface-info: #0b57d0;--surface-warning: #fff7e6;--on-surface-warning: #b36b00;--surface-danger: #ffecec;--on-surface-danger: #b00020;--font-size-title: 24px;--font-weight-title: 600;--line-height-title: 1.2;--letter-spacing-title: normal;--font-family-title: var(--font-family, inherit)}:root h1{font-size:var(--font-size-title);font-weight:var(--font-weight-title);line-height:var(--line-height-title);letter-spacing:var(--letter-spacing-title);font-family:var(--font-family-title);margin:0}:root{--font-size-title: 24px;--font-weight-title: 600;--line-height-title: 1.2;--letter-spacing-title: normal;--font-family-title: var(--font-family, inherit)}:root h2{font-size:var(--font-size-title);font-weight:var(--font-weight-title);line-height:var(--line-height-title);letter-spacing:var(--letter-spacing-title);font-family:var(--font-family-title);margin:0}:root{--font-size-header: 18px;--font-weight-header: 600;--line-height-header: 32px;--letter-spacing-header: normal;--font-family-header: var(--font-family, inherit)}:root h3{font-size:var(--font-size-header);font-weight:var(--font-weight-header);line-height:var(--line-height-header);letter-spacing:var(--letter-spacing-header);font-family:var(--font-family-header);margin:0}:root{--font-size-primary: 16px;--font-weight-primary: 400;--line-height-primary: 1.2;--letter-spacing-primary: normal;--font-family-primary: var(--font-family, inherit)}:root body{font-size:var(--font-size-primary);font-weight:var(--font-weight-primary);line-height:var(--line-height-primary);letter-spacing:var(--letter-spacing-primary);font-family:var(--font-family-primary);margin:0}:root{--font-size-secondary: 14px;--font-weight-secondary: 300;--line-height-secondary: 16px;--letter-spacing-secondary: normal;--font-family-secondary: var(--font-family, inherit)}:root secondary{font-size:var(--font-size-secondary);font-weight:var(--font-weight-secondary);line-height:var(--line-height-secondary);letter-spacing:var(--letter-spacing-secondary);font-family:var(--font-family-secondary);margin:0}:root{--font-size-input: 16px;--font-weight-input: 400;--line-height-input: 24px;--letter-spacing-input: normal;--font-family-input: var(--font-family, inherit)}:root input{font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);margin:0}:root{--font-size-caption: 14px;--font-weight-caption: 400;--line-height-caption: 24px;--letter-spacing-caption: normal;--font-family-caption: var(--font-family, inherit)}:root label{font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-family:var(--font-family-caption);margin:0}:root{--font-size-button: 16px;--font-weight-button: 600;--line-height-button: 24px;--letter-spacing-button: normal;--font-family-button: var(--font-family, inherit)}:root button{font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button);margin:0}html,body{height:100%;padding:0;margin:0}a{color:#fff}
|
|
1
|
+
@charset "UTF-8";.button{transition:opacity .1s ease-in-out;justify-content:center;align-items:center;box-shadow:var(--box-shadow-component);border-radius:var(--border-radius-component);padding:var(--space-s) var(--space-m);gap:var(--space-m);font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button)}.button.primary{background:var(--surface-button-primary);color:var(--on-surface-button-primary, inherit);border:none}.button.secondary{background:var(--surface-button-secondary);color:var(--on-surface-button-secondary, inherit);border:none}.button.tertiary{background:var(--surface-button-tertiary);color:var(--on-surface-button-tertiary, inherit);border:none}.button:not(:disabled):hover{background:var(--surface-button-hover);color:var(--on-surface-button-hover, inherit);cursor:pointer}.button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.button:active{transform:scale(.98);opacity:.8}.button.icon-only{width:40px;height:40px;border-radius:50%}.button-bar,.button-bar .left,.button-bar .right{gap:var(--space-m)}.card{background:var(--surface-base);color:var(--on-surface-base, inherit)}.card .header-actions .button:not(.menu-action){padding:0 var(--space-m)}.card .header-actions .button.icon-only:not(.menu-action){width:32px;height:32px;border-radius:50%}.card.scrollable{height:calc(100% - var(--space-m) - var(--space-m) - var(--space-s) - var(--space-s));overflow:hidden}.chip{justify-content:center;align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-xl);border-radius:2rem;background:#0000000f;color:inherit;font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button)}.chip__close{align-items:center;justify-content:center;padding:0;border:none;background:transparent;cursor:pointer}.checkbox{gap:.5rem}.checkbox-input{opacity:0}.checkbox-input:disabled+.checkbox-box{opacity:.5}.checkbox-input:focus-visible+.checkbox-box{outline:2px solid var(--color-primary);outline-offset:2px}.checkbox-box{width:20px;height:20px;border:2px solid var(--color-border);border-radius:var(--border-radius-input);transition:all .2s ease;background:var(--surface-input);color:var(--on-surface-input, inherit)}.checkbox-icon{width:16px;height:16px}.checkbox-check{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .3s ease;stroke:currentColor}.checkbox-input:checked+.checkbox-box{background:var(--surface-primary);color:var(--on-surface-primary, inherit)}.checkbox-input:checked+.checkbox-box .checkbox-check{stroke-dashoffset:0}.checkbox-box:hover{border-color:var(--color-primary)}.checkbox-label{font-size:1rem;background:var(--surface-base);color:var(--on-surface-base, inherit)}.checkbox-input:disabled~.checkbox-label{opacity:.5}.dialog-card{background:var(--surface-base);color:var(--on-surface-base, inherit)}.dialog-card .header-actions .button:not(.menu-action){padding:0 var(--space-m)}.dialog-card .header-actions .button.icon-only:not(.menu-action){width:32px;height:32px;border-radius:50%}.button.dot-menu{background:var(--surface-dot-menu);color:var(--on-surface-dot-menu, inherit)}.button.dot-menu:hover{background:var(--surface-button-hover);color:var(--on-surface-button-hover, inherit);cursor:pointer}.icon-size-s{font-size:1rem}.icon-size-m{font-size:1.5rem}.icon-size-l{font-size:2rem}.vj-loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#fff9;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:9999;pointer-events:all}.vj-loading-overlay .vj-loading-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xl);padding:var(--space-xl);border-radius:var(--space-m);background:#ffffffeb;box-shadow:var(--box-shadow-container);pointer-events:none}.vj-loading-overlay .vj-loading-inner .spinner{width:5rem;height:5rem}.vj-loading-overlay .vj-loading-inner--small .spinner{width:2rem;height:2rem}.vj-loading-overlay .vj-loading-inner--small{padding:12px;gap:8px}.vj-loading-overlay .vj-loading-inner--minimal{padding:6px;background:transparent;box-shadow:none}.vj-loading-overlay .vj-loading-inner--minimal .spinner{width:1rem;height:1rem}.vj-loading-overlay--hidden{display:none}.vj-loading-text{text-align:center;font-size:var(--font-size-secondary);font-weight:var(--font-weight-secondary);line-height:var(--line-height-secondary);letter-spacing:var(--letter-spacing-secondary);font-family:var(--font-family-secondary);background:var(--surface-base);color:var(--on-surface-base, inherit)}.vj-loading-text--hidden{display:none}.menu{box-shadow:var(--box-shadow-container);border-radius:var(--border-radius-container);padding:var(--space-m);background:var(--surface-base);color:var(--on-surface-base, inherit)}.menu-action{box-shadow:var(--box-shadow-component);border-radius:0;padding:var(--space-s) var(--space-m);gap:var(--space-m)}.menu-action .menu-action--icon{width:24px;height:24px}.page{gap:var(--space-m)}.page header{gap:var(--space-m);padding-bottom:var(--space-m)}.page header>span{gap:var(--space-s)}.page main footer{padding-top:var(--space-s);background:var(--surface-base);color:var(--on-surface-base, inherit)}.radio{gap:.5rem}.radio-input{opacity:0}.radio-input:disabled+.radio-box{opacity:.5}.radio-input:focus-visible+.radio-box{outline:2px solid var(--color-primary);outline-offset:2px}.radio-box{width:20px;height:20px;border:2px solid var(--color-border);border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center;background:var(--surface-input);color:var(--on-surface-input, inherit)}.radio-dot{width:10px;height:10px;border-radius:50%;transform:scale(0);transition:transform .18s ease;background:currentColor}.radio-input:checked+.radio-box .radio-dot{transform:scale(1);background:var(--surface-primary);color:var(--on-surface-primary, inherit)}.radio-box:hover{border-color:var(--color-primary)}.radio-label{font-size:1rem;background:var(--surface-base);color:var(--on-surface-base, inherit)}.radio-input:disabled~.radio-label{opacity:.5}.search-field{padding:var(--space-s) var(--space-l);border-radius:var(--border-radius-input);outline:var(--border-input);outline-offset:-1px;font-size:var(--font-size-primary);font-weight:var(--font-weight-primary);line-height:var(--line-height-primary);letter-spacing:var(--letter-spacing-primary);font-family:var(--font-family-primary);background:var(--surface-input);color:var(--on-surface-input, inherit)}.search-field>*{align-self:center}.search-field:focus-within{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.search-field input{border:none;outline:none;padding:0;margin:0 var(--space-s);background:transparent;font:inherit;color:inherit}.search-field .reset{transition:opacity .2s ease-in}.shell{padding:0}.shell>header{padding:var(--space-s);background:var(--surface-shell-header);color:var(--on-surface-shell-header, inherit)}.shell>header .shell-title{gap:var(--space-m)}.shell>header .shell-title img{width:40px;height:40px}.shell>header .header-actions{display:flex;gap:var(--space-s)}.shell>header{border-bottom:solid var(--space-s) var(--application__color);border-image-slice:1;border-image-source:var(--application-gradient)}.shell .shell-content main{padding:var(--space-s);overflow:auto}.shell .shell-content aside{border-left:1px solid var(--color-border)}.shell .shell-content.with-navigation main{padding:0 var(--space-m)}.shell .shell-navigation{flex-basis:4rem;border-radius:0 10px 20px 0!important;border-bottom:var(--border-footer)!important;background:var(--surface-navigation);color:var(--on-surface-navigation, inherit);box-shadow:var(--box-shadow-container);border-radius:var(--border-radius-container);padding:var(--space-m)}.shell .shell-navigation ul{padding:0;margin:0;gap:var(--space-s)}.shell .shell-navigation .shell-navigation-item{padding:0;margin:0}.shell .shell-navigation .shell-navigation-item .shell-navigation-item-link{padding:var(--space-m) var(--space-s);text-decoration:none;border-left:solid 5px transparent;transition:all .2s ease}.shell .shell-navigation .shell-navigation-item .shell-navigation-item-link .shell-navigation-icon{font-size:1.5rem}.shell .shell-navigation .shell-navigation-item .shell-navigation-item-link{background:var(--surface-navigation-item);color:var(--on-surface-navigation-item, inherit)}.shell .shell-navigation .shell-navigation-item .shell-navigation-item-link:hover{border-left:solid 5px currentColor;background:var(--surface-navigation-hover);color:var(--on-surface-navigation-hover, inherit)}.shell .shell-navigation .shell-navigation-item .shell-navigation-item-link.router-link-active{border-left:solid 5px currentColor;background:var(--surface-navigation-item-active);color:var(--on-surface-navigation-item-active, inherit)}.shell .shell-navigation .shell-navigation-item-label{display:none}.shell .shell-navigation.with-labels .shell-navigation-item-label{display:inline}.shell .shell-navigation .navigation-bottom{margin-top:auto}.vj-skeleton{background:var(--surface-skeleton);color:var(--on-surface-skeleton, inherit)}.vj-skeleton:after{transform:translate(0);filter:blur(.2px);opacity:.95;animation:shimmer-diag 2.5s linear infinite;background:var(--surface-skeleton-shimmer);color:var(--on-surface-skeleton-shimmer, inherit)}@keyframes shimmer-diag{0%{transform:translate(-100%,-100%)}to{transform:translate(100%,100%)}}@media(prefers-reduced-motion:reduce){.vj-skeleton .vj-skeleton:after{animation:none;opacity:.6}}.tab-view .tab-view-header{gap:var(--space-s);position:relative}.tab-view .tab-view-header .tab-button{padding:var(--space-s) var(--space-l);background:none;border:none;cursor:pointer;transition:color .2s;font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button);background:var(--surface-tab);color:var(--on-surface-tab, inherit)}.tab-view .tab-view-header .tab-button:hover{background:var(--surface-tab-hover);color:var(--on-surface-tab-hover, inherit)}.tab-view .tab-view-header .tab-button.active{background:var(--surface-tab-active);color:var(--on-surface-tab-active, inherit)}.tab-indicator{height:var(--tab-indicator-height);background-color:var(--color-border-highlight);transition:all .3s ease}.tab-line{height:var(--tab-indicator-height);background-color:var(--color-border)}.tab-view-content{flex:1}.tab{animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.notification{position:relative;gap:var(--space-s);padding:var(--space-xs) var(--space-s);border-radius:var(--border-radius-component);border-left:4px solid}.notification .notification__message{flex:1 1 auto;gap:var(--space-s)}.notification .notification__message .notification__title{font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button)}.notification .notification__icon{flex-shrink:0;font-size:24px}.notification--success{background:var(--surface-success);color:var(--on-surface-success, inherit)}.notification--info{background:var(--surface-info);color:var(--on-surface-info, inherit)}.notification--warning{background:var(--surface-warning);color:var(--on-surface-warning, inherit)}.notification--error{background:var(--surface-danger);color:var(--on-surface-danger, inherit)}.form-field{margin-top:var(--space-s);font-family:inherit}.form-field .form-field__label{left:var(--space-s);padding:0 var(--space-xs);font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-family:var(--font-family-caption);background:var(--surface-input-label);color:var(--on-surface-input-label, inherit)}.form-field .form-field__label--float{left:var(--space-m);font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-family:var(--font-family-caption);background:var(--surface-input-label-floating);color:var(--on-surface-input-label-floating, inherit)}.form-field.disabled{opacity:var(--opacity-disabled)}.form-field.labelless{margin-top:0}.form-field.labelless .form-field__label{display:none}.form-field.form-field--underlined .form-field__label{left:0!important;padding-left:0!important}.form-field.form-field--underlined .input,.form-field.form-field--underlined .textarea{border-radius:0!important;padding-left:0!important;padding-right:0!important;outline:none!important;box-shadow:0 2px 0 var(--color-border)}.form-field.form-field--underlined .input:focus-within,.form-field.form-field--underlined .textarea:focus-within{box-shadow:0 2px #7c3aed!important}.form-field.form-field--underlined .select-trigger{outline:none!important;border-left:none!important;border-right:none!important;border-top:none!important;border-radius:0!important;border-width:2px!important;padding-left:0!important;border-color:var(--color-border)!important}.form-field.form-field--underlined .select-trigger:focus-visible{outline:none!important;box-shadow:none!important;border-color:#7c3aed!important}.input{border-radius:var(--border-radius-input);outline:var(--border-input);outline-offset:-1px;padding:var(--space-s) var(--space-l);gap:var(--space-s);font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);background:var(--surface-input);color:var(--on-surface-input, inherit)}.input>*{align-self:center;width:100%}.input:focus-within{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.input input{border:none;outline:none;padding:0;margin:0 var(--space-s);background:transparent;font:inherit;color:inherit}.input input:disabled{opacity:.5;cursor:not-allowed}.input .clear-icon{transition:opacity .2s ease-in}.select:not(.form-field--control) .select-trigger{border:var(--border-input);border-radius:var(--border-radius-input);padding:var(--space-s) var(--space-l);text-align:left;transition:all .2s;height:40px;outline:var(--border-input);outline-offset:-1px;background:var(--surface-input);color:var(--on-surface-input, inherit);font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input)}.select:not(.form-field--control) .select-trigger:hover:not(:disabled){background:var(--surface-input-hover);color:var(--on-surface-input-hover, inherit);border-color:var(--color-primary)}.select:not(.form-field--control) .select-trigger:focus-visible{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.select:not(.form-field--control) .select-placeholder{color:var(--on-surface-input, inherit)}.select:not(.form-field--control) .select-dropdown{background-color:var(--color-background);border-color:var(--color-border);border-radius:var(--border-radius-s)}.select:not(.form-field--control) .select-option:hover,.select:not(.form-field--control) .select-option.highlighted{background-color:var(--color-hover)}.select:not(.form-field--control) .select-option.selected{background-color:var(--color-primary-light);color:var(--color-primary)}.select.form-field--control .select-trigger{font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);background:var(--surface-input);color:var(--on-surface-input, inherit)}.select.form-field--control .select-placeholder{color:var(--color-text-secondary)}.textarea{padding:var(--space-s) var(--space-l);border-radius:var(--border-radius-input);outline:var(--border-input);outline-offset:-1px;font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);background:var(--surface-input);color:var(--on-surface-input, inherit)}.textarea>*{align-self:flex-start}.textarea:focus-within{outline-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed14}.textarea textarea{border:none;outline:none;padding:0;margin:0 var(--space-s);background:transparent;font:inherit;color:inherit}.textarea textarea:disabled{opacity:.5;cursor:not-allowed}.textarea .clear-icon{transition:opacity .2s ease-in}:root{--box-shadow-container: rgba(0, 0, 0, .24) 0px 3px 8px;--padding-container: .5rem;--border-radius-component: 6px;--border-radius-container: 4px;--space-xs: .25rem;--space-s: .5rem;--space-m: .75rem;--space-l: 1em;--space-xl: 1.5rem}.compact{--space-xs: .15rem;--space-s: .25rem;--space-m: .5rem;--space-l: .75em;--space-xl: 1rem}.compact .select:not(.form-field--control) .select-trigger{height:32px}:root{--primary-solid: #3b82c4;--primary-gradient: linear-gradient(90deg, #3b82c4 0%, #6197ca 45%, #3b82c4 100%);--application__color: var(--primary-solid);--application-gradient: linear-gradient(90deg, #e8f6ff 0%, #d6e9ff 35%, #f7f9ff 70%, #fff8ea 100%);--color-border: #cccccc;--color-border-highlight: #6d5df6;--border-footer: solid 1px var(--color-border);--border-input: solid 1px var(--color-border);--border-radius-input: 6px;--opacity-disabled: .5;--tab-indicator-height: 3px;--spinner-gradient: linear-gradient(90deg, #00b3a6 0%, #6fb6ff 40%, #ffd39a 80%);--surface-base: #ffffff;--on-surface-base: #333333;--surface-input: #ffffff;--on-surface-input: #333333;--surface-input-label: #ffffff;--on-surface-input-label: #64748b;--surface-input-label-floating: #ffffff;--on-surface-input-label-floating: #4c1d95;--surface-shell-header: #ffffff;--on-surface-shell-header: #2d3748;--surface-navigation: #ffffff;--on-surface-navigation: #2d3748;--surface-navigation-item: transparent;--on-surface-navigation-item: #64748b;--surface-navigation-item-active: rgba(255, 255, 255, .5);--on-surface-navigation-item-active: #3b82c4;--surface-navigation-hover: transparent;--on-surface-navigation-hover: #3b82c4;--surface-button-primary: var(--primary-gradient);--on-surface-button-primary: #ffffff;--surface-button-secondary: #f97316;--on-surface-button-secondary: #ffffff;--surface-button-tertiary: transparent;--on-surface-button-tertiary: #374151;--surface-dot-menu: #eeeeee;--on-surface-dot-menu: #374151;--surface-button-hover: #403b9c;--on-surface-button-hover: #ffffff;--surface-tab: transparent;--on-surface-tab: #333333;--surface-tab-hover: transparent;--on-surface-tab-hover: #3b82c4;--surface-tab-active: transparent;--on-surface-tab-active: #3b82c4;--surface-primary: var(--primary-solid);--on-surface-primary: #ffffff;--surface-success: #1fb67a;--on-surface-success: #ffffff;--surface-info: #e6f0ff;--on-surface-info: #0b57d0;--surface-warning: #f59e0b;--on-surface-warning: #ffffff;--surface-danger: #e11d48;--on-surface-danger: #ffffff;--surface-skeleton: #e9ecef;--on-surface-skeleton: #b00020;--surface-skeleton-shimmer: linear-gradient(135deg, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, .65) 50%, rgba(255, 255, 255, 0) 70%);--on-surface-skeleton-shimmer: #b00020;--font-size-title: 24px;--font-weight-title: 600;--line-height-title: 1.2;--letter-spacing-title: normal;--font-family-title: var(--font-family, inherit)}:root h1{font-size:var(--font-size-title);font-weight:var(--font-weight-title);line-height:var(--line-height-title);letter-spacing:var(--letter-spacing-title);font-family:var(--font-family-title);margin:0}:root{--font-size-subtitle: 24px;--font-weight-subtitle: 600;--line-height-subtitle: 1.2;--letter-spacing-subtitle: normal;--font-family-subtitle: var(--font-family, inherit)}:root h2{font-size:var(--font-size-subtitle);font-weight:var(--font-weight-subtitle);line-height:var(--line-height-subtitle);letter-spacing:var(--letter-spacing-subtitle);font-family:var(--font-family-subtitle);margin:0}:root{--font-size-header: 18px;--font-weight-header: 600;--line-height-header: 32px;--letter-spacing-header: normal;--font-family-header: var(--font-family, inherit)}:root h3{font-size:var(--font-size-header);font-weight:var(--font-weight-header);line-height:var(--line-height-header);letter-spacing:var(--letter-spacing-header);font-family:var(--font-family-header);margin:0}:root{--font-size-primary: 16px;--font-weight-primary: 400;--line-height-primary: 1.2;--letter-spacing-primary: normal;--font-family-primary: var(--font-family, inherit)}:root body{font-size:var(--font-size-primary);font-weight:var(--font-weight-primary);line-height:var(--line-height-primary);letter-spacing:var(--letter-spacing-primary);font-family:var(--font-family-primary);margin:0}:root{--font-size-secondary: 14px;--font-weight-secondary: 300;--line-height-secondary: 16px;--letter-spacing-secondary: normal;--font-family-secondary: var(--font-family, inherit)}:root secondary{font-size:var(--font-size-secondary);font-weight:var(--font-weight-secondary);line-height:var(--line-height-secondary);letter-spacing:var(--letter-spacing-secondary);font-family:var(--font-family-secondary);margin:0}:root{--font-size-input: 16px;--font-weight-input: 400;--line-height-input: 24px;--letter-spacing-input: normal;--font-family-input: var(--font-family, inherit)}:root input{font-size:var(--font-size-input);font-weight:var(--font-weight-input);line-height:var(--line-height-input);letter-spacing:var(--letter-spacing-input);font-family:var(--font-family-input);margin:0}:root{--font-size-caption: 14px;--font-weight-caption: 400;--line-height-caption: 24px;--letter-spacing-caption: normal;--font-family-caption: var(--font-family, inherit)}:root label{font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-family:var(--font-family-caption);margin:0}:root{--font-size-button: 16px;--font-weight-button: 600;--line-height-button: 24px;--letter-spacing-button: normal;--font-family-button: var(--font-family, inherit)}:root button{font-size:var(--font-size-button);font-weight:var(--font-weight-button);line-height:var(--line-height-button);letter-spacing:var(--letter-spacing-button);font-family:var(--font-family-button);margin:0}html,body{height:100%;padding:0;margin:0}a{color:#fff}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export type ChipGroupItem = string | {
|
|
2
|
+
label: string;
|
|
3
|
+
value: string | number;
|
|
4
|
+
dismissable?: boolean;
|
|
5
|
+
color?: string;
|
|
6
|
+
[key: string]: unknown;
|
|
7
|
+
};
|
|
8
|
+
export type ChipGroupProps = {
|
|
9
|
+
items?: ChipGroupItem[];
|
|
10
|
+
label?: string;
|
|
11
|
+
hint?: string;
|
|
12
|
+
dismissable?: boolean;
|
|
13
|
+
color?: string;
|
|
14
|
+
itemKey?: string;
|
|
15
|
+
itemLabel?: string;
|
|
16
|
+
};
|
|
17
|
+
export type ChipGroupEmits = {
|
|
18
|
+
(e: 'update:items', items: ChipGroupItem[]): void;
|
|
19
|
+
(e: 'reorder', items: ChipGroupItem[]): void;
|
|
20
|
+
(e: 'dismiss', item: ChipGroupItem, index: number): void;
|
|
21
|
+
(e: 'chip-click', item: ChipGroupItem, index: number): void;
|
|
22
|
+
};
|
|
23
|
+
declare const __VLS_export: import("vue").DefineComponent<ChipGroupProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
24
|
+
dismiss: (item: ChipGroupItem, index: number) => any;
|
|
25
|
+
"update:items": (items: ChipGroupItem[]) => any;
|
|
26
|
+
reorder: (items: ChipGroupItem[]) => any;
|
|
27
|
+
"chip-click": (item: ChipGroupItem, index: number) => any;
|
|
28
|
+
}, string, import("vue").PublicProps, Readonly<ChipGroupProps> & Readonly<{
|
|
29
|
+
onDismiss?: ((item: ChipGroupItem, index: number) => any) | undefined;
|
|
30
|
+
"onUpdate:items"?: ((items: ChipGroupItem[]) => any) | undefined;
|
|
31
|
+
onReorder?: ((items: ChipGroupItem[]) => any) | undefined;
|
|
32
|
+
"onChip-click"?: ((item: ChipGroupItem, index: number) => any) | undefined;
|
|
33
|
+
}>, {
|
|
34
|
+
dismissable: boolean;
|
|
35
|
+
items: ChipGroupItem[];
|
|
36
|
+
itemKey: string;
|
|
37
|
+
itemLabel: string;
|
|
38
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
39
|
+
declare const _default: typeof __VLS_export;
|
|
40
|
+
export default _default;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface ChipSelectorOption {
|
|
2
|
+
label: string;
|
|
3
|
+
value: string;
|
|
4
|
+
}
|
|
5
|
+
export interface ChipSelectorProps {
|
|
6
|
+
items?: string[];
|
|
7
|
+
label?: string;
|
|
8
|
+
hint?: string;
|
|
9
|
+
options: ChipSelectorOption[];
|
|
10
|
+
dialogTitle?: string;
|
|
11
|
+
addButtonText?: string;
|
|
12
|
+
}
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<ChipSelectorProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
14
|
+
"update:items": (value: string[]) => any;
|
|
15
|
+
}, string, import("vue").PublicProps, Readonly<ChipSelectorProps> & Readonly<{
|
|
16
|
+
"onUpdate:items"?: ((value: string[]) => any) | undefined;
|
|
17
|
+
}>, {
|
|
18
|
+
label: string;
|
|
19
|
+
items: string[];
|
|
20
|
+
hint: string;
|
|
21
|
+
addButtonText: string;
|
|
22
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
23
|
+
declare const _default: typeof __VLS_export;
|
|
24
|
+
export default _default;
|
|
@@ -16,12 +16,12 @@ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
|
16
16
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
17
17
|
"update:modelValue": (value: string | number | Record<string, unknown> | undefined) => any;
|
|
18
18
|
} & {
|
|
19
|
-
"update:modelValue": (v: unknown) => any;
|
|
20
19
|
click: () => any;
|
|
20
|
+
"update:modelValue": (v: unknown) => any;
|
|
21
21
|
dismiss: (v: unknown) => any;
|
|
22
22
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
23
|
-
"onUpdate:modelValue"?: ((v: unknown) => any) | undefined;
|
|
24
23
|
onClick?: (() => any) | undefined;
|
|
24
|
+
"onUpdate:modelValue"?: ((v: unknown) => any) | undefined;
|
|
25
25
|
onDismiss?: ((v: unknown) => any) | undefined;
|
|
26
26
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
27
27
|
declare const _default: typeof __VLS_export;
|
|
@@ -19,14 +19,14 @@ type __VLS_Slots = {} & {
|
|
|
19
19
|
footer?: (props: typeof __VLS_43) => any;
|
|
20
20
|
};
|
|
21
21
|
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
22
|
-
"update:modelValue": (value: boolean) => any;
|
|
23
22
|
cancel: () => any;
|
|
24
23
|
close: () => any;
|
|
24
|
+
"update:modelValue": (value: boolean) => any;
|
|
25
25
|
confirm: () => any;
|
|
26
26
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
27
|
-
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
28
27
|
onCancel?: (() => any) | undefined;
|
|
29
28
|
onClose?: (() => any) | undefined;
|
|
29
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
30
30
|
onConfirm?: (() => any) | undefined;
|
|
31
31
|
}>, {
|
|
32
32
|
modelValue: boolean;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type Props = {
|
|
2
|
+
modelValue?: string;
|
|
3
|
+
showIcon?: boolean;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6
|
+
"update:modelValue": (...args: any[]) => void;
|
|
7
|
+
edit: (...args: any[]) => void;
|
|
8
|
+
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
9
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
10
|
+
onEdit?: ((...args: any[]) => any) | undefined;
|
|
11
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
|
+
declare const _default: typeof __VLS_export;
|
|
13
|
+
export default _default;
|
|
@@ -15,13 +15,13 @@ type __VLS_Slots = {} & {
|
|
|
15
15
|
control?: (props: typeof __VLS_1) => any;
|
|
16
16
|
};
|
|
17
17
|
declare const __VLS_base: import("vue").DefineComponent<FormFieldProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
18
|
-
"update:modelValue": (...args: any[]) => void;
|
|
19
18
|
blur: (...args: any[]) => void;
|
|
20
19
|
focus: (...args: any[]) => void;
|
|
20
|
+
"update:modelValue": (...args: any[]) => void;
|
|
21
21
|
}, string, import("vue").PublicProps, Readonly<FormFieldProps> & Readonly<{
|
|
22
|
-
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
23
22
|
onBlur?: ((...args: any[]) => any) | undefined;
|
|
24
23
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
24
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
25
25
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
26
26
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
27
27
|
declare const _default: typeof __VLS_export;
|
|
@@ -7,9 +7,9 @@ declare const __VLS_export: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_se
|
|
|
7
7
|
}[];
|
|
8
8
|
}) & {
|
|
9
9
|
onInput?: ((value: string | number) => any) | undefined;
|
|
10
|
-
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
11
10
|
onBlur?: ((value: FocusEvent) => any) | undefined;
|
|
12
11
|
onFocus?: ((value: FocusEvent) => any) | undefined;
|
|
12
|
+
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
13
13
|
}> & (typeof globalThis extends {
|
|
14
14
|
__VLS_PROPS_FALLBACK: infer P;
|
|
15
15
|
} ? P : {});
|
|
@@ -6,14 +6,14 @@ type Props = FormFieldProps & {
|
|
|
6
6
|
};
|
|
7
7
|
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
8
8
|
input: (value: number) => any;
|
|
9
|
-
"update:modelValue": (value: number) => any;
|
|
10
9
|
blur: (value: FocusEvent) => any;
|
|
11
10
|
focus: (value: FocusEvent) => any;
|
|
11
|
+
"update:modelValue": (value: number) => any;
|
|
12
12
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
13
13
|
onInput?: ((value: number) => any) | undefined;
|
|
14
|
-
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
15
14
|
onBlur?: ((value: FocusEvent) => any) | undefined;
|
|
16
15
|
onFocus?: ((value: FocusEvent) => any) | undefined;
|
|
16
|
+
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
17
17
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
18
18
|
declare const _default: typeof __VLS_export;
|
|
19
19
|
export default _default;
|
|
@@ -4,14 +4,14 @@ type Props = FormFieldProps & {
|
|
|
4
4
|
};
|
|
5
5
|
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
6
6
|
input: (value: string | number) => any;
|
|
7
|
-
"update:modelValue": (value: string | number) => any;
|
|
8
7
|
blur: (value: FocusEvent) => any;
|
|
9
8
|
focus: (value: FocusEvent) => any;
|
|
9
|
+
"update:modelValue": (value: string | number) => any;
|
|
10
10
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
11
11
|
onInput?: ((value: string | number) => any) | undefined;
|
|
12
|
-
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
13
12
|
onBlur?: ((value: FocusEvent) => any) | undefined;
|
|
14
13
|
onFocus?: ((value: FocusEvent) => any) | undefined;
|
|
14
|
+
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
15
15
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
16
16
|
declare const _default: typeof __VLS_export;
|
|
17
17
|
export default _default;
|
|
@@ -4,14 +4,14 @@ type Props = FormFieldProps & {
|
|
|
4
4
|
};
|
|
5
5
|
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
6
6
|
input: (value: string | number) => any;
|
|
7
|
-
"update:modelValue": (value: string | number) => any;
|
|
8
7
|
blur: (value: FocusEvent) => any;
|
|
9
8
|
focus: (value: FocusEvent) => any;
|
|
9
|
+
"update:modelValue": (value: string | number) => any;
|
|
10
10
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
11
11
|
onInput?: ((value: string | number) => any) | undefined;
|
|
12
|
-
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
13
12
|
onBlur?: ((value: FocusEvent) => any) | undefined;
|
|
14
13
|
onFocus?: ((value: FocusEvent) => any) | undefined;
|
|
14
|
+
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
15
15
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
16
16
|
declare const _default: typeof __VLS_export;
|
|
17
17
|
export default _default;
|
|
@@ -15,9 +15,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
|
|
|
15
15
|
blur: (event: FocusEvent) => any;
|
|
16
16
|
focus: (event: FocusEvent) => any;
|
|
17
17
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
18
|
-
"onUpdate:modelValue"?: ((value: string | number | undefined) => any) | undefined;
|
|
19
18
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
20
19
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
20
|
+
"onUpdate:modelValue"?: ((value: string | number | undefined) => any) | undefined;
|
|
21
21
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
23
23
|
export default _default;
|
|
@@ -15,9 +15,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
|
|
|
15
15
|
blur: (event: FocusEvent) => any;
|
|
16
16
|
focus: (event: FocusEvent) => any;
|
|
17
17
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
18
|
-
"onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
|
|
19
18
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
20
19
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
20
|
+
"onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
|
|
21
21
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
23
23
|
export default _default;
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import ButtonBar from './button-bar.vue';
|
|
2
2
|
import Button from './button.vue';
|
|
3
3
|
import Card from './card.vue';
|
|
4
|
-
import Checkbox from './checkbox.vue';
|
|
5
4
|
import Carousel from './carousel.vue';
|
|
5
|
+
import Checkbox from './checkbox.vue';
|
|
6
|
+
import Radio from './radio.vue';
|
|
7
|
+
import ChipGroup from './chip-group.vue';
|
|
8
|
+
import ChipSelector from './chip-selector.vue';
|
|
9
|
+
import Chip from './chip.vue';
|
|
6
10
|
import Dialog from './dialog.vue';
|
|
7
11
|
import DotMenu from './dot-menu.vue';
|
|
8
12
|
import Icon from './icon.vue';
|
|
@@ -13,8 +17,12 @@ import Page from './page.vue';
|
|
|
13
17
|
import Paginator from './paginator.vue';
|
|
14
18
|
import SearchField from './search-field.vue';
|
|
15
19
|
import Separator from './separator.vue';
|
|
20
|
+
import Spinner from './spinner.vue';
|
|
16
21
|
import TabView from './tab-view.vue';
|
|
17
22
|
import Tab from './tab.vue';
|
|
23
|
+
import EditableLabel from './editable-label.vue';
|
|
24
|
+
import Skeleton from './skeleton.vue';
|
|
25
|
+
export type { ChipSelectorOption, ChipSelectorProps } from './chip-selector.vue';
|
|
18
26
|
export * from './form';
|
|
19
27
|
export * from './shell';
|
|
20
|
-
export { Button, ButtonBar, Card, Carousel, Checkbox, Dialog, DotMenu, Icon, LinkButton, Menu, MenuAction, Page, Paginator, SearchField, Separator, Tab, TabView, };
|
|
28
|
+
export { Button, ButtonBar, Card, Carousel, Checkbox, Radio, Chip, ChipGroup, ChipSelector, Dialog, DotMenu, Icon, LinkButton, Menu, MenuAction, Page, Paginator, SearchField, Separator, Spinner, Tab, TabView, EditableLabel, Skeleton, };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { NotificationType } from '../../services';
|
|
2
|
+
export interface NotificationProps {
|
|
3
|
+
type: NotificationType;
|
|
4
|
+
title: string;
|
|
5
|
+
message: string;
|
|
6
|
+
}
|
|
7
|
+
declare const __VLS_export: import("vue").DefineComponent<NotificationProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
|
+
close: () => any;
|
|
9
|
+
}, string, import("vue").PublicProps, Readonly<NotificationProps> & Readonly<{
|
|
10
|
+
onClose?: (() => any) | undefined;
|
|
11
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
|
+
declare const _default: typeof __VLS_export;
|
|
13
|
+
export default _default;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -23,8 +23,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
|
|
|
23
23
|
change: (...args: any[]) => void;
|
|
24
24
|
"update:modelValue": (value: number) => void;
|
|
25
25
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
26
|
-
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
27
26
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
27
|
+
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
28
28
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
29
29
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
30
30
|
declare const _default: typeof __VLS_export;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
label?: string;
|
|
3
|
+
disabled?: boolean;
|
|
4
|
+
};
|
|
5
|
+
type __VLS_ModelProps = {
|
|
6
|
+
modelValue?: boolean;
|
|
7
|
+
};
|
|
8
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
10
|
+
"update:modelValue": (value: boolean | undefined) => any;
|
|
11
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
12
|
+
"onUpdate:modelValue"?: ((value: boolean | undefined) => any) | undefined;
|
|
13
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
export default _default;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
type Props = {
|
|
2
2
|
label: string;
|
|
3
3
|
icon?: string;
|
|
4
|
-
to
|
|
4
|
+
to?: string | object;
|
|
5
5
|
};
|
|
6
6
|
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
7
|
declare const _default: typeof __VLS_export;
|
|
@@ -3,11 +3,13 @@ type Props = {
|
|
|
3
3
|
icon?: string;
|
|
4
4
|
showNavigation?: boolean;
|
|
5
5
|
};
|
|
6
|
-
declare var __VLS_1: {},
|
|
6
|
+
declare var __VLS_1: {}, __VLS_10: {}, __VLS_12: {};
|
|
7
7
|
type __VLS_Slots = {} & {
|
|
8
8
|
'header-actions'?: (props: typeof __VLS_1) => any;
|
|
9
9
|
} & {
|
|
10
|
-
|
|
10
|
+
'navigation-fixed'?: (props: typeof __VLS_10) => any;
|
|
11
|
+
} & {
|
|
12
|
+
default?: (props: typeof __VLS_12) => any;
|
|
11
13
|
};
|
|
12
14
|
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
15
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type Props = {
|
|
2
|
+
width?: string;
|
|
3
|
+
height?: string;
|
|
4
|
+
borderRadius?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
|
+
declare const _default: typeof __VLS_export;
|
|
8
|
+
export default _default;
|
|
@@ -6,11 +6,11 @@ type Props = {
|
|
|
6
6
|
range?: boolean;
|
|
7
7
|
};
|
|
8
8
|
declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
9
|
-
"update:modelValue": (...args: any[]) => void;
|
|
10
9
|
change: (...args: any[]) => void;
|
|
10
|
+
"update:modelValue": (...args: any[]) => void;
|
|
11
11
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
12
|
-
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
13
12
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
13
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
14
14
|
}>, {
|
|
15
15
|
modelValue: number | [number, number];
|
|
16
16
|
range: boolean;
|
package/dist/types/config.d.ts
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
* Global defaults for component behavior
|
|
4
4
|
*/
|
|
5
5
|
export type LabelPosition = 'inline' | 'outline';
|
|
6
|
+
export type Appearance = 'bordered' | 'underlined';
|
|
6
7
|
export interface VueUIConfig {
|
|
7
8
|
form: {
|
|
8
9
|
labelPosition: LabelPosition;
|
|
10
|
+
appearance: Appearance;
|
|
9
11
|
};
|
|
10
12
|
}
|
|
11
13
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LabelPosition } from '../config';
|
|
1
|
+
import type { Appearance, LabelPosition } from '../config';
|
|
2
2
|
export type FormFieldProps = {
|
|
3
3
|
modelValue: string | number | undefined;
|
|
4
4
|
label: string;
|
|
@@ -10,4 +10,5 @@ export type FormFieldProps = {
|
|
|
10
10
|
spanRow?: boolean;
|
|
11
11
|
error?: string;
|
|
12
12
|
labelPosition?: LabelPosition;
|
|
13
|
+
appearance?: Appearance;
|
|
13
14
|
};
|
|
@@ -22,18 +22,58 @@ export declare enum IconNames {
|
|
|
22
22
|
SHARE = "fa-solid fa-share-nodes",
|
|
23
23
|
SORT = "fa-regular fa-arrow-up-arrow-down",
|
|
24
24
|
CLOSE = "fa-regular fa-circle-xmark",
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
SAVE = "fa-regular fa-floppy-disk",
|
|
26
|
+
COPY = "fa-regular fa-copy",
|
|
27
|
+
DUPLICATE = "fa-regular fa-clone",
|
|
28
|
+
CUT = "fa-solid fa-scissors",
|
|
29
|
+
PASTE = "fa-regular fa-clipboard",
|
|
30
|
+
REFRESH = "fa-solid fa-rotate-right",
|
|
31
|
+
RELOAD = "fa-solid fa-arrows-rotate",
|
|
32
|
+
PRINT = "fa-solid fa-print",
|
|
33
|
+
FILTER = "fa-solid fa-filter",
|
|
34
|
+
UNDO = "fa-solid fa-rotate-left",
|
|
35
|
+
REDO = "fa-solid fa-rotate-right",
|
|
36
|
+
PIN = "fa-solid fa-thumbtack",
|
|
37
|
+
EXPAND = "fa-solid fa-expand",
|
|
38
|
+
COLLAPSE = "fa-solid fa-compress",
|
|
39
|
+
EXTERNAL_LINK = "fa-solid fa-arrow-up-right-from-square",
|
|
40
|
+
INFO = "fa-solid fa-circle-info",
|
|
41
|
+
WARNING = "fa-solid fa-triangle-exclamation",
|
|
27
42
|
ERROR = "fa-regular fa-circle-xmark",
|
|
28
43
|
CHECK = "fa-regular fa-circle-check",
|
|
29
44
|
LOVE = "fa-regular fa-heart",
|
|
45
|
+
STAR = "fa-regular fa-star",
|
|
46
|
+
STAR_FILLED = "fa-solid fa-star",
|
|
47
|
+
HELP = "fa-regular fa-circle-question",
|
|
48
|
+
QUESTION = "fa-solid fa-question",
|
|
30
49
|
PROJECT = "fa-regular fa-folder-open",
|
|
31
50
|
FOLDER = "fa-regular fa-folder",
|
|
32
51
|
FILE_TEXT = "fa-regular fa-file-lines",
|
|
33
52
|
UPLOAD = "fa-solid fa-cloud-arrow-up",
|
|
34
53
|
DOWNLOAD = "fa-solid fa-cloud-arrow-down",
|
|
54
|
+
ATTACHMENT = "fa-solid fa-paperclip",
|
|
55
|
+
LINK = "fa-solid fa-link",
|
|
56
|
+
TAG = "fa-solid fa-tag",
|
|
57
|
+
TAGS = "fa-solid fa-tags",
|
|
35
58
|
SEARCH = "fa-solid fa-magnifying-glass",
|
|
36
59
|
MESSAGE_SQUARE = "fa-regular fa-message",
|
|
37
60
|
MAIL = "fa-regular fa-envelope",
|
|
38
|
-
SHOPPING_BAG = "fa-regular fa-bag-shopping"
|
|
61
|
+
SHOPPING_BAG = "fa-regular fa-bag-shopping",
|
|
62
|
+
COMMENT = "fa-regular fa-comment",
|
|
63
|
+
COMMENTS = "fa-regular fa-comments",
|
|
64
|
+
CALENDAR = "fa-regular fa-calendar",
|
|
65
|
+
CALENDAR_DAY = "fa-solid fa-calendar-day",
|
|
66
|
+
CLOCK = "fa-regular fa-clock",
|
|
67
|
+
HISTORY = "fa-solid fa-clock-rotate-left",
|
|
68
|
+
LOCK = "fa-solid fa-lock",
|
|
69
|
+
UNLOCK = "fa-solid fa-lock-open",
|
|
70
|
+
EYE = "fa-regular fa-eye",
|
|
71
|
+
EYE_SLASH = "fa-regular fa-eye-slash",
|
|
72
|
+
SHIELD = "fa-solid fa-shield",
|
|
73
|
+
LIST = "fa-solid fa-list",
|
|
74
|
+
GRID = "fa-solid fa-grid",
|
|
75
|
+
TABLE = "fa-solid fa-table",
|
|
76
|
+
COLUMNS = "fa-solid fa-columns",
|
|
77
|
+
BELL = "fa-regular fa-bell",
|
|
78
|
+
IMAGE = "fa-regular fa-image"
|
|
39
79
|
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export type NotificationType = 'info' | 'warning' | 'error' | 'success';
|
|
2
|
+
export interface Notification {
|
|
3
|
+
id: string;
|
|
4
|
+
type: NotificationType;
|
|
5
|
+
title: string;
|
|
6
|
+
message: string;
|
|
7
|
+
duration?: number;
|
|
8
|
+
}
|
|
9
|
+
declare class NotificationService {
|
|
10
|
+
private notifications;
|
|
11
|
+
private notificationIdCounter;
|
|
12
|
+
/**
|
|
13
|
+
* Gibt die reaktive Liste der Notifications zurück
|
|
14
|
+
*/
|
|
15
|
+
getNotifications(): import("vue").Ref<{
|
|
16
|
+
id: string;
|
|
17
|
+
type: NotificationType;
|
|
18
|
+
title: string;
|
|
19
|
+
message: string;
|
|
20
|
+
duration?: number | undefined;
|
|
21
|
+
}[], Notification[] | {
|
|
22
|
+
id: string;
|
|
23
|
+
type: NotificationType;
|
|
24
|
+
title: string;
|
|
25
|
+
message: string;
|
|
26
|
+
duration?: number | undefined;
|
|
27
|
+
}[]>;
|
|
28
|
+
/**
|
|
29
|
+
* Zeigt eine Notification an
|
|
30
|
+
* @param type - Der Typ der Notification (info, warning, error, success)
|
|
31
|
+
* @param message - Die Nachricht
|
|
32
|
+
* @param duration - Optionale Dauer in ms (Standard: 5000ms, errors bleiben stehen)
|
|
33
|
+
* @returns Die ID der Notification
|
|
34
|
+
*/
|
|
35
|
+
show(type: NotificationType, title: string, message: string, duration?: number): string;
|
|
36
|
+
/**
|
|
37
|
+
* Zeigt eine Info-Notification
|
|
38
|
+
*/
|
|
39
|
+
info(title: string, message: string, duration?: number): string;
|
|
40
|
+
/**
|
|
41
|
+
* Zeigt eine Warning-Notification
|
|
42
|
+
*/
|
|
43
|
+
warning(title: string, message: string, duration?: number): string;
|
|
44
|
+
/**
|
|
45
|
+
* Zeigt eine Error-Notification (bleibt stehen bis manuell geschlossen)
|
|
46
|
+
*/
|
|
47
|
+
error(title: string, message: string): string;
|
|
48
|
+
/**
|
|
49
|
+
* Zeigt eine Success-Notification
|
|
50
|
+
*/
|
|
51
|
+
success(title: string, message: string, duration?: number): string;
|
|
52
|
+
/**
|
|
53
|
+
* Entfernt eine spezifische Notification
|
|
54
|
+
*/
|
|
55
|
+
remove(id: string): void;
|
|
56
|
+
/**
|
|
57
|
+
* Entfernt alle Notifications
|
|
58
|
+
*/
|
|
59
|
+
clearAll(): void;
|
|
60
|
+
}
|
|
61
|
+
export declare const notificationService: NotificationService;
|
|
62
|
+
export {};
|