@fusion.dev/helix-core 0.159.0 → 0.161.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.
@@ -5977,6 +5977,25 @@
5977
5977
  },
5978
5978
  "description": "Whether the reader is scrolling: a finger is on the box, the box moved\nwithin the last 150 milliseconds, or it has moved and its `scroll` event\nhas not arrived yet.\n\nFor a host that holds its own reader: a write to the scroll offset while\nthis is true ends a fling on iOS, and a reader position noted before the\nlast move is out of date."
5979
5979
  },
5980
+ {
5981
+ "kind": "method",
5982
+ "name": "noteClamp",
5983
+ "privacy": "private",
5984
+ "return": {
5985
+ "type": {
5986
+ "text": "number"
5987
+ }
5988
+ },
5989
+ "parameters": [
5990
+ {
5991
+ "name": "box",
5992
+ "type": {
5993
+ "text": "HTMLElement"
5994
+ }
5995
+ }
5996
+ ],
5997
+ "description": "Takes the offset as the box's own where the box moved it up only because\nthe set below it got shorter, which the browser does to keep the offset\ninside the content, and answers where it was before.\n\n**Not a reader scrolling.** Rows at the end of the set measured shorter\nthan their estimates shrink the content, and the box pulls its offset back\nto the new bottom before any `scroll` event arrives. Read as a scroll, the\ndifference went into the spacer as drift and was then paid a second time:\nin Chromium, End on 2,000 rows of one to five lines left the window 292\npixels above the last item, which stayed drawn below the box as the row\nholding focus."
5998
+ },
5980
5999
  {
5981
6000
  "kind": "field",
5982
6001
  "name": "rest",
@@ -6091,6 +6110,17 @@
6091
6110
  },
6092
6111
  "description": "How tall one item is on the straight line: the drawn rows' height once\nread, and `estimate` until then.\n\n**An estimate that is wrong on the straight line leaves the end of the\nset out of reach.** Rows of 21 pixels placed at 32 fill two thirds of the\nroom they are counted for, so the window stops short of the bottom of the\nbox and the spacer after it holds the rest: in Chromium, `scrollToIndex`\non the last of 5,000 such rows scrolled to the end and drew nothing there.\nReading the drawn rows once corrects the slope, and it is still a line."
6093
6112
  },
6113
+ {
6114
+ "kind": "method",
6115
+ "name": "gap",
6116
+ "privacy": "private",
6117
+ "return": {
6118
+ "type": {
6119
+ "text": "number"
6120
+ }
6121
+ },
6122
+ "description": "The space the host draws between two items, which each item counts."
6123
+ },
6094
6124
  {
6095
6125
  "kind": "method",
6096
6126
  "name": "sampleRows",
@@ -14401,6 +14431,14 @@
14401
14431
  "module": "./mixins/mixin-picker-feedback/mixin-picker-feedback.js"
14402
14432
  }
14403
14433
  },
14434
+ {
14435
+ "kind": "js",
14436
+ "name": "PickerFailure",
14437
+ "declaration": {
14438
+ "name": "PickerFailure",
14439
+ "module": "./mixins/mixin-picker-feedback/mixin-picker-feedback.js"
14440
+ }
14441
+ },
14404
14442
  {
14405
14443
  "kind": "js",
14406
14444
  "name": "MixinPickerField",
@@ -14601,6 +14639,14 @@
14601
14639
  "module": "./utils/calendar/calendar.js"
14602
14640
  }
14603
14641
  },
14642
+ {
14643
+ "kind": "js",
14644
+ "name": "CalendarParts",
14645
+ "declaration": {
14646
+ "name": "CalendarParts",
14647
+ "module": "./utils/calendar/calendar.js"
14648
+ }
14649
+ },
14604
14650
  {
14605
14651
  "kind": "js",
14606
14652
  "name": "CalendarView",
@@ -15153,6 +15199,22 @@
15153
15199
  "module": "./utils/data-options/data-options.js"
15154
15200
  }
15155
15201
  },
