design-zystem 1.0.291 → 1.0.292

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/index.d.mts CHANGED
@@ -866,8 +866,10 @@ interface TabsProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
866
866
  showBaseline?: boolean;
867
867
  baselineColor?: string;
868
868
  children?: ReactNode;
869
+ size?: 'xs' | 'm';
870
+ activeColor?: string;
869
871
  }
870
- declare const Tabs: ({ value, onChange, items, variant, align, showBaseline, baselineColor, children, ...rest }: TabsProps) => react_jsx_runtime.JSX.Element;
872
+ declare const Tabs: ({ value, onChange, items, variant, align, showBaseline, baselineColor, children, size, activeColor, ...rest }: TabsProps) => react_jsx_runtime.JSX.Element;
871
873
 
872
874
  interface ImageProps extends ImgHTMLAttributes<HTMLImageElement> {
873
875
  src?: string;
package/dist/index.d.ts CHANGED
@@ -866,8 +866,10 @@ interface TabsProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
866
866
  showBaseline?: boolean;
867
867
  baselineColor?: string;
868
868
  children?: ReactNode;
869
+ size?: 'xs' | 'm';
870
+ activeColor?: string;
869
871
  }
870
- declare const Tabs: ({ value, onChange, items, variant, align, showBaseline, baselineColor, children, ...rest }: TabsProps) => react_jsx_runtime.JSX.Element;
872
+ declare const Tabs: ({ value, onChange, items, variant, align, showBaseline, baselineColor, children, size, activeColor, ...rest }: TabsProps) => react_jsx_runtime.JSX.Element;
871
873
 
