got obsidian plugin to build again
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@ppc/obsidian-plugin",
|
"name": "@ppc/obsidian-plugin",
|
||||||
"tasks": {
|
"tasks": {
|
||||||
"build_rust": "wasm-pack -vvvvv build -d platform/obsidian/rust_dist --target web --no-default-features --features target-obsidian",
|
"build_rust": "CARGO_TERM_COLOR=always wasm-pack -vvvvv build -d ../apps/obsidian-plugin/rust_dist --target web --no-opt ../../marts --no-default-features --features target-obsidian",
|
||||||
"build": "deno run -A build_rust && mkdir -p dist && touch dist/.hotreload && cp manifest.json dist && deno -A esbuild.config.mjs production",
|
"build": "deno run -A build_rust && mkdir -p dist && touch dist/.hotreload && cp manifest.json dist && deno -A esbuild.config.mjs production",
|
||||||
"dev": ""
|
"dev": ""
|
||||||
},
|
},
|
||||||
|
|||||||
547
apps/obsidian-plugin/deno.lock
generated
547
apps/obsidian-plugin/deno.lock
generated
@@ -1,36 +1,45 @@
|
|||||||
{
|
{
|
||||||
"version": "5",
|
"version": "5",
|
||||||
"specifiers": {
|
"specifiers": {
|
||||||
|
"jsr:@deno/esbuild-plugin@^1.2.1": "1.2.1",
|
||||||
|
"jsr:@deno/loader@~0.3.10": "0.3.12",
|
||||||
|
"jsr:@std/internal@^1.0.12": "1.0.12",
|
||||||
|
"jsr:@std/path@^1.1.1": "1.1.4",
|
||||||
"npm:@flowershow/remark-wiki-link@^3.4.0": "3.4.0",
|
"npm:@flowershow/remark-wiki-link@^3.4.0": "3.4.0",
|
||||||
"npm:@instantdb/admin@~0.21.3": "0.21.30",
|
|
||||||
"npm:@instantdb/react@~0.20.28": "0.20.28_react@19.1.0",
|
|
||||||
"npm:@react-oauth/google@~0.12.2": "0.12.2_react@19.1.0_react-dom@19.1.0__react@19.1.0",
|
|
||||||
"npm:@tailwindcss/postcss@4": "4.2.0",
|
|
||||||
"npm:@types/node@20": "20.19.33",
|
|
||||||
"npm:@types/react-dom@19": "19.2.3_@types+react@19.2.14",
|
|
||||||
"npm:@types/react@19": "19.2.14",
|
|
||||||
"npm:@wasm-tool/rollup-plugin-rust@^3.1.4": "3.1.4_binaryen@125.0.0",
|
|
||||||
"npm:binaryen@125": "125.0.0",
|
|
||||||
"npm:builtin-modules@5": "5.0.0",
|
"npm:builtin-modules@5": "5.0.0",
|
||||||
"npm:esbuild@~0.27.3": "0.27.3",
|
"npm:esbuild@~0.27.3": "0.27.3",
|
||||||
"npm:mdast@3": "3.0.0",
|
"npm:mdast@3": "3.0.0",
|
||||||
"npm:obsidian@^1.12.2": "1.12.2_@codemirror+state@6.5.0_@codemirror+view@6.38.6",
|
"npm:obsidian@^1.12.2": "1.12.2_@codemirror+state@6.5.0_@codemirror+view@6.38.6",
|
||||||
"npm:react-dom@19.1.0": "19.1.0_react@19.1.0",
|
|
||||||
"npm:react@19.1.0": "19.1.0",
|
|
||||||
"npm:remark-frontmatter@5": "5.0.0",
|
"npm:remark-frontmatter@5": "5.0.0",
|
||||||
"npm:remark-gfm@^4.0.1": "4.0.1",
|
"npm:remark-gfm@^4.0.1": "4.0.1",
|
||||||
"npm:remark-parse@11": "11.0.0",
|
"npm:remark-parse@11": "11.0.0",
|
||||||
"npm:remark-stringify@11": "11.0.0",
|
"npm:remark-stringify@11": "11.0.0",
|
||||||
"npm:tailwindcss@4": "4.2.0",
|
|
||||||
"npm:tslib@^2.6.2": "2.8.1",
|
|
||||||
"npm:typescript@^5.9.3": "5.9.3",
|
"npm:typescript@^5.9.3": "5.9.3",
|
||||||
"npm:unified@^11.0.5": "11.0.5",
|
"npm:unified@^11.0.5": "11.0.5",
|
||||||
"npm:unist-util-visit@^5.1.0": "5.1.0"
|
"npm:unist-util-visit@^5.1.0": "5.1.0"
|
||||||
},
|
},
|
||||||
"npm": {
|
"jsr": {
|
||||||
"@alloc/quick-lru@5.2.0": {
|
"@deno/esbuild-plugin@1.2.1": {
|
||||||
"integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw=="
|
"integrity": "df629467913adc1f960149fdfa3a3430ba8c20381c310fba096db244e6c3c9f6",
|
||||||
|
"dependencies": [
|
||||||
|
"jsr:@deno/loader",
|
||||||
|
"jsr:@std/path"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
|
"@deno/loader@0.3.12": {
|
||||||
|
"integrity": "52d3b3be0a32192efe07b0a4f1b3047077d2f2bba0f693e32f47421507f9fdb6"
|
||||||
|
},
|
||||||
|
"@std/internal@1.0.12": {
|
||||||
|
"integrity": "972a634fd5bc34b242024402972cd5143eac68d8dffaca5eaa4dba30ce17b027"
|
||||||
|
},
|
||||||
|
"@std/path@1.1.4": {
|
||||||
|
"integrity": "1d2d43f39efb1b42f0b1882a25486647cb851481862dc7313390b2bb044314b5",
|
||||||
|
"dependencies": [
|
||||||
|
"jsr:@std/internal"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"npm": {
|
||||||
"@codemirror/state@6.5.0": {
|
"@codemirror/state@6.5.0": {
|
||||||
"integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==",
|
"integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -185,196 +194,9 @@
|
|||||||
"micromark-util-symbol"
|
"micromark-util-symbol"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"@iarna/toml@2.2.5": {
|
|
||||||
"integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg=="
|
|
||||||
},
|
|
||||||
"@instantdb/admin@0.21.30": {
|
|
||||||
"integrity": "sha512-IR8Wi+wJkGVqClJUnEFkUXYScyhmUV1qPO4s1+eHfFptkquHHtGSz1bUffGbGZJCj84lJVpjcvS1MCPgvd2PBg==",
|
|
||||||
"dependencies": [
|
|
||||||
"@instantdb/core@0.21.30",
|
|
||||||
"@instantdb/version@0.21.30",
|
|
||||||
"eventsource"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@instantdb/core@0.20.28": {
|
|
||||||
"integrity": "sha512-0ePAgbOZedSLZ4LbPZL6afcFnhL5mWIoWXgOqzdmp6QUrYgtQjWrJCcFlA7DWmrkidZYLU2WVpQbhMbgzKqrOg==",
|
|
||||||
"dependencies": [
|
|
||||||
"@instantdb/version@0.20.28",
|
|
||||||
"mutative",
|
|
||||||
"uuid"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@instantdb/core@0.21.30": {
|
|
||||||
"integrity": "sha512-PB/QFtrOYRmjKDYzo7oOIuJalLJVY/4mLljcYFkrbShMKz1oukKQ8sy+0/9pVcUETMyePgJUmuXcnrHwO7xjgQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"@instantdb/version@0.21.30",
|
|
||||||
"mutative",
|
|
||||||
"uuid"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@instantdb/react@0.20.28_react@19.1.0": {
|
|
||||||
"integrity": "sha512-wPig+jUeUqSCYGdCLIGVky8bL0h3VnjYYD2+5SZtF/KlgFGQZ+u8LCdvk+8QJL/kE0xqDbogr7D+b7Vn73uO/A==",
|
|
||||||
"dependencies": [
|
|
||||||
"@instantdb/core@0.20.28",
|
|
||||||
"@instantdb/version@0.20.28",
|
|
||||||
"react"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@instantdb/version@0.20.28": {
|
|
||||||
"integrity": "sha512-lwsF66TpVwfBOSQ+bpuS2K1NO7jwlnJS5Uh4Xhyylwu4ieOEOOZa2vMnVORsidZCq2vwwKEiLvFIoH8lVkrj0g=="
|
|
||||||
},
|
|
||||||
"@instantdb/version@0.21.30": {
|
|
||||||
"integrity": "sha512-yhrxnZo3c2/EK3dnDEcX4XYHfXjlyj3QPPvylrBY2qxodKzcEh9BnJufiQiP+2ePUD+kET+2FQlztxQ4E9BAbg=="
|
|
||||||
},
|
|
||||||
"@isaacs/fs-minipass@4.0.1": {
|
|
||||||
"integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==",
|
|
||||||
"dependencies": [
|
|
||||||
"minipass"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@jridgewell/gen-mapping@0.3.13": {
|
|
||||||
"integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
|
|
||||||
"dependencies": [
|
|
||||||
"@jridgewell/sourcemap-codec",
|
|
||||||
"@jridgewell/trace-mapping"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@jridgewell/remapping@2.3.5": {
|
|
||||||
"integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"@jridgewell/gen-mapping",
|
|
||||||
"@jridgewell/trace-mapping"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@jridgewell/resolve-uri@3.1.2": {
|
|
||||||
"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="
|
|
||||||
},
|
|
||||||
"@jridgewell/sourcemap-codec@1.5.5": {
|
|
||||||
"integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="
|
|
||||||
},
|
|
||||||
"@jridgewell/trace-mapping@0.3.31": {
|
|
||||||
"integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
|
|
||||||
"dependencies": [
|
|
||||||
"@jridgewell/resolve-uri",
|
|
||||||
"@jridgewell/sourcemap-codec"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@marijn/find-cluster-break@1.0.2": {
|
"@marijn/find-cluster-break@1.0.2": {
|
||||||
"integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g=="
|
"integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g=="
|
||||||
},
|
},
|
||||||
"@react-oauth/google@0.12.2_react@19.1.0_react-dom@19.1.0__react@19.1.0": {
|
|
||||||
"integrity": "sha512-d1GVm2uD4E44EJft2RbKtp8Z1fp/gK8Lb6KHgs3pHlM0PxCXGLaq8LLYQYENnN4xPWO1gkL4apBtlPKzpLvZwg==",
|
|
||||||
"dependencies": [
|
|
||||||
"react",
|
|
||||||
"react-dom"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@rollup/pluginutils@5.3.0": {
|
|
||||||
"integrity": "sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==",
|
|
||||||
"dependencies": [
|
|
||||||
"@types/estree",
|
|
||||||
"estree-walker",
|
|
||||||
"picomatch"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@tailwindcss/node@4.2.0": {
|
|
||||||
"integrity": "sha512-Yv+fn/o2OmL5fh/Ir62VXItdShnUxfpkMA4Y7jdeC8O81WPB8Kf6TT6GSHvnqgSwDzlB5iT7kDpeXxLsUS0T6Q==",
|
|
||||||
"dependencies": [
|
|
||||||
"@jridgewell/remapping",
|
|
||||||
"enhanced-resolve",
|
|
||||||
"jiti",
|
|
||||||
"lightningcss",
|
|
||||||
"magic-string",
|
|
||||||
"source-map-js",
|
|
||||||
"tailwindcss"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-android-arm64@4.2.0": {
|
|
||||||
"integrity": "sha512-F0QkHAVaW/JNBWl4CEKWdZ9PMb0khw5DCELAOnu+RtjAfx5Zgw+gqCHFvqg3AirU1IAd181fwOtJQ5I8Yx5wtw==",
|
|
||||||
"os": ["android"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-darwin-arm64@4.2.0": {
|
|
||||||
"integrity": "sha512-I0QylkXsBsJMZ4nkUNSR04p6+UptjcwhcVo3Zu828ikiEqHjVmQL9RuQ6uT/cVIiKpvtVA25msu/eRV97JeNSA==",
|
|
||||||
"os": ["darwin"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-darwin-x64@4.2.0": {
|
|
||||||
"integrity": "sha512-6TmQIn4p09PBrmnkvbYQ0wbZhLtbaksCDx7Y7R3FYYx0yxNA7xg5KP7dowmQ3d2JVdabIHvs3Hx4K3d5uCf8xg==",
|
|
||||||
"os": ["darwin"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-freebsd-x64@4.2.0": {
|
|
||||||
"integrity": "sha512-qBudxDvAa2QwGlq9y7VIzhTvp2mLJ6nD/G8/tI70DCDoneaUeLWBJaPcbfzqRIWraj+o969aDQKvKW9dvkUizw==",
|
|
||||||
"os": ["freebsd"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-linux-arm-gnueabihf@4.2.0": {
|
|
||||||
"integrity": "sha512-7XKkitpy5NIjFZNUQPeUyNJNJn1CJeV7rmMR+exHfTuOsg8rxIO9eNV5TSEnqRcaOK77zQpsyUkBWmPy8FgdSg==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["arm"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-linux-arm64-gnu@4.2.0": {
|
|
||||||
"integrity": "sha512-Mff5a5Q3WoQR01pGU1gr29hHM1N93xYrKkGXfPw/aRtK4bOc331Ho4Tgfsm5WDGvpevqMpdlkCojT3qlCQbCpA==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-linux-arm64-musl@4.2.0": {
|
|
||||||
"integrity": "sha512-XKcSStleEVnbH6W/9DHzZv1YhjE4eSS6zOu2eRtYAIh7aV4o3vIBs+t/B15xlqoxt6ef/0uiqJVB6hkHjWD/0A==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-linux-x64-gnu@4.2.0": {
|
|
||||||
"integrity": "sha512-/hlXCBqn9K6fi7eAM0RsobHwJYa5V/xzWspVTzxnX+Ft9v6n+30Pz8+RxCn7sQL/vRHHLS30iQPrHQunu6/vJA==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-linux-x64-musl@4.2.0": {
|
|
||||||
"integrity": "sha512-lKUaygq4G7sWkhQbfdRRBkaq4LY39IriqBQ+Gk6l5nKq6Ay2M2ZZb1tlIyRNgZKS8cbErTwuYSor0IIULC0SHw==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-wasm32-wasi@4.2.0": {
|
|
||||||
"integrity": "sha512-xuDjhAsFdUuFP5W9Ze4k/o4AskUtI8bcAGU4puTYprr89QaYFmhYOPfP+d1pH+k9ets6RoE23BXZM1X1jJqoyw==",
|
|
||||||
"cpu": ["wasm32"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-win32-arm64-msvc@4.2.0": {
|
|
||||||
"integrity": "sha512-2UU/15y1sWDEDNJXxEIrfWKC2Yb4YgIW5Xz2fKFqGzFWfoMHWFlfa1EJlGO2Xzjkq/tvSarh9ZTjvbxqWvLLXA==",
|
|
||||||
"os": ["win32"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide-win32-x64-msvc@4.2.0": {
|
|
||||||
"integrity": "sha512-CrFadmFoc+z76EV6LPG1jx6XceDsaCG3lFhyLNo/bV9ByPrE+FnBPckXQVP4XRkN76h3Fjt/a+5Er/oA/nCBvQ==",
|
|
||||||
"os": ["win32"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"@tailwindcss/oxide@4.2.0": {
|
|
||||||
"integrity": "sha512-AZqQzADaj742oqn2xjl5JbIOzZB/DGCYF/7bpvhA8KvjUj9HJkag6bBuwZvH1ps6dfgxNHyuJVlzSr2VpMgdTQ==",
|
|
||||||
"optionalDependencies": [
|
|
||||||
"@tailwindcss/oxide-android-arm64",
|
|
||||||
"@tailwindcss/oxide-darwin-arm64",
|
|
||||||
"@tailwindcss/oxide-darwin-x64",
|
|
||||||
"@tailwindcss/oxide-freebsd-x64",
|
|
||||||
"@tailwindcss/oxide-linux-arm-gnueabihf",
|
|
||||||
"@tailwindcss/oxide-linux-arm64-gnu",
|
|
||||||
"@tailwindcss/oxide-linux-arm64-musl",
|
|
||||||
"@tailwindcss/oxide-linux-x64-gnu",
|
|
||||||
"@tailwindcss/oxide-linux-x64-musl",
|
|
||||||
"@tailwindcss/oxide-wasm32-wasi",
|
|
||||||
"@tailwindcss/oxide-win32-arm64-msvc",
|
|
||||||
"@tailwindcss/oxide-win32-x64-msvc"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@tailwindcss/postcss@4.2.0": {
|
|
||||||
"integrity": "sha512-u6YBacGpOm/ixPfKqfgrJEjMfrYmPD7gEFRoygS/hnQaRtV0VCBdpkx5Ouw9pnaLRwwlgGCuJw8xLpaR0hOrQg==",
|
|
||||||
"dependencies": [
|
|
||||||
"@alloc/quick-lru",
|
|
||||||
"@tailwindcss/node",
|
|
||||||
"@tailwindcss/oxide",
|
|
||||||
"postcss",
|
|
||||||
"tailwindcss"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@types/codemirror@5.60.8": {
|
"@types/codemirror@5.60.8": {
|
||||||
"integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==",
|
"integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -399,24 +221,6 @@
|
|||||||
"@types/ms@2.1.0": {
|
"@types/ms@2.1.0": {
|
||||||
"integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA=="
|
"integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA=="
|
||||||
},
|
},
|
||||||
"@types/node@20.19.33": {
|
|
||||||
"integrity": "sha512-Rs1bVAIdBs5gbTIKza/tgpMuG1k3U/UMJLWecIMxNdJFDMzcM5LOiLVRYh3PilWEYDIeUDv7bpiHPLPsbydGcw==",
|
|
||||||
"dependencies": [
|
|
||||||
"undici-types"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@types/react-dom@19.2.3_@types+react@19.2.14": {
|
|
||||||
"integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"@types/react"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@types/react@19.2.14": {
|
|
||||||
"integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==",
|
|
||||||
"dependencies": [
|
|
||||||
"csstype"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"@types/tern@0.23.9": {
|
"@types/tern@0.23.9": {
|
||||||
"integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==",
|
"integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -426,59 +230,21 @@
|
|||||||
"@types/unist@3.0.3": {
|
"@types/unist@3.0.3": {
|
||||||
"integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="
|
"integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="
|
||||||
},
|
},
|
||||||
"@wasm-tool/rollup-plugin-rust@3.1.4_binaryen@125.0.0": {
|
|
||||||
"integrity": "sha512-XW3nk8yFPPc86jLXVEXkqQxsx9M6i+j5Boru5yapfS/+egK2IOYsuEOvM3am+/YrKczohKP45+cBKYkxSSGGzg==",
|
|
||||||
"dependencies": [
|
|
||||||
"@iarna/toml",
|
|
||||||
"@rollup/pluginutils",
|
|
||||||
"binaryen",
|
|
||||||
"chalk",
|
|
||||||
"glob",
|
|
||||||
"node-fetch",
|
|
||||||
"rimraf",
|
|
||||||
"tar"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"bail@2.0.2": {
|
"bail@2.0.2": {
|
||||||
"integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="
|
"integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="
|
||||||
},
|
},
|
||||||
"balanced-match@4.0.3": {
|
|
||||||
"integrity": "sha512-1pHv8LX9CpKut1Zp4EXey7Z8OfH11ONNH6Dhi2WDUt31VVZFXZzKwXcysBgqSumFCmR+0dqjMK5v5JiFHzi0+g=="
|
|
||||||
},
|
|
||||||
"binaryen@125.0.0": {
|
|
||||||
"integrity": "sha512-X7CUM9ZnwL/Ow++JH5AJKiemc82J7JyeryuPvXQdXBLcL/rqrC5KMUB1mHiORSolietH9sotvaOZlr6HSwPAlw==",
|
|
||||||
"bin": true
|
|
||||||
},
|
|
||||||
"brace-expansion@5.0.2": {
|
|
||||||
"integrity": "sha512-Pdk8c9poy+YhOgVWw1JNN22/HcivgKWwpxKq04M/jTmHyCZn12WPJebZxdjSa5TmBqISrUSgNYU3eRORljfCCw==",
|
|
||||||
"dependencies": [
|
|
||||||
"balanced-match"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"builtin-modules@5.0.0": {
|
"builtin-modules@5.0.0": {
|
||||||
"integrity": "sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg=="
|
"integrity": "sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg=="
|
||||||
},
|
},
|
||||||
"ccount@2.0.1": {
|
"ccount@2.0.1": {
|
||||||
"integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg=="
|
"integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg=="
|
||||||
},
|
},
|
||||||
"chalk@5.6.2": {
|
|
||||||
"integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA=="
|
|
||||||
},
|
|
||||||
"character-entities@2.0.2": {
|
"character-entities@2.0.2": {
|
||||||
"integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="
|
"integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="
|
||||||
},
|
},
|
||||||
"chownr@3.0.0": {
|
|
||||||
"integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g=="
|
|
||||||
},
|
|
||||||
"crelt@1.0.6": {
|
"crelt@1.0.6": {
|
||||||
"integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g=="
|
"integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g=="
|
||||||
},
|
},
|
||||||
"csstype@3.2.3": {
|
|
||||||
"integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ=="
|
|
||||||
},
|
|
||||||
"data-uri-to-buffer@4.0.1": {
|
|
||||||
"integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A=="
|
|
||||||
},
|
|
||||||
"debug@4.4.3": {
|
"debug@4.4.3": {
|
||||||
"integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
|
"integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -494,22 +260,12 @@
|
|||||||
"dequal@2.0.3": {
|
"dequal@2.0.3": {
|
||||||
"integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA=="
|
"integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA=="
|
||||||
},
|
},
|
||||||
"detect-libc@2.1.2": {
|
|
||||||
"integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ=="
|
|
||||||
},
|
|
||||||
"devlop@1.1.0": {
|
"devlop@1.1.0": {
|
||||||
"integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
|
"integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
"dequal"
|
"dequal"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"enhanced-resolve@5.19.0": {
|
|
||||||
"integrity": "sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==",
|
|
||||||
"dependencies": [
|
|
||||||
"graceful-fs",
|
|
||||||
"tapable"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"esbuild@0.27.3": {
|
"esbuild@0.27.3": {
|
||||||
"integrity": "sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==",
|
"integrity": "sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==",
|
||||||
"optionalDependencies": [
|
"optionalDependencies": [
|
||||||
@@ -546,18 +302,6 @@
|
|||||||
"escape-string-regexp@5.0.0": {
|
"escape-string-regexp@5.0.0": {
|
||||||
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="
|
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="
|
||||||
},
|
},
|
||||||
"estree-walker@2.0.2": {
|
|
||||||
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
|
|
||||||
},
|
|
||||||
"eventsource-parser@3.0.6": {
|
|
||||||
"integrity": "sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg=="
|
|
||||||
},
|
|
||||||
"eventsource@4.1.0": {
|
|
||||||
"integrity": "sha512-2GuF51iuHX6A9xdTccMTsNb7VO0lHZihApxhvQzJB5A03DvHDd2FQepodbMaztPBmBcE/ox7o2gqaxGhYB9LhQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"eventsource-parser"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"extend@3.0.2": {
|
"extend@3.0.2": {
|
||||||
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
|
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
|
||||||
},
|
},
|
||||||
@@ -567,129 +311,18 @@
|
|||||||
"format"
|
"format"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"fetch-blob@3.2.0": {
|
|
||||||
"integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"node-domexception",
|
|
||||||
"web-streams-polyfill"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"format@0.2.2": {
|
"format@0.2.2": {
|
||||||
"integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww=="
|
"integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww=="
|
||||||
},
|
},
|
||||||
"formdata-polyfill@4.0.10": {
|
|
||||||
"integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
|
|
||||||
"dependencies": [
|
|
||||||
"fetch-blob"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"github-slugger@2.0.0": {
|
"github-slugger@2.0.0": {
|
||||||
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
|
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
|
||||||
},
|
},
|
||||||
"glob@13.0.6": {
|
|
||||||
"integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==",
|
|
||||||
"dependencies": [
|
|
||||||
"minimatch",
|
|
||||||
"minipass",
|
|
||||||
"path-scurry"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"graceful-fs@4.2.11": {
|
|
||||||
"integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
|
|
||||||
},
|
|
||||||
"is-plain-obj@4.1.0": {
|
"is-plain-obj@4.1.0": {
|
||||||
"integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg=="
|
"integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg=="
|
||||||
},
|
},
|
||||||
"jiti@2.6.1": {
|
|
||||||
"integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==",
|
|
||||||
"bin": true
|
|
||||||
},
|
|
||||||
"lightningcss-android-arm64@1.31.1": {
|
|
||||||
"integrity": "sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==",
|
|
||||||
"os": ["android"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"lightningcss-darwin-arm64@1.31.1": {
|
|
||||||
"integrity": "sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==",
|
|
||||||
"os": ["darwin"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"lightningcss-darwin-x64@1.31.1": {
|
|
||||||
"integrity": "sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==",
|
|
||||||
"os": ["darwin"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"lightningcss-freebsd-x64@1.31.1": {
|
|
||||||
"integrity": "sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==",
|
|
||||||
"os": ["freebsd"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"lightningcss-linux-arm-gnueabihf@1.31.1": {
|
|
||||||
"integrity": "sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["arm"]
|
|
||||||
},
|
|
||||||
"lightningcss-linux-arm64-gnu@1.31.1": {
|
|
||||||
"integrity": "sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"lightningcss-linux-arm64-musl@1.31.1": {
|
|
||||||
"integrity": "sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"lightningcss-linux-x64-gnu@1.31.1": {
|
|
||||||
"integrity": "sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"lightningcss-linux-x64-musl@1.31.1": {
|
|
||||||
"integrity": "sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==",
|
|
||||||
"os": ["linux"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"lightningcss-win32-arm64-msvc@1.31.1": {
|
|
||||||
"integrity": "sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==",
|
|
||||||
"os": ["win32"],
|
|
||||||
"cpu": ["arm64"]
|
|
||||||
},
|
|
||||||
"lightningcss-win32-x64-msvc@1.31.1": {
|
|
||||||
"integrity": "sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==",
|
|
||||||
"os": ["win32"],
|
|
||||||
"cpu": ["x64"]
|
|
||||||
},
|
|
||||||
"lightningcss@1.31.1": {
|
|
||||||
"integrity": "sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"detect-libc"
|
|
||||||
],
|
|
||||||
"optionalDependencies": [
|
|
||||||
"lightningcss-android-arm64",
|
|
||||||
"lightningcss-darwin-arm64",
|
|
||||||
"lightningcss-darwin-x64",
|
|
||||||
"lightningcss-freebsd-x64",
|
|
||||||
"lightningcss-linux-arm-gnueabihf",
|
|
||||||
"lightningcss-linux-arm64-gnu",
|
|
||||||
"lightningcss-linux-arm64-musl",
|
|
||||||
"lightningcss-linux-x64-gnu",
|
|
||||||
"lightningcss-linux-x64-musl",
|
|
||||||
"lightningcss-win32-arm64-msvc",
|
|
||||||
"lightningcss-win32-x64-msvc"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"longest-streak@3.1.0": {
|
"longest-streak@3.1.0": {
|
||||||
"integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="
|
"integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="
|
||||||
},
|
},
|
||||||
"lru-cache@11.2.6": {
|
|
||||||
"integrity": "sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ=="
|
|
||||||
},
|
|
||||||
"magic-string@0.30.21": {
|
|
||||||
"integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"@jridgewell/sourcemap-codec"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"markdown-table@3.0.4": {
|
"markdown-table@3.0.4": {
|
||||||
"integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw=="
|
"integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw=="
|
||||||
},
|
},
|
||||||
@@ -1070,46 +703,12 @@
|
|||||||
"micromark-util-types"
|
"micromark-util-types"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"minimatch@10.2.2": {
|
|
||||||
"integrity": "sha512-+G4CpNBxa5MprY+04MbgOw1v7So6n5JY166pFi9KfYwT78fxScCeSNQSNzp6dpPSW2rONOps6Ocam1wFhCgoVw==",
|
|
||||||
"dependencies": [
|
|
||||||
"brace-expansion"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"minipass@7.1.3": {
|
|
||||||
"integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A=="
|
|
||||||
},
|
|
||||||
"minizlib@3.1.0": {
|
|
||||||
"integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==",
|
|
||||||
"dependencies": [
|
|
||||||
"minipass"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"moment@2.29.4": {
|
"moment@2.29.4": {
|
||||||
"integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w=="
|
"integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w=="
|
||||||
},
|
},
|
||||||
"ms@2.1.3": {
|
"ms@2.1.3": {
|
||||||
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
|
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
|
||||||
},
|
},
|
||||||
"mutative@1.3.0": {
|
|
||||||
"integrity": "sha512-8MJj6URmOZAV70dpFe1YnSppRTKC4DsMkXQiBDFayLcDI4ljGokHxmpqaBQuDWa4iAxWaJJ1PS8vAmbntjjKmQ=="
|
|
||||||
},
|
|
||||||
"nanoid@3.3.11": {
|
|
||||||
"integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
|
|
||||||
"bin": true
|
|
||||||
},
|
|
||||||
"node-domexception@1.0.0": {
|
|
||||||
"integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
|
|
||||||
"deprecated": true
|
|
||||||
},
|
|
||||||
"node-fetch@3.3.2": {
|
|
||||||
"integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
|
|
||||||
"dependencies": [
|
|
||||||
"data-uri-to-buffer",
|
|
||||||
"fetch-blob",
|
|
||||||
"formdata-polyfill"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"obsidian@1.12.2_@codemirror+state@6.5.0_@codemirror+view@6.38.6": {
|
"obsidian@1.12.2_@codemirror+state@6.5.0_@codemirror+view@6.38.6": {
|
||||||
"integrity": "sha512-DGAzpt6vo+sMDET/o8Zj26Bj2hbHrFsNUU8TtnzCyerO/OHksMFQnU9QEnPHVsOMstt/WnHXfC56j2r1syObWg==",
|
"integrity": "sha512-DGAzpt6vo+sMDET/o8Zj26Bj2hbHrFsNUU8TtnzCyerO/OHksMFQnU9QEnPHVsOMstt/WnHXfC56j2r1syObWg==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -1119,40 +718,6 @@
|
|||||||
"moment"
|
"moment"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"package-json-from-dist@1.0.1": {
|
|
||||||
"integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw=="
|
|
||||||
},
|
|
||||||
"path-scurry@2.0.2": {
|
|
||||||
"integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==",
|
|
||||||
"dependencies": [
|
|
||||||
"lru-cache",
|
|
||||||
"minipass"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"picocolors@1.1.1": {
|
|
||||||
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="
|
|
||||||
},
|
|
||||||
"picomatch@4.0.3": {
|
|
||||||
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="
|
|
||||||
},
|
|
||||||
"postcss@8.5.6": {
|
|
||||||
"integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==",
|
|
||||||
"dependencies": [
|
|
||||||
"nanoid",
|
|
||||||
"picocolors",
|
|
||||||
"source-map-js"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"react-dom@19.1.0_react@19.1.0": {
|
|
||||||
"integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==",
|
|
||||||
"dependencies": [
|
|
||||||
"react",
|
|
||||||
"scheduler"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"react@19.1.0": {
|
|
||||||
"integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg=="
|
|
||||||
},
|
|
||||||
"remark-frontmatter@5.0.0": {
|
"remark-frontmatter@5.0.0": {
|
||||||
"integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==",
|
"integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -1190,52 +755,16 @@
|
|||||||
"unified"
|
"unified"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rimraf@6.1.3": {
|
|
||||||
"integrity": "sha512-LKg+Cr2ZF61fkcaK1UdkH2yEBBKnYjTyWzTJT6KNPcSPaiT7HSdhtMXQuN5wkTX0Xu72KQ1l8S42rlmexS2hSA==",
|
|
||||||
"dependencies": [
|
|
||||||
"glob",
|
|
||||||
"package-json-from-dist"
|
|
||||||
],
|
|
||||||
"bin": true
|
|
||||||
},
|
|
||||||
"scheduler@0.26.0": {
|
|
||||||
"integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA=="
|
|
||||||
},
|
|
||||||
"source-map-js@1.2.1": {
|
|
||||||
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="
|
|
||||||
},
|
|
||||||
"style-mod@4.1.3": {
|
"style-mod@4.1.3": {
|
||||||
"integrity": "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ=="
|
"integrity": "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ=="
|
||||||
},
|
},
|
||||||
"tailwindcss@4.2.0": {
|
|
||||||
"integrity": "sha512-yYzTZ4++b7fNYxFfpnberEEKu43w44aqDMNM9MHMmcKuCH7lL8jJ4yJ7LGHv7rSwiqM0nkiobF9I6cLlpS2P7Q=="
|
|
||||||
},
|
|
||||||
"tapable@2.3.0": {
|
|
||||||
"integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg=="
|
|
||||||
},
|
|
||||||
"tar@7.5.9": {
|
|
||||||
"integrity": "sha512-BTLcK0xsDh2+PUe9F6c2TlRp4zOOBMTkoQHQIWSIzI0R7KG46uEwq4OPk2W7bZcprBMsuaeFsqwYr7pjh6CuHg==",
|
|
||||||
"dependencies": [
|
|
||||||
"@isaacs/fs-minipass",
|
|
||||||
"chownr",
|
|
||||||
"minipass",
|
|
||||||
"minizlib",
|
|
||||||
"yallist"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"trough@2.2.0": {
|
"trough@2.2.0": {
|
||||||
"integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw=="
|
"integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw=="
|
||||||
},
|
},
|
||||||
"tslib@2.8.1": {
|
|
||||||
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
|
|
||||||
},
|
|
||||||
"typescript@5.9.3": {
|
"typescript@5.9.3": {
|
||||||
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
|
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
|
||||||
"bin": true
|
"bin": true
|
||||||
},
|
},
|
||||||
"undici-types@6.21.0": {
|
|
||||||
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="
|
|
||||||
},
|
|
||||||
"unified@11.0.5": {
|
"unified@11.0.5": {
|
||||||
"integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==",
|
"integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -1275,10 +804,6 @@
|
|||||||
"unist-util-visit-parents"
|
"unist-util-visit-parents"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"uuid@11.1.0": {
|
|
||||||
"integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==",
|
|
||||||
"bin": true
|
|
||||||
},
|
|
||||||
"vfile-message@4.0.3": {
|
"vfile-message@4.0.3": {
|
||||||
"integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==",
|
"integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -1296,45 +821,25 @@
|
|||||||
"w3c-keyname@2.2.8": {
|
"w3c-keyname@2.2.8": {
|
||||||
"integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ=="
|
"integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ=="
|
||||||
},
|
},
|
||||||
"web-streams-polyfill@3.3.3": {
|
|
||||||
"integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw=="
|
|
||||||
},
|
|
||||||
"yallist@5.0.0": {
|
|
||||||
"integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="
|
|
||||||
},
|
|
||||||
"zwitch@2.0.4": {
|
"zwitch@2.0.4": {
|
||||||
"integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A=="
|
"integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A=="
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"workspace": {
|
"workspace": {
|
||||||
"packageJson": {
|
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
|
"jsr:@deno/esbuild-plugin@^1.2.1",
|
||||||
"npm:@flowershow/remark-wiki-link@^3.4.0",
|
"npm:@flowershow/remark-wiki-link@^3.4.0",
|
||||||
"npm:@instantdb/admin@~0.21.3",
|
|
||||||
"npm:@instantdb/react@~0.20.28",
|
|
||||||
"npm:@react-oauth/google@~0.12.2",
|
|
||||||
"npm:@tailwindcss/postcss@4",
|
|
||||||
"npm:@types/node@20",
|
|
||||||
"npm:@types/react-dom@19",
|
|
||||||
"npm:@types/react@19",
|
|
||||||
"npm:@wasm-tool/rollup-plugin-rust@^3.1.4",
|
|
||||||
"npm:binaryen@125",
|
|
||||||
"npm:builtin-modules@5",
|
"npm:builtin-modules@5",
|
||||||
"npm:esbuild@~0.27.3",
|
"npm:esbuild@~0.27.3",
|
||||||
"npm:mdast@3",
|
"npm:mdast@3",
|
||||||
"npm:obsidian@^1.12.2",
|
"npm:obsidian@^1.12.2",
|
||||||
"npm:react-dom@19.1.0",
|
|
||||||
"npm:react@19.1.0",
|
|
||||||
"npm:remark-frontmatter@5",
|
"npm:remark-frontmatter@5",
|
||||||
"npm:remark-gfm@^4.0.1",
|
"npm:remark-gfm@^4.0.1",
|
||||||
"npm:remark-parse@11",
|
"npm:remark-parse@11",
|
||||||
"npm:remark-stringify@11",
|
"npm:remark-stringify@11",
|
||||||
"npm:tailwindcss@4",
|
|
||||||
"npm:tslib@^2.6.2",
|
|
||||||
"npm:typescript@^5.9.3",
|
"npm:typescript@^5.9.3",
|
||||||
"npm:unified@^11.0.5",
|
"npm:unified@^11.0.5",
|
||||||
"npm:unist-util-visit@^5.1.0"
|
"npm:unist-util-visit@^5.1.0"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Plugin, ItemView, TFile, Modal } from "obsidian";
|
import { Plugin, ItemView, TFile, Modal } from "obsidian";
|
||||||
import wasmBinary from "./rust_dist/ppc_bg.wasm";
|
import wasmBinary from "./rust_dist/marts_bg.wasm";
|
||||||
import * as wasmNamespace from "./rust_dist/ppc";
|
import * as wasmNamespace from "./rust_dist/marts";
|
||||||
import { c2vi_obsidian_canvas_patch } from "@ppc/marts";
|
import { c2vi_obsidian_canvas_patch } from "@ppc/marts";
|
||||||
import { task_obsidian_otask_parse } from "@ppc/marts";
|
import { task_obsidian_otask_parse } from "@ppc/marts";
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ class Mize {
|
|||||||
async function mize_init() {
|
async function mize_init() {
|
||||||
|
|
||||||
// init the wasm_bindgen module
|
// init the wasm_bindgen module
|
||||||
const wasmModule = await import("./rust_dist/ppc.js");
|
const wasmModule = await import("./rust_dist/marts.js");
|
||||||
await wasmModule.default({ module_or_path: wasmBinary });
|
await wasmModule.default({ module_or_path: wasmBinary });
|
||||||
wasmModule.initSync();
|
wasmModule.initSync();
|
||||||
const jsInstance = await wasmModule.new_js_instance(JSON.stringify({
|
const jsInstance = await wasmModule.new_js_instance(JSON.stringify({
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
"workspace": [
|
"workspace": [
|
||||||
"./packages/ppc/platform/obsidian",
|
"./apps/obsidian-plugin",
|
||||||
"./packages/marts",
|
"./marts"
|
||||||
"./packages/mize"
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
110
deno.lock
generated
110
deno.lock
generated
@@ -11,7 +11,6 @@
|
|||||||
"npm:esbuild@*": "0.27.3",
|
"npm:esbuild@*": "0.27.3",
|
||||||
"npm:esbuild@~0.25.5": "0.25.12",
|
"npm:esbuild@~0.25.5": "0.25.12",
|
||||||
"npm:esbuild@~0.27.3": "0.27.3",
|
"npm:esbuild@~0.27.3": "0.27.3",
|
||||||
"npm:matrix-js-sdk@42": "42.0.0",
|
|
||||||
"npm:mdast@3": "3.0.0",
|
"npm:mdast@3": "3.0.0",
|
||||||
"npm:obsidian@^1.12.2": "1.12.3_@codemirror+state@6.5.0_@codemirror+view@6.38.6",
|
"npm:obsidian@^1.12.2": "1.12.3_@codemirror+state@6.5.0_@codemirror+view@6.38.6",
|
||||||
"npm:obsidian@^1.12.3": "1.12.3_@codemirror+state@6.5.0_@codemirror+view@6.38.6",
|
"npm:obsidian@^1.12.3": "1.12.3_@codemirror+state@6.5.0_@codemirror+view@6.38.6",
|
||||||
@@ -46,9 +45,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"npm": {
|
"npm": {
|
||||||
"@babel/runtime@8.0.0": {
|
|
||||||
"integrity": "sha512-sL6cvO2IfkSu/iU+zs2S/w01B7A8V7suXSIKEN4hPFFdZoiPGxrj5pAG0lCaqLWiEIrjKzdznIWuaLcxPR53qw=="
|
|
||||||
},
|
|
||||||
"@codemirror/state@6.5.0": {
|
"@codemirror/state@6.5.0": {
|
||||||
"integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==",
|
"integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -336,9 +332,6 @@
|
|||||||
"@marijn/find-cluster-break@1.0.2": {
|
"@marijn/find-cluster-break@1.0.2": {
|
||||||
"integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g=="
|
"integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g=="
|
||||||
},
|
},
|
||||||
"@matrix-org/matrix-sdk-crypto-wasm@18.3.1": {
|
|
||||||
"integrity": "sha512-VRjWhE1UgHnPpJ3b9B5+8z71ZC/HICFngPPFIN6ktzmUBKI5RusPujzbAQUoB3CgZ0yU58L99AfSQS4YTztSWw=="
|
|
||||||
},
|
|
||||||
"@types/codemirror@5.60.8": {
|
"@types/codemirror@5.60.8": {
|
||||||
"integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==",
|
"integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -354,9 +347,6 @@
|
|||||||
"@types/estree@1.0.8": {
|
"@types/estree@1.0.8": {
|
||||||
"integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="
|
"integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="
|
||||||
},
|
},
|
||||||
"@types/events@3.0.3": {
|
|
||||||
"integrity": "sha512-trOc4AAUThEz9hapPtSd7wf5tiQKvTtu5b371UxXdTuqzIh0ArcRspRP0i0Viu+LXstIQ1z96t1nsPxT9ol01g=="
|
|
||||||
},
|
|
||||||
"@types/mdast@4.0.4": {
|
"@types/mdast@4.0.4": {
|
||||||
"integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==",
|
"integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -375,21 +365,9 @@
|
|||||||
"@types/unist@3.0.3": {
|
"@types/unist@3.0.3": {
|
||||||
"integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="
|
"integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="
|
||||||
},
|
},
|
||||||
"another-json@0.2.0": {
|
|
||||||
"integrity": "sha512-/Ndrl68UQLhnCdsAzEXLMFuOR546o2qbYRqCglaNHbjXrwG1ayTcdwr3zkSGOGtGXDyR5X9nCFfnyG2AFJIsqg=="
|
|
||||||
},
|
|
||||||
"bail@2.0.2": {
|
"bail@2.0.2": {
|
||||||
"integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="
|
"integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="
|
||||||
},
|
},
|
||||||
"base-x@5.0.1": {
|
|
||||||
"integrity": "sha512-M7uio8Zt++eg3jPj+rHMfCC+IuygQHHCOU+IYsVtik6FWjuYpVt/+MRKcgsAMHh8mMFAwnB+Bs+mTrFiXjMzKg=="
|
|
||||||
},
|
|
||||||
"bs58@6.0.0": {
|
|
||||||
"integrity": "sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==",
|
|
||||||
"dependencies": [
|
|
||||||
"base-x"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"builtin-modules@5.0.0": {
|
"builtin-modules@5.0.0": {
|
||||||
"integrity": "sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg=="
|
"integrity": "sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg=="
|
||||||
},
|
},
|
||||||
@@ -399,9 +377,6 @@
|
|||||||
"character-entities@2.0.2": {
|
"character-entities@2.0.2": {
|
||||||
"integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="
|
"integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="
|
||||||
},
|
},
|
||||||
"content-type@2.0.0": {
|
|
||||||
"integrity": "sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ=="
|
|
||||||
},
|
|
||||||
"crelt@1.0.6": {
|
"crelt@1.0.6": {
|
||||||
"integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g=="
|
"integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g=="
|
||||||
},
|
},
|
||||||
@@ -495,9 +470,6 @@
|
|||||||
"escape-string-regexp@5.0.0": {
|
"escape-string-regexp@5.0.0": {
|
||||||
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="
|
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="
|
||||||
},
|
},
|
||||||
"events@3.3.0": {
|
|
||||||
"integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
|
|
||||||
},
|
|
||||||
"extend@3.0.2": {
|
"extend@3.0.2": {
|
||||||
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
|
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
|
||||||
},
|
},
|
||||||
@@ -513,47 +485,15 @@
|
|||||||
"github-slugger@2.0.0": {
|
"github-slugger@2.0.0": {
|
||||||
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
|
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
|
||||||
},
|
},
|
||||||
"is-network-error@1.3.2": {
|
|
||||||
"integrity": "sha512-PhBY86zaxNZUuWP6h13Vu5oFe0XY6/UlKzQnYFELzGVHygP3MxmvTfYSG7GN3aIab/iWudSMgjSnG9Dq+nHrgA=="
|
|
||||||
},
|
|
||||||
"is-plain-obj@4.1.0": {
|
"is-plain-obj@4.1.0": {
|
||||||
"integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg=="
|
"integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg=="
|
||||||
},
|
},
|
||||||
"loglevel@1.9.2": {
|
|
||||||
"integrity": "sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg=="
|
|
||||||
},
|
|
||||||
"longest-streak@3.1.0": {
|
"longest-streak@3.1.0": {
|
||||||
"integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="
|
"integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="
|
||||||
},
|
},
|
||||||
"markdown-table@3.0.4": {
|
"markdown-table@3.0.4": {
|
||||||
"integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw=="
|
"integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw=="
|
||||||
},
|
},
|
||||||
"matrix-events-sdk@0.0.1": {
|
|
||||||
"integrity": "sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA=="
|
|
||||||
},
|
|
||||||
"matrix-js-sdk@42.0.0": {
|
|
||||||
"integrity": "sha512-i3SnhdkgnKA7O0iVlaZCo96GGaIZ0FGD93LQ34N2+Hj/kaC7Ffbch7OEkwYA//mYGCKRAMxduBacoy8WscfqVw==",
|
|
||||||
"dependencies": [
|
|
||||||
"@babel/runtime",
|
|
||||||
"@matrix-org/matrix-sdk-crypto-wasm",
|
|
||||||
"another-json",
|
|
||||||
"bs58",
|
|
||||||
"content-type",
|
|
||||||
"loglevel",
|
|
||||||
"matrix-events-sdk",
|
|
||||||
"matrix-widget-api",
|
|
||||||
"p-retry",
|
|
||||||
"sdp-transform",
|
|
||||||
"unhomoglyph"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"matrix-widget-api@1.17.0": {
|
|
||||||
"integrity": "sha512-5FHoo3iEP3Bdlv5jsYPWOqj+pGdFQNLWnJLiB0V7Ygne7bb+Gsj3ibyFyHWC6BVw+Z+tSW4ljHpO17I9TwStwQ==",
|
|
||||||
"dependencies": [
|
|
||||||
"@types/events",
|
|
||||||
"events"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"mdast-util-find-and-replace@3.0.2": {
|
"mdast-util-find-and-replace@3.0.2": {
|
||||||
"integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==",
|
"integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -946,12 +886,6 @@
|
|||||||
"moment"
|
"moment"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"p-retry@8.0.0": {
|
|
||||||
"integrity": "sha512-kFVqH1HxOHp8LupNsOys7bSV09VYTRLxarH/mokO4Rqhk6wGi70E0jh4VzvVGXfEVNggHoHLAMWsQqHyU1Ey9A==",
|
|
||||||
"dependencies": [
|
|
||||||
"is-network-error"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"remark-frontmatter@5.0.0": {
|
"remark-frontmatter@5.0.0": {
|
||||||
"integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==",
|
"integrity": "sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -989,10 +923,6 @@
|
|||||||
"unified"
|
"unified"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"sdp-transform@3.0.0": {
|
|
||||||
"integrity": "sha512-gfYVRGxjHkGF2NPeUWHw5u6T/KGFtS5/drPms73gaSuMaVHKCY3lpLnGDfswVQO0kddeePoti09AwhYP4zA8dQ==",
|
|
||||||
"bin": true
|
|
||||||
},
|
|
||||||
"style-mod@4.1.3": {
|
"style-mod@4.1.3": {
|
||||||
"integrity": "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ=="
|
"integrity": "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ=="
|
||||||
},
|
},
|
||||||
@@ -1003,9 +933,6 @@
|
|||||||
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
|
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
|
||||||
"bin": true
|
"bin": true
|
||||||
},
|
},
|
||||||
"unhomoglyph@1.0.6": {
|
|
||||||
"integrity": "sha512-7uvcWI3hWshSADBu4JpnyYbTVc7YlhF5GDW/oPD5AxIxl34k4wXR3WDkPnzLxkN32LiTCTKMQLtKVZiwki3zGg=="
|
|
||||||
},
|
|
||||||
"unified@11.0.5": {
|
"unified@11.0.5": {
|
||||||
"integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==",
|
"integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@@ -1068,7 +995,24 @@
|
|||||||
},
|
},
|
||||||
"workspace": {
|
"workspace": {
|
||||||
"members": {
|
"members": {
|
||||||
"packages/marts": {
|
"apps/obsidian-plugin": {
|
||||||
|
"dependencies": [
|
||||||
|
"jsr:@deno/esbuild-plugin@^1.2.1",
|
||||||
|
"npm:@flowershow/remark-wiki-link@^3.4.0",
|
||||||
|
"npm:builtin-modules@5",
|
||||||
|
"npm:esbuild@~0.27.3",
|
||||||
|
"npm:mdast@3",
|
||||||
|
"npm:obsidian@^1.12.2",
|
||||||
|
"npm:remark-frontmatter@5",
|
||||||
|
"npm:remark-gfm@^4.0.1",
|
||||||
|
"npm:remark-parse@11",
|
||||||
|
"npm:remark-stringify@11",
|
||||||
|
"npm:typescript@^5.9.3",
|
||||||
|
"npm:unified@^11.0.5",
|
||||||
|
"npm:unist-util-visit@^5.1.0"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"marts": {
|
||||||
"packageJson": {
|
"packageJson": {
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
"npm:@flowershow/remark-wiki-link@^3.4.0",
|
"npm:@flowershow/remark-wiki-link@^3.4.0",
|
||||||
@@ -1085,24 +1029,6 @@
|
|||||||
"npm:unist-util-visit@^5.1.0"
|
"npm:unist-util-visit@^5.1.0"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"packages/ppc/platform/obsidian": {
|
|
||||||
"dependencies": [
|
|
||||||
"jsr:@deno/esbuild-plugin@^1.2.1",
|
|
||||||
"npm:@flowershow/remark-wiki-link@^3.4.0",
|
|
||||||
"npm:builtin-modules@5",
|
|
||||||
"npm:esbuild@~0.27.3",
|
|
||||||
"npm:matrix-js-sdk@42",
|
|
||||||
"npm:mdast@3",
|
|
||||||
"npm:obsidian@^1.12.2",
|
|
||||||
"npm:remark-frontmatter@5",
|
|
||||||
"npm:remark-gfm@^4.0.1",
|
|
||||||
"npm:remark-parse@11",
|
|
||||||
"npm:remark-stringify@11",
|
|
||||||
"npm:typescript@^5.9.3",
|
|
||||||
"npm:unified@^11.0.5",
|
|
||||||
"npm:unist-util-visit@^5.1.0"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,9 @@ description = "marts = mize_parts - parts collection of the Mize framework"
|
|||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
crate-type = ["cdylib", "rlib"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
clap = { version = "4.5.59", optional = true, features = ["string"] }
|
clap = { version = "4.5.59", optional = true, features = ["string"] }
|
||||||
flume = "0.12.0"
|
flume = "0.12.0"
|
||||||
@@ -42,7 +45,7 @@ default = ["target-os", "desktop", "server", "client"]
|
|||||||
#default = ["target-js", "target-obsidian"] # to get rust analyzer to analyzer js only parts
|
#default = ["target-js", "target-obsidian"] # to get rust analyzer to analyzer js only parts
|
||||||
target-spacetime = [ "mize/target-js", "spacetimedb-sdk/browser" ]
|
target-spacetime = [ "mize/target-js", "spacetimedb-sdk/browser" ]
|
||||||
target-os = [ "clap", "mize/target-os", "rusqlite", "dioxus", "dep:webbrowser" ]
|
target-os = [ "clap", "mize/target-os", "rusqlite", "dioxus", "dep:webbrowser" ]
|
||||||
target-js = [ "mize/target-js", "spacetimedb-sdk/browser", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", "js-sys", "generated/target-js", "web-sys/Storage", "web-sys/Window" ]
|
target-js = [ "mize/target-js", "spacetimedb-sdk/browser", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", "js-sys", "generated/target-js", "web-sys/Storage", "web-sys/Window", "dioxus" ]
|
||||||
target-obsidian = [ "target-js" ]
|
target-obsidian = [ "target-js" ]
|
||||||
desktop = ["dioxus/desktop"]
|
desktop = ["dioxus/desktop"]
|
||||||
client = []
|
client = []
|
||||||
|
|||||||
@@ -2,7 +2,11 @@ use mize::{Mize, MizeResult, MizePart, MizePartCreate, mize_part};
|
|||||||
use wasm_bindgen::JsValue;
|
use wasm_bindgen::JsValue;
|
||||||
use mize::error::IntoMizeResultJsValue;
|
use mize::error::IntoMizeResultJsValue;
|
||||||
use wasm_bindgen::prelude::*;
|
use wasm_bindgen::prelude::*;
|
||||||
|
use dioxus::prelude::*;
|
||||||
|
use crate::ClientAuth;
|
||||||
|
use wasm_bindgen::prelude::*;
|
||||||
|
use serde::{Serialize, Deserialize};
|
||||||
|
use mize::platform::js::JsMize;
|
||||||
|
|
||||||
|
|
||||||
// console_log macro
|
// console_log macro
|
||||||
@@ -86,3 +90,43 @@ impl ObsidianPart {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#[wasm_bindgen]
|
||||||
|
pub fn test_fn(mize: &mut JsMize) {
|
||||||
|
let mize = mize.inner();
|
||||||
|
console_log!("test fn...");
|
||||||
|
|
||||||
|
if let Err(e) = try_test_fn(mize) {
|
||||||
|
console_log!("err: {:?}", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fn try_test_fn(mize: &mut Mize) -> MizeResult<()> {
|
||||||
|
//let auth = mize.get_part_native::<ClientAuth>("client_auth")?;
|
||||||
|
//console_log!("secrets: {:?}", auth.secrets());
|
||||||
|
|
||||||
|
let parts = mize.parts.lock().unwrap();
|
||||||
|
for part in parts.keys() {
|
||||||
|
console_log!("part: {}", part)
|
||||||
|
}
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
#[wasm_bindgen]
|
||||||
|
pub fn part_obsidian_init(mize: &mut JsMize, plugin: JsValue, app: JsValue) {
|
||||||
|
let mut mize = mize.inner();
|
||||||
|
if let Err(e) = obsidian_mize_main(&mut mize, plugin, app) {
|
||||||
|
console_log!("Failed to start the obsidian mize part: {:?}", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn obsidian_mize_main(mize: &mut Mize, plugin: JsValue, app: JsValue) -> MizeResult<()> {
|
||||||
|
|
||||||
|
crate::part_obsidian(mize, plugin, app)?;
|
||||||
|
crate::part_client_auth(mize)?;
|
||||||
|
crate::spacetime(mize)?;
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,246 +0,0 @@
|
|||||||
use mize::{Mize, MizeResult, MizePart, MizePartCreate, mize_part};
|
|
||||||
use wasm_bindgen::prelude::*;
|
|
||||||
use wasm_bindgen_futures::spawn_local;
|
|
||||||
use js_sys::Function;
|
|
||||||
use web_sys::HtmlElement;
|
|
||||||
|
|
||||||
use matrix_sdk::{
|
|
||||||
Client, ClientConfig, SyncState,
|
|
||||||
ruma::{
|
|
||||||
user_id::UserId,
|
|
||||||
events::room::message::RoomMessageEventContent,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
mod ui;
|
|
||||||
use ui::mount_chat_app;
|
|
||||||
|
|
||||||
const ROOM_ID: &str = "!XwqdXGPlmaLatdGUiN:ppc.social";
|
|
||||||
const ACCOUNT_NAME: &str = "default";
|
|
||||||
const INITIAL_LOAD_LIMIT: usize = 50;
|
|
||||||
|
|
||||||
/// Matrix part that manages Matrix client and UI
|
|
||||||
#[mize_part("matrix")]
|
|
||||||
#[derive(Clone)]
|
|
||||||
pub struct MatrixPart {
|
|
||||||
mize: Mize,
|
|
||||||
pub client: Option<Client>,
|
|
||||||
pub timeline: Vec<matrix_sdk::SyncRoomEvent>,
|
|
||||||
pub message_draft: String,
|
|
||||||
pub edit_event_id: Option<String>,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl MizePart for MatrixPart {}
|
|
||||||
impl MizePartCreate for MatrixPart {}
|
|
||||||
|
|
||||||
impl MatrixPart {
|
|
||||||
/// Create a new MatrixPart
|
|
||||||
pub fn new(mize: Mize) -> Self {
|
|
||||||
Self {
|
|
||||||
mize,
|
|
||||||
client: None,
|
|
||||||
timeline: Vec::new(),
|
|
||||||
message_draft: String::new(),
|
|
||||||
edit_event_id: None,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Initialize the Matrix client from config
|
|
||||||
pub async fn init_client(&mut self) -> Result<(), String> {
|
|
||||||
let homeserver = self.mize
|
|
||||||
.get_config(&format!("matrix.accounts.{}.homeserver", ACCOUNT_NAME))
|
|
||||||
.map_err(|e| format!("Failed to get homeserver config: {:?}", e))?;
|
|
||||||
|
|
||||||
let access_token = self.mize
|
|
||||||
.get_config(&format!("matrix.accounts.{}.access_token", ACCOUNT_NAME))
|
|
||||||
.map_err(|e| format!("Failed to get access_token config: {:?}", e))?;
|
|
||||||
|
|
||||||
let user_id_str = self.mize
|
|
||||||
.get_config(&format!("matrix.accounts.{}.user_id", ACCOUNT_NAME))
|
|
||||||
.map_err(|e| format!("Failed to get user_id config: {:?}", e))?;
|
|
||||||
|
|
||||||
let device_id = self.mize
|
|
||||||
.get_config(&format!("matrix.accounts.{}.device_id", ACCOUNT_NAME))
|
|
||||||
.map_err(|e| format!("Failed to get device_id config: {:?}", e))?;
|
|
||||||
|
|
||||||
let user_id = UserId::parse(&user_id_str)
|
|
||||||
.map_err(|e| format!("Invalid user_id: {:?}", e))?;
|
|
||||||
|
|
||||||
let config = ClientConfig::new()
|
|
||||||
.homeserver_url(homeserver)
|
|
||||||
.device_id(device_id);
|
|
||||||
|
|
||||||
let client = Client::new_with_config(user_id, Some(access_token), config)
|
|
||||||
.await
|
|
||||||
.map_err(|e| format!("Failed to create client: {:?}", e))?;
|
|
||||||
|
|
||||||
self.client = Some(client.clone());
|
|
||||||
|
|
||||||
// Start sync in background
|
|
||||||
self.start_sync(client).await?;
|
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Start sync and set up event listeners
|
|
||||||
async fn start_sync(&mut self, client: Client) -> Result<(), String> {
|
|
||||||
let room_id = ROOM_ID.to_string();
|
|
||||||
let mize = self.mize.clone();
|
|
||||||
|
|
||||||
// Start sync
|
|
||||||
let sync_token = client.sync_token().await;
|
|
||||||
let mut sync_state = SyncState::new(sync_token);
|
|
||||||
|
|
||||||
let client_clone = client.clone();
|
|
||||||
|
|
||||||
spawn_local(async move {
|
|
||||||
loop {
|
|
||||||
match client_clone.sync(&mut sync_state).await {
|
|
||||||
Ok(response) => {
|
|
||||||
// Process sync response - update MatrixPart via mize
|
|
||||||
if let Some(rooms) = response.rooms {
|
|
||||||
if let Some(join) = rooms.join {
|
|
||||||
if let Some(room_events) = join.get(&room_id) {
|
|
||||||
// Get MatrixPart and update timeline
|
|
||||||
if let Ok(mut matrix_part) = mize.get_part_native::<MatrixPart>("matrix") {
|
|
||||||
for event in &room_events.timeline.events {
|
|
||||||
if event.room_id() == room_id {
|
|
||||||
matrix_part.timeline.push(event.clone());
|
|
||||||
// Keep only last INITIAL_LOAD_LIMIT events
|
|
||||||
if matrix_part.timeline.len() > INITIAL_LOAD_LIMIT {
|
|
||||||
matrix_part.timeline.remove(0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check if we should stop syncing
|
|
||||||
if sync_state.should_stop() {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Err(e) => {
|
|
||||||
console_log!("Sync error: {:?}", e);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Send a message to the room
|
|
||||||
pub async fn send_message(&mut self) -> MizeResult<()> {
|
|
||||||
let client = self.client.as_ref()
|
|
||||||
.ok_or_else(|| mize::error::Error::new("Client not initialized"))?;
|
|
||||||
|
|
||||||
if self.message_draft.is_empty() {
|
|
||||||
return Ok(());
|
|
||||||
}
|
|
||||||
|
|
||||||
let content = RoomMessageEventContent::text_plain(&self.message_draft);
|
|
||||||
|
|
||||||
if let Some(_event_id) = &self.edit_event_id {
|
|
||||||
// Editing existing message - placeholder for now
|
|
||||||
console_log!("Editing message (not yet implemented)");
|
|
||||||
}
|
|
||||||
|
|
||||||
// Send message
|
|
||||||
client.send_room_message(ROOM_ID, content).await?;
|
|
||||||
|
|
||||||
// Clear draft after sending
|
|
||||||
self.message_draft.clear();
|
|
||||||
self.edit_event_id = None;
|
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Entry point for the Matrix part
|
|
||||||
pub fn part_matrix(mize: &mut Mize) -> MizeResult<()> {
|
|
||||||
#[cfg(feature = "target_obsidian")] {
|
|
||||||
use crate::ObsidianPart;
|
|
||||||
|
|
||||||
// Get the Obsidian part
|
|
||||||
let obsidian = mize.get_part_native::<ObsidianPart>("obsidian")?;
|
|
||||||
|
|
||||||
// Create and register MatrixPart
|
|
||||||
let matrix_part = MatrixPart::new(mize.clone());
|
|
||||||
mize.register_part(Box::new(matrix_part));
|
|
||||||
|
|
||||||
// Get the registered MatrixPart to initialize it
|
|
||||||
let mize_clone = mize.clone();
|
|
||||||
spawn_local(async move {
|
|
||||||
if let Ok(mut matrix_part) = mize_clone.get_part_native::<MatrixPart>("matrix") {
|
|
||||||
if let Err(e) = matrix_part.init_client().await {
|
|
||||||
console_log!("Failed to initialize Matrix client: {}", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// Create a JS function that will be called when the view is opened
|
|
||||||
let mize_for_view = mize.clone();
|
|
||||||
let view_creator = Closure::<dyn Fn(JsValue)>::wrap(Box::new(move |leaf: JsValue| {
|
|
||||||
if let Some(element) = extract_dom_element(leaf) {
|
|
||||||
// Get MatrixPart state for the UI
|
|
||||||
if let Ok(matrix_part) = mize_for_view.get_part_native::<MatrixPart>("matrix") {
|
|
||||||
let timeline = matrix_part.timeline.clone();
|
|
||||||
let message_draft = matrix_part.message_draft.clone();
|
|
||||||
let edit_event_id = matrix_part.edit_event_id.clone();
|
|
||||||
|
|
||||||
mount_chat_app(element, timeline, message_draft, edit_event_id, mize_for_view.clone());
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
console_log!("Failed to extract DOM element from leaf");
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
|
|
||||||
// Convert closure to JS Function
|
|
||||||
let view_creator_fn: &Function = view_creator.as_ref().unchecked_ref();
|
|
||||||
|
|
||||||
// Register the view with Obsidian
|
|
||||||
ObsidianPart::register_view(&obsidian.plugin(), "matrix-chat-view", view_creator_fn)?;
|
|
||||||
|
|
||||||
// Prevent the closure from being dropped
|
|
||||||
view_creator.forget();
|
|
||||||
}
|
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Extract DOM element from Obsidian leaf JSValue
|
|
||||||
fn extract_dom_element(leaf: JsValue) -> Option<HtmlElement> {
|
|
||||||
use wasm_bindgen::JsCast;
|
|
||||||
use js_sys::Reflect;
|
|
||||||
|
|
||||||
// Try to get the containerEl from the leaf
|
|
||||||
let container_value = Reflect::get(&leaf, &"containerEl".into()).ok()?;
|
|
||||||
let container = container_value.dyn_into::<HtmlElement>().ok()?;
|
|
||||||
|
|
||||||
// Create a div to mount into
|
|
||||||
let doc = web_sys::window()?.document()?;
|
|
||||||
let mount_point = doc.create_element("div").ok()?;
|
|
||||||
mount_point.set_attribute("style", "height: 100%; width: 100%;").ok()?;
|
|
||||||
|
|
||||||
container.append_child(&mount_point).ok()?;
|
|
||||||
mount_point.dyn_into::<HtmlElement>().ok()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Console log macros
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! console_log {
|
|
||||||
($($t:tt)*) => {
|
|
||||||
web_sys::console::log_1(&format!($($t)*).into());
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! console_error {
|
|
||||||
($($t:tt)*) => {
|
|
||||||
web_sys::console::error_1(&format!($($t)*).into());
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,269 +0,0 @@
|
|||||||
use dioxus::prelude::*;
|
|
||||||
use dioxus_web::events::FormEvent;
|
|
||||||
use mize::Mize;
|
|
||||||
use matrix_sdk::SyncRoomEvent;
|
|
||||||
|
|
||||||
const ROOM_ID: &str = "!XwqdXGPlmaLatdGUiN:ppc.social";
|
|
||||||
|
|
||||||
/// Props for the chat component
|
|
||||||
#[derive(Props, Clone)]
|
|
||||||
pub struct ChatProps {
|
|
||||||
pub mize: Mize,
|
|
||||||
pub initial_timeline: Vec<SyncRoomEvent>,
|
|
||||||
pub initial_draft: String,
|
|
||||||
pub initial_edit_id: Option<String>,
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Message component - renders a single message
|
|
||||||
#[component]
|
|
||||||
pub fn Message(cx: Scope, event: SyncRoomEvent) -> Element {
|
|
||||||
let sender = event.sender().to_string();
|
|
||||||
let timestamp = event.origin_server_ts();
|
|
||||||
|
|
||||||
// Extract display name from MXID (basic version)
|
|
||||||
let display_name = if let Some(at_pos) = sender.find('@') {
|
|
||||||
if let Some(colon_pos) = sender.rfind(':') {
|
|
||||||
&sender[at_pos + 1..colon_pos]
|
|
||||||
} else {
|
|
||||||
&sender[at_pos + 1..]
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
&sender
|
|
||||||
};
|
|
||||||
|
|
||||||
// Format timestamp
|
|
||||||
let time_str = {
|
|
||||||
let dt = js_sys::Date::new(&(timestamp as f64));
|
|
||||||
dt.to_locale_string()
|
|
||||||
};
|
|
||||||
|
|
||||||
// Extract message content
|
|
||||||
let content = event
|
|
||||||
.as_original()
|
|
||||||
.and_then(|e| e.content().deserialize().ok())
|
|
||||||
.and_then(|c: matrix_sdk::ruma::events::room::message::RoomMessageEventContent| {
|
|
||||||
c.body().map(|s| s.to_string())
|
|
||||||
})
|
|
||||||
.unwrap_or_default();
|
|
||||||
|
|
||||||
// Check if this is an edit
|
|
||||||
let is_edit = event
|
|
||||||
.as_original()
|
|
||||||
.map(|e| {
|
|
||||||
e.content()
|
|
||||||
.get("m.relates_to")
|
|
||||||
.and_then(|v| v.as_object())
|
|
||||||
.and_then(|o| o.get("rel_type"))
|
|
||||||
.and_then(|v| v.as_str())
|
|
||||||
== Some("m.replace")
|
|
||||||
})
|
|
||||||
.unwrap_or(false);
|
|
||||||
|
|
||||||
cx.render(rsx! {
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-event",
|
|
||||||
style: "margin: 14px 16px; padding-bottom: 10px; border-bottom: 1px solid var(--background-modifier-border);",
|
|
||||||
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-msghead",
|
|
||||||
style: "font-size: 1em; font-weight: 500; color: var(--interactive-accent); display: flex; align-items: center; gap: 10px;",
|
|
||||||
|
|
||||||
span { display_name }
|
|
||||||
span {
|
|
||||||
style: "font-size: 0.85em; color: var(--text-muted); margin-left: auto;",
|
|
||||||
{time_str.clone()}
|
|
||||||
if is_edit { " · edited" }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-msgbody",
|
|
||||||
style: "margin: 6px 0 0 0; font-size: 1em;",
|
|
||||||
{content}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Editor component - message input area
|
|
||||||
#[component]
|
|
||||||
pub fn Editor(cx: Scope, mize: Mize, draft: UseSignal<String>, edit_id: UseSignal<Option<String>>) -> Element {
|
|
||||||
let on_input = move |evt: FormEvent| {
|
|
||||||
draft.set(evt.value.clone());
|
|
||||||
};
|
|
||||||
|
|
||||||
let on_send = move |_| {
|
|
||||||
let mize_clone = mize.clone();
|
|
||||||
let draft_val = draft.read().clone();
|
|
||||||
let edit_id_val = edit_id.read().clone();
|
|
||||||
|
|
||||||
cx.spawn(async move {
|
|
||||||
if let Ok(mut matrix_part) = mize_clone.get_part_native::<crate::matrix::MatrixPart>("matrix") {
|
|
||||||
matrix_part.message_draft = draft_val;
|
|
||||||
matrix_part.edit_event_id = edit_id_val;
|
|
||||||
if let Err(e) = matrix_part.send_message().await {
|
|
||||||
console_log!("Failed to send message: {:?}", e);
|
|
||||||
}
|
|
||||||
// Clear local draft
|
|
||||||
draft.set(String::new());
|
|
||||||
edit_id.set(None);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
let on_keydown = move |evt: dioxus_web::events::KeyboardEvent| {
|
|
||||||
if (evt.ctrl_key() || evt.meta_key()) && evt.key() == "Enter" {
|
|
||||||
on_send(evt);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
let on_cancel = move |_| {
|
|
||||||
draft.set(String::new());
|
|
||||||
edit_id.set(None);
|
|
||||||
};
|
|
||||||
|
|
||||||
cx.render(rsx! {
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-editor",
|
|
||||||
style: "border-top: 1px solid var(--background-modifier-border); background: var(--background-primary); padding: 8px 12px;",
|
|
||||||
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-editor-inner",
|
|
||||||
style: "border: 1px solid var(--background-modifier-border); border-radius: 6px; overflow: hidden; background: var(--background-secondary);",
|
|
||||||
|
|
||||||
textarea {
|
|
||||||
r#type: "text",
|
|
||||||
rows: "3",
|
|
||||||
style: "width: 99%; min-height: 40px; resize: vertical; background: transparent; border: none; outline: none; padding: 8px; font-family: inherit; font-size: inherit; color: var(--text-normal);",
|
|
||||||
value: "{draft}",
|
|
||||||
oninput: on_input,
|
|
||||||
onkeydown: on_keydown,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
button {
|
|
||||||
r#type: "button",
|
|
||||||
style: "margin-top: 3px; float: right; padding: 6px 14px; font-size: 0.97em; border-radius: 5px; border: none; background: var(--interactive-accent); color: white; cursor: pointer;",
|
|
||||||
onclick: on_send,
|
|
||||||
if edit_id.read().is_some() { "Save" } else { "Send" }
|
|
||||||
}
|
|
||||||
|
|
||||||
if edit_id.read().is_some() {
|
|
||||||
button {
|
|
||||||
r#type: "button",
|
|
||||||
style: "margin-right: 12px; padding: 6px 12px; font-size: 0.93em; border-radius: 5px; border: none; color: var(--text-normal); background: var(--background-secondary); cursor: pointer;",
|
|
||||||
onclick: on_cancel,
|
|
||||||
"Cancel"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Timeline component - list of messages
|
|
||||||
#[component]
|
|
||||||
pub fn Timeline(cx: Scope, mize: Mize, timeline: UseSignal<Vec<SyncRoomEvent>>) -> Element {
|
|
||||||
// Periodically refresh timeline from MatrixPart
|
|
||||||
cx.use_effect((), move |_| {
|
|
||||||
let mize_clone = mize.clone();
|
|
||||||
let timeline_clone = timeline.clone();
|
|
||||||
|
|
||||||
// Set up interval to poll for updates
|
|
||||||
let interval = js_sys::set_interval(
|
|
||||||
&Closure::<dyn FnMut()>::wrap(Box::new(move || {
|
|
||||||
if let Ok(matrix_part) = mize_clone.get_part_native::<crate::matrix::MatrixPart>("matrix") {
|
|
||||||
*timeline_clone.write() = matrix_part.timeline.clone();
|
|
||||||
}
|
|
||||||
})),
|
|
||||||
1000, // 1 second
|
|
||||||
);
|
|
||||||
|
|
||||||
// Cleanup on unmount
|
|
||||||
move || {
|
|
||||||
js_sys::clear_interval(interval);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
cx.render(rsx! {
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-scroll",
|
|
||||||
style: "flex-grow: 1; overflow-y: auto; padding: 8px 0; background: var(--background-secondary);",
|
|
||||||
|
|
||||||
// Room name header
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-roomname",
|
|
||||||
style: "font-weight: 600; text-align: center; font-size: 1.1em; margin: 2px 0 12px 0; border-bottom: 1px solid var(--background-modifier-border); color: var(--text-accent); background: var(--background-primary);",
|
|
||||||
"Matrix Chat - {ROOM_ID}"
|
|
||||||
}
|
|
||||||
|
|
||||||
// Messages
|
|
||||||
for event in timeline.read().iter() {
|
|
||||||
rsx! { Message { event: event.clone() } }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Root chat component
|
|
||||||
#[component]
|
|
||||||
pub fn Chat(cx: Scope, props: ChatProps) -> Element {
|
|
||||||
let timeline = use_signal(&cx, || props.initial_timeline);
|
|
||||||
let draft = use_signal(&cx, || props.initial_draft);
|
|
||||||
let edit_id = use_signal(&cx, || props.initial_edit_id);
|
|
||||||
|
|
||||||
cx.render(rsx! {
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-root",
|
|
||||||
style: "height: 100%; display: flex; flex-direction: column; background: var(--background-primary); color: var(--text-normal);",
|
|
||||||
|
|
||||||
// Title
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-title",
|
|
||||||
style: "padding: 12px; font-weight: bold; font-size: 1.2em; text-align: center; border-bottom: 1px solid var(--background-modifier-border);",
|
|
||||||
"Matrix Chat"
|
|
||||||
}
|
|
||||||
|
|
||||||
// Info
|
|
||||||
div {
|
|
||||||
class: "matrix-chat-info",
|
|
||||||
style: "font-size: 0.85em; color: var(--text-muted); text-align: center; margin-bottom: 5px;",
|
|
||||||
"Room: {ROOM_ID}"
|
|
||||||
}
|
|
||||||
|
|
||||||
// Timeline
|
|
||||||
Timeline { mize: props.mize.clone(), timeline }
|
|
||||||
|
|
||||||
// Editor
|
|
||||||
Editor { mize: props.mize.clone(), draft, edit_id }
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Mount the Dioxus app into a DOM element
|
|
||||||
pub fn mount_chat_app(
|
|
||||||
element: web_sys::HtmlElement,
|
|
||||||
initial_timeline: Vec<SyncRoomEvent>,
|
|
||||||
initial_draft: String,
|
|
||||||
initial_edit_id: Option<String>,
|
|
||||||
mize: Mize,
|
|
||||||
) {
|
|
||||||
dioxus_web::launch(
|
|
||||||
dioxus::prelude::App::new(move || rsx! {
|
|
||||||
Chat {
|
|
||||||
mize: mize.clone(),
|
|
||||||
initial_timeline: initial_timeline.clone(),
|
|
||||||
initial_draft: initial_draft.clone(),
|
|
||||||
initial_edit_id: initial_edit_id.clone(),
|
|
||||||
}
|
|
||||||
}),
|
|
||||||
element,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Console log macro
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! console_log {
|
|
||||||
($($t:tt)*) => {
|
|
||||||
web_sys::console::log_1(&format!($($t)*).into());
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user