15202
+ {
15203
+ "kind": "js",
15204
+ "name": "readWrittenDate",
15205
+ "declaration": {
15206
+ "name": "readWrittenDate",
15207
+ "module": "./utils/date-segments/date-segments.js"
15208
+ }
15209
+ },
15210
+ {
15211
+ "kind": "js",
15212
+ "name": "readWrittenTime",
15213
+ "declaration": {
15214
+ "name": "readWrittenTime",
15215
+ "module": "./utils/date-segments/date-segments.js"
15216
+ }
15217
+ },
15156
15218
  {
15157
15219
  "kind": "js",
15158
15220
  "name": "segmentName",
@@ -18451,9 +18513,16 @@
18451
18513
  "type": {
18452
18514
  "text": "string"
18453
18515
  }
18516
+ },
18517
+ {
18518
+ "name": "cause",
18519
+ "optional": true,
18520
+ "type": {
18521
+ "text": "string"
18522
+ }
18454
18523
  }
18455
18524
  ],
18456
- "description": "Requests a new current item, and returns whether the change was applied."
18525
+ "description": "Requests a new current item, and returns whether the change was applied.\n`cause` says why, where the family names its causes, and reaches\n`helix-before-activate` as `detail.cause`."
18457
18526
  },
18458
18527
  {
18459
18528
  "kind": "method",
@@ -18525,9 +18594,16 @@
18525
18594
  "type": {
18526
18595
  "text": "string"
18527
18596
  }
18597
+ },
18598
+ {
18599
+ "name": "cause",
18600
+ "optional": true,
18601
+ "type": {
18602
+ "text": "string"
18603
+ }
18528
18604
  }
18529
18605
  ],
18530
- "description": "Requests a new current item, and returns whether the change was applied.\n\nAnnounces before it acts, so `preventDefault()` on the `helix-before-activate` is\na refusal and nothing moves. Unlike a native control, nothing has moved\nby the time this runs, so refusing is simply not writing: there is\nnothing to put back. Nobody refusing means the set updates itself,\nwhether or not a consumer declared `active`, a declared property being a\nseed and a correction."
18606
+ "description": "Requests a new current item, and returns whether the change was applied.\n\nAnnounces before it acts, so `preventDefault()` on the `helix-before-activate` is\na refusal and nothing moves. Unlike a native control, nothing has moved\nby the time this runs, so refusing is simply not writing: there is\nnothing to put back. Nobody refusing means the set updates itself,\nwhether or not a consumer declared `active`, a declared property being a\nseed and a correction. `cause` says why, where the family names its\ncauses, and reaches the event as `detail.cause`."
18531
18607
  },
18532
18608
  {
18533
18609
  "kind": "method",
@@ -20436,7 +20512,17 @@
20436
20512
  "text": "boolean"
20437
20513
  },
20438
20514
  "privacy": "protected",
20439
- "description": "Whether a reader is told the answer is wrong: `invalid`, or `feedback`.",
20515
+ "description": "Whether a reader is told the answer is wrong: `invalid`, `feedback`, a\nheld answer the picker refuses, or a missing answer once the reader has\ncommitted one or a form has refused the picker.",
20516
+ "readonly": true
20517
+ },
20518
+ {
20519
+ "kind": "field",
20520
+ "name": "failure",
20521
+ "type": {
20522
+ "text": "'missing' | 'refused' | undefined"
20523
+ },
20524
+ "privacy": "protected",
20525
+ "description": "What the picker's own validation finds: `missing` for a required picker\nwith nothing chosen, `refused` for an answer it holds and refuses, or\nnothing. Read in `willUpdate`, so a picker answers it from its properties.",
20440
20526
  "readonly": true
20441
20527
  },
20442
20528
  {
@@ -20479,6 +20565,16 @@
20479
20565
  "attribute": "invalid",
20480
20566
  "reflects": true
20481
20567
  },
20568
+ {
20569
+ "kind": "field",
20570
+ "name": "touched",
20571
+ "type": {
20572
+ "text": "boolean"
20573
+ },
20574
+ "privacy": "private",
20575
+ "default": "false",
20576
+ "description": "Whether the reader has committed an answer, or a form has refused the\npicker. A reset forgets it."
20577
+ },
20482
20578
  {
20483
20579
  "kind": "field",
20484
20580
  "name": "marked",
@@ -20486,9 +20582,28 @@
20486
20582
  "text": "boolean"
20487
20583
  },
20488
20584
  "privacy": "protected",
