mn-angular-lib 1.0.166 → 1.0.168

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mn-angular-lib",
3
- "version": "1.0.166",
3
+ "version": "1.0.168",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.1.3",
6
6
  "@angular/core": "^21.1.3",
@@ -385,6 +385,7 @@ declare const mnButtonVariants: tailwind_variants.TVReturnType<{
385
385
  two_xl: string;
386
386
  three_xl: string;
387
387
  four_xl: string;
388
+ full: string;
388
389
  };
389
390
  shape: {
390
391
  default: string;
@@ -436,6 +437,7 @@ declare const mnButtonVariants: tailwind_variants.TVReturnType<{
436
437
  two_xl: string;
437
438
  three_xl: string;
438
439
  four_xl: string;
440
+ full: string;
439
441
  };
440
442
  shape: {
441
443
  default: string;
@@ -487,6 +489,7 @@ declare const mnButtonVariants: tailwind_variants.TVReturnType<{
487
489
  two_xl: string;
488
490
  three_xl: string;
489
491
  four_xl: string;
492
+ full: string;
490
493
  };
491
494
  shape: {
492
495
  default: string;
@@ -5580,6 +5583,13 @@ declare class MnTable<T = object> extends MnSelectableCollectionBase<T, TableDat
5580
5583
  visibleRowActions(column: ColumnDefinition<T>, row: T): MnTableRowAction<T>[];
5581
5584
  /** Whether a row has any visible actions at all; when false its cell is left empty. */
5582
5585
  hasRowActions(column: ColumnDefinition<T>, row: T): boolean;
5586
+ /**
5587
+ * Whether a row's actions fold into the ⋯ menu below 450px. They do unless the row has
5588
+ * exactly one visible action that renders as a bare icon: that button is narrower than the
5589
+ * ⋯ trigger it would hide behind, so collapsing it only puts a second tap in front of the
5590
+ * one command the row has.
5591
+ */
5592
+ collapsesRowActions(column: ColumnDefinition<T>, row: T): boolean;
5583
5593
  /**
5584
5594
  * Resolves a {@link MnRowValue}: either the fixed value, or the accessor applied to
5585
5595
  * the row. Every per-row presentation field goes through here so the fixed and derived
@@ -9034,62 +9044,49 @@ type MnBreadcrumbsVariants = VariantProps<typeof mnBreadcrumbsVariants>;
9034
9044
  * row of loose buttons: the segments share one bordered surface, so they read as
9035
9045
  * one control with one answer instead of several independent actions. Theme
9036
9046
  * tokens only, so it holds up in both light and dark.
9047
+ *
9048
+ * Each segment is an `mnButton`, which owns its own size, colour, radius and
9049
+ * disabled look; the `segment` slot adds only what the button does not know
9050
+ * about — how it sits inside the track.
9037
9051
  */
9038
9052
  declare const mnSegmentedVariants: tailwind_variants.TVReturnType<{
9039
9053
  /**
9040
- * Corner rounding of the track, with the segments rounded one step tighter so
9041
- * a filled segment nests inside the track's own corner instead of poking out
9042
- * of it. Token names match mn-button's; `full` makes a pill, where track and
9043
- * segment share the same fully-rounded ends.
9054
+ * Corner rounding of the track. The segments are rounded one step tighter
9055
+ * (see `SEGMENT_RADIUS` on the component) so a filled segment nests inside
9056
+ * the track's own corner instead of poking out of it. Token names match
9057
+ * mn-button's; `full` makes a pill, where track and segment share the same
9058
+ * fully-rounded ends.
9044
9059
  */
9045
9060
  borderRadius: {
9046
9061
  none: {
9047
9062
  root: string;
9048
- segment: string;
9049
9063
  };
9050
9064
  xs: {
9051
9065
  root: string;
9052
- segment: string;
9053
9066
  };
9054
9067
  sm: {
9055
9068
  root: string;
9056
- segment: string;
9057
9069
  };
9058
9070
  md: {
9059
9071
  root: string;
9060
- segment: string;
9061
9072
  };
9062
9073
  lg: {
9063
9074
  root: string;
9064
- segment: string;
9065
9075
  };
9066
9076
  xl: {
9067
9077
  root: string;
9068
- segment: string;
9069
9078
  };
9070
9079
  two_xl: {
9071
9080
  root: string;
9072
- segment: string;
9073
9081
  };
9074
9082
  three_xl: {
9075
9083
  root: string;
9076
- segment: string;
9077
9084
  };
9078
9085
  four_xl: {
9079
9086
  root: string;
9080
- segment: string;
9081
9087
  };
9082
9088
  full: {
9083
9089
  root: string;
9084
- segment: string;
9085
- };
9086
- };
9087
- size: {
9088
- sm: {
9089
- segment: string;
9090
- };
9091
- md: {
9092
- segment: string;
9093
9090
  };
9094
9091
  };
9095
9092
  /**
@@ -9108,14 +9105,13 @@ declare const mnSegmentedVariants: tailwind_variants.TVReturnType<{
9108
9105
  false: {};
9109
9106
  };
9110
9107
  /**
9111
- * The picked segment. Filled rather than merely tinted: the control is often
9112
- * the only thing on its row, so the answer has to be readable at a glance
9113
- * without comparing two subtle shades.
9108
+ * Whether the segment is the picked one. The colours come from the button
9109
+ * itself (a filled primary button when active, a ghost one otherwise); this
9110
+ * only keeps an inactive segment's box the same size as an active one, whose
9111
+ * fill variant carries a real border.
9114
9112
  */
9115
9113
  active: {
9116
- true: {
9117
- segment: string;
9118
- };
9114
+ true: {};
9119
9115
  false: {
9120
9116
  segment: string;
9121
9117
  };
@@ -9125,59 +9121,42 @@ declare const mnSegmentedVariants: tailwind_variants.TVReturnType<{
9125
9121
  segment: string;
9126
9122
  }, undefined, {
9127
9123
  /**
9128
- * Corner rounding of the track, with the segments rounded one step tighter so
9129
- * a filled segment nests inside the track's own corner instead of poking out
9130
- * of it. Token names match mn-button's; `full` makes a pill, where track and
9131
- * segment share the same fully-rounded ends.
9124
+ * Corner rounding of the track. The segments are rounded one step tighter
9125
+ * (see `SEGMENT_RADIUS` on the component) so a filled segment nests inside
9126
+ * the track's own corner instead of poking out of it. Token names match
9127
+ * mn-button's; `full` makes a pill, where track and segment share the same
9128
+ * fully-rounded ends.
9132
9129
  */
9133
9130
  borderRadius: {
9134
9131
  none: {
9135
9132
  root: string;
9136
- segment: string;
9137
9133
  };
9138
9134
  xs: {
9139
9135
  root: string;
9140
- segment: string;
9141
9136
  };
9142
9137
  sm: {
9143
9138
  root: string;
9144
- segment: string;
9145
9139
  };
9146
9140
  md: {
9147
9141
  root: string;
9148
- segment: string;
9149
9142
  };
9150
9143
  lg: {
9151
9144
  root: string;
9152
- segment: string;
9153
9145
  };
9154
9146
  xl: {
9155
9147
  root: string;
9156
- segment: string;
9157
9148
  };
9158
9149
  two_xl: {
9159
9150
  root: string;
9160
- segment: string;
9161
9151
  };
9162
9152
  three_xl: {
9163
9153
  root: string;
9164
- segment: string;
9165
9154
  };
9166
9155
  four_xl: {
9167
9156
  root: string;
9168
- segment: string;
9169
9157
  };
9170
9158
  full: {
9171
9159
  root: string;
9172
- segment: string;
9173
- };
9174
- };
9175
- size: {
9176
- sm: {
9177
- segment: string;
9178
- };
9179
- md: {
9180
- segment: string;
9181
9160
  };
9182
9161
  };
9183
9162
  /**
@@ -9196,14 +9175,13 @@ declare const mnSegmentedVariants: tailwind_variants.TVReturnType<{
9196
9175
  false: {};
9197
9176
  };
9198
9177
  /**
9199
- * The picked segment. Filled rather than merely tinted: the control is often
9200
- * the only thing on its row, so the answer has to be readable at a glance
9201
- * without comparing two subtle shades.
9178
+ * Whether the segment is the picked one. The colours come from the button
9179
+ * itself (a filled primary button when active, a ghost one otherwise); this
9180
+ * only keeps an inactive segment's box the same size as an active one, whose
9181
+ * fill variant carries a real border.
9202
9182
  */
9203
9183
  active: {
9204
- true: {
9205
- segment: string;
9206
- };
9184
+ true: {};
9207
9185
  false: {
9208
9186
  segment: string;
9209
9187
  };
@@ -9213,59 +9191,42 @@ declare const mnSegmentedVariants: tailwind_variants.TVReturnType<{
9213
9191
  segment: string;
9214
9192
  }, tailwind_variants.TVReturnType<{
9215
9193
  /**
9216
- * Corner rounding of the track, with the segments rounded one step tighter so
9217
- * a filled segment nests inside the track's own corner instead of poking out
9218
- * of it. Token names match mn-button's; `full` makes a pill, where track and
9219
- * segment share the same fully-rounded ends.
9194
+ * Corner rounding of the track. The segments are rounded one step tighter
9195
+ * (see `SEGMENT_RADIUS` on the component) so a filled segment nests inside
9196
+ * the track's own corner instead of poking out of it. Token names match
9197
+ * mn-button's; `full` makes a pill, where track and segment share the same
9198
+ * fully-rounded ends.
9220
9199
  */
9221
9200
  borderRadius: {
9222
9201
  none: {
9223
9202
  root: string;
9224
- segment: string;
9225
9203
  };
9226
9204
  xs: {
9227
9205
  root: string;
9228
- segment: string;
9229
9206
  };
9230
9207
  sm: {
9231
9208
  root: string;
9232
- segment: string;
9233
9209
  };
9234
9210
  md: {
9235
9211
  root: string;
9236
- segment: string;
9237
9212
  };
9238
9213
  lg: {
9239
9214
  root: string;
9240
- segment: string;
9241
9215
  };
9242
9216
  xl: {
9243
9217
  root: string;
9244
- segment: string;
9245
9218
  };
9246
9219
  two_xl: {
9247
9220
  root: string;
9248
- segment: string;
9249
9221
  };
9250
9222
  three_xl: {
9251
9223
  root: string;
9252
- segment: string;
9253
9224
  };
9254
9225
  four_xl: {
9255
9226
  root: string;
9256
- segment: string;
9257
9227
  };
9258
9228
  full: {
9259
9229
  root: string;
9260
- segment: string;
9261
- };
9262
- };
9263
- size: {
9264
- sm: {
9265
- segment: string;
9266
- };
9267
- md: {
9268
- segment: string;
9269
9230
  };
9270
9231
  };
9271
9232
  /**
@@ -9284,14 +9245,13 @@ declare const mnSegmentedVariants: tailwind_variants.TVReturnType<{
9284
9245
  false: {};
9285
9246
  };
9286
9247
  /**
9287
- * The picked segment. Filled rather than merely tinted: the control is often
9288
- * the only thing on its row, so the answer has to be readable at a glance
9289
- * without comparing two subtle shades.
9248
+ * Whether the segment is the picked one. The colours come from the button
9249
+ * itself (a filled primary button when active, a ghost one otherwise); this
9250
+ * only keeps an inactive segment's box the same size as an active one, whose
9251
+ * fill variant carries a real border.
9290
9252
  */
9291
9253
  active: {
9292
- true: {
9293
- segment: string;
9294
- };
9254
+ true: {};
9295
9255
  false: {
9296
9256
  segment: string;
9297
9257
  };
@@ -9365,6 +9325,10 @@ type MnSegmentedDataSource = {
9365
9325
  * URL, so it can sit on a page that already has a tab bar without the two
9366
9326
  * fighting over the query string.
9367
9327
  *
9328
+ * Each segment is an `mnButton` — a filled primary one when active, a ghost one
9329
+ * otherwise — so the control inherits the button's sizes, colours and disabled
9330
+ * look rather than maintaining a parallel set.
9331
+ *
9368
9332
  * For switching between panes of a page, reach for `mn-tab`; this is for
9369
9333
  * switching how one pane is rendered.
9370
9334
  */
@@ -9387,29 +9351,25 @@ declare class MnSegmented {
9387
9351
  valueChange: EventEmitter<string>;
9388
9352
  /** Resolves this control's own accessible names against the app's bundle. */
9389
9353
  private readonly lang;
9390
- /** Resolved slot classes for the current size and layout. */
9354
+ /** Resolved slot classes for the current rounding and layout. */
9391
9355
  get styles(): {
9392
9356
  root: (slotProps?: ({
9393
- size?: "sm" | "md" | undefined;
9394
9357
  borderRadius?: "sm" | "md" | "lg" | "none" | "xs" | "xl" | "two_xl" | "three_xl" | "four_xl" | "full" | undefined;
9395
9358
  active?: boolean | undefined;
9396
9359
  justified?: boolean | undefined;
9397
9360
  } & tailwind_variants.ClassProp<tailwind_merge.ClassNameValue>) | undefined) => string;
9398
9361
  segment: (slotProps?: ({
9399
- size?: "sm" | "md" | undefined;
9400
9362
  borderRadius?: "sm" | "md" | "lg" | "none" | "xs" | "xl" | "two_xl" | "three_xl" | "four_xl" | "full" | undefined;
9401
9363
  active?: boolean | undefined;
9402
9364
  justified?: boolean | undefined;
9403
9365
  } & tailwind_variants.ClassProp<tailwind_merge.ClassNameValue>) | undefined) => string;
9404
9366
  } & {
9405
9367
  root: (slotProps?: ({
9406
- size?: "sm" | "md" | undefined;
9407
9368
  borderRadius?: "sm" | "md" | "lg" | "none" | "xs" | "xl" | "two_xl" | "three_xl" | "four_xl" | "full" | undefined;
9408
9369
  active?: boolean | undefined;
9409
9370
  justified?: boolean | undefined;
9410
9371
  } & tailwind_variants.ClassProp<tailwind_merge.ClassNameValue>) | undefined) => string;
9411
9372
  segment: (slotProps?: ({
9412
- size?: "sm" | "md" | undefined;
9413
9373
  borderRadius?: "sm" | "md" | "lg" | "none" | "xs" | "xl" | "two_xl" | "three_xl" | "four_xl" | "full" | undefined;
9414
9374
  active?: boolean | undefined;
9415
9375
  justified?: boolean | undefined;
@@ -9425,10 +9385,20 @@ declare class MnSegmented {
9425
9385
  */
9426
9386
  isActive(item: MnSegmentedItem): boolean;
9427
9387
  /**
9428
- * Classes for one segment, which differ only in whether it is the active one.
9388
+ * Layout classes for one segment how it sits in the track. Its size, colour,
9389
+ * radius and disabled look come from the button itself; see
9390
+ * {@link segmentButton}.
9429
9391
  * @param item - The segment to style.
9430
9392
  */
9431
9393
  segmentClass(item: MnSegmentedItem): string;
9394
+ /**
9395
+ * The `mnButton` configuration of one segment: a filled primary button when it
9396
+ * is the active choice, a ghost button otherwise, at the control's size and one
9397
+ * radius step inside the track. The active segment has no hover — re-picking it
9398
+ * does nothing, so nothing should invite the click.
9399
+ * @param item - The segment to configure.
9400
+ */
9401
+ segmentButton(item: MnSegmentedItem): Partial<MnButtonTypes>;
9432
9402
  /**
9433
9403
  * Accessible name for an icon-only segment, or null when the segment shows a
9434
9404
  * label — that label already names it, and a second name would only compete.