872
874
  interface ImageProps extends ImgHTMLAttributes<HTMLImageElement> {
873
875
  src?: string;
package/dist/index.js CHANGED
@@ -4253,10 +4253,23 @@ var import_jsx_runtime47 = require("react/jsx-runtime");
4253
4253
  var TOKENS = {
4254
4254
  fontFamily: '"Open Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif'
4255
4255
  };
4256
- var shouldForwardTabs = (p) => !["align", "showBaseline", "baselineColor", "variant", "fullWidth"].includes(
4257
- p
4258
- );
4259
- var shouldForwardTab = (p) => !["$active", "$disabled", "$variant", "$fullWidth"].includes(p);
4256
+ var shouldForwardTabs = (p) => ![
4257
+ "align",
4258
+ "showBaseline",
4259
+ "baselineColor",
4260
+ "variant",
4261
+ "fullWidth",
4262
+ "size",
4263
+ "activeColor"
4264
+ ].includes(p);
4265
+ var shouldForwardTab = (p) => ![
4266
+ "$active",
4267
+ "$disabled",
4268
+ "$variant",
4269
+ "$fullWidth",
4270
+ "$size",
4271
+ "$activeColor"
4272
+ ].includes(p);
4260
4273
  var TabsRoot = import_styled_components40.default.div.withConfig({
4261
4274
  shouldForwardProp: shouldForwardTabs
4262
4275
  })`
@@ -4285,11 +4298,20 @@ var TabsList = import_styled_components40.default.div.withConfig({
4285
4298
  })`
4286
4299
  display: flex;
4287
4300
  align-items: center;
4288
- gap: ${(p) => p.variant === "pills" ? "0" : "24px"};
4301
+ gap: ${(p) => {
4302
+ if (p.variant !== "pills") return "24px";
4303
+ return p.size === "xs" ? "4px" : "0";
4304
+ }};
4289
4305
  min-height: ${(p) => p.variant === "pills" ? "auto" : "48px"};
4290
- padding: ${(p) => p.variant === "pills" ? "4px" : "12px 0"};
4306
+ padding: ${(p) => {
4307
+ if (p.variant !== "pills") return "12px 0";
4308
+ return p.size === "xs" ? "6px 8px" : "4px";
4309
+ }};
4291
4310
  background: ${(p) => p.variant === "pills" ? colors.grey_200 : "transparent"};
4292
- border-radius: ${(p) => p.variant === "pills" ? "8px" : "0"};
4311
+ border-radius: ${(p) => {
4312
+ if (p.variant !== "pills") return "0";
4313
+ return p.size === "xs" ? "6px" : "8px";
4314
+ }};
4293
4315
  width: ${(p) => p.fullWidth ? "100%" : "auto"};
4294
4316
  justify-content: ${(p) => p.align === "center" ? "center" : p.align === "end" ? "flex-end" : p.align === "between" ? "space-between" : "flex-start"};
4295
4317
  `;
@@ -4306,27 +4328,40 @@ var TabButton = import_styled_components40.default.button.withConfig({
4306
4328
  if (p.$variant !== "pills") return "transparent";
4307
4329
  return p.$active ? colors.white : "transparent";
4308
4330
  }};
4309
- padding: ${(p) => p.$variant === "pills" ? "8px 16px" : "0"};
4331
+ padding: ${(p) => {
4332
+ if (p.$variant !== "pills") return "0";
4333
+ if (p.$size === "xs") return p.$active ? "4px 12px" : "4px 8px";
4334
+ return "8px 16px";
4335
+ }};
4310
4336
  margin: 0;
4311
4337
  border-radius: ${(p) => p.$variant === "pills" ? "6px" : "0"};
4312
4338
  flex: ${(p) => p.$variant === "pills" && p.$fullWidth ? "1" : "initial"};
4313
4339
  position: relative;
4314
4340
  cursor: ${(p) => p.$disabled ? "not-allowed" : "pointer"};
4315
4341
  color: ${(p) => {
4316
- if (p.$variant === "pills") return colors.dark;
4342
+ if (p.$variant === "pills") {
4343
+ if (p.$active && p.$activeColor) return p.$activeColor;
4344
+ return colors.dark;
4345
+ }
4317
4346
  return p.$active ? colors.blue_700 : colors.grey_400;
4318
4347
  }};
4319
4348
  font-family: ${TOKENS.fontFamily};
4320
- font-size: ${(p) => p.$variant === "pills" ? "14px" : "16px"};
4349
+ font-size: ${(p) => {
4350
+ if (p.$variant === "pills") return p.$size === "xs" ? "12px" : "14px";
4351
+ return "16px";
4352
+ }};
4321
4353
  font-weight: ${(p) => {
4322
- if (p.$variant === "pills") return p.$active ? 700 : 500;
4354
+ if (p.$variant === "pills") {
4355
+ if (p.$active) return 700;
4356
+ return p.$size === "xs" ? 600 : 500;
4357
+ }
4323
4358
  return p.$active ? 700 : 600;
4324
4359
  }};
4325
4360
  line-height: 1.2;
4326
4361
  white-space: nowrap;
4327
4362
  outline: none;
4328
4363
  text-align: center;
4329
- box-shadow: none;
4364
+ box-shadow: ${(p) => p.$variant === "pills" && p.$size === "xs" && p.$active ? "0px 2px 7.5px rgba(198, 198, 198, 0.25)" : "none"};
4330
4365
  transition:
4331
4366
  background-color 150ms ease,
4332
4367
  color 150ms ease;
@@ -4368,7 +4403,9 @@ var Tab = (_a) => {
4368
4403
  onClick,
4369
4404
  innerRef,
4370
4405
  variant = "line",
4371
- fullWidth = false
4406
+ fullWidth = false,
4407
+ size = "m",
4408
+ activeColor
4372
4409
  } = _b, rest = __objRest(_b, [
4373
4410
  "id",
4374
4411
  "children",
@@ -4377,7 +4414,9 @@ var Tab = (_a) => {
4377
4414
  "onClick",
4378
4415
  "innerRef",
4379
4416
  "variant",
4380
- "fullWidth"
4417
+ "fullWidth",
4418
+ "size",
4419
+ "activeColor"
4381
4420
  ]);
4382
4421
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4383
4422
  TabButton,
@@ -4392,6 +4431,8 @@ var Tab = (_a) => {
4392
4431
  $disabled: disabled,
4393
4432
  $variant: variant,
4394
4433
  $fullWidth: fullWidth,
4434
+ $size: size,
4435
+ $activeColor: activeColor,
4395
4436
  onClick: disabled ? void 0 : onClick
4396
4437
  }, rest), {
4397
4438
  children
@@ -4407,7 +4448,9 @@ var Tabs = (_a) => {
4407
4448
  align = "start",
4408
4449
  showBaseline = true,
4409
4450
  baselineColor = colors.grey_300,
4410
- children
4451
+ children,
4452
+ size,
4453
+ activeColor
4411
4454
  } = _b, rest = __objRest(_b, [
4412
4455
  "value",
4413
4456
  "onChange",
@@ -4416,7 +4459,9 @@ var Tabs = (_a) => {
4416
4459
  "align",
4417
4460
  "showBaseline",
4418
4461
  "baselineColor",
4419
- "children"
4462
+ "children",
4463
+ "size",
4464
+ "activeColor"
4420
4465
  ]);
4421
4466
  const rootRef = (0, import_react23.useRef)(null);
4422
4467
  const refsMap = (0, import_react23.useRef)(/* @__PURE__ */ new Map());
@@ -4459,6 +4504,8 @@ var Tabs = (_a) => {
4459
4504
  fullWidth: isPillsFullWidth,
4460
4505
  onClick: () => handleSelect(it.id),
4461
4506
  innerRef: setTabRef(it.id),
4507
+ size,
4508
+ activeColor,
4462
4509
  children: [
4463
4510
  it.label,
4464
4511
  it.dot && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(TabDot, { $color: it.dotColor }),
@@ -4487,10 +4534,21 @@ var Tabs = (_a) => {
4487
4534
  variant,
4488
4535
  fullWidth: isPillsFullWidth,
4489
4536
  onClick: () => handleSelect(id),
4490
- innerRef: setTabRef(id)
4537
+ innerRef: setTabRef(id),
4538
+ size,
4539
+ activeColor
4491
4540
  });
4492
4541
  });
4493
- }, [items, children, value, variant, isPillsFullWidth, handleSelect]);
4542
+ }, [
4543
+ items,
4544
+ children,
4545
+ value,
4546
+ variant,
4547
+ isPillsFullWidth,
4548
+ handleSelect,
4549
+ size,
4550
+ activeColor
4551
+ ]);
4494
4552
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
4495
4553
  TabsRoot,
4496
4554
  __spreadProps(__spreadValues({
@@ -4502,7 +4560,16 @@ var Tabs = (_a) => {
4502
4560
  variant
4503
4561
  }, rest), {
4504
4562
  children: [
4505
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(TabsList, { align, variant, fullWidth: isPillsFullWidth, children: rendered }),
4563
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4564
+ TabsList,
4565
+ {
4566
+ align,
4567
+ variant,
4568
+ fullWidth: isPillsFullWidth,
4569
+ size,
4570
+ children: rendered
4571
+ }
4572
+ ),
4506
4573
  variant === "line" && showBaseline && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(ActiveBar, { style: { left: bar.left, width: bar.width } })
4507
4574
  ]
4508
4575
  })
package/dist/index.mjs CHANGED
@@ -4129,10 +4129,23 @@ import { jsx as jsx47, jsxs as jsxs22 } from "react/jsx-runtime";
4129
4129
  var TOKENS = {
4130
4130
  fontFamily: '"Open Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif'
4131
4131
  };
4132
- var shouldForwardTabs = (p) => !["align", "showBaseline", "baselineColor", "variant", "fullWidth"].includes(
4133
- p
4134
- );
4135
- var shouldForwardTab = (p) => !["$active", "$disabled", "$variant", "$fullWidth"].includes(p);
4132
+ var shouldForwardTabs = (p) => ![
4133
+ "align",
4134
+ "showBaseline",
4135
+ "baselineColor",
4136
+ "variant",
4137
+ "fullWidth",
4138
+ "size",
4139
+ "activeColor"
4140
+ ].includes(p);
4141
+ var shouldForwardTab = (p) => ![
4142
+ "$active",
4143
+ "$disabled",
4144
+ "$variant",
4145
+ "$fullWidth",
4146
+ "$size",
4147
+ "$activeColor"
4148
+ ].includes(p);
4136
4149
  var TabsRoot = styled40.div.withConfig({
4137
4150
  shouldForwardProp: shouldForwardTabs
4138
4151
  })`
@@ -4161,11 +4174,20 @@ var TabsList = styled40.div.withConfig({
4161
4174
  })`
4162
4175
  display: flex;
4163
4176
  align-items: center;
4164
- gap: ${(p) => p.variant === "pills" ? "0" : "24px"};
4177
+ gap: ${(p) => {
4178
+ if (p.variant !== "pills") return "24px";
4179
+ return p.size === "xs" ? "4px" : "0";
4180
+ }};
4165
4181
  min-height: ${(p) => p.variant === "pills" ? "auto" : "48px"};
4166
- padding: ${(p) => p.variant === "pills" ? "4px" : "12px 0"};
4182
+ padding: ${(p) => {
4183
+ if (p.variant !== "pills") return "12px 0";
4184
+ return p.size === "xs" ? "6px 8px" : "4px";
4185
+ }};
4167
4186
  background: ${(p) => p.variant === "pills" ? colors.grey_200 : "transparent"};
4168
- border-radius: ${(p) => p.variant === "pills" ? "8px" : "0"};
4187
+ border-radius: ${(p) => {
4188
+ if (p.variant !== "pills") return "0";
4189
+ return p.size === "xs" ? "6px" : "8px";
4190
+ }};
4169
4191
  width: ${(p) => p.fullWidth ? "100%" : "auto"};
4170
4192
  justify-content: ${(p) => p.align === "center" ? "center" : p.align === "end" ? "flex-end" : p.align === "between" ? "space-between" : "flex-start"};
4171
4193
  `;
@@ -4182,27 +4204,40 @@ var TabButton = styled40.button.withConfig({
4182
4204
  if (p.$variant !== "pills") return "transparent";
4183
4205
  return p.$active ? colors.white : "transparent";
4184
4206
  }};
4185
- padding: ${(p) => p.$variant === "pills" ? "8px 16px" : "0"};
4207
+ padding: ${(p) => {
4208
+ if (p.$variant !== "pills") return "0";
4209
+ if (p.$size === "xs") return p.$active ? "4px 12px" : "4px 8px";
4210
+ return "8px 16px";
4211
+ }};
4186
4212
  margin: 0;
4187
4213
  border-radius: ${(p) => p.$variant === "pills" ? "6px" : "0"};
4188
4214
  flex: ${(p) => p.$variant === "pills" && p.$fullWidth ? "1" : "initial"};
4189
4215
  position: relative;
4190
4216
  cursor: ${(p) => p.$disabled ? "not-allowed" : "pointer"};
4191
4217
  color: ${(p) => {
4192
- if (p.$variant === "pills") return colors.dark;
4218
+ if (p.$variant === "pills") {
4219
+ if (p.$active && p.$activeColor) return p.$activeColor;
4220
+ return colors.dark;
4221
+ }
4193
4222
  return p.$active ? colors.blue_700 : colors.grey_400;
4194
4223
  }};
4195
4224
  font-family: ${TOKENS.fontFamily};
4196
- font-size: ${(p) => p.$variant === "pills" ? "14px" : "16px"};
4225
+ font-size: ${(p) => {
4226
+ if (p.$variant === "pills") return p.$size === "xs" ? "12px" : "14px";
4227
+ return "16px";
4228
+ }};
4197
4229
  font-weight: ${(p) => {
4198
- if (p.$variant === "pills") return p.$active ? 700 : 500;
4230
+ if (p.$variant === "pills") {
4231
+ if (p.$active) return 700;
4232
+ return p.$size === "xs" ? 600 : 500;
4233
+ }
4199
4234
  return p.$active ? 700 : 600;
4200
4235
  }};
4201
4236
  line-height: 1.2;
4202
4237
  white-space: nowrap;
4203
4238
  outline: none;
4204
4239
  text-align: center;
4205
- box-shadow: none;
4240
+ box-shadow: ${(p) => p.$variant === "pills" && p.$size === "xs" && p.$active ? "0px 2px 7.5px rgba(198, 198, 198, 0.25)" : "none"};
4206
4241
  transition:
4207
4242
  background-color 150ms ease,
4208
4243
  color 150ms ease;
@@ -4244,7 +4279,9 @@ var Tab = (_a) => {
4244
4279
  onClick,
4245
4280
  innerRef,
4246
4281
  variant = "line",
4247
- fullWidth = false
4282
+ fullWidth = false,
4283
+ size = "m",
4284
+ activeColor
4248
4285
  } = _b, rest = __objRest(_b, [
4249
4286
  "id",
4250
4287
  "children",
@@ -4253,7 +4290,9 @@ var Tab = (_a) => {
4253
4290
  "onClick",
4254
4291
  "innerRef",
4255
4292
  "variant",
4256
- "fullWidth"
4293
+ "fullWidth",
4294
+ "size",
4295
+ "activeColor"
4257
4296
  ]);
4258
4297
  return /* @__PURE__ */ jsx47(
4259
4298
  TabButton,
@@ -4268,6 +4307,8 @@ var Tab = (_a) => {
4268
4307
  $disabled: disabled,
4269
4308
  $variant: variant,
4270
4309
  $fullWidth: fullWidth,
4310
+ $size: size,
4311
+ $activeColor: activeColor,
4271
4312
  onClick: disabled ? void 0 : onClick
4272
4313
  }, rest), {
4273
4314
  children
@@ -4283,7 +4324,9 @@ var Tabs = (_a) => {
4283
4324
  align = "start",
4284
4325
  showBaseline = true,
4285
4326
  baselineColor = colors.grey_300,
4286
- children
4327
+ children,
4328
+ size,
4329
+ activeColor
4287
4330
  } = _b, rest = __objRest(_b, [
4288
4331
  "value",
4289
4332
  "onChange",
@@ -4292,7 +4335,9 @@ var Tabs = (_a) => {
4292
4335
  "align",
4293
4336
  "showBaseline",
4294
4337
  "baselineColor",
4295
- "children"
4338
+ "children",
4339
+ "size",
4340
+ "activeColor"
4296
4341
  ]);
4297
4342
  const rootRef = useRef8(null);
4298
4343
  const refsMap = useRef8(/* @__PURE__ */ new Map());
@@ -4335,6 +4380,8 @@ var Tabs = (_a) => {
4335
4380
  fullWidth: isPillsFullWidth,
4336
4381
  onClick: () => handleSelect(it.id),
4337
4382
  innerRef: setTabRef(it.id),
4383
+ size,
4384
+ activeColor,
4338
4385
  children: [
4339
4386
  it.label,
4340
4387
  it.dot && /* @__PURE__ */ jsx47(TabDot, { $color: it.dotColor }),
@@ -4363,10 +4410,21 @@ var Tabs = (_a) => {
4363
4410
  variant,
4364
4411
  fullWidth: isPillsFullWidth,
4365
4412
  onClick: () => handleSelect(id),
4366
- innerRef: setTabRef(id)
4413
+ innerRef: setTabRef(id),
4414
+ size,
4415
+ activeColor
4367
4416
  });
4368
4417
  });
4369
- }, [items, children, value, variant, isPillsFullWidth, handleSelect]);
4418
+ }, [
4419
+ items,
4420
+ children,
4421
+ value,
4422
+ variant,
4423
+ isPillsFullWidth,
4424
+ handleSelect,
4425
+ size,
4426
+ activeColor
4427
+ ]);
4370
4428
  return /* @__PURE__ */ jsxs22(
4371
4429
  TabsRoot,
4372
4430
  __spreadProps(__spreadValues({
@@ -4378,7 +4436,16 @@ var Tabs = (_a) => {
4378
4436
  variant
4379
4437
  }, rest), {
4380
4438
  children: [
4381
- /* @__PURE__ */ jsx47(TabsList, { align, variant, fullWidth: isPillsFullWidth, children: rendered }),
4439
+ /* @__PURE__ */ jsx47(
4440
+ TabsList,
4441
+ {
4442
+ align,
4443
+ variant,
4444
+ fullWidth: isPillsFullWidth,
4445
+ size,
4446
+ children: rendered
4447
+ }
4448
+ ),
4382
4449
  variant === "line" && showBaseline && /* @__PURE__ */ jsx47(ActiveBar, { style: { left: bar.left, width: bar.width } })
4383
4450
  ]
4384
4451
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "design-zystem",
3
- "version": "1.0.291",
3
+ "version": "1.0.292",
4
4
  "description": "A React design system of importable components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",