20489
- "description": "Whether a reader is told the answer is wrong: `invalid`, or `feedback`.",
20585
+ "description": "Whether a reader is told the answer is wrong: `invalid`, `feedback`, a\nheld answer the picker refuses, or a missing answer once the reader has\ncommitted one or a form has refused the picker.\n\n**A refused answer is marked at once, and a missing one waits**, as\nChromium's tree does for native controls: a time input holding a time\npast its `max` reports invalid on load, and an empty required text field\ndoes not, since the reader already hears that it is required. Measured\nbefore this on Time Picker: `value=\"13:00\" max=\"12:00\"` reported\n`rangeOverflow` while the list said nothing and `:state(invalid)` was off.",
20586
+ "readonly": true
20587
+ },
20588
+ {
20589
+ "kind": "field",
20590
+ "name": "failure",
20591
+ "type": {
20592
+ "text": "'missing' | 'refused' | undefined"
20593
+ },
20594
+ "privacy": "protected",
20595
+ "description": "What the picker's own validation finds: `missing`, `refused`, or\nnothing, which is what a picker that does not answer it reports.",
20490
20596
  "readonly": true
20491
20597
  },
20598
+ {
20599
+ "kind": "method",
20600
+ "name": "formResetCallback",
20601
+ "return": {
20602
+ "type": {
20603
+ "text": "void"
20604
+ }
20605
+ }
20606
+ },
20492
20607
  {
20493
20608
  "kind": "method",
20494
20609
  "name": "renderPickerFeedback",
@@ -21084,6 +21199,22 @@
21084
21199
  },
21085
21200
  "description": "Whether the field is a row of segments, one for each part of the date or\ntime, in place of a line of text."
21086
21201
  },
21202
+ {
21203
+ "kind": "field",
21204
+ "name": "rangeStartLabel",
21205
+ "type": {
21206
+ "text": "string"
21207
+ },
21208
+ "description": "What a screen reader hears before the segments of a range's first date or\ntime, after each segment's own name."
21209
+ },
21210
+ {
21211
+ "kind": "field",
21212
+ "name": "rangeEndLabel",
21213
+ "type": {
21214
+ "text": "string"
21215
+ },
21216
+ "description": "What a screen reader hears before the segments of a range's second date or time."
21217
+ },
21087
21218
  {
21088
21219
  "kind": "field",
21089
21220
  "name": "segmentsShown",
@@ -21094,6 +21225,16 @@
21094
21225
  "description": "Whether the segments are drawn: `segmented`, where the family can hold them.",
21095
21226
  "readonly": true
21096
21227
  },
21228
+ {
21229
+ "kind": "field",
21230
+ "name": "segmentGroups",
21231
+ "type": {
21232
+ "text": "number"
21233
+ },
21234
+ "privacy": "protected",
21235
+ "description": "How many rows of segments the value takes: two for a range, one otherwise.",
21236
+ "readonly": true
21237
+ },
21097
21238
  {
21098
21239
  "kind": "field",
21099
21240
  "name": "segmentGroup",
@@ -21144,6 +21285,16 @@
21144
21285
  "description": "The clock and the seconds a time is laid out with.",
21145
21286
  "readonly": true
21146
21287
  },
21288
+ {
21289
+ "kind": "field",
21290
+ "name": "segmentSystem",
21291
+ "type": {
21292
+ "text": "MonthSystem | undefined"
21293
+ },
21294
+ "privacy": "protected",
21295
+ "description": "The calendar a date's parts are counted in, or `undefined` for the Gregorian calendar.",
21296
+ "readonly": true
21297
+ },
21147
21298
  {
21148
21299
  "kind": "method",
21149
21300
  "name": "renderSegments",
@@ -21212,6 +21363,32 @@
21212
21363
  "words": true
21213
21364
  }
21214
21365
  },
21366
+ {
21367
+ "kind": "field",
21368
+ "name": "rangeEndLabel",
21369
+ "type": {
21370
+ "text": "string"
21371
+ },
21372
+ "default": "'End'",
21373
+ "description": "What a screen reader hears before the segments of a range's second date\nor time, after each segment's own name.",
21374
+ "attribute": "range-end-label",
21375
+ "helix": {
21376
+ "words": true
21377
+ }
21378
+ },
21379
+ {
21380
+ "kind": "field",
21381
+ "name": "rangeStartLabel",
21382
+ "type": {
21383
+ "text": "string"
21384
+ },
21385
+ "default": "'Start'",
21386
+ "description": "What a screen reader hears before the segments of a range's first date\nor time, after each segment's own name: \"month, Start, Stay\".",
21387
+ "attribute": "range-start-label",
21388
+ "helix": {
21389
+ "words": true
21390
+ }
21391
+ },
21215
21392
  {
21216
21393
  "kind": "field",
21217
21394
  "name": "segmented",
@@ -21226,11 +21403,11 @@
21226
21403
  "kind": "field",
21227
21404
  "name": "parts",
21228
21405
  "type": {
21229
- "text": "Segments"
21406
+ "text": "Segments[]"
21230
21407
  },
21231
21408
  "privacy": "private",
21232
- "default": "{}",
21233
- "description": "The parts set so far, which may be fewer than a whole value."
21409
+ "default": "[{}]",
21410
+ "description": "The parts set so far in each row, which may be fewer than a whole\nvalue: one row, or two for a range."
21234
21411
  },
