@ours.network/messenger-server 0.1.3 → 1.0.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/README.md +3 -3
- package/dist/chunks/{chunk-XVPKSCRB.js → chunk-AXRJUIIU.js} +1 -1
- package/dist/chunks/{server-WGWDNI4R.js → server-LACRIC6M.js} +52 -11
- package/dist/cli.js +2 -2
- package/dist/web/assets/{abnfDiagram-N423BO3Z-7fD4vfRu.js → abnfDiagram-N423BO3Z-pM7Mbmij.js} +2 -2
- package/dist/web/assets/{abnfDiagram-N423BO3Z-7fD4vfRu.js.map → abnfDiagram-N423BO3Z-pM7Mbmij.js.map} +1 -1
- package/dist/web/assets/{arc-Cp6lomZC.js → arc-ClKVG6mD.js} +2 -2
- package/dist/web/assets/{arc-Cp6lomZC.js.map → arc-ClKVG6mD.js.map} +1 -1
- package/dist/web/assets/{architectureDiagram-T3A2C74G-CCfQC7wz.js → architectureDiagram-T3A2C74G-C4SRzoCE.js} +2 -2
- package/dist/web/assets/{architectureDiagram-T3A2C74G-CCfQC7wz.js.map → architectureDiagram-T3A2C74G-C4SRzoCE.js.map} +1 -1
- package/dist/web/assets/{blockDiagram-VBNYF7ZC-t1y3b-Vr.js → blockDiagram-VBNYF7ZC-GAEDsTwc.js} +2 -2
- package/dist/web/assets/{blockDiagram-VBNYF7ZC-t1y3b-Vr.js.map → blockDiagram-VBNYF7ZC-GAEDsTwc.js.map} +1 -1
- package/dist/web/assets/{browser-BNMxq99E.js → browser-DvYJInDg.js} +2 -2
- package/dist/web/assets/{browser-BNMxq99E.js.map → browser-DvYJInDg.js.map} +1 -1
- package/dist/web/assets/{c4Diagram-5PPSVZJV-_fzHOoNV.js → c4Diagram-5PPSVZJV-CGMy6OgD.js} +2 -2
- package/dist/web/assets/{c4Diagram-5PPSVZJV-_fzHOoNV.js.map → c4Diagram-5PPSVZJV-CGMy6OgD.js.map} +1 -1
- package/dist/web/assets/channel-BE1VFGzt.js +2 -0
- package/dist/web/assets/{channel-a40DqgLG.js.map → channel-BE1VFGzt.js.map} +1 -1
- package/dist/web/assets/{chunk-2GRJ4B5K-C7bSs1Bs.js → chunk-2GRJ4B5K-CXtrZU7_.js} +2 -2
- package/dist/web/assets/{chunk-2GRJ4B5K-C7bSs1Bs.js.map → chunk-2GRJ4B5K-CXtrZU7_.js.map} +1 -1
- package/dist/web/assets/{chunk-2Q5K7J3B-CB6pcjHM.js → chunk-2Q5K7J3B-DpzUrrLf.js} +2 -2
- package/dist/web/assets/{chunk-2Q5K7J3B-CB6pcjHM.js.map → chunk-2Q5K7J3B-DpzUrrLf.js.map} +1 -1
- package/dist/web/assets/{chunk-5RXB4S5H-DGriCScm.js → chunk-5RXB4S5H-DXomNS62.js} +2 -2
- package/dist/web/assets/{chunk-5RXB4S5H-DGriCScm.js.map → chunk-5RXB4S5H-DXomNS62.js.map} +1 -1
- package/dist/web/assets/{chunk-5VM5RSS4-BXQhNaWP.js → chunk-5VM5RSS4-DO1pE55v.js} +2 -2
- package/dist/web/assets/{chunk-5VM5RSS4-BXQhNaWP.js.map → chunk-5VM5RSS4-DO1pE55v.js.map} +1 -1
- package/dist/web/assets/{chunk-6Q2QTUOP-DZak_lrB.js → chunk-6Q2QTUOP-VwCXFYQB.js} +2 -2
- package/dist/web/assets/{chunk-6Q2QTUOP-DZak_lrB.js.map → chunk-6Q2QTUOP-VwCXFYQB.js.map} +1 -1
- package/dist/web/assets/{chunk-GF5L2VYU-BhIg_LDW.js → chunk-GF5L2VYU-DXKpdibg.js} +2 -2
- package/dist/web/assets/{chunk-GF5L2VYU-BhIg_LDW.js.map → chunk-GF5L2VYU-DXKpdibg.js.map} +1 -1
- package/dist/web/assets/{chunk-JWPE2WC7-DRT5vrQ1.js → chunk-JWPE2WC7-eLDeLJYU.js} +2 -2
- package/dist/web/assets/{chunk-JWPE2WC7-DRT5vrQ1.js.map → chunk-JWPE2WC7-eLDeLJYU.js.map} +1 -1
- package/dist/web/assets/{chunk-KBJHAD2P-D-1yZi0Q.js → chunk-KBJHAD2P-DbaKvO9I.js} +2 -2
- package/dist/web/assets/{chunk-KBJHAD2P-D-1yZi0Q.js.map → chunk-KBJHAD2P-DbaKvO9I.js.map} +1 -1
- package/dist/web/assets/{chunk-RYQCIY6F-CORP_3zW.js → chunk-RYQCIY6F-Di3XYSyf.js} +2 -2
- package/dist/web/assets/{chunk-RYQCIY6F-CORP_3zW.js.map → chunk-RYQCIY6F-Di3XYSyf.js.map} +1 -1
- package/dist/web/assets/{chunk-XXDRQBXY-k7JDg6pT.js → chunk-XXDRQBXY-BKU_fO74.js} +2 -2
- package/dist/web/assets/{chunk-XXDRQBXY-k7JDg6pT.js.map → chunk-XXDRQBXY-BKU_fO74.js.map} +1 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-DstM1bxq.js +2 -0
- package/dist/web/assets/{classDiagram-JCYQIIEL-DEVG-qK8.js.map → classDiagram-JCYQIIEL-DstM1bxq.js.map} +1 -1
- package/dist/web/assets/classDiagram-v2-OCEON4UE-DstM1bxq.js +2 -0
- package/dist/web/assets/{classDiagram-v2-OCEON4UE-DEVG-qK8.js.map → classDiagram-v2-OCEON4UE-DstM1bxq.js.map} +1 -1
- package/dist/web/assets/{cose-bilkent-JH36ORCC-BRuFmEKf.js → cose-bilkent-JH36ORCC-CxJ8bzCn.js} +2 -2
- package/dist/web/assets/{cose-bilkent-JH36ORCC-BRuFmEKf.js.map → cose-bilkent-JH36ORCC-CxJ8bzCn.js.map} +1 -1
- package/dist/web/assets/{cynefin-VYW2F7L2-BIBC3C1E.js → cynefin-VYW2F7L2-X1MbqUu-.js} +2 -2
- package/dist/web/assets/{cynefin-VYW2F7L2-BIBC3C1E.js.map → cynefin-VYW2F7L2-X1MbqUu-.js.map} +1 -1
- package/dist/web/assets/{cynefinDiagram-MW4NZA55-B1GP4GAZ.js → cynefinDiagram-MW4NZA55-C8eEwynB.js} +2 -2
- package/dist/web/assets/{cynefinDiagram-MW4NZA55-B1GP4GAZ.js.map → cynefinDiagram-MW4NZA55-C8eEwynB.js.map} +1 -1
- package/dist/web/assets/{dagre-VZM6K2ZE-DNG5skDU.js → dagre-VZM6K2ZE-DM3k1ZuP.js} +2 -2
- package/dist/web/assets/{dagre-VZM6K2ZE-DNG5skDU.js.map → dagre-VZM6K2ZE-DM3k1ZuP.js.map} +1 -1
- package/dist/web/assets/{diagram-7IWD3JNH-CQUg24YJ.js → diagram-7IWD3JNH-BCzpI5_-.js} +2 -2
- package/dist/web/assets/{diagram-7IWD3JNH-CQUg24YJ.js.map → diagram-7IWD3JNH-BCzpI5_-.js.map} +1 -1
- package/dist/web/assets/{diagram-B4RE2ZJO-qbAY07Pq.js → diagram-B4RE2ZJO-6OAoYjPb.js} +2 -2
- package/dist/web/assets/{diagram-B4RE2ZJO-qbAY07Pq.js.map → diagram-B4RE2ZJO-6OAoYjPb.js.map} +1 -1
- package/dist/web/assets/{diagram-LBJQPF4R-BE1Kdgp2.js → diagram-LBJQPF4R-Ghwi6FSb.js} +2 -2
- package/dist/web/assets/{diagram-LBJQPF4R-BE1Kdgp2.js.map → diagram-LBJQPF4R-Ghwi6FSb.js.map} +1 -1
- package/dist/web/assets/{diagram-Q27KOJAE-p-O0kqgj.js → diagram-Q27KOJAE-Bu6sUiqr.js} +2 -2
- package/dist/web/assets/{diagram-Q27KOJAE-p-O0kqgj.js.map → diagram-Q27KOJAE-Bu6sUiqr.js.map} +1 -1
- package/dist/web/assets/{diagram-UB23O5K3-xdGc2e52.js → diagram-UB23O5K3-Cmm_vyfK.js} +2 -2
- package/dist/web/assets/{diagram-UB23O5K3-xdGc2e52.js.map → diagram-UB23O5K3-Cmm_vyfK.js.map} +1 -1
- package/dist/web/assets/{ebnfDiagram-BXEA7PRR-BlJlcjUV.js → ebnfDiagram-BXEA7PRR-BC4WgF-c.js} +2 -2
- package/dist/web/assets/{ebnfDiagram-BXEA7PRR-BlJlcjUV.js.map → ebnfDiagram-BXEA7PRR-BC4WgF-c.js.map} +1 -1
- package/dist/web/assets/{erDiagram-JOGREHBK-Bg5-2m62.js → erDiagram-JOGREHBK-DqdBEze-.js} +2 -2
- package/dist/web/assets/{erDiagram-JOGREHBK-Bg5-2m62.js.map → erDiagram-JOGREHBK-DqdBEze-.js.map} +1 -1
- package/dist/web/assets/{flowDiagram-UKHOOZJN-Dmoemhzb.js → flowDiagram-UKHOOZJN-BWwrYsT-.js} +2 -2
- package/dist/web/assets/{flowDiagram-UKHOOZJN-Dmoemhzb.js.map → flowDiagram-UKHOOZJN-BWwrYsT-.js.map} +1 -1
- package/dist/web/assets/{ganttDiagram-PKOTCBZU-Dc-IwQME.js → ganttDiagram-PKOTCBZU-DA1yES44.js} +2 -2
- package/dist/web/assets/{ganttDiagram-PKOTCBZU-Dc-IwQME.js.map → ganttDiagram-PKOTCBZU-DA1yES44.js.map} +1 -1
- package/dist/web/assets/{gitGraphDiagram-DS77QQ5N-CN7YIxrd.js → gitGraphDiagram-DS77QQ5N-CDNEFLgS.js} +2 -2
- package/dist/web/assets/{gitGraphDiagram-DS77QQ5N-CN7YIxrd.js.map → gitGraphDiagram-DS77QQ5N-CDNEFLgS.js.map} +1 -1
- package/dist/web/assets/index-BmQXAad8.css +1 -0
- package/dist/web/assets/{index-D7uZ1ZOu.js → index-DQ7ZNp6t.js} +77 -77
- package/dist/web/assets/index-DQ7ZNp6t.js.map +1 -0
- package/dist/web/assets/{infoDiagram-6WML65LV-D-n8AFI2.js → infoDiagram-6WML65LV-9RussiqY.js} +2 -2
- package/dist/web/assets/{infoDiagram-6WML65LV-D-n8AFI2.js.map → infoDiagram-6WML65LV-9RussiqY.js.map} +1 -1
- package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-Cn-GcDLv.js → ishikawaDiagram-WSZJBQD7-B3gRQq9e.js} +2 -2
- package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-Cn-GcDLv.js.map → ishikawaDiagram-WSZJBQD7-B3gRQq9e.js.map} +1 -1
- package/dist/web/assets/{journeyDiagram-NVQOT4AX-CPPrighZ.js → journeyDiagram-NVQOT4AX-DqAYGlaG.js} +2 -2
- package/dist/web/assets/{journeyDiagram-NVQOT4AX-CPPrighZ.js.map → journeyDiagram-NVQOT4AX-DqAYGlaG.js.map} +1 -1
- package/dist/web/assets/{jsQR-BXk0yjjs.js → jsQR-Bn11mi_e.js} +2 -2
- package/dist/web/assets/{jsQR-BXk0yjjs.js.map → jsQR-Bn11mi_e.js.map} +1 -1
- package/dist/web/assets/{kanban-definition-27J2QSJJ-fT4ITqjW.js → kanban-definition-27J2QSJJ-jdYm_LCl.js} +2 -2
- package/dist/web/assets/{kanban-definition-27J2QSJJ-fT4ITqjW.js.map → kanban-definition-27J2QSJJ-jdYm_LCl.js.map} +1 -1
- package/dist/web/assets/{linear-nobKP7yF.js → linear-BIB58tKJ.js} +2 -2
- package/dist/web/assets/{linear-nobKP7yF.js.map → linear-BIB58tKJ.js.map} +1 -1
- package/dist/web/assets/{mermaid.core-BisAkIyL.js → mermaid.core-D_k6Q_o7.js} +5 -5
- package/dist/web/assets/{mermaid.core-BisAkIyL.js.map → mermaid.core-D_k6Q_o7.js.map} +1 -1
- package/dist/web/assets/{mindmap-definition-FAOFIHXS-Bnutlp7Z.js → mindmap-definition-FAOFIHXS-DOSiw2OA.js} +2 -2
- package/dist/web/assets/{mindmap-definition-FAOFIHXS-Bnutlp7Z.js.map → mindmap-definition-FAOFIHXS-DOSiw2OA.js.map} +1 -1
- package/dist/web/assets/{pegDiagram-VL7TDLO6-CzCgLmQq.js → pegDiagram-VL7TDLO6-B_uxCfTq.js} +2 -2
- package/dist/web/assets/{pegDiagram-VL7TDLO6-CzCgLmQq.js.map → pegDiagram-VL7TDLO6-B_uxCfTq.js.map} +1 -1
- package/dist/web/assets/{pieDiagram-7S7Q4E2Y-DEr0yE7X.js → pieDiagram-7S7Q4E2Y-k7womKc2.js} +2 -2
- package/dist/web/assets/{pieDiagram-7S7Q4E2Y-DEr0yE7X.js.map → pieDiagram-7S7Q4E2Y-k7womKc2.js.map} +1 -1
- package/dist/web/assets/{quadrantDiagram-CIZ2JOQS-C2LgzIJW.js → quadrantDiagram-CIZ2JOQS-DDeP9GSy.js} +2 -2
- package/dist/web/assets/{quadrantDiagram-CIZ2JOQS-C2LgzIJW.js.map → quadrantDiagram-CIZ2JOQS-DDeP9GSy.js.map} +1 -1
- package/dist/web/assets/{railroadDiagram-AXF67PYL-x-LatX3A.js → railroadDiagram-AXF67PYL-3w9OC7bK.js} +2 -2
- package/dist/web/assets/{railroadDiagram-AXF67PYL-x-LatX3A.js.map → railroadDiagram-AXF67PYL-3w9OC7bK.js.map} +1 -1
- package/dist/web/assets/{requirementDiagram-LRYGKXZP-CGzjkfeX.js → requirementDiagram-LRYGKXZP-Dd-jdyLp.js} +2 -2
- package/dist/web/assets/{requirementDiagram-LRYGKXZP-CGzjkfeX.js.map → requirementDiagram-LRYGKXZP-Dd-jdyLp.js.map} +1 -1
- package/dist/web/assets/{sankeyDiagram-W5VNT64P-BTISD1zZ.js → sankeyDiagram-W5VNT64P-nP6fnjRm.js} +2 -2
- package/dist/web/assets/{sankeyDiagram-W5VNT64P-BTISD1zZ.js.map → sankeyDiagram-W5VNT64P-nP6fnjRm.js.map} +1 -1
- package/dist/web/assets/{sequenceDiagram-SI44F4Z6-DbJ7oF41.js → sequenceDiagram-SI44F4Z6-Db7yXsx7.js} +2 -2
- package/dist/web/assets/{sequenceDiagram-SI44F4Z6-DbJ7oF41.js.map → sequenceDiagram-SI44F4Z6-Db7yXsx7.js.map} +1 -1
- package/dist/web/assets/{sizeCapture-X5ZJPWSS-CRPNTj6C.js → sizeCapture-X5ZJPWSS-7HSt6rUG.js} +2 -2
- package/dist/web/assets/{sizeCapture-X5ZJPWSS-CRPNTj6C.js.map → sizeCapture-X5ZJPWSS-7HSt6rUG.js.map} +1 -1
- package/dist/web/assets/{stateDiagram-OKZ733FA-nnD41U4P.js → stateDiagram-OKZ733FA-DCDBYc8x.js} +2 -2
- package/dist/web/assets/{stateDiagram-OKZ733FA-nnD41U4P.js.map → stateDiagram-OKZ733FA-DCDBYc8x.js.map} +1 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-kDvyGBqZ.js +2 -0
- package/dist/web/assets/{stateDiagram-v2-UEYNNEHI-BW2payX0.js.map → stateDiagram-v2-UEYNNEHI-kDvyGBqZ.js.map} +1 -1
- package/dist/web/assets/{swimlanes-SLNWSIFB-CUfYRF4W.js → swimlanes-SLNWSIFB-yi3n69TK.js} +3 -3
- package/dist/web/assets/{swimlanes-SLNWSIFB-CUfYRF4W.js.map → swimlanes-SLNWSIFB-yi3n69TK.js.map} +1 -1
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-W_7yrf_B.js +9 -0
- package/dist/web/assets/{swimlanesDiagram-ULZ7WXOC-Bwk7oU9y.js.map → swimlanesDiagram-ULZ7WXOC-W_7yrf_B.js.map} +1 -1
- package/dist/web/assets/{timeline-definition-Z64GVDOM-tQRIpPqw.js → timeline-definition-Z64GVDOM-BYpFsSUO.js} +2 -2
- package/dist/web/assets/{timeline-definition-Z64GVDOM-tQRIpPqw.js.map → timeline-definition-Z64GVDOM-BYpFsSUO.js.map} +1 -1
- package/dist/web/assets/{vennDiagram-T6HMQDX7-B6xd83uW.js → vennDiagram-T6HMQDX7-NtAYbYGj.js} +2 -2
- package/dist/web/assets/{vennDiagram-T6HMQDX7-B6xd83uW.js.map → vennDiagram-T6HMQDX7-NtAYbYGj.js.map} +1 -1
- package/dist/web/assets/{wardleyDiagram-T6FBY63Y-CpKP_cr3.js → wardleyDiagram-T6FBY63Y-DHyOX2kW.js} +2 -2
- package/dist/web/assets/{wardleyDiagram-T6FBY63Y-CpKP_cr3.js.map → wardleyDiagram-T6FBY63Y-DHyOX2kW.js.map} +1 -1
- package/dist/web/assets/{xychartDiagram-ELKLHX3M-BeTRjYgI.js → xychartDiagram-ELKLHX3M-B2SyZu-1.js} +2 -2
- package/dist/web/assets/{xychartDiagram-ELKLHX3M-BeTRjYgI.js.map → xychartDiagram-ELKLHX3M-B2SyZu-1.js.map} +1 -1
- package/dist/web/index.html +2 -2
- package/dist/web/sw.js +5 -5
- package/dist/web/version.json +1 -1
- package/package.json +2 -2
- package/dist/web/assets/channel-a40DqgLG.js +0 -2
- package/dist/web/assets/classDiagram-JCYQIIEL-DEVG-qK8.js +0 -2
- package/dist/web/assets/classDiagram-v2-OCEON4UE-DEVG-qK8.js +0 -2
- package/dist/web/assets/index-Bja4dmXL.css +0 -1
- package/dist/web/assets/index-D7uZ1ZOu.js.map +0 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-BW2payX0.js +0 -2
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-Bwk7oU9y.js +0 -9
package/README.md
CHANGED
|
@@ -110,9 +110,9 @@ The focused client does not persist messages, identities, receipts, or API
|
|
|
110
110
|
responses in browser storage. Its service worker caches only the application
|
|
111
111
|
shell and static assets for offline launch; all `/api/*` requests bypass it.
|
|
112
112
|
|
|
113
|
-
The web UI
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
The web UI and its same-origin transport adapter are maintained together in
|
|
114
|
+
this repository; their presentation scope and transport exclusions are recorded
|
|
115
|
+
in `web/src/CANONICAL_UI_PROVENANCE.md`. The interface
|
|
116
116
|
includes grouped identity-root contacts; contact add, approval, rename and
|
|
117
117
|
removal; one-time/public invite creation and revocation; public bio editing;
|
|
118
118
|
message and attachment replies; drag/drop/paste and picker uploads with bounded
|
|
@@ -37,7 +37,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
37
37
|
var define_MESSENGER_BUILD_INFO_default;
|
|
38
38
|
var init_define_MESSENGER_BUILD_INFO = __esm({
|
|
39
39
|
"<define:__MESSENGER_BUILD_INFO__>"() {
|
|
40
|
-
define_MESSENGER_BUILD_INFO_default = { name: "@ours.network/messenger-server", version: "0.
|
|
40
|
+
define_MESSENGER_BUILD_INFO_default = { name: "@ours.network/messenger-server", version: "1.0.0", sha: "afbd92120e3ad142c495034dc66797e49de83c82", dirty: false };
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
43
|
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
publicEngineError,
|
|
8
8
|
publicInternalError,
|
|
9
9
|
reportFailure
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-AXRJUIIU.js";
|
|
11
11
|
|
|
12
12
|
// node_modules/bn.js/lib/bn.js
|
|
13
13
|
var require_bn = __commonJS({
|
|
@@ -11133,6 +11133,8 @@ var ROOM_IDENTITY_PREFIX = "ours-cowork-room:";
|
|
|
11133
11133
|
var CURRENT_ROOM_IDENTITY_PREFIX = "ours-cowork-";
|
|
11134
11134
|
var LEGACY_ROOM_IDENTITY_PREFIX = "cowork-room-";
|
|
11135
11135
|
var LOWER_CROCKFORD_ULID = /^[0-7][0-9a-hjkmnp-tv-z]{25}$/;
|
|
11136
|
+
var FRIENDLY_ROOM_SLUG = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
|
|
11137
|
+
var MAX_FRIENDLY_ROOM_SLUG_LENGTH = 25;
|
|
11136
11138
|
var isObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
11137
11139
|
var isNonEmptyString = (value) => typeof value === "string" && value.length > 0;
|
|
11138
11140
|
function parseRoomBody(text) {
|
|
@@ -11204,15 +11206,21 @@ function legacyRoomId(announced) {
|
|
|
11204
11206
|
const roomId = announced.slice(LEGACY_ROOM_IDENTITY_PREFIX.length);
|
|
11205
11207
|
return LOWER_CROCKFORD_ULID.test(roomId) ? roomId : null;
|
|
11206
11208
|
}
|
|
11207
|
-
function
|
|
11209
|
+
function currentRoomMetadata(announced) {
|
|
11208
11210
|
if (typeof announced !== "string" || !announced.startsWith(CURRENT_ROOM_IDENTITY_PREFIX)) return null;
|
|
11209
11211
|
const suffix = announced.slice(CURRENT_ROOM_IDENTITY_PREFIX.length);
|
|
11210
|
-
|
|
11212
|
+
if (LOWER_CROCKFORD_ULID.test(suffix)) return { roomId: suffix, slug: null };
|
|
11213
|
+
const roomId = suffix.slice(-26);
|
|
11214
|
+
const separator = suffix.at(-27);
|
|
11215
|
+
const slug = suffix.slice(0, -27);
|
|
11216
|
+
if (separator !== "-" || !LOWER_CROCKFORD_ULID.test(roomId)) return null;
|
|
11217
|
+
if (slug.length < 1 || slug.length > MAX_FRIENDLY_ROOM_SLUG_LENGTH) return null;
|
|
11218
|
+
return FRIENDLY_ROOM_SLUG.test(slug) ? { roomId, slug } : null;
|
|
11211
11219
|
}
|
|
11212
11220
|
function isCoworkRoomContact(announced) {
|
|
11213
11221
|
const identity = String(announced ?? "").trim();
|
|
11214
11222
|
const v04 = identity.startsWith(ROOM_IDENTITY_PREFIX) && identity.slice(ROOM_IDENTITY_PREFIX.length).trim().length > 0;
|
|
11215
|
-
return v04 ||
|
|
11223
|
+
return v04 || currentRoomMetadata(announced) !== null || legacyRoomId(announced) !== null;
|
|
11216
11224
|
}
|
|
11217
11225
|
function contactMessagePreview(announcedContact, text) {
|
|
11218
11226
|
const line = roomLineForContact(announcedContact, text);
|
|
@@ -11236,6 +11244,24 @@ function roomMessagePreview(line) {
|
|
|
11236
11244
|
function collapse(text) {
|
|
11237
11245
|
return String(text ?? "").replace(/\s+/g, " ").trim();
|
|
11238
11246
|
}
|
|
11247
|
+
function roomContactLabel(announced) {
|
|
11248
|
+
const identity = String(announced ?? "").trim();
|
|
11249
|
+
if (identity.startsWith(ROOM_IDENTITY_PREFIX)) {
|
|
11250
|
+
const shortName = identity.slice(ROOM_IDENTITY_PREFIX.length).trim();
|
|
11251
|
+
return shortName || null;
|
|
11252
|
+
}
|
|
11253
|
+
const current = currentRoomMetadata(announced);
|
|
11254
|
+
if (current?.slug) {
|
|
11255
|
+
const readable = current.slug.replace(/-/g, " ");
|
|
11256
|
+
return readable.replace(/[a-z]/, (letter) => letter.toUpperCase());
|
|
11257
|
+
}
|
|
11258
|
+
if (current) return `Room ${current.roomId.slice(0, 8)}`;
|
|
11259
|
+
const roomId = legacyRoomId(announced);
|
|
11260
|
+
return roomId === null ? null : `Room ${roomId.slice(0, 8)}`;
|
|
11261
|
+
}
|
|
11262
|
+
function contactDisplayName(announced) {
|
|
11263
|
+
return roomContactLabel(announced) ?? String(announced ?? "");
|
|
11264
|
+
}
|
|
11239
11265
|
|
|
11240
11266
|
// src/conversation.ts
|
|
11241
11267
|
var DEFAULT_PAGE_LIMIT = 50;
|
|
@@ -11574,6 +11600,19 @@ function publicFetchedFiles(value) {
|
|
|
11574
11600
|
...Array.isArray(result.requested) || result.requested === null ? { requested: result.requested } : {}
|
|
11575
11601
|
};
|
|
11576
11602
|
}
|
|
11603
|
+
function presentContacts(value) {
|
|
11604
|
+
return {
|
|
11605
|
+
...value,
|
|
11606
|
+
contacts: value.contacts.map((contact) => ({
|
|
11607
|
+
...contact,
|
|
11608
|
+
display_name: contactDisplayName(contact.name)
|
|
11609
|
+
})),
|
|
11610
|
+
pending: value.pending.map((contact) => ({
|
|
11611
|
+
...contact,
|
|
11612
|
+
display_name: contactDisplayName(contact.name)
|
|
11613
|
+
}))
|
|
11614
|
+
};
|
|
11615
|
+
}
|
|
11577
11616
|
async function resolveContact(client, contact) {
|
|
11578
11617
|
const contacts = await client.listContacts();
|
|
11579
11618
|
const row = contacts.contacts.find((item) => item.container_id === contact || item.name === contact);
|
|
@@ -11809,7 +11848,7 @@ var ROUTES = {
|
|
|
11809
11848
|
// is not.
|
|
11810
11849
|
"GET /api/messages/incoming": async ({ client }) => client.listIncomingMessages(),
|
|
11811
11850
|
// ---- contacts ------------------------------------------------------------
|
|
11812
|
-
"GET /api/contacts": async ({ client }) => client.listContacts(),
|
|
11851
|
+
"GET /api/contacts": async ({ client }) => presentContacts(await client.listContacts()),
|
|
11813
11852
|
// The old browser surface called this `listContactRoots`. It is not a separate
|
|
11814
11853
|
// operation: roots ride along on the contacts view.
|
|
11815
11854
|
"GET /api/contacts/roots": async ({ client }) => ({ roots: (await client.listContacts()).roots }),
|
|
@@ -13007,11 +13046,12 @@ async function projectFromSdk(client, job) {
|
|
|
13007
13046
|
if (!message || message.direction !== "in" || message.peer.id !== job.contactId) {
|
|
13008
13047
|
throw new Error("canonical message projection is not ready");
|
|
13009
13048
|
}
|
|
13049
|
+
const announcedSender = job.senderName ?? message.peer.name ?? "New message";
|
|
13010
13050
|
return {
|
|
13011
13051
|
v: 1,
|
|
13012
13052
|
kind: "message",
|
|
13013
|
-
title:
|
|
13014
|
-
body: message.text,
|
|
13053
|
+
title: contactDisplayName(announcedSender),
|
|
13054
|
+
body: contactMessagePreview(announcedSender, message.text),
|
|
13015
13055
|
contact_id: job.contactId,
|
|
13016
13056
|
wire_id: job.wireId,
|
|
13017
13057
|
url
|
|
@@ -13027,7 +13067,7 @@ async function projectFromSdk(client, job) {
|
|
|
13027
13067
|
return {
|
|
13028
13068
|
v: 1,
|
|
13029
13069
|
kind,
|
|
13030
|
-
title: file.from.name || job.senderName || label,
|
|
13070
|
+
title: contactDisplayName(file.from.name || job.senderName || label),
|
|
13031
13071
|
body: `${label}: ${file.filename}`,
|
|
13032
13072
|
contact_id: job.contactId,
|
|
13033
13073
|
wire_id: job.wireId,
|
|
@@ -13165,8 +13205,9 @@ async function pushEventFor(client, record) {
|
|
|
13165
13205
|
if (message) break;
|
|
13166
13206
|
}
|
|
13167
13207
|
if (!message) throw new Error("canonical message was not available for push projection");
|
|
13168
|
-
const
|
|
13169
|
-
const
|
|
13208
|
+
const announcedSender = nonEmpty4(record.sender_name) ? record.sender_name : "New message";
|
|
13209
|
+
const sender = contactDisplayName(announcedSender);
|
|
13210
|
+
const body = contactMessagePreview(announcedSender, message.text);
|
|
13170
13211
|
return { v: 1, kind: "message", title: sender, body, contact_id: contactId, wire_id: wireId, url };
|
|
13171
13212
|
}
|
|
13172
13213
|
if (record.event === "file_received") {
|
|
@@ -13183,7 +13224,7 @@ async function pushEventFor(client, record) {
|
|
|
13183
13224
|
return {
|
|
13184
13225
|
v: 1,
|
|
13185
13226
|
kind,
|
|
13186
|
-
title: file.from.name || label,
|
|
13227
|
+
title: contactDisplayName(file.from.name || label),
|
|
13187
13228
|
body: `${label}: ${file.filename}`,
|
|
13188
13229
|
contact_id: contactId,
|
|
13189
13230
|
wire_id: wireId,
|
package/dist/cli.js
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
init_define_MESSENGER_BUILD_INFO,
|
|
6
6
|
operatorError,
|
|
7
7
|
reportFailure
|
|
8
|
-
} from "./chunks/chunk-
|
|
8
|
+
} from "./chunks/chunk-AXRJUIIU.js";
|
|
9
9
|
|
|
10
10
|
// src/cli.ts
|
|
11
11
|
init_define_MESSENGER_BUILD_INFO();
|
|
@@ -119,7 +119,7 @@ async function main() {
|
|
|
119
119
|
}
|
|
120
120
|
if (process.argv.length !== 3) throw new ConfigurationError("serve does not accept command-line options");
|
|
121
121
|
const cfg = loadConfig();
|
|
122
|
-
const { start } = await import("./chunks/server-
|
|
122
|
+
const { start } = await import("./chunks/server-LACRIC6M.js");
|
|
123
123
|
const handle = await start(cfg, BUILD_INFO);
|
|
124
124
|
let closing = false;
|
|
125
125
|
const shutdown = (signal) => {
|
package/dist/web/assets/{abnfDiagram-N423BO3Z-7fD4vfRu.js → abnfDiagram-N423BO3Z-pM7Mbmij.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{g as p,r as u,d as a}from"./chunk-6Q2QTUOP-
|
|
2
|
-
//# sourceMappingURL=abnfDiagram-N423BO3Z-
|
|
1
|
+
import{g as p,r as u,d as a}from"./chunk-6Q2QTUOP-VwCXFYQB.js";import{p as f}from"./chunk-JWPE2WC7-eLDeLJYU.js";import{_ as n,l as o}from"./mermaid.core-D_k6Q_o7.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-X1MbqUu-.js";import"./index-DQ7ZNp6t.js";var v=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},B={parser:R,db:a,renderer:u,styles:p};export{B as diagram};
|
|
2
|
+
//# sourceMappingURL=abnfDiagram-N423BO3Z-pM7Mbmij.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abnfDiagram-N423BO3Z-
|
|
1
|
+
{"version":3,"file":"abnfDiagram-N423BO3Z-pM7Mbmij.js","sources":["../../../node_modules/mermaid/dist/chunks/mermaid.core/abnfDiagram-N423BO3Z.mjs"],"sourcesContent":["import {\n db,\n getStyles,\n renderer\n} from \"./chunk-6Q2QTUOP.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-JWPE2WC7.mjs\";\nimport \"./chunk-3NCLNEKW.mjs\";\nimport \"./chunk-I66GZJ75.mjs\";\nimport {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/diagrams/railroad/parser/abnfParser.ts\nimport {\n MermaidParseError,\n createRailroadAbnfServices\n} from \"@mermaid-js/parser\";\nvar langiumParser = createRailroadAbnfServices().RailroadAbnf.parser.LangiumParser;\nvar transformAlternation = /* @__PURE__ */ __name((alt) => {\n const alternatives = alt.alternatives.map(transformConcatenation);\n if (alternatives.length === 1) {\n return alternatives[0];\n }\n return {\n type: \"choice\",\n alternatives\n };\n}, \"transformAlternation\");\nvar transformConcatenation = /* @__PURE__ */ __name((concat) => {\n const elements = concat.elements.map(transformElement);\n if (elements.length === 1) {\n return elements[0];\n }\n return {\n type: \"sequence\",\n elements\n };\n}, \"transformConcatenation\");\nvar parseRepeat = /* @__PURE__ */ __name((repeat) => {\n if (repeat.includes(\"*\")) {\n const [minStr, maxStr] = repeat.split(\"*\");\n const min = minStr ? parseInt(minStr, 10) : 0;\n const max = maxStr ? parseInt(maxStr, 10) : Infinity;\n return { min, max };\n }\n const exact = parseInt(repeat, 10);\n return { min: exact, max: exact };\n}, \"parseRepeat\");\nvar transformElement = /* @__PURE__ */ __name((element) => {\n const inner = transformPrimary(element.primary);\n if (!element.repeat) {\n return inner;\n }\n const { min, max } = parseRepeat(element.repeat);\n if (min === 0 && max === 1) {\n return { type: \"optional\", element: inner };\n }\n return {\n type: \"repetition\",\n element: inner,\n min,\n max\n };\n}, \"transformElement\");\nvar transformPrimary = /* @__PURE__ */ __name((primary) => {\n switch (primary.$type) {\n case \"AbnfStringLiteral\":\n return {\n type: \"terminal\",\n value: primary.value\n };\n case \"AbnfNumVal\":\n return {\n type: \"terminal\",\n value: primary.value\n };\n case \"AbnfRuleName\":\n return {\n type: \"nonterminal\",\n name: primary.name\n };\n case \"AbnfGroup\":\n return transformAlternation(primary.element);\n case \"AbnfOptionalGroup\":\n return {\n type: \"optional\",\n element: transformAlternation(primary.element)\n };\n default:\n throw new Error(`Unsupported ABNF primary node: ${primary.$type}`);\n }\n}, \"transformPrimary\");\nvar transformRule = /* @__PURE__ */ __name((rule) => {\n return {\n name: rule.name,\n definition: transformAlternation(rule.definition)\n };\n}, \"transformRule\");\nvar populateDb = /* @__PURE__ */ __name((ast) => {\n populateCommonDb(ast, db);\n if (ast.title) {\n db.setTitle(ast.title);\n }\n ast.rules.map((rule) => db.addRule(transformRule(rule)));\n}, \"populateDb\");\nvar parser = {\n parse: /* @__PURE__ */ __name((input) => {\n db.clear();\n log.debug(\"[ABNF Parser] Starting Langium parse\");\n const result = langiumParser.parse(input);\n if (result.lexerErrors.length > 0 || result.parserErrors.length > 0) {\n throw new MermaidParseError(result);\n }\n const ast = result.value;\n log.debug(\"[ABNF Parser] Parsed rules:\", ast.rules.length);\n populateDb(ast);\n log.debug(\"[ABNF Parser] Parse complete\");\n }, \"parse\"),\n parser: {\n yy: db\n }\n};\n\n// src/diagrams/railroad/abnfDiagram.ts\nvar diagram = {\n parser,\n db,\n renderer,\n styles: getStyles\n};\nexport {\n diagram\n};\n"],"names":["langiumParser","createRailroadAbnfServices","transformAlternation","__name","alt","alternatives","transformConcatenation","concat","elements","transformElement","parseRepeat","repeat","minStr","maxStr","min","max","exact","element","inner","transformPrimary","primary","transformRule","rule","populateDb","ast","populateCommonDb","db","parser","input","log","result","MermaidParseError","diagram","renderer","getStyles"],"mappings":"4PAsBA,IAAIA,EAAgBC,EAA0B,EAAG,aAAa,OAAO,cACjEC,EAAuCC,EAAQC,GAAQ,CACzD,MAAMC,EAAeD,EAAI,aAAa,IAAIE,CAAsB,EAChE,OAAID,EAAa,SAAW,EACnBA,EAAa,CAAC,EAEhB,CACL,KAAM,SACN,aAAAA,CACJ,CACA,EAAG,sBAAsB,EACrBC,EAAyCH,EAAQI,GAAW,CAC9D,MAAMC,EAAWD,EAAO,SAAS,IAAIE,CAAgB,EACrD,OAAID,EAAS,SAAW,EACfA,EAAS,CAAC,EAEZ,CACL,KAAM,WACN,SAAAA,CACJ,CACA,EAAG,wBAAwB,EACvBE,EAA8BP,EAAQQ,GAAW,CACnD,GAAIA,EAAO,SAAS,GAAG,EAAG,CACxB,KAAM,CAACC,EAAQC,CAAM,EAAIF,EAAO,MAAM,GAAG,EACnCG,EAAMF,EAAS,SAASA,EAAQ,EAAE,EAAI,EACtCG,EAAMF,EAAS,SAASA,EAAQ,EAAE,EAAI,IAC5C,MAAO,CAAE,IAAAC,EAAK,IAAAC,CAAG,CACnB,CACA,MAAMC,EAAQ,SAASL,EAAQ,EAAE,EACjC,MAAO,CAAE,IAAKK,EAAO,IAAKA,CAAK,CACjC,EAAG,aAAa,EACZP,EAAmCN,EAAQc,GAAY,CACzD,MAAMC,EAAQC,EAAiBF,EAAQ,OAAO,EAC9C,GAAI,CAACA,EAAQ,OACX,OAAOC,EAET,KAAM,CAAE,IAAAJ,EAAK,IAAAC,CAAG,EAAKL,EAAYO,EAAQ,MAAM,EAC/C,OAAIH,IAAQ,GAAKC,IAAQ,EAChB,CAAE,KAAM,WAAY,QAASG,CAAK,EAEpC,CACL,KAAM,aACN,QAASA,EACT,IAAAJ,EACA,IAAAC,CACJ,CACA,EAAG,kBAAkB,EACjBI,EAAmChB,EAAQiB,GAAY,CACzD,OAAQA,EAAQ,MAAK,CACnB,IAAK,oBACH,MAAO,CACL,KAAM,WACN,MAAOA,EAAQ,KACvB,EACI,IAAK,aACH,MAAO,CACL,KAAM,WACN,MAAOA,EAAQ,KACvB,EACI,IAAK,eACH,MAAO,CACL,KAAM,cACN,KAAMA,EAAQ,IACtB,EACI,IAAK,YACH,OAAOlB,EAAqBkB,EAAQ,OAAO,EAC7C,IAAK,oBACH,MAAO,CACL,KAAM,WACN,QAASlB,EAAqBkB,EAAQ,OAAO,CACrD,EACI,QACE,MAAM,IAAI,MAAM,kCAAkCA,EAAQ,KAAK,EAAE,CACvE,CACA,EAAG,kBAAkB,EACjBC,EAAgClB,EAAQmB,IACnC,CACL,KAAMA,EAAK,KACX,WAAYpB,EAAqBoB,EAAK,UAAU,CACpD,GACG,eAAe,EACdC,EAA6BpB,EAAQqB,GAAQ,CAC/CC,EAAiBD,EAAKE,CAAE,EACpBF,EAAI,OACNE,EAAG,SAASF,EAAI,KAAK,EAEvBA,EAAI,MAAM,IAAKF,GAASI,EAAG,QAAQL,EAAcC,CAAI,CAAC,CAAC,CACzD,EAAG,YAAY,EACXK,EAAS,CACX,MAAuBxB,EAAQyB,GAAU,CACvCF,EAAG,MAAK,EACRG,EAAI,MAAM,sCAAsC,EAChD,MAAMC,EAAS9B,EAAc,MAAM4B,CAAK,EACxC,GAAIE,EAAO,YAAY,OAAS,GAAKA,EAAO,aAAa,OAAS,EAChE,MAAM,IAAIC,EAAkBD,CAAM,EAEpC,MAAMN,EAAMM,EAAO,MACnBD,EAAI,MAAM,8BAA+BL,EAAI,MAAM,MAAM,EACzDD,EAAWC,CAAG,EACdK,EAAI,MAAM,8BAA8B,CAC1C,EAAG,OAAO,EACV,OAAQ,CACN,GAAIH,CACR,CACA,EAGIM,EAAU,CACZ,OAAAL,EACA,GAAAD,EACA,SAAAO,EACA,OAAQC,CACV","x_google_ignoreList":[0]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Y as ln,$ as an,a0 as F,a1 as q,a2 as j,a3 as un,a4 as y,a5 as tn,a6 as J,a7 as _,a8 as rn,a9 as o,aa as on,ab as sn,ac as fn}from"./mermaid.core-
|
|
2
|
-
//# sourceMappingURL=arc-
|
|
1
|
+
import{Y as ln,$ as an,a0 as F,a1 as q,a2 as j,a3 as un,a4 as y,a5 as tn,a6 as J,a7 as _,a8 as rn,a9 as o,aa as on,ab as sn,ac as fn}from"./mermaid.core-D_k6Q_o7.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,z,a){var O=I-l,i=D-h,n=z-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function U(l,h,I,D,v,A,z){var a=l-I,O=h-D,i=(z?A:-A)/J(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,B=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*J(on(0,T*T*R-P*P)),Y=(P*g-m*S)/R,$=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=Y-B,e=$-t,r=w-B,C=p-t;return x*x+e*e>r*r+C*C&&(Y=w,$=p),{cx:Y,cy:$,x01:-n,y01:-d,x11:Y*(v/T-1),y11:$*(v/T-1)}}function hn(){var l=cn,h=yn,I=j(0),D=null,v=gn,A=dn,z=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,B=rn(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(B>tn-y)a.moveTo(s*F(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*F(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=B,S=B,Y=z.apply(this,arguments)/2,$=Y>y&&(D?+D.apply(this,arguments):J(u*u+s*s)),w=_(rn(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if($>y){var C=sn($/u*q(Y)),K=sn($/s*q(Y));(P-=C*2)>y?(C*=t?1:-1,R+=C,T-=C):(P=0,R=T=(f+c)/2),(S-=K*2)>y?(K*=t?1:-1,m+=K,g-=K):(S=0,m=g=(f+c)/2)}var G=s*F(m),H=s*q(m),L=u*F(T),M=u*q(T);if(w>y){var N=s*F(g),Q=s*q(g),V=u*F(R),W=u*q(R),E;if(B<an)if(E=pn(G,H,V,W,N,Q,L,M)){var X=G-E[0],Z=H-E[1],b=N-E[0],k=Q-E[1],nn=1/q(fn((X*b+Z*k)/(J(X*X+Z*Z)*J(b*b+k*k)))/2),en=J(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=U(V,W,G,H,s,x,t),r=U(N,Q,L,M,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(G,H),a.arc(0,0,s,m,g,!t)):a.moveTo(G,H),!(u>y)||!(P>y)?a.lineTo(L,M):p>y?(e=U(L,M,N,Q,u,-p,t),r=U(G,H,V,W,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[F(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:j(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:j(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:j(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:j(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:j(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:j(+n),i):A},i.padAngle=function(n){return arguments.length?(z=typeof n=="function"?n:j(+n),i):z},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
|
|
2
|
+
//# sourceMappingURL=arc-ClKVG6mD.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc-Cp6lomZC.js","sources":["../../../node_modules/d3-shape/src/arc.js"],"sourcesContent":["import constant from \"./constant.js\";\nimport {abs, acos, asin, atan2, cos, epsilon, halfPi, max, min, pi, sin, sqrt, tau} from \"./math.js\";\nimport {withPath} from \"./path.js\";\n\nfunction arcInnerRadius(d) {\n return d.innerRadius;\n}\n\nfunction arcOuterRadius(d) {\n return d.outerRadius;\n}\n\nfunction arcStartAngle(d) {\n return d.startAngle;\n}\n\nfunction arcEndAngle(d) {\n return d.endAngle;\n}\n\nfunction arcPadAngle(d) {\n return d && d.padAngle; // Note: optional!\n}\n\nfunction intersect(x0, y0, x1, y1, x2, y2, x3, y3) {\n var x10 = x1 - x0, y10 = y1 - y0,\n x32 = x3 - x2, y32 = y3 - y2,\n t = y32 * x10 - x32 * y10;\n if (t * t < epsilon) return;\n t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t;\n return [x0 + t * x10, y0 + t * y10];\n}\n\n// Compute perpendicular offset line of length rc.\n// http://mathworld.wolfram.com/Circle-LineIntersection.html\nfunction cornerTangents(x0, y0, x1, y1, r1, rc, cw) {\n var x01 = x0 - x1,\n y01 = y0 - y1,\n lo = (cw ? rc : -rc) / sqrt(x01 * x01 + y01 * y01),\n ox = lo * y01,\n oy = -lo * x01,\n x11 = x0 + ox,\n y11 = y0 + oy,\n x10 = x1 + ox,\n y10 = y1 + oy,\n x00 = (x11 + x10) / 2,\n y00 = (y11 + y10) / 2,\n dx = x10 - x11,\n dy = y10 - y11,\n d2 = dx * dx + dy * dy,\n r = r1 - rc,\n D = x11 * y10 - x10 * y11,\n d = (dy < 0 ? -1 : 1) * sqrt(max(0, r * r * d2 - D * D)),\n cx0 = (D * dy - dx * d) / d2,\n cy0 = (-D * dx - dy * d) / d2,\n cx1 = (D * dy + dx * d) / d2,\n cy1 = (-D * dx + dy * d) / d2,\n dx0 = cx0 - x00,\n dy0 = cy0 - y00,\n dx1 = cx1 - x00,\n dy1 = cy1 - y00;\n\n // Pick the closer of the two intersection points.\n // TODO Is there a faster way to determine which intersection to use?\n if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) cx0 = cx1, cy0 = cy1;\n\n return {\n cx: cx0,\n cy: cy0,\n x01: -ox,\n y01: -oy,\n x11: cx0 * (r1 / r - 1),\n y11: cy0 * (r1 / r - 1)\n };\n}\n\nexport default function() {\n var innerRadius = arcInnerRadius,\n outerRadius = arcOuterRadius,\n cornerRadius = constant(0),\n padRadius = null,\n startAngle = arcStartAngle,\n endAngle = arcEndAngle,\n padAngle = arcPadAngle,\n context = null,\n path = withPath(arc);\n\n function arc() {\n var buffer,\n r,\n r0 = +innerRadius.apply(this, arguments),\n r1 = +outerRadius.apply(this, arguments),\n a0 = startAngle.apply(this, arguments) - halfPi,\n a1 = endAngle.apply(this, arguments) - halfPi,\n da = abs(a1 - a0),\n cw = a1 > a0;\n\n if (!context) context = buffer = path();\n\n // Ensure that the outer radius is always larger than the inner radius.\n if (r1 < r0) r = r1, r1 = r0, r0 = r;\n\n // Is it a point?\n if (!(r1 > epsilon)) context.moveTo(0, 0);\n\n // Or is it a circle or annulus?\n else if (da > tau - epsilon) {\n context.moveTo(r1 * cos(a0), r1 * sin(a0));\n context.arc(0, 0, r1, a0, a1, !cw);\n if (r0 > epsilon) {\n context.moveTo(r0 * cos(a1), r0 * sin(a1));\n context.arc(0, 0, r0, a1, a0, cw);\n }\n }\n\n // Or is it a circular or annular sector?\n else {\n var a01 = a0,\n a11 = a1,\n a00 = a0,\n a10 = a1,\n da0 = da,\n da1 = da,\n ap = padAngle.apply(this, arguments) / 2,\n rp = (ap > epsilon) && (padRadius ? +padRadius.apply(this, arguments) : sqrt(r0 * r0 + r1 * r1)),\n rc = min(abs(r1 - r0) / 2, +cornerRadius.apply(this, arguments)),\n rc0 = rc,\n rc1 = rc,\n t0,\n t1;\n\n // Apply padding? Note that since r1 ≥ r0, da1 ≥ da0.\n if (rp > epsilon) {\n var p0 = asin(rp / r0 * sin(ap)),\n p1 = asin(rp / r1 * sin(ap));\n if ((da0 -= p0 * 2) > epsilon) p0 *= (cw ? 1 : -1), a00 += p0, a10 -= p0;\n else da0 = 0, a00 = a10 = (a0 + a1) / 2;\n if ((da1 -= p1 * 2) > epsilon) p1 *= (cw ? 1 : -1), a01 += p1, a11 -= p1;\n else da1 = 0, a01 = a11 = (a0 + a1) / 2;\n }\n\n var x01 = r1 * cos(a01),\n y01 = r1 * sin(a01),\n x10 = r0 * cos(a10),\n y10 = r0 * sin(a10);\n\n // Apply rounded corners?\n if (rc > epsilon) {\n var x11 = r1 * cos(a11),\n y11 = r1 * sin(a11),\n x00 = r0 * cos(a00),\n y00 = r0 * sin(a00),\n oc;\n\n // Restrict the corner radius according to the sector angle. If this\n // intersection fails, it’s probably because the arc is too small, so\n // disable the corner radius entirely.\n if (da < pi) {\n if (oc = intersect(x01, y01, x00, y00, x11, y11, x10, y10)) {\n var ax = x01 - oc[0],\n ay = y01 - oc[1],\n bx = x11 - oc[0],\n by = y11 - oc[1],\n kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2),\n lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n rc0 = min(rc, (r0 - lc) / (kc - 1));\n rc1 = min(rc, (r1 - lc) / (kc + 1));\n } else {\n rc0 = rc1 = 0;\n }\n }\n }\n\n // Is the sector collapsed to a line?\n if (!(da1 > epsilon)) context.moveTo(x01, y01);\n\n // Does the sector’s outer ring have rounded corners?\n else if (rc1 > epsilon) {\n t0 = cornerTangents(x00, y00, x01, y01, r1, rc1, cw);\n t1 = cornerTangents(x11, y11, x10, y10, r1, rc1, cw);\n\n context.moveTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc1 < rc) context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r1, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), !cw);\n context.arc(t1.cx, t1.cy, rc1, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the outer ring just a circular arc?\n else context.moveTo(x01, y01), context.arc(0, 0, r1, a01, a11, !cw);\n\n // Is there no inner ring, and it’s a circular sector?\n // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(r0 > epsilon) || !(da0 > epsilon)) context.lineTo(x10, y10);\n\n // Does the sector’s inner ring (or point) have rounded corners?\n else if (rc0 > epsilon) {\n t0 = cornerTangents(x10, y10, x11, y11, r0, -rc0, cw);\n t1 = cornerTangents(x01, y01, x00, y00, r0, -rc0, cw);\n\n context.lineTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc0 < rc) context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r0, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), cw);\n context.arc(t1.cx, t1.cy, rc0, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the inner ring just a circular arc?\n else context.arc(0, 0, r0, a10, a00, cw);\n }\n\n context.closePath();\n\n if (buffer) return context = null, buffer + \"\" || null;\n }\n\n arc.centroid = function() {\n var r = (+innerRadius.apply(this, arguments) + +outerRadius.apply(this, arguments)) / 2,\n a = (+startAngle.apply(this, arguments) + +endAngle.apply(this, arguments)) / 2 - pi / 2;\n return [cos(a) * r, sin(a) * r];\n };\n\n arc.innerRadius = function(_) {\n return arguments.length ? (innerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : innerRadius;\n };\n\n arc.outerRadius = function(_) {\n return arguments.length ? (outerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : outerRadius;\n };\n\n arc.cornerRadius = function(_) {\n return arguments.length ? (cornerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : cornerRadius;\n };\n\n arc.padRadius = function(_) {\n return arguments.length ? (padRadius = _ == null ? null : typeof _ === \"function\" ? _ : constant(+_), arc) : padRadius;\n };\n\n arc.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : startAngle;\n };\n\n arc.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : endAngle;\n };\n\n arc.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : padAngle;\n };\n\n arc.context = function(_) {\n return arguments.length ? ((context = _ == null ? null : _), arc) : context;\n };\n\n return arc;\n}\n"],"names":["arcInnerRadius","d","arcOuterRadius","arcStartAngle","arcEndAngle","arcPadAngle","intersect","x0","y0","x1","y1","x2","y2","x3","y3","x10","y10","x32","y32","t","epsilon","cornerTangents","r1","rc","cw","x01","y01","lo","sqrt","ox","oy","x11","y11","x00","y00","dx","dy","d2","r","D","max","cx0","cy0","cx1","cy1","dx0","dy0","dx1","dy1","d3arc","innerRadius","outerRadius","cornerRadius","constant","padRadius","startAngle","endAngle","padAngle","context","path","withPath","arc","buffer","r0","a0","halfPi","a1","da","abs","tau","cos","sin","a01","a11","a00","a10","da0","da1","ap","rp","min","rc0","rc1","t0","t1","p0","asin","p1","oc","pi","ax","ay","bx","by","kc","acos","lc","atan2","a","_"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"arc-ClKVG6mD.js","sources":["../../../node_modules/d3-shape/src/arc.js"],"sourcesContent":["import constant from \"./constant.js\";\nimport {abs, acos, asin, atan2, cos, epsilon, halfPi, max, min, pi, sin, sqrt, tau} from \"./math.js\";\nimport {withPath} from \"./path.js\";\n\nfunction arcInnerRadius(d) {\n return d.innerRadius;\n}\n\nfunction arcOuterRadius(d) {\n return d.outerRadius;\n}\n\nfunction arcStartAngle(d) {\n return d.startAngle;\n}\n\nfunction arcEndAngle(d) {\n return d.endAngle;\n}\n\nfunction arcPadAngle(d) {\n return d && d.padAngle; // Note: optional!\n}\n\nfunction intersect(x0, y0, x1, y1, x2, y2, x3, y3) {\n var x10 = x1 - x0, y10 = y1 - y0,\n x32 = x3 - x2, y32 = y3 - y2,\n t = y32 * x10 - x32 * y10;\n if (t * t < epsilon) return;\n t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t;\n return [x0 + t * x10, y0 + t * y10];\n}\n\n// Compute perpendicular offset line of length rc.\n// http://mathworld.wolfram.com/Circle-LineIntersection.html\nfunction cornerTangents(x0, y0, x1, y1, r1, rc, cw) {\n var x01 = x0 - x1,\n y01 = y0 - y1,\n lo = (cw ? rc : -rc) / sqrt(x01 * x01 + y01 * y01),\n ox = lo * y01,\n oy = -lo * x01,\n x11 = x0 + ox,\n y11 = y0 + oy,\n x10 = x1 + ox,\n y10 = y1 + oy,\n x00 = (x11 + x10) / 2,\n y00 = (y11 + y10) / 2,\n dx = x10 - x11,\n dy = y10 - y11,\n d2 = dx * dx + dy * dy,\n r = r1 - rc,\n D = x11 * y10 - x10 * y11,\n d = (dy < 0 ? -1 : 1) * sqrt(max(0, r * r * d2 - D * D)),\n cx0 = (D * dy - dx * d) / d2,\n cy0 = (-D * dx - dy * d) / d2,\n cx1 = (D * dy + dx * d) / d2,\n cy1 = (-D * dx + dy * d) / d2,\n dx0 = cx0 - x00,\n dy0 = cy0 - y00,\n dx1 = cx1 - x00,\n dy1 = cy1 - y00;\n\n // Pick the closer of the two intersection points.\n // TODO Is there a faster way to determine which intersection to use?\n if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) cx0 = cx1, cy0 = cy1;\n\n return {\n cx: cx0,\n cy: cy0,\n x01: -ox,\n y01: -oy,\n x11: cx0 * (r1 / r - 1),\n y11: cy0 * (r1 / r - 1)\n };\n}\n\nexport default function() {\n var innerRadius = arcInnerRadius,\n outerRadius = arcOuterRadius,\n cornerRadius = constant(0),\n padRadius = null,\n startAngle = arcStartAngle,\n endAngle = arcEndAngle,\n padAngle = arcPadAngle,\n context = null,\n path = withPath(arc);\n\n function arc() {\n var buffer,\n r,\n r0 = +innerRadius.apply(this, arguments),\n r1 = +outerRadius.apply(this, arguments),\n a0 = startAngle.apply(this, arguments) - halfPi,\n a1 = endAngle.apply(this, arguments) - halfPi,\n da = abs(a1 - a0),\n cw = a1 > a0;\n\n if (!context) context = buffer = path();\n\n // Ensure that the outer radius is always larger than the inner radius.\n if (r1 < r0) r = r1, r1 = r0, r0 = r;\n\n // Is it a point?\n if (!(r1 > epsilon)) context.moveTo(0, 0);\n\n // Or is it a circle or annulus?\n else if (da > tau - epsilon) {\n context.moveTo(r1 * cos(a0), r1 * sin(a0));\n context.arc(0, 0, r1, a0, a1, !cw);\n if (r0 > epsilon) {\n context.moveTo(r0 * cos(a1), r0 * sin(a1));\n context.arc(0, 0, r0, a1, a0, cw);\n }\n }\n\n // Or is it a circular or annular sector?\n else {\n var a01 = a0,\n a11 = a1,\n a00 = a0,\n a10 = a1,\n da0 = da,\n da1 = da,\n ap = padAngle.apply(this, arguments) / 2,\n rp = (ap > epsilon) && (padRadius ? +padRadius.apply(this, arguments) : sqrt(r0 * r0 + r1 * r1)),\n rc = min(abs(r1 - r0) / 2, +cornerRadius.apply(this, arguments)),\n rc0 = rc,\n rc1 = rc,\n t0,\n t1;\n\n // Apply padding? Note that since r1 ≥ r0, da1 ≥ da0.\n if (rp > epsilon) {\n var p0 = asin(rp / r0 * sin(ap)),\n p1 = asin(rp / r1 * sin(ap));\n if ((da0 -= p0 * 2) > epsilon) p0 *= (cw ? 1 : -1), a00 += p0, a10 -= p0;\n else da0 = 0, a00 = a10 = (a0 + a1) / 2;\n if ((da1 -= p1 * 2) > epsilon) p1 *= (cw ? 1 : -1), a01 += p1, a11 -= p1;\n else da1 = 0, a01 = a11 = (a0 + a1) / 2;\n }\n\n var x01 = r1 * cos(a01),\n y01 = r1 * sin(a01),\n x10 = r0 * cos(a10),\n y10 = r0 * sin(a10);\n\n // Apply rounded corners?\n if (rc > epsilon) {\n var x11 = r1 * cos(a11),\n y11 = r1 * sin(a11),\n x00 = r0 * cos(a00),\n y00 = r0 * sin(a00),\n oc;\n\n // Restrict the corner radius according to the sector angle. If this\n // intersection fails, it’s probably because the arc is too small, so\n // disable the corner radius entirely.\n if (da < pi) {\n if (oc = intersect(x01, y01, x00, y00, x11, y11, x10, y10)) {\n var ax = x01 - oc[0],\n ay = y01 - oc[1],\n bx = x11 - oc[0],\n by = y11 - oc[1],\n kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2),\n lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n rc0 = min(rc, (r0 - lc) / (kc - 1));\n rc1 = min(rc, (r1 - lc) / (kc + 1));\n } else {\n rc0 = rc1 = 0;\n }\n }\n }\n\n // Is the sector collapsed to a line?\n if (!(da1 > epsilon)) context.moveTo(x01, y01);\n\n // Does the sector’s outer ring have rounded corners?\n else if (rc1 > epsilon) {\n t0 = cornerTangents(x00, y00, x01, y01, r1, rc1, cw);\n t1 = cornerTangents(x11, y11, x10, y10, r1, rc1, cw);\n\n context.moveTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc1 < rc) context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r1, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), !cw);\n context.arc(t1.cx, t1.cy, rc1, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the outer ring just a circular arc?\n else context.moveTo(x01, y01), context.arc(0, 0, r1, a01, a11, !cw);\n\n // Is there no inner ring, and it’s a circular sector?\n // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(r0 > epsilon) || !(da0 > epsilon)) context.lineTo(x10, y10);\n\n // Does the sector’s inner ring (or point) have rounded corners?\n else if (rc0 > epsilon) {\n t0 = cornerTangents(x10, y10, x11, y11, r0, -rc0, cw);\n t1 = cornerTangents(x01, y01, x00, y00, r0, -rc0, cw);\n\n context.lineTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc0 < rc) context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r0, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), cw);\n context.arc(t1.cx, t1.cy, rc0, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the inner ring just a circular arc?\n else context.arc(0, 0, r0, a10, a00, cw);\n }\n\n context.closePath();\n\n if (buffer) return context = null, buffer + \"\" || null;\n }\n\n arc.centroid = function() {\n var r = (+innerRadius.apply(this, arguments) + +outerRadius.apply(this, arguments)) / 2,\n a = (+startAngle.apply(this, arguments) + +endAngle.apply(this, arguments)) / 2 - pi / 2;\n return [cos(a) * r, sin(a) * r];\n };\n\n arc.innerRadius = function(_) {\n return arguments.length ? (innerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : innerRadius;\n };\n\n arc.outerRadius = function(_) {\n return arguments.length ? (outerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : outerRadius;\n };\n\n arc.cornerRadius = function(_) {\n return arguments.length ? (cornerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : cornerRadius;\n };\n\n arc.padRadius = function(_) {\n return arguments.length ? (padRadius = _ == null ? null : typeof _ === \"function\" ? _ : constant(+_), arc) : padRadius;\n };\n\n arc.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : startAngle;\n };\n\n arc.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : endAngle;\n };\n\n arc.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : padAngle;\n };\n\n arc.context = function(_) {\n return arguments.length ? ((context = _ == null ? null : _), arc) : context;\n };\n\n return arc;\n}\n"],"names":["arcInnerRadius","d","arcOuterRadius","arcStartAngle","arcEndAngle","arcPadAngle","intersect","x0","y0","x1","y1","x2","y2","x3","y3","x10","y10","x32","y32","t","epsilon","cornerTangents","r1","rc","cw","x01","y01","lo","sqrt","ox","oy","x11","y11","x00","y00","dx","dy","d2","r","D","max","cx0","cy0","cx1","cy1","dx0","dy0","dx1","dy1","d3arc","innerRadius","outerRadius","cornerRadius","constant","padRadius","startAngle","endAngle","padAngle","context","path","withPath","arc","buffer","r0","a0","halfPi","a1","da","abs","tau","cos","sin","a01","a11","a00","a10","da0","da1","ap","rp","min","rc0","rc1","t0","t1","p0","asin","p1","oc","pi","ax","ay","bx","by","kc","acos","lc","atan2","a","_"],"mappings":"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","x_google_ignoreList":[0]}
|