@deriv-web-design/ui 0.1.24 → 0.1.26

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.
@@ -4825,6 +4825,7 @@
4825
4825
  "ctaHref",
4826
4826
  "languageLabel",
4827
4827
  "languageItems",
4828
+ "languageRows",
4828
4829
  "activeLanguageCode"
4829
4830
  ],
4830
4831
  "variants": [
@@ -4900,6 +4901,11 @@
4900
4901
  "maxLength": 10,
4901
4902
  "description": "Current language code shown in the switcher, e.g. \"EN\". No default — omit it and the language switcher is not rendered at all."
4902
4903
  },
4904
+ "languageRows": {
4905
+ "type": "number",
4906
+ "required": false,
4907
+ "description": "Max items per column in the language dropdown. When set, columns are derived (ceil(items / languageRows)); when omitted, the existing 3-column layout is unchanged."
4908
+ },
4903
4909
  "loginHref": {
4904
4910
  "type": "url",
4905
4911
  "required": false,
@@ -2929,6 +2929,11 @@
2929
2929
  "required": false,
2930
2930
  "description": "Language label rendered next to the globe icon, e.g. \"EN\""
2931
2931
  },
2932
+ "languageRows": {
2933
+ "type": "number",
2934
+ "required": false,
2935
+ "description": "Max items per column in the language dropdown. When set (integer ≥ 1), the number of columns is derived (`ceil(items / languageRows)`); when omitted, the existing 3-column layout is unchanged."
2936
+ },
2932
2937
  "loginHref": {
2933
2938
  "type": "string",
2934
2939
  "required": false,
package/dist/index.css CHANGED
@@ -4739,8 +4739,12 @@
4739
4739
  .navbar__lang-dropdown {
4740
4740
  position: absolute;
4741
4741
  top: calc(100% + var(--spacing-8));
4742
- left: calc(50% - 352px);
4743
- width: 704px;
4742
+ left: 0;
4743
+ right: 0;
4744
+ margin-inline: auto;
4745
+ width: max-content;
4746
+ min-width: 704px;
4747
+ max-width: calc(100vw - 2 * var(--spacing-24));
4744
4748
  background-color: var(--color-slate-50);
4745
4749
  border: 1px solid var(--color-slate-100);
4746
4750
  border-radius: var(--navbar-dropdown-radius);
@@ -4752,7 +4756,7 @@
4752
4756
  }
4753
4757
  .navbar__lang-dropdown-grid {
4754
4758
  display: grid;
4755
- grid-template-columns: repeat(3, 1fr);
4759
+ grid-template-columns: repeat(var(--lang-cols, 3), 1fr);
4756
4760
  grid-auto-flow: column;
4757
4761
  grid-template-rows: repeat(var(--lang-rows, 7), auto);
4758
4762
  gap: 0;
@@ -12131,128 +12135,128 @@
12131
12135
 
12132
12136
  /* components/LinkModal/LinkModal.css */
12133
12137
  :root {
12134
- --lm-scrim-color: rgb(0 0 0 / 72%);
12135
- --lm-scrim-blur: 4px;
12136
- --lm-z-index: 9999;
12137
- --lm-panel-background: var(--background-surface);
12138
- --lm-panel-radius: var(--radius-xl);
12139
- --lm-panel-shadow: var(--elevation-modal);
12140
- --lm-panel-max-width: var(--content-width-846);
12141
- --lm-panel-padding-block: var(--spacing-40);
12142
- --lm-panel-padding-inline: var(--spacing-24);
12143
- --lm-panel-gap: var(--spacing-24);
12144
- --lm-panel-margin: var(--spacing-16);
12145
- --lm-title-color: var(--text-primary);
12146
- --lm-close-inset: var(--spacing-8);
12147
- --lm-close-size: var(--spacing-48);
12148
- --lm-close-glyph-size: var(--spacing-24);
12149
- --lm-close-icon-color: var(--icon-primary);
12150
- --lm-close-hover-background: var(--color-opacity-slate-8);
12151
- --lm-close-active-background: var(--color-opacity-slate-16);
12152
- --lm-focus-ring-color: var(--border-focus);
12153
- }
12154
- .lm {
12138
+ --lkm-scrim-color: rgb(0 0 0 / 72%);
12139
+ --lkm-scrim-blur: 4px;
12140
+ --lkm-z-index: 9999;
12141
+ --lkm-panel-background: var(--background-surface);
12142
+ --lkm-panel-radius: var(--radius-xl);
12143
+ --lkm-panel-shadow: var(--elevation-modal);
12144
+ --lkm-panel-max-width: var(--content-width-846);
12145
+ --lkm-panel-padding-block: var(--spacing-40);
12146
+ --lkm-panel-padding-inline: var(--spacing-24);
12147
+ --lkm-panel-gap: var(--spacing-24);
12148
+ --lkm-panel-margin: var(--spacing-16);
12149
+ --lkm-title-color: var(--text-primary);
12150
+ --lkm-close-inset: var(--spacing-8);
12151
+ --lkm-close-size: var(--spacing-48);
12152
+ --lkm-close-glyph-size: var(--spacing-24);
12153
+ --lkm-close-icon-color: var(--icon-primary);
12154
+ --lkm-close-hover-background: var(--color-opacity-slate-8);
12155
+ --lkm-close-active-background: var(--color-opacity-slate-16);
12156
+ --lkm-focus-ring-color: var(--border-focus);
12157
+ }
12158
+ .lkm {
12155
12159
  position: fixed;
12156
12160
  inset: 0;
12157
- z-index: var(--lm-z-index);
12161
+ z-index: var(--lkm-z-index);
12158
12162
  display: flex;
12159
12163
  align-items: center;
12160
12164
  justify-content: center;
12161
- padding: var(--lm-panel-margin);
12165
+ padding: var(--lkm-panel-margin);
12162
12166
  box-sizing: border-box;
12163
12167
  overflow-y: auto;
12164
12168
  }
12165
- .lm__scrim {
12169
+ .lkm__scrim {
12166
12170
  position: fixed;
12167
12171
  inset: 0;
12168
- background-color: var(--lm-scrim-color);
12169
- -webkit-backdrop-filter: blur(var(--lm-scrim-blur));
12170
- backdrop-filter: blur(var(--lm-scrim-blur));
12172
+ background-color: var(--lkm-scrim-color);
12173
+ -webkit-backdrop-filter: blur(var(--lkm-scrim-blur));
12174
+ backdrop-filter: blur(var(--lkm-scrim-blur));
12171
12175
  }
12172
- .lm__panel {
12176
+ .lkm__panel {
12173
12177
  position: relative;
12174
12178
  z-index: 1;
12175
12179
  box-sizing: border-box;
12176
12180
  width: 100%;
12177
- max-width: var(--lm-panel-max-width);
12178
- max-height: calc(100dvh - (var(--lm-panel-margin) * 2));
12181
+ max-width: var(--lkm-panel-max-width);
12182
+ max-height: calc(100dvh - (var(--lkm-panel-margin) * 2));
12179
12183
  display: flex;
12180
12184
  flex-direction: column;
12181
12185
  align-items: center;
12182
- gap: var(--lm-panel-gap);
12183
- padding: var(--lm-panel-padding-block) var(--lm-panel-padding-inline);
12184
- border-radius: var(--lm-panel-radius);
12185
- background-color: var(--lm-panel-background);
12186
- box-shadow: var(--lm-panel-shadow);
12186
+ gap: var(--lkm-panel-gap);
12187
+ padding: var(--lkm-panel-padding-block) var(--lkm-panel-padding-inline);
12188
+ border-radius: var(--lkm-panel-radius);
12189
+ background-color: var(--lkm-panel-background);
12190
+ box-shadow: var(--lkm-panel-shadow);
12187
12191
  outline: none;
12188
12192
  }
12189
- .lm__panel:focus-visible {
12190
- outline: 2px solid var(--lm-focus-ring-color);
12193
+ .lkm__panel:focus-visible {
12194
+ outline: 2px solid var(--lkm-focus-ring-color);
12191
12195
  outline-offset: 2px;
12192
12196
  }
12193
- .lm__close {
12197
+ .lkm__close {
12194
12198
  position: absolute;
12195
- top: var(--lm-close-inset);
12196
- right: var(--lm-close-inset);
12199
+ top: var(--lkm-close-inset);
12200
+ right: var(--lkm-close-inset);
12197
12201
  display: flex;
12198
12202
  align-items: center;
12199
12203
  justify-content: center;
12200
- width: var(--lm-close-size);
12201
- height: var(--lm-close-size);
12204
+ width: var(--lkm-close-size);
12205
+ height: var(--lkm-close-size);
12202
12206
  box-sizing: border-box;
12203
12207
  padding: 0;
12204
12208
  border: none;
12205
12209
  border-radius: var(--radius-full);
12206
12210
  background: none;
12207
- color: var(--lm-close-icon-color);
12211
+ color: var(--lkm-close-icon-color);
12208
12212
  cursor: pointer;
12209
12213
  outline: none;
12210
12214
  transition: background-color 100ms ease;
12211
12215
  }
12212
- .lm__close:hover {
12213
- background-color: var(--lm-close-hover-background);
12216
+ .lkm__close:hover {
12217
+ background-color: var(--lkm-close-hover-background);
12214
12218
  }
12215
- .lm__close:active {
12216
- background-color: var(--lm-close-active-background);
12219
+ .lkm__close:active {
12220
+ background-color: var(--lkm-close-active-background);
12217
12221
  }
12218
- .lm__close:focus-visible {
12219
- outline: 2px solid var(--lm-focus-ring-color);
12222
+ .lkm__close:focus-visible {
12223
+ outline: 2px solid var(--lkm-focus-ring-color);
12220
12224
  outline-offset: 2px;
12221
12225
  }
12222
- .lm__close svg {
12223
- width: var(--lm-close-glyph-size);
12224
- height: var(--lm-close-glyph-size);
12226
+ .lkm__close svg {
12227
+ width: var(--lkm-close-glyph-size);
12228
+ height: var(--lkm-close-glyph-size);
12225
12229
  }
12226
- .lm__title {
12230
+ .lkm__title {
12227
12231
  margin: 0;
12228
- padding-inline: var(--lm-close-size);
12232
+ padding-inline: var(--lkm-close-size);
12229
12233
  font-family: var(--typography-h5-font-family);
12230
12234
  font-size: var(--typography-h5-font-size);
12231
12235
  font-weight: var(--typography-h5-font-weight);
12232
12236
  line-height: var(--typography-h5-line-height);
12233
12237
  letter-spacing: var(--typography-h5-letter-spacing);
12234
- color: var(--lm-title-color);
12238
+ color: var(--lkm-title-color);
12235
12239
  text-align: center;
12236
12240
  }
12237
- .lm__body {
12241
+ .lkm__body {
12238
12242
  width: 100%;
12239
12243
  min-height: 0;
12240
12244
  overflow-y: auto;
12241
12245
  }
12242
12246
  @media (min-width: 768px) {
12243
12247
  :root {
12244
- --lm-panel-padding-inline: var(--spacing-32);
12248
+ --lkm-panel-padding-inline: var(--spacing-32);
12245
12249
  }
12246
12250
  }
12247
12251
  @media (min-width: 992px) {
12248
12252
  :root {
12249
- --lm-panel-padding-block: var(--spacing-80);
12250
- --lm-panel-padding-inline: var(--spacing-96);
12251
- --lm-panel-gap: var(--spacing-40);
12253
+ --lkm-panel-padding-block: var(--spacing-80);
12254
+ --lkm-panel-padding-inline: var(--spacing-96);
12255
+ --lkm-panel-gap: var(--spacing-40);
12252
12256
  }
12253
12257
  }
12254
12258
  @media (prefers-reduced-motion: reduce) {
12255
- .lm__close {
12259
+ .lkm__close {
12256
12260
  transition: none;
12257
12261
  }
12258
12262
  }