21235
21412
  {
21236
21413
  "kind": "field",
@@ -21269,6 +21446,27 @@
21269
21446
  "default": "undefined",
21270
21447
  "description": "The value when focus came into the segments, so leaving them says `change` once."
21271
21448
  },
21449
+ {
21450
+ "kind": "field",
21451
+ "name": "opener",
21452
+ "type": {
21453
+ "text": "HTMLElement | undefined"
21454
+ },
21455
+ "privacy": "private",
21456
+ "default": "undefined",
21457
+ "description": "The segment Alt+Down opened the picker from, which focus goes back to."
21458
+ },
21459
+ {
21460
+ "kind": "method",
21461
+ "name": "returnFocus",
21462
+ "privacy": "protected",
21463
+ "return": {
21464
+ "type": {
21465
+ "text": "void"
21466
+ }
21467
+ },
21468
+ "description": "Puts focus back on the segment the picker was opened from, as the\ntrigger takes it back to the field. Measured before this: Escape after\nAlt+Down on AM/PM put focus on the hour."
21469
+ },
21272
21470
  {
21273
21471
  "kind": "field",
21274
21472
  "name": "segmentable",
@@ -21289,6 +21487,54 @@
21289
21487
  "description": "Whether the segments are drawn: `segmented`, where the family can hold them.",
21290
21488
  "readonly": true
21291
21489
  },
21490
+ {
21491
+ "kind": "field",
21492
+ "name": "segmentGroups",
21493
+ "type": {
21494
+ "text": "number"
21495
+ },
21496
+ "privacy": "protected",
21497
+ "description": "How many rows of segments the value takes: two for a range, one otherwise.",
21498
+ "readonly": true
21499
+ },
21500
+ {
21501
+ "kind": "method",
21502
+ "name": "joined",
21503
+ "privacy": "private",
21504
+ "return": {
21505
+ "type": {
21506
+ "text": "string"
21507
+ }
21508
+ },
21509
+ "parameters": [
21510
+ {
21511
+ "name": "rows",
21512
+ "type": {
21513
+ "text": "readonly Segments[]"
21514
+ }
21515
+ }
21516
+ ],
21517
+ "description": "The value the rows add up to: each row's, joined by commas, or empty while any row is not whole."
21518
+ },
21519
+ {
21520
+ "kind": "method",
21521
+ "name": "rowsOf",
21522
+ "privacy": "private",
21523
+ "return": {
21524
+ "type": {
21525
+ "text": "Segments[]"
21526
+ }
21527
+ },
21528
+ "parameters": [
21529
+ {
21530
+ "name": "value",
21531
+ "type": {
21532
+ "text": "string"
21533
+ }
21534
+ }
21535
+ ],
21536
+ "description": "The rows a value names, one per row, empty where it names none."
21537
+ },
21292
21538
  {
21293
21539
  "kind": "field",
21294
21540
  "name": "segmentedKind",
@@ -21319,6 +21565,16 @@
21319
21565
  "description": "The clock and the seconds a time is laid out with.",
21320
21566
  "readonly": true
21321
21567
  },
21568
+ {
21569
+ "kind": "field",
21570
+ "name": "segmentSystem",
21571
+ "type": {
21572
+ "text": "MonthSystem | undefined"
21573
+ },
21574
+ "privacy": "protected",
21575
+ "description": "The calendar a date's parts are counted in, or `undefined` for the Gregorian calendar.",
21576
+ "readonly": true
21577
+ },
21322
21578
  {
21323
21579
  "kind": "field",
21324
21580
  "name": "layout",
@@ -21368,6 +21624,12 @@
21368
21624
  }
21369
21625
  },
