diff --git a/.gitignore b/.gitignore index c1a4033..4869057 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ node_modules/ # build /_site/ dist/ +locales/ /out-tsc/ storybook-static diff --git a/.hc b/.hc index b343bff..e9148e1 100644 --- a/.hc +++ b/.hc @@ -1,2 +1,2 @@ -/tmp/nix-shell.ayRWOt/FX-qP-RtAib9erAFX4HMu -/tmp/nix-shell.ayRWOt/t_hrYaC6K-Zm4ZoViJZOY +/tmp/nix-shell.WCwQn7/IKc60dAAk_gFMwjSyMx_r +/tmp/nix-shell.WCwQn7/Xj3MUswJPdYn84Grjv33c diff --git a/flake.lock b/flake.lock index dde04c5..ad8619f 100644 --- a/flake.lock +++ b/flake.lock @@ -224,11 +224,11 @@ ] }, "locked": { - "lastModified": 1698840699, - "narHash": "sha256-/aBA26N7wrM+fylVJOroJ4rbA5tp/CS6x5MsN/zlSkM=", + "lastModified": 1699425244, + "narHash": "sha256-nQkJiwgO0WpPoVEngnEzgMbMxxz0YeOZzfgvjCvnmVM=", "owner": "holochain", "repo": "holochain", - "rev": "cd7188fafb541c778022f6d50ff4ad4704f34e42", + "rev": "5f8aecdff743313675522a12fd66fb195c03d282", "type": "github" }, "original": { @@ -246,11 +246,11 @@ }, "locked": { "dir": "versions/0_2", - "lastModified": 1698840699, - "narHash": "sha256-/aBA26N7wrM+fylVJOroJ4rbA5tp/CS6x5MsN/zlSkM=", + "lastModified": 1699464531, + "narHash": "sha256-cYelIGio2Nych9Ph7KeVZ/VDbYS247leWEPVDwr7zbg=", "owner": "holochain", "repo": "holochain", - "rev": "cd7188fafb541c778022f6d50ff4ad4704f34e42", + "rev": "7d0238324809639e5fbf440822ea31b705fe7c28", "type": "github" }, "original": { @@ -311,11 +311,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1698611440, - "narHash": "sha256-jPjHjrerhYDy3q9+s5EAsuhyhuknNfowY6yt6pjn9pc=", + "lastModified": 1699099776, + "narHash": "sha256-X09iKJ27mGsGambGfkKzqvw5esP1L/Rf8H3u3fCqIiU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0cbe9f69c234a7700596e943bfae7ef27a31b735", + "rev": "85f1ba3e51676fa8cc604a3d863d729026a6b8eb", "type": "github" }, "original": { @@ -420,11 +420,11 @@ ] }, "locked": { - "lastModified": 1698804896, - "narHash": "sha256-vSms7A9bWHC00343qyXuNVm65LZDagDkukpkpwC2VxY=", + "lastModified": 1699409596, + "narHash": "sha256-L3g1smIol3dGTxkUQOlNShJtZLvjLzvtbaeTRizwZBU=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "c5f8326c668b78275eccce90839861a3c8e1d3b2", + "rev": "58240e1ac627cef3ea30c7732fedfb4f51afd8e7", "type": "github" }, "original": { diff --git a/package-lock.json b/package-lock.json index 4bfa2c8..aa86e33 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,6 +36,14 @@ "node": ">=0.10.0" } }, + "node_modules/@alenaksu/json-viewer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@alenaksu/json-viewer/-/json-viewer-2.0.1.tgz", + "integrity": "sha512-M6rN1bcuSGfar6ND9fFASBkez0UcWOUxMiwm2i9jlPBrpjOHOz0/utMgZhfrsgfyFPZ1H1gzfU8auJkYO1mq/g==", + "dependencies": { + "lit": "^2.3.1" + } + }, "node_modules/@ampproject/remapping": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", @@ -2735,60 +2743,251 @@ "link": true }, "node_modules/@holochain-open-dev/elements": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@holochain-open-dev/elements/-/elements-0.7.0.tgz", - "integrity": "sha512-IW9mRlLywGTrT2v0SreQ/a32b3yqNIxEc+I+87++1BlvFAgohBVvo63/ot2c6/fEWx3Ot6pYn/7CqN5v3nf7lQ==", + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/@holochain-open-dev/elements/-/elements-0.8.2.tgz", + "integrity": "sha512-lGNw/PfkLV17vTHxyUhu8sU6+Po4c6+vMk2HeoVwO1Vezbr1088L3YUPUNd6sYvv3GkVCh0ssvKb7kLsxh4KRg==", "dependencies": { "@holo-host/identicon": "^0.1.0", + "@holochain-open-dev/stores": "^0.7.12", "@holochain/client": "^0.16.0", - "@lit/localize": "^0.11.4", + "@lit/localize": "^0.12.0", "@mdi/js": "^7.1.96", - "@shoelace-style/shoelace": "^2.3.0", - "lit": "^2.6.1", + "@shoelace-style/shoelace": "^2.11.0", + "lit": "^3.0.2", "prosemirror-commands": "^1.5.2", "prosemirror-keymap": "^1.2.2", "prosemirror-state": "^1.4.3", "prosemirror-view": "^1.31.3" } }, + "node_modules/@holochain-open-dev/elements/node_modules/@lit/localize": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@lit/localize/-/localize-0.12.1.tgz", + "integrity": "sha512-uuF6OO6fjqomCf3jXsJ5cTGf1APYuN88S4Gvo/fjt9YkG4OMaMvpEUqd5oWhyzrJfY+HcenAbLJNi2Cq3H7gdg==", + "dependencies": { + "lit": "^2.0.0 || ^3.0.0" + } + }, + "node_modules/@holochain-open-dev/elements/node_modules/@lit/reactive-element": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.1.tgz", + "integrity": "sha512-eu50SQXHRthFwWJMp0oAFg95Rvm6MTPjxSXWuvAu7It90WVFLFpNBoIno7XOXSDvVgTrtKnUV4OLJqys2Svn4g==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2" + } + }, + "node_modules/@holochain-open-dev/elements/node_modules/lit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit/-/lit-3.0.2.tgz", + "integrity": "sha512-ZoVUPGgXOQocP4OvxehEOBmC4rWB4cRYDPaz7aFmH8DFytsCi/NeACbr4C6vNPGDEC07BrhUos7uVNayDKLQ2Q==", + "dependencies": { + "@lit/reactive-element": "^2.0.0", + "lit-element": "^4.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@holochain-open-dev/elements/node_modules/lit-element": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.1.tgz", + "integrity": "sha512-OxRMJem4HKZt0320HplLkBPoi4KHiEHoPHKd8Lzf07ZQVAOKIjZ32yPLRKRDEolFU1RgrQBfSHQMoxKZ72V3Kw==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2", + "@lit/reactive-element": "^2.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@holochain-open-dev/elements/node_modules/lit-html": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.0.2.tgz", + "integrity": "sha512-Q1A5lHza3bnmxoWJn6yS6vQZQdExl4fghk8W1G+jnAEdoFNYo5oeBBb/Ol7zSEdKd3TR7+r0zsJQyuWEVguiyQ==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, "node_modules/@holochain-open-dev/profiles": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/@holochain-open-dev/profiles/-/profiles-0.16.1.tgz", - "integrity": "sha512-tLGxH7dLOiwlw+ViIHJ2cls08/TbnbIgPyd8WjOQCAvY0a/bZSMe7aykZsj75OQDFziANpPLNgsUdLnmPFadfg==", + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@holochain-open-dev/profiles/-/profiles-0.17.0.tgz", + "integrity": "sha512-4AFHxi/vTvfX2zGN7xO7rUKT6r8rBqBsb7KWt0X7PRJVqiihceQpQdPu1XYAhXvHdeOOwhr0VxIlpqDAlsPvYA==", "dependencies": { - "@holochain-open-dev/elements": "^0.7.0", - "@holochain-open-dev/stores": "^0.6.0", - "@holochain-open-dev/utils": "^0.15.0", + "@holochain-open-dev/elements": "^0.8.0", + "@holochain-open-dev/stores": "^0.7.12", + "@holochain-open-dev/utils": "^0.16.2", "@holochain/client": "^0.16.0", - "@lit-labs/context": "^0.2.0", - "@lit/localize": "^0.11.2", + "@lit/context": "^1.0.1", + "@lit/localize": "^0.12.0", "@mdi/js": "^7.1.96", - "@shoelace-style/shoelace": "^2.3.0" + "@shoelace-style/shoelace": "^2.11.0", + "lit": "^3.0.2" } }, - "node_modules/@holochain-open-dev/profiles/node_modules/@holochain-open-dev/stores": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@holochain-open-dev/stores/-/stores-0.6.0.tgz", - "integrity": "sha512-/j+VAym4/vjQA2ezbnQnvfkHRAVDU9CaLt4JalDskIKBlapEQaUmlPLCo2iyzrZ0pfQLQpuwOXVlVtOMN7MYcw==", + "node_modules/@holochain-open-dev/profiles/node_modules/@holochain-open-dev/utils": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@holochain-open-dev/utils/-/utils-0.16.2.tgz", + "integrity": "sha512-JuqWHUY0vRC11IaMeQIVWWwkncTRk7xWrokZ5ES5cKwCMfgUwnwcHlQz6W/hek9YtEguOGsupd0IqRAXNW+5ng==", "dependencies": { - "@holochain-open-dev/utils": "^0.15.0", - "@holochain/client": "^0.16.0", - "lit-svelte-stores": "^0.2.1", - "svelte": "^3.53.1" + "@holochain/client": "^0.16.2", + "@msgpack/msgpack": "^2.7.2", + "blakejs": "^1.2.1", + "emittery": "^1.0.1", + "lodash-es": "^4.17.21", + "sort-keys": "^5.0.0" + } + }, + "node_modules/@holochain-open-dev/profiles/node_modules/@lit/localize": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@lit/localize/-/localize-0.12.1.tgz", + "integrity": "sha512-uuF6OO6fjqomCf3jXsJ5cTGf1APYuN88S4Gvo/fjt9YkG4OMaMvpEUqd5oWhyzrJfY+HcenAbLJNi2Cq3H7gdg==", + "dependencies": { + "lit": "^2.0.0 || ^3.0.0" + } + }, + "node_modules/@holochain-open-dev/profiles/node_modules/@lit/reactive-element": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.1.tgz", + "integrity": "sha512-eu50SQXHRthFwWJMp0oAFg95Rvm6MTPjxSXWuvAu7It90WVFLFpNBoIno7XOXSDvVgTrtKnUV4OLJqys2Svn4g==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2" + } + }, + "node_modules/@holochain-open-dev/profiles/node_modules/lit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit/-/lit-3.0.2.tgz", + "integrity": "sha512-ZoVUPGgXOQocP4OvxehEOBmC4rWB4cRYDPaz7aFmH8DFytsCi/NeACbr4C6vNPGDEC07BrhUos7uVNayDKLQ2Q==", + "dependencies": { + "@lit/reactive-element": "^2.0.0", + "lit-element": "^4.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@holochain-open-dev/profiles/node_modules/lit-element": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.1.tgz", + "integrity": "sha512-OxRMJem4HKZt0320HplLkBPoi4KHiEHoPHKd8Lzf07ZQVAOKIjZ32yPLRKRDEolFU1RgrQBfSHQMoxKZ72V3Kw==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2", + "@lit/reactive-element": "^2.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@holochain-open-dev/profiles/node_modules/lit-html": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.0.2.tgz", + "integrity": "sha512-Q1A5lHza3bnmxoWJn6yS6vQZQdExl4fghk8W1G+jnAEdoFNYo5oeBBb/Ol7zSEdKd3TR7+r0zsJQyuWEVguiyQ==", + "dependencies": { + "@types/trusted-types": "^2.0.2" } }, "node_modules/@holochain-open-dev/stores": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@holochain-open-dev/stores/-/stores-0.7.3.tgz", - "integrity": "sha512-+O5knB/hD+ojAd3NYVeeXHHNXa7NvOT1Mit07J7jj6czhODPhF0Sv5PGihsu0p+a+n9d+yUSwfOGlVHajrHf4Q==", + "version": "0.7.12", + "resolved": "https://registry.npmjs.org/@holochain-open-dev/stores/-/stores-0.7.12.tgz", + "integrity": "sha512-bAgyIIsY/xXFaWp6PxciHJImESJtlOczD3n83VFagIZbEfCeKR5gSTKrgdHP+4re+bt/c2cKTSRMkmpSUUMGjQ==", "dependencies": { - "@holochain-open-dev/utils": "^0.15.0", + "@alenaksu/json-viewer": "^2.0.1", + "@holochain-open-dev/utils": "^0.16.2", "@holochain/client": "^0.16.0", - "console-log-tree": "^1.2.1", - "lit-svelte-stores": "^0.2.1", + "@scoped-elements/cytoscape": "^0.2.0", + "@shoelace-style/shoelace": "^2.11.2", + "lit": "^3.0.2", + "lit-svelte-stores": "^0.3.0", "svelte": "^3.53.1" } }, + "node_modules/@holochain-open-dev/stores/node_modules/@holochain-open-dev/utils": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@holochain-open-dev/utils/-/utils-0.16.2.tgz", + "integrity": "sha512-JuqWHUY0vRC11IaMeQIVWWwkncTRk7xWrokZ5ES5cKwCMfgUwnwcHlQz6W/hek9YtEguOGsupd0IqRAXNW+5ng==", + "dependencies": { + "@holochain/client": "^0.16.2", + "@msgpack/msgpack": "^2.7.2", + "blakejs": "^1.2.1", + "emittery": "^1.0.1", + "lodash-es": "^4.17.21", + "sort-keys": "^5.0.0" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/@lit/reactive-element": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.1.tgz", + "integrity": "sha512-eu50SQXHRthFwWJMp0oAFg95Rvm6MTPjxSXWuvAu7It90WVFLFpNBoIno7XOXSDvVgTrtKnUV4OLJqys2Svn4g==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit/-/lit-3.0.2.tgz", + "integrity": "sha512-ZoVUPGgXOQocP4OvxehEOBmC4rWB4cRYDPaz7aFmH8DFytsCi/NeACbr4C6vNPGDEC07BrhUos7uVNayDKLQ2Q==", + "dependencies": { + "@lit/reactive-element": "^2.0.0", + "lit-element": "^4.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-element": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.1.tgz", + "integrity": "sha512-OxRMJem4HKZt0320HplLkBPoi4KHiEHoPHKd8Lzf07ZQVAOKIjZ32yPLRKRDEolFU1RgrQBfSHQMoxKZ72V3Kw==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2", + "@lit/reactive-element": "^2.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-html": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.0.2.tgz", + "integrity": "sha512-Q1A5lHza3bnmxoWJn6yS6vQZQdExl4fghk8W1G+jnAEdoFNYo5oeBBb/Ol7zSEdKd3TR7+r0zsJQyuWEVguiyQ==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-svelte-stores": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/lit-svelte-stores/-/lit-svelte-stores-0.3.0.tgz", + "integrity": "sha512-B7KbLYb+lFiYOz6/i+Xm1jkp9JF+9jT9ch9Vcs+9F5jsmHdOgocUhs0jblcSH8PE8WIuI8j1oHgonUVmeIHbDw==", + "dependencies": { + "@lit-labs/task": "^1.1.2", + "lit": "^2.0.0", + "lodash-es": "^4.17.21", + "svelte": "^3.38.3" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-svelte-stores/node_modules/@lit/reactive-element": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.3.tgz", + "integrity": "sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.0.0" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-svelte-stores/node_modules/lit": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.8.0.tgz", + "integrity": "sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==", + "dependencies": { + "@lit/reactive-element": "^1.6.0", + "lit-element": "^3.3.0", + "lit-html": "^2.8.0" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-svelte-stores/node_modules/lit-element": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.3.tgz", + "integrity": "sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.0", + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.8.0" + } + }, + "node_modules/@holochain-open-dev/stores/node_modules/lit-svelte-stores/node_modules/lit-html": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.8.0.tgz", + "integrity": "sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, "node_modules/@holochain-open-dev/utils": { "version": "0.15.2", "resolved": "https://registry.npmjs.org/@holochain-open-dev/utils/-/utils-0.15.2.tgz", @@ -3130,23 +3329,6 @@ "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==", "dev": true }, - "node_modules/@lit-labs/context": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@lit-labs/context/-/context-0.2.0.tgz", - "integrity": "sha512-WU01ysdm+6LwLeFRD9PirdbE1OYefL2ZKFZcpOLMJulaQDYqeqZtOUfccO63CTuLrQkG61VGiVycMoHFqgXx8A==", - "dependencies": { - "@lit/reactive-element": "^1.5.0", - "lit": "^2.5.0" - } - }, - "node_modules/@lit-labs/react": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@lit-labs/react/-/react-2.1.1.tgz", - "integrity": "sha512-wr15ZOCZ7t2yB8UEfQ6oSRCmfxpIjhzDkN8DlgSOwsbJzWQTk8hxHRLy7Rra6mxrIajqvrMWQB2VskUU2uuoRA==", - "dependencies": { - "@lit/react": "1.0.0" - } - }, "node_modules/@lit-labs/ssr-dom-shim": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.2.tgz", @@ -3160,10 +3342,19 @@ "@lit/reactive-element": "^1.1.0" } }, + "node_modules/@lit/context": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@lit/context/-/context-1.0.1.tgz", + "integrity": "sha512-ujQEV42vRjhNzCu/YNc+dy8eq48cEYO2SvEl7iCmMzt8X7ixUYcDt8DPV1UBr58FJ7EUe9vTLPv/0soAi9bfRw==", + "dependencies": { + "@lit/reactive-element": "^1.6.2 || ^2.0.0" + } + }, "node_modules/@lit/localize": { "version": "0.11.4", "resolved": "https://registry.npmjs.org/@lit/localize/-/localize-0.11.4.tgz", "integrity": "sha512-RRIwIX2tAm3+DuEndoXSJrFjGrAK5cb5IXo5K6jcJ6sbgD829B8rSqHC5MaKVUmXTVLIR1bk5IZOZDf9wFereA==", + "dev": true, "dependencies": { "@lit/reactive-element": "^1.4.0", "lit": "^2.3.0" @@ -3219,9 +3410,9 @@ } }, "node_modules/@lit/react": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@lit/react/-/react-1.0.0.tgz", - "integrity": "sha512-uTuU6vpxtZvCWxcu3GNosckP2JpFWZpMKjhwQ42Bzu/OU9kjStJspA04o7RadecQfx0YiFIImX3qek15BXhaWQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@lit/react/-/react-1.0.1.tgz", + "integrity": "sha512-io4yIAl9ZFY5coI2ix+nSly4rmEKLFyZM66mxOr9xvxDqwtjdVU/g6Tchb7bo+A23+5Uu/1RZpLCpvHLCGi0rw==", "peerDependencies": { "@types/react": "17 || 18" } @@ -3320,6 +3511,11 @@ "node": ">= 8" } }, + "node_modules/@open-wc/dedupe-mixin": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@open-wc/dedupe-mixin/-/dedupe-mixin-1.4.0.tgz", + "integrity": "sha512-Sj7gKl1TLcDbF7B6KUhtvr+1UCxdhMbNY5KxdU5IfMFWqL8oy1ZeAcCANjoB1TL0AJTcPmcCFsCbHf8X2jGDUA==" + }, "node_modules/@open-wc/eslint-config": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/@open-wc/eslint-config/-/eslint-config-4.3.0.tgz", @@ -3345,6 +3541,15 @@ "eslint-plugin-wc": "^1.2.0" } }, + "node_modules/@open-wc/scoped-elements": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@open-wc/scoped-elements/-/scoped-elements-2.2.4.tgz", + "integrity": "sha512-12X4F4QGPWcvPbxAiJ4v8wQFCOu+laZHRGfTrkoj+3JzACCtuxHG49YbuqVzQ135QPKCuhP9wA0kpGGEfUegyg==", + "dependencies": { + "@lit/reactive-element": "^1.0.0 || ^2.0.0", + "@open-wc/dedupe-mixin": "^1.4.0" + } + }, "node_modules/@parse5/tools": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@parse5/tools/-/tools-0.3.0.tgz", @@ -4027,6 +4232,22 @@ "@babel/runtime": "^7.13.10" } }, + "node_modules/@scoped-elements/cytoscape": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@scoped-elements/cytoscape/-/cytoscape-0.2.0.tgz", + "integrity": "sha512-HrC7Pc1SCIHrDTUE883ArvljUENH9FW9qxRwzeXF8LxW5OP2+SaNJSSBaoPztmI15YHOL0aN7uuG9ozRn0EHpA==", + "dependencies": { + "@open-wc/scoped-elements": "^2.0.1", + "@types/cytoscape": "^3.19.0", + "cytoscape": "^3.20.0", + "cytoscape-cola": "^2.5.0", + "cytoscape-cose-bilkent": "^4.1.0", + "cytoscape-dagre": "^2.3.2", + "cytoscape-klay": "^3.1.4", + "lit": "^2.0.2", + "lodash-es": "^4.17.21" + } + }, "node_modules/@shoelace-style/animations": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@shoelace-style/animations/-/animations-1.1.0.tgz", @@ -4042,17 +4263,17 @@ "integrity": "sha512-Hf45HeO+vdQblabpyZOTxJ4ZeZsmIUYXXPmoYrrR4OJ5OKxL+bhMz5mK8JXgl7HsoEowfz7+e248UGi861de9Q==" }, "node_modules/@shoelace-style/shoelace": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@shoelace-style/shoelace/-/shoelace-2.9.0.tgz", - "integrity": "sha512-nxvDDYlTuACLLBuuR8TmTKiU0mrhzzwnbXbA4lpvaF+Ee5bS/VgKzr0nWrMXT3scpUEu/LPtqfoZcqWqaU/7DQ==", + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/@shoelace-style/shoelace/-/shoelace-2.11.2.tgz", + "integrity": "sha512-V94PTZ3CKcRH7NozDIEK5gMG3yeCZhF/3jCpKZ7Wexpf9kOqIRaMGoW3omq21I8NRefNLEknkV9Q392JIZLjBA==", "dependencies": { - "@ctrl/tinycolor": "^4.0.1", - "@floating-ui/dom": "^1.2.1", - "@lit-labs/react": "^2.0.3", + "@ctrl/tinycolor": "^4.0.2", + "@floating-ui/dom": "^1.5.3", + "@lit/react": "^1.0.0", "@shoelace-style/animations": "^1.1.0", - "@shoelace-style/localize": "^3.1.1", + "@shoelace-style/localize": "^3.1.2", "composed-offset-position": "^0.0.4", - "lit": "^2.7.5", + "lit": "^3.0.0", "qr-creator": "^1.0.0" }, "engines": { @@ -4063,6 +4284,42 @@ "url": "https://github.com/sponsors/claviska" } }, + "node_modules/@shoelace-style/shoelace/node_modules/@lit/reactive-element": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.1.tgz", + "integrity": "sha512-eu50SQXHRthFwWJMp0oAFg95Rvm6MTPjxSXWuvAu7It90WVFLFpNBoIno7XOXSDvVgTrtKnUV4OLJqys2Svn4g==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2" + } + }, + "node_modules/@shoelace-style/shoelace/node_modules/lit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit/-/lit-3.0.2.tgz", + "integrity": "sha512-ZoVUPGgXOQocP4OvxehEOBmC4rWB4cRYDPaz7aFmH8DFytsCi/NeACbr4C6vNPGDEC07BrhUos7uVNayDKLQ2Q==", + "dependencies": { + "@lit/reactive-element": "^2.0.0", + "lit-element": "^4.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@shoelace-style/shoelace/node_modules/lit-element": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.1.tgz", + "integrity": "sha512-OxRMJem4HKZt0320HplLkBPoi4KHiEHoPHKd8Lzf07ZQVAOKIjZ32yPLRKRDEolFU1RgrQBfSHQMoxKZ72V3Kw==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2", + "@lit/reactive-element": "^2.0.0", + "lit-html": "^3.0.0" + } + }, + "node_modules/@shoelace-style/shoelace/node_modules/lit-html": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.0.2.tgz", + "integrity": "sha512-Q1A5lHza3bnmxoWJn6yS6vQZQdExl4fghk8W1G+jnAEdoFNYo5oeBBb/Ol7zSEdKd3TR7+r0zsJQyuWEVguiyQ==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -5821,6 +6078,11 @@ "@types/node": "*" } }, + "node_modules/@types/cytoscape": { + "version": "3.19.15", + "resolved": "https://registry.npmjs.org/@types/cytoscape/-/cytoscape-3.19.15.tgz", + "integrity": "sha512-v1PNoMBzoIrOGZfuU/PFwDEPxfP4GnfVCTrZPx4M2G4EFS7BV/FLCCoVMOzdBG98MJbNBXpx1LCrs8wh0vybEw==" + }, "node_modules/@types/detect-port": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/@types/detect-port/-/detect-port-1.3.3.tgz", @@ -8476,11 +8738,6 @@ "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", "dev": true }, - "node_modules/console-log-tree": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/console-log-tree/-/console-log-tree-1.2.1.tgz", - "integrity": "sha512-qIr67nbaNUfhRoa0uz05Wt8TPA1fpaLdw6EZ1y3dbiHhIJ46Q+ciaJxYPx0MQGHZZKbbH4walRTZZve7WDHBxg==" - }, "node_modules/constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", @@ -8559,6 +8816,14 @@ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, + "node_modules/cose-base": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", + "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", + "dependencies": { + "layout-base": "^1.0.0" + } + }, "node_modules/cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -8708,6 +8973,108 @@ "integrity": "sha512-j59k0ExGCKA8T6Mzaq+7axc+KVHwpEphEERU7VZ99260npu/p/9kd+Db+I3cGKxHkM5y6q5gnlXn00mzRQkX2A==", "dev": true }, + "node_modules/cytoscape": { + "version": "3.27.0", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.27.0.tgz", + "integrity": "sha512-pPZJilfX9BxESwujODz5pydeGi+FBrXq1rcaB1mfhFXXFJ9GjE6CNndAk+8jPzoXGD+16LtSS4xlYEIUiW4Abg==", + "dependencies": { + "heap": "^0.2.6", + "lodash": "^4.17.21" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/cytoscape-cola": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/cytoscape-cola/-/cytoscape-cola-2.5.1.tgz", + "integrity": "sha512-4/2S9bW1LvdsEPmxXN1OEAPFPbk7DvCx2c9d+TblkQAAvptGaSgtPWCByTEGgT8UxCxcVqes2aFPO5pzwo7R2w==", + "dependencies": { + "webcola": "^3.4.0" + }, + "peerDependencies": { + "cytoscape": "^3.2.0" + } + }, + "node_modules/cytoscape-cose-bilkent": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", + "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", + "dependencies": { + "cose-base": "^1.0.0" + }, + "peerDependencies": { + "cytoscape": "^3.2.0" + } + }, + "node_modules/cytoscape-dagre": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/cytoscape-dagre/-/cytoscape-dagre-2.5.0.tgz", + "integrity": "sha512-VG2Knemmshop4kh5fpLO27rYcyUaaDkRw+6PiX4bstpB+QFt0p2oauMrsjVbUamGWQ6YNavh7x2em2uZlzV44g==", + "dependencies": { + "dagre": "^0.8.5" + }, + "peerDependencies": { + "cytoscape": "^3.2.22" + } + }, + "node_modules/cytoscape-klay": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/cytoscape-klay/-/cytoscape-klay-3.1.4.tgz", + "integrity": "sha512-VwPj0VR25GPfy6qXVQRi/MYlZM/zkdvRhHlgqbM//lSvstgM6fhp3ik/uM8Wr8nlhskfqz/M1fIDmR6UckbS2A==", + "dependencies": { + "klayjs": "^0.4.1" + }, + "peerDependencies": { + "cytoscape": "^3.2.0" + } + }, + "node_modules/d3-dispatch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", + "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==" + }, + "node_modules/d3-drag": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.5.tgz", + "integrity": "sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w==", + "dependencies": { + "d3-dispatch": "1", + "d3-selection": "1" + } + }, + "node_modules/d3-path": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" + }, + "node_modules/d3-selection": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.2.tgz", + "integrity": "sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg==" + }, + "node_modules/d3-shape": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", + "dependencies": { + "d3-path": "1" + } + }, + "node_modules/d3-timer": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" + }, + "node_modules/dagre": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", + "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", + "dependencies": { + "graphlib": "^2.1.8", + "lodash": "^4.17.15" + } + }, "node_modules/date-fns": { "version": "2.30.0", "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", @@ -11156,6 +11523,14 @@ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, + "node_modules/graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "dependencies": { + "lodash": "^4.17.15" + } + }, "node_modules/gunzip-maybe": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.2.tgz", @@ -11281,6 +11656,11 @@ "he": "bin/he" } }, + "node_modules/heap": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", + "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" + }, "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -12389,6 +12769,11 @@ "node": ">=0.10.0" } }, + "node_modules/klayjs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/klayjs/-/klayjs-0.4.1.tgz", + "integrity": "sha512-WUNxuO7O79TEkxCj6OIaK5TJBkaWaR/IKNTakgV9PwDn+mrr63MLHed34AcE2yTaDntgO6l0zGFIzhcoTeroTA==" + }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -12403,6 +12788,11 @@ "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" }, + "node_modules/layout-base": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", + "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==" + }, "node_modules/lazy-universal-dotenv": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/lazy-universal-dotenv/-/lazy-universal-dotenv-4.0.0.tgz", @@ -12486,17 +12876,6 @@ "@types/trusted-types": "^2.0.2" } }, - "node_modules/lit-svelte-stores": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/lit-svelte-stores/-/lit-svelte-stores-0.2.5.tgz", - "integrity": "sha512-Ny8GtvQB1/fiJwC41CsnNYSO2P/I0Lyd9mCxqSanGBE9EWI1fD2qg1tADN8Vz8hX1plO1q0ZODyHdUf90/ADjg==", - "dependencies": { - "@lit-labs/task": "^1.1.2", - "lit": "^2.0.0", - "lodash-es": "^4.17.21", - "svelte": "^3.38.3" - } - }, "node_modules/loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -17147,6 +17526,17 @@ "defaults": "^1.0.3" } }, + "node_modules/webcola": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/webcola/-/webcola-3.4.0.tgz", + "integrity": "sha512-4BiLXjXw3SJHo3Xd+rF+7fyClT6n7I+AR6TkBqyQ4kTsePSAMDLRCXY1f3B/kXJeP9tYn4G1TblxTO+jAt0gaw==", + "dependencies": { + "d3-dispatch": "^1.0.3", + "d3-drag": "^1.0.4", + "d3-shape": "^1.3.5", + "d3-timer": "^1.0.5" + } + }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -17687,19 +18077,19 @@ }, "ui": { "name": "@holochain-open-dev/cancellations", - "version": "0.1.1", + "version": "0.1.3", "dependencies": { - "@holochain-open-dev/elements": "^0.7.0", - "@holochain-open-dev/profiles": "^0.16.1", - "@holochain-open-dev/stores": "^0.7.2", - "@holochain-open-dev/utils": "^0.15.0", + "@holochain-open-dev/elements": "^0.8.2", + "@holochain-open-dev/profiles": "^0.17.0", + "@holochain-open-dev/stores": "^0.7.11", + "@holochain-open-dev/utils": "^0.16.2", "@holochain/client": "^0.16.0", - "@lit-labs/context": "^0.2.0", - "@lit/localize": "^0.11.4", + "@lit/context": "^1.0.0", + "@lit/localize": "^0.12.0", "@mdi/js": "^7.2.0", "@msgpack/msgpack": "^2.7.2", - "@shoelace-style/shoelace": "^2.3.0", - "lit": "^2.6.1" + "@shoelace-style/shoelace": "^2.11.0", + "lit": "^3.0.0" }, "devDependencies": { "@custom-elements-manifest/analyzer": "^0.5.7", @@ -17717,6 +18107,63 @@ "vite-plugin-checker": "^0.5.3" } }, + "ui/node_modules/@holochain-open-dev/utils": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@holochain-open-dev/utils/-/utils-0.16.2.tgz", + "integrity": "sha512-JuqWHUY0vRC11IaMeQIVWWwkncTRk7xWrokZ5ES5cKwCMfgUwnwcHlQz6W/hek9YtEguOGsupd0IqRAXNW+5ng==", + "dependencies": { + "@holochain/client": "^0.16.2", + "@msgpack/msgpack": "^2.7.2", + "blakejs": "^1.2.1", + "emittery": "^1.0.1", + "lodash-es": "^4.17.21", + "sort-keys": "^5.0.0" + } + }, + "ui/node_modules/@lit/localize": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@lit/localize/-/localize-0.12.1.tgz", + "integrity": "sha512-uuF6OO6fjqomCf3jXsJ5cTGf1APYuN88S4Gvo/fjt9YkG4OMaMvpEUqd5oWhyzrJfY+HcenAbLJNi2Cq3H7gdg==", + "dependencies": { + "lit": "^2.0.0 || ^3.0.0" + } + }, + "ui/node_modules/@lit/reactive-element": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.1.tgz", + "integrity": "sha512-eu50SQXHRthFwWJMp0oAFg95Rvm6MTPjxSXWuvAu7It90WVFLFpNBoIno7XOXSDvVgTrtKnUV4OLJqys2Svn4g==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2" + } + }, + "ui/node_modules/lit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit/-/lit-3.0.2.tgz", + "integrity": "sha512-ZoVUPGgXOQocP4OvxehEOBmC4rWB4cRYDPaz7aFmH8DFytsCi/NeACbr4C6vNPGDEC07BrhUos7uVNayDKLQ2Q==", + "dependencies": { + "@lit/reactive-element": "^2.0.0", + "lit-element": "^4.0.0", + "lit-html": "^3.0.0" + } + }, + "ui/node_modules/lit-element": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.1.tgz", + "integrity": "sha512-OxRMJem4HKZt0320HplLkBPoi4KHiEHoPHKd8Lzf07ZQVAOKIjZ32yPLRKRDEolFU1RgrQBfSHQMoxKZ72V3Kw==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.2", + "@lit/reactive-element": "^2.0.0", + "lit-html": "^3.0.0" + } + }, + "ui/node_modules/lit-html": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.0.2.tgz", + "integrity": "sha512-Q1A5lHza3bnmxoWJn6yS6vQZQdExl4fghk8W1G+jnAEdoFNYo5oeBBb/Ol7zSEdKd3TR7+r0zsJQyuWEVguiyQ==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, "ui/node_modules/typescript": { "version": "4.9.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", diff --git a/tests/src/cancellation.test.ts b/tests/src/cancellation.test.ts index b035ece..4396e29 100644 --- a/tests/src/cancellation.test.ts +++ b/tests/src/cancellation.test.ts @@ -44,7 +44,7 @@ test('create and read Cancellation', async () => { // Bob gets the created Cancellation const createReadOutput: EntryRecord = await toPromise( - bob.store.cancellations.get(cancellation.actionHash) + bob.store.cancellations.get(cancellation.actionHash).latestVersion ); assert.ok(cleanNodeDecoding(createReadOutput.entry)); }); @@ -77,7 +77,7 @@ test('create and update Cancellation', async () => { // Bob gets the updated Cancellation const readUpdatedOutput0: EntryRecord = await toPromise( - bob.store.cancellations.get(cancellation.actionHash) + bob.store.cancellations.get(cancellation.actionHash).latestVersion ); assert.deepEqual(readUpdatedOutput0.entry.reason, 'a reason'); @@ -93,25 +93,25 @@ test('create and update Cancellation', async () => { // Bob gets the updated Cancellation const readUpdatedOutput1: EntryRecord = await toPromise( - bob.store.cancellations.get(updatedCancellation.actionHash) + bob.store.cancellations.get(updatedCancellation.actionHash).latestVersion ); assert.deepEqual(readUpdatedOutput1.entry.reason, 'new reason'); }); }); -test.only('create and delete Cancellation', async () => { +test('create and delete Cancellation', async () => { await runScenario(async scenario => { const { alice, bob } = await setup(scenario); const cancelledHash = await fakeActionHash(); let cancellactionsFor = await toPromise( - alice.store.cancellationsFor.get(cancelledHash) + alice.store.cancellationsFor.get(cancelledHash).live ); assert.equal(cancellactionsFor.length, 0); let undoneCancellactionsFor = await toPromise( - alice.store.undoneCancellationsFor.get(cancelledHash) + alice.store.cancellationsFor.get(cancelledHash).undone ); assert.equal(undoneCancellactionsFor.length, 0); @@ -124,7 +124,7 @@ test.only('create and delete Cancellation', async () => { assert.ok(cancellation); cancellactionsFor = await toPromise( - alice.store.cancellationsFor.get(cancelledHash) + alice.store.cancellationsFor.get(cancelledHash).live ); assert.equal(cancellactionsFor.length, 1); @@ -132,7 +132,7 @@ test.only('create and delete Cancellation', async () => { await alice.store.client.undoCancellation(cancellation.actionHash); cancellactionsFor = await toPromise( - alice.store.cancellationsFor.get(cancelledHash) + alice.store.cancellationsFor.get(cancelledHash).live ); assert.equal(cancellactionsFor.length, 0); @@ -141,12 +141,17 @@ test.only('create and delete Cancellation', async () => { // Bob tries to get the deleted Cancellation const readDeletedOutput: EntryRecord = await toPromise( - bob.store.cancellations.get(cancellation.actionHash) + bob.store.cancellations.get(cancellation.actionHash).latestVersion ); assert.ok(readDeletedOutput); + const deletes = await toPromise( + bob.store.cancellations.get(cancellation.actionHash).deletes + ); + assert.equal(deletes.length, 1); + undoneCancellactionsFor = await toPromise( - alice.store.undoneCancellationsFor.get(cancelledHash) + alice.store.cancellationsFor.get(cancelledHash).undone ); assert.equal(undoneCancellactionsFor.length, 1); }); diff --git a/ui/custom-elements.json b/ui/custom-elements.json index e946de7..730f17d 100644 --- a/ui/custom-elements.json +++ b/ui/custom-elements.json @@ -2,6 +2,158 @@ "schemaVersion": "1.0.0", "readme": "", "modules": [ + { + "kind": "javascript-module", + "path": "locales/ca.js", + "declarations": [ + { + "kind": "variable", + "name": "templates", + "type": { + "text": "object" + }, + "default": "{\n 's09134b07b5aacab4': `Per`,\n's12081f543132112a': `Aquesta cancel·lació no existeix`,\n's19bae910bcacc8d2': `No s'ha trobat cap cancel·lació`,\n's2617451fb419b0f1': `Estàs segur que vols desfer aquesta cancel·lació?`,\n's2be5905edf563428': `Error buscant les cancel·lacions`,\n's2ceb11be2290bb1b': `Cancel·lar`,\n's2f71e715198c42bc': `Editar la raó de la cancel·lació`,\n's4c81ae80d4520c96': `Error creant la cancel·lació`,\n's4d21a68bb0a48ff3': `Error suprimint la cancel·lació`,\n's678863b5adc0dc76': `Desfer cancel·lació`,\n's766487d31d3dd4e1': `ha esta cancel·lat`,\n's8f16945b7543ca07': `Editar raó`,\n'saa29a2ac03cd9d19': `Raó de la cancel·lació`,\n'sb83af6853f8153d4': `Guardar raó`,\n'scc363d3dec060805': `Error actualitzant la cancel·lació`,\n'se03259a7f136574b': `Error buscant la cancel·lació`,\n'sfe5bdb134567c096': `Desfer Cancel·lació`,\n }" + } + ], + "exports": [ + { + "kind": "js", + "name": "templates", + "declaration": { + "name": "templates", + "module": "locales/ca.js" + } + } + ] + }, + { + "kind": "javascript-module", + "path": "locales/de.js", + "declarations": [ + { + "kind": "variable", + "name": "templates", + "type": { + "text": "object" + }, + "default": "{\n 's09134b07b5aacab4': `Durch`,\n's12081f543132112a': `Die gesuchte Absage existiert nicht`,\n's19bae910bcacc8d2': `Keine Absagen gefunden`,\n's2617451fb419b0f1': `Bist du sicher, dass du diese Absage zurückziehen möchtest?`,\n's2be5905edf563428': `Absagen laden fehlgeschlagen`,\n's2ceb11be2290bb1b': `Abbrechen`,\n's2f71e715198c42bc': `Grund der Absage bearbeiten`,\n's4c81ae80d4520c96': `Absage erstellen fehlgeschlagen`,\n's4d21a68bb0a48ff3': `Absage löschen fehlgeschlagen`,\n's678863b5adc0dc76': `Absage zurückziehen`,\n's766487d31d3dd4e1': `wurde abgesagt`,\n's8f16945b7543ca07': `Grund bearbeiten`,\n'saa29a2ac03cd9d19': `Grund`,\n'sb83af6853f8153d4': `Grund speichern`,\n'scc363d3dec060805': `Bearbeiten der Absage fehlgeschlagen`,\n'se03259a7f136574b': `Absage laden fehlgeschlagen`,\n'sfe5bdb134567c096': `Absage zurückziehen`,\n }" + } + ], + "exports": [ + { + "kind": "js", + "name": "templates", + "declaration": { + "name": "templates", + "module": "locales/de.js" + } + } + ] + }, + { + "kind": "javascript-module", + "path": "locales/es.js", + "declarations": [ + { + "kind": "variable", + "name": "templates", + "type": { + "text": "object" + }, + "default": "{\n 's09134b07b5aacab4': `Por`,\n's12081f543132112a': `Esta cancelación no existe`,\n's19bae910bcacc8d2': `No se ha encontrado ninguna cancelación`,\n's2617451fb419b0f1': `¿Estás seguro de que quieres deshacer esta cancelación?`,\n's2be5905edf563428': `Error buscando las cancelaciones`,\n's2ceb11be2290bb1b': `Cancelar`,\n's2f71e715198c42bc': `Editar la razón de la cancelación`,\n's4c81ae80d4520c96': `Error creando la cancelación`,\n's4d21a68bb0a48ff3': `Error suprimiendo la cancelación`,\n's678863b5adc0dc76': `Deshacer cancelación`,\n's766487d31d3dd4e1': `fue cancelado`,\n's8f16945b7543ca07': `Editar razón`,\n'saa29a2ac03cd9d19': `Razón de la cancelación`,\n'sb83af6853f8153d4': `Guardar razón`,\n'scc363d3dec060805': `Error actualizando la cancelación`,\n'se03259a7f136574b': `Error buscando la cancelación`,\n'sfe5bdb134567c096': `Deshacer Cancelación`,\n }" + } + ], + "exports": [ + { + "kind": "js", + "name": "templates", + "declaration": { + "name": "templates", + "module": "locales/es.js" + } + } + ] + }, + { + "kind": "javascript-module", + "path": "locales/locales.js", + "declarations": [ + { + "kind": "variable", + "name": "sourceLocale", + "default": "`en`", + "description": "The locale code that templates in this source code are written in." + }, + { + "kind": "variable", + "name": "targetLocales", + "type": { + "text": "array" + }, + "default": "[\n `ca`,\n `de`,\n `es`,\n `sv`,\n]", + "description": "The other locale codes that this application is localized into. Sorted\nlexicographically." + }, + { + "kind": "variable", + "name": "allLocales", + "type": { + "text": "array" + }, + "default": "[\n `ca`,\n `de`,\n `en`,\n `es`,\n `sv`,\n]", + "description": "All valid project locale codes. Sorted lexicographically." + } + ], + "exports": [ + { + "kind": "js", + "name": "sourceLocale", + "declaration": { + "name": "sourceLocale", + "module": "locales/locales.js" + } + }, + { + "kind": "js", + "name": "targetLocales", + "declaration": { + "name": "targetLocales", + "module": "locales/locales.js" + } + }, + { + "kind": "js", + "name": "allLocales", + "declaration": { + "name": "allLocales", + "module": "locales/locales.js" + } + } + ] + }, + { + "kind": "javascript-module", + "path": "locales/sv.js", + "declarations": [ + { + "kind": "variable", + "name": "templates", + "type": { + "text": "object" + }, + "default": "{\n 's09134b07b5aacab4': `Av`,\n's12081f543132112a': `Den sökta borttagningen existerar inte`,\n's19bae910bcacc8d2': `Inga borttagningar hittade`,\n's2617451fb419b0f1': `Är du säker att du vill ta bort?`,\n's2be5905edf563428': `Fel vid hämtning av borttagning`,\n's2ceb11be2290bb1b': `Ta bort`,\n's2f71e715198c42bc': `Redigera orsak för borttagning`,\n's4c81ae80d4520c96': `Fel vid skapadet av borttagning`,\n's4d21a68bb0a48ff3': `Fel vid borttagning av borttagning`,\n's678863b5adc0dc76': `Ångra borttagning`,\n's766487d31d3dd4e1': `togs bort`,\n's8f16945b7543ca07': `Redigera orsak`,\n'saa29a2ac03cd9d19': `Orsak`,\n'sb83af6853f8153d4': `Spara orsak`,\n'scc363d3dec060805': `Fel vid uppdatering av borttagning`,\n'se03259a7f136574b': `Fel vid hämtning av borttagning`,\n'sfe5bdb134567c096': `Ångra borttagning`,\n }" + } + ], + "exports": [ + { + "kind": "js", + "name": "templates", + "declaration": { + "name": "templates", + "module": "locales/sv.js" + } + } + ] + }, { "kind": "javascript-module", "path": "src/cancellations-client.ts", @@ -37,10 +189,10 @@ }, { "kind": "method", - "name": "getCancellation", + "name": "getLatestCancellation", "return": { "type": { - "text": "Promise | undefined>" + "text": "Promise>" } }, "parameters": [ @@ -114,7 +266,7 @@ "name": "getUndoneCancellationsFor", "return": { "type": { - "text": "Promise>" + "text": "Promise>]>>" } }, "parameters": [ @@ -125,6 +277,23 @@ } } ] + }, + { + "kind": "method", + "name": "getCancellationDeletions", + "return": { + "type": { + "text": "Promise>>" + } + }, + "parameters": [ + { + "name": "cancellationHash", + "type": { + "text": "ActionHash" + } + } + ] } ], "superclass": { @@ -148,23 +317,6 @@ "kind": "javascript-module", "path": "src/cancellations-store.ts", "declarations": [ - { - "kind": "function", - "name": "throwIfUndefined", - "return": { - "type": { - "text": "T" - } - }, - "parameters": [ - { - "name": "object", - "type": { - "text": "T | undefined" - } - } - ] - }, { "kind": "class", "description": "", @@ -173,30 +325,17 @@ { "kind": "field", "name": "cancellationsFor", - "default": "new LazyHoloHashMap((cancelledHash: ActionHash) =>\n lazyLoadAndPoll(\n async () => this.client.getCancellationsFor(cancelledHash),\n 4000\n )\n )" - }, - { - "kind": "field", - "name": "undoneCancellationsFor", - "default": "new LazyHoloHashMap((cancelledHash: ActionHash) =>\n lazyLoadAndPoll(\n async () => this.client.getUndoneCancellationsFor(cancelledHash),\n 4000\n )\n )" + "default": "new LazyHoloHashMap((cancelledHash: ActionHash) => ({\n live: liveLinksTargetsStore(\n this.client,\n cancelledHash,\n () => this.client.getCancellationsFor(cancelledHash),\n 'Cancellations'\n ),\n undone: deletedLinksTargetsStore(\n this.client,\n cancelledHash,\n () => this.client.getUndoneCancellationsFor(cancelledHash),\n 'Cancellations'\n ),\n }))" }, { "kind": "field", "name": "cancellations", - "default": "new LazyHoloHashMap((cancelledHash: ActionHash) =>\n lazyLoadAndPoll(async () => {\n const c = await this.client.getCancellation(cancelledHash);\n return throwIfUndefined(c);\n }, 4000)\n )" + "default": "new LazyHoloHashMap((cancellationHash: ActionHash) => ({\n latestVersion: latestVersionOfEntryStore(this.client, () =>\n this.client.getLatestCancellation(cancellationHash)\n ),\n deletes: deletesForEntryStore(this.client, cancellationHash, () =>\n this.client.getCancellationDeletions(cancellationHash)\n ),\n }))" } ] } ], "exports": [ - { - "kind": "js", - "name": "throwIfUndefined", - "declaration": { - "name": "throwIfUndefined", - "module": "src/cancellations-store.ts" - } - }, { "kind": "js", "name": "CancellationsStore", diff --git a/ui/demo/index.html b/ui/demo/index.html index dbfb640..cf70f12 100644 --- a/ui/demo/index.html +++ b/ui/demo/index.html @@ -32,10 +32,11 @@