@hjmds/react 1.47.0 → 1.49.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/dist/advanced-display.d.ts +3 -1
- package/dist/advanced-display.d.ts.map +1 -1
- package/dist/advanced-display.js +23 -15
- package/dist/advanced-display.js.map +1 -1
- package/dist/display.d.ts +4 -0
- package/dist/display.d.ts.map +1 -1
- package/dist/display.js +3 -3
- package/dist/display.js.map +1 -1
- package/dist/drawing-editor.d.ts +7 -0
- package/dist/drawing-editor.d.ts.map +1 -0
- package/dist/drawing-editor.js +123 -0
- package/dist/drawing-editor.js.map +1 -0
- package/dist/evidence.d.ts +1 -1
- package/dist/evidence.js +1 -1
- package/dist/evidence.js.map +1 -1
- package/dist/image-choice.js +2 -1
- package/dist/image-choice.js.map +1 -1
- package/dist/overlays.d.ts.map +1 -1
- package/dist/overlays.js +81 -2
- package/dist/overlays.js.map +1 -1
- package/dist/public-exports.generated.d.ts +2 -0
- package/dist/public-exports.generated.d.ts.map +1 -1
- package/dist/public-exports.generated.js +6 -0
- package/dist/public-exports.generated.js.map +1 -1
- package/dist/share-sheet.d.ts +65 -0
- package/dist/share-sheet.d.ts.map +1 -0
- package/dist/share-sheet.js +145 -0
- package/dist/share-sheet.js.map +1 -0
- package/dist/styles.css +37 -3
- package/dist/styles.layered.css +37 -3
- package/dist/table-family.js +1 -1
- package/dist/table-family.js.map +1 -1
- package/package.json +13 -3
|
@@ -78,6 +78,7 @@ export declare const publicExportEntries: {
|
|
|
78
78
|
readonly Dialog: readonly ["./overlays"];
|
|
79
79
|
readonly Divider: readonly ["./display"];
|
|
80
80
|
readonly DocumentResource: readonly ["./document-resource"];
|
|
81
|
+
readonly DrawingEditor: readonly ["./drawing-editor"];
|
|
81
82
|
readonly DurationField: readonly ["./duration-field"];
|
|
82
83
|
readonly EditorScreen: readonly ["./screen-flows"];
|
|
83
84
|
readonly EffectSurface: readonly ["./effect-surface"];
|
|
@@ -182,6 +183,7 @@ export declare const publicExportEntries: {
|
|
|
182
183
|
readonly Select: readonly ["./forms"];
|
|
183
184
|
readonly SelectionActionBar: readonly ["./collection-editing"];
|
|
184
185
|
readonly SettingsScreen: readonly ["./screens"];
|
|
186
|
+
readonly ShareSheet: readonly ["./share-sheet"];
|
|
185
187
|
readonly Sheet: readonly ["./overlays"];
|
|
186
188
|
readonly ShortcutRail: readonly ["./shortcut-rail"];
|
|
187
189
|
readonly ShortcutRecorder: readonly ["./authoring-tools"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-exports.generated.d.ts","sourceRoot":"","sources":["../src/public-exports.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"public-exports.generated.d.ts","sourceRoot":"","sources":["../src/public-exports.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+tBuC,CAAC"}
|
|
@@ -241,6 +241,9 @@ export const publicExportEntries = {
|
|
|
241
241
|
DocumentResource: [
|
|
242
242
|
"./document-resource"
|
|
243
243
|
],
|
|
244
|
+
DrawingEditor: [
|
|
245
|
+
"./drawing-editor"
|
|
246
|
+
],
|
|
244
247
|
DurationField: [
|
|
245
248
|
"./duration-field"
|
|
246
249
|
],
|
|
@@ -558,6 +561,9 @@ export const publicExportEntries = {
|
|
|
558
561
|
SettingsScreen: [
|
|
559
562
|
"./screens"
|
|
560
563
|
],
|
|
564
|
+
ShareSheet: [
|
|
565
|
+
"./share-sheet"
|
|
566
|
+
],
|
|
561
567
|
Sheet: [
|
|
562
568
|
"./overlays"
|
|
563
569
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-exports.generated.js","sourceRoot":"","sources":["../src/public-exports.generated.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,+FAA+F;AAC/F,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS,EAAE;QACT,WAAW;KACZ;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,YAAY,EAAE;QACZ,iBAAiB;QACjB,YAAY;KACb;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,SAAS,EAAE;QACT,aAAa;KACd;IACD,WAAW,EAAE;QACX,YAAY;KACb;IACD,wBAAwB,EAAE;QACxB,sBAAsB;KACvB;IACD,MAAM,EAAE;QACN,UAAU;KACX;IACD,iBAAiB,EAAE;QACjB,oBAAoB;KACrB;IACD,WAAW,EAAE;QACX,UAAU;KACX;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,UAAU,EAAE;QACV,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,mBAAmB;KACpB;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,cAAc,EAAE;QACd,eAAe;KAChB;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,WAAW,EAAE;QACX,WAAW;KACZ;IACD,KAAK,EAAE;QACL,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,YAAY,EAAE;QACZ,mBAAmB;KACpB;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,gBAAgB,EAAE;QAChB,cAAc;KACf;IACD,6BAA6B,EAAE;QAC7B,cAAc;KACf;IACD,UAAU,EAAE;QACV,cAAc;QACd,cAAc;KACf;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,UAAU,EAAE;QACV,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,eAAe;KAChB;IACD,WAAW,EAAE;QACX,SAAS;KACV;IACD,iBAAiB,EAAE;QACjB,WAAW;KACZ;IACD,WAAW,EAAE;QACX,WAAW;KACZ;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,iBAAiB;KAClB;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,iBAAiB;KAClB;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,UAAU,EAAE;QACV,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,aAAa;KACd;IACD,aAAa,EAAE;QACb,aAAa;KACd;IACD,IAAI,EAAE;QACJ,aAAa;KACd;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,eAAe,EAAE;QACf,aAAa;KACd;IACD,mBAAmB,EAAE;QACnB,aAAa;KACd;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,oBAAoB,EAAE;QACpB,kBAAkB;KACnB;IACD,WAAW,EAAE;QACX,eAAe;KAChB;IACD,iBAAiB,EAAE;QACjB,eAAe;KAChB;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,iBAAiB,EAAE;QACjB,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,mBAAmB,EAAE;QACnB,gBAAgB;KACjB;IACD,eAAe,EAAE;QACf,cAAc;KACf;IACD,iBAAiB,EAAE;QACjB,WAAW;KACZ;IACD,SAAS,EAAE;QACT,UAAU;KACX;IACD,iBAAiB,EAAE;QACjB,sBAAsB;KACvB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,sBAAsB,EAAE;QACtB,WAAW;KACZ;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,gBAAgB,EAAE;QAChB,kBAAkB;KACnB;IACD,iBAAiB,EAAE;QACjB,kBAAkB;KACnB;IACD,YAAY,EAAE;QACZ,WAAW;KACZ;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,UAAU,EAAE;QACV,eAAe;QACf,SAAS;KACV;IACD,eAAe,EAAE;QACf,cAAc;KACf;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,MAAM,EAAE;QACN,YAAY;KACb;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,qBAAqB;KACtB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,YAAY,EAAE;QACZ,gBAAgB;KACjB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,UAAU,EAAE;QACV,YAAY;KACb;IACD,mBAAmB,EAAE;QACnB,uBAAuB;KACxB;IACD,gBAAgB,EAAE;QAChB,iBAAiB;KAClB;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,UAAU,EAAE;QACV,eAAe;QACf,SAAS;KACV;IACD,cAAc,EAAE;QACd,sBAAsB;KACvB;IACD,oBAAoB,EAAE;QACpB,0BAA0B;KAC3B;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,iBAAiB,EAAE;QACjB,uBAAuB;KACxB;IACD,IAAI,EAAE;QACJ,SAAS;KACV;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,IAAI,EAAE;QACJ,UAAU;KACX;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,iBAAiB,EAAE;QACjB,kBAAkB;KACnB;IACD,WAAW,EAAE;QACX,YAAY;KACb;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,UAAU,EAAE;QACV,WAAW;KACZ;IACD,cAAc,EAAE;QACd,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,WAAW;KACZ;IACD,KAAK,EAAE;QACL,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,kBAAkB,EAAE;QAClB,gBAAgB;KACjB;IACD,gBAAgB,EAAE;QAChB,YAAY;KACb;IACD,kBAAkB,EAAE;QAClB,kBAAkB;KACnB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,UAAU,EAAE;QACV,sBAAsB;KACvB;IACD,MAAM,EAAE;QACN,UAAU;KACX;IACD,SAAS,EAAE;QACT,SAAS;KACV;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,aAAa,EAAE;QACb,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,cAAc;KACf;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,WAAW,EAAE;QACX,cAAc;KACf;IACD,oBAAoB,EAAE;QACpB,WAAW;KACZ;IACD,kBAAkB,EAAE;QAClB,gBAAgB;KACjB;IACD,oBAAoB,EAAE;QACpB,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,IAAI,EAAE;QACJ,YAAY;KACb;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,cAAc,EAAE;QACd,gBAAgB;KACjB;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,YAAY,EAAE;QACZ,cAAc;KACf;IACD,YAAY,EAAE;QACZ,SAAS;KACV;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,MAAM,EAAE;QACN,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,qBAAqB;KACtB;IACD,uBAAuB,EAAE;QACvB,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,WAAW;KACZ;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,WAAW,EAAE;QACX,gBAAgB;QAChB,SAAS;KACV;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,aAAa;QACb,SAAS;KACV;IACD,oBAAoB,EAAE;QACpB,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,kBAAkB;KACnB;IACD,aAAa,EAAE;QACb,YAAY;KACb;IACD,UAAU,EAAE;QACV,cAAc;QACd,cAAc;KACf;IACD,aAAa,EAAE;QACb,kBAAkB;QAClB,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,aAAa,EAAE;QACb,iBAAiB;KAClB;IACD,aAAa,EAAE;QACb,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,SAAS,EAAE;QACT,WAAW;KACZ;IACD,UAAU,EAAE;QACV,SAAS;KACV;IACD,KAAK,EAAE;QACL,aAAa;KACd;IACD,UAAU,EAAE;QACV,aAAa;KACd;IACD,MAAM,EAAE;QACN,UAAU;KACX;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,oBAAoB,EAAE;QACpB,sBAAsB;KACvB;IACD,aAAa,EAAE;QACb,iBAAiB;KAClB;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,YAAY,EAAE;QACZ,SAAS;KACV;IACD,YAAY,EAAE;QACZ,WAAW;KACZ;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,SAAS;KACV;IACD,YAAY,EAAE;QACZ,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,UAAU;KACX;IACD,gBAAgB,EAAE;QAChB,aAAa;KACd;IACD,MAAM,EAAE;QACN,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,sBAAsB;KACvB;IACD,cAAc,EAAE;QACd,WAAW;KACZ;IACD,KAAK,EAAE;QACL,YAAY;KACb;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,gBAAgB,EAAE;QAChB,mBAAmB;KACpB;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,OAAO,EAAE;QACP,YAAY;KACb;IACD,MAAM,EAAE;QACN,UAAU;QACV,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,YAAY;KACb;IACD,SAAS,EAAE;QACT,SAAS;KACV;IACD,OAAO,EAAE;QACP,YAAY;KACb;IACD,WAAW,EAAE;QACX,iBAAiB;KAClB;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,KAAK,EAAE;QACL,UAAU;KACX;IACD,SAAS,EAAE;QACT,WAAW;KACZ;IACD,cAAc,EAAE;QACd,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,KAAK,EAAE;QACL,SAAS;QACT,cAAc;KACf;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,OAAO,EAAE;QACP,UAAU;KACX;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,aAAa;KACd;IACD,KAAK,EAAE;QACL,WAAW;KACZ;IACD,mBAAmB,EAAE;QACnB,sBAAsB;KACvB;IACD,QAAQ,EAAE;QACR,cAAc;KACf;IACD,IAAI,EAAE;QACJ,cAAc;KACf;IACD,GAAG,EAAE;QACH,WAAW;KACZ;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,QAAQ,EAAE;QACR,aAAa;KACd;IACD,IAAI,EAAE;QACJ,UAAU;KACX;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,SAAS,EAAE;QACT,SAAS;KACV;IACD,UAAU,EAAE;QACV,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,sBAAsB;KACvB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,aAAa,EAAE;QACb,SAAS;KACV;IACD,oBAAoB,EAAE;QACpB,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,YAAY;KACb;IACD,GAAG,EAAE;QACH,OAAO;KACR;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,IAAI,EAAE;QACJ,QAAQ;KACT;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,IAAI,EAAE;QACJ,QAAQ;KACT;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;QACf,WAAW;KACZ;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,UAAU;KACX;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,SAAS,EAAE;QACT,aAAa;KACd;CACoE,CAAC","sourcesContent":["// Generated by scripts/sync-public-component-map.mjs --write. Do not edit by hand.\n// Public value exports per symbol, canonical granular entry first (the root entry is omitted).\nexport const publicExportEntries = {\n Accordion: [\n \"./display\"\n ],\n AccountSwitcher: [\n \"./task-controls\"\n ],\n ActivityChip: [\n \"./activity-chip\",\n \"./feedback\"\n ],\n ActivityHeatmap: [\n \"./activity-heatmap\"\n ],\n Affix: [\n \"./affix\"\n ],\n Agreement: [\n \"./agreement\"\n ],\n AlertDialog: [\n \"./overlays\"\n ],\n AlertDialogQueueProvider: [\n \"./alert-dialog-queue\"\n ],\n Anchor: [\n \"./anchor\"\n ],\n AnimatedStatistic: [\n \"./statistic-motion\"\n ],\n AspectRatio: [\n \"./layout\"\n ],\n Asset: [\n \"./asset\"\n ],\n AssetGroup: [\n \"./asset\"\n ],\n AuthProviderButton: [\n \"./provider-button\"\n ],\n AuthScreenFooter: [\n \"./auth-screen\"\n ],\n AuthScreenHero: [\n \"./auth-screen\"\n ],\n AuthScreenLayout: [\n \"./auth-screen\"\n ],\n Avatar: [\n \"./display\"\n ],\n AvatarGroup: [\n \"./display\"\n ],\n Badge: [\n \"./display\"\n ],\n BarChart: [\n \"./chart\"\n ],\n BezierEditor: [\n \"./authoring-tools\"\n ],\n BottomCTA: [\n \"./bottom-cta\"\n ],\n BottomInfo: [\n \"./bottom-info\"\n ],\n BottomNavigation: [\n \"./navigation\"\n ],\n BottomNavigationInsetProvider: [\n \"./navigation\"\n ],\n Breadcrumb: [\n \"./breadcrumb\",\n \"./navigation\"\n ],\n Button: [\n \"./actions\"\n ],\n ButtonLink: [\n \"./actions\"\n ],\n Calendar: [\n \"./calendar\"\n ],\n Card: [\n \"./display\"\n ],\n Carousel: [\n \"./carousel\"\n ],\n CarouselMotion: [\n \"./carousel-motion\"\n ],\n Celebration: [\n \"./celebration\"\n ],\n ChartLegend: [\n \"./chart\"\n ],\n ChatDateSeparator: [\n \"./screens\"\n ],\n ChatMessage: [\n \"./screens\"\n ],\n ChatRoomActions: [\n \"./communication\"\n ],\n ChatRoomCreate: [\n \"./communication\"\n ],\n ChatRoomDetails: [\n \"./communication\"\n ],\n ChatRoomInvite: [\n \"./communication\"\n ],\n ChatRoomMembers: [\n \"./communication\"\n ],\n ChatRoomProfile: [\n \"./communication\"\n ],\n ChatScreen: [\n \"./screens\"\n ],\n Checkbox: [\n \"./selection\"\n ],\n CheckboxGroup: [\n \"./selection\"\n ],\n Chip: [\n \"./selection\"\n ],\n ChoiceRow: [\n \"./choice-row\"\n ],\n ClipboardButton: [\n \"./clipboard\"\n ],\n ClipboardIconButton: [\n \"./clipboard\"\n ],\n CodeBlock: [\n \"./code-block\"\n ],\n CohortRetentionTable: [\n \"./data-workflows\"\n ],\n Collapsible: [\n \"./collapsible\"\n ],\n CollapsibleMarker: [\n \"./collapsible\"\n ],\n CollectionRail: [\n \"./collection-rail\"\n ],\n ColorPicker: [\n \"./color-picker\"\n ],\n ColorSwatchPicker: [\n \"./color-picker\"\n ],\n Combobox: [\n \"./forms\"\n ],\n CommandPalette: [\n \"./command-palette\"\n ],\n CommentThreadRow: [\n \"./screen-flows\"\n ],\n CommentThreadScreen: [\n \"./screen-flows\"\n ],\n ComparisonTable: [\n \"./data-table\"\n ],\n CompositionLayout: [\n \"./screens\"\n ],\n Container: [\n \"./layout\"\n ],\n ContentTransition: [\n \"./content-transition\"\n ],\n ContextMenu: [\n \"./context-menu\"\n ],\n ConversationListScreen: [\n \"./screens\"\n ],\n ConversationRow: [\n \"./conversation-row\"\n ],\n ConversionFunnel: [\n \"./data-workflows\"\n ],\n CorrelationMatrix: [\n \"./data-workflows\"\n ],\n CounterBadge: [\n \"./display\"\n ],\n DataTable: [\n \"./data-table\"\n ],\n DateEntry: [\n \"./date-entry\"\n ],\n DatePicker: [\n \"./date-picker\",\n \"./forms\"\n ],\n DateRangePicker: [\n \"./date-range\"\n ],\n DescriptionList: [\n \"./display\"\n ],\n Dialog: [\n \"./overlays\"\n ],\n Divider: [\n \"./display\"\n ],\n DocumentResource: [\n \"./document-resource\"\n ],\n DurationField: [\n \"./duration-field\"\n ],\n EditorScreen: [\n \"./screen-flows\"\n ],\n EffectSurface: [\n \"./effect-surface\"\n ],\n EmptyState: [\n \"./feedback\"\n ],\n EventAttendanceCard: [\n \"./social-compositions\"\n ],\n ExpandableSearch: [\n \"./communication\"\n ],\n Field: [\n \"./forms\"\n ],\n FieldGroup: [\n \"./field-group\"\n ],\n FilePicker: [\n \"./file-picker\",\n \"./forms\"\n ],\n FilterRecovery: [\n \"./collection-editing\"\n ],\n FloatingActionButton: [\n \"./floating-action-button\"\n ],\n FolderPreview: [\n \"./folder-preview\"\n ],\n FollowListScreen: [\n \"./follow-list\"\n ],\n FollowProfileCard: [\n \"./social-compositions\"\n ],\n Form: [\n \"./forms\"\n ],\n GravityLetters: [\n \"./gravity-letters\"\n ],\n Grid: [\n \"./layout\"\n ],\n GridReveal: [\n \"./grid-reveal\"\n ],\n Heading: [\n \"./heading\"\n ],\n HistogramExplorer: [\n \"./data-workflows\"\n ],\n HjmProvider: [\n \"./provider\"\n ],\n Icon: [\n \"./display\"\n ],\n IconButton: [\n \"./actions\"\n ],\n IconButtonLink: [\n \"./actions\"\n ],\n IconTile: [\n \"./screens\"\n ],\n Image: [\n \"./display\"\n ],\n ImageChoiceGroup: [\n \"./image-choice\"\n ],\n ImageComparison: [\n \"./image-comparison\"\n ],\n ImageViewer: [\n \"./image-viewer\"\n ],\n ImageViewerTrigger: [\n \"./image-viewer\"\n ],\n ImmersiveOverlay: [\n \"./overlays\"\n ],\n ImportFieldMapping: [\n \"./data-workflows\"\n ],\n InlineConfirm: [\n \"./inline-confirm\"\n ],\n InlineEdit: [\n \"./collection-editing\"\n ],\n Layout: [\n \"./layout\"\n ],\n LineChart: [\n \"./chart\"\n ],\n LineScore: [\n \"./data-table\"\n ],\n Link: [\n \"./actions\"\n ],\n List: [\n \"./display\"\n ],\n ListDetailScreen: [\n \"./screen-flows\"\n ],\n ListRow: [\n \"./display\"\n ],\n ListSeparator: [\n \"./display\"\n ],\n LoadMore: [\n \"./navigation\"\n ],\n Masonry: [\n \"./masonry\"\n ],\n MatrixTable: [\n \"./data-table\"\n ],\n MediaAlbumPageStatus: [\n \"./screens\"\n ],\n MediaSelectionCell: [\n \"./screen-flows\"\n ],\n MediaSelectionScreen: [\n \"./screen-flows\"\n ],\n MediaTransport: [\n \"./media-transport\"\n ],\n Mentions: [\n \"./mentions\"\n ],\n Menu: [\n \"./overlays\"\n ],\n Menubar: [\n \"./menubar\"\n ],\n MessageComposer: [\n \"./screens\"\n ],\n ModerationForm: [\n \"./screen-flows\"\n ],\n ModerationScreen: [\n \"./screen-flows\"\n ],\n MorphingMenu: [\n \"./menu-morph\"\n ],\n NativeSelect: [\n \"./forms\"\n ],\n NavigationBar: [\n \"./navigation-bar\"\n ],\n Notice: [\n \"./feedback\"\n ],\n NotificationBell: [\n \"./notification-bell\"\n ],\n NotificationInboxScreen: [\n \"./screens\"\n ],\n NotificationItem: [\n \"./screens\"\n ],\n NotificationRow: [\n \"./screens\"\n ],\n NumberField: [\n \"./number-field\",\n \"./forms\"\n ],\n OnboardingScreen: [\n \"./screen-flows\"\n ],\n OtpField: [\n \"./otp-field\",\n \"./forms\"\n ],\n OverlayStackProvider: [\n \"./overlay-stack\"\n ],\n OverviewScreen: [\n \"./design-profile\"\n ],\n PageIndicator: [\n \"./carousel\"\n ],\n Pagination: [\n \"./pagination\",\n \"./navigation\"\n ],\n PasswordField: [\n \"./password-field\",\n \"./forms\"\n ],\n PasswordRulesField: [\n \"./task-controls\"\n ],\n PendingContent: [\n \"./feedback\"\n ],\n PermissionScreen: [\n \"./screen-flows\"\n ],\n PhotoSourceSheet: [\n \"./screen-flows\"\n ],\n PieChart: [\n \"./chart\"\n ],\n Popover: [\n \"./popover\"\n ],\n PricingChoice: [\n \"./task-controls\"\n ],\n ProfileScreen: [\n \"./screen-flows\"\n ],\n ProfileSummary: [\n \"./screen-flows\"\n ],\n Progress: [\n \"./feedback\"\n ],\n ProgressiveBlur: [\n \"./progressive-blur\"\n ],\n QRCode: [\n \"./qr-code\"\n ],\n QuoteCard: [\n \"./display\"\n ],\n RadarChart: [\n \"./chart\"\n ],\n Radio: [\n \"./selection\"\n ],\n RadioGroup: [\n \"./selection\"\n ],\n Rating: [\n \"./rating\"\n ],\n ReactionPicker: [\n \"./reaction-picker\"\n ],\n RepeatableFieldGroup: [\n \"./collection-editing\"\n ],\n ReplyComposer: [\n \"./communication\"\n ],\n ReplyMessage: [\n \"./communication\"\n ],\n Result: [\n \"./feedback\"\n ],\n SavedItemsScreen: [\n \"./saved-items\"\n ],\n ScatterChart: [\n \"./chart\"\n ],\n ScreenLayout: [\n \"./screens\"\n ],\n ScrollProgress: [\n \"./scroll-progress\"\n ],\n SearchField: [\n \"./forms\"\n ],\n SearchScreen: [\n \"./screen-flows\"\n ],\n Section: [\n \"./layout\"\n ],\n SegmentedControl: [\n \"./selection\"\n ],\n Select: [\n \"./forms\"\n ],\n SelectionActionBar: [\n \"./collection-editing\"\n ],\n SettingsScreen: [\n \"./screens\"\n ],\n Sheet: [\n \"./overlays\"\n ],\n ShortcutRail: [\n \"./shortcut-rail\"\n ],\n ShortcutRecorder: [\n \"./authoring-tools\"\n ],\n Sidebar: [\n \"./sidebar\"\n ],\n SidePanel: [\n \"./side-panel\"\n ],\n Skeleton: [\n \"./feedback\"\n ],\n SkipNav: [\n \"./skip-nav\"\n ],\n Slider: [\n \"./slider\",\n \"./forms\"\n ],\n SortableCollection: [\n \"./sortable\"\n ],\n Sparkline: [\n \"./chart\"\n ],\n Spinner: [\n \"./feedback\"\n ],\n SplitAction: [\n \"./task-controls\"\n ],\n Splitter: [\n \"./splitter\"\n ],\n Stack: [\n \"./layout\"\n ],\n Statistic: [\n \"./display\"\n ],\n StatisticGroup: [\n \"./display\"\n ],\n StatusText: [\n \"./status-text\"\n ],\n StepPlayer: [\n \"./step-player\"\n ],\n Steps: [\n \"./steps\",\n \"./navigation\"\n ],\n StreamingAnswer: [\n \"./streaming-answer\"\n ],\n Surface: [\n \"./layout\"\n ],\n SwipeActions: [\n \"./swipe-actions\"\n ],\n Switch: [\n \"./selection\"\n ],\n Table: [\n \"./display\"\n ],\n TableColumnSettings: [\n \"./collection-editing\"\n ],\n TabPanel: [\n \"./navigation\"\n ],\n Tabs: [\n \"./navigation\"\n ],\n Tag: [\n \"./display\"\n ],\n TagsInput: [\n \"./tags-input\"\n ],\n TargetSummary: [\n \"./data-workflows\"\n ],\n TaskList: [\n \"./task-list\"\n ],\n Text: [\n \"./layout\"\n ],\n TextArea: [\n \"./forms\"\n ],\n TextField: [\n \"./forms\"\n ],\n TextFormat: [\n \"./text-formats\"\n ],\n TextTransition: [\n \"./content-transition\"\n ],\n ThinkingOrb: [\n \"./thinking-orb\"\n ],\n Timeline: [\n \"./display\"\n ],\n TimePicker: [\n \"./time-picker\"\n ],\n Toast: [\n \"./toast\"\n ],\n ToastProvider: [\n \"./toast\"\n ],\n ToggleFeedbackButton: [\n \"./toggle-feedback\"\n ],\n ToggleGroup: [\n \"./toggle-group\"\n ],\n Tooltip: [\n \"./overlays\"\n ],\n Top: [\n \"./top\"\n ],\n TopBar: [\n \"./top-bar\"\n ],\n Tour: [\n \"./tour\"\n ],\n TransferList: [\n \"./transfer-list\"\n ],\n TransferTask: [\n \"./transfer-task\"\n ],\n Tree: [\n \"./tree\"\n ],\n TypingIndicator: [\n \"./screens\"\n ],\n UploadItem: [\n \"./upload-item\",\n \"./display\"\n ],\n VirtualList: [\n \"./virtual-list\"\n ],\n VisuallyHidden: [\n \"./layout\"\n ],\n VoiceNote: [\n \"./voice-note\"\n ],\n Watermark: [\n \"./watermark\"\n ]\n} as const satisfies Readonly<Record<string, readonly `./${string}`[]>>;\n"]}
|
|
1
|
+
{"version":3,"file":"public-exports.generated.js","sourceRoot":"","sources":["../src/public-exports.generated.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,+FAA+F;AAC/F,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS,EAAE;QACT,WAAW;KACZ;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,YAAY,EAAE;QACZ,iBAAiB;QACjB,YAAY;KACb;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,SAAS,EAAE;QACT,aAAa;KACd;IACD,WAAW,EAAE;QACX,YAAY;KACb;IACD,wBAAwB,EAAE;QACxB,sBAAsB;KACvB;IACD,MAAM,EAAE;QACN,UAAU;KACX;IACD,iBAAiB,EAAE;QACjB,oBAAoB;KACrB;IACD,WAAW,EAAE;QACX,UAAU;KACX;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,UAAU,EAAE;QACV,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,mBAAmB;KACpB;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,cAAc,EAAE;QACd,eAAe;KAChB;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,WAAW,EAAE;QACX,WAAW;KACZ;IACD,KAAK,EAAE;QACL,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,YAAY,EAAE;QACZ,mBAAmB;KACpB;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,gBAAgB,EAAE;QAChB,cAAc;KACf;IACD,6BAA6B,EAAE;QAC7B,cAAc;KACf;IACD,UAAU,EAAE;QACV,cAAc;QACd,cAAc;KACf;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,UAAU,EAAE;QACV,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,eAAe;KAChB;IACD,WAAW,EAAE;QACX,SAAS;KACV;IACD,iBAAiB,EAAE;QACjB,WAAW;KACZ;IACD,WAAW,EAAE;QACX,WAAW;KACZ;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,iBAAiB;KAClB;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,iBAAiB;KAClB;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,eAAe,EAAE;QACf,iBAAiB;KAClB;IACD,UAAU,EAAE;QACV,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,aAAa;KACd;IACD,aAAa,EAAE;QACb,aAAa;KACd;IACD,IAAI,EAAE;QACJ,aAAa;KACd;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,eAAe,EAAE;QACf,aAAa;KACd;IACD,mBAAmB,EAAE;QACnB,aAAa;KACd;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,oBAAoB,EAAE;QACpB,kBAAkB;KACnB;IACD,WAAW,EAAE;QACX,eAAe;KAChB;IACD,iBAAiB,EAAE;QACjB,eAAe;KAChB;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,iBAAiB,EAAE;QACjB,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,mBAAmB,EAAE;QACnB,gBAAgB;KACjB;IACD,eAAe,EAAE;QACf,cAAc;KACf;IACD,iBAAiB,EAAE;QACjB,WAAW;KACZ;IACD,SAAS,EAAE;QACT,UAAU;KACX;IACD,iBAAiB,EAAE;QACjB,sBAAsB;KACvB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,sBAAsB,EAAE;QACtB,WAAW;KACZ;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,gBAAgB,EAAE;QAChB,kBAAkB;KACnB;IACD,iBAAiB,EAAE;QACjB,kBAAkB;KACnB;IACD,YAAY,EAAE;QACZ,WAAW;KACZ;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,UAAU,EAAE;QACV,eAAe;QACf,SAAS;KACV;IACD,eAAe,EAAE;QACf,cAAc;KACf;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,MAAM,EAAE;QACN,YAAY;KACb;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,qBAAqB;KACtB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,YAAY,EAAE;QACZ,gBAAgB;KACjB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,UAAU,EAAE;QACV,YAAY;KACb;IACD,mBAAmB,EAAE;QACnB,uBAAuB;KACxB;IACD,gBAAgB,EAAE;QAChB,iBAAiB;KAClB;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,UAAU,EAAE;QACV,eAAe;QACf,SAAS;KACV;IACD,cAAc,EAAE;QACd,sBAAsB;KACvB;IACD,oBAAoB,EAAE;QACpB,0BAA0B;KAC3B;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,iBAAiB,EAAE;QACjB,uBAAuB;KACxB;IACD,IAAI,EAAE;QACJ,SAAS;KACV;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,IAAI,EAAE;QACJ,UAAU;KACX;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,iBAAiB,EAAE;QACjB,kBAAkB;KACnB;IACD,WAAW,EAAE;QACX,YAAY;KACb;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,UAAU,EAAE;QACV,WAAW;KACZ;IACD,cAAc,EAAE;QACd,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,WAAW;KACZ;IACD,KAAK,EAAE;QACL,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,kBAAkB,EAAE;QAClB,gBAAgB;KACjB;IACD,gBAAgB,EAAE;QAChB,YAAY;KACb;IACD,kBAAkB,EAAE;QAClB,kBAAkB;KACnB;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,UAAU,EAAE;QACV,sBAAsB;KACvB;IACD,MAAM,EAAE;QACN,UAAU;KACX;IACD,SAAS,EAAE;QACT,SAAS;KACV;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,IAAI,EAAE;QACJ,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,aAAa,EAAE;QACb,WAAW;KACZ;IACD,QAAQ,EAAE;QACR,cAAc;KACf;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,WAAW,EAAE;QACX,cAAc;KACf;IACD,oBAAoB,EAAE;QACpB,WAAW;KACZ;IACD,kBAAkB,EAAE;QAClB,gBAAgB;KACjB;IACD,oBAAoB,EAAE;QACpB,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,IAAI,EAAE;QACJ,YAAY;KACb;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,cAAc,EAAE;QACd,gBAAgB;KACjB;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,YAAY,EAAE;QACZ,cAAc;KACf;IACD,YAAY,EAAE;QACZ,SAAS;KACV;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,MAAM,EAAE;QACN,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,qBAAqB;KACtB;IACD,uBAAuB,EAAE;QACvB,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,WAAW;KACZ;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,WAAW,EAAE;QACX,gBAAgB;QAChB,SAAS;KACV;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,aAAa;QACb,SAAS;KACV;IACD,oBAAoB,EAAE;QACpB,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,kBAAkB;KACnB;IACD,aAAa,EAAE;QACb,YAAY;KACb;IACD,UAAU,EAAE;QACV,cAAc;QACd,cAAc;KACf;IACD,aAAa,EAAE;QACb,kBAAkB;QAClB,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,iBAAiB;KAClB;IACD,cAAc,EAAE;QACd,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,gBAAgB,EAAE;QAChB,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,aAAa,EAAE;QACb,iBAAiB;KAClB;IACD,aAAa,EAAE;QACb,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,SAAS,EAAE;QACT,WAAW;KACZ;IACD,UAAU,EAAE;QACV,SAAS;KACV;IACD,KAAK,EAAE;QACL,aAAa;KACd;IACD,UAAU,EAAE;QACV,aAAa;KACd;IACD,MAAM,EAAE;QACN,UAAU;KACX;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,oBAAoB,EAAE;QACpB,sBAAsB;KACvB;IACD,aAAa,EAAE;QACb,iBAAiB;KAClB;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,YAAY;KACb;IACD,gBAAgB,EAAE;QAChB,eAAe;KAChB;IACD,YAAY,EAAE;QACZ,SAAS;KACV;IACD,YAAY,EAAE;QACZ,WAAW;KACZ;IACD,cAAc,EAAE;QACd,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,SAAS;KACV;IACD,YAAY,EAAE;QACZ,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,UAAU;KACX;IACD,gBAAgB,EAAE;QAChB,aAAa;KACd;IACD,MAAM,EAAE;QACN,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,sBAAsB;KACvB;IACD,cAAc,EAAE;QACd,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,KAAK,EAAE;QACL,YAAY;KACb;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,gBAAgB,EAAE;QAChB,mBAAmB;KACpB;IACD,OAAO,EAAE;QACP,WAAW;KACZ;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,OAAO,EAAE;QACP,YAAY;KACb;IACD,MAAM,EAAE;QACN,UAAU;QACV,SAAS;KACV;IACD,kBAAkB,EAAE;QAClB,YAAY;KACb;IACD,SAAS,EAAE;QACT,SAAS;KACV;IACD,OAAO,EAAE;QACP,YAAY;KACb;IACD,WAAW,EAAE;QACX,iBAAiB;KAClB;IACD,QAAQ,EAAE;QACR,YAAY;KACb;IACD,KAAK,EAAE;QACL,UAAU;KACX;IACD,SAAS,EAAE;QACT,WAAW;KACZ;IACD,cAAc,EAAE;QACd,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,KAAK,EAAE;QACL,SAAS;QACT,cAAc;KACf;IACD,eAAe,EAAE;QACf,oBAAoB;KACrB;IACD,OAAO,EAAE;QACP,UAAU;KACX;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,aAAa;KACd;IACD,KAAK,EAAE;QACL,WAAW;KACZ;IACD,mBAAmB,EAAE;QACnB,sBAAsB;KACvB;IACD,QAAQ,EAAE;QACR,cAAc;KACf;IACD,IAAI,EAAE;QACJ,cAAc;KACf;IACD,GAAG,EAAE;QACH,WAAW;KACZ;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,aAAa,EAAE;QACb,kBAAkB;KACnB;IACD,QAAQ,EAAE;QACR,aAAa;KACd;IACD,IAAI,EAAE;QACJ,UAAU;KACX;IACD,QAAQ,EAAE;QACR,SAAS;KACV;IACD,SAAS,EAAE;QACT,SAAS;KACV;IACD,UAAU,EAAE;QACV,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,sBAAsB;KACvB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,QAAQ,EAAE;QACR,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;KAChB;IACD,KAAK,EAAE;QACL,SAAS;KACV;IACD,aAAa,EAAE;QACb,SAAS;KACV;IACD,oBAAoB,EAAE;QACpB,mBAAmB;KACpB;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,YAAY;KACb;IACD,GAAG,EAAE;QACH,OAAO;KACR;IACD,MAAM,EAAE;QACN,WAAW;KACZ;IACD,IAAI,EAAE;QACJ,QAAQ;KACT;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,YAAY,EAAE;QACZ,iBAAiB;KAClB;IACD,IAAI,EAAE;QACJ,QAAQ;KACT;IACD,eAAe,EAAE;QACf,WAAW;KACZ;IACD,UAAU,EAAE;QACV,eAAe;QACf,WAAW;KACZ;IACD,WAAW,EAAE;QACX,gBAAgB;KACjB;IACD,cAAc,EAAE;QACd,UAAU;KACX;IACD,SAAS,EAAE;QACT,cAAc;KACf;IACD,SAAS,EAAE;QACT,aAAa;KACd;CACoE,CAAC","sourcesContent":["// Generated by scripts/sync-public-component-map.mjs --write. Do not edit by hand.\n// Public value exports per symbol, canonical granular entry first (the root entry is omitted).\nexport const publicExportEntries = {\n Accordion: [\n \"./display\"\n ],\n AccountSwitcher: [\n \"./task-controls\"\n ],\n ActivityChip: [\n \"./activity-chip\",\n \"./feedback\"\n ],\n ActivityHeatmap: [\n \"./activity-heatmap\"\n ],\n Affix: [\n \"./affix\"\n ],\n Agreement: [\n \"./agreement\"\n ],\n AlertDialog: [\n \"./overlays\"\n ],\n AlertDialogQueueProvider: [\n \"./alert-dialog-queue\"\n ],\n Anchor: [\n \"./anchor\"\n ],\n AnimatedStatistic: [\n \"./statistic-motion\"\n ],\n AspectRatio: [\n \"./layout\"\n ],\n Asset: [\n \"./asset\"\n ],\n AssetGroup: [\n \"./asset\"\n ],\n AuthProviderButton: [\n \"./provider-button\"\n ],\n AuthScreenFooter: [\n \"./auth-screen\"\n ],\n AuthScreenHero: [\n \"./auth-screen\"\n ],\n AuthScreenLayout: [\n \"./auth-screen\"\n ],\n Avatar: [\n \"./display\"\n ],\n AvatarGroup: [\n \"./display\"\n ],\n Badge: [\n \"./display\"\n ],\n BarChart: [\n \"./chart\"\n ],\n BezierEditor: [\n \"./authoring-tools\"\n ],\n BottomCTA: [\n \"./bottom-cta\"\n ],\n BottomInfo: [\n \"./bottom-info\"\n ],\n BottomNavigation: [\n \"./navigation\"\n ],\n BottomNavigationInsetProvider: [\n \"./navigation\"\n ],\n Breadcrumb: [\n \"./breadcrumb\",\n \"./navigation\"\n ],\n Button: [\n \"./actions\"\n ],\n ButtonLink: [\n \"./actions\"\n ],\n Calendar: [\n \"./calendar\"\n ],\n Card: [\n \"./display\"\n ],\n Carousel: [\n \"./carousel\"\n ],\n CarouselMotion: [\n \"./carousel-motion\"\n ],\n Celebration: [\n \"./celebration\"\n ],\n ChartLegend: [\n \"./chart\"\n ],\n ChatDateSeparator: [\n \"./screens\"\n ],\n ChatMessage: [\n \"./screens\"\n ],\n ChatRoomActions: [\n \"./communication\"\n ],\n ChatRoomCreate: [\n \"./communication\"\n ],\n ChatRoomDetails: [\n \"./communication\"\n ],\n ChatRoomInvite: [\n \"./communication\"\n ],\n ChatRoomMembers: [\n \"./communication\"\n ],\n ChatRoomProfile: [\n \"./communication\"\n ],\n ChatScreen: [\n \"./screens\"\n ],\n Checkbox: [\n \"./selection\"\n ],\n CheckboxGroup: [\n \"./selection\"\n ],\n Chip: [\n \"./selection\"\n ],\n ChoiceRow: [\n \"./choice-row\"\n ],\n ClipboardButton: [\n \"./clipboard\"\n ],\n ClipboardIconButton: [\n \"./clipboard\"\n ],\n CodeBlock: [\n \"./code-block\"\n ],\n CohortRetentionTable: [\n \"./data-workflows\"\n ],\n Collapsible: [\n \"./collapsible\"\n ],\n CollapsibleMarker: [\n \"./collapsible\"\n ],\n CollectionRail: [\n \"./collection-rail\"\n ],\n ColorPicker: [\n \"./color-picker\"\n ],\n ColorSwatchPicker: [\n \"./color-picker\"\n ],\n Combobox: [\n \"./forms\"\n ],\n CommandPalette: [\n \"./command-palette\"\n ],\n CommentThreadRow: [\n \"./screen-flows\"\n ],\n CommentThreadScreen: [\n \"./screen-flows\"\n ],\n ComparisonTable: [\n \"./data-table\"\n ],\n CompositionLayout: [\n \"./screens\"\n ],\n Container: [\n \"./layout\"\n ],\n ContentTransition: [\n \"./content-transition\"\n ],\n ContextMenu: [\n \"./context-menu\"\n ],\n ConversationListScreen: [\n \"./screens\"\n ],\n ConversationRow: [\n \"./conversation-row\"\n ],\n ConversionFunnel: [\n \"./data-workflows\"\n ],\n CorrelationMatrix: [\n \"./data-workflows\"\n ],\n CounterBadge: [\n \"./display\"\n ],\n DataTable: [\n \"./data-table\"\n ],\n DateEntry: [\n \"./date-entry\"\n ],\n DatePicker: [\n \"./date-picker\",\n \"./forms\"\n ],\n DateRangePicker: [\n \"./date-range\"\n ],\n DescriptionList: [\n \"./display\"\n ],\n Dialog: [\n \"./overlays\"\n ],\n Divider: [\n \"./display\"\n ],\n DocumentResource: [\n \"./document-resource\"\n ],\n DrawingEditor: [\n \"./drawing-editor\"\n ],\n DurationField: [\n \"./duration-field\"\n ],\n EditorScreen: [\n \"./screen-flows\"\n ],\n EffectSurface: [\n \"./effect-surface\"\n ],\n EmptyState: [\n \"./feedback\"\n ],\n EventAttendanceCard: [\n \"./social-compositions\"\n ],\n ExpandableSearch: [\n \"./communication\"\n ],\n Field: [\n \"./forms\"\n ],\n FieldGroup: [\n \"./field-group\"\n ],\n FilePicker: [\n \"./file-picker\",\n \"./forms\"\n ],\n FilterRecovery: [\n \"./collection-editing\"\n ],\n FloatingActionButton: [\n \"./floating-action-button\"\n ],\n FolderPreview: [\n \"./folder-preview\"\n ],\n FollowListScreen: [\n \"./follow-list\"\n ],\n FollowProfileCard: [\n \"./social-compositions\"\n ],\n Form: [\n \"./forms\"\n ],\n GravityLetters: [\n \"./gravity-letters\"\n ],\n Grid: [\n \"./layout\"\n ],\n GridReveal: [\n \"./grid-reveal\"\n ],\n Heading: [\n \"./heading\"\n ],\n HistogramExplorer: [\n \"./data-workflows\"\n ],\n HjmProvider: [\n \"./provider\"\n ],\n Icon: [\n \"./display\"\n ],\n IconButton: [\n \"./actions\"\n ],\n IconButtonLink: [\n \"./actions\"\n ],\n IconTile: [\n \"./screens\"\n ],\n Image: [\n \"./display\"\n ],\n ImageChoiceGroup: [\n \"./image-choice\"\n ],\n ImageComparison: [\n \"./image-comparison\"\n ],\n ImageViewer: [\n \"./image-viewer\"\n ],\n ImageViewerTrigger: [\n \"./image-viewer\"\n ],\n ImmersiveOverlay: [\n \"./overlays\"\n ],\n ImportFieldMapping: [\n \"./data-workflows\"\n ],\n InlineConfirm: [\n \"./inline-confirm\"\n ],\n InlineEdit: [\n \"./collection-editing\"\n ],\n Layout: [\n \"./layout\"\n ],\n LineChart: [\n \"./chart\"\n ],\n LineScore: [\n \"./data-table\"\n ],\n Link: [\n \"./actions\"\n ],\n List: [\n \"./display\"\n ],\n ListDetailScreen: [\n \"./screen-flows\"\n ],\n ListRow: [\n \"./display\"\n ],\n ListSeparator: [\n \"./display\"\n ],\n LoadMore: [\n \"./navigation\"\n ],\n Masonry: [\n \"./masonry\"\n ],\n MatrixTable: [\n \"./data-table\"\n ],\n MediaAlbumPageStatus: [\n \"./screens\"\n ],\n MediaSelectionCell: [\n \"./screen-flows\"\n ],\n MediaSelectionScreen: [\n \"./screen-flows\"\n ],\n MediaTransport: [\n \"./media-transport\"\n ],\n Mentions: [\n \"./mentions\"\n ],\n Menu: [\n \"./overlays\"\n ],\n Menubar: [\n \"./menubar\"\n ],\n MessageComposer: [\n \"./screens\"\n ],\n ModerationForm: [\n \"./screen-flows\"\n ],\n ModerationScreen: [\n \"./screen-flows\"\n ],\n MorphingMenu: [\n \"./menu-morph\"\n ],\n NativeSelect: [\n \"./forms\"\n ],\n NavigationBar: [\n \"./navigation-bar\"\n ],\n Notice: [\n \"./feedback\"\n ],\n NotificationBell: [\n \"./notification-bell\"\n ],\n NotificationInboxScreen: [\n \"./screens\"\n ],\n NotificationItem: [\n \"./screens\"\n ],\n NotificationRow: [\n \"./screens\"\n ],\n NumberField: [\n \"./number-field\",\n \"./forms\"\n ],\n OnboardingScreen: [\n \"./screen-flows\"\n ],\n OtpField: [\n \"./otp-field\",\n \"./forms\"\n ],\n OverlayStackProvider: [\n \"./overlay-stack\"\n ],\n OverviewScreen: [\n \"./design-profile\"\n ],\n PageIndicator: [\n \"./carousel\"\n ],\n Pagination: [\n \"./pagination\",\n \"./navigation\"\n ],\n PasswordField: [\n \"./password-field\",\n \"./forms\"\n ],\n PasswordRulesField: [\n \"./task-controls\"\n ],\n PendingContent: [\n \"./feedback\"\n ],\n PermissionScreen: [\n \"./screen-flows\"\n ],\n PhotoSourceSheet: [\n \"./screen-flows\"\n ],\n PieChart: [\n \"./chart\"\n ],\n Popover: [\n \"./popover\"\n ],\n PricingChoice: [\n \"./task-controls\"\n ],\n ProfileScreen: [\n \"./screen-flows\"\n ],\n ProfileSummary: [\n \"./screen-flows\"\n ],\n Progress: [\n \"./feedback\"\n ],\n ProgressiveBlur: [\n \"./progressive-blur\"\n ],\n QRCode: [\n \"./qr-code\"\n ],\n QuoteCard: [\n \"./display\"\n ],\n RadarChart: [\n \"./chart\"\n ],\n Radio: [\n \"./selection\"\n ],\n RadioGroup: [\n \"./selection\"\n ],\n Rating: [\n \"./rating\"\n ],\n ReactionPicker: [\n \"./reaction-picker\"\n ],\n RepeatableFieldGroup: [\n \"./collection-editing\"\n ],\n ReplyComposer: [\n \"./communication\"\n ],\n ReplyMessage: [\n \"./communication\"\n ],\n Result: [\n \"./feedback\"\n ],\n SavedItemsScreen: [\n \"./saved-items\"\n ],\n ScatterChart: [\n \"./chart\"\n ],\n ScreenLayout: [\n \"./screens\"\n ],\n ScrollProgress: [\n \"./scroll-progress\"\n ],\n SearchField: [\n \"./forms\"\n ],\n SearchScreen: [\n \"./screen-flows\"\n ],\n Section: [\n \"./layout\"\n ],\n SegmentedControl: [\n \"./selection\"\n ],\n Select: [\n \"./forms\"\n ],\n SelectionActionBar: [\n \"./collection-editing\"\n ],\n SettingsScreen: [\n \"./screens\"\n ],\n ShareSheet: [\n \"./share-sheet\"\n ],\n Sheet: [\n \"./overlays\"\n ],\n ShortcutRail: [\n \"./shortcut-rail\"\n ],\n ShortcutRecorder: [\n \"./authoring-tools\"\n ],\n Sidebar: [\n \"./sidebar\"\n ],\n SidePanel: [\n \"./side-panel\"\n ],\n Skeleton: [\n \"./feedback\"\n ],\n SkipNav: [\n \"./skip-nav\"\n ],\n Slider: [\n \"./slider\",\n \"./forms\"\n ],\n SortableCollection: [\n \"./sortable\"\n ],\n Sparkline: [\n \"./chart\"\n ],\n Spinner: [\n \"./feedback\"\n ],\n SplitAction: [\n \"./task-controls\"\n ],\n Splitter: [\n \"./splitter\"\n ],\n Stack: [\n \"./layout\"\n ],\n Statistic: [\n \"./display\"\n ],\n StatisticGroup: [\n \"./display\"\n ],\n StatusText: [\n \"./status-text\"\n ],\n StepPlayer: [\n \"./step-player\"\n ],\n Steps: [\n \"./steps\",\n \"./navigation\"\n ],\n StreamingAnswer: [\n \"./streaming-answer\"\n ],\n Surface: [\n \"./layout\"\n ],\n SwipeActions: [\n \"./swipe-actions\"\n ],\n Switch: [\n \"./selection\"\n ],\n Table: [\n \"./display\"\n ],\n TableColumnSettings: [\n \"./collection-editing\"\n ],\n TabPanel: [\n \"./navigation\"\n ],\n Tabs: [\n \"./navigation\"\n ],\n Tag: [\n \"./display\"\n ],\n TagsInput: [\n \"./tags-input\"\n ],\n TargetSummary: [\n \"./data-workflows\"\n ],\n TaskList: [\n \"./task-list\"\n ],\n Text: [\n \"./layout\"\n ],\n TextArea: [\n \"./forms\"\n ],\n TextField: [\n \"./forms\"\n ],\n TextFormat: [\n \"./text-formats\"\n ],\n TextTransition: [\n \"./content-transition\"\n ],\n ThinkingOrb: [\n \"./thinking-orb\"\n ],\n Timeline: [\n \"./display\"\n ],\n TimePicker: [\n \"./time-picker\"\n ],\n Toast: [\n \"./toast\"\n ],\n ToastProvider: [\n \"./toast\"\n ],\n ToggleFeedbackButton: [\n \"./toggle-feedback\"\n ],\n ToggleGroup: [\n \"./toggle-group\"\n ],\n Tooltip: [\n \"./overlays\"\n ],\n Top: [\n \"./top\"\n ],\n TopBar: [\n \"./top-bar\"\n ],\n Tour: [\n \"./tour\"\n ],\n TransferList: [\n \"./transfer-list\"\n ],\n TransferTask: [\n \"./transfer-task\"\n ],\n Tree: [\n \"./tree\"\n ],\n TypingIndicator: [\n \"./screens\"\n ],\n UploadItem: [\n \"./upload-item\",\n \"./display\"\n ],\n VirtualList: [\n \"./virtual-list\"\n ],\n VisuallyHidden: [\n \"./layout\"\n ],\n VoiceNote: [\n \"./voice-note\"\n ],\n Watermark: [\n \"./watermark\"\n ]\n} as const satisfies Readonly<Record<string, readonly `./${string}`[]>>;\n"]}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import type { SheetOpenChangeDetails } from "@hjmds/design-contracts/components/sheet";
|
|
3
|
+
import { type ShareSheetLabels, type ShareSheetRecipientDescriptor, type ShareSheetRecipientLabels, type ShareSheetRecipientStatus, type ShareSheetSendResult, type ShareSheetShareContent, type ShareSheetSystemShareOutcome } from "@hjmds/design-contracts/share-sheet";
|
|
4
|
+
export type { ShareSheetLabels, ShareSheetRecipientLabels, ShareSheetRecipientStatus, ShareSheetSendResult, ShareSheetShareContent, ShareSheetSystemShareOutcome, } from "@hjmds/design-contracts/share-sheet";
|
|
5
|
+
export type ShareSheetRecipient = ShareSheetRecipientDescriptor & Readonly<{
|
|
6
|
+
image: ReactNode;
|
|
7
|
+
}>;
|
|
8
|
+
export type ShareSheetRecipientSearch = Readonly<{
|
|
9
|
+
/** Controlled query. With `onQueryChange` the product owns the query and `items` is already its result. */
|
|
10
|
+
query?: string;
|
|
11
|
+
onQueryChange?: (query: string) => void;
|
|
12
|
+
/** A server search is running. */
|
|
13
|
+
searching?: boolean;
|
|
14
|
+
}>;
|
|
15
|
+
export type ShareSheetRecipients = Readonly<{
|
|
16
|
+
items: readonly ShareSheetRecipient[];
|
|
17
|
+
labels: ShareSheetRecipientLabels;
|
|
18
|
+
/** Default `ready`. */
|
|
19
|
+
status?: ShareSheetRecipientStatus;
|
|
20
|
+
/** Shown with the `error` state. */
|
|
21
|
+
onRetry?: () => void;
|
|
22
|
+
retrying?: boolean;
|
|
23
|
+
/** Omit to filter `items` by label here; pass `onQueryChange` to search on the server. */
|
|
24
|
+
search?: ShareSheetRecipientSearch;
|
|
25
|
+
/** Recipients that already received this link (before the sheet opened). They stay checked and locked. */
|
|
26
|
+
sentIds?: readonly string[];
|
|
27
|
+
/** Sends the link to the selected ids. Delivered ids lock as sent; the rest stay selected for a retry. */
|
|
28
|
+
onSend: (ids: readonly string[]) => Promise<ShareSheetSendResult>;
|
|
29
|
+
}>;
|
|
30
|
+
export type ShareSheetProps = Readonly<{
|
|
31
|
+
open: boolean;
|
|
32
|
+
onOpenChange: (open: boolean, detail: SheetOpenChangeDetails) => void;
|
|
33
|
+
title: string;
|
|
34
|
+
labels: ShareSheetLabels;
|
|
35
|
+
/** The URL that is copied and shared. */
|
|
36
|
+
link: string;
|
|
37
|
+
/** Title and text handed to the OS share sheet with the link. */
|
|
38
|
+
shareTitle?: string;
|
|
39
|
+
shareText?: string;
|
|
40
|
+
/** Writes the link to the clipboard. Default `navigator.clipboard.writeText`; `false` hides the action. */
|
|
41
|
+
copyLink?: ((link: string) => Promise<void>) | false;
|
|
42
|
+
/**
|
|
43
|
+
* Opens the OS share sheet. Default `navigator.share` (the action is hidden where the browser has none); `false`
|
|
44
|
+
* hides the action. Reject with an `AbortError` when the user backs out.
|
|
45
|
+
*/
|
|
46
|
+
systemShare?: ((content: ShareSheetShareContent) => Promise<void>) | false;
|
|
47
|
+
onLinkCopied?: () => void;
|
|
48
|
+
/** The OS share sheet closed. `completed` is not a delivery receipt. */
|
|
49
|
+
onSystemShare?: (outcome: ShareSheetSystemShareOutcome) => void;
|
|
50
|
+
/** Product artwork for the two actions. Defaults to the HJM `copy` and `share` icons. */
|
|
51
|
+
icons?: Readonly<{
|
|
52
|
+
copyLink?: ReactNode;
|
|
53
|
+
systemShare?: ReactNode;
|
|
54
|
+
}>;
|
|
55
|
+
/** In-app recipients (group chats, followers). Omit for external sharing only. */
|
|
56
|
+
recipients?: ShareSheetRecipients;
|
|
57
|
+
/** Product feedback above the body, such as a reward earned by sending. */
|
|
58
|
+
notice?: ReactNode;
|
|
59
|
+
}>;
|
|
60
|
+
/**
|
|
61
|
+
* One Sheet for sharing a link (2026-10-26, generalized from BurnTok's share sheets): optional in-app recipients with a
|
|
62
|
+
* batch send, then copy link and the OS share sheet as two round actions in the footer.
|
|
63
|
+
*/
|
|
64
|
+
export declare function ShareSheet({ open, onOpenChange, title, labels, link, shareTitle, shareText, copyLink, systemShare, onLinkCopied, onSystemShare, icons, recipients, notice, }: ShareSheetProps): import("react").JSX.Element;
|
|
65
|
+
//# sourceMappingURL=share-sheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"share-sheet.d.ts","sourceRoot":"","sources":["../src/share-sheet.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useRef, useState, useSyncExternalStore } from "react";
|
|
4
|
+
import { filterShareSheetRecipients, resolveShareSheetPickerValue, resolveShareSheetSendOutcome, shareSheetRecipe, validateShareSheet, validateShareSheetRecipients, } from "@hjmds/design-contracts/share-sheet";
|
|
5
|
+
import { Button, IconButton } from "./actions.js";
|
|
6
|
+
import { EmptyState, Notice } from "./feedback.js";
|
|
7
|
+
import { SearchField } from "./forms.js";
|
|
8
|
+
import { ImageChoiceGroup } from "./image-choice.js";
|
|
9
|
+
import { Spinner } from "./internal/spinner.js";
|
|
10
|
+
import { Stack, Text } from "./layout.js";
|
|
11
|
+
import { Sheet } from "./overlays.js";
|
|
12
|
+
import { Icon } from "./supplemental-display.js";
|
|
13
|
+
const subscribeNever = () => () => { };
|
|
14
|
+
const browserShareAvailable = () => typeof navigator !== "undefined" && typeof navigator.share === "function";
|
|
15
|
+
const serverShareAvailable = () => false;
|
|
16
|
+
function isAbort(error) {
|
|
17
|
+
return typeof error === "object" && error !== null && "name" in error && error.name === "AbortError";
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* One Sheet for sharing a link (2026-10-26, generalized from BurnTok's share sheets): optional in-app recipients with a
|
|
21
|
+
* batch send, then copy link and the OS share sheet as two round actions in the footer.
|
|
22
|
+
*/
|
|
23
|
+
export function ShareSheet({ open, onOpenChange, title, labels, link, shareTitle, shareText, copyLink, systemShare, onLinkCopied, onSystemShare, icons, recipients, notice, }) {
|
|
24
|
+
validateShareSheet({ title, link, labels });
|
|
25
|
+
if (recipients)
|
|
26
|
+
validateShareSheetRecipients(recipients.items);
|
|
27
|
+
// navigator.share exists only in some browsers and never on the server; read it after hydration.
|
|
28
|
+
const browserShare = useSyncExternalStore(subscribeNever, browserShareAvailable, serverShareAvailable);
|
|
29
|
+
const copy = copyLink === false ? null : copyLink ?? ((value) => navigator.clipboard.writeText(value));
|
|
30
|
+
const share = systemShare === false ? null : systemShare ?? (browserShare ? (content) => navigator.share(content) : null);
|
|
31
|
+
const [externalAction, setExternalAction] = useState(null);
|
|
32
|
+
const [feedback, setFeedback] = useState(null);
|
|
33
|
+
const [selected, setSelected] = useState([]);
|
|
34
|
+
const [sentHere, setSentHere] = useState(() => new Set());
|
|
35
|
+
const [sending, setSending] = useState(false);
|
|
36
|
+
const [sendError, setSendError] = useState("");
|
|
37
|
+
const [localQuery, setLocalQuery] = useState("");
|
|
38
|
+
// Refs close the gap before React re-renders the busy state, so a double tap cannot start a second request.
|
|
39
|
+
const externalInFlight = useRef(false);
|
|
40
|
+
const batchInFlight = useRef(false);
|
|
41
|
+
// Bumped on every close: results of requests started in an earlier visit must not report into the next one.
|
|
42
|
+
const visit = useRef(0);
|
|
43
|
+
const mounted = useRef(false);
|
|
44
|
+
useEffect(() => {
|
|
45
|
+
mounted.current = true;
|
|
46
|
+
return () => { mounted.current = false; visit.current += 1; };
|
|
47
|
+
}, []);
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (open)
|
|
50
|
+
return;
|
|
51
|
+
visit.current += 1;
|
|
52
|
+
setFeedback(null);
|
|
53
|
+
setSelected([]);
|
|
54
|
+
setSentHere(new Set());
|
|
55
|
+
setSendError("");
|
|
56
|
+
setLocalQuery("");
|
|
57
|
+
}, [open]);
|
|
58
|
+
useEffect(() => {
|
|
59
|
+
// A different link makes a "copied" claim about the old one false.
|
|
60
|
+
setFeedback(null);
|
|
61
|
+
}, [link]);
|
|
62
|
+
async function runExternal(action) {
|
|
63
|
+
if (externalInFlight.current)
|
|
64
|
+
return;
|
|
65
|
+
const run = action === "copy" ? copy : share;
|
|
66
|
+
if (!run)
|
|
67
|
+
return;
|
|
68
|
+
externalInFlight.current = true;
|
|
69
|
+
const current = visit.current;
|
|
70
|
+
setExternalAction(action);
|
|
71
|
+
setFeedback(null);
|
|
72
|
+
try {
|
|
73
|
+
if (action === "copy") {
|
|
74
|
+
await copy(link);
|
|
75
|
+
if (current !== visit.current)
|
|
76
|
+
return;
|
|
77
|
+
setFeedback("copied");
|
|
78
|
+
onLinkCopied?.();
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
await share({ url: link, ...(shareTitle ? { title: shareTitle } : {}), ...(shareText ? { text: shareText } : {}) });
|
|
82
|
+
// Resolving only means the OS sheet closed on a target; never announce delivery.
|
|
83
|
+
if (current === visit.current)
|
|
84
|
+
onSystemShare?.("completed");
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
if (current !== visit.current)
|
|
89
|
+
return;
|
|
90
|
+
if (action === "share" && isAbort(error))
|
|
91
|
+
onSystemShare?.("dismissed");
|
|
92
|
+
else
|
|
93
|
+
setFeedback("failed");
|
|
94
|
+
}
|
|
95
|
+
finally {
|
|
96
|
+
externalInFlight.current = false;
|
|
97
|
+
if (mounted.current)
|
|
98
|
+
setExternalAction(null);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
const sent = new Set([...(recipients?.sentIds ?? []), ...sentHere]);
|
|
102
|
+
const pending = selected.filter(id => !sent.has(id));
|
|
103
|
+
async function sendSelected() {
|
|
104
|
+
if (!recipients || batchInFlight.current || pending.length === 0)
|
|
105
|
+
return;
|
|
106
|
+
batchInFlight.current = true;
|
|
107
|
+
const current = visit.current, requested = pending;
|
|
108
|
+
setSending(true);
|
|
109
|
+
setSendError("");
|
|
110
|
+
try {
|
|
111
|
+
const result = await recipients.onSend(requested);
|
|
112
|
+
if (current !== visit.current)
|
|
113
|
+
return;
|
|
114
|
+
const outcome = resolveShareSheetSendOutcome(requested, result);
|
|
115
|
+
const delivered = new Set(outcome.sent);
|
|
116
|
+
setSentHere(previous => new Set([...previous, ...outcome.sent]));
|
|
117
|
+
// Failed recipients stay selected, so the next press retries only them.
|
|
118
|
+
setSelected(previous => previous.filter(id => !delivered.has(id)));
|
|
119
|
+
if (outcome.failed.length)
|
|
120
|
+
setSendError(result.error ?? recipients.labels.sendFailed);
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
if (current === visit.current)
|
|
124
|
+
setSendError(recipients.labels.sendFailed);
|
|
125
|
+
}
|
|
126
|
+
finally {
|
|
127
|
+
batchInFlight.current = false;
|
|
128
|
+
if (mounted.current)
|
|
129
|
+
setSending(false);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
const remoteSearch = recipients?.search?.onQueryChange !== undefined;
|
|
133
|
+
const query = remoteSearch ? recipients?.search?.query ?? "" : localQuery;
|
|
134
|
+
const visible = recipients ? (remoteSearch ? recipients.items : filterShareSheetRecipients(recipients.items, query)) : [];
|
|
135
|
+
const status = recipients?.status ?? "ready";
|
|
136
|
+
const actionButton = (action, label, icon) => _jsxs(Stack, { align: "center", gap: shareSheetRecipe.actionCaptionGap, children: [_jsx(IconButton, { label: label, tone: shareSheetRecipe.actionButton.tone, size: shareSheetRecipe.actionButton.size, loading: externalAction === action, disabled: externalAction !== null, onClick: () => void runExternal(action), children: icon }), _jsx(Text, { variant: shareSheetRecipe.actionCaptionVariant, "aria-hidden": "true", children: label })] });
|
|
137
|
+
const actions = copy || share ? _jsxs(Stack, { axis: "inline", justify: "center", gap: shareSheetRecipe.actionGap, children: [copy ? actionButton("copy", labels.copyLink, icons?.copyLink ?? _jsx(Icon, { name: "copy" })) : null, share ? actionButton("share", labels.systemShare, icons?.systemShare ?? _jsx(Icon, { name: "share" })) : null] }) : null;
|
|
138
|
+
const footer = pending.length > 0 || actions ? _jsxs(Stack, { gap: shareSheetRecipe.footerGap, layoutStyle: { width: "100%" }, children: [recipients && pending.length > 0 ? _jsx(Button, { fullWidth: true, tone: shareSheetRecipe.sendButton.tone, size: shareSheetRecipe.sendButton.size, loading: sending, onClick: () => void sendSelected(), children: recipients.labels.send(pending.length) }) : null, actions] }) : undefined;
|
|
139
|
+
return _jsx(Sheet, { open: open, onOpenChange: onOpenChange, title: title, closeLabel: labels.close, busy: sending, size: recipients ? shareSheetRecipe.size.recipients : shareSheetRecipe.size.externalOnly, footer: footer, children: _jsxs(Stack, { gap: shareSheetRecipe.bodyGap, children: [notice, sendError ? _jsx(Notice, { tone: "danger", title: sendError }) : null, feedback === "copied" ? _jsx(Notice, { tone: "success", appearance: "status", title: labels.linkCopied }) : null, feedback === "failed" ? _jsx(Notice, { tone: "danger", title: labels.actionFailed }) : null, recipients ? _jsxs(_Fragment, { children: [_jsx(SearchField, { "aria-label": recipients.labels.search, placeholder: recipients.labels.search, clearLabel: recipients.labels.clearSearch, loading: recipients.search?.searching === true, value: query, onValueChange: remoteSearch ? recipients.search.onQueryChange : setLocalQuery }), status === "error" ? _jsx(Notice, { tone: "danger", title: recipients.labels.loadFailed, action: recipients.onRetry ?
|
|
140
|
+
_jsx(IconButton, { label: recipients.labels.retry, tone: "secondary", size: "small", loading: recipients.retrying === true, onClick: recipients.onRetry, children: _jsx(Icon, { name: "refresh" }) }) : undefined })
|
|
141
|
+
: status === "loading" ? _jsx(Spinner, { label: recipients.labels.loading })
|
|
142
|
+
: visible.length === 0 ? _jsx(EmptyState, { density: "compact", title: query.trim() ? recipients.labels.noResults : recipients.labels.empty })
|
|
143
|
+
: _jsx(ImageChoiceGroup, { label: recipients.labels.group, selectionMode: "multiple", showItemLabels: shareSheetRecipe.picker.showItemLabels, itemLabelLines: shareSheetRecipe.picker.itemLabelLines, disabled: sending, value: resolveShareSheetPickerValue(selected, sent, visible.map(item => item.id)), onValueChange: next => setSelected(next.filter(id => !sent.has(id))), items: visible.map(item => sent.has(item.id) ? { ...item, description: recipients.labels.sent, disabled: true } : item) })] }) : null] }) });
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=share-sheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"share-sheet.js","sourceRoot":"","sources":["../src/share-sheet.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport { useEffect, useRef, useState, useSyncExternalStore, type ReactNode } from \"react\";\nimport type { SheetOpenChangeDetails } from \"@hjmds/design-contracts/components/sheet\";\nimport {\n filterShareSheetRecipients, resolveShareSheetPickerValue, resolveShareSheetSendOutcome, shareSheetRecipe, validateShareSheet, validateShareSheetRecipients,\n type ShareSheetLabels, type ShareSheetRecipientDescriptor, type ShareSheetRecipientLabels, type ShareSheetRecipientStatus, type ShareSheetSendResult,\n type ShareSheetShareContent, type ShareSheetSystemShareOutcome,\n} from \"@hjmds/design-contracts/share-sheet\";\nimport { Button, IconButton } from \"./actions.js\";\nimport { EmptyState, Notice } from \"./feedback.js\";\nimport { SearchField } from \"./forms.js\";\nimport { ImageChoiceGroup } from \"./image-choice.js\";\nimport { Spinner } from \"./internal/spinner.js\";\nimport { Stack, Text } from \"./layout.js\";\nimport { Sheet } from \"./overlays.js\";\nimport { Icon } from \"./supplemental-display.js\";\n\nexport type {\n ShareSheetLabels, ShareSheetRecipientLabels, ShareSheetRecipientStatus, ShareSheetSendResult, ShareSheetShareContent, ShareSheetSystemShareOutcome,\n} from \"@hjmds/design-contracts/share-sheet\";\n\nexport type ShareSheetRecipient = ShareSheetRecipientDescriptor & Readonly<{ image: ReactNode }>;\n\nexport type ShareSheetRecipientSearch = Readonly<{\n /** Controlled query. With `onQueryChange` the product owns the query and `items` is already its result. */\n query?: string;\n onQueryChange?: (query: string) => void;\n /** A server search is running. */\n searching?: boolean;\n}>;\n\nexport type ShareSheetRecipients = Readonly<{\n items: readonly ShareSheetRecipient[];\n labels: ShareSheetRecipientLabels;\n /** Default `ready`. */\n status?: ShareSheetRecipientStatus;\n /** Shown with the `error` state. */\n onRetry?: () => void;\n retrying?: boolean;\n /** Omit to filter `items` by label here; pass `onQueryChange` to search on the server. */\n search?: ShareSheetRecipientSearch;\n /** Recipients that already received this link (before the sheet opened). They stay checked and locked. */\n sentIds?: readonly string[];\n /** Sends the link to the selected ids. Delivered ids lock as sent; the rest stay selected for a retry. */\n onSend: (ids: readonly string[]) => Promise<ShareSheetSendResult>;\n}>;\n\nexport type ShareSheetProps = Readonly<{\n open: boolean;\n onOpenChange: (open: boolean, detail: SheetOpenChangeDetails) => void;\n title: string;\n labels: ShareSheetLabels;\n /** The URL that is copied and shared. */\n link: string;\n /** Title and text handed to the OS share sheet with the link. */\n shareTitle?: string;\n shareText?: string;\n /** Writes the link to the clipboard. Default `navigator.clipboard.writeText`; `false` hides the action. */\n copyLink?: ((link: string) => Promise<void>) | false;\n /**\n * Opens the OS share sheet. Default `navigator.share` (the action is hidden where the browser has none); `false`\n * hides the action. Reject with an `AbortError` when the user backs out.\n */\n systemShare?: ((content: ShareSheetShareContent) => Promise<void>) | false;\n onLinkCopied?: () => void;\n /** The OS share sheet closed. `completed` is not a delivery receipt. */\n onSystemShare?: (outcome: ShareSheetSystemShareOutcome) => void;\n /** Product artwork for the two actions. Defaults to the HJM `copy` and `share` icons. */\n icons?: Readonly<{ copyLink?: ReactNode; systemShare?: ReactNode }>;\n /** In-app recipients (group chats, followers). Omit for external sharing only. */\n recipients?: ShareSheetRecipients;\n /** Product feedback above the body, such as a reward earned by sending. */\n notice?: ReactNode;\n}>;\n\ntype ExternalAction = \"copy\" | \"share\";\ntype ExternalFeedback = \"copied\" | \"failed\";\n\nconst subscribeNever = () => () => {};\nconst browserShareAvailable = () => typeof navigator !== \"undefined\" && typeof navigator.share === \"function\";\nconst serverShareAvailable = () => false;\n\nfunction isAbort(error: unknown): boolean {\n return typeof error === \"object\" && error !== null && \"name\" in error && (error as { name: unknown }).name === \"AbortError\";\n}\n\n/**\n * One Sheet for sharing a link (2026-10-26, generalized from BurnTok's share sheets): optional in-app recipients with a\n * batch send, then copy link and the OS share sheet as two round actions in the footer.\n */\nexport function ShareSheet({\n open, onOpenChange, title, labels, link, shareTitle, shareText, copyLink, systemShare, onLinkCopied, onSystemShare, icons, recipients, notice,\n}: ShareSheetProps) {\n validateShareSheet({ title, link, labels });\n if (recipients) validateShareSheetRecipients(recipients.items);\n // navigator.share exists only in some browsers and never on the server; read it after hydration.\n const browserShare = useSyncExternalStore(subscribeNever, browserShareAvailable, serverShareAvailable);\n const copy = copyLink === false ? null : copyLink ?? ((value: string) => navigator.clipboard.writeText(value));\n const share = systemShare === false ? null : systemShare ?? (browserShare ? (content: ShareSheetShareContent) => navigator.share(content) : null);\n\n const [externalAction, setExternalAction] = useState<ExternalAction | null>(null);\n const [feedback, setFeedback] = useState<ExternalFeedback | null>(null);\n const [selected, setSelected] = useState<readonly string[]>([]);\n const [sentHere, setSentHere] = useState<ReadonlySet<string>>(() => new Set());\n const [sending, setSending] = useState(false);\n const [sendError, setSendError] = useState(\"\");\n const [localQuery, setLocalQuery] = useState(\"\");\n // Refs close the gap before React re-renders the busy state, so a double tap cannot start a second request.\n const externalInFlight = useRef(false);\n const batchInFlight = useRef(false);\n // Bumped on every close: results of requests started in an earlier visit must not report into the next one.\n const visit = useRef(0);\n const mounted = useRef(false);\n useEffect(() => {\n mounted.current = true;\n return () => { mounted.current = false; visit.current += 1; };\n }, []);\n useEffect(() => {\n if (open) return;\n visit.current += 1;\n setFeedback(null); setSelected([]); setSentHere(new Set()); setSendError(\"\"); setLocalQuery(\"\");\n }, [open]);\n useEffect(() => {\n // A different link makes a \"copied\" claim about the old one false.\n setFeedback(null);\n }, [link]);\n\n async function runExternal(action: ExternalAction) {\n if (externalInFlight.current) return;\n const run = action === \"copy\" ? copy : share;\n if (!run) return;\n externalInFlight.current = true;\n const current = visit.current;\n setExternalAction(action);\n setFeedback(null);\n try {\n if (action === \"copy\") {\n await copy!(link);\n if (current !== visit.current) return;\n setFeedback(\"copied\");\n onLinkCopied?.();\n } else {\n await share!({ url: link, ...(shareTitle ? { title: shareTitle } : {}), ...(shareText ? { text: shareText } : {}) });\n // Resolving only means the OS sheet closed on a target; never announce delivery.\n if (current === visit.current) onSystemShare?.(\"completed\");\n }\n } catch (error) {\n if (current !== visit.current) return;\n if (action === \"share\" && isAbort(error)) onSystemShare?.(\"dismissed\");\n else setFeedback(\"failed\");\n } finally {\n externalInFlight.current = false;\n if (mounted.current) setExternalAction(null);\n }\n }\n\n const sent = new Set([...(recipients?.sentIds ?? []), ...sentHere]);\n const pending = selected.filter(id => !sent.has(id));\n\n async function sendSelected() {\n if (!recipients || batchInFlight.current || pending.length === 0) return;\n batchInFlight.current = true;\n const current = visit.current, requested = pending;\n setSending(true);\n setSendError(\"\");\n try {\n const result = await recipients.onSend(requested);\n if (current !== visit.current) return;\n const outcome = resolveShareSheetSendOutcome(requested, result);\n const delivered = new Set(outcome.sent);\n setSentHere(previous => new Set([...previous, ...outcome.sent]));\n // Failed recipients stay selected, so the next press retries only them.\n setSelected(previous => previous.filter(id => !delivered.has(id)));\n if (outcome.failed.length) setSendError(result.error ?? recipients.labels.sendFailed);\n } catch {\n if (current === visit.current) setSendError(recipients.labels.sendFailed);\n } finally {\n batchInFlight.current = false;\n if (mounted.current) setSending(false);\n }\n }\n\n const remoteSearch = recipients?.search?.onQueryChange !== undefined;\n const query = remoteSearch ? recipients?.search?.query ?? \"\" : localQuery;\n const visible = recipients ? (remoteSearch ? recipients.items : filterShareSheetRecipients(recipients.items, query)) : [];\n const status = recipients?.status ?? \"ready\";\n\n const actionButton = (action: ExternalAction, label: string, icon: ReactNode) =>\n <Stack align=\"center\" gap={shareSheetRecipe.actionCaptionGap}>\n <IconButton label={label} tone={shareSheetRecipe.actionButton.tone} size={shareSheetRecipe.actionButton.size}\n loading={externalAction === action} disabled={externalAction !== null} onClick={() => void runExternal(action)}>{icon}</IconButton>\n {/* The button already carries the name; the caption is the visible copy of it. */}\n <Text variant={shareSheetRecipe.actionCaptionVariant} aria-hidden=\"true\">{label}</Text>\n </Stack>;\n const actions = copy || share ? <Stack axis=\"inline\" justify=\"center\" gap={shareSheetRecipe.actionGap}>\n {copy ? actionButton(\"copy\", labels.copyLink, icons?.copyLink ?? <Icon name=\"copy\" />) : null}\n {share ? actionButton(\"share\", labels.systemShare, icons?.systemShare ?? <Icon name=\"share\" />) : null}\n </Stack> : null;\n const footer = pending.length > 0 || actions ? <Stack gap={shareSheetRecipe.footerGap} layoutStyle={{ width: \"100%\" }}>\n {recipients && pending.length > 0 ? <Button fullWidth tone={shareSheetRecipe.sendButton.tone} size={shareSheetRecipe.sendButton.size} loading={sending}\n onClick={() => void sendSelected()}>{recipients.labels.send(pending.length)}</Button> : null}\n {actions}\n </Stack> : undefined;\n\n return <Sheet open={open} onOpenChange={onOpenChange} title={title} closeLabel={labels.close} busy={sending}\n size={recipients ? shareSheetRecipe.size.recipients : shareSheetRecipe.size.externalOnly} footer={footer}>\n <Stack gap={shareSheetRecipe.bodyGap}>\n {notice}\n {sendError ? <Notice tone=\"danger\" title={sendError} /> : null}\n {feedback === \"copied\" ? <Notice tone=\"success\" appearance=\"status\" title={labels.linkCopied} /> : null}\n {feedback === \"failed\" ? <Notice tone=\"danger\" title={labels.actionFailed} /> : null}\n {recipients ? <>\n <SearchField aria-label={recipients.labels.search} placeholder={recipients.labels.search} clearLabel={recipients.labels.clearSearch}\n loading={recipients.search?.searching === true} value={query} onValueChange={remoteSearch ? recipients.search!.onQueryChange! : setLocalQuery} />\n {status === \"error\" ? <Notice tone=\"danger\" title={recipients.labels.loadFailed} action={recipients.onRetry ?\n <IconButton label={recipients.labels.retry} tone=\"secondary\" size=\"small\" loading={recipients.retrying === true} onClick={recipients.onRetry}><Icon name=\"refresh\" /></IconButton> : undefined} />\n : status === \"loading\" ? <Spinner label={recipients.labels.loading} />\n : visible.length === 0 ? <EmptyState density=\"compact\" title={query.trim() ? recipients.labels.noResults : recipients.labels.empty} />\n : <ImageChoiceGroup label={recipients.labels.group} selectionMode=\"multiple\" showItemLabels={shareSheetRecipe.picker.showItemLabels}\n itemLabelLines={shareSheetRecipe.picker.itemLabelLines} disabled={sending}\n value={resolveShareSheetPickerValue(selected, sent, visible.map(item => item.id))}\n onValueChange={next => setSelected(next.filter(id => !sent.has(id)))}\n items={visible.map(item => sent.has(item.id) ? { ...item, description: recipients.labels.sent, disabled: true } : item)} />}\n </> : null}\n </Stack>\n </Sheet>;\n}\n"]}
|
package/dist/styles.css
CHANGED
|
@@ -1014,6 +1014,18 @@
|
|
|
1014
1014
|
/* Product classification color (Badge categoryColor): the renderer resolves fill, ink and stroke per theme and checks AA. */
|
|
1015
1015
|
.hjm-badge[data-tone="category"] { color: var(--hjm-badge-category-content); background: var(--hjm-badge-category-background); }
|
|
1016
1016
|
.hjm-badge[data-variant="outline"][data-tone="category"] { background: transparent; border-color: var(--hjm-badge-category-border); }
|
|
1017
|
+
|
|
1018
|
+
/* Plain status badges keep semantic ink without a plate or outline. */
|
|
1019
|
+
.hjm-badge[data-variant="plain"] { background: transparent; border: 1px solid var(--hjm-color-border); color: var(--hjm-color-text-muted); }
|
|
1020
|
+
.hjm-badge[data-variant="plain"][data-tone="strong"] { color: var(--hjm-color-text); }
|
|
1021
|
+
.hjm-badge[data-variant="plain"][data-tone="brand"] { color: var(--hjm-color-content-brand); }
|
|
1022
|
+
.hjm-badge[data-variant="plain"][data-tone="danger"] { color: var(--hjm-color-danger); }
|
|
1023
|
+
.hjm-badge[data-variant="plain"][data-tone="info"] { background: transparent; color: var(--hjm-accent-info); border-color: color-mix(in srgb, var(--hjm-accent-info) 30%, transparent); }
|
|
1024
|
+
.hjm-badge[data-variant="plain"][data-tone="success"] { background: transparent; color: var(--hjm-accent-success); border-color: color-mix(in srgb, var(--hjm-accent-success) 30%, transparent); }
|
|
1025
|
+
.hjm-badge[data-variant="plain"][data-tone="warning"] { background: transparent; color: var(--hjm-accent-warning); border-color: color-mix(in srgb, var(--hjm-accent-warning) 30%, transparent); }
|
|
1026
|
+
.hjm-badge[data-variant="plain"][data-tone="attention"] { background: transparent; color: var(--hjm-accent-attention); border-color: color-mix(in srgb, var(--hjm-accent-attention) 30%, transparent); }
|
|
1027
|
+
.hjm-badge[data-variant="plain"][data-tone="category"] { background: transparent; border-color: var(--hjm-badge-category-border); }
|
|
1028
|
+
.hjm-badge[data-variant="plain"] { border: 0; }
|
|
1017
1029
|
.hjm-tag[data-tone="info"] { color: var(--hjm-accent-info); background: color-mix(in srgb, var(--hjm-accent-info) 14%, transparent); border-color: color-mix(in srgb, var(--hjm-accent-info) 30%, transparent); }
|
|
1018
1030
|
.hjm-tag[data-tone="success"] { color: var(--hjm-accent-success); background: color-mix(in srgb, var(--hjm-accent-success) 14%, transparent); border-color: color-mix(in srgb, var(--hjm-accent-success) 30%, transparent); }
|
|
1019
1031
|
.hjm-tag[data-tone="attention"] { color: var(--hjm-accent-attention); background: color-mix(in srgb, var(--hjm-accent-attention) 14%, transparent); border-color: color-mix(in srgb, var(--hjm-accent-attention) 30%, transparent); }
|
|
@@ -1471,8 +1483,8 @@ button.hjm-list-row, a.hjm-list-row { cursor: pointer; }
|
|
|
1471
1483
|
.hjm-line-score__table .hjm-line-score__team { inset-inline-start: 0; }
|
|
1472
1484
|
.hjm-line-score__table td.hjm-line-score__period { min-inline-size: 26px; color: var(--hjm-color-text-sub); }
|
|
1473
1485
|
.hjm-line-score__table td[data-scored] { color: var(--hjm-color-text); font-weight: var(--hjm-text-emphasis-medium); }
|
|
1474
|
-
.hjm-line-score__table [data-current] { background: var(--hjm-
|
|
1475
|
-
.hjm-line-score__table th[data-current] { color: var(--hjm-
|
|
1486
|
+
.hjm-line-score__table [data-current] { background: var(--hjm-line-score-current-background); }
|
|
1487
|
+
.hjm-line-score__table th[data-current] { color: var(--hjm-line-score-current-color); }
|
|
1476
1488
|
.hjm-line-score__total { inline-size: var(--hjm-line-score-total-width); min-inline-size: var(--hjm-line-score-total-width); color: var(--hjm-color-text-muted); font-weight: var(--hjm-text-emphasis-medium); }
|
|
1477
1489
|
/* A collapsed-table border stays with the table, not the pinned cell, so the edge is an inset shadow. */
|
|
1478
1490
|
.hjm-line-score__total-edge { box-shadow: inset 1px 0 0 var(--hjm-color-border); }
|
|
@@ -2861,6 +2873,26 @@ button.hjm-list-row, a.hjm-list-row { cursor: pointer; }
|
|
|
2861
2873
|
.hjm-timeline[data-selectable] .hjm-timeline__item { cursor: pointer; }
|
|
2862
2874
|
.hjm-timeline__item[aria-selected="true"] { background: var(--hjm-color-surface-selected); box-shadow: inset 0 0 0 1px var(--hjm-color-border-control); }
|
|
2863
2875
|
.hjm-timeline__item[role="option"]:focus-visible { outline: var(--hjm-focus-width) solid var(--hjm-color-focus); outline-offset: var(--hjm-focus-offset); }
|
|
2876
|
+
.hjm-timeline__details { display: grid; gap: var(--hjm-space-xxs); }
|
|
2877
|
+
.hjm-timeline__details[hidden] { display: none; }
|
|
2878
|
+
/* Default journal (2026-10-27 user choice): unfilled reading rows. Passive histories keep
|
|
2879
|
+
all details/actions; selectable histories add native disclosure buttons. "record" retains the previous surface. */
|
|
2880
|
+
.hjm-timeline[data-variant="journal"] { gap: 0; }
|
|
2881
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__item {
|
|
2882
|
+
inline-size: 100%; min-block-size: 44px; padding: var(--hjm-space-md) 0; border: 0;
|
|
2883
|
+
border-radius: 0; background: transparent; color: inherit; font: inherit; text-align: start;
|
|
2884
|
+
}
|
|
2885
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__dot { inline-size: .5rem; block-size: .5rem; margin-block-start: calc((1lh - .5rem) / 2); background: var(--hjm-color-border); border: 0; }
|
|
2886
|
+
.hjm-timeline[data-variant="journal"] [data-state="selected"] .hjm-timeline__dot { background: var(--hjm-color-text); }
|
|
2887
|
+
.hjm-timeline[data-variant="journal"] [data-tone="info"] .hjm-timeline__dot { background: var(--hjm-accent-info); }
|
|
2888
|
+
.hjm-timeline[data-variant="journal"] [data-tone="success"] .hjm-timeline__dot { background: var(--hjm-accent-success); }
|
|
2889
|
+
.hjm-timeline[data-variant="journal"] [data-tone="attention"] .hjm-timeline__dot { background: var(--hjm-accent-attention); }
|
|
2890
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__connector { inset-block: calc((1lh + .5rem) / 2) calc(-2 * var(--hjm-space-md) - .5lh); }
|
|
2891
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__heading { flex-wrap: nowrap; justify-content: space-between; }
|
|
2892
|
+
.hjm-timeline__chevron { color: var(--hjm-color-text-muted); flex-shrink: 0; }
|
|
2893
|
+
.hjm-timeline [aria-expanded="true"] .hjm-timeline__chevron { transform: rotate(180deg); }
|
|
2894
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__details { padding-block-start: var(--hjm-space-xs); }
|
|
2895
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__item:focus-visible { outline: var(--hjm-focus-width) solid var(--hjm-color-focus); outline-offset: var(--hjm-focus-offset); }
|
|
2864
2896
|
.hjm-accordion { border-block-start: 1px solid var(--hjm-color-border); }
|
|
2865
2897
|
.hjm-accordion__item { border-block-end: 1px solid var(--hjm-color-border); }
|
|
2866
2898
|
.hjm-accordion__header { margin: 0; }
|
|
@@ -3622,7 +3654,7 @@ button.hjm-chat-message__media-item:focus-visible { outline: 2px solid var(--hjm
|
|
|
3622
3654
|
|
|
3623
3655
|
.hjm-image-choice { display: flex; flex-direction: column; gap: var(--hjm-space-xs); }
|
|
3624
3656
|
.hjm-image-choice__label { font-weight: var(--hjm-text-emphasis-medium); }
|
|
3625
|
-
.hjm-image-choice__tiles { display: grid; grid-template-columns: repeat(auto-
|
|
3657
|
+
.hjm-image-choice__tiles { display: grid; grid-template-columns: repeat(auto-fill, calc(var(--hjm-image-choice-size) + (var(--hjm-image-choice-ring) + var(--hjm-image-choice-offset)) * 2)); justify-content: space-between; gap: var(--hjm-image-choice-gap); }
|
|
3626
3658
|
/* The button is a column (ring frame, optional item label) so the label shares the tap target; the ring is drawn on
|
|
3627
3659
|
the inner frame (2026-10-18 showItemLabels). */
|
|
3628
3660
|
.hjm-image-choice__tile { display: flex; flex-direction: column; gap: var(--hjm-image-choice-item-label-gap); inline-size: calc(var(--hjm-image-choice-size) + (var(--hjm-image-choice-ring) + var(--hjm-image-choice-offset)) * 2); padding: 0; border: 0; border-radius: calc(var(--hjm-image-choice-radius) + var(--hjm-image-choice-ring) + var(--hjm-image-choice-offset)); background: none; color: inherit; cursor: pointer; }
|
|
@@ -3857,6 +3889,8 @@ button.hjm-chat-message__media-item:focus-visible { outline: 2px solid var(--hjm
|
|
|
3857
3889
|
.hjm-card__background-interaction > :first-child { width: 100%; height: 100%; }
|
|
3858
3890
|
.hjm-card__media-badges { position: absolute; inset-block-start: var(--hjm-space-sm); inset-inline-end: var(--hjm-space-sm); display: flex; flex-wrap: wrap; gap: var(--hjm-space-xs); z-index: 1; }
|
|
3859
3891
|
.hjm-card__scrim { position: absolute; inset: 0; background: var(--hjm-card-background-scrim); }
|
|
3892
|
+
.hjm-card:has(> .hjm-card__corner-badges) { position: relative; }
|
|
3893
|
+
.hjm-card__corner-badges { position: absolute; z-index: 1; pointer-events: none; display: flex; }
|
|
3860
3894
|
.hjm-card__badges { display: flex; flex-wrap: wrap; gap: var(--hjm-space-xs); }
|
|
3861
3895
|
.hjm-card__badges[data-align="center"] { justify-content: center; }
|
|
3862
3896
|
.hjm-card[data-background-media="true"] > .hjm-card__body { position: relative; flex: 0 1 auto; margin-block-start: auto; }
|
package/dist/styles.layered.css
CHANGED
|
@@ -1015,6 +1015,18 @@
|
|
|
1015
1015
|
/* Product classification color (Badge categoryColor): the renderer resolves fill, ink and stroke per theme and checks AA. */
|
|
1016
1016
|
.hjm-badge[data-tone="category"] { color: var(--hjm-badge-category-content); background: var(--hjm-badge-category-background); }
|
|
1017
1017
|
.hjm-badge[data-variant="outline"][data-tone="category"] { background: transparent; border-color: var(--hjm-badge-category-border); }
|
|
1018
|
+
|
|
1019
|
+
/* Plain status badges keep semantic ink without a plate or outline. */
|
|
1020
|
+
.hjm-badge[data-variant="plain"] { background: transparent; border: 1px solid var(--hjm-color-border); color: var(--hjm-color-text-muted); }
|
|
1021
|
+
.hjm-badge[data-variant="plain"][data-tone="strong"] { color: var(--hjm-color-text); }
|
|
1022
|
+
.hjm-badge[data-variant="plain"][data-tone="brand"] { color: var(--hjm-color-content-brand); }
|
|
1023
|
+
.hjm-badge[data-variant="plain"][data-tone="danger"] { color: var(--hjm-color-danger); }
|
|
1024
|
+
.hjm-badge[data-variant="plain"][data-tone="info"] { background: transparent; color: var(--hjm-accent-info); border-color: color-mix(in srgb, var(--hjm-accent-info) 30%, transparent); }
|
|
1025
|
+
.hjm-badge[data-variant="plain"][data-tone="success"] { background: transparent; color: var(--hjm-accent-success); border-color: color-mix(in srgb, var(--hjm-accent-success) 30%, transparent); }
|
|
1026
|
+
.hjm-badge[data-variant="plain"][data-tone="warning"] { background: transparent; color: var(--hjm-accent-warning); border-color: color-mix(in srgb, var(--hjm-accent-warning) 30%, transparent); }
|
|
1027
|
+
.hjm-badge[data-variant="plain"][data-tone="attention"] { background: transparent; color: var(--hjm-accent-attention); border-color: color-mix(in srgb, var(--hjm-accent-attention) 30%, transparent); }
|
|
1028
|
+
.hjm-badge[data-variant="plain"][data-tone="category"] { background: transparent; border-color: var(--hjm-badge-category-border); }
|
|
1029
|
+
.hjm-badge[data-variant="plain"] { border: 0; }
|
|
1018
1030
|
.hjm-tag[data-tone="info"] { color: var(--hjm-accent-info); background: color-mix(in srgb, var(--hjm-accent-info) 14%, transparent); border-color: color-mix(in srgb, var(--hjm-accent-info) 30%, transparent); }
|
|
1019
1031
|
.hjm-tag[data-tone="success"] { color: var(--hjm-accent-success); background: color-mix(in srgb, var(--hjm-accent-success) 14%, transparent); border-color: color-mix(in srgb, var(--hjm-accent-success) 30%, transparent); }
|
|
1020
1032
|
.hjm-tag[data-tone="attention"] { color: var(--hjm-accent-attention); background: color-mix(in srgb, var(--hjm-accent-attention) 14%, transparent); border-color: color-mix(in srgb, var(--hjm-accent-attention) 30%, transparent); }
|
|
@@ -1472,8 +1484,8 @@ button.hjm-list-row, a.hjm-list-row { cursor: pointer; }
|
|
|
1472
1484
|
.hjm-line-score__table .hjm-line-score__team { inset-inline-start: 0; }
|
|
1473
1485
|
.hjm-line-score__table td.hjm-line-score__period { min-inline-size: 26px; color: var(--hjm-color-text-sub); }
|
|
1474
1486
|
.hjm-line-score__table td[data-scored] { color: var(--hjm-color-text); font-weight: var(--hjm-text-emphasis-medium); }
|
|
1475
|
-
.hjm-line-score__table [data-current] { background: var(--hjm-
|
|
1476
|
-
.hjm-line-score__table th[data-current] { color: var(--hjm-
|
|
1487
|
+
.hjm-line-score__table [data-current] { background: var(--hjm-line-score-current-background); }
|
|
1488
|
+
.hjm-line-score__table th[data-current] { color: var(--hjm-line-score-current-color); }
|
|
1477
1489
|
.hjm-line-score__total { inline-size: var(--hjm-line-score-total-width); min-inline-size: var(--hjm-line-score-total-width); color: var(--hjm-color-text-muted); font-weight: var(--hjm-text-emphasis-medium); }
|
|
1478
1490
|
/* A collapsed-table border stays with the table, not the pinned cell, so the edge is an inset shadow. */
|
|
1479
1491
|
.hjm-line-score__total-edge { box-shadow: inset 1px 0 0 var(--hjm-color-border); }
|
|
@@ -2862,6 +2874,26 @@ button.hjm-list-row, a.hjm-list-row { cursor: pointer; }
|
|
|
2862
2874
|
.hjm-timeline[data-selectable] .hjm-timeline__item { cursor: pointer; }
|
|
2863
2875
|
.hjm-timeline__item[aria-selected="true"] { background: var(--hjm-color-surface-selected); box-shadow: inset 0 0 0 1px var(--hjm-color-border-control); }
|
|
2864
2876
|
.hjm-timeline__item[role="option"]:focus-visible { outline: var(--hjm-focus-width) solid var(--hjm-color-focus); outline-offset: var(--hjm-focus-offset); }
|
|
2877
|
+
.hjm-timeline__details { display: grid; gap: var(--hjm-space-xxs); }
|
|
2878
|
+
.hjm-timeline__details[hidden] { display: none; }
|
|
2879
|
+
/* Default journal (2026-10-27 user choice): unfilled reading rows. Passive histories keep
|
|
2880
|
+
all details/actions; selectable histories add native disclosure buttons. "record" retains the previous surface. */
|
|
2881
|
+
.hjm-timeline[data-variant="journal"] { gap: 0; }
|
|
2882
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__item {
|
|
2883
|
+
inline-size: 100%; min-block-size: 44px; padding: var(--hjm-space-md) 0; border: 0;
|
|
2884
|
+
border-radius: 0; background: transparent; color: inherit; font: inherit; text-align: start;
|
|
2885
|
+
}
|
|
2886
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__dot { inline-size: .5rem; block-size: .5rem; margin-block-start: calc((1lh - .5rem) / 2); background: var(--hjm-color-border); border: 0; }
|
|
2887
|
+
.hjm-timeline[data-variant="journal"] [data-state="selected"] .hjm-timeline__dot { background: var(--hjm-color-text); }
|
|
2888
|
+
.hjm-timeline[data-variant="journal"] [data-tone="info"] .hjm-timeline__dot { background: var(--hjm-accent-info); }
|
|
2889
|
+
.hjm-timeline[data-variant="journal"] [data-tone="success"] .hjm-timeline__dot { background: var(--hjm-accent-success); }
|
|
2890
|
+
.hjm-timeline[data-variant="journal"] [data-tone="attention"] .hjm-timeline__dot { background: var(--hjm-accent-attention); }
|
|
2891
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__connector { inset-block: calc((1lh + .5rem) / 2) calc(-2 * var(--hjm-space-md) - .5lh); }
|
|
2892
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__heading { flex-wrap: nowrap; justify-content: space-between; }
|
|
2893
|
+
.hjm-timeline__chevron { color: var(--hjm-color-text-muted); flex-shrink: 0; }
|
|
2894
|
+
.hjm-timeline [aria-expanded="true"] .hjm-timeline__chevron { transform: rotate(180deg); }
|
|
2895
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__details { padding-block-start: var(--hjm-space-xs); }
|
|
2896
|
+
.hjm-timeline[data-variant="journal"] .hjm-timeline__item:focus-visible { outline: var(--hjm-focus-width) solid var(--hjm-color-focus); outline-offset: var(--hjm-focus-offset); }
|
|
2865
2897
|
.hjm-accordion { border-block-start: 1px solid var(--hjm-color-border); }
|
|
2866
2898
|
.hjm-accordion__item { border-block-end: 1px solid var(--hjm-color-border); }
|
|
2867
2899
|
.hjm-accordion__header { margin: 0; }
|
|
@@ -3623,7 +3655,7 @@ button.hjm-chat-message__media-item:focus-visible { outline: 2px solid var(--hjm
|
|
|
3623
3655
|
|
|
3624
3656
|
.hjm-image-choice { display: flex; flex-direction: column; gap: var(--hjm-space-xs); }
|
|
3625
3657
|
.hjm-image-choice__label { font-weight: var(--hjm-text-emphasis-medium); }
|
|
3626
|
-
.hjm-image-choice__tiles { display: grid; grid-template-columns: repeat(auto-
|
|
3658
|
+
.hjm-image-choice__tiles { display: grid; grid-template-columns: repeat(auto-fill, calc(var(--hjm-image-choice-size) + (var(--hjm-image-choice-ring) + var(--hjm-image-choice-offset)) * 2)); justify-content: space-between; gap: var(--hjm-image-choice-gap); }
|
|
3627
3659
|
/* The button is a column (ring frame, optional item label) so the label shares the tap target; the ring is drawn on
|
|
3628
3660
|
the inner frame (2026-10-18 showItemLabels). */
|
|
3629
3661
|
.hjm-image-choice__tile { display: flex; flex-direction: column; gap: var(--hjm-image-choice-item-label-gap); inline-size: calc(var(--hjm-image-choice-size) + (var(--hjm-image-choice-ring) + var(--hjm-image-choice-offset)) * 2); padding: 0; border: 0; border-radius: calc(var(--hjm-image-choice-radius) + var(--hjm-image-choice-ring) + var(--hjm-image-choice-offset)); background: none; color: inherit; cursor: pointer; }
|
|
@@ -3858,6 +3890,8 @@ button.hjm-chat-message__media-item:focus-visible { outline: 2px solid var(--hjm
|
|
|
3858
3890
|
.hjm-card__background-interaction > :first-child { width: 100%; height: 100%; }
|
|
3859
3891
|
.hjm-card__media-badges { position: absolute; inset-block-start: var(--hjm-space-sm); inset-inline-end: var(--hjm-space-sm); display: flex; flex-wrap: wrap; gap: var(--hjm-space-xs); z-index: 1; }
|
|
3860
3892
|
.hjm-card__scrim { position: absolute; inset: 0; background: var(--hjm-card-background-scrim); }
|
|
3893
|
+
.hjm-card:has(> .hjm-card__corner-badges) { position: relative; }
|
|
3894
|
+
.hjm-card__corner-badges { position: absolute; z-index: 1; pointer-events: none; display: flex; }
|
|
3861
3895
|
.hjm-card__badges { display: flex; flex-wrap: wrap; gap: var(--hjm-space-xs); }
|
|
3862
3896
|
.hjm-card__badges[data-align="center"] { justify-content: center; }
|
|
3863
3897
|
.hjm-card[data-background-media="true"] > .hjm-card__body { position: relative; flex: 0 1 auto; margin-block-start: auto; }
|
package/dist/table-family.js
CHANGED
|
@@ -62,7 +62,7 @@ export function LineScore({ teams, totals, currentPeriod = null, minPeriods, ren
|
|
|
62
62
|
return;
|
|
63
63
|
container.querySelector(`thead [data-period="${focusPeriod}"]`)?.scrollIntoView({ block: "nearest", inline: "nearest" });
|
|
64
64
|
}, [focusPeriod, periods.length]);
|
|
65
|
-
return (_jsx("div", { ref: host, className: classNames("hjm-table-family", "hjm-line-score", className), style: { ...withFamilyStyle(layoutStyle), "--hjm-line-score-total-count": totalColumns.length }, children: _jsxs("table", { className: "hjm-line-score__table", "aria-label": accessibilityLabel, children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("td", { className: "hjm-line-score__team" }), periods.map((column, index) => {
|
|
65
|
+
return (_jsx("div", { ref: host, className: classNames("hjm-table-family", "hjm-line-score", className), style: { ...withFamilyStyle(layoutStyle), "--hjm-line-score-current-background": tableCssColor(dataTableFamilyRecipe.currentPeriod.background), "--hjm-line-score-current-color": tableCssColor(dataTableFamilyRecipe.currentPeriod.color), "--hjm-line-score-total-count": totalColumns.length }, children: _jsxs("table", { className: "hjm-line-score__table", "aria-label": accessibilityLabel, children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("td", { className: "hjm-line-score__team" }), periods.map((column, index) => {
|
|
66
66
|
const live = score.currentPeriod === index + 1;
|
|
67
67
|
return _jsx("th", { scope: "col", className: "hjm-line-score__period", "data-period": index + 1, "aria-current": live ? "true" : undefined, "data-current": live || undefined, children: column.header }, column.id);
|
|
68
68
|
}), totalColumns.map((column, index) => (_jsx("th", { scope: "col", className: classNames("hjm-line-score__total", index === 0 && "hjm-line-score__total-edge"), style: totalOffset(totalColumns.length, index), children: column.header }, column.id)))] }) }), _jsx("tbody", { children: teams.map((team) => (_jsxs("tr", { "data-leader": score.leaderId === team.id || undefined, children: [_jsx("th", { scope: "row", className: "hjm-line-score__team", children: _jsxs("span", { className: "hjm-line-score__team-content", children: [renderTeam?.(team), _jsx("span", { children: team.name })] }) }), periods.map((column, index) => {
|