21370
21626
  "parameters": [
21627
+ {
21628
+ "name": "row",
21629
+ "type": {
21630
+ "text": "number"
21631
+ }
21632
+ },
21371
21633
  {
21372
21634
  "name": "next",
21373
21635
  "type": {
@@ -21488,6 +21750,24 @@
21488
21750
  "description": "What a row of segments reports while some segments are set and others\nare not, where `bad-input-message` is not set. `{kind}` is `date` or\n`time`.",
21489
21751
  "fieldName": "incompleteMessage"
21490
21752
  },
21753
+ {
21754
+ "name": "range-end-label",
21755
+ "type": {
21756
+ "text": "string"
21757
+ },
21758
+ "default": "'End'",
21759
+ "description": "What a screen reader hears before the segments of a range's second date\nor time, after each segment's own name.",
21760
+ "fieldName": "rangeEndLabel"
21761
+ },
21762
+ {
21763
+ "name": "range-start-label",
21764
+ "type": {
21765
+ "text": "string"
21766
+ },
21767
+ "default": "'Start'",
21768
+ "description": "What a screen reader hears before the segments of a range's first date\nor time, after each segment's own name: \"month, Start, Stay\".",
21769
+ "fieldName": "rangeStartLabel"
21770
+ },
21491
21771
  {
21492
21772
  "name": "segmented",
21493
21773
  "type": {
@@ -23880,7 +24160,7 @@
23880
24160
  "default": "''"
23881
24161
  }
23882
24162
  ],
23883
- "description": "The language tag a date family formats with: `locale`, with the calendar it\nwrites dates in.\n\nThat is `calendar` where it is one of the five `DateCalendar` names, then\nthe locale's own calendar where its months are the Gregorian months, then\n`gregory`. **A calendar with months of its own, such as `persian` for `fa-IR`\nor `islamic-umalqura` for `ar-SA` in some engines, is written as `gregory`.**\nThe arithmetic is Gregorian, so a heading in Mehr 1405 over the days of\nOctober 2026 named a month the grid did not show.\n\n`locale` unchanged where nothing moves, so a page in a Gregorian locale\nformats exactly as it did. Empty is the runtime's own locale. A tag `Intl`\nrefuses throws, as every formatter given one does. Remembered per locale and\ncalendar, since reading a locale's calendar builds a formatter."
24163
+ "description": "The language tag a date family formats with: `locale`, with the calendar it\nwrites dates in.\n\nThat is `calendar` where it names a `DateCalendar` or a `MonthCalendar`,\nthen the locale's own calendar where its months are the Gregorian months,\nthen `gregory`. **A calendar with months of its own that only the locale\nnames, such as `persian` for `fa-IR` or `islamic-umalqura` for `ar-SA` in\nsome engines, is written as `gregory`**, so a page that asked for no other\ncalendar keeps the Gregorian dates it had. Before the date families drew\nsuch a calendar's own months, a heading in Mehr 1405 over the days of\nOctober 2026 named a month the grid did not show.\n\n`locale` unchanged where nothing moves, so a page in a Gregorian locale\nformats exactly as it did. Empty is the runtime's own locale. A tag `Intl`\nrefuses throws, as every formatter given one does. Remembered per locale and\ncalendar, since reading a locale's calendar builds a formatter."
23884
24164
  },
23885
24165
  {
23886
24166
  "kind": "function",
@@ -23978,7 +24258,7 @@
23978
24258
  "type": {
23979
24259
  "text": "readonly string[]"
23980
24260
  },
23981
- "default": "[ 'coptic', 'ethiopic', 'hebrew', 'indian', 'islamic-civil', 'islamic-umalqura', 'persian', ]",
24261
+ "default": "[ 'chinese', 'coptic', 'dangi', 'ethioaa', 'ethiopic', 'hebrew', 'indian', 'islamic', 'islamic-civil', 'islamic-rgsa', 'islamic-tbla', 'islamic-umalqura', 'persian', ]",
23982
24262
  "description": "The `MonthCalendar` names, for a check at run time."
23983
24263
  },
23984
24264
  {
@@ -23995,7 +24275,7 @@
23995
24275
  "default": "''"
23996
24276
  }
23997
24277
  ],
23998
- "description": "The months a calendar pages through: its own for a `MonthCalendar` name,\nand the Gregorian months for every other."
24278
+ "description": "The days, months, and years a calendar pages through: its own for a\n`MonthCalendar` name, and the Gregorian months for every other."
23999
24279
  },
