@zidsa/zidmui 1.4.41 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Tooltip Component
3
+ * Dark background with light text
4
+ */
5
+
6
+ /* ========================================
7
+ * Base Tooltip
8
+ * ======================================== */
9
+ :where(.zid-tooltip) {
10
+ position: relative;
11
+ display: inline-block;
12
+ }
13
+
14
+ /* ========================================
15
+ * Tooltip Content
16
+ * ======================================== */
17
+ .zid-tooltip__content {
18
+ position: absolute;
19
+ z-index: 1500;
20
+ padding: var(--zid-spacing-1) var(--zid-spacing-1-5);
21
+ background-color: var(--zid-color-neutral-1000);
22
+ color: var(--zid-color-neutral-50);
23
+ font-family: var(--zid-font-family);
24
+ font-size: var(--zid-font-size-sm);
25
+ line-height: var(--zid-line-height-normal);
26
+ border-radius: var(--zid-radius-sm);
27
+ white-space: nowrap;
28
+ opacity: 0;
29
+ visibility: hidden;
30
+ transition: opacity var(--zid-transition-fast),
31
+ visibility var(--zid-transition-fast);
32
+ pointer-events: none;
33
+ }
34
+
35
+ .zid-tooltip:hover .zid-tooltip__content,
36
+ .zid-tooltip--open .zid-tooltip__content {
37
+ opacity: 1;
38
+ visibility: visible;
39
+ }
40
+
41
+ /* ========================================
42
+ * Tooltip Positions
43
+ * ======================================== */
44
+ .zid-tooltip__content--top {
45
+ bottom: 100%;
46
+ left: 50%;
47
+ transform: translateX(-50%);
48
+ margin-bottom: var(--zid-spacing-1);
49
+ }
50
+
51
+ .zid-tooltip__content--bottom {
52
+ top: 100%;
53
+ left: 50%;
54
+ transform: translateX(-50%);
55
+ margin-top: var(--zid-spacing-1);
56
+ }
57
+
58
+ .zid-tooltip__content--left {
59
+ right: 100%;
60
+ top: 50%;
61
+ transform: translateY(-50%);
62
+ margin-right: var(--zid-spacing-1);
63
+ }
64
+
65
+ .zid-tooltip__content--right {
66
+ left: 100%;
67
+ top: 50%;
68
+ transform: translateY(-50%);
69
+ margin-left: var(--zid-spacing-1);
70
+ }
71
+
72
+ /* ========================================
73
+ * Tooltip Arrow
74
+ * ======================================== */
75
+ .zid-tooltip__content::after {
76
+ content: '';
77
+ position: absolute;
78
+ border: 6px solid transparent;
79
+ }
80
+
81
+ .zid-tooltip__content--top::after {
82
+ top: 100%;
83
+ left: 50%;
84
+ transform: translateX(-50%);
85
+ border-top-color: var(--zid-color-neutral-1000);
86
+ }
87
+
88
+ .zid-tooltip__content--bottom::after {
89
+ bottom: 100%;
90
+ left: 50%;
91
+ transform: translateX(-50%);
92
+ border-bottom-color: var(--zid-color-neutral-1000);
93
+ }
94
+
95
+ .zid-tooltip__content--left::after {
96
+ left: 100%;
97
+ top: 50%;
98
+ transform: translateY(-50%);
99
+ border-left-color: var(--zid-color-neutral-1000);
100
+ }
101
+
102
+ .zid-tooltip__content--right::after {
103
+ right: 100%;
104
+ top: 50%;
105
+ transform: translateY(-50%);
106
+ border-right-color: var(--zid-color-neutral-1000);
107
+ }
108
+
109
+ /* ========================================
110
+ * Tooltip Title
111
+ * ======================================== */
112
+ .zid-tooltip__title {
113
+ font-weight: 600;
114
+ font-size: 13px;
115
+ line-height: 20px;
116
+ margin-bottom: var(--zid-spacing-0-5);
117
+ }
118
+
119
+ /* ========================================
120
+ * Tooltip Description
121
+ * ======================================== */
122
+ .zid-tooltip__description {
123
+ font-weight: 400;
124
+ font-size: 12px;
125
+ }
126
+
127
+ /* ========================================
128
+ * Multiline Tooltip
129
+ * ======================================== */
130
+ .zid-tooltip__content--multiline {
131
+ white-space: normal;
132
+ max-width: 300px;
133
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Zid Partner CSS Design System
3
+ * Entry point - imports all files in correct order
4
+ *
5
+ * @package @zid/partner-css
6
+ * @version 1.0.0
7
+ */
8
+
9
+ /* ========================================
10
+ * 1. Token Definitions (no dependencies)
11
+ * ======================================== */
12
+ @import './colors.css';
13
+ @import './typography.css';
14
+ @import './spacing.css';
15
+ @import './states.css';
16
+ @import './root.css';
17
+
18
+ /* ========================================
19
+ * 2. Utilities (depends on tokens)
20
+ * ======================================== */
21
+ @import './utilities.css';
22
+
23
+ /* ========================================
24
+ * 3. Components (depends on tokens)
25
+ * ======================================== */
26
+ @import './components/button.css';
27
+ @import './components/input.css';
28
+ @import './components/checkbox.css';
29
+ @import './components/radio.css';
30
+ @import './components/switch.css';
31
+ @import './components/select.css';
32
+ @import './components/card.css';
33
+ @import './components/modal.css';
34
+ @import './components/table.css';
35
+ @import './components/tooltip.css';
36
+ @import './components/alert.css';
37
+ @import './components/status.css';
38
+ @import './components/list-item.css';
@@ -0,0 +1,169 @@
1
+ /**
2
+ * Input Component
3
+ * States: default, hover, focus, error, disabled
4
+ * Sizes: sm, md, lg
5
+ */
6
+
7
+ /* ========================================
8
+ * Base Input
9
+ * ======================================== */
10
+ :where(.zid-input) {
11
+ display: flex;
12
+ align-items: center;
13
+ gap: var(--zid-spacing-1);
14
+ font-family: var(--zid-font-family);
15
+ font-size: var(--zid-font-size-base);
16
+ line-height: var(--zid-line-height-normal);
17
+ color: var(--zid-text-primary);
18
+ background-color: var(--zid-bg-paper);
19
+ border: 1px solid #EBE8ED;
20
+ border-radius: var(--zid-radius-standard);
21
+ transition: border-color var(--zid-transition-fast),
22
+ box-shadow var(--zid-transition-fast);
23
+ width: 100%;
24
+ }
25
+
26
+ /* ========================================
27
+ * Size Modifiers
28
+ * ======================================== */
29
+ .zid-input--sm {
30
+ padding: 8px 16px;
31
+ font-size: var(--zid-font-size-sm);
32
+ min-height: 40px;
33
+ line-height: 24px;
34
+ }
35
+
36
+ .zid-input--md {
37
+ padding: 8px 16px;
38
+ font-size: var(--zid-font-size-base);
39
+ min-height: 48px;
40
+ line-height: 24px;
41
+ }
42
+
43
+ .zid-input--lg {
44
+ padding: 12px 16px;
45
+ font-size: var(--zid-font-size-lg);
46
+ min-height: 56px;
47
+ line-height: 24px;
48
+ }
49
+
50
+ /* ========================================
51
+ * Native Input Element
52
+ * ======================================== */
53
+ .zid-input__field {
54
+ flex: 1;
55
+ border: none;
56
+ outline: none;
57
+ background: transparent;
58
+ font-family: inherit;
59
+ font-size: inherit;
60
+ line-height: inherit;
61
+ color: inherit;
62
+ padding: 0;
63
+ margin: 0;
64
+ width: 100%;
65
+ }
66
+
67
+ .zid-input__field::placeholder {
68
+ color: var(--zid-text-disabled);
69
+ }
70
+
71
+ /* ========================================
72
+ * Hover State
73
+ * ======================================== */
74
+ .zid-input:hover:not(.zid-input--disabled):not(.zid-input--error) {
75
+ border-color: #D8D2DD;
76
+ }
77
+
78
+ /* ========================================
79
+ * Focus State
80
+ * ======================================== */
81
+ .zid-input:focus-within:not(.zid-input--disabled):not(.zid-input--error) {
82
+ border-color: var(--zid-primary-main);
83
+ border-width: 2px;
84
+ }
85
+
86
+ /* ========================================
87
+ * Error State
88
+ * ======================================== */
89
+ .zid-input--error {
90
+ border-color: var(--zid-error-main);
91
+ }
92
+
93
+ .zid-input--error:focus-within {
94
+ border-color: var(--zid-error-main);
95
+ }
96
+
97
+ /* ========================================
98
+ * Disabled State
99
+ * ======================================== */
100
+ .zid-input--disabled {
101
+ background-color: var(--zid-action-disabled-background);
102
+ border-color: var(--zid-color-neutral-200);
103
+ color: var(--zid-text-disabled);
104
+ cursor: not-allowed;
105
+ }
106
+
107
+ .zid-input--disabled .zid-input__field {
108
+ cursor: not-allowed;
109
+ }
110
+
111
+ /* ========================================
112
+ * Adornments
113
+ * ======================================== */
114
+ .zid-input__adornment {
115
+ display: flex;
116
+ align-items: center;
117
+ justify-content: center;
118
+ color: var(--zid-text-secondary);
119
+ flex-shrink: 0;
120
+ }
121
+
122
+ .zid-input__adornment--start {
123
+ margin-right: var(--zid-spacing-0-5);
124
+ }
125
+
126
+ .zid-input__adornment--end {
127
+ margin-left: var(--zid-spacing-0-5);
128
+ }
129
+
130
+ /* ========================================
131
+ * Adornment Text
132
+ * ======================================== */
133
+ .zid-input__adornment-text {
134
+ font-size: var(--zid-font-size-sm);
135
+ color: var(--zid-text-tertiary);
136
+ white-space: nowrap;
137
+ }
138
+
139
+ /* ========================================
140
+ * Helper Text
141
+ * ======================================== */
142
+ .zid-input-helper {
143
+ font-family: var(--zid-font-family);
144
+ font-size: var(--zid-font-size-xs);
145
+ line-height: var(--zid-line-height-normal);
146
+ color: var(--zid-text-secondary);
147
+ margin-top: var(--zid-spacing-0-5);
148
+ }
149
+
150
+ .zid-input-helper--error {
151
+ color: var(--zid-error-main);
152
+ }
153
+
154
+ /* ========================================
155
+ * Label
156
+ * ======================================== */
157
+ .zid-input-label {
158
+ display: block;
159
+ font-family: var(--zid-font-family);
160
+ font-size: var(--zid-font-size-sm);
161
+ font-weight: var(--zid-font-weight-medium);
162
+ color: var(--zid-text-primary);
163
+ margin-bottom: var(--zid-spacing-0-5);
164
+ }
165
+
166
+ .zid-input-label--required::after {
167
+ content: ' *';
168
+ color: var(--zid-error-main);
169
+ }
@@ -0,0 +1,149 @@
1
+ /**
2
+ * List Item Component
3
+ * Icon, text, and content slots
4
+ */
5
+
6
+ /* ========================================
7
+ * Base List Item
8
+ * ======================================== */
9
+ :where(.zid-list-item) {
10
+ display: flex;
11
+ align-items: center;
12
+ gap: var(--zid-spacing-1-5);
13
+ padding: var(--zid-spacing-1-5) 0;
14
+ font-family: var(--zid-font-family);
15
+ border-bottom: 1px solid var(--zid-divider);
16
+ }
17
+
18
+ .zid-list-item:first-child {
19
+ padding-top: 0;
20
+ }
21
+
22
+ .zid-list-item:last-child {
23
+ border-bottom: none;
24
+ }
25
+
26
+ /* ========================================
27
+ * List Item Icon
28
+ * ======================================== */
29
+ .zid-list-item__icon {
30
+ display: flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ flex-shrink: 0;
34
+ min-width: auto;
35
+ color: var(--zid-text-secondary);
36
+ }
37
+
38
+ .zid-list-item__icon svg {
39
+ width: 20px;
40
+ height: 20px;
41
+ }
42
+
43
+ /* ========================================
44
+ * List Item Text Container
45
+ * ======================================== */
46
+ .zid-list-item__text {
47
+ flex: 1;
48
+ min-width: 0;
49
+ display: flex;
50
+ flex-direction: column;
51
+ gap: var(--zid-spacing-0-5);
52
+ }
53
+
54
+ /* ========================================
55
+ * Primary Text
56
+ * ======================================== */
57
+ .zid-list-item__primary {
58
+ font-size: var(--zid-font-size-sm);
59
+ font-weight: var(--zid-font-weight-regular);
60
+ color: var(--zid-text-primary);
61
+ line-height: var(--zid-line-height-normal);
62
+ overflow: hidden;
63
+ text-overflow: ellipsis;
64
+ white-space: nowrap;
65
+ }
66
+
67
+ /* ========================================
68
+ * Secondary Text (Description)
69
+ * ======================================== */
70
+ .zid-list-item__secondary {
71
+ font-size: var(--zid-font-size-xs);
72
+ font-weight: var(--zid-font-weight-regular);
73
+ color: var(--zid-text-tertiary);
74
+ line-height: var(--zid-line-height-normal);
75
+ overflow: hidden;
76
+ text-overflow: ellipsis;
77
+ white-space: nowrap;
78
+ }
79
+
80
+ /* ========================================
81
+ * Right-side Content
82
+ * ======================================== */
83
+ .zid-list-item__content {
84
+ display: flex;
85
+ align-items: center;
86
+ gap: var(--zid-spacing-1);
87
+ flex-shrink: 0;
88
+ color: var(--zid-text-secondary);
89
+ }
90
+
91
+ /* ========================================
92
+ * Clickable List Item
93
+ * ======================================== */
94
+ .zid-list-item--clickable {
95
+ cursor: pointer;
96
+ transition: background-color var(--zid-transition-fast);
97
+ margin: 0 calc(var(--zid-spacing-1-5) * -1);
98
+ padding-left: var(--zid-spacing-1-5);
99
+ padding-right: var(--zid-spacing-1-5);
100
+ border-radius: var(--zid-radius-standard);
101
+ }
102
+
103
+ .zid-list-item--clickable:hover {
104
+ background-color: var(--zid-action-hover);
105
+ }
106
+
107
+ .zid-list-item--clickable:active {
108
+ background-color: var(--zid-action-selected);
109
+ }
110
+
111
+ /* ========================================
112
+ * Selected List Item
113
+ * ======================================== */
114
+ .zid-list-item--selected {
115
+ background-color: var(--zid-action-selected);
116
+ }
117
+
118
+ /* ========================================
119
+ * Disabled List Item
120
+ * ======================================== */
121
+ .zid-list-item--disabled {
122
+ opacity: 0.5;
123
+ pointer-events: none;
124
+ }
125
+
126
+ /* ========================================
127
+ * Dense List Item
128
+ * ======================================== */
129
+ .zid-list-item--dense {
130
+ padding: var(--zid-spacing-1) 0;
131
+ gap: var(--zid-spacing-1-5);
132
+ }
133
+
134
+ .zid-list-item--dense .zid-list-item__primary {
135
+ font-size: var(--zid-font-size-xs);
136
+ }
137
+
138
+ .zid-list-item--dense .zid-list-item__secondary {
139
+ font-size: var(--zid-font-size-xs);
140
+ }
141
+
142
+ /* ========================================
143
+ * List Container
144
+ * ======================================== */
145
+ .zid-list {
146
+ list-style: none;
147
+ margin: 0;
148
+ padding: 0;
149
+ }
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Modal Component
3
+ * Dialog overlay with backdrop
4
+ */
5
+
6
+ /* ========================================
7
+ * Modal Backdrop
8
+ * ======================================== */
9
+ .zid-modal__backdrop {
10
+ position: fixed;
11
+ top: 0;
12
+ left: 0;
13
+ right: 0;
14
+ bottom: 0;
15
+ background-color: rgba(0, 0, 0, 0.1);
16
+ display: flex;
17
+ align-items: center;
18
+ justify-content: center;
19
+ z-index: 1300;
20
+ opacity: 0;
21
+ visibility: hidden;
22
+ transition: opacity var(--zid-transition-normal),
23
+ visibility var(--zid-transition-normal);
24
+ }
25
+
26
+ .zid-modal__backdrop--open {
27
+ opacity: 1;
28
+ visibility: visible;
29
+ }
30
+
31
+ /* ========================================
32
+ * Modal Content
33
+ * ======================================== */
34
+ .zid-modal__content {
35
+ background-color: var(--zid-bg-paper);
36
+ border-radius: var(--zid-radius-md);
37
+ box-shadow: var(--zid-shadow-24);
38
+ max-width: 90vw;
39
+ max-height: 90vh;
40
+ overflow: auto;
41
+ transform: scale(0.95);
42
+ transition: transform var(--zid-transition-normal);
43
+ }
44
+
45
+ .zid-modal__backdrop--open .zid-modal__content {
46
+ transform: scale(1);
47
+ }
48
+
49
+ /* ========================================
50
+ * Modal Size Variants
51
+ * ======================================== */
52
+ .zid-modal__content--sm {
53
+ width: 400px;
54
+ }
55
+
56
+ .zid-modal__content--md {
57
+ width: 600px;
58
+ }
59
+
60
+ .zid-modal__content--lg {
61
+ width: 800px;
62
+ }
63
+
64
+ .zid-modal__content--xl {
65
+ width: 1000px;
66
+ }
67
+
68
+ .zid-modal__content--full {
69
+ width: 100vw;
70
+ height: 100vh;
71
+ max-width: 100vw;
72
+ max-height: 100vh;
73
+ border-radius: 0;
74
+ }
75
+
76
+ /* ========================================
77
+ * Modal Header
78
+ * ======================================== */
79
+ .zid-modal__header {
80
+ display: flex;
81
+ align-items: center;
82
+ justify-content: space-between;
83
+ gap: var(--zid-spacing-2);
84
+ padding: var(--zid-spacing-2) var(--zid-spacing-3);
85
+ border-bottom: 1px solid var(--zid-divider);
86
+ }
87
+
88
+ .zid-modal__title {
89
+ font-family: var(--zid-font-family);
90
+ font-size: var(--zid-font-size-xl);
91
+ font-weight: var(--zid-font-weight-semibold);
92
+ color: var(--zid-text-primary);
93
+ margin: 0;
94
+ }
95
+
96
+ .zid-modal__close {
97
+ display: flex;
98
+ align-items: center;
99
+ justify-content: center;
100
+ width: 32px;
101
+ height: 32px;
102
+ border: none;
103
+ background: transparent;
104
+ border-radius: var(--zid-radius-standard);
105
+ cursor: pointer;
106
+ color: var(--zid-text-secondary);
107
+ transition: background-color var(--zid-transition-fast);
108
+ }
109
+
110
+ .zid-modal__close:hover {
111
+ background-color: var(--zid-action-hover);
112
+ }
113
+
114
+ .zid-modal__close:focus-visible {
115
+ outline: 2px solid var(--zid-primary-main);
116
+ outline-offset: 2px;
117
+ }
118
+
119
+ /* ========================================
120
+ * Modal Body
121
+ * ======================================== */
122
+ .zid-modal__body {
123
+ padding: var(--zid-spacing-3);
124
+ font-family: var(--zid-font-family);
125
+ font-size: var(--zid-font-size-base);
126
+ color: var(--zid-text-primary);
127
+ line-height: var(--zid-line-height-normal);
128
+ }
129
+
130
+ /* ========================================
131
+ * Modal Footer
132
+ * ======================================== */
133
+ .zid-modal__footer {
134
+ display: flex;
135
+ align-items: center;
136
+ justify-content: flex-end;
137
+ gap: var(--zid-spacing-1);
138
+ padding: var(--zid-spacing-2) var(--zid-spacing-3);
139
+ border-top: 1px solid var(--zid-divider);
140
+ }
141
+
142
+ .zid-modal__footer--start {
143
+ justify-content: flex-start;
144
+ }
145
+
146
+ .zid-modal__footer--center {
147
+ justify-content: center;
148
+ }
149
+
150
+ .zid-modal__footer--between {
151
+ justify-content: space-between;
152
+ }