@camtomlabs/malix-design-system 0.3.0 → 0.4.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.
- package/README.md +48 -1
- package/dist/index.cjs +452 -291
- package/dist/index.d.cts +97 -3
- package/dist/index.d.ts +97 -3
- package/dist/index.js +437 -277
- package/package.json +1 -1
- package/src/styles.css +127 -0
package/package.json
CHANGED
package/src/styles.css
CHANGED
|
@@ -941,6 +941,133 @@
|
|
|
941
941
|
opacity: 0.9;
|
|
942
942
|
}
|
|
943
943
|
|
|
944
|
+
/* ═══════════════════════════════════════════════
|
|
945
|
+
DIALOG — canonical composable modal
|
|
946
|
+
Slot-based: <Dialog.Header>, <Dialog.Body>, <Dialog.Footer>
|
|
947
|
+
Variants: default | danger | warning | info
|
|
948
|
+
Sizes: sm (400px) | md (560px) | lg (720px)
|
|
949
|
+
═══════════════════════════════════════════════ */
|
|
950
|
+
|
|
951
|
+
.malix-dialog {
|
|
952
|
+
display: flex;
|
|
953
|
+
flex-direction: column;
|
|
954
|
+
width: 100%;
|
|
955
|
+
max-height: min(85vh, 720px);
|
|
956
|
+
background: var(--malix-surface-elevated);
|
|
957
|
+
border: 1px solid var(--malix-border);
|
|
958
|
+
border-radius: var(--malix-radius-lg);
|
|
959
|
+
box-shadow: var(--malix-shadow-card-l3);
|
|
960
|
+
z-index: var(--malix-z-modal);
|
|
961
|
+
overflow: hidden;
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
.malix-dialog:focus {
|
|
965
|
+
outline: none;
|
|
966
|
+
}
|
|
967
|
+
|
|
968
|
+
.malix-dialog[data-size="sm"] {
|
|
969
|
+
max-width: 400px;
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
.malix-dialog[data-size="md"] {
|
|
973
|
+
max-width: 560px;
|
|
974
|
+
}
|
|
975
|
+
|
|
976
|
+
.malix-dialog[data-size="lg"] {
|
|
977
|
+
max-width: 720px;
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
.malix-dialog__header {
|
|
981
|
+
display: flex;
|
|
982
|
+
align-items: flex-start;
|
|
983
|
+
justify-content: space-between;
|
|
984
|
+
gap: 16px;
|
|
985
|
+
padding: 20px 24px;
|
|
986
|
+
border-bottom: 1px solid var(--malix-border);
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
.malix-dialog[data-variant="danger"] .malix-dialog__header {
|
|
990
|
+
border-bottom-color: var(--malix-error-light);
|
|
991
|
+
}
|
|
992
|
+
|
|
993
|
+
.malix-dialog[data-variant="warning"] .malix-dialog__header {
|
|
994
|
+
border-bottom-color: var(--malix-warning-light);
|
|
995
|
+
}
|
|
996
|
+
|
|
997
|
+
.malix-dialog[data-variant="info"] .malix-dialog__header {
|
|
998
|
+
border-bottom-color: var(--malix-info-light);
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
.malix-dialog__title {
|
|
1002
|
+
margin: 0;
|
|
1003
|
+
font-family: var(--malix-font-body);
|
|
1004
|
+
font-size: var(--malix-text-lg);
|
|
1005
|
+
font-weight: var(--malix-weight-semibold);
|
|
1006
|
+
color: var(--malix-foreground);
|
|
1007
|
+
line-height: 1.4;
|
|
1008
|
+
}
|
|
1009
|
+
|
|
1010
|
+
.malix-dialog__close {
|
|
1011
|
+
display: inline-flex;
|
|
1012
|
+
align-items: center;
|
|
1013
|
+
justify-content: center;
|
|
1014
|
+
flex-shrink: 0;
|
|
1015
|
+
width: 32px;
|
|
1016
|
+
height: 32px;
|
|
1017
|
+
margin: -6px -6px -6px 0;
|
|
1018
|
+
border: none;
|
|
1019
|
+
background: transparent;
|
|
1020
|
+
border-radius: var(--malix-radius-sm);
|
|
1021
|
+
cursor: pointer;
|
|
1022
|
+
color: var(--malix-foreground-secondary);
|
|
1023
|
+
transition: background-color 120ms ease, color 120ms ease;
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
.malix-dialog__close:hover {
|
|
1027
|
+
background: var(--malix-surface-hover);
|
|
1028
|
+
color: var(--malix-foreground);
|
|
1029
|
+
}
|
|
1030
|
+
|
|
1031
|
+
.malix-dialog__close:focus-visible {
|
|
1032
|
+
outline: 2px solid var(--malix-primary);
|
|
1033
|
+
outline-offset: 2px;
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
.malix-dialog__body {
|
|
1037
|
+
flex: 1 1 auto;
|
|
1038
|
+
overflow-y: auto;
|
|
1039
|
+
padding: 20px 24px;
|
|
1040
|
+
font-family: var(--malix-font-body);
|
|
1041
|
+
font-size: var(--malix-text-base);
|
|
1042
|
+
color: var(--malix-foreground-secondary);
|
|
1043
|
+
line-height: 1.6;
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
.malix-dialog__footer {
|
|
1047
|
+
display: flex;
|
|
1048
|
+
align-items: center;
|
|
1049
|
+
gap: 12px;
|
|
1050
|
+
padding: 16px 24px;
|
|
1051
|
+
border-top: 1px solid var(--malix-border);
|
|
1052
|
+
background: var(--malix-surface-secondary);
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
.malix-dialog__footer[data-align="end"] {
|
|
1056
|
+
justify-content: flex-end;
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1059
|
+
.malix-dialog__footer[data-align="start"] {
|
|
1060
|
+
justify-content: flex-start;
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
.malix-dialog__footer[data-align="center"] {
|
|
1064
|
+
justify-content: center;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1067
|
+
.malix-dialog__footer[data-align="between"] {
|
|
1068
|
+
justify-content: space-between;
|
|
1069
|
+
}
|
|
1070
|
+
|
|
944
1071
|
/* ═══════════════════════════════════════════════
|
|
945
1072
|
GLASS POPOVER — Pencil: bgJHS
|
|
946
1073
|
w: 300, radius-xl, glass bg
|