24000
24280
  {
24001
24281
  "kind": "function",
@@ -24104,6 +24384,10 @@
24104
24384
  "type": {
24105
24385
  "text": "string"
24106
24386
  }
24387
+ },
24388
+ {
24389
+ "name": "system",
24390
+ "default": "GREGORIAN"
24107
24391
  }
24108
24392
  ],
24109
24393
  "description": "Whether a month, as its first day, lies wholly outside `min` and `max`, either of which may be empty."
@@ -24134,6 +24418,10 @@
24134
24418
  "type": {
24135
24419
  "text": "string"
24136
24420
  }
24421
+ },
24422
+ {
24423
+ "name": "system",
24424
+ "default": "GREGORIAN"
24137
24425
  }
24138
24426
  ],
24139
24427
  "description": "Whether a year lies wholly outside `min` and `max`, either of which may be empty."
@@ -24148,13 +24436,13 @@
24148
24436
  },
24149
24437
  "parameters": [
24150
24438
  {
24151
- "name": "{ max, min, page, shown, today, view }",
24439
+ "name": "{\n max,\n min,\n page,\n shown,\n system = GREGORIAN,\n today,\n view,\n}",
24152
24440
  "type": {
24153
24441
  "text": "PeriodPage"
24154
24442
  }
24155
24443
  }
24156
24444
  ],
24157
- "description": "The twelve cells of the months or the years view, in reading order: the\nmonths of `page`, or the page of years that holds it."
24445
+ "description": "The cells of the months or the years view, in reading order: the months of\n`page`, twelve or the thirteen a calendar's year may have, or the twelve\nyears on the page that holds it."
24158
24446
  },
24159
24447
  {
24160
24448
  "kind": "function",
@@ -24194,9 +24482,16 @@
24194
24482
  "type": {
24195
24483
  "text": "number"
24196
24484
  }
24485
+ },
24486
+ {
24487
+ "name": "months",
24488
+ "default": "() => 12",
24489
+ "type": {
24490
+ "text": "(year: number) => number"
24491
+ }
24197
24492
  }
24198
24493
  ],
24199
- "description": "Where a key takes the tab stop in the months or the years, or `null` for a\nkey the grid leaves alone.\n\n`stop` is the month's index or the year the stop is on, `year` the year the\nmonths view shows, and `along` which way the inline keys go, as\n`periodMove` takes it. A move off the months of one year lands in the next\nor the last, and a move off a page of years turns the page."
24494
+ "description": "Where a key takes the tab stop in the months or the years, or `null` for a\nkey the grid leaves alone.\n\n`stop` is the month's index or the year the stop is on, `year` the year the\nmonths view shows, and `along` which way the inline keys go, as\n`periodMove` takes it. A move off the months of one year lands in the next\nor the last, and a move off a page of years turns the page. `months` says\nhow many months a year has, twelve where it is not given. The page keys\nmove the months a year, to the month in the same place."
24200
24495
  }
24201
24496
  ],
24202
24497
  "exports": [
@@ -25803,6 +26098,13 @@
25803
26098
  "type": {
25804
26099
  "text": "boolean"
25805
26100
  }
26101
+ },
26102
+ {
26103
+ "name": "system",
26104
+ "optional": true,
26105
+ "type": {
26106
+ "text": "MonthSystem"
26107
+ }
25806
26108
  }
25807
26109
  ],
25808
26110
  "description": "The lowest and highest a segment can be, as it is shown: the hour on a twelve\nhour clock is 1 to 12, and a day goes as high as its month allows."
@@ -25869,9 +26171,16 @@
25869
26171
  "type": {
25870
26172
  "text": "boolean"
25871
26173
  }
26174
+ },
26175
+ {
26176
+ "name": "system",
26177
+ "optional": true,
26178
+ "type": {
26179
+ "text": "MonthSystem"
26180
+ }
25872
26181
  }
25873
26182
  ],
25874
- "description": "Sets a segment from the number shown for it, which on a twelve hour clock\nis put back together with the half of the day, and keeps the day inside its\nmonth."
26183
+ "description": "Sets a segment from the number shown for it, which on a twelve hour clock\nis put back together with the half of the day, and keeps the month inside\nits year and the day inside its month."
25875
26184
  },
25876
26185
  {
25877
26186
  "kind": "function",
@@ -25908,7 +26217,17 @@
25908
26217
  },
25909
26218
  {
25910
26219
  "name": "thisYear",
25911
- "default": "new Date().getFullYear()"
26220
+ "optional": true,
26221
+ "type": {
26222
+ "text": "number"
26223
+ }
26224
+ },
26225
+ {
26226
+ "name": "system",
26227
+ "optional": true,
26228
+ "type": {
26229
+ "text": "MonthSystem"
26230
+ }
25912
26231
  }
25913
26232
  ],
25914
26233
  "description": "A segment moved by a key's step, wrapping at its ends as a dial does, and\nstarting from where a reader would look for it when it is empty: the lowest\ngoing up, the highest going down, and this year for a year."
@@ -25951,6 +26270,13 @@
25951
26270
  "type": {
25952
26271
  "text": "boolean"
25953
26272
  }
26273
+ },
26274
+ {
26275
+ "name": "system",
26276
+ "optional": true,
26277
+ "type": {
26278
+ "text": "MonthSystem"
26279
+ }
25954
26280
  }
25955
26281
  ],
25956
26282
  "description": "A digit typed into a segment, given what was typed into it already.\n\nThe digits run on while the number they make still fits and could take\nanother, so `1` then `2` in a month is December; a digit that would overflow\nstarts the number over. `advance` says the segment is full, so focus moves\non, which is React Aria's typing: `3` in a month is March and moves to the\nday, `1` waits for a second digit."
@@ -25971,7 +26297,7 @@
25971
26297
  }
25972
26298
  },
25973
26299
  {
25974
- "name": "{ kind, locale, segments, twelve, typed }",
26300
+ "name": "{ kind, locale, segments, system, twelve, typed }",
25975
26301
  "type": {
25976
26302
  "text": "SegmentKeyState"
25977
26303
  }
@@ -25999,9 +26325,16 @@
25999
26325
  "type": {
26000
26326
  "text": "string"
26001
26327
  }
26328
+ },
26329
+ {
26330
+ "name": "system",
26331
+ "optional": true,
26332
+ "type": {
26333
+ "text": "MonthSystem"
26334
+ }
26002
26335
  }
26003
26336
  ],
26004
- "description": "The segments a value names, or none where it names nothing whole."
26337
+ "description": "The segments a value names, or none where it names nothing whole: a date's\nyear, month, and day as `system` counts them, Gregorian where none is given."
26005
26338
  },
26006
26339
  {
26007
26340
  "kind": "function",
@@ -26029,6 +26362,13 @@
26029
26362
  "type": {
26030
26363
  "text": "readonly SegmentSlot[]"
26031
26364
  }
26365
+ },
26366
+ {
26367
+ "name": "system",
26368
+ "optional": true,
26369
+ "type": {
26370
+ "text": "MonthSystem"
26371
+ }
26032
26372
  }
26033
26373
  ],
26034
26374
  "description": "The value the segments add up to, or the empty string while any segment the\nlayout shows is unset.\n\nA date that does not exist, the thirtieth of February, cannot be reached,\nthe day being kept inside its month as it is set."
@@ -26059,6 +26399,13 @@
26059
26399
  "type": {
26060
26400
  "text": "readonly SegmentSlot[]"
26061
26401
  }
26402
+ },
26403
+ {
26404
+ "name": "system",
26405
+ "optional": true,
26406
+ "type": {
26407
+ "text": "MonthSystem"
26408
+ }
26062
26409
  }
26063
26410
  ],
26064
26411
  "description": "Whether a reader has set some segments and not all of them."
@@ -26131,9 +26478,16 @@
26131
26478
  "type": {
26132
26479
  "text": "string"
26133
26480
  }
26481
+ },
26482
+ {
26483
+ "name": "system",
26484
+ "optional": true,
26485
+ "type": {
26486
+ "text": "MonthSystem"
26487
+ }
26134
26488
  }
26135
26489
  ],
26136
- "description": "What a screen reader hears for a segment's value: what it shows, and for a\nmonth its name as well, \"8 – August\", which is React Aria's reading. A\nmonth heard as a number alone leaves a reader counting."
26490
+ "description": "What a screen reader hears for a segment's value: what it shows, and for a\nmonth its name as well, \"8 – August\", which is React Aria's reading. A\nmonth heard as a number alone leaves a reader counting. In a calendar with\nmonths of its own, the name is that calendar's month in the year the\nsegments hold, or in this year: \"7 – Mehr\"."
26137
26491
  },
26138
26492
  {
26139
26493
  "kind": "function",
@@ -26158,6 +26512,65 @@
26158
26512
  }
26159
26513
  ],
26160
26514
  "description": "What a locale calls a segment, such as \"month\" or \"AM/PM\", from `Intl`."
26515
+ },
26516
+ {
26517
+ "kind": "function",
26518
+ "name": "readWrittenDate",
26519
+ "return": {
26520
+ "type": {
26521
+ "text": "string"
26522
+ }
26523
+ },
26524
+ "parameters": [
26525
+ {
26526
+ "name": "text",
26527
+ "type": {
26528
+ "text": "string"
26529
+ }
26530
+ },
26531
+ {
26532
+ "name": "locale",
26533
+ "type": {
26534
+ "text": "string"
26535
+ }
26536
+ },
26537
+ {
26538
+ "name": "system",
26539
+ "optional": true,
26540
+ "type": {
26541
+ "text": "MonthSystem"
26542
+ }
26543
+ }
26544
+ ],
26545
+ "description": "The date a reader wrote in the order and the digits of `locale`, as\n`YYYY-MM-DD`, or empty where it is no date.\n\n`8/4/2026` in `en-US` and `4.8.2026` in `de-DE` are August 4, 2026, and a\nmonth written as a word, `Aug 4, 2026` or `4. August 2026`, is read by its\nname in the Gregorian calendar. A first number of four digits is a year,\nas ISO writes it. A year of two digits is the nearest year within eighty\nyears back and twenty forward. `Intl` formats and does not parse, so this\nreads the numbers back in the order `segmentLayout` finds the locale\nwriting them. Under `system`, the numbers are that calendar's year, month,\nand day."
26546
+ },
26547
+ {
26548
+ "kind": "function",
26549
+ "name": "readWrittenTime",
26550
+ "return": {
26551
+ "type": {
26552
+ "text": "string"
26553
+ }
26554
+ },
26555
+ "parameters": [
26556
+ {
26557
+ "name": "text",
26558
+ "type": {
26559
+ "text": "string"
26560
+ }
26561
+ },
26562
+ {
26563
+ "name": "locale",
26564
+ "type": {
26565
+ "text": "string"
26566
+ }
26567
+ },
26568
+ {
26569
+ "name": "seconds",
26570
+ "default": "false"
26571
+ }
26572
+ ],
26573
+ "description": "The time a reader wrote, as `HH:mm`, or `HH:mm:ss` with `seconds`, or empty\nwhere it is no time.\n\nReads `2:30 PM`, `2.30pm`, `14h30`, and `3 pm` alike, with the half of the\nday in the locale's own words or as `am` and `pm`, and digits in the\nlocale's own script."
26161
26574
  }
26162
26575
  ],
26163
26576
  "exports": [
@@ -26272,6 +26685,22 @@
26272
26685
  "name": "segmentName",
26273
26686
  "module": "src/utils/date-segments/date-segments.ts"
26274
26687
  }
26688
+ },
26689
+ {
26690
+ "kind": "js",
26691
+ "name": "readWrittenDate",
26692
+ "declaration": {
26693
+ "name": "readWrittenDate",
26694
+ "module": "src/utils/date-segments/date-segments.ts"
26695
+ }
26696
+ },
26697
+ {
26698
+ "kind": "js",
26699
+ "name": "readWrittenTime",
26700
+ "declaration": {
26701
+ "name": "readWrittenTime",
26702
+ "module": "src/utils/date-segments/date-segments.ts"
26703
+ }
26275
26704
  }
26276
26705
  ]
26277
26706
  },
@@ -32474,7 +32903,7 @@
32474
32903
  "type": {
32475
32904
  "text": "string"
32476
32905
  },
32477
- "default": "'0.159.0'",
32906
+ "default": "'0.161.0'",
32478
32907
  "description": "The version of the package this file ships in.\n\n**Written by `fusion/scripts/version.mjs`** wherever it writes the package's\n`package.json`, and stamped back into the repository beside it after a\nrelease, so the two never disagree; a spec beside this holds them to it.\nNothing else in the running code knows which release it is."
32479
32908
  }
32480
32909
  ],
@@ -33034,6 +33463,6 @@
33034
33463
  ],
33035
33464
  "helix": {
33036
33465
  "package": "@fusion.dev/helix-core",
33037
- "version": "0.159.0"
33466
+ "version": "0.161.0"
33038
33467
  }
33039
33468
  }