diff --git a/docs/arch/arch/05-device_target_interactions.md b/docs/arch/arch/05-device_target_interactions.md index 4a9b4d05..fc4c862f 100644 --- a/docs/arch/arch/05-device_target_interactions.md +++ b/docs/arch/arch/05-device_target_interactions.md @@ -13,7 +13,7 @@ sidebar_position: 150 * [Target](#tvm-target-specific-target) 类描述了运行函数的设备。它既对 target 代码生成器公开,也对优化 pass 公开。 * [target 代码生成器](#tvm-target-specific-codegen) 从 IRModule 构造了一个 [模块](/docs/arch/arch/runtimes#module),它由一个或多个 [PackedFunc](/docs/arch/arch/runtimes#PackedFunc) 组成。 -## DeviceAPI {#tvm-target-specific-device-api} +## DeviceAPI `DeviceAPI` 表示特定硬件设备 API 的句柄。(例如,`CUDADeviceAPI` 通过 CUDA 框架处理所有的交互。)大多数 `DeviceAPI` 方法接收一个 `device_id` 参数,来指定访问哪个设备。Python 中通常用 `tvm.runtime.device()` 函数访问它们,这个函数返回特定设备的句柄,通过特定 API 访问。(例如,`tvm.runtime.device()` 通过 CUDA API 访问物理设备 `0`。) @@ -52,7 +52,7 @@ TVM 框架若要使用新的 DeviceAPI,应该按照以下步骤注册: 2. 给 [device_api.h](https://github.com/apache/tvm/blob/main/include/tvm/runtime/device_api.h) 中的 `DeviceName` 添加一个案例,从而将枚举值转换为字符串表示形式。这个字符串表示应该和 `TVM_REGISTER_GLOBAL` 的名称匹配。 3. 将入口添加到 `tvm.runtime.Device` 的 `MASK2STR` 和 `STR2MASK` 字典,获取新的枚举值。 -## Target 定义 {#tvm-target-specific-target} +## Target 定义 `Target` 对象是属性(包含物理设备、其硬件/驱动程序限制,及其功能)的查找表。在优化和代码生成阶段都可以访问 `Target`。虽然相同的 `Target` 类适用于所有 runtime target,但每个 runtime target 可能需要添加特定于 target 的选项。 @@ -64,7 +64,7 @@ TVM 框架若要使用新的 DeviceAPI,应该按照以下步骤注册: 代码生成器中可以用 C++ 中的 `target->GetAttr(param_name)`,或是 Python 中的 `target.attrs` 字典来访问 target 属性。 -## Target 代码生成器 {#tvm-target-specific-codegen} +## Target 代码生成器 代码生成器采用优化的 `IRModule`,并将其转换为可执行表示。每个代码生成器注册后,才能被 TVM 框架使用。这是通过注册 `"target.build.foo"` 函数来完成的,其中 `foo` 与上面的 `TVM_REGISTER_TARGET_KIND` 定义中使用的名称相同。 diff --git a/docs/arch/arch/07-inferbound.md b/docs/arch/arch/07-inferbound.md index 05ba0143..f81765ae 100644 --- a/docs/arch/arch/07-inferbound.md +++ b/docs/arch/arch/07-inferbound.md @@ -146,7 +146,7 @@ InferBound pass 有两个不是很明显的属性: 消息传递函数被命名为「PassUp」或「PassDown」,取决于消息是从 DAG 中的子代传递给其父代(「PassUp」),还是从父代传递给其子代(「PassDown」)。例如,上图左侧的大箭头显示 PassDownDomain 从根 IterVar `i` 向其子 `i.outer` 和 `i.inner` 发送消息。 -## PassDownDomain {#passdowndomain} +## PassDownDomain PassDownDomain 的作用是为 root_iter_vars 取 InferRootBound 产生的 Range,并设置 stage 中所有其他 IterVars 的 Range。 @@ -193,7 +193,7 @@ InferBound 调用 InferRootBound,然后在 stage 计算图中的每个 stage *对于包含 compute_at 的 schedules**而言**,InferBound 更为复杂。因此首先**针对**不包含 compute_at 的 schedules**解读**InferBound。* -### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet {#phase1} +### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet ``` c++ /* @@ -212,7 +212,7 @@ InferBound 调用 InferRootBound,然后在 stage 计算图中的每个 stage 简单起见,假设 schedule 不包含线程轴。这种情况下,仅当 schedule 包含 compute_at 时,才和案例 2 相关。参阅 [InferBound 与 compute_at](#inferboundca) 节来进一步获取更多信息。 -### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root {#phase2} +### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root ```c++ /* @@ -293,7 +293,7 @@ IntSet 的并集是通过将每个 IntSet 转换为一个区间来计算的, ![图片](/img/docs/tvmai/tvmai.github.io/main/images/docs/inferbound/gatherbound_problem.png) -## InferBound 与 compute_at {#inferboundca} +## InferBound 与 compute_at 若 schedule 包含 compute_at,则 InferRootBound 的阶段 1-2 会变得更加复杂。 @@ -377,7 +377,7 @@ public: 再次考虑上面的例子。为了让 InferBound 确定必须计算 C 的多少元素,重要的是,要知道 C 的计算是发生在 D 的叶变量的范围内,还是在该范围之上。在例 1 中,C 的计算发生在 D 的所有叶变量的范围*之上*。在例 2,C 的计算发生在 D 的所有叶变量的范围*内*。在例 3,C 出现在D 的 i 维度的范围内,但在 D 的 j 维度的范围之上。 -CreateAttachPath 负责确定哪些作用域包含 stage C。这些作用域按从最内层到最外层的顺序排列。因此,对于每个 stage,CreateAttachPath 都会生成一个「附加路径」,其中列出了包含该 stage 从最里面到最外面的范围,在例 1,C 的附加路径为空。在例 2,C 的附加路径包含 {j,i}。在例 3,C 的附加路径是 {i}。 +CreateAttachPath 负责确定哪些作用域包含 stage C。这些作用域按从最内层到最外层的顺序排列。因此,对于每个 stage,CreateAttachPath 都会生成一个「附加路径」,其中列出了包含该 stage 从最里面到最外面的范围,在例 1,C 的附加路径为空。在例 2,C 的附加路径包含 `{j,i}`。在例 3,C 的附加路径是 `{i}`。 以下示例阐明了附加路径的概念,适用于更复杂的情况。 @@ -415,11 +415,11 @@ realize D([0, 4], [0, 5], [0, 16]) { } ``` -在这种情况下,C 的附加路径是 {dk, dj, di}。注意 C 没有使用 di,但 di 仍然出现在 C 的附加路径中。 +在这种情况下,C 的附加路径是 `{dk, dj, di}`。注意 C 没有使用 di,但 di 仍然出现在 C 的附加路径中。 **例 5** -根据上述定义,可以很自然地在拆分后应用 Compute_at。下面例子中,C 的附着点是 D 的 j_inner。C 的附着路径是 {j_inner, j_outer, i}。 +根据上述定义,可以很自然地在拆分后应用 Compute_at。下面例子中,C 的附着点是 D 的 j_inner。C 的附着路径是 `{j_inner, j_outer, i}`。 ``` python C = tvm.compute((5, 16), lambda i, j : tvm.const(5, "int32"), name='C') @@ -456,7 +456,7 @@ s[C].compute_at(s[D], D.op.axis[1]) s[D].compute_at(s[E], E.op.axis[1]) ``` -当 `debug_keep_trivial_loop=True` 时,C 的附加路径为 {dj,di,ej,ei},D 的附加路径为 {ej,ei}: +当 `debug_keep_trivial_loop=True` 时,C 的附加路径为 `{dj,di,ej,ei}`,D 的附加路径为 `{ej,ei}`: ``` c++ // attr [D] storage_scope = "global" @@ -494,7 +494,7 @@ produce E { 若没有附加,则已经为 consumer 变量计算的 Range 定义了 consumer 需要多少 C。但是,若 stage 实际上在 consumer 变量 j 的一个范围内,那么一次只需要 j 的范围内的一个点。 -### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet {#phase1ca} +### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet ``` c++ /* @@ -512,7 +512,7 @@ produce E { * 案例 3:需要释放。这种情况下,leaf 的 Range 被简单地转换为 IntSet。 若在 consumer 中遇到 stage C 的附着点,就会发生案例 2。对于此 attach_ivar,以及 consumer 的所有更高叶变量,将应用案例 2。若 C 在叶变量的 Range 内,这将确保仅请求叶变量范围内的单个点。 -### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root {#phase2ca} +### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root ``` c++ /* @@ -530,7 +530,7 @@ produce E { PassUpDomain 将 up_state 向 consumer 传给所有 IterVars 后,将创建一个从 root_iter_vars 到 IntSet 的新映射。若 stage 没有附加到当前 consumer,那么对于 consumer 的 attach_path 中的每个变量 iv,将 iv 的 Range 添加到一个 `relax_set`。stage 的 root 变量是根据这个 `relax_set` 进行评估的。 -这是为了处理类似以下示例的情况,其中 C 没有附加到任何地方,但它的 consumer D 在 stage E 中附加。这种情况下,在确定 C 有多少需要计算时,必须考虑 D 的 attach_path,{ej,ei}。 +这是为了处理类似以下示例的情况,其中 C 没有附加到任何地方,但它的 consumer D 在 stage E 中附加。这种情况下,在确定 C 有多少需要计算时,必须考虑 D 的 attach_path,`{ej,ei}`。 ``` python C = tvm.compute((5, 16), lambda ci, cj : tvm.const(5, "int32"), name='C') diff --git a/docs/arch/arch/10-relay_op_strategy.md b/docs/arch/arch/10-relay_op_strategy.md index d5c93a1a..07174427 100644 --- a/docs/arch/arch/10-relay_op_strategy.md +++ b/docs/arch/arch/10-relay_op_strategy.md @@ -157,7 +157,7 @@ def conv2d_strategy_mytarget(attrs, inputs, out_type, target): ... ``` -## 从 Op 策略中选择实现 {#select-implementation-from-op-strategy} +## 从 Op 策略中选择实现 在编译过程中,Relay 编译引擎要确定当有多个算子时,使用哪个算子来实现。选择策略的工作原理如下。 diff --git a/docs/arch/arch/11-convert_layout.md b/docs/arch/arch/11-convert_layout.md index f3a8b7f5..14def826 100644 --- a/docs/arch/arch/11-convert_layout.md +++ b/docs/arch/arch/11-convert_layout.md @@ -213,7 +213,7 @@ ConvertLayout pass 非常易于使用。pass 不是默认 relay.build pipeline 为了指定要转换到的布局,创建一个映射,该映射由重度布局敏感的算子指向该算子期望布局的列表。以下第一个示例指定了数据布局,允许内核布局自动转换为 TVM 支持的布局(针对特定的数据布局和算子)。这是通过使用「default」关键字指定的。 -第二个示例显示了如何转换为指定内核布局。注意,以下示例将转换为相同的布局,即 {‘nn.conv2d’: [‘NCHW’, ‘default’]} == {‘nn.conv2d’: [‘NCHW’, ‘OIHW’]} +第二个示例显示了如何转换为指定内核布局。注意,以下示例将转换为相同的布局,即 `{‘nn.conv2d’: [‘NCHW’, ‘default’]} == {‘nn.conv2d’: [‘NCHW’, ‘OIHW’]}` ``` python # TFlite 框架到 Relay 解析器 - 默认布局是 NHWC diff --git a/docs/arch/arch/12-benchmark.md b/docs/arch/arch/12-benchmark.md index c0f0a45f..771cc3d0 100644 --- a/docs/arch/arch/12-benchmark.md +++ b/docs/arch/arch/12-benchmark.md @@ -20,18 +20,18 @@ sidebar_position: 220 | runtime_ms_std | 5.3 | statistics | | | timestamp | 1572282699.6 | metadata | indicates when this record is logged | | schema_version | “0.1” | metadata | ensure reproducibility as we iterate on this schema | -| metadata | { “docker_tag”:”gcr.io/…/0a680”, … } | metadata | docker_tag is optional | -| workload_args | {“input_name”: “Input3”, “input_shape”: [list_of_shape], “data_layout”: NHCW} | workload | | -| workload_metadata | {“class”: “vision”,”doc_url”: “https://github.com/.../README.md”, “opset”: 7,”type”: “body_analysis”,”url”: “https://onnxzoo...ferplus.tar.gz”, “md5”: “07fc7…”} | workload | source of workload | +| metadata | `{ “docker_tag”:”gcr.io/…/0a680”, … }` | metadata | docker_tag is optional | +| workload_args | `{“input_name”: “Input3”, “input_shape”: [list_of_shape], “data_layout”: NHCW}` | workload | | +| workload_metadata | `{“class”: “vision”,”doc_url”: “https://github.com/.../README.md”, “opset”: 7,”type”: “body_analysis”,”url”: “https://onnxzoo...ferplus.tar.gz”, “md5”: “07fc7…”}` | workload | source of workload | | engine_version | “1.0.5” | compiler | use semvar format | -| engine_config | {“llvm”: “llvm-8”, “nvcc”: 10.1, “accelerator”: “MLAS”, “relay_opt_level”: 3, “tvm_target”:”llvm -mcpu=cascadelake”} | compiler | fields are optionally specified | -| compilation_config | {“opt_level”: 3, “layer_schedules”:[]/ } | compiler | fields are optionally specified | -| software_config | {“os”: “ubuntu:18.04”,”pip”: { “docker”: “4.1.0”, “gitpython”: “3.0.4”, “numpy”: “1.17.4”, “onnx”: “1.6.0”}, “cudnn”: “cudnn-8”, “cuda_driver”: “480.10.1”} | backend | env dependency list | -| runtime_config | {“num_cpu_threads”: 3} | backend | info on non-hardware, non-software metadata | -| hardware_config | {“cpu_count”: 16, “cloud_machine_type”:”c2-standard-16”, “memory_GB”:64} | hardware | json descriptor of target hardware environment | -| execution_config | {“number”: 1, “repeat”: 10, “min_repeat_ms”, 0} | statistics | workload execution parameters | -| metrics | {“accuracy”: 48.5,“compilation_ms_mean”: 12} | statistics | other metrics | -| runtime_raw | [{“runtime_ms”: 12, …}, {“runtime_ms”:13,…},…] | statistics | optional raw metrics array | +| engine_config | `{“llvm”: “llvm-8”, “nvcc”: 10.1, “accelerator”: “MLAS”, “relay_opt_level”: 3, “tvm_target”:”llvm -mcpu=cascadelake”}` | compiler | fields are optionally specified | +| compilation_config | `{“opt_level”: 3, “layer_schedules”:[]/ }` | compiler | fields are optionally specified | +| software_config | `{“os”: “ubuntu:18.04”,”pip”: { “docker”: “4.1.0”, “gitpython”: “3.0.4”, “numpy”: “1.17.4”, “onnx”: “1.6.0”}, “cudnn”: “cudnn-8”, “cuda_driver”: “480.10.1”}` | backend | env dependency list | +| runtime_config | `{“num_cpu_threads”: 3}` | backend | info on non-hardware, non-software metadata | +| hardware_config | `{“cpu_count”: 16, “cloud_machine_type”:”c2-standard-16”, “memory_GB”:64}` | hardware | json descriptor of target hardware environment | +| execution_config | `{“number”: 1, “repeat”: 10, “min_repeat_ms”, 0}` | statistics | workload execution parameters | +| metrics | `{“accuracy”: 48.5,“compilation_ms_mean”: 12}` | statistics | other metrics | +| runtime_raw | `[{“runtime_ms”: 12, …}, {“runtime_ms”:13,…},…]` | statistics | optional raw metrics array | ## 存储格式 @@ -98,4 +98,4 @@ sidebar_position: 220 "execution_config":{}, "metrics":{} } -``` \ No newline at end of file +``` diff --git a/docs/arch/arch/17-model_library_format.md b/docs/arch/arch/17-model_library_format.md index fc4c9f46..4ba0b705 100644 --- a/docs/arch/arch/17-model_library_format.md +++ b/docs/arch/arch/17-model_library_format.md @@ -78,7 +78,7 @@ TVM 生成的所有代码都放在这个目录中。编写代码时,生成的 * `target`:将 `device_type`(潜在的整数,作为字符串)映射到描述用于该 `device_type` 的 Relay 后端的子 target 的字典。 * `version`:标识模型库格式中格式的数字版本号。当元数据结构或磁盘结构更改时,这个数字会增加。本文档反映的是第 `5` 版。 -### 内存使用总结 {#memory-usage-summary} +### 内存使用总结 它是具有如下子键的字典: diff --git a/docs/arch/arch/runtimes/index.md b/docs/arch/arch/runtimes/index.md index f3d5a169..3994f1e8 100644 --- a/docs/arch/arch/runtimes/index.md +++ b/docs/arch/arch/runtimes/index.md @@ -18,7 +18,7 @@ TVM 支持多种编程语言进行编译器堆栈开发和部署。本文档将 * 实验:将编译好的函数发送到嵌入式设备上直接运行。 我们期望能够用任何语言定义一个函数,然后用另一种语言调用。还期望将 runtime 内核最小化,部署到嵌入式设备。 -## PackedFunc {#PackedFunc} +## PackedFunc [PackedFunc](https://github.com/apache/tvm/blob/main/include/tvm/runtime/packed_func.h) 是一个简单而优雅的解决方案,它可以解决以上问题。单个 `PackedFunc` 对象代表一个函数调用,其调用者和被调用者可能使用不同的语言。 @@ -104,7 +104,7 @@ PackedFunc 用于编译器和部署堆栈: 与普通函数相比,调用 PackedFunc 的开销很小,因为它只在堆栈上保存了几个值,所以只要不包装小的函数即可。总之,PackedFunc 是 TVM 中的通用粘合剂,可以广泛使用它来支持编译器和部署。 -## 模块 {#module} +## 模块 由于 TVM 支持多种类型的设备,因此需要支持不同类型的驱动程序。必须用驱动程序 API 来加载内核,以打包格式设置参数,并执行内核启动。 @@ -209,6 +209,6 @@ PackedFunc 中的每个参数都包含一个关联值 [TVMValue](https://github. * [c_runtime_api.cc](https://github.com/apache/tvm/blob/main/src/runtime/c_runtime_api.cc#L262),用于 C API 以及如何提供回调。 为了支持扩展类型,使用了注册表系统来注册类型相关信息,如 C++ 中对所有类型的支持,参阅 [扩展类型](https://github.com/apache/tvm/tree/main/apps/extension) 了解更多详细信息。 -# Runtime 特定信息 {#runtime-specific-information} +# Runtime 特定信息 * [Vulkan Runtime](vulkan) diff --git a/docs/arch/arch/runtimes/vulkan.md b/docs/arch/arch/runtimes/vulkan.md index bd6fbeee..d396cb31 100644 --- a/docs/arch/arch/runtimes/vulkan.md +++ b/docs/arch/arch/runtimes/vulkan.md @@ -30,7 +30,7 @@ TVM 支持用 Vulkan 计算着色器(Vulkan compute shaders)来查询。所 截至 2021 年 5 月,还有一些 Vulkan 的实现没支持。例如,要支持 64 位整数。若不支持 Vulkan target,则会在 SPIR-V 代码生成期间报错。我们正努力消除这些限制,并支持其他 Vulkan 实现。 -## SPIR-V 功能 {#tvm-table-vulkan-capabilities} +## SPIR-V 功能 某些特定于设备的功能还对应于 SPIR-V 功能或扩展,它们必须在着色器中声明,或对应于要使用某个功能所需的最低 SPIR-V 版本。TVM 生成的着色器将声明执行编译好的计算图所需的最小扩展/功能集,以及 SPIR-V 的最小允许版本。 diff --git a/docs/arch/index.md b/docs/arch/index.md index a8c4f716..7f2c921e 100644 --- a/docs/arch/index.md +++ b/docs/arch/index.md @@ -13,7 +13,7 @@ title: 设计与架构 本指南提供了架构的一些补充视图。首先研究端到端的编译流程,并讨论关键的数据结构和转换。这种基于 runtime 的视图侧重于运行编译器时每个组件的交互。接下来研究代码库的逻辑模块及其关系。这部分提供了设计的静态总体视图。 -## 编译流程示例 {#example-compilation-flow} +## 编译流程示例 本指南研究编译器中的编译流程示例,下图显示了流程。在高层次,它包含以下步骤: @@ -132,7 +132,7 @@ result = gmod["get_output"](0).numpy() * 编写一组自定义转换(例如自定义量化)。 * 用 TVM 的 Python API 直接操作 IR。 -## 逻辑架构组件 {#logical-architecture-components} +## 逻辑架构组件 ![/img/docs/tlc-pack/web-data/main/images/design/tvm_static_overview.svg](/img/docs/tlc-pack/web-data/main/images/design/tvm_static_overview.svg) diff --git a/docs/contribute/code_guide.md b/docs/contribute/code_guide.md index 0f232d59..894ca591 100644 --- a/docs/contribute/code_guide.md +++ b/docs/contribute/code_guide.md @@ -26,26 +26,26 @@ python tests/scripts/ci.py lint clang-format 并不完美,必要时可以在某些代码区域上禁用 clang-format。 ``` c++ -// clang-format off -void Test() { +// clang-format off +void Test() { // clang-format 将在这个区域禁用。 -} +} // clang-format on ``` 因为 clang-format 可能无法识别宏,所以建议像普通函数样式一样使用宏。 ``` c++ -#define MACRO_IMPL { custom impl; } +#define MACRO_IMPL { custom impl; } #define MACRO_FUNC(x) // 不是首选,因为 clang-format 可能会将其识别为类型。 -// 首选 +// 首选 virtual void Func2() MACRO_IMPL; void Func3() { - // 首选 + // 首选 MACRO_FUNC(xyz); } ``` @@ -68,7 +68,7 @@ def test_mytest(target, dev): ... ``` -用 `target="llvm"`、`target="cuda"` 和其他几个运行 `test_mytest`。这可以确保测试由 CI 在正确的硬件上运行。如果只想针对几个 target 进行测试,请使用 `@tvm.testing.parametrize_targets("target_1", "target_2")`。如果想在单个 target 上进行测试,请使用来自 `tvm.testing()`{.interpreted-text role="func"} 的相关装饰器。例如,CUDA 测试使用 `@tvm.testing.requires_cuda` 装饰器。 +用 `target="llvm"`、`target="cuda"` 和其他几个运行 `test_mytest`。这可以确保测试由 CI 在正确的硬件上运行。如果只想针对几个 target 进行测试,请使用 `@tvm.testing.parametrize_targets("target_1", "target_2")`。如果想在单个 target 上进行测试,请使用来自 `tvm.testing()` 的相关装饰器。例如,CUDA 测试使用 `@tvm.testing.requires_cuda` 装饰器。 ## 处理整型常量表达式 diff --git a/docs/contribute/document.md b/docs/contribute/document.md index 93e00467..52d0765d 100644 --- a/docs/contribute/document.md +++ b/docs/contribute/document.md @@ -126,8 +126,8 @@ My Section reStructuredText 的 [figure](https://docutils.sourceforge.io/docs/ref/rst/directives.html#figure) 和 [image](https://docutils.sourceforge.io/docs/ref/rst/directives.html#image) 元素允许文档包含图像 URL。 -为 TVM 文档创建的图像文件应该在 仓库中,而使用这些图像的 *.rst* 文件应该在 TVM 仓库()。 +为 TVM 文档创建的图像文件应该在 [https://github.com/tlc-pack/web-data](https://github.com/tlc-pack/web-data) 仓库中,而使用这些图像的 *.rst* 文件应该在 TVM 仓库([https://github.com/apache/tvm](https://github.com/apache/tvm))。 这需要两个 GitHub Pull Request,一个用于图像文件,另一个用于 *.rst* 文件。contributor 与 reviewer 之间可能需要讨论来协调 review 的过程。 -重要提示:使用上述的两个 pull request 时,请先在 中 merge pull request,然后再在 中 merge pull request。这有助于确保 TVM 在线文档中的所有 URL 链接都是有效的。 +重要提示:使用上述的两个 pull request 时,请先在 [https://github.com/tlc-pack/web-data](https://github.com/tlc-pack/web-data) 中 merge pull request,然后再在 [https://github.com/apache/tvm](https://github.com/apache/tvm) 中 merge pull request。这有助于确保 TVM 在线文档中的所有 URL 链接都是有效的。 diff --git a/docs/contribute/pull_request.md b/docs/contribute/pull_request.md index 62edd700..04cf8da1 100644 --- a/docs/contribute/pull_request.md +++ b/docs/contribute/pull_request.md @@ -20,17 +20,17 @@ sidebar_position: 2 # 虽然使用的 lint 命令应该与在 CI 中运行的相同,但此命令会重现 # 准确的 CI lint 过程(通常有助于调试 lint 脚本错误或避免手动安装工具) python tests/scripts/ci.py lint - + # 运行所有的 lint 步骤。 docker/lint.sh - + # 要单独运行步骤,请在命令行中指定步骤名称。 # 一个不正确拼写的步骤名称会导致工具打印所有可用的步骤。 docker/lint.sh ... ``` - + 若 clang-format lint 检查失败,运行 git-clang-format 自动对代码重新格式化: - + ``` bash # 运行 clang-format 检查所有自 upstream/main 以来改变的文件 docker/bash.sh ci_lint ./tests/lint/git-clang-format.sh upstream/main @@ -54,7 +54,7 @@ sidebar_position: 2 使用 Docker 镜像,创建能部署到多台机器上的稳定的 CI 环境。按照 [这个 issue 模板](https://github.com/apache/tvm/issues/new?assignees=&labels=&template=ci-image.md&title=%5BCI+Image%5D+) 的步骤,更新 CI Docker 镜像。 -## 测试 {#pr-testing} +## 测试 尽管每个 pull request 都有自动运行单元测试的 hook,但推荐先在本地运行单元测试,以减少 reviewer 的负担并加快 review 过程。 diff --git a/docs/contribute/release_process.md b/docs/contribute/release_process.md index 50a442fc..8996320f 100644 --- a/docs/contribute/release_process.md +++ b/docs/contribute/release_process.md @@ -29,11 +29,11 @@ TVM 中的版本 manager 角色意味着要负责以下这些事情: 如果已经上传了密钥,则可以跳过这部分。 -参考 将生成的 gpg 密钥上传到公钥服务器。 +参考 [https://www.apache.org/dev/openpgp.html#generate-key](https://www.apache.org/dev/openpgp.html#generate-key) 将生成的 gpg 密钥上传到公钥服务器。 通过 `gpg --export` 和 `gpg --import` 命令可以将 gpg 密钥传输到另一台机器上发布。 -最后一步是使用你的代码签名密钥 更新 KEYS 文件。查看对 TVM 主分支及 ASF SVN 的更改, +最后一步是使用你的代码签名密钥 [https://www.apache.org/dev/openpgp.html#export-public-key](https://www.apache.org/dev/openpgp.html#export-public-key) 更新 KEYS 文件。查看对 TVM 主分支及 ASF SVN 的更改, ``` bash # 指定 --depth=files 参数将跳过检查已有文件夹 @@ -122,7 +122,7 @@ svn ci --username $ASF_USERNAME --password "$ASF_PASSWORD" -m "Add RC" ## 对候选版本投票 -第一次投票在 Apache TVM 开发者名单()上进行。为了获得更多关注,可以创建一个以 “[VOTE]” 开头的 GitHub Issue,它会自动镜像到 dev@。可以查看以前的投票帖子来了解它是如何进行的。电子邮件应遵循以下格式: +第一次投票在 Apache TVM 开发者名单([dev@tvm.apache.org](mailto:dev@tvm.apache.org))上进行。为了获得更多关注,可以创建一个以 “[VOTE]” 开头的 GitHub Issue,它会自动镜像到 dev@。可以查看以前的投票帖子来了解它是如何进行的。电子邮件应遵循以下格式: - 在电子邮件中提供版本说明初稿的链接 - 提供候选版本工程的链接 @@ -157,8 +157,8 @@ git push --delete origin v0.6.0.rc2 ## 更新 TVM 网站 -网站仓库位于 。向下载页面中添加版本工程以及 GPG 签名和 SHA 哈希。 +网站仓库位于 [https://github.com/apache/tvm-site](https://github.com/apache/tvm-site)。向下载页面中添加版本工程以及 GPG 签名和 SHA 哈希。 ## 发布公告 -向 发送公告邮件。公告应包括发布说明和下载页面的链接。 +向 [announce@apache.org](mailto:announce@apache.org) 和 [dev@tvm.apache.org](mailto:dev@tvm.apache.org) 发送公告邮件。公告应包括发布说明和下载页面的链接。 diff --git a/docs/how_to/deploy/07-vitis_ai.md b/docs/how_to/deploy/07-vitis_ai.md index 68f67612..5ea3e553 100644 --- a/docs/how_to/deploy/07-vitis_ai.md +++ b/docs/how_to/deploy/07-vitis_ai.md @@ -28,7 +28,7 @@ TVM 中当前的 Vitis AI 流支持使用 [Zynq Ultrascale+ MPSoc](https://www.x [Vitis AI 系统要求页面](https://github.com/Xilinx/Vitis-AI/blob/master/docs/learn/system_requirements.md) 列出了运行 Docker 容器以及在 Alveo 卡上执行的系统要求。对于边缘设备(例如 Zynq),部署模型需要使用带有 Vitis AI 流程的 TVM 编译模型的主机,以及用于运行编译模型的边缘设备。主机系统要求与上面链接中指定的相同。 -## 设置说明 {#setup} +## 设置说明 本节介绍如何用 Vitis AI 流为云和边缘设置 TVM。支持 Vitis AI 的 TVM 是通过 Docker 容器提供的。提供的脚本和 Dockerfile 将 TVM 和 Vitis AI 编译为单个镜像。 @@ -70,7 +70,7 @@ TVM 中当前的 Vitis AI 流支持使用 [Zynq Ultrascale+ MPSoc](https://www.x 在这个 Docker 容器中可以为云和边缘目标编译模型。要在 docker 容器内的云 Alveo 或 Versal VCK5000 卡上运行,按照 [Alveo](#alveo-setup) 或者 [Versal VCK5000](#versal-vck5000-setup) 设置说明进行操作。分别参照 [Zynq](#zynq-setup) 和 [Versal VCK190](#versal-vck190-setup),为推理过程设置 Zynq 或 Versal VCK190 评估单板。 -### Alveo 设置 {#alveo-setup} +### Alveo 设置 查看 [Alveo 设置](https://github.com/Xilinx/Vitis-AI/blob/v1.4/setup/alveo/README.md) 获取设置信息。 @@ -85,7 +85,7 @@ source setup.sh [DPU-IDENTIFIER] 可在此页面顶部的 DPU Targets 表的第二列中找到此 DPU 标识符。 -### Versal VCK5000 设置 {#versal-vck5000-setup} +### Versal VCK5000 设置 查看 [VCK5000 Setup](https://github.com/Xilinx/Vitis-AI/blob/v1.4/setup/vck5000/README.md) 获取设置信息。 @@ -98,7 +98,7 @@ cd Vitis-AI/setup/vck5000 source setup.sh ``` -### Zynq 设置 {#zynq-setup} +### Zynq 设置 除了构建 TVM - Vitis AI docker 之外,对于 Zynq 目标(DPUCZDX8G),编译阶段在主机上的 docker 内运行,不需要任何特定设置。执行模型时,首先要设置 Zynq 板,更多信息如下。 @@ -173,11 +173,11 @@ source setup.sh 可能会看到有关未找到 "cpu-tf" runtime 的警告,可以忽略。 ::: -### Versal VCK190 设置 {#versal-vck190-setup} +### Versal VCK190 设置 参考 [Zynq 设置](#zynq-setup) 设置 Versal VCK190,但在步骤 1 中参考 [VCK190 镜像](https://www.xilinx.com/member/forms/download/design-license-xef.html?filename=xilinx-vck190-dpu-v2020.2-v1.4.0.img.gz)。其他步骤相同。 -## 编译模型 {#compile} +## 编译模型 带有 Vitis AI 流的 TVM 包含编译和推理两个阶段。在编译期间,用户可以为当前支持的云或边缘目标设备选择要编译的模型。编译模型生成的文件可用于在 [推理](#inference) 阶段在指定的目标设备上运行模型。目前,采用 Vitis AI 流程的 TVM 支持选定数量的 Xilinx 数据中心和边缘设备。 @@ -290,13 +290,13 @@ lib_edge.export_library('deploy_lib_edge.so', **lib_kwargs) 使用 TVM 和 Vitis AI 编译模型的教程到此结束,有关如何运行已编译的模型,参阅下一节。 -## 推理 {#inference} +## 推理 带有 Vitis AI 流的 TVM 包含编译和推理两个阶段,在编译期间,用户可以选择为当前支持的任何目标设备编译模型。编译模型后生成的文件可用于在推理阶段在目标设备上运行模型。 查看 [在 Alveo 和 VCK5000 上运行](#running-on-alveo-and-vck5000) 以及 [在 Zynq 和 VCK190 上运行](#running-on-zynq-and-vck190) 部分,分别在云加速卡和边缘板上进行推理。 -### 在 Alveo 和 VCK5000 上运行 {#running-on-alveo-and-vck5000} +### 在 Alveo 和 VCK5000 上运行 按照编译模型部分中的步骤,可以在 Docker 内的新输入上执行如下命令以加速推理: @@ -325,7 +325,7 @@ module.set_input(input_name, input_data) module.run() ``` -### 在 Zynq 和 VCK190 上运行 {#running-on-zynq-and-vck190} +### 在 Zynq 和 VCK190 上运行 开始前按照 [Zynq](#zynq-setup) 或 [Versal VCK190](#versal-vck190-setup) 设置说明进行设置。 diff --git a/docs/how_to/microtvm/01-aot.md b/docs/how_to/microtvm/01-aot.md index e9232e12..8389cb4f 100644 --- a/docs/how_to/microtvm/01-aot.md +++ b/docs/how_to/microtvm/01-aot.md @@ -62,7 +62,7 @@ relay_mod, params = relay.frontend.from_tflite( # 使用 C runtime(crt),并通过将 system-lib 设置为 True 来启用静态链接 RUNTIME = Runtime("crt", {"system-lib": True}) -# 在主机上模拟一个微控制器。使用来自 `src/runtime/crt/host/main.cc `_ 的 main()。 +# 在主机上模拟一个微控制器。使用来自 `src/runtime/crt/host/main.cc [https://github.com/apache/tvm/blob/main/src/runtime/crt/host/main.cc](https://github.com/apache/tvm/blob/main/src/runtime/crt/host/main.cc)`_ 的 main()。 # 若要使用物理硬件,请将「host」替换为与你的硬件匹配的内容。 TARGET = tvm.target.target.micro("host") diff --git a/docs/how_to/microtvm/03-tvm_arm.md b/docs/how_to/microtvm/03-tvm_arm.md index 99353105..492d7344 100644 --- a/docs/how_to/microtvm/03-tvm_arm.md +++ b/docs/how_to/microtvm/03-tvm_arm.md @@ -46,7 +46,7 @@ TVMC - TVM driver command-line interface 运行 demo 需要一些额外的 Python 包。通过下面的 requirements.txt 文件,来安装这些额外的 Python 包: *requirements.txt*[¶](#requirements-txt) -{#requirements-txt} + ``` text attrs==21.2.0 cloudpickle==2.0.0 @@ -167,7 +167,7 @@ curl -sS https://s3.amazonaws.com/model-server/inputs/kitten.jpg -o ./kitten.jpg * `outputs.h` - 用一个全零的整数数组,为推理的输出保留 1001 个整数值。 *convert_image.py*[¶](#convert-image-py) -{#convert-image-py} + ``` python #!python ./convert_image.py import os @@ -236,7 +236,7 @@ python convert_image.py ./kitten.jpg 以下脚本将在 src 目录中创建一个 `labels.h` 头文件,之前下载的 labels.txt 文件会变成字符串数组。该数组将用于显示图像分类后为的标签。 *convert_labels.py*[¶](#convert-image) -{#convert-image} + ``` python #!python ./convert_labels.py import os @@ -272,7 +272,7 @@ python convert_labels.py 下面的 C 程序会在之前下载并转换为整数数组的图像上,运行 MobileNet v1 模型的单个推理。由于该模型是以「ethos-u ...」为 target 编译的,因此需要迁移 Ethos(TM)-U55 NPU 支持的算子,以便进行加速。一旦应用程序构建并运行,测试图像应该被正确地归类为「tabby」,并且结果会显示在控制台上。这个文件应该放在 `./src`。 demo.c[¶](#demo-c) -{#demo-c} + ``` c #include #include diff --git a/docs/how_to/microtvm/05-microtvm_tflite.md b/docs/how_to/microtvm/05-microtvm_tflite.md index a9d3ebf1..e183c81f 100644 --- a/docs/how_to/microtvm/05-microtvm_tflite.md +++ b/docs/how_to/microtvm/05-microtvm_tflite.md @@ -74,11 +74,11 @@ title: 支持 TFLite 模型的 microTVM **题外话:重新创建预训练 TFLite 模型** 本教程下载了预训练的 TFLite 模型。使用微控制器时,请注意这些设备的资源高度受限,像 MobileNet 这样的标准模型和小内存并不匹配。 - + 本教程使用 TF Micro 示例模型之一。 - + 若要复制训练步骤,参阅:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/micro/examples/hello_world/train - + :::note 若不小心从 `wget https://storage.googleapis.com/download.tensorflow.org/models/tflite/micro/hello_world_2020_04_13.zip` 下载了示例预训练模型,会由于未实现的操作码(114)而失败。 ::: @@ -238,7 +238,7 @@ os.unlink(model_library_format_tar_path) # 模型库格式用作此过程的模型输入。 # 平台为嵌入时提供了集成,可以被 TVM 直接用于主机驱动 # 推理和自动调优。这种集成由 -# `microTVM 项目 API` _提供。 +# `microTVM 项目 API` [https://github.com/apache/tvm-rfcs/blob/main/rfcs/0008-microtvm-project-api.md](https://github.com/apache/tvm-rfcs/blob/main/rfcs/0008-microtvm-project-api.md)_提供。 # # 嵌入式平台需要提供一个包含 microTVM API Server 的模板项目(通常, # 存在于根目录中的“microtvm_api_server.py”文件中)。本教程使用示例“主机” @@ -328,4 +328,4 @@ result is: [[0.4443792]] [下载 Python 源代码:micro_tflite.py](https://tvm.apache.org/docs/_downloads/2fb9ae7bf124f72614a43137cf2919cb/micro_tflite.py) -[下载 Jupyter Notebook:micro_tflite.ipynb](https://tvm.apache.org/docs/_downloads/5b279d8a8718816263fa65b0eef1a5c0/micro_tflite.ipynb) \ No newline at end of file +[下载 Jupyter Notebook:micro_tflite.ipynb](https://tvm.apache.org/docs/_downloads/5b279d8a8718816263fa65b0eef1a5c0/micro_tflite.ipynb) diff --git a/docs/how_to/microtvm/06-microtvm_arduino.md b/docs/how_to/microtvm/06-microtvm_arduino.md index 3307f154..fa1bd39e 100644 --- a/docs/how_to/microtvm/06-microtvm_arduino.md +++ b/docs/how_to/microtvm/06-microtvm_arduino.md @@ -214,7 +214,7 @@ validation_dataset = full_dataset.skip(len(train_dataset)) 首先,可以将输入图像的大小从 224x224 减小到 96x96 或 64x64,Keras 可以轻松做到这一点。还可以将模型的 **alpha** 从 1.0 降低到 0.25,这使得网络的宽度(和过滤器的数量)缩小了四倍。如果真的空间有限,可以通过让模型拍摄灰度图像而不是 RGB 图像来减少**通道**数量。 -在本教程中,使用 RGB 64x64 输入图像和 alpha 0.25。效果虽然不是很理想,但它允许完成的模型适合 192 KB 的 RAM,同时仍然允许使用官方 TensorFlow 源模型执行迁移学习(如果使用 alpha <0.25 或灰度输入,无法做到这样)。 +在本教程中,使用 RGB 64x64 输入图像和 alpha 0.25。效果虽然不是很理想,但它允许完成的模型适合 192 KB 的 RAM,同时仍然允许使用官方 TensorFlow 源模型执行迁移学习(如果使用 alpha \<0.25 或灰度输入,无法做到这样)。 ### 什么是迁移学习? diff --git a/docs/install/docker.md b/docs/install/docker.md index 937f79fa..bb2a6ff0 100644 --- a/docs/install/docker.md +++ b/docs/install/docker.md @@ -65,4 +65,4 @@ Docker 镜像。 你也可以利用非官方的第三方预建镜像,注意:这些镜像是用来测试的,并不是 ASF 的版本。 -. +[https://hub.docker.com/r/tlcpack/](https://hub.docker.com/r/tlcpack/). diff --git a/docs/install/from_source.md b/docs/install/from_source.md index e0c582ba..24817f72 100644 --- a/docs/install/from_source.md +++ b/docs/install/from_source.md @@ -26,7 +26,7 @@ git submodule init git submodule update ``` -## 构建共享库 {#build-shared-library} +## 构建共享库 我们的目标是构建共享库: @@ -184,7 +184,7 @@ brew install python@3.8 如果一切顺利,我们就可以去查看 [Python 包的安装](#python-package-installation) 了。 -### 使用 Conda 环境进行构建 {#build-with-conda} +### 使用 Conda 环境进行构建 Conda 可以用来获取运行 TVM 所需的必要依赖。如果没有安装 Conda,请参照 [Conda @@ -243,7 +243,7 @@ cmake --build build --config Release -- /m 中安装 HIP runtime。确保安装系统中已经安装了 ROCm。 - 安装 LLVM 的最新稳定版本(v6.0.1),以及 LLD,确保 `ld.lld` 可以通过命令行获取。 -## Python 包的安装 {#python-package-installation} +## Python 包的安装 ### TVM 包 @@ -325,7 +325,7 @@ pip install 'xgboost>=1.1.0' [NNPACK Contrib 安装](nnpack) -## 启用 C++ 测试 {#C++_tests} +## 启用 C++ 测试 可以用 [Google Test](https://github.com/google/googletest) 来驱动 TVM 中的 C++ 测试。安装 GTest 最简单的方法是从源代码安装: diff --git a/docs/reference/api/python/auto_scheduler.md b/docs/reference/api/python/auto_scheduler.md index 13772faf..2c7bf16f 100644 --- a/docs/reference/api/python/auto_scheduler.md +++ b/docs/reference/api/python/auto_scheduler.md @@ -2,6 +2,6 @@ title: tvm.auto_scheduler --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.auto_scheduler ::: diff --git a/docs/reference/api/python/autotvm.md b/docs/reference/api/python/autotvm.md index 7e5c2685..e6319ab4 100644 --- a/docs/reference/api/python/autotvm.md +++ b/docs/reference/api/python/autotvm.md @@ -16,11 +16,11 @@ tvm.autotvm.apply_history_best tvm.autotvm.measure.measure ::: -::: {.autoclass members=""} +::: tvm.autotvm.measure.MeasureInput ::: -::: {.autoclass members=""} +::: tvm.autotvm.measure.MeasureResult ::: @@ -46,58 +46,58 @@ tvm.autotvm.measure.measure_methods.LocalRunner ## tvm.autotvm.tuner -::: {.automodule members=""} +::: tvm.autotvm.tuner ::: -::: {.autoclass members=""} +::: tvm.autotvm.tuner.Tuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.RandomTuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.GridSearchTuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.GATuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.XGBTuner ::: -::: {.automodule members=""} +::: tvm.autotvm.tuner.callback ::: ## tvm.autotvm.task -::: {.automodule members=""} +::: tvm.autotvm.task ::: -::: {.automodule members=""} +::: tvm.autotvm.task.task ::: -::: {.automodule members=""} +::: tvm.autotvm.task.space ::: -::: {.automodule members=""} +::: tvm.autotvm.task.dispatcher ::: -::: {.automodule members=""} +::: tvm.autotvm.task.topi_integration ::: ## tvm.autotvm.record -::: {.automodule members=""} +::: tvm.autotvm.record ::: diff --git a/docs/reference/api/python/contrib.md b/docs/reference/api/python/contrib.md index ba49b3e7..c0b574b0 100644 --- a/docs/reference/api/python/contrib.md +++ b/docs/reference/api/python/contrib.md @@ -8,138 +8,138 @@ tvm.contrib ## tvm.contrib.cblas -::: {.automodule members=""} +::: tvm.contrib.cblas ::: ## tvm.contrib.clang -::: {.automodule members=""} +::: tvm.contrib.clang ::: ## tvm.contrib.cc -::: {.automodule members=""} +::: tvm.contrib.cc ::: ## tvm.contrib.cublas -::: {.automodule members=""} +::: tvm.contrib.cublas ::: ## tvm.contrib.dlpack -::: {.automodule members=""} +::: tvm.contrib.dlpack ::: ## tvm.contrib.emcc -::: {.automodule members=""} +::: tvm.contrib.emcc ::: ## tvm.contrib.miopen -::: {.automodule members=""} +::: tvm.contrib.miopen ::: ## tvm.contrib.mxnet -::: {.automodule members=""} +::: tvm.contrib.mxnet ::: ## tvm.contrib.ndk -::: {.automodule members=""} +::: tvm.contrib.ndk ::: ## tvm.contrib.nnpack -::: {.automodule members=""} +::: tvm.contrib.nnpack ::: ## tvm.contrib.nvcc -::: {.automodule members=""} +::: tvm.contrib.nvcc ::: ## tvm.contrib.pickle_memoize -::: {.automodule members=""} +::: tvm.contrib.pickle_memoize ::: ## tvm.contrib.random -::: {.automodule members=""} +::: tvm.contrib.random ::: ## tvm.contrib.relay_viz -::: {.automodule members=""} +::: tvm.contrib.relay_viz ::: -::: {.automodule members=""} +::: tvm.contrib.relay_viz.dot ::: -::: {.automodule members=""} +::: tvm.contrib.relay_viz.terminal ::: -::: {.automodule members=""} +::: tvm.contrib.relay_viz.interface ::: ## tvm.contrib.rocblas -::: {.automodule members=""} +::: tvm.contrib.rocblas ::: ## tvm.contrib.rocm -::: {.automodule members=""} +::: tvm.contrib.rocm ::: ## tvm.contrib.sparse -::: {.automodule members=""} +::: tvm.contrib.sparse ::: ## tvm.contrib.spirv -::: {.automodule members=""} +::: tvm.contrib.spirv ::: ## tvm.contrib.tar -::: {.automodule members=""} +::: tvm.contrib.tar ::: ## tvm.contrib.utils -::: {.automodule members=""} +::: tvm.contrib.utils ::: ## tvm.contrib.xcode -::: {.automodule members=""} +::: tvm.contrib.xcode ::: diff --git a/docs/reference/api/python/error.md b/docs/reference/api/python/error.md index 95d5dc0c..ba83dfd5 100644 --- a/docs/reference/api/python/error.md +++ b/docs/reference/api/python/error.md @@ -2,6 +2,6 @@ title: tvm.error --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.error ::: diff --git a/docs/reference/api/python/graph_executor.md b/docs/reference/api/python/graph_executor.md index 810338eb..90110e9b 100644 --- a/docs/reference/api/python/graph_executor.md +++ b/docs/reference/api/python/graph_executor.md @@ -2,6 +2,6 @@ title: tvm.contrib.graph_executor --- -::: {.automodule members=""} +::: tvm.contrib.graph_executor ::: diff --git a/docs/reference/api/python/index.md b/docs/reference/api/python/index.md index a7518508..ab82bf8d 100644 --- a/docs/reference/api/python/index.md +++ b/docs/reference/api/python/index.md @@ -2,9 +2,9 @@ title: Python API --- -::: {.toctree maxdepth="2"} +``` runtime ndarray error ir target tir te driver relay/index relay/frontend relay/nn relay/vision relay/image relay/transform relay/analysis relay/backend relay/dataflow_pattern relay/testing autotvm auto_scheduler rpc micro contrib graph_executor topi vta/index -::: +``` diff --git a/docs/reference/api/python/ir.md b/docs/reference/api/python/ir.md index 4c60d1fb..16eebd04 100644 --- a/docs/reference/api/python/ir.md +++ b/docs/reference/api/python/ir.md @@ -1,17 +1,17 @@ ## tvm.ir -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.ir ::: ## tvm.instrument -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.instrument ::: ## tvm.transform -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.transform ::: diff --git a/docs/reference/api/python/micro.md b/docs/reference/api/python/micro.md index ed2cac3b..69db2fda 100644 --- a/docs/reference/api/python/micro.md +++ b/docs/reference/api/python/micro.md @@ -2,6 +2,6 @@ title: tvm.micro --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.micro ::: diff --git a/docs/reference/api/python/ndarray.md b/docs/reference/api/python/ndarray.md index dcab1750..f144d9b5 100644 --- a/docs/reference/api/python/ndarray.md +++ b/docs/reference/api/python/ndarray.md @@ -6,7 +6,7 @@ title: tvm.runtime.ndarray tvm.runtime.ndarray ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.nd.NDArray ::: diff --git a/docs/reference/api/python/relay/analysis.md b/docs/reference/api/python/relay/analysis.md index cbc937a2..0a82d753 100644 --- a/docs/reference/api/python/relay/analysis.md +++ b/docs/reference/api/python/relay/analysis.md @@ -2,6 +2,6 @@ title: tvm.relay.analysis --- -::: {.automodule members="" imported-members="" exclude-members="Object, RelayExpr, IRModule, Type" autosummary=""} +::: tvm.relay.analysis ::: diff --git a/docs/reference/api/python/relay/backend.md b/docs/reference/api/python/relay/backend.md index e3df36cb..2d50a660 100644 --- a/docs/reference/api/python/relay/backend.md +++ b/docs/reference/api/python/relay/backend.md @@ -6,18 +6,18 @@ title: tvm.relay.backend tvm.relay.backend ::: -::: {.automodule members=""} +::: tvm.relay.backend.interpreter ::: -::: {.automodule members=""} +::: tvm.relay.backend.te_compiler ::: -::: {.automodule members=""} +::: tvm.relay.backend.graph_executor_codegen ::: -::: {.automodule members=""} +::: tvm.relay.backend.vm ::: diff --git a/docs/reference/api/python/relay/dataflow_pattern.md b/docs/reference/api/python/relay/dataflow_pattern.md index 19fabdc3..9c44104a 100644 --- a/docs/reference/api/python/relay/dataflow_pattern.md +++ b/docs/reference/api/python/relay/dataflow_pattern.md @@ -2,6 +2,6 @@ title: tvm.relay.dataflow_pattern --- -::: {.automodule members="" imported-members="" exclude-members="Object, Node" autosummary=""} +::: tvm.relay.dataflow_pattern ::: diff --git a/docs/reference/api/python/relay/frontend.md b/docs/reference/api/python/relay/frontend.md index 539268a4..ca06b419 100644 --- a/docs/reference/api/python/relay/frontend.md +++ b/docs/reference/api/python/relay/frontend.md @@ -2,6 +2,6 @@ title: tvm.relay.frontend --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.frontend ::: diff --git a/docs/reference/api/python/relay/image.md b/docs/reference/api/python/relay/image.md index aeaa7507..9c214971 100644 --- a/docs/reference/api/python/relay/image.md +++ b/docs/reference/api/python/relay/image.md @@ -2,6 +2,6 @@ title: tvm.relay.image --- -::: {.automodule members="" imported-members="" exclude-members="Expr, Constant" autosummary=""} +::: tvm.relay.image ::: diff --git a/docs/reference/api/python/relay/index.md b/docs/reference/api/python/relay/index.md index 656d2cac..ee6cb3e8 100644 --- a/docs/reference/api/python/relay/index.md +++ b/docs/reference/api/python/relay/index.md @@ -2,12 +2,6 @@ title: tvm.relay --- -::: {.automodule members="" imported-members="" exclude-members="RelayExpr, -Type, TypeKind, -TypeVar, GlobalTypeVar, TypeConstraint, FuncType, TupleType, IncompleteType, -TypeCall, TypeRelation, TensorType, RelayRefType, GlobalVar, SourceName, -Span, Var, Op, Constructor -:noindex: TypeData -:autosummary:"} +::: tvm.relay ::: diff --git a/docs/reference/api/python/relay/nn.md b/docs/reference/api/python/relay/nn.md index 34dc4754..0b3873f1 100644 --- a/docs/reference/api/python/relay/nn.md +++ b/docs/reference/api/python/relay/nn.md @@ -2,6 +2,6 @@ title: tvm.relay.nn --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.nn ::: diff --git a/docs/reference/api/python/relay/testing.md b/docs/reference/api/python/relay/testing.md index 17116aa1..d861cfe1 100644 --- a/docs/reference/api/python/relay/testing.md +++ b/docs/reference/api/python/relay/testing.md @@ -2,42 +2,42 @@ title: tvm.relay.testing --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.testing ::: -::: {.automodule members=""} +::: tvm.relay.testing.mlp ::: -::: {.automodule members=""} +::: tvm.relay.testing.resnet ::: -::: {.automodule members=""} +::: tvm.relay.testing.dcgan ::: -::: {.automodule members=""} +::: tvm.relay.testing.mobilenet ::: -::: {.automodule members=""} +::: tvm.relay.testing.lstm ::: -::: {.automodule members=""} +::: tvm.relay.testing.inception_v3 ::: -::: {.automodule members=""} +::: tvm.relay.testing.squeezenet ::: -::: {.automodule members=""} +::: tvm.relay.testing.vgg ::: -::: {.automodule members=""} +::: tvm.relay.testing.densenet ::: diff --git a/docs/reference/api/python/relay/transform.md b/docs/reference/api/python/relay/transform.md index 0fc59717..6578b10b 100644 --- a/docs/reference/api/python/relay/transform.md +++ b/docs/reference/api/python/relay/transform.md @@ -2,6 +2,6 @@ title: tvm.relay.transform --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.transform ::: diff --git a/docs/reference/api/python/relay/vision.md b/docs/reference/api/python/relay/vision.md index 732e05ab..9b8332e7 100644 --- a/docs/reference/api/python/relay/vision.md +++ b/docs/reference/api/python/relay/vision.md @@ -2,6 +2,6 @@ title: tvm.relay.vision --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.vision ::: diff --git a/docs/reference/api/python/rpc.md b/docs/reference/api/python/rpc.md index 380993af..9689387d 100644 --- a/docs/reference/api/python/rpc.md +++ b/docs/reference/api/python/rpc.md @@ -2,6 +2,6 @@ title: tvm.rpc --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.rpc ::: diff --git a/docs/reference/api/python/runtime.md b/docs/reference/api/python/runtime.md index 4f6ef926..cdaa27f3 100644 --- a/docs/reference/api/python/runtime.md +++ b/docs/reference/api/python/runtime.md @@ -2,6 +2,6 @@ title: tvm.runtime --- -::: {.automodule members="" imported-members="" exclude-members="NDArray" autosummary=""} +::: tvm.runtime ::: diff --git a/docs/reference/api/python/target.md b/docs/reference/api/python/target.md index 2bcb2aa5..e9ef930e 100644 --- a/docs/reference/api/python/target.md +++ b/docs/reference/api/python/target.md @@ -2,6 +2,6 @@ title: tvm.target --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.target ::: diff --git a/docs/reference/api/python/te.md b/docs/reference/api/python/te.md index 2666ba85..628f883f 100644 --- a/docs/reference/api/python/te.md +++ b/docs/reference/api/python/te.md @@ -1,11 +1,11 @@ ## tvm.te -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.te ::: ## tvm.te.hybrid -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.te.hybrid ::: diff --git a/docs/reference/api/python/tir.md b/docs/reference/api/python/tir.md index 215368b1..3f82297e 100644 --- a/docs/reference/api/python/tir.md +++ b/docs/reference/api/python/tir.md @@ -1,23 +1,23 @@ -## tvm.tir {#api-python-tir} +## tvm.tir -::: {.automodule members="" imported-members="" exclude-members="PrimExpr, const" autosummary=""} +::: tvm.tir ::: ## tvm.tir.transform -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.tir.transform ::: ## tvm.tir.analysis -::: {.automodule members="" imported-members="" noindex="Buffer, Stmt" autosummary=""} +::: tvm.tir.analysis ::: ## tvm.tir.stmt_functor -::: {.automodule members="" autosummary=""} +::: tvm.tir.stmt_functor ::: diff --git a/docs/reference/api/python/topi.md b/docs/reference/api/python/topi.md index 054b7f2a..ae391b50 100644 --- a/docs/reference/api/python/topi.md +++ b/docs/reference/api/python/topi.md @@ -2,24 +2,24 @@ title: tvm.topi --- -::: {.automodule members="" imported-members="" noindex="AssertStmt" autosummary=""} +::: tvm.topi ::: ## tvm.topi.nn -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.topi.nn ::: ## tvm.topi.image -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.topi.image ::: ## tvm.topi.sparse -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.topi.sparse ::: diff --git a/docs/reference/langref/index.md b/docs/reference/langref/index.md index 8fbb72ee..5cd9a1db 100644 --- a/docs/reference/langref/index.md +++ b/docs/reference/langref/index.md @@ -22,9 +22,9 @@ transformations and optimizations. The below pages describe the grammar, type system, algebraic data types, and operators in Relay, respectively. -::: {.toctree maxdepth="2"} +``` relay_expr relay_type relay_adt relay_op relay_pattern -::: +``` ## Hybrid Script @@ -32,6 +32,6 @@ The below page describes the TVM hybrid script front-end, which uses software emulation to support some constructs not officially supported in TVM. -::: {.toctree maxdepth="2"} +``` hybrid_script -::: +``` diff --git a/docs/reference/langref/relay_adt.md b/docs/reference/langref/relay_adt.md index 96cff08a..320cee40 100644 --- a/docs/reference/langref/relay_adt.md +++ b/docs/reference/langref/relay_adt.md @@ -53,7 +53,7 @@ variables) to the list of constructors for that ADT.* Below is a simple example of defining an ADT and using it in a function via a match expression: -``` +``` # Defines an ADT named "Numbers" data Numbers { Empty : () -> Numbers @@ -83,7 +83,7 @@ Note that ADTs are identified by name, meaning that two ADTs with structurally identical constructors will nevertheless be distinct data types from the point of view of the typechecker. -``` +``` # structurally identical constructors to Numbers data Numbers2 { Empty2 : () -> Numbers2 @@ -105,7 +105,7 @@ functions, ADTs can be polymorphic and take type parameters. For example, one of the standard ADTs commonly used in functional programming languages is the optional type, defined here: -``` +``` # a is a type parameter data Optional { None : () -> Optional @@ -129,7 +129,7 @@ thus given a type that contains the concrete type arguments for that instance, ensuring the information is kept around. Let the below example illustrate: -``` +``` # the signature for option indicates the type argument def @inc_scalar(%opt : Optional[Tensor[(), int32]]) -> Tensor[(), int32] { match(%opt) { @@ -184,7 +184,7 @@ Many commonly used ADTs involve recursion; some of these are given in [Common ADT Uses](#common-adt-uses). As an example here, we will examine the list ADT, ubiquitous in functional languages: -``` +``` data List { Nil : () -> List Cons : (a, List[a]) -> List @@ -202,7 +202,7 @@ empty list). Lists represented in this manner can easily be recursively processed. For example, the following function sums a list of integers: -``` +``` def @list_sum(%l : List[Tensor[(), int32]]) -> Tensor[(), int32] { match(%l) { case Nil() { 0 } @@ -217,7 +217,7 @@ share structures that can be factored out into generic, easily usable functions that will be discussed under [Common ADT Uses](#common-adt-uses). -## Pattern Matching in Match Expressions {#adt-pattern} +## Pattern Matching in Match Expressions Match expressions in Relay, as in other functional languages, are capable of more versatile pattern matching than simply having one case @@ -241,7 +241,7 @@ arguments to `Cons`. The below example uses a wildcard pattern to ignore one of the arguments to `Cons`: -``` +``` def @first(%l : List[a]) -> Optional[a] { match(%l) { case Nil() { None() } @@ -255,7 +255,7 @@ to avoid nested match expressions for a list option. A top-level wildcard pattern is also used to handle all cases that do not match the first clause: -``` +``` def @second_opt(%ll : Optional[List[a]]) -> Optional[a] { match(%ll) { # we only need the second member of the list if there is one @@ -275,7 +275,7 @@ are listed: the first clause whose pattern that matches the input value is the one that is evaluated. Here, a top-level variable pattern binds the whole input value: -``` +``` def @match_order_beware(%l : List[a]) -> List[a] { match(%l) { case %v { %v } @@ -313,7 +313,7 @@ Relay\'s Prelude. (These have all been extensively characterized in the functional programming literature, and we do not attempt to reproduce that work in this document.) -``` +``` # Map: for [h1, h2, ..., hn] returns [f(h1), f(h2), ..., f(hn)] def @map(%f : fn(a) -> b, %l : List[a]) -> List[b] { match(%l) { @@ -343,7 +343,7 @@ Using these iteration constructs, many common operations over lists can be expressed compactly. For example, the following map doubles all members of a list: -``` +``` # directly written def @double(%l : List[Tensor[(), int32]]) -> List[Tensor[(), int32]] { match(%l) { @@ -358,7 +358,7 @@ def @double(%l : List[Tensor[(), int32]]) -> List[Tensor[(), int32]] { The following right fold concatenates two lists: -``` +``` # directly written def @concat(%l1 : List[a], %l2 : List[a]) -> List[a] { match(%l1) { @@ -373,7 +373,7 @@ def @concat(%l1 : List[a], %l2 : List[a]) -> List[a] { The following left fold flattens a list of lists (using concatenation): -``` +``` # directly written def @flatten(%ll : List[List[a]]) -> List[a] { match(%ll) { @@ -407,14 +407,14 @@ recurrent neural net (RNN) cell, which takes in a past state and an input value and returns a new state and output value. In Relay, this would have the following signature: -``` +``` @cell : fn(state_type, in_type) -> (state_type, out_type) ``` We might consider a ReLU cell as a simple concrete example, with a trained version below: -``` +``` def @linear(%x, %w, %b) { %w*%x + %b } def @relu_cell(%w, # weights @@ -437,7 +437,7 @@ def @trained_cell(%w, %b) { Following Olah\'s example, we can encode a sequence (list) of inputs with the following left fold: -``` +``` def @encode(%cell, %input : List[in_type], %init : state_type) -> state_type { # not using the output @foldl(fn(%state, %in) { %cell(%state, %in).0 }, %init, %input) @@ -448,7 +448,7 @@ Using an *unfold* iterator (from Haskell\'s standard library), the same cell could be used to make a generator network (which takes a single input and produces a sequence of outputs): -``` +``` # included in Relay's Prelude def @unfoldr(%f : fn(b) -> Optional[(a, b)], %z : b) -> List[a] { match(%f(%z)) { @@ -478,7 +478,7 @@ An accumulating map (a fold that simultaneously updates an accumulator value and a list of outputs) can be used to write a general RNN (with an output for every input): -``` +``` def @map_accumr(%f : fn(a, b) -> (a, c), %acc : a, %l : List[b]) -> (a, List[c]) { match(%l) { case Nil() { (%acc, Nil()) } @@ -511,7 +511,7 @@ two sets of cells (which may have different weights) process the input in both directions and produce a single set of outputs. The following is a Relay implementation of that example: -``` +``` # creates a list of tuples from two lists # included in Relay's Prelude def @zip(%l : List[a], %m : List[b]) -> List[(a, b)] { diff --git a/docs/reference/langref/relay_expr.md b/docs/reference/langref/relay_expr.md index f39b197a..42706abe 100644 --- a/docs/reference/langref/relay_expr.md +++ b/docs/reference/langref/relay_expr.md @@ -62,7 +62,7 @@ contained in the globally visible environment, known as the [module](#module-and-global-functions). Global identifiers must be unique. -See :py`~tvm.relay.expr.GlobalVar`{.interpreted-text role="class"} for +See `GlobalVar` for its implementation and documentation. ### Local Variable @@ -79,7 +79,7 @@ to `%a` in the inner scope refer to the later definition, while references to `%a` in the outer scope continue to refer to the first one. -``` +``` let %a = 1; let %b = 2 * %a; // %b = 2 let %a = %a + %a; // %a = 2. %a is shadowed @@ -87,14 +87,13 @@ let %a = %a + %a; // %a = 2. %a is shadowed ``` (Note that in Relay\'s implementation, each definition of a local -variable creates a new :py`~tvm.relay.expr.Var`{.interpreted-text -role="class"}, so a shadowed local variable, despite having the same +variable creates a new `Var`, so a shadowed local variable, despite having the same name as one in an outer scope, will be a different object. This allows for comparing local variables by pointer identity with the knowledge that the same local variable object corresponds to a different binding site.) -See :py`~tvm.relay.expr.Var`{.interpreted-text role="class"} for its +See `Var` for its implementation and documentation. ## Functions @@ -110,24 +109,24 @@ argument to a function or returned by a function, as function expressions evaluate to closures (see the [Closures](#closures) subsection), which are values like tensors and tuples. -See :py`~tvm.relay.function.Function`{.interpreted-text role="class"} +See `Function` for the definition and documentation of function nodes. ### Syntax A definition minimally consists of the keyword `fn`, an empty set of parameters, and a body expression -(:py`~tvm.relay.expr.Expr`{.interpreted-text role="class"}) contained by +(`Expr`) contained by curly braces. -``` +``` fn() { body } ``` A definition may contain any number of parameters. For example, a simple function that invokes the `add` operator: -``` +``` fn(%x, %y) { add(%x, %y) } ``` @@ -137,7 +136,7 @@ variables, just like those bound in a `let` expression. One may also annotate explicit types on functions. For example, we can restrict the above function to only work on certain types: -``` +``` fn(%x : Tensor[(10, 10), float32], %y : Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { add(%x, %y) @@ -147,7 +146,7 @@ fn(%x : Tensor[(10, 10), float32], %y : Tensor[(10, 10), float32]) The above function only takes arguments of type `Tensor[(10, 10), float32]` and returns a value of type `Tensor[(10, 10), float32]`. A function parameter is just a local -variable (:py`~tvm.relay.expr.LocalVar`{.interpreted-text role="class"}) +variable (`LocalVar`) optionally annotated with a type, written as `%x : T`. When the type information is omitted, Relay attempts to infer the most @@ -159,7 +158,7 @@ function body and call sites. A recursive function expression can be defined using a `let` binding, as here: -``` +``` let %fact = fn(%x : Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { if (%x == Constant(0, (10, 10), float32)) { Constant(1, (10, 10), float32) @@ -181,7 +180,7 @@ For example, in the below example, the final result will be a tensor of zero values because the closure for `%f` stores the value of `%x` at the pointer where `%f` was defined. -``` +``` let %g = fn() { let %x = Constant(0, (10, 10), float32); // %x is a free variable in the below function @@ -208,13 +207,12 @@ Type parameters are classified by *kind* and can only appear in parts of the type signature where their kind is appropriate (e.g., type parameters of kind `Shape` can only appear where a shape would be expected in a tensor type); for a full discussion, see -`the documentation on type parameters `{.interpreted-text -role="ref"}. +`the documentation on type parameters `. For example, one can define a polymorphic identity function for any Relay type as follows: -``` +``` fn(%x : t) -> t { %x } @@ -223,7 +221,7 @@ fn(%x : t) -> t { The below definition is also polymorphic, but restricts its arguments to tensor types: -``` +``` fn(%x : Tensor[s, bt]) { %x } @@ -236,7 +234,7 @@ Notice that the return type is omitted and will be inferred. A function may also be subject to one or more type relations, such as in the following: -``` +``` fn(%x, %y) where Broadcast { add(%x, %y) } ``` @@ -252,8 +250,7 @@ constraints on types (especially tensor shapes). All function relations must hold at all call sites; type checking is thus treated as a constraint-solving problem. For more detail on type relations and their implementations, please see -`their section in the documentation on Relay's type system `{.interpreted-text -role="ref"}. +`their section in the documentation on Relay's type system `. ## Operators @@ -272,8 +269,7 @@ From the perspective of Relay\'s type system, an operator is a function, so operators may be called like any other function and have function types. In particular, operator types are registered using a single type relation (see -`the documentation on type relations `{.interpreted-text -role="ref"}), typically a relation specialized to that operator. For +`the documentation on type relations `, typically a relation specialized to that operator. For example, the `add` operator is registered with the `Broadcast` relation, indicating that the arguments of `add` must be tensors and that the return type is a tensor whose shape depends on those of its arguments. @@ -286,20 +282,19 @@ Note that common arithmetic operators such as `add` and `multiply` may be written using the corresponding arithmetic operators in the text format (e.g., `+` or `*`) as syntactic sugar. -See :py`~tvm.relay.op.Op`{.interpreted-text role="class"} for the +See `Op` for the definition and documentation of operator nodes, demonstrating the infrastructure for registering operator metadata. The other files in -:py`~tvm.relay.op`{.interpreted-text role="class"} give handles for +`op` give handles for generating a call to various pre-registered operators. The -`tutorial on adding operators to Relay `{.interpreted-text -role="ref"} shows how to add further operators into the language. +`tutorial on adding operators to Relay ` shows how to add further operators into the language. ## ADT Constructors Algebraic data types (ADTs) in Relay are described in detail in a -`separate overview`{.interpreted-text role="ref"} and +`separate overview` and their integration into the type system is described -`here`{.interpreted-text role="ref"}. +`here`. In this section, we will simply note that ADT constructors are given a function type and should be used inside call nodes like a function or @@ -326,7 +321,7 @@ well as the name (\"tag\") of the constructor. The tag will be used for deconstructing the instances and retrieving the values when [ADT Matching](#adt-matching). -See :py`~tvm.relay.adt.Constructor`{.interpreted-text role="class"} for +See `Constructor` for the definition and documentation. ## Call @@ -339,7 +334,7 @@ functions) and Relay operators. The syntax of calls follows that used in C-like languages, demonstrated in the example below: -``` +``` let %c = 1; let %f = fn(%x : Tensor[(), float32], %y : Tensor[(), float32]) { %x + %y + %c }; %f(10, 11) @@ -362,7 +357,7 @@ given, type inference will attempt to infer type arguments if possible. The following code gives examples of explicit and inferred type arguments: -``` +``` // %f : fn(a, b) -> c let %x1 = %f(True, False); // %x1 is of type Tensor[(), bool] @@ -381,15 +376,15 @@ has the `Broadcast` relation, then there are many different shapes that the arguments in the below call could have that would satisfy the type annotation: -``` +``` let %x : Tensor[(100, 100, 100), float32] = %f(%a, %b); %x ``` -See :py`~tvm.relay.expr.Call`{.interpreted-text role="class"} for its +See `Call` for its definition and documentation. -## Module and Global Functions {#module-description} +## Module and Global Functions Relay keeps a global data structure known as a \"module\" (often called an \"environment\" in other functional programming languages) to keep @@ -409,7 +404,7 @@ function definition includes a global identifier and is allowed to recursively refer to that identifier in the body, as in the following example: -``` +``` def @ackermann(%m : Tensor[(), int32], %n : Tensor[(), int32]) -> Tensor[(), int32] { if (%m == 0) { %n + 1 @@ -427,15 +422,14 @@ and body above. Any reference to the identifier `@ackermann` elsewhere in the code could then look up the identifier in the module and replace the function definition as needed. -See :py`~tvm.IRModule`{.interpreted-text role="class"} for the +See `IRModule` for the definition and documentation of a module. ## Constant This node represents a constant tensor value (see -:py`~tvm.relay.Value`{.interpreted-text role="mod"} for more details). A -constant is represented as a :py`~tvm.NDArray`{.interpreted-text -role="class"}, allowing Relay to utilize TVM operators for constant +`Value` for more details). A +constant is represented as a `NDArray`, allowing Relay to utilize TVM operators for constant evaluation. This node can also represent scalar constants, since scalars are tensors @@ -443,7 +437,7 @@ with a shape of `()`. In the text format, numerical and boolean literals are thus syntactic sugar for constants encoding a tensor type with a rank-zero shape. -See :py`~tvm.relay.expr.Constant`{.interpreted-text role="class"} for +See `Constant` for its definition and documentation. ## Tuples @@ -454,14 +448,14 @@ The tuple node builds a finite (that is, of statically known size) sequence of heterogeneous data. These tuples match Python\'s closely, and their fixed length allows for efficient projection of their members. -``` +``` fn(%a : Tensor[(10, 10), float32], %b : float32, %c : Tensor[(100, 100), float32]) { let %tup = (%a, %b); // type: (Tensor[(10, 10), float32], float32) ((%tup.0 + %tup.1), %c) // type: (Tensor[(10, 10), float32], Tensor[(100, 100), float32]) } ``` -See :py`~tvm.relay.expr.Tuple`{.interpreted-text role="class"} for its +See `Tuple` for its definition and documentation. ### Projection @@ -471,11 +465,11 @@ particular member of the tuple. Projections are 0-indexed. For example, the below projection evaluates to `%b`: -``` +``` (%a, %b, %c).1 ``` -See :py`~tvm.relay.expr.TupleGetItem`{.interpreted-text role="class"} +See `TupleGetItem` for its definition and documentation. ## Let Bindings @@ -499,7 +493,7 @@ evaluating the bindings it depends on. For example, in the following example the entire expression evaluates to a tensor of shape `(10, 10)` where all elements are 2: -``` +``` let %x : Tensor[(10, 10), float32] = Constant(1, (10, 10), float32); %x + %x ``` @@ -511,13 +505,13 @@ where neither depends on the other can be safely reordered. For example, the first and second `let` bindings below may be evaluated in either order because neither has a dataflow dependency on the other: -``` +``` let %x = %a + %b; let %y = %c + %d; %x * %y ``` -See :py`~tvm.relay.expr.Let`{.interpreted-text role="class"} for its +See `Let` for its definition and documentation. ## Graph Bindings @@ -536,15 +530,14 @@ already employed by NNVM and other dataflow graph-based input formats. The fact that the variables are not scoped offers some flexibility in evaluation order compared to `let` bindings, though this can also introduce some ambiguity in programs (the -`developer introduction to the Relay IR`{.interpreted-text -role="ref"} includes more detailed discussion of this nuance). +`developer introduction to the Relay IR` includes more detailed discussion of this nuance). *Note: Graph bindings are not currently parsed by the text format.* In Relay\'s text format, a graph binding can be written as below (note the lack of a `let` keyword and a semicolon): -``` +``` %1 = %a + %b %2 = %1 + %1 %2 * %2 @@ -558,7 +551,7 @@ corresponding Relay AST node and using the variables repeatedly, as below (a C++ program using the corresponding API bindings could accomplish the same thing): -``` +``` sum1 = relay.add(a, b) sum2 = relay.add(sum1, sum1) relay.multiply(sum2, sum2) @@ -578,7 +571,7 @@ Relay has a simple if-then-else expression that allows programs to branch on a single value of type `bool`, i.e., a zero-rank tensor of booleans (`Tensor[(), bool]`). -``` +``` if (%t == %u) { %t } else { @@ -593,13 +586,13 @@ evaluates to the value of the \"then\" branch if the condition value evaluates to `True` and evaluates to the value of the \"else\" branch if the condition value evaluates to `False`. -See :py`~tvm.relay.expr.If`{.interpreted-text role="class"} for its +See `If` for its definition and documentation. ## ADT Matching Instances of algebraic data types (ADTs), as discussed in the -`ADT overview`{.interpreted-text role="ref"}, are +`ADT overview`, are containers that store the arguments passed to the constructor used to create them, tagged by the constructor name. @@ -612,8 +605,7 @@ expressions are capable of more general pattern-matching than simply splitting by constructors: any ADT instance nested inside an instance (e.g., a list of lists) can be deconstructed at the same time as the outer instance, while the different fields of the instance can be bound -to variables. (See `this section`{.interpreted-text -role="ref"} for a detailed description of ADT pattern-matching.) +to variables. (See `this section` for a detailed description of ADT pattern-matching.) A match expression is defined using the input value (an expression) and a list of clauses, each of which consists of a pattern and an @@ -623,7 +615,7 @@ evaluated and returned. For example, suppose we have an ADT for natural numbers: -``` +``` data Nat { Z : () -> Nat # zero S : (Nat) -> Nat # successor (+1) to a nat @@ -632,7 +624,7 @@ data Nat { Then the following function subtracts one from a passed nat: -``` +``` fn(%v: Nat[]) -> Nat[] { match(%v) { case Z() { Z() } @@ -645,7 +637,7 @@ The following function subtracts two from its argument if it is at least two and returns the argument otherwise, using a nested constructor pattern: -``` +``` fn(%v : Nat[]) -> Nat[] { match(%v) { case S(S(%n)) { %n } @@ -659,7 +651,7 @@ As aforementioned, the ordering of match clauses is relevant. In the below example, the first clause will always match so those below it can never run: -``` +``` fn(%v : Nat[]) -> Nat[] { match(%v) { case _ { %v } @@ -670,7 +662,7 @@ fn(%v : Nat[]) -> Nat[] { } ``` -See :py`~tvm.relay.adt.Match`{.interpreted-text role="class"} for its +See `Match` for its definition and documentation. ## TempExprs @@ -688,5 +680,5 @@ For an example of `TempExpr` being used in a pass, see to store information about scaling parameters as the pass tries to fold these into the weights of a convolution. -See :py`~tvm.relay.expr.TempExpr`{.interpreted-text role="class"} for +See `TempExpr` for its definition and documentation. diff --git a/docs/reference/langref/relay_op.md b/docs/reference/langref/relay_op.md index f38049e5..bb237532 100644 --- a/docs/reference/langref/relay_op.md +++ b/docs/reference/langref/relay_op.md @@ -24,7 +24,7 @@ operators in the python frontend. This level enables fully connected multi-layer perceptron. -::: {.autosummary nosignatures=""} +::: tvm.relay.log tvm.relay.sqrt tvm.relay.rsqrt tvm.relay.exp tvm.relay.sigmoid tvm.relay.add tvm.relay.subtract tvm.relay.multiply tvm.relay.divide tvm.relay.mod tvm.relay.tanh tvm.relay.concatenate @@ -37,7 +37,7 @@ tvm.relay.nn.bias_add This level enables typical convnet models. -::: {.autosummary nosignatures=""} +::: tvm.relay.nn.conv2d tvm.relay.nn.conv2d_transpose tvm.relay.nn.conv3d tvm.relay.nn.conv3d_transpose tvm.relay.nn.dense tvm.relay.nn.max_pool2d tvm.relay.nn.max_pool3d tvm.relay.nn.avg_pool2d tvm.relay.nn.avg_pool3d @@ -56,7 +56,7 @@ tvm.relay.nn.contrib_conv3d_winograd_weight_transform This level enables additional math and transform operators. -::: {.autosummary nosignatures=""} +::: tvm.relay.nn.leaky_relu tvm.relay.nn.prelu tvm.relay.reshape tvm.relay.reshape_like tvm.relay.copy tvm.relay.transpose tvm.relay.squeeze tvm.relay.floor tvm.relay.ceil tvm.relay.sign @@ -72,7 +72,7 @@ tvm.relay.sparse_to_dense **Level 4: Broadcast and Reductions** -::: {.autosummary nosignatures=""} +::: tvm.relay.right_shift tvm.relay.left_shift tvm.relay.equal tvm.relay.not_equal tvm.relay.greater tvm.relay.greater_equal tvm.relay.less tvm.relay.less_equal tvm.relay.all tvm.relay.any @@ -87,7 +87,7 @@ tvm.relay.broadcast_to **Level 5: Vision/Image Operators** -::: {.autosummary nosignatures=""} +::: tvm.relay.image.resize1d tvm.relay.image.resize2d tvm.relay.image.resize3d tvm.relay.image.crop_and_resize tvm.relay.image.dilation2d tvm.relay.vision.multibox_prior @@ -97,7 +97,7 @@ tvm.relay.vision.yolo_reorg **Level 6: Algorithm Operators** -::: {.autosummary nosignatures=""} +::: tvm.relay.argsort tvm.relay.topk ::: @@ -106,7 +106,7 @@ tvm.relay.argsort tvm.relay.topk This level support backpropagation of broadcast operators. It is temporary. -::: {.autosummary nosignatures=""} +::: tvm.relay.broadcast_to_like tvm.relay.collapse_sum_like tvm.relay.slice_like tvm.relay.shape_of tvm.relay.ndarray_size tvm.relay.layout_transform tvm.relay.device_copy @@ -120,7 +120,7 @@ tvm.relay.one_hot This level supports dialect operators. -::: {.autosummary nosignatures=""} +::: tvm.relay.qnn.op.add tvm.relay.qnn.op.batch_matmul tvm.relay.qnn.op.concatenate tvm.relay.qnn.op.conv2d tvm.relay.qnn.op.conv2d_transpose tvm.relay.qnn.op.dense diff --git a/docs/reference/langref/relay_pattern.md b/docs/reference/langref/relay_pattern.md index 51500f48..ef92242f 100644 --- a/docs/reference/langref/relay_pattern.md +++ b/docs/reference/langref/relay_pattern.md @@ -160,8 +160,8 @@ def test_match_tuple(): The next example is matching a pattern of batch_norm -\> get(0) -\> relu. Note that you can also use -[is_tuple_get_item(bn_node)]{.title-ref} to match a -[TupleGetItem]{.title-ref} node with any index. +[is_tuple_get_item(bn_node)] to match a +[TupleGetItem] node with any index. ``` python def test_match_tuple_get_item(): @@ -332,7 +332,7 @@ doesn\'t correspond to a set of patterns nodes exactly 1-to-1. There are a few other places where we support such \"fuzzy\" matching. Tuples, Functions, and Call nodes with any number of inputs can be -matched by passing [None]{.title-ref} as the argument value, i.e.: +matched by passing [None] as the argument value, i.e.: tuple_pattern = is_tuple(None) func_pattern = FunctionPattern(None, wildcard() + wildcard()) @@ -345,9 +345,9 @@ arguments. Additionally, we support matching Functions with fuzzy bodies, i.e., a function body that is under constrained by the pattern. The pattern [FunctionPattern(\[is_var(), is_var()\], wildcard() + -wildcard()\])]{.title-ref} will match [relay.Function(\[x, y\], x + -y)]{.title-ref}, but it will also match [relay.Function(\[x, y\], x \* -x + y)]{.title-ref}. In the second case, the pattern doesn\'t perfectly +wildcard()\])] will match [relay.Function(\[x, y\], x + +y)], but it will also match [relay.Function(\[x, y\], x \* +x + y)]. In the second case, the pattern doesn\'t perfectly constrain the body of the function, so the resulting match is fuzzy. ## Pattern Language Design diff --git a/docs/reference/langref/relay_type.md b/docs/reference/langref/relay_type.md index 00ef5d52..4e469ee1 100644 --- a/docs/reference/langref/relay_type.md +++ b/docs/reference/langref/relay_type.md @@ -49,7 +49,7 @@ to Relay expressions. The base type for all Relay types. All Relay types are sub-classes of this base type. -See :py`~tvm.relay.ty.Type`{.interpreted-text role="class"} for its +See `Type` for its definition and documentation. ## Tensor Type @@ -71,11 +71,11 @@ shapes will be concrete before running a program. For example, here is a simple concrete tensor type corresponding to a 10-by-10 tensor of 32-bit floats: -``` +``` Tensor[(10, 10), float32] ``` -See :py`~tvm.relay.ty.TensorType`{.interpreted-text role="class"} for +See `TensorType` for its definition and documentation. ## Tuple Type @@ -93,13 +93,13 @@ For example, in the below code, `%t` is of type `(Tensor[(), bool], Tensor[(10, 10), float32])` and `%c` is of type `Tensor[(10, 10), float32]`. -``` +``` let %t = (False, Constant(1, (10, 10), float32)); let %c = %t.1; %c ``` -See :py`~tvm.relay.ty.TupleType`{.interpreted-text role="class"} for its +See `TupleType` for its definition and documentation. ## Type Parameter @@ -125,14 +125,14 @@ parameters at call sites. For example, `s` below is a type parameter of kind `Shape` and it will be substituted with `(10, 10)` at the call site below: -``` +``` def @plus(%t1 : Tensor[s, float32], %t2 : Tensor[s, float32]) { add(%t1, %t2) } plus<(10, 10)>(%a, %b) ``` -See :py`~tvm.relay.ty.TypeVar`{.interpreted-text role="class"} for its +See `TypeVar` for its definition and documentation. ## Type Constraint @@ -141,12 +141,12 @@ This is an abstract class representing a type constraint, to be elaborated upon in further releases. Currently, type relations are the only type constraints provided; they are discussed below. -See :py`~tvm.relay.ty.TypeConstraint`{.interpreted-text role="class"} +See `TypeConstraint` for its definition and documentation. ## Function Type -A function type in Relay, see [tvm/relay/type.h]{.title-ref} for more +A function type in Relay, see [tvm/relay/type.h] for more details. This is the type assigned to functions in Relay. A function type @@ -162,7 +162,7 @@ hold at every call site of the function. The type constraints typically take the function\'s argument types and the function\'s return type as arguments, but may take a subset instead. -See :py`~tvm.relay.ty.FuncType`{.interpreted-text role="class"} for its +See `FuncType` for its definition and documentation. ## Type Relation @@ -175,8 +175,8 @@ Relay to statically reason about the shapes in these cases. A type relation `R` describes a relationship between the input and output types of a Relay function. Namely, `R` is a function on types -that outputs [true]{.title-ref} if the relationship holds and -[false]{.title-ref} if it fails to hold. Types given to a relation may +that outputs [true] if the relationship holds and +[false] if it fails to hold. Types given to a relation may be incomplete or include shape variables, so type inference must assign appropriate values to incomplete types and shape variables for necessary relations to hold, if such values exist. @@ -200,7 +200,7 @@ Flatten(Tensor(sh, bt), O) :- If we have a relation like `Broadcast` it becomes possible to type operators like `add`: -``` +``` add : fn(t1, t2) -> t3 where Broadcast ``` @@ -234,7 +234,7 @@ Presently all of the relations used in Relay are implemented in C++. See the files in `src/relay/op` for examples of relations implemented in C++. -See :py`~tvm.relay.ty.TypeRelation`{.interpreted-text role="class"} for +See `TypeRelation` for its definition and documentation. ## Incomplete Type @@ -252,15 +252,15 @@ concrete type arguments (instantiated) at call sites, whereas incomplete types may appear anywhere in the program and are filled in during type inference. -See :py`~tvm.relay.ty.IncompleteType`{.interpreted-text role="class"} +See `IncompleteType` for its definition and documentation. -## Algebraic Data Types {#adt-typing} +## Algebraic Data Types *Note: ADTs are not currently supported in the text format.* Algebraic data types (ADTs) are described in more detail in -`their overview `{.interpreted-text role="ref"}; this +`their overview `; this section describes their implementation in the type system. An ADT is defined by a collection of named constructors, each of which @@ -298,7 +298,7 @@ Recursion in an ADT definition thus follows just like recursion for a global function: the constructor can simply reference the ADT handle (global type variable) in its definition. -See :py`~tvm.relay.ty.GlobalTypeVar`{.interpreted-text role="class"} for +See `GlobalTypeVar` for its definition and documentation. ### Definitions (Type Data) @@ -306,8 +306,7 @@ its definition and documentation. Besides a name, an ADT needs to store the constructors that are used to define it and any type parameters used within them. These are stored in the module, -`analogous to global function definitions`{.interpreted-text -role="ref"}. +`analogous to global function definitions`. While type-checking uses of ADTs, the type system sometimes must index into the module using the ADT name to look up information about @@ -316,7 +315,7 @@ a match expression clause, the type-checker must check the constructor\'s signature to ensure that any bound variables are being assigned the correct types. -See :py`~tvm.relay.adt.TypeData`{.interpreted-text role="class"} for its +See `TypeData` for its definition and documentation. ### Type Call @@ -340,7 +339,7 @@ one argument for each type parameter in the ADT definition. (An ADT definition with no arguments means that any instance will have no type arguments passed to the type call). -See :py`~tvm.relay.ty.TypeCall`{.interpreted-text role="class"} for its +See `TypeCall` for its definition and documentation. ### Example: List ADT @@ -349,7 +348,7 @@ This subsection uses the simple list ADT (included as a default ADT in Relay) to illustrate the constructs described in the previous sections. Its definition is as follows: -``` +``` data List { Nil : () -> List Cons : (a, List[a]) -> List @@ -366,7 +365,7 @@ the `Cons` constructor is accomplished by using the global type variable Below two instances of lists with their types given, using type calls: -``` +``` Cons(1, Cons(2, Nil())) # List[Tensor[(), int32]] Cons((1, 1), Cons((2, 2), Nil())) # List[(Tensor[(), int32], Tensor[(), int32])] ``` @@ -378,7 +377,7 @@ take any arguments that use a type parameter. (Nevertheless, for any Here are two lists that are rejected by the type system because the type parameters do not match: -``` +``` # attempting to put an integer on a list of int * int tuples Cons(1, Cons((1, 1), Nil())) # attempting to put a list of ints on a list of lists of int * int tuples diff --git a/docs/tutorial/06-tensor_expr.md b/docs/tutorial/06-tensor_expr.md index 57206cf7..04fb2d47 100644 --- a/docs/tutorial/06-tensor_expr.md +++ b/docs/tutorial/06-tensor_expr.md @@ -318,7 +318,7 @@ if run_cuda: # 编译后的 TVM 函数提供了一个任何语言都可调用的 C API。 # # 我们在 Python 中提供了最小数组 API 来进行快速测试以及制作原型。 - # 数组 API 基于 `DLPack `_ 标准。 + # 数组 API 基于 `DLPack [https://github.com/dmlc/dlpack](https://github.com/dmlc/dlpack)`_ 标准。 # # - 首先创建 GPU 设备。 # - 然后 tvm.nd.array 将数据复制到 GPU 上。 diff --git a/docs/tutorial/07-ops_AutoTVM.md b/docs/tutorial/07-ops_AutoTVM.md index c1ab10ee..2aa51a8d 100644 --- a/docs/tutorial/07-ops_AutoTVM.md +++ b/docs/tutorial/07-ops_AutoTVM.md @@ -297,7 +297,7 @@ Finish loading 10 records ## 总结 -本教程展示了如何构建算子模板,使得 TVM 能够搜索参数空间,并选择优化的调度配置。为了更深入地了解其工作原理,推荐基于 :ref: *张量表达式入门 _* 教程中演示的调度操作,向调度添加新的搜索参数。接下来的章节将演示 AutoScheduler,它是TVM 中一种优化常用算子的方法,同时无需用户提供自定义的模板。 +本教程展示了如何构建算子模板,使得 TVM 能够搜索参数空间,并选择优化的调度配置。为了更深入地了解其工作原理,推荐基于 *张量表达式入门 ``* 教程中演示的调度操作,向调度添加新的搜索参数。接下来的章节将演示 AutoScheduler,它是TVM 中一种优化常用算子的方法,同时无需用户提供自定义的模板。 [下载 Python 源代码:autotvm_matmul_x86.py](https://tvm.apache.org/docs/_downloads/8e7bbc9dbdda76ac573b24606b41c006/autotvm_matmul_x86.py) diff --git a/docs/tutorial/10-rpc.md b/docs/tutorial/10-rpc.md index 4f8c2d59..8c7b659a 100644 --- a/docs/tutorial/10-rpc.md +++ b/docs/tutorial/10-rpc.md @@ -98,11 +98,11 @@ func.export_library(path) 除了 `-mtriple`,还可设置其他编译选项,例如: -* **-mcpu=** +* **`-mcpu=`** 指定生成的代码运行的芯片架构。默认情况这是从 target 三元组推断出来的,并自动检测到当前架构。 -* **-mattr=a1,+a2,-a3,…** +* **`-mattr=a1,+a2,-a3,…`** 覆盖或控制 target 的指定属性,例如是否启用 SIMD 操作。默认属性集由当前 CPU 设置。要获取可用属性列表,执行: diff --git a/docs/tutorial/11-quick_start.md b/docs/tutorial/11-quick_start.md index f5b08223..3a4c0e1f 100644 --- a/docs/tutorial/11-quick_start.md +++ b/docs/tutorial/11-quick_start.md @@ -52,7 +52,7 @@ mod, params = relay.testing.resnet.get_workload( print(mod.astext(show_meta_data=False)) ``` -访问代码中的 mod.astext 更多信息: +访问代码中的 mod.astext 更多信息:[https://tvm.apache.org/docs/reference/api/python/ir.html#tvm.ir.Node.astext](https://tvm.apache.org/docs/reference/api/python/ir.html#tvm.ir.Node.astext) 输出结果: @@ -250,4 +250,4 @@ tvm.testing.assert_allclose(out_deploy, out, atol=1e-5) [下载 Python 源代码:relay_quick_start.py](https://tvm.apache.org/docs/_downloads/cc6d9aebd24d54d81752590cbc8f99f9/relay_quick_start.py) -[下载 Jupyter Notebook:relay_quick_start.ipynb](https://tvm.apache.org/docs/_downloads/3dd2108354ac3028c96bcd6a0c7899dd/relay_quick_start.ipynb) \ No newline at end of file +[下载 Jupyter Notebook:relay_quick_start.ipynb](https://tvm.apache.org/docs/_downloads/3dd2108354ac3028c96bcd6a0c7899dd/relay_quick_start.ipynb) diff --git a/docusaurus.config.js b/docusaurus.config.js deleted file mode 100644 index a5756b0b..00000000 --- a/docusaurus.config.js +++ /dev/null @@ -1,139 +0,0 @@ -// @ts-check -// Note: type annotations allow type checking and IDEs autocompletion - -const lightCodeTheme = require('prism-react-renderer/themes/github'); -const darkCodeTheme = require('prism-react-renderer/themes/dracula'); - -/** @type {import('@docusaurus/types').Config} */ -const config = { - title: 'Apache TVM 中文站', - tagline: 'Apache TVM 是一个端到端的深度学习编译框架,适用于 CPU、GPU 和各种机器学习加速芯片。', - url: 'https://tvm.hyper.ai', - baseUrl: '/', - onBrokenLinks: 'throw', - onBrokenMarkdownLinks: 'warn', - favicon: 'img/favicon.png', - organizationName: 'hyperai', // Usually your GitHub org/user name. - projectName: 'tvm-cn', // Usually your repo name. - - // Even if you don't use internalization, you can use this field to set useful - // metadata like html lang. For example, if your site is Chinese, you may want - // to replace "en" with "zh-Hans". - i18n: { - defaultLocale: 'zh-Hans', - locales: ['zh-Hans'], - }, - - presets: [ - [ - '@docusaurus/preset-classic', - /** @type {import('@docusaurus/preset-classic').Options} */ - ({ - docs: { - sidebarPath: require.resolve('./sidebars.js'), - // Please change this to your repo. - editUrl: 'https://github.com/hyperai/tvm-cn/edit/master/', - showLastUpdateAuthor: true, - showLastUpdateTime: true, - lastVersion: 'current', - versions: { - current: { - label: '0.12.0', - }, - } - }, - blog: { - showReadingTime: true, - // Please change this to your repo. - editUrl: - 'https://github.com/facebook/docusaurus/edit/main/website/blog/', - }, - theme: { - customCss: require.resolve('./src/css/app.scss'), - }, - }), - ], - ], - - themeConfig: - /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ - ({ - colorMode: { - defaultMode: 'light', - disableSwitch: false, - respectPrefersColorScheme: true, - }, - navbar: { - title: 'TVM 中文站', - hideOnScroll: false, - logo: { - alt: 'TVM Logo', - src: 'img/favicon-dark.svg', - srcDark: 'img/favicon.svg', - }, - items: [ - { - type: 'doc', - docId: 'index', - position: 'left', - label: '查看文档', - }, - // {to: '/docs', label: '查看文档', position: 'left'}, - {to: '/about', label: '关于', position: 'left'}, - {href: 'https://github.com/hyperai/tvm-cn', label: 'GitHub 项目', position: 'left'}, - {href: 'https://hyper.ai', label: '返回超神经', position: 'left'}, - - // https://github.com/facebook/docusaurus/blob/main/website/docusaurus.config.js#L535C1-L535C1 - { - type: 'docsVersionDropdown', - position: 'right', - dropdownActiveClassDisabled: true, - }, - ], - }, - footer: { - style: 'light', - links: [ - ], - copyright: `© ${new Date().getFullYear()} Apache Software Foundation and Hyper.AI for Chinese Simplified mirror`, - }, - prism: { - theme: lightCodeTheme, - darkTheme: darkCodeTheme, - }, - algolia: { - apiKey: 'f36b719e2245a23ecd89c7e9a41937f2', - indexName: 'docs', - - // Optional: see doc section below - contextualSearch: true, - - // Optional: see doc section below - appId: 'KU6TD2KAGA', - - // Optional: Algolia search parameters - searchParameters: { - attributesToSnippet: [ - 'content:50' - ], - }, - - //... other Algolia params - }, - }), - - plugins: [ - 'docusaurus-plugin-sass', - require.resolve('./src/plugins/typekit/'), - ], - scripts: [ - { - src: 'https://get.openbayes.net/js/script.js', - defer: true, - 'data-domain': 'tvm.hyper.ai' - } - ], - -}; - -module.exports = config; diff --git a/docusaurus.config.ts b/docusaurus.config.ts new file mode 100644 index 00000000..267743e1 --- /dev/null +++ b/docusaurus.config.ts @@ -0,0 +1,159 @@ +import type {Config} from '@docusaurus/types'; +import type * as Preset from '@docusaurus/preset-classic'; +import remarkMath from 'remark-math'; +import rehypeKatex from 'rehype-katex'; + +// @ts-check +// Note: type annotations allow type checking and IDEs autocompletion + +const {themes} = require('prism-react-renderer'); +const lightTheme = themes.github; +const darkTheme = themes.dracula; + +const config: Config = { + title: 'Apache TVM 中文站', + tagline: 'Apache TVM 是一个端到端的深度学习编译框架,适用于 CPU、GPU 和各种机器学习加速芯片。', + url: 'https://tvm.hyper.ai', + baseUrl: '/', + onBrokenLinks: 'throw', + onBrokenMarkdownLinks: 'warn', + favicon: 'img/favicon.png', + organizationName: 'hyperai', // Usually your GitHub org/user name. + projectName: 'tvm-cn', // Usually your repo name. + + // Even if you don't use internalization, you can use this field to set useful + // metadata like html lang. For example, if your site is Chinese, you may want + // to replace "en" with "zh-Hans". + i18n: { + defaultLocale: 'zh-Hans', + locales: ['zh-Hans'], + }, + + presets: [ + [ + '@docusaurus/preset-classic', + { + docs: { + sidebarPath: require.resolve('./sidebars.js'), + // Please change this to your repo. + editUrl: 'https://github.com/hyperai/tvm-cn/edit/master/', + showLastUpdateAuthor: true, + showLastUpdateTime: true, + lastVersion: 'current', + versions: { + current: { + label: '0.12.0', + }, + }, + remarkPlugins: [remarkMath], + // TODO: ts fix + // @ts-ignore + rehypePlugins: [rehypeKatex], + }, + blog: { + showReadingTime: true, + // Please change this to your repo. + editUrl: + 'https://github.com/facebook/docusaurus/edit/main/website/blog/', + }, + theme: { + customCss: require.resolve('./src/css/app.scss'), + }, + } satisfies Preset.Options, + ], + ], + + // https://docusaurus.io/docs/markdown-features/math-equations + stylesheets: [ + { + // href: 'https://cdn.jsdelivr.net/npm/katex@0.13.24/dist/katex.min.css', + href: 'https://experiments-hk.sparanoid.net/jsd/npm/katex@0.13.24/dist/katex.min.css', + type: 'text/css', + integrity: + 'sha384-odtC+0UGzzFL/6PNoE8rX/SPcQDXBJ+uRepguP4QkPCm2LBxH3FA3y+fKSiJ+AmM', + crossorigin: 'anonymous', + }, + ], + + themeConfig: { + colorMode: { + defaultMode: 'light', + disableSwitch: false, + respectPrefersColorScheme: true, + }, + navbar: { + title: 'TVM 中文站', + hideOnScroll: false, + logo: { + alt: 'TVM Logo', + src: 'img/favicon-dark.svg', + srcDark: 'img/favicon.svg', + }, + items: [ + { + type: 'doc', + docId: 'index', + position: 'left', + label: '查看文档', + }, + // {to: '/docs', label: '查看文档', position: 'left'}, + {to: '/about', label: '关于', position: 'left'}, + {href: 'https://github.com/hyperai/tvm-cn', label: 'GitHub 项目', position: 'left'}, + {href: 'https://hyper.ai', label: '返回超神经', position: 'left'}, + + // https://github.com/facebook/docusaurus/blob/main/website/docusaurus.config.js#L535C1-L535C1 + { + type: 'docsVersionDropdown', + position: 'right', + dropdownActiveClassDisabled: true, + }, + ], + }, + footer: { + style: 'light', + links: [ + ], + copyright: `© ${new Date().getFullYear()} Apache Software Foundation and Hyper.AI for Chinese Simplified mirror`, + }, + prism: { + theme: lightTheme, + darkTheme: darkTheme, + // https://docusaurus.io/docs/migration/v3#prism-react-renderer-v20 + additionalLanguages: ['bash', 'diff', 'json', 'python'], + }, + algolia: { + apiKey: 'f36b719e2245a23ecd89c7e9a41937f2', + indexName: 'docs', + + // Optional: see doc section below + contextualSearch: true, + + // Optional: see doc section below + appId: 'KU6TD2KAGA', + + // Optional: Algolia search parameters + searchParameters: { + attributesToSnippet: [ + 'content:50' + ], + }, + + //... other Algolia params + }, + } satisfies Preset.ThemeConfig, + + plugins: [ + 'docusaurus-plugin-sass', + require.resolve('./src/plugins/typekit/'), + ], + scripts: [ + { + src: 'https://get.openbayes.net/js/script.js', + defer: true, + 'data-domain': 'tvm.hyper.ai' + } + ], + +}; + +module.exports = config; diff --git a/package.json b/package.json index 3768acb5..a1003da0 100644 --- a/package.json +++ b/package.json @@ -16,22 +16,24 @@ "typecheck": "tsc" }, "dependencies": { - "@docusaurus/core": "2.4.3", - "@docusaurus/preset-classic": "2.4.3", - "@mdx-js/react": "1.6.22", + "@docusaurus/core": "3.0.0", + "@docusaurus/preset-classic": "3.0.0", + "@mdx-js/react": "3.0.0", "@openbayes/docsearch-css": "1.2.7", "@openbayes/docusaurus-enlight": "1.3.0", "clsx": "2.0.0", "docusaurus-plugin-sass": "0.2.5", "kladenets": "2.0.0-15", - "prism-react-renderer": "1.3.5", - "react": "17.0.2", - "react-dom": "17.0.2", + "prism-react-renderer": "2.1.0", + "react": "18.2.0", + "react-dom": "18.2.0", + "rehype-katex": "7", + "remark-math": "6", "sass": "1.69.5" }, "devDependencies": { - "@docusaurus/module-type-aliases": "2.4.3", - "@tsconfig/docusaurus": "2.0.2", + "@docusaurus/module-type-aliases": "3.0.0", + "@docusaurus/tsconfig": "3.0.0", "typescript": "5.2.2" }, "browserslist": { @@ -47,6 +49,6 @@ ] }, "engines": { - "node": ">=16.14" + "node": ">=18.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f954af65..bf578822 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,14 +6,14 @@ settings: dependencies: '@docusaurus/core': - specifier: 2.4.3 - version: 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) + specifier: 3.0.0 + version: 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) '@docusaurus/preset-classic': - specifier: 2.4.3 - version: 2.4.3(@algolia/client-search@4.19.1)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.7.0)(typescript@5.2.2) + specifier: 3.0.0 + version: 3.0.0(@algolia/client-search@4.20.0)(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.2.2) '@mdx-js/react': - specifier: 1.6.22 - version: 1.6.22(react@17.0.2) + specifier: 3.0.0 + version: 3.0.0(@types/react@18.2.33)(react@18.2.0) '@openbayes/docsearch-css': specifier: 1.2.7 version: 1.2.7(kladenets@2.0.0-15) @@ -25,207 +25,178 @@ dependencies: version: 2.0.0 docusaurus-plugin-sass: specifier: 0.2.5 - version: 0.2.5(@docusaurus/core@2.4.3)(sass@1.69.5)(webpack@5.88.2) + version: 0.2.5(@docusaurus/core@3.0.0)(sass@1.69.5)(webpack@5.89.0) kladenets: specifier: 2.0.0-15 version: 2.0.0-15 prism-react-renderer: - specifier: 1.3.5 - version: 1.3.5(react@17.0.2) + specifier: 2.1.0 + version: 2.1.0(react@18.2.0) react: - specifier: 17.0.2 - version: 17.0.2 + specifier: 18.2.0 + version: 18.2.0 react-dom: - specifier: 17.0.2 - version: 17.0.2(react@17.0.2) + specifier: 18.2.0 + version: 18.2.0(react@18.2.0) + rehype-katex: + specifier: '7' + version: 7.0.0 + remark-math: + specifier: '6' + version: 6.0.0 sass: specifier: 1.69.5 version: 1.69.5 devDependencies: '@docusaurus/module-type-aliases': - specifier: 2.4.3 - version: 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@tsconfig/docusaurus': - specifier: 2.0.2 - version: 2.0.2 + specifier: 3.0.0 + version: 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/tsconfig': + specifier: 3.0.0 + version: 3.0.0 typescript: specifier: 5.2.2 version: 5.2.2 packages: - /@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0)(search-insights@2.7.0): + /@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0): resolution: {integrity: sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==} dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0)(search-insights@2.7.0) - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0) + '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0) + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights dev: false - /@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0)(search-insights@2.7.0): + /@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0): resolution: {integrity: sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==} peerDependencies: search-insights: '>= 1 < 3' dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0) - search-insights: 2.7.0 + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + search-insights: 2.9.0 transitivePeerDependencies: - '@algolia/client-search' - algoliasearch dev: false - /@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0): + /@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0): resolution: {integrity: sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0) - '@algolia/client-search': 4.19.1 - algoliasearch: 4.18.0 + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + '@algolia/client-search': 4.20.0 + algoliasearch: 4.20.0 dev: false - /@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0): + /@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0): resolution: {integrity: sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/client-search': 4.19.1 - algoliasearch: 4.18.0 + '@algolia/client-search': 4.20.0 + algoliasearch: 4.20.0 dev: false - /@algolia/cache-browser-local-storage@4.18.0: - resolution: {integrity: sha512-rUAs49NLlO8LVLgGzM4cLkw8NJLKguQLgvFmBEe3DyzlinoqxzQMHfKZs6TSq4LZfw/z8qHvRo8NcTAAUJQLcw==} + /@algolia/cache-browser-local-storage@4.20.0: + resolution: {integrity: sha512-uujahcBt4DxduBTvYdwO3sBfHuJvJokiC3BP1+O70fglmE1ShkH8lpXqZBac1rrU3FnNYSUs4pL9lBdTKeRPOQ==} dependencies: - '@algolia/cache-common': 4.18.0 + '@algolia/cache-common': 4.20.0 dev: false - /@algolia/cache-common@4.18.0: - resolution: {integrity: sha512-BmxsicMR4doGbeEXQu8yqiGmiyvpNvejYJtQ7rvzttEAMxOPoWEHrWyzBQw4x7LrBY9pMrgv4ZlUaF8PGzewHg==} + /@algolia/cache-common@4.20.0: + resolution: {integrity: sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ==} dev: false - /@algolia/cache-common@4.19.1: - resolution: {integrity: sha512-XGghi3l0qA38HiqdoUY+wvGyBsGvKZ6U3vTiMBT4hArhP3fOGLXpIINgMiiGjTe4FVlTa5a/7Zf2bwlIHfRqqg==} - dev: false - - /@algolia/cache-in-memory@4.18.0: - resolution: {integrity: sha512-evD4dA1nd5HbFdufBxLqlJoob7E2ozlqJZuV3YlirNx5Na4q1LckIuzjNYZs2ddLzuTc/Xd5O3Ibf7OwPskHxw==} - dependencies: - '@algolia/cache-common': 4.18.0 - dev: false - - /@algolia/client-account@4.18.0: - resolution: {integrity: sha512-XsDnlROr3+Z1yjxBJjUMfMazi1V155kVdte6496atvBgOEtwCzTs3A+qdhfsAnGUvaYfBrBkL0ThnhMIBCGcew==} - dependencies: - '@algolia/client-common': 4.18.0 - '@algolia/client-search': 4.18.0 - '@algolia/transporter': 4.18.0 - dev: false - - /@algolia/client-analytics@4.18.0: - resolution: {integrity: sha512-chEUSN4ReqU7uRQ1C8kDm0EiPE+eJeAXiWcBwLhEynfNuTfawN9P93rSZktj7gmExz0C8XmkbBU19IQ05wCNrQ==} + /@algolia/cache-in-memory@4.20.0: + resolution: {integrity: sha512-Wm9ak/IaacAZXS4mB3+qF/KCoVSBV6aLgIGFEtQtJwjv64g4ePMapORGmCyulCFwfePaRAtcaTbMcJF+voc/bg==} dependencies: - '@algolia/client-common': 4.18.0 - '@algolia/client-search': 4.18.0 - '@algolia/requester-common': 4.18.0 - '@algolia/transporter': 4.18.0 + '@algolia/cache-common': 4.20.0 dev: false - /@algolia/client-common@4.18.0: - resolution: {integrity: sha512-7N+soJFP4wn8tjTr3MSUT/U+4xVXbz4jmeRfWfVAzdAbxLAQbHa0o/POSdTvQ8/02DjCLelloZ1bb4ZFVKg7Wg==} + /@algolia/client-account@4.20.0: + resolution: {integrity: sha512-GGToLQvrwo7am4zVkZTnKa72pheQeez/16sURDWm7Seyz+HUxKi3BM6fthVVPUEBhtJ0reyVtuK9ArmnaKl10Q==} dependencies: - '@algolia/requester-common': 4.18.0 - '@algolia/transporter': 4.18.0 + '@algolia/client-common': 4.20.0 + '@algolia/client-search': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-common@4.19.1: - resolution: {integrity: sha512-3kAIVqTcPrjfS389KQvKzliC559x+BDRxtWamVJt8IVp7LGnjq+aVAXg4Xogkur1MUrScTZ59/AaUd5EdpyXgA==} + /@algolia/client-analytics@4.20.0: + resolution: {integrity: sha512-EIr+PdFMOallRdBTHHdKI3CstslgLORQG7844Mq84ib5oVFRVASuuPmG4bXBgiDbcsMLUeOC6zRVJhv1KWI0ug==} dependencies: - '@algolia/requester-common': 4.19.1 - '@algolia/transporter': 4.19.1 + '@algolia/client-common': 4.20.0 + '@algolia/client-search': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-personalization@4.18.0: - resolution: {integrity: sha512-+PeCjODbxtamHcPl+couXMeHEefpUpr7IHftj4Y4Nia1hj8gGq4VlIcqhToAw8YjLeCTfOR7r7xtj3pJcYdP8A==} + /@algolia/client-common@4.20.0: + resolution: {integrity: sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ==} dependencies: - '@algolia/client-common': 4.18.0 - '@algolia/requester-common': 4.18.0 - '@algolia/transporter': 4.18.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-search@4.18.0: - resolution: {integrity: sha512-F9xzQXTjm6UuZtnsLIew6KSraXQ0AzS/Ee+OD+mQbtcA/K1sg89tqb8TkwjtiYZ0oij13u3EapB3gPZwm+1Y6g==} + /@algolia/client-personalization@4.20.0: + resolution: {integrity: sha512-N9+zx0tWOQsLc3K4PVRDV8GUeOLAY0i445En79Pr3zWB+m67V+n/8w4Kw1C5LlbHDDJcyhMMIlqezh6BEk7xAQ==} dependencies: - '@algolia/client-common': 4.18.0 - '@algolia/requester-common': 4.18.0 - '@algolia/transporter': 4.18.0 + '@algolia/client-common': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-search@4.19.1: - resolution: {integrity: sha512-mBecfMFS4N+yK/p0ZbK53vrZbL6OtWMk8YmnOv1i0LXx4pelY8TFhqKoTit3NPVPwoSNN0vdSN9dTu1xr1XOVw==} + /@algolia/client-search@4.20.0: + resolution: {integrity: sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg==} dependencies: - '@algolia/client-common': 4.19.1 - '@algolia/requester-common': 4.19.1 - '@algolia/transporter': 4.19.1 + '@algolia/client-common': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false /@algolia/events@4.0.1: resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==} dev: false - /@algolia/logger-common@4.18.0: - resolution: {integrity: sha512-46etYgSlkoKepkMSyaoriSn2JDgcrpc/nkOgou/lm0y17GuMl9oYZxwKKTSviLKI5Irk9nSKGwnBTQYwXOYdRg==} + /@algolia/logger-common@4.20.0: + resolution: {integrity: sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ==} dev: false - /@algolia/logger-common@4.19.1: - resolution: {integrity: sha512-i6pLPZW/+/YXKis8gpmSiNk1lOmYCmRI6+x6d2Qk1OdfvX051nRVdalRbEcVTpSQX6FQAoyeaui0cUfLYW5Elw==} - dev: false - - /@algolia/logger-console@4.18.0: - resolution: {integrity: sha512-3P3VUYMl9CyJbi/UU1uUNlf6Z8N2ltW3Oqhq/nR7vH0CjWv32YROq3iGWGxB2xt3aXobdUPXs6P0tHSKRmNA6g==} + /@algolia/logger-console@4.20.0: + resolution: {integrity: sha512-THlIGG1g/FS63z0StQqDhT6bprUczBI8wnLT3JWvfAQDZX5P6fCg7dG+pIrUBpDIHGszgkqYEqECaKKsdNKOUA==} dependencies: - '@algolia/logger-common': 4.18.0 + '@algolia/logger-common': 4.20.0 dev: false - /@algolia/requester-browser-xhr@4.18.0: - resolution: {integrity: sha512-/AcWHOBub2U4TE/bPi4Gz1XfuLK6/7dj4HJG+Z2SfQoS1RjNLshZclU3OoKIkFp8D2NC7+BNsPvr9cPLyW8nyQ==} + /@algolia/requester-browser-xhr@4.20.0: + resolution: {integrity: sha512-HbzoSjcjuUmYOkcHECkVTwAelmvTlgs48N6Owt4FnTOQdwn0b8pdht9eMgishvk8+F8bal354nhx/xOoTfwiAw==} dependencies: - '@algolia/requester-common': 4.18.0 - dev: false - - /@algolia/requester-common@4.18.0: - resolution: {integrity: sha512-xlT8R1qYNRBCi1IYLsx7uhftzdfsLPDGudeQs+xvYB4sQ3ya7+ppolB/8m/a4F2gCkEO6oxpp5AGemM7kD27jA==} + '@algolia/requester-common': 4.20.0 dev: false - /@algolia/requester-common@4.19.1: - resolution: {integrity: sha512-BisRkcWVxrDzF1YPhAckmi2CFYK+jdMT60q10d7z3PX+w6fPPukxHRnZwooiTUrzFe50UBmLItGizWHP5bDzVQ==} + /@algolia/requester-common@4.20.0: + resolution: {integrity: sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng==} dev: false - /@algolia/requester-node-http@4.18.0: - resolution: {integrity: sha512-TGfwj9aeTVgOUhn5XrqBhwUhUUDnGIKlI0kCBMdR58XfXcfdwomka+CPIgThRbfYw04oQr31A6/95ZH2QVJ9UQ==} + /@algolia/requester-node-http@4.20.0: + resolution: {integrity: sha512-ocJ66L60ABSSTRFnCHIEZpNHv6qTxsBwJEPfYaSBsLQodm0F9ptvalFkHMpvj5DfE22oZrcrLbOYM2bdPJRHng==} dependencies: - '@algolia/requester-common': 4.18.0 + '@algolia/requester-common': 4.20.0 dev: false - /@algolia/transporter@4.18.0: - resolution: {integrity: sha512-xbw3YRUGtXQNG1geYFEDDuFLZt4Z8YNKbamHPkzr3rWc6qp4/BqEeXcI2u/P/oMq2yxtXgMxrCxOPA8lyIe5jw==} + /@algolia/transporter@4.20.0: + resolution: {integrity: sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg==} dependencies: - '@algolia/cache-common': 4.18.0 - '@algolia/logger-common': 4.18.0 - '@algolia/requester-common': 4.18.0 - dev: false - - /@algolia/transporter@4.19.1: - resolution: {integrity: sha512-nkpvPWbpuzxo1flEYqNIbGz7xhfhGOKGAZS7tzC+TELgEmi7z99qRyTfNSUlW7LZmB3ACdnqAo+9A9KFBENviQ==} - dependencies: - '@algolia/cache-common': 4.19.1 - '@algolia/logger-common': 4.19.1 - '@algolia/requester-common': 4.19.1 + '@algolia/cache-common': 4.20.0 + '@algolia/logger-common': 4.20.0 + '@algolia/requester-common': 4.20.0 dev: false /@ampproject/remapping@2.2.1: @@ -233,60 +204,37 @@ packages: engines: {node: '>=6.0.0'} dependencies: '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 dev: false - /@babel/code-frame@7.22.5: - resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==} + /@babel/code-frame@7.22.13: + resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.22.5 - dev: false - - /@babel/compat-data@7.22.9: - resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} - engines: {node: '>=6.9.0'} + '@babel/highlight': 7.22.20 + chalk: 2.4.2 dev: false - /@babel/core@7.12.9: - resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==} + /@babel/compat-data@7.23.2: + resolution: {integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==} engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.22.9 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.12.9) - '@babel/helpers': 7.22.6 - '@babel/parser': 7.22.7 - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.8 - '@babel/types': 7.22.5 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - lodash: 4.17.21 - resolve: 1.22.2 - semver: 5.7.2 - source-map: 0.5.7 - transitivePeerDependencies: - - supports-color dev: false - /@babel/core@7.22.9: - resolution: {integrity: sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==} + /@babel/core@7.23.2: + resolution: {integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.22.9 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9) - '@babel/helpers': 7.22.6 - '@babel/parser': 7.22.7 - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.8 - '@babel/types': 7.22.5 - convert-source-map: 1.9.0 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.23.0 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) + '@babel/helpers': 7.23.2 + '@babel/parser': 7.23.0 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.2 + '@babel/types': 7.23.0 + convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 json5: 2.2.3 @@ -295,13 +243,13 @@ packages: - supports-color dev: false - /@babel/generator@7.22.9: - resolution: {integrity: sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==} + /@babel/generator@7.23.0: + resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 jsesc: 2.5.2 dev: false @@ -309,146 +257,125 @@ packages: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false - /@babel/helper-builder-binary-assignment-operator-visitor@7.22.5: - resolution: {integrity: sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==} + /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: + resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false - /@babel/helper-compilation-targets@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==} + /@babel/helper-compilation-targets@7.22.15: + resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.9 - '@babel/helper-validator-option': 7.22.5 - browserslist: 4.21.10 + '@babel/compat-data': 7.23.2 + '@babel/helper-validator-option': 7.22.15 + browserslist: 4.22.1 lru-cache: 5.1.1 semver: 6.3.1 dev: false - /@babel/helper-create-class-features-plugin@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ==} + /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 - '@babel/helper-member-expression-to-functions': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.9) + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 dev: false - /@babel/helper-create-regexp-features-plugin@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==} + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 dev: false - /@babel/helper-define-polyfill-provider@0.4.1(@babel/core@7.22.9): - resolution: {integrity: sha512-kX4oXixDxG197yhX+J3Wp+NpL2wuCFjWQAr6yX2jtCnflK9ulMI51ULFGIrWiX1jGfvAxdHp+XQCcP2bZGPs9A==} + /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.2): + resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} peerDependencies: - '@babel/core': ^7.4.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-compilation-targets': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.4 lodash.debounce: 4.0.8 - resolve: 1.22.2 + resolve: 1.22.8 transitivePeerDependencies: - supports-color dev: false - /@babel/helper-environment-visitor@7.22.5: - resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} + /@babel/helper-environment-visitor@7.22.20: + resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-function-name@7.22.5: - resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} + /@babel/helper-function-name@7.23.0: + resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.22.5 - '@babel/types': 7.22.5 + '@babel/template': 7.22.15 + '@babel/types': 7.23.0 dev: false /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 - dev: false - - /@babel/helper-member-expression-to-functions@7.22.5: - resolution: {integrity: sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false - /@babel/helper-module-imports@7.22.5: - resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} + /@babel/helper-member-expression-to-functions@7.23.0: + resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false - /@babel/helper-module-transforms@7.22.9(@babel/core@7.12.9): - resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==} + /@babel/helper-module-imports@7.22.15: + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.12.9 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-module-imports': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/types': 7.23.0 dev: false - /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==} + /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-module-imports': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 '@babel/helper-simple-access': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 dev: false /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 - dev: false - - /@babel/helper-plugin-utils@7.10.4: - resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} + '@babel/types': 7.23.0 dev: false /@babel/helper-plugin-utils@7.22.5: @@ -456,27 +383,27 @@ packages: engines: {node: '>=6.9.0'} dev: false - /@babel/helper-remap-async-to-generator@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==} + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.2): + resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-wrap-function': 7.22.9 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-wrap-function': 7.22.20 dev: false - /@babel/helper-replace-supers@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==} + /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.2): + resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-member-expression-to-functions': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 dev: false @@ -484,21 +411,21 @@ packages: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false /@babel/helper-string-parser@7.22.5: @@ -506,1126 +433,1072 @@ packages: engines: {node: '>=6.9.0'} dev: false - /@babel/helper-validator-identifier@7.22.5: - resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} + /@babel/helper-validator-identifier@7.22.20: + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-validator-option@7.22.5: - resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} + /@babel/helper-validator-option@7.22.15: + resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-wrap-function@7.22.9: - resolution: {integrity: sha512-sZ+QzfauuUEfxSEjKFmi3qDSHgLsTPK/pEpoD/qonZKOtTPTLbf59oabPQ4rKekt9lFcj/hTZaOhWwFYrgjk+Q==} + /@babel/helper-wrap-function@7.22.20: + resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-function-name': 7.22.5 - '@babel/template': 7.22.5 - '@babel/types': 7.22.5 + '@babel/helper-function-name': 7.23.0 + '@babel/template': 7.22.15 + '@babel/types': 7.23.0 dev: false - /@babel/helpers@7.22.6: - resolution: {integrity: sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==} + /@babel/helpers@7.23.2: + resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.8 - '@babel/types': 7.22.5 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.2 + '@babel/types': 7.23.0 transitivePeerDependencies: - supports-color dev: false - /@babel/highlight@7.22.5: - resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==} + /@babel/highlight@7.22.20: + resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 dev: false - /@babel/parser@7.22.7: - resolution: {integrity: sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==} + /@babel/parser@7.23.0: + resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 dev: false - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==} + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==} + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.22.6(@babel/core@7.22.9) - dev: false - - /@babel/plugin-proposal-object-rest-spread@7.12.1(@babel/core@7.12.9): - resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@babel/plugin-transform-parameters': 7.22.5(@babel/core@7.12.9) + '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.2) dev: false - /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.22.9): + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.2): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - dev: false - - /@babel/plugin-proposal-unicode-property-regex@7.18.6(@babel/core@7.22.9): - resolution: {integrity: sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==} - engines: {node: '>=4'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead. - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.23.2 dev: false - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.22.9): + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.2): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.22.9): + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.2): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.22.9): + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.2): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.22.9): + /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.22.9): + /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.22.9): + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-jsx@7.12.1(@babel/core@7.12.9): - resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.22.9): + /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.22.9): + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.22.9): + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.12.9): - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.22.9): + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.22.9): + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.2): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.22.9): + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.2): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.22.9): + /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.22.9): + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.2): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-async-generator-functions@7.22.7(@babel/core@7.22.9): - resolution: {integrity: sha512-7HmE7pk/Fmke45TODvxvkxRMV9RazV+ZZzhOL9AG8G29TLrr3jkjwF7uJfxZ30EoXpO+LJkq4oA8NjO2DTnEDg==} + /@babel/plugin-transform-async-generator-functions@7.23.2(@babel/core@7.23.2): + resolution: {integrity: sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-environment-visitor': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.9(@babel/core@7.22.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.9) + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-module-imports': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.9(@babel/core@7.22.9) + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-block-scoping@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg==} + /@babel/plugin-transform-block-scoping@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-class-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-class-static-block@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==} + /@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-class-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.22.9) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-classes@7.22.6(@babel/core@7.22.9): - resolution: {integrity: sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==} + /@babel/plugin-transform-classes@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.9) + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 dev: false - /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/template': 7.22.5 + '@babel/template': 7.22.15 dev: false - /@babel/plugin-transform-destructuring@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ==} + /@babel/plugin-transform-destructuring@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-dynamic-import@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==} + /@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.9) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-export-namespace-from@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==} + /@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.9) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-for-of@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==} + /@babel/plugin-transform-for-of@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) - '@babel/helper-function-name': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-json-strings@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==} + /@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.9) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-literals@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-logical-assignment-operators@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==} + /@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.9) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-modules-amd@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==} + /@babel/plugin-transform-modules-amd@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-modules-commonjs@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==} + /@babel/plugin-transform-modules-commonjs@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-simple-access': 7.22.5 dev: false - /@babel/plugin-transform-modules-systemjs@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==} + /@babel/plugin-transform-modules-systemjs@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9) + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 dev: false - /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-new-target@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-new-target@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-nullish-coalescing-operator@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==} + /@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.9) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-numeric-separator@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==} + /@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.9) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-object-rest-spread@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==} + /@babel/plugin-transform-object-rest-spread@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.9 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) + '@babel/compat-data': 7.23.2 + '@babel/core': 7.23.2 + '@babel/helper-compilation-targets': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-transform-parameters': 7.22.5(@babel/core@7.22.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.9) + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-optional-catch-binding@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==} + /@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.9) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-optional-chaining@7.22.6(@babel/core@7.22.9): - resolution: {integrity: sha512-Vd5HiWml0mDVtcLHIoEU5sw6HOUW/Zk0acLs/SAeuLzkGNOPc9DB4nkUajemhCmTIz3eiaKREZn2hQQqF79YTg==} + /@babel/plugin-transform-optional-chaining@7.23.0(@babel/core@7.23.2): + resolution: {integrity: sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.9) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-parameters@7.22.5(@babel/core@7.12.9): - resolution: {integrity: sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==} + /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.12.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-parameters@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.22.9 - '@babel/helper-plugin-utils': 7.22.5 - dev: false - - /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-class-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-private-property-in-object@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==} + /@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.23.2): + resolution: {integrity: sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.9) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-constant-elements@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-react-constant-elements@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/plugin-transform-react-jsx': 7.22.5(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-react-jsx@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA==} + /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-module-imports': 7.22.5 + '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.9) - '@babel/types': 7.22.5 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) + '@babel/types': 7.23.0 dev: false - /@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-regenerator@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw==} + /@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.23.2): + resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - regenerator-transform: 0.15.1 + regenerator-transform: 0.15.2 dev: false - /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-runtime@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==} + /@babel/plugin-transform-runtime@7.23.2(@babel/core@7.23.2): + resolution: {integrity: sha512-XOntj6icgzMS58jPVtQpiuF6ZFWxQiJavISGx5KGjRj+3gqZr8+N6Kx+N9BApWzgS+DOjIZfXXj0ZesenOWDyA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-module-imports': 7.22.5 + '@babel/core': 7.23.2 + '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - babel-plugin-polyfill-corejs2: 0.4.4(@babel/core@7.22.9) - babel-plugin-polyfill-corejs3: 0.8.2(@babel/core@7.22.9) - babel-plugin-polyfill-regenerator: 0.5.1(@babel/core@7.22.9) + babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.2) + babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.2) + babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.2) semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-spread@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-spread@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: false - /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-typescript@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-BnVR1CpKiuD0iobHPaM1iLvcwPYN2uVFAqoLVSpEDKWuOikoCv5HbKLxclhKYUXlWkX86DoZGtqI4XhbOsyrMg==} + /@babel/plugin-transform-typescript@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.22.9) + '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.2) dev: false - /@babel/plugin-transform-unicode-escapes@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg==} + /@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.23.2): + resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.22.9): + /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/preset-env@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==} + /@babel/preset-env@7.23.2(@babel/core@7.23.2): + resolution: {integrity: sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.9 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) + '@babel/compat-data': 7.23.2 + '@babel/core': 7.23.2 + '@babel/helper-compilation-targets': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.5 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.22.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.9) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.22.9) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.22.9) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-import-assertions': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-syntax-import-attributes': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.22.9) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.9) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.9) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.22.9) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.22.9) - '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-async-generator-functions': 7.22.7(@babel/core@7.22.9) - '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-block-scoping': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-class-properties': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-class-static-block': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-classes': 7.22.6(@babel/core@7.22.9) - '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-destructuring': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-duplicate-keys': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-dynamic-import': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-exponentiation-operator': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-export-namespace-from': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-for-of': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-json-strings': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-logical-assignment-operators': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-modules-amd': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-modules-commonjs': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-modules-systemjs': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-modules-umd': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-new-target': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-nullish-coalescing-operator': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-numeric-separator': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-object-rest-spread': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-optional-catch-binding': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-optional-chaining': 7.22.6(@babel/core@7.22.9) - '@babel/plugin-transform-parameters': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-private-methods': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-private-property-in-object': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-regenerator': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-reserved-words': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-typeof-symbol': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-unicode-escapes': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-unicode-property-regex': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-unicode-sets-regex': 7.22.5(@babel/core@7.22.9) - '@babel/preset-modules': 0.1.5(@babel/core@7.22.9) - '@babel/types': 7.22.5 - babel-plugin-polyfill-corejs2: 0.4.4(@babel/core@7.22.9) - babel-plugin-polyfill-corejs3: 0.8.2(@babel/core@7.22.9) - babel-plugin-polyfill-regenerator: 0.5.1(@babel/core@7.22.9) - core-js-compat: 3.31.1 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.2) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.2) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-import-assertions': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-syntax-import-attributes': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.2) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.2) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.2) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.2) + '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-async-generator-functions': 7.23.2(@babel/core@7.23.2) + '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-block-scoping': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-class-properties': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-class-static-block': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-classes': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-destructuring': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-duplicate-keys': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-dynamic-import': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-exponentiation-operator': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-export-namespace-from': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-for-of': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-json-strings': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-logical-assignment-operators': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-modules-amd': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-modules-systemjs': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-modules-umd': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-new-target': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-nullish-coalescing-operator': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-numeric-separator': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-object-rest-spread': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-optional-catch-binding': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-transform-private-methods': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-private-property-in-object': 7.22.11(@babel/core@7.23.2) + '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-regenerator': 7.22.10(@babel/core@7.23.2) + '@babel/plugin-transform-reserved-words': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-typeof-symbol': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-unicode-escapes': 7.22.10(@babel/core@7.23.2) + '@babel/plugin-transform-unicode-property-regex': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-unicode-sets-regex': 7.22.5(@babel/core@7.23.2) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.2) + '@babel/types': 7.23.0 + babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.2) + babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.2) + babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.2) + core-js-compat: 3.33.2 semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /@babel/preset-modules@0.1.5(@babel/core@7.22.9): - resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.2): + resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6(@babel/core@7.22.9) - '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.22.9) - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 esutils: 2.0.3 dev: false - /@babel/preset-react@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==} + /@babel/preset-react@7.22.15(@babel/core@7.23.2): + resolution: {integrity: sha512-Csy1IJ2uEh/PecCBXXoZGAZBeCATTuePzCSB7dLYWS0vOEj6CNpjxIhW4duWwZodBNueH7QO14WbGn8YyeuN9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.5 - '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-react-jsx': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.22.9) + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) + '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.23.2) dev: false - /@babel/preset-typescript@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==} + /@babel/preset-typescript@7.23.2(@babel/core@7.23.2): + resolution: {integrity: sha512-u4UJc1XsS1GhIGteM8rnGiIvf9rJpiVgMEeCnwlLA7WJPC+jcXWJAGxYmeqs5hOZD8BbAfnV5ezBOxQbb4OUxA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.5 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-modules-commonjs': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-typescript': 7.22.9(@babel/core@7.22.9) + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) + '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.23.2) dev: false /@babel/regjsgen@0.8.0: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} dev: false - /@babel/runtime-corejs3@7.22.6: - resolution: {integrity: sha512-M+37LLIRBTEVjktoJjbw4KVhupF0U/3PYUCbBwgAd9k17hoKhRu1n935QiG7Tuxv0LJOMrb2vuKEeYUlv0iyiw==} + /@babel/runtime-corejs3@7.23.2: + resolution: {integrity: sha512-54cIh74Z1rp4oIjsHjqN+WM4fMyCBYe+LpZ9jWm51CZ1fbH3SkAzQD/3XLoNkjbJ7YEmjobLXyvQrFypRHOrXw==} engines: {node: '>=6.9.0'} dependencies: - core-js-pure: 3.31.1 - regenerator-runtime: 0.13.11 + core-js-pure: 3.33.2 + regenerator-runtime: 0.14.0 dev: false - /@babel/runtime@7.22.6: - resolution: {integrity: sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==} + /@babel/runtime@7.23.2: + resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.11 + regenerator-runtime: 0.14.0 - /@babel/template@7.22.5: - resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} + /@babel/template@7.22.15: + resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/parser': 7.22.7 - '@babel/types': 7.22.5 + '@babel/code-frame': 7.22.13 + '@babel/parser': 7.23.0 + '@babel/types': 7.23.0 dev: false - /@babel/traverse@7.22.8: - resolution: {integrity: sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==} + /@babel/traverse@7.23.2: + resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.22.9 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.23.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.22.7 - '@babel/types': 7.22.5 + '@babel/parser': 7.23.0 + '@babel/types': 7.23.0 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color dev: false - /@babel/types@7.22.5: - resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==} + /@babel/types@7.23.0: + resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 dev: false @@ -1641,16 +1514,17 @@ packages: engines: {node: '>=10.0.0'} dev: false - /@docsearch/css@3.5.1: - resolution: {integrity: sha512-2Pu9HDg/uP/IT10rbQ+4OrTQuxIWdKVUEdcw9/w7kZJv9NeHS6skJx1xuRiFyoGKwAzcHXnLp7csE99sj+O1YA==} + /@docsearch/css@3.5.2: + resolution: {integrity: sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA==} dev: false - /@docsearch/react@3.5.1(@algolia/client-search@4.19.1)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.7.0): - resolution: {integrity: sha512-t5mEODdLzZq4PTFAm/dvqcvZFdPDMdfPE5rJS5SC8OUq9mPzxEy6b+9THIqNM9P0ocCb4UC5jqBrxKclnuIbzQ==} + /@docsearch/react@3.5.2(@algolia/client-search@4.20.0)(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0): + resolution: {integrity: sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' react: '>= 16.8.0 < 19.0.0' react-dom: '>= 16.8.0 < 19.0.0' + search-insights: '>= 1 < 3' peerDependenciesMeta: '@types/react': optional: true @@ -1658,99 +1532,101 @@ packages: optional: true react-dom: optional: true + search-insights: + optional: true dependencies: - '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0)(search-insights@2.7.0) - '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.19.1)(algoliasearch@4.18.0) - '@docsearch/css': 3.5.1 - algoliasearch: 4.18.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.9.0) + '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + '@docsearch/css': 3.5.2 + '@types/react': 18.2.33 + algoliasearch: 4.20.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + search-insights: 2.9.0 transitivePeerDependencies: - '@algolia/client-search' - - search-insights dev: false - /@docusaurus/core@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-dWH5P7cgeNSIg9ufReX6gaCl/TmrGKD38Orbwuz05WPhAQtFXHd5B8Qym1TiXfvUNvwoYKkAJOJuGe8ou0Z7PA==} - engines: {node: '>=16.14'} + /@docusaurus/core@3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-bHWtY55tJTkd6pZhHrWz1MpWuwN4edZe0/UWgFF7PW/oJeDZvLSXKqwny3L91X1/LGGoypBGkeZn8EOuKeL4yQ==} + engines: {node: '>=18.0'} hasBin: true peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@babel/core': 7.22.9 - '@babel/generator': 7.22.9 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.9) - '@babel/plugin-transform-runtime': 7.22.9(@babel/core@7.22.9) - '@babel/preset-env': 7.22.9(@babel/core@7.22.9) - '@babel/preset-react': 7.22.5(@babel/core@7.22.9) - '@babel/preset-typescript': 7.22.5(@babel/core@7.22.9) - '@babel/runtime': 7.22.6 - '@babel/runtime-corejs3': 7.22.6 - '@babel/traverse': 7.22.8 - '@docusaurus/cssnano-preset': 2.4.3 - '@docusaurus/logger': 2.4.3 - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/react-loadable': 5.5.2(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + react: ^18.0.0 + react-dom: ^18.0.0 + dependencies: + '@babel/core': 7.23.2 + '@babel/generator': 7.23.0 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-transform-runtime': 7.23.2(@babel/core@7.23.2) + '@babel/preset-env': 7.23.2(@babel/core@7.23.2) + '@babel/preset-react': 7.22.15(@babel/core@7.23.2) + '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) + '@babel/runtime': 7.23.2 + '@babel/runtime-corejs3': 7.23.2 + '@babel/traverse': 7.23.2 + '@docusaurus/cssnano-preset': 3.0.0 + '@docusaurus/logger': 3.0.0 + '@docusaurus/mdx-loader': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/react-loadable': 5.5.2(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-common': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) '@slorber/static-site-generator-webpack-plugin': 4.0.7 '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.14(postcss@8.4.26) - babel-loader: 8.3.0(@babel/core@7.22.9)(webpack@5.88.2) + autoprefixer: 10.4.16(postcss@8.4.31) + babel-loader: 9.1.3(@babel/core@7.23.2)(webpack@5.89.0) babel-plugin-dynamic-import-node: 2.3.3 boxen: 6.2.1 chalk: 4.1.2 chokidar: 3.5.3 clean-css: 5.3.2 cli-table3: 0.6.3 - combine-promises: 1.1.0 + combine-promises: 1.2.0 commander: 5.1.0 - copy-webpack-plugin: 11.0.0(webpack@5.88.2) - core-js: 3.31.1 - css-loader: 6.8.1(webpack@5.88.2) - css-minimizer-webpack-plugin: 4.2.2(clean-css@5.3.2)(webpack@5.88.2) - cssnano: 5.1.15(postcss@8.4.26) + copy-webpack-plugin: 11.0.0(webpack@5.89.0) + core-js: 3.33.2 + css-loader: 6.8.1(webpack@5.89.0) + css-minimizer-webpack-plugin: 4.2.2(clean-css@5.3.2)(webpack@5.89.0) + cssnano: 5.1.15(postcss@8.4.31) del: 6.1.1 detect-port: 1.5.1 escape-html: 1.0.3 eta: 2.2.0 - file-loader: 6.2.0(webpack@5.88.2) - fs-extra: 10.1.0 - html-minifier-terser: 6.1.0 + file-loader: 6.2.0(webpack@5.89.0) + fs-extra: 11.1.1 + html-minifier-terser: 7.2.0 html-tags: 3.3.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2) - import-fresh: 3.3.0 + html-webpack-plugin: 5.5.3(webpack@5.89.0) leven: 3.1.0 lodash: 4.17.21 - mini-css-extract-plugin: 2.7.6(webpack@5.88.2) - postcss: 8.4.26 - postcss-loader: 7.3.3(postcss@8.4.26)(webpack@5.88.2) + mini-css-extract-plugin: 2.7.6(webpack@5.89.0) + postcss: 8.4.31 + postcss-loader: 7.3.3(postcss@8.4.31)(typescript@5.2.2)(webpack@5.89.0) prompts: 2.4.2 - react: 17.0.2 - react-dev-utils: 12.0.1(typescript@5.2.2)(webpack@5.88.2) - react-dom: 17.0.2(react@17.0.2) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) - react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.88.2) - react-router: 5.3.4(react@17.0.2) - react-router-config: 5.1.1(react-router@5.3.4)(react@17.0.2) - react-router-dom: 5.3.4(react@17.0.2) - rtl-detect: 1.0.4 + react: 18.2.0 + react-dev-utils: 12.0.1(typescript@5.2.2)(webpack@5.89.0) + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) + react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.89.0) + react-router: 5.3.4(react@18.2.0) + react-router-config: 5.1.1(react-router@5.3.4)(react@18.2.0) + react-router-dom: 5.3.4(react@18.2.0) + rtl-detect: 1.1.2 semver: 7.5.4 serve-handler: 6.1.5 shelljs: 0.8.5 - terser-webpack-plugin: 5.3.9(webpack@5.88.2) - tslib: 2.6.0 - update-notifier: 5.1.0 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) - wait-on: 6.0.1 - webpack: 5.88.2 - webpack-bundle-analyzer: 4.9.0 - webpack-dev-server: 4.15.1(webpack@5.88.2) - webpack-merge: 5.9.0 - webpackbar: 5.0.2(webpack@5.88.2) + terser-webpack-plugin: 5.3.9(webpack@5.89.0) + tslib: 2.6.2 + update-notifier: 6.0.2 + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.89.0) + wait-on: 7.0.1 + webpack: 5.89.0 + webpack-bundle-analyzer: 4.9.1 + webpack-dev-server: 4.15.1(webpack@5.89.0) + webpack-merge: 5.10.0 + webpackbar: 5.0.2(webpack@5.89.0) transitivePeerDependencies: - '@docusaurus/types' - '@parcel/css' @@ -1770,50 +1646,59 @@ packages: - webpack-cli dev: false - /@docusaurus/cssnano-preset@2.4.3: - resolution: {integrity: sha512-ZvGSRCi7z9wLnZrXNPG6DmVPHdKGd8dIn9pYbEOFiYihfv4uDR3UtxogmKf+rT8ZlKFf5Lqne8E8nt08zNM8CA==} - engines: {node: '>=16.14'} + /@docusaurus/cssnano-preset@3.0.0: + resolution: {integrity: sha512-FHiRfwmVvIVdIGsHcijUOaX7hMn0mugVYB7m4GkpYI6Mi56zwQV4lH5p7DxcW5CUYNWMVxz2loWSCiWEm5ikwA==} + engines: {node: '>=18.0'} dependencies: - cssnano-preset-advanced: 5.3.10(postcss@8.4.26) - postcss: 8.4.26 - postcss-sort-media-queries: 4.4.1(postcss@8.4.26) - tslib: 2.6.0 + cssnano-preset-advanced: 5.3.10(postcss@8.4.31) + postcss: 8.4.31 + postcss-sort-media-queries: 4.4.1(postcss@8.4.31) + tslib: 2.6.2 dev: false - /@docusaurus/logger@2.4.3: - resolution: {integrity: sha512-Zxws7r3yLufk9xM1zq9ged0YHs65mlRmtsobnFkdZTxWXdTYlWWLWdKyNKAsVC+D7zg+pv2fGbyabdOnyZOM3w==} - engines: {node: '>=16.14'} + /@docusaurus/logger@3.0.0: + resolution: {integrity: sha512-6eX0eOfioMQCk+qgCnHvbLLuyIAA+r2lSID6d6JusiLtDKmYMfNp3F4yyE8bnb0Abmzt2w68XwptEFYyALSAXw==} + engines: {node: '>=18.0'} dependencies: chalk: 4.1.2 - tslib: 2.6.0 + tslib: 2.6.2 dev: false - /@docusaurus/mdx-loader@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-b1+fDnWtl3GiqkL0BRjYtc94FZrcDDBV1j8446+4tptB9BAOlePwG2p/pK6vGvfL53lkOsszXMghr2g67M0vCw==} - engines: {node: '>=16.14'} + /@docusaurus/mdx-loader@3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-JkGge6WYDrwjNgMxwkb6kNQHnpISt5L1tMaBWFDBKeDToFr5Kj29IL35MIQm0RfrnoOfr/29RjSH4aRtvlAR0A==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@babel/parser': 7.22.7 - '@babel/traverse': 7.22.8 - '@docusaurus/logger': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@mdx-js/mdx': 1.6.22 + '@babel/parser': 7.23.0 + '@babel/traverse': 7.23.2 + '@docusaurus/logger': 3.0.0 + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + '@mdx-js/mdx': 3.0.0 + '@slorber/remark-comment': 1.0.0 escape-html: 1.0.3 - file-loader: 6.2.0(webpack@5.88.2) - fs-extra: 10.1.0 + estree-util-value-to-estree: 3.0.1 + file-loader: 6.2.0(webpack@5.89.0) + fs-extra: 11.1.1 image-size: 1.0.2 - mdast-util-to-string: 2.0.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - remark-emoji: 2.2.0 + mdast-util-mdx: 3.0.0 + mdast-util-to-string: 4.0.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + rehype-raw: 7.0.0 + remark-directive: 3.0.0 + remark-emoji: 4.0.1 + remark-frontmatter: 5.0.0 + remark-gfm: 4.0.0 stringify-object: 3.3.0 - tslib: 2.6.0 - unified: 9.2.2 - unist-util-visit: 2.0.3 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) - webpack: 5.88.2 + tslib: 2.6.2 + unified: 11.0.4 + unist-util-visit: 5.0.0 + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.89.0) + vfile: 6.0.1 + webpack: 5.89.0 transitivePeerDependencies: - '@docusaurus/types' - '@swc/core' @@ -1823,53 +1708,54 @@ packages: - webpack-cli dev: false - /@docusaurus/module-type-aliases@2.4.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-cwkBkt1UCiduuvEAo7XZY01dJfRn7UR/75mBgOdb1hKknhrabJZ8YH+7savd/y9kLExPyrhe0QwdS9GuzsRRIA==} + /@docusaurus/module-type-aliases@3.0.0(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-CfC6CgN4u/ce+2+L1JdsHNyBd8yYjl4De2B2CBj2a9F7WuJ5RjV1ciuU7KDg8uyju+NRVllRgvJvxVUjCdkPiw==} peerDependencies: react: '*' react-dom: '*' dependencies: - '@docusaurus/react-loadable': 5.5.2(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/react-loadable': 5.5.2(react@18.2.0) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) '@types/history': 4.7.11 - '@types/react': 18.2.15 - '@types/react-router-config': 5.0.7 + '@types/react': 18.2.33 + '@types/react-router-config': 5.0.9 '@types/react-router-dom': 5.3.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack-cli - /@docusaurus/plugin-content-blog@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-PVhypqaA0t98zVDpOeTqWUTvRqCEjJubtfFUQ7zJNYdbYTbS/E/ytq6zbLVsN/dImvemtO/5JQgjLxsh8XLo8Q==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-content-blog@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-iA8Wc3tIzVnROJxrbIsU/iSfixHW16YeW9RWsBw7hgEk4dyGsip9AsvEDXobnRq3lVv4mfdgoS545iGWf1Ip9w==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/logger': 2.4.3 - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/logger': 3.0.0 + '@docusaurus/mdx-loader': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-common': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) cheerio: 1.0.0-rc.12 feed: 4.2.2 - fs-extra: 10.1.0 + fs-extra: 11.1.1 lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) reading-time: 1.5.0 - tslib: 2.6.0 - unist-util-visit: 2.0.3 + srcset: 4.0.0 + tslib: 2.6.2 + unist-util-visit: 5.0.0 utility-types: 3.10.0 - webpack: 5.88.2 + webpack: 5.89.0 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -1888,31 +1774,30 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-docs@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-N7Po2LSH6UejQhzTCsvuX5NOzlC+HiXOVvofnEPj0WhMu1etpLEXE6a4aTxrtg95lQ5kf0xUIdjX9sh3d3G76A==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-content-docs@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-MFZsOSwmeJ6rvoZMLieXxPuJsA9M9vn7/mUZmfUzSUTeHAeq+fEqvLltFOxcj4DVVDTYlQhgWYd+PISIWgamKw==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/logger': 2.4.3 - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - '@types/react-router-config': 5.0.7 - combine-promises: 1.1.0 - fs-extra: 10.1.0 - import-fresh: 3.3.0 + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/logger': 3.0.0 + '@docusaurus/mdx-loader': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/module-type-aliases': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + '@types/react-router-config': 5.0.9 + combine-promises: 1.2.0 + fs-extra: 11.1.1 js-yaml: 4.1.0 lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 utility-types: 3.10.0 - webpack: 5.88.2 + webpack: 5.89.0 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -1931,23 +1816,23 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-pages@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-txtDVz7y3zGk67q0HjG0gRttVPodkHqE0bpJ+7dOaTH40CQFLSh7+aBeGnPOTl+oCPG+hxkim4SndqPqXjQ8Bg==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-content-pages@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-EXYHXK2Ea1B5BUmM0DgSwaOYt8EMSzWtYUToNo62Q/EoWxYOQFdWglYnw3n7ZEGyw5Kog4LHaRwlazAdmDomvQ==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 - webpack: 5.88.2 + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/mdx-loader': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + fs-extra: 11.1.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 + webpack: 5.89.0 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -1966,21 +1851,21 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-debug@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-LkUbuq3zCmINlFb+gAd4ZvYr+bPAzMC0hwND4F7V9bZ852dCX8YoWyovVUBKq4er1XsOwSQaHmNGtObtn8Av8Q==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-debug@3.0.0(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-gSV07HfQgnUboVEb3lucuVyv5pEoy33E7QXzzn++3kSc/NLEimkjXh3sSnTGOishkxCqlFV9BHfY/VMm5Lko5g==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-json-view: 1.21.3(react-dom@17.0.2)(react@17.0.2) - tslib: 2.6.0 + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@microlink/react-json-view': 1.23.0(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0) + fs-extra: 11.1.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2001,19 +1886,19 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-analytics@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-KzBV3k8lDkWOhg/oYGxlK5o9bOwX7KpPc/FTWoB+SfKhlHfhq7qcQdMi1elAaVEIop8tgK6gD1E58Q+XC6otSQ==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-google-analytics@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-0zcLK8w+ohmSm1fjUQCqeRsjmQc0gflvXnaVA/QVVCtm2yCiBtkrSGQXqt4MdpD7Xq8mwo3qVd5nhIcvrcebqw==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2032,19 +1917,20 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-gtag@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-5FMg0rT7sDy4i9AGsvJC71MQrqQZwgLNdDetLEGDHLfSHLvJhQbTCUGbGXknUgWXQJckcV/AILYeJy+HhxeIFA==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-google-gtag@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-asEKavw8fczUqvXu/s9kG2m1epLnHJ19W6CCCRZEmpnkZUZKiM8rlkDiEmxApwIc2JDDbIMk+Y2TMkJI8mInbQ==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + '@types/gtag.js': 0.0.12 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2063,19 +1949,19 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-tag-manager@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-1jTzp71yDGuQiX9Bi0pVp3alArV0LSnHXempvQTxwCGAEzUWWaBg4d8pocAlTpbP9aULQQqhgzrs8hgTRPOM0A==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-google-tag-manager@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-lytgu2eyn+7p4WklJkpMGRhwC29ezj4IjPPmVJ8vGzcSl6JkR1sADTHLG5xWOMuci420xZl9dGEiLTQ8FjCRyA==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2094,24 +1980,24 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-sitemap@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-LRQYrK1oH1rNfr4YvWBmRzTL0LN9UAPxBbghgeFRBm5yloF6P+zv1tm2pe2hQTX/QP5bSKdnajCvfnScgKXMZQ==} - engines: {node: '>=16.14'} + /@docusaurus/plugin-sitemap@3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-cfcONdWku56Oi7Hdus2uvUw/RKRRlIGMViiHLjvQ21CEsEqnQ297MRoIgjU28kL7/CXD/+OiANSq3T1ezAiMhA==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/logger': 2.4.3 - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/logger': 3.0.0 + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-common': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + fs-extra: 11.1.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) sitemap: 7.1.1 - tslib: 2.6.0 + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2130,28 +2016,28 @@ packages: - webpack-cli dev: false - /@docusaurus/preset-classic@2.4.3(@algolia/client-search@4.19.1)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.7.0)(typescript@5.2.2): - resolution: {integrity: sha512-tRyMliepY11Ym6hB1rAFSNGwQDpmszvWYJvlK1E+md4SW8i6ylNHtpZjaYFff9Mdk3i/Pg8ItQq9P0daOJAvQw==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-debug': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-google-analytics': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-google-gtag': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-google-tag-manager': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-sitemap': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-classic': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-search-algolia': 2.4.3(@algolia/client-search@4.19.1)(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.7.0)(typescript@5.2.2) - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + /@docusaurus/preset-classic@3.0.0(@algolia/client-search@4.20.0)(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.2.2): + resolution: {integrity: sha512-90aOKZGZdi0+GVQV+wt8xx4M4GiDrBRke8NO8nWwytMEXNrxrBxsQYFRD1YlISLJSCiHikKf3Z/MovMnQpnZyg==} + engines: {node: '>=18.0'} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + dependencies: + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-blog': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-docs': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-pages': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-debug': 3.0.0(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-google-analytics': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-google-gtag': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-google-tag-manager': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-sitemap': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-classic': 3.0.0(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-common': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-search-algolia': 3.0.0(@algolia/client-search@4.20.0)(@docusaurus/types@3.0.0)(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.2.2) + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) transitivePeerDependencies: - '@algolia/client-search' - '@parcel/css' @@ -2174,53 +2060,54 @@ packages: - webpack-cli dev: false - /@docusaurus/react-loadable@5.5.2(react@17.0.2): + /@docusaurus/react-loadable@5.5.2(react@18.2.0): resolution: {integrity: sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==} peerDependencies: react: '*' dependencies: - '@types/react': 18.2.15 + '@types/react': 18.2.33 prop-types: 15.8.1 - react: 17.0.2 - - /@docusaurus/theme-classic@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-QKRAJPSGPfDY2yCiPMIVyr+MqwZCIV2lxNzqbyUW0YkrlmdzzP3WuQJPMGLCjWgQp/5c9kpWMvMxjhpZx1R32Q==} - engines: {node: '>=16.14'} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-translations': 2.4.3 - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - '@mdx-js/react': 1.6.22(react@17.0.2) + react: 18.2.0 + + /@docusaurus/theme-classic@3.0.0(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-wWOHSrKMn7L4jTtXBsb5iEJ3xvTddBye5PjYBnWiCkTAlhle2yMdc4/qRXW35Ot+OV/VXu6YFG8XVUJEl99z0A==} + engines: {node: '>=18.0'} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + dependencies: + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/mdx-loader': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/module-type-aliases': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/plugin-content-blog': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-docs': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-pages': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-common': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-translations': 3.0.0 + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-common': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + '@mdx-js/react': 3.0.0(@types/react@18.2.33)(react@18.2.0) clsx: 1.2.1 copy-text-to-clipboard: 3.2.0 infima: 0.2.0-alpha.43 lodash: 4.17.21 nprogress: 0.2.0 - postcss: 8.4.26 - prism-react-renderer: 1.3.5(react@17.0.2) + postcss: 8.4.31 + prism-react-renderer: 2.1.0(react@18.2.0) prismjs: 1.29.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-router-dom: 5.3.4(react@17.0.2) - rtlcss: 3.5.0 - tslib: 2.6.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-router-dom: 5.3.4(react@18.2.0) + rtlcss: 4.1.1 + tslib: 2.6.2 utility-types: 3.10.0 transitivePeerDependencies: - '@parcel/css' - '@swc/core' - '@swc/css' + - '@types/react' - bufferutil - csso - debug @@ -2235,30 +2122,29 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-common@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2): - resolution: {integrity: sha512-7KaDJBXKBVGXw5WOVt84FtN8czGWhM0lbyWEZXGp8AFfL6sZQfRTluFp4QriR97qwzSyOfQb+nzcDZZU4tezUw==} - engines: {node: '>=16.14'} + /@docusaurus/theme-common@3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2): + resolution: {integrity: sha512-PahRpCLRK5owCMEqcNtUeTMOkTUCzrJlKA+HLu7f+8osYOni617YurXvHASCsSTxurjXaLz/RqZMnASnqATxIA==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/mdx-loader': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/module-type-aliases': 3.0.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/plugin-content-blog': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-docs': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/plugin-content-pages': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-common': 3.0.0(@docusaurus/types@3.0.0) '@types/history': 4.7.11 - '@types/react': 18.2.15 - '@types/react-router-config': 5.0.7 + '@types/react': 18.2.33 + '@types/react-router-config': 5.0.9 clsx: 1.2.1 parse-numeric-range: 1.3.0 - prism-react-renderer: 1.3.5(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 - use-sync-external-store: 1.2.0(react@17.0.2) + prism-react-renderer: 2.1.0(react@18.2.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 utility-types: 3.10.0 transitivePeerDependencies: - '@docusaurus/types' @@ -2279,30 +2165,30 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-search-algolia@2.4.3(@algolia/client-search@4.19.1)(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.7.0)(typescript@5.2.2): - resolution: {integrity: sha512-jziq4f6YVUB5hZOB85ELATwnxBz/RmSLD3ksGQOLDPKVzat4pmI8tddNWtriPpxR04BNT+ZfpPUMFkNFetSW1Q==} - engines: {node: '>=16.14'} + /@docusaurus/theme-search-algolia@3.0.0(@algolia/client-search@4.20.0)(@docusaurus/types@3.0.0)(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.2.2): + resolution: {integrity: sha512-PyMUNIS9yu0dx7XffB13ti4TG47pJq3G2KE/INvOFb6M0kWh+wwCnucPg4WAOysHOPh+SD9fjlXILoLQstgEIA==} + engines: {node: '>=18.0'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docsearch/react': 3.5.1(@algolia/client-search@4.19.1)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.7.0) - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/logger': 2.4.3 - '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) - '@docusaurus/theme-translations': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) - algoliasearch: 4.18.0 - algoliasearch-helper: 3.13.3(algoliasearch@4.18.0) + '@docsearch/react': 3.5.2(@algolia/client-search@4.20.0)(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0) + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/logger': 3.0.0 + '@docusaurus/plugin-content-docs': 3.0.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-common': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) + '@docusaurus/theme-translations': 3.0.0 + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + '@docusaurus/utils-validation': 3.0.0(@docusaurus/types@3.0.0) + algoliasearch: 4.20.0 + algoliasearch-helper: 3.15.0(algoliasearch@4.20.0) clsx: 1.2.1 eta: 2.2.0 - fs-extra: 10.1.0 + fs-extra: 11.1.1 lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.6.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.2 utility-types: 3.10.0 transitivePeerDependencies: - '@algolia/client-search' @@ -2326,58 +2212,62 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-translations@2.4.3: - resolution: {integrity: sha512-H4D+lbZbjbKNS/Zw1Lel64PioUAIT3cLYYJLUf3KkuO/oc9e0QCVhIYVtUI2SfBCF2NNdlyhBDQEEMygsCedIg==} - engines: {node: '>=16.14'} + /@docusaurus/theme-translations@3.0.0: + resolution: {integrity: sha512-p/H3+5LdnDtbMU+csYukA6601U1ld2v9knqxGEEV96qV27HsHfP63J9Ta2RBZUrNhQAgrwFzIc9GdDO8P1Baag==} + engines: {node: '>=18.0'} dependencies: - fs-extra: 10.1.0 - tslib: 2.6.0 + fs-extra: 11.1.1 + tslib: 2.6.2 dev: false - /@docusaurus/types@2.4.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-W6zNLGQqfrp/EoPD0bhb9n7OobP+RHpmvVzpA+Z/IuU3Q63njJM24hmT0GYboovWcDtFmnIJC9wcyx4RVPQscw==} + /@docusaurus/tsconfig@3.0.0: + resolution: {integrity: sha512-yR9sng4izFudS+v1xV5yboNfc1hATMDpYp9iYfWggbBDwKSm0J1IdIgkygRnqC/AWs1ARUQUpG0gFotPCE/4Ew==} + dev: true + + /@docusaurus/types@3.0.0(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-Qb+l/hmCOVemReuzvvcFdk84bUmUFyD0Zi81y651ie3VwMrXqC7C0E7yZLKMOsLj/vkqsxHbtkAuYMI89YzNzg==} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.15 + '@types/react': 18.2.33 commander: 5.1.0 - joi: 17.9.2 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) + joi: 17.11.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) utility-types: 3.10.0 - webpack: 5.88.2 - webpack-merge: 5.9.0 + webpack: 5.89.0 + webpack-merge: 5.10.0 transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack-cli - /@docusaurus/utils-common@2.4.3(@docusaurus/types@2.4.3): - resolution: {integrity: sha512-/jascp4GbLQCPVmcGkPzEQjNaAk3ADVfMtudk49Ggb+131B1WDD6HqlSmDf8MxGdy7Dja2gc+StHf01kiWoTDQ==} - engines: {node: '>=16.14'} + /@docusaurus/utils-common@3.0.0(@docusaurus/types@3.0.0): + resolution: {integrity: sha512-7iJWAtt4AHf4PFEPlEPXko9LZD/dbYnhLe0q8e3GRK1EXZyRASah2lznpMwB3lLmVjq/FR6ZAKF+E0wlmL5j0g==} + engines: {node: '>=18.0'} peerDependencies: '@docusaurus/types': '*' peerDependenciesMeta: '@docusaurus/types': optional: true dependencies: - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) - tslib: 2.6.0 + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) + tslib: 2.6.2 dev: false - /@docusaurus/utils-validation@2.4.3(@docusaurus/types@2.4.3): - resolution: {integrity: sha512-G2+Vt3WR5E/9drAobP+hhZQMaswRwDlp6qOMi7o7ZypB+VO7N//DZWhZEwhcRGepMDJGQEwtPv7UxtYwPL9PBw==} - engines: {node: '>=16.14'} + /@docusaurus/utils-validation@3.0.0(@docusaurus/types@3.0.0): + resolution: {integrity: sha512-MlIGUspB/HBW5CYgHvRhmkZbeMiUWKbyVoCQYvbGN8S19SSzVgzyy97KRpcjCOYYeEdkhmRCUwFBJBlLg3IoNQ==} + engines: {node: '>=18.0'} dependencies: - '@docusaurus/logger': 2.4.3 - '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) - joi: 17.9.2 + '@docusaurus/logger': 3.0.0 + '@docusaurus/utils': 3.0.0(@docusaurus/types@3.0.0) + joi: 17.11.0 js-yaml: 4.1.0 - tslib: 2.6.0 + tslib: 2.6.2 transitivePeerDependencies: - '@docusaurus/types' - '@swc/core' @@ -2387,32 +2277,33 @@ packages: - webpack-cli dev: false - /@docusaurus/utils@2.4.3(@docusaurus/types@2.4.3): - resolution: {integrity: sha512-fKcXsjrD86Smxv8Pt0TBFqYieZZCPh4cbf9oszUq/AMhZn3ujwpKaVYZACPX8mmjtYx0JOgNx52CREBfiGQB4A==} - engines: {node: '>=16.14'} + /@docusaurus/utils@3.0.0(@docusaurus/types@3.0.0): + resolution: {integrity: sha512-JwGjh5mtjG9XIAESyPxObL6CZ6LO/yU4OSTpq7Q0x+jN25zi/AMbvLjpSyZzWy+qm5uQiFiIhqFaOxvy+82Ekg==} + engines: {node: '>=18.0'} peerDependencies: '@docusaurus/types': '*' peerDependenciesMeta: '@docusaurus/types': optional: true dependencies: - '@docusaurus/logger': 2.4.3 - '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/logger': 3.0.0 + '@docusaurus/types': 3.0.0(react-dom@18.2.0)(react@18.2.0) '@svgr/webpack': 6.5.1 escape-string-regexp: 4.0.0 - file-loader: 6.2.0(webpack@5.88.2) - fs-extra: 10.1.0 + file-loader: 6.2.0(webpack@5.89.0) + fs-extra: 11.1.1 github-slugger: 1.5.0 globby: 11.1.0 gray-matter: 4.0.3 + jiti: 1.21.0 js-yaml: 4.1.0 lodash: 4.17.21 micromatch: 4.0.5 resolve-pathname: 3.0.0 shelljs: 0.8.5 - tslib: 2.6.0 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) - webpack: 5.88.2 + tslib: 2.6.2 + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.89.0) + webpack: 5.89.0 transitivePeerDependencies: - '@swc/core' - esbuild @@ -2429,22 +2320,22 @@ packages: dependencies: '@hapi/hoek': 9.3.0 - /@jest/schemas@29.6.0: - resolution: {integrity: sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==} + /@jest/schemas@29.6.3: + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@sinclair/typebox': 0.27.8 dev: false - /@jest/types@29.6.1: - resolution: {integrity: sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==} + /@jest/types@29.6.3: + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/schemas': 29.6.0 - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 20.4.2 - '@types/yargs': 17.0.24 + '@jest/schemas': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.5 + '@types/istanbul-reports': 3.0.3 + '@types/node': 20.8.10 + '@types/yargs': 17.0.29 chalk: 4.1.2 dev: false @@ -2454,10 +2345,10 @@ packages: dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 - /@jridgewell/resolve-uri@3.1.0: - resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} + /@jridgewell/resolve-uri@3.1.1: + resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} /@jridgewell/set-array@1.1.2: @@ -2468,65 +2359,77 @@ packages: resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} dependencies: '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 - - /@jridgewell/sourcemap-codec@1.4.14: - resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} + '@jridgewell/trace-mapping': 0.3.20 /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - /@jridgewell/trace-mapping@0.3.18: - resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} + /@jridgewell/trace-mapping@0.3.20: + resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 + '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/sourcemap-codec': 1.4.15 /@leichtgewicht/ip-codec@2.0.4: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} dev: false - /@mdx-js/mdx@1.6.22: - resolution: {integrity: sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==} - dependencies: - '@babel/core': 7.12.9 - '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@mdx-js/util': 1.6.22 - babel-plugin-apply-mdx-type-prop: 1.6.22(@babel/core@7.12.9) - babel-plugin-extract-import-names: 1.6.22 - camelcase-css: 2.0.1 - detab: 2.0.4 - hast-util-raw: 6.0.1 - lodash.uniq: 4.5.0 - mdast-util-to-hast: 10.0.1 - remark-footnotes: 2.0.0 - remark-mdx: 1.6.22 - remark-parse: 8.0.3 - remark-squeeze-paragraphs: 4.0.0 - style-to-object: 0.3.0 - unified: 9.2.0 - unist-builder: 2.0.3 - unist-util-visit: 2.0.3 + /@mdx-js/mdx@3.0.0: + resolution: {integrity: sha512-Icm0TBKBLYqroYbNW3BPnzMGn+7mwpQOK310aZ7+fkCtiU3aqv2cdcX+nd0Ydo3wI5Rx8bX2Z2QmGb/XcAClCw==} + dependencies: + '@types/estree': 1.0.4 + '@types/estree-jsx': 1.0.2 + '@types/hast': 3.0.2 + '@types/mdx': 2.0.9 + collapse-white-space: 2.1.0 + devlop: 1.1.0 + estree-util-build-jsx: 3.0.1 + estree-util-is-identifier-name: 3.0.0 + estree-util-to-js: 2.0.0 + estree-walker: 3.0.3 + hast-util-to-estree: 3.1.0 + hast-util-to-jsx-runtime: 2.2.0 + markdown-extensions: 2.0.0 + periscopic: 3.1.0 + remark-mdx: 3.0.0 + remark-parse: 11.0.0 + remark-rehype: 11.0.0 + source-map: 0.7.4 + unified: 11.0.4 + unist-util-position-from-estree: 2.0.0 + unist-util-stringify-position: 4.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.1 transitivePeerDependencies: - supports-color dev: false - /@mdx-js/react@1.6.22(react@17.0.2): - resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==} + /@mdx-js/react@3.0.0(@types/react@18.2.33)(react@18.2.0): + resolution: {integrity: sha512-nDctevR9KyYFyV+m+/+S4cpzCWHqj+iHDHq3QrsWezcC+B17uZdIWgCguESUkwFhM3n/56KxWVE3V6EokrmONQ==} peerDependencies: - react: ^16.13.1 || ^17.0.0 + '@types/react': '>=16' + react: '>=16' dependencies: - react: 17.0.2 - dev: false - - /@mdx-js/util@1.6.22: - resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} + '@types/mdx': 2.0.9 + '@types/react': 18.2.33 + react: 18.2.0 dev: false - /@nicolo-ribaudo/semver-v6@6.3.3: - resolution: {integrity: sha512-3Yc1fUTs69MG/uZbJlLSI3JISMn2UV2rg+1D/vROUqZyh3l6iYHCs7GMp+M40ZD7yOdDbYjJcU1oTJhrc+dGKg==} - hasBin: true + /@microlink/react-json-view@1.23.0(@types/react@18.2.33)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-HYJ1nsfO4/qn8afnAMhuk7+5a1vcjEaS8Gm5Vpr1SqdHDY0yLBJGpA+9DvKyxyVKaUkXzKXt3Mif9RcmFSdtYg==} + peerDependencies: + react: '>= 15' + react-dom: '>= 15' + dependencies: + flux: 4.0.4(react@18.2.0) + react: 18.2.0 + react-base16-styling: 0.6.0 + react-dom: 18.2.0(react@18.2.0) + react-lifecycles-compat: 3.0.4 + react-textarea-autosize: 8.3.4(@types/react@18.2.33)(react@18.2.0) + transitivePeerDependencies: + - '@types/react' + - encoding dev: false /@nodelib/fs.scandir@2.1.5: @@ -2566,8 +2469,29 @@ packages: kladenets: 2.0.0-15 dev: false - /@polka/url@1.0.0-next.21: - resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} + /@pnpm/config.env-replace@1.1.0: + resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} + engines: {node: '>=12.22.0'} + dev: false + + /@pnpm/network.ca-file@1.0.2: + resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==} + engines: {node: '>=12.22.0'} + dependencies: + graceful-fs: 4.2.10 + dev: false + + /@pnpm/npm-conf@2.2.2: + resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==} + engines: {node: '>=12'} + dependencies: + '@pnpm/config.env-replace': 1.1.0 + '@pnpm/network.ca-file': 1.0.2 + config-chain: 1.1.13 + dev: false + + /@polka/url@1.0.0-next.23: + resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} dev: false /@sideway/address@4.1.4: @@ -2585,9 +2509,22 @@ packages: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: false - /@sindresorhus/is@0.14.0: - resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} - engines: {node: '>=6'} + /@sindresorhus/is@3.1.2: + resolution: {integrity: sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==} + engines: {node: '>=10'} + dev: false + + /@sindresorhus/is@5.6.0: + resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} + engines: {node: '>=14.16'} + dev: false + + /@slorber/remark-comment@1.0.0: + resolution: {integrity: sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 dev: false /@slorber/static-site-generator-webpack-plugin@4.0.7: @@ -2599,101 +2536,101 @@ packages: webpack-sources: 3.2.3 dev: false - /@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.22.9): + /@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.22.9): + /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.2): resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.22.9): + /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.2): resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.22.9): + /@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.22.9): + /@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.22.9): + /@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.22.9): + /@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.22.9): + /@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} engines: {node: '>=12'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.2 dev: false - /@svgr/babel-preset@6.5.1(@babel/core@7.22.9): + /@svgr/babel-preset@6.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.22.9) - '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.22.9) - '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.22.9) - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.22.9) - '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.22.9) - '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.22.9) - '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.22.9) - '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.23.2) + '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.2) + '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.2) + '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.23.2) + '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.23.2) + '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.23.2) + '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.23.2) + '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.23.2) dev: false /@svgr/core@6.5.1: resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} engines: {node: '>=10'} dependencies: - '@babel/core': 7.22.9 - '@svgr/babel-preset': 6.5.1(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@svgr/babel-preset': 6.5.1(@babel/core@7.23.2) '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) camelcase: 6.3.0 cosmiconfig: 7.1.0 @@ -2705,7 +2642,7 @@ packages: resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} engines: {node: '>=10'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.0 entities: 4.5.0 dev: false @@ -2715,8 +2652,8 @@ packages: peerDependencies: '@svgr/core': ^6.0.0 dependencies: - '@babel/core': 7.22.9 - '@svgr/babel-preset': 6.5.1(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@svgr/babel-preset': 6.5.1(@babel/core@7.23.2) '@svgr/core': 6.5.1 '@svgr/hast-util-to-babel-ast': 6.5.1 svg-parser: 2.0.4 @@ -2740,11 +2677,11 @@ packages: resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} engines: {node: '>=10'} dependencies: - '@babel/core': 7.22.9 - '@babel/plugin-transform-react-constant-elements': 7.22.5(@babel/core@7.22.9) - '@babel/preset-env': 7.22.9(@babel/core@7.22.9) - '@babel/preset-react': 7.22.5(@babel/core@7.22.9) - '@babel/preset-typescript': 7.22.5(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/plugin-transform-react-constant-elements': 7.22.5(@babel/core@7.23.2) + '@babel/preset-env': 7.23.2(@babel/core@7.23.2) + '@babel/preset-react': 7.22.15(@babel/core@7.23.2) + '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) '@svgr/core': 6.5.1 '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) '@svgr/plugin-svgo': 6.5.1(@svgr/core@6.5.1) @@ -2752,11 +2689,11 @@ packages: - supports-color dev: false - /@szmarczak/http-timer@1.1.2: - resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} - engines: {node: '>=6'} + /@szmarczak/http-timer@5.0.1: + resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} + engines: {node: '>=14.16'} dependencies: - defer-to-connect: 1.1.3 + defer-to-connect: 2.0.1 dev: false /@trysound/sax@0.2.0: @@ -2764,73 +2701,91 @@ packages: engines: {node: '>=10.13.0'} dev: false - /@tsconfig/docusaurus@2.0.2: - resolution: {integrity: sha512-12HWfYmgUl4M2o76/TFufGtI68wl2k/b8qPrIrG7ci9YJLrpAtadpy897Bz5v29Mlkr7a1Hq4KHdQTKtU+2rhQ==} - dev: true + /@types/acorn@4.0.6: + resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} + dependencies: + '@types/estree': 1.0.4 + dev: false + + /@types/body-parser@1.19.4: + resolution: {integrity: sha512-N7UDG0/xiPQa2D/XrVJXjkWbpqHCd2sBaB32ggRF2l83RhPfamgKGF8gwwqyksS95qUS5ZYF9aF+lLPRlwI2UA==} + dependencies: + '@types/connect': 3.4.37 + '@types/node': 20.8.10 + dev: false - /@types/body-parser@1.19.2: - resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} + /@types/bonjour@3.5.12: + resolution: {integrity: sha512-ky0kWSqXVxSqgqJvPIkgFkcn4C8MnRog308Ou8xBBIVo39OmUFy+jqNe0nPwLCDFxUpmT9EvT91YzOJgkDRcFg==} dependencies: - '@types/connect': 3.4.35 - '@types/node': 20.4.2 + '@types/node': 20.8.10 dev: false - /@types/bonjour@3.5.10: - resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==} + /@types/connect-history-api-fallback@1.5.2: + resolution: {integrity: sha512-gX2j9x+NzSh4zOhnRPSdPPmTepS4DfxES0AvIFv3jGv5QyeAJf6u6dY5/BAoAJU9Qq1uTvwOku8SSC2GnCRl6Q==} dependencies: - '@types/node': 20.4.2 + '@types/express-serve-static-core': 4.17.39 + '@types/node': 20.8.10 dev: false - /@types/connect-history-api-fallback@1.5.0: - resolution: {integrity: sha512-4x5FkPpLipqwthjPsF7ZRbOv3uoLUFkTA9G9v583qi4pACvq0uTELrB8OLUzPWUI4IJIyvM85vzkV1nyiI2Lig==} + /@types/connect@3.4.37: + resolution: {integrity: sha512-zBUSRqkfZ59OcwXon4HVxhx5oWCJmc0OtBTK05M+p0dYjgN6iTwIL2T/WbsQZrEsdnwaF9cWQ+azOnpPvIqY3Q==} dependencies: - '@types/express-serve-static-core': 4.17.35 - '@types/node': 20.4.2 + '@types/node': 20.8.10 dev: false - /@types/connect@3.4.35: - resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} + /@types/debug@4.1.10: + resolution: {integrity: sha512-tOSCru6s732pofZ+sMv9o4o3Zc+Sa8l3bxd/tweTQudFn06vAzb13ZX46Zi6m6EJ+RUbRTHvgQJ1gBtSgkaUYA==} dependencies: - '@types/node': 20.4.2 + '@types/ms': 0.7.33 dev: false - /@types/eslint-scope@3.7.4: - resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} + /@types/eslint-scope@3.7.6: + resolution: {integrity: sha512-zfM4ipmxVKWdxtDaJ3MP3pBurDXOCoyjvlpE3u6Qzrmw4BPbfm4/ambIeTk/r/J0iq/+2/xp0Fmt+gFvXJY2PQ==} + dependencies: + '@types/eslint': 8.44.6 + '@types/estree': 1.0.4 + + /@types/eslint@8.44.6: + resolution: {integrity: sha512-P6bY56TVmX8y9J87jHNgQh43h6VVU+6H7oN7hgvivV81K2XY8qJZ5vqPy/HdUoVIelii2kChYVzQanlswPWVFw==} dependencies: - '@types/eslint': 8.44.0 - '@types/estree': 1.0.1 + '@types/estree': 1.0.4 + '@types/json-schema': 7.0.14 - /@types/eslint@8.44.0: - resolution: {integrity: sha512-gsF+c/0XOguWgaOgvFs+xnnRqt9GwgTvIks36WpE6ueeI4KCEHHd8K/CKHqhOqrJKsYH8m27kRzQEvWXAwXUTw==} + /@types/estree-jsx@1.0.2: + resolution: {integrity: sha512-GNBWlGBMjiiiL5TSkvPtOteuXsiVitw5MYGY1UYlrAq0SKyczsls6sCD7TZ8fsjRsvCVxml7EbyjJezPb3DrSA==} dependencies: - '@types/estree': 1.0.1 - '@types/json-schema': 7.0.12 + '@types/estree': 1.0.4 + dev: false - /@types/estree@1.0.1: - resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} + /@types/estree@1.0.4: + resolution: {integrity: sha512-2JwWnHK9H+wUZNorf2Zr6ves96WHoWDJIftkcxPKsS7Djta6Zu519LarhRNljPXkpsZR2ZMwNCPeW7omW07BJw==} - /@types/express-serve-static-core@4.17.35: - resolution: {integrity: sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==} + /@types/express-serve-static-core@4.17.39: + resolution: {integrity: sha512-BiEUfAiGCOllomsRAZOiMFP7LAnrifHpt56pc4Z7l9K6ACyN06Ns1JLMBxwkfLOjJRlSf06NwWsT7yzfpaVpyQ==} dependencies: - '@types/node': 20.4.2 - '@types/qs': 6.9.7 - '@types/range-parser': 1.2.4 - '@types/send': 0.17.1 + '@types/node': 20.8.10 + '@types/qs': 6.9.9 + '@types/range-parser': 1.2.6 + '@types/send': 0.17.3 dev: false - /@types/express@4.17.17: - resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==} + /@types/express@4.17.20: + resolution: {integrity: sha512-rOaqlkgEvOW495xErXMsmyX3WKBInbhG5eqojXYi3cGUaLoRDlXa5d52fkfWZT963AZ3v2eZ4MbKE6WpDAGVsw==} dependencies: - '@types/body-parser': 1.19.2 - '@types/express-serve-static-core': 4.17.35 - '@types/qs': 6.9.7 - '@types/serve-static': 1.15.2 + '@types/body-parser': 1.19.4 + '@types/express-serve-static-core': 4.17.39 + '@types/qs': 6.9.9 + '@types/serve-static': 1.15.4 + dev: false + + /@types/gtag.js@0.0.12: + resolution: {integrity: sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==} dev: false - /@types/hast@2.3.5: - resolution: {integrity: sha512-SvQi0L/lNpThgPoleH53cdjB3y9zpLlVjRbqB3rH8hx1jiRSBGAhyjV3H+URFjNVRqt2EdYNrbZE5IsGlNfpRg==} + /@types/hast@3.0.2: + resolution: {integrity: sha512-B5hZHgHsXvfCoO3xgNJvBnX7N8p86TqQeGKXcokW4XXi+qY4vxxPSFYofytvVmpFxzPv7oxDQzjg5Un5m2/xiw==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 3.0.1 dev: false /@types/history@4.7.11: @@ -2840,172 +2795,192 @@ packages: resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} dev: false - /@types/http-errors@2.0.1: - resolution: {integrity: sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==} + /@types/http-cache-semantics@4.0.3: + resolution: {integrity: sha512-V46MYLFp08Wf2mmaBhvgjStM3tPa+2GAdy/iqoX+noX1//zje2x4XmrIU0cAwyClATsTmahbtoQ2EwP7I5WSiA==} + dev: false + + /@types/http-errors@2.0.3: + resolution: {integrity: sha512-pP0P/9BnCj1OVvQR2lF41EkDG/lWWnDyA203b/4Fmi2eTyORnBtcDoKDwjWQthELrBvWkMOrvSOnZ8OVlW6tXA==} dev: false - /@types/http-proxy@1.17.11: - resolution: {integrity: sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==} + /@types/http-proxy@1.17.13: + resolution: {integrity: sha512-GkhdWcMNiR5QSQRYnJ+/oXzu0+7JJEPC8vkWXK351BkhjraZF+1W13CUYARUvX9+NqIU2n6YHA4iwywsc/M6Sw==} dependencies: - '@types/node': 20.4.2 + '@types/node': 20.8.10 dev: false - /@types/istanbul-lib-coverage@2.0.4: - resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} + /@types/istanbul-lib-coverage@2.0.5: + resolution: {integrity: sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==} dev: false - /@types/istanbul-lib-report@3.0.0: - resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} + /@types/istanbul-lib-report@3.0.2: + resolution: {integrity: sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w==} dependencies: - '@types/istanbul-lib-coverage': 2.0.4 + '@types/istanbul-lib-coverage': 2.0.5 dev: false - /@types/istanbul-reports@3.0.1: - resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} + /@types/istanbul-reports@3.0.3: + resolution: {integrity: sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg==} dependencies: - '@types/istanbul-lib-report': 3.0.0 + '@types/istanbul-lib-report': 3.0.2 dev: false - /@types/json-schema@7.0.12: - resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + /@types/json-schema@7.0.14: + resolution: {integrity: sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==} - /@types/keyv@3.1.4: - resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} - dependencies: - '@types/node': 20.4.2 + /@types/katex@0.16.5: + resolution: {integrity: sha512-DD2Y3xMlTQvAnN6d8803xdgnOeYZ+HwMglb7/9YCf49J9RkJL53azf9qKa40MkEYhqVwxZ1GS2+VlShnz4Z1Bw==} dev: false - /@types/mdast@3.0.12: - resolution: {integrity: sha512-DT+iNIRNX884cx0/Q1ja7NyUPpZuv0KPyL5rGNxm1WC1OtHstl7n4Jb7nk+xacNShQMbczJjt8uFzznpp6kYBg==} + /@types/mdast@4.0.2: + resolution: {integrity: sha512-tYR83EignvhYO9iU3kDg8V28M0jqyh9zzp5GV+EO+AYnyUl3P5ltkTeJuTiFZQFz670FSb3EwT/6LQdX+UdKfw==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 3.0.1 + dev: false + + /@types/mdx@2.0.9: + resolution: {integrity: sha512-OKMdj17y8Cs+k1r0XFyp59ChSOwf8ODGtMQ4mnpfz5eFDk1aO41yN3pSKGuvVzmWAkFp37seubY1tzOVpwfWwg==} dev: false - /@types/mime@1.3.2: - resolution: {integrity: sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==} + /@types/mime@1.3.4: + resolution: {integrity: sha512-1Gjee59G25MrQGk8bsNvC6fxNiRgUlGn2wlhGf95a59DrprnnHk80FIMMFG9XHMdrfsuA119ht06QPDXA1Z7tw==} dev: false - /@types/mime@3.0.1: - resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} + /@types/mime@3.0.3: + resolution: {integrity: sha512-i8MBln35l856k5iOhKk2XJ4SeAWg75mLIpZB4v6imOagKL6twsukBZGDMNhdOVk7yRFTMPpfILocMos59Q1otQ==} + dev: false + + /@types/ms@0.7.33: + resolution: {integrity: sha512-AuHIyzR5Hea7ij0P9q7vx7xu4z0C28ucwjAZC0ja7JhINyCnOw8/DnvAPQQ9TfOlCtZAmCERKQX9+o1mgQhuOQ==} + dev: false + + /@types/node-forge@1.3.8: + resolution: {integrity: sha512-vGXshY9vim9CJjrpcS5raqSjEfKlJcWy2HNdgUasR66fAnVEYarrf1ULV4nfvpC1nZq/moA9qyqBcu83x+Jlrg==} + dependencies: + '@types/node': 20.8.10 dev: false /@types/node@17.0.45: resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} dev: false - /@types/node@20.4.2: - resolution: {integrity: sha512-Dd0BYtWgnWJKwO1jkmTrzofjK2QXXcai0dmtzvIBhcA+RsG5h8R3xlyta0kGOZRNfL9GuRtb1knmPEhQrePCEw==} + /@types/node@20.8.10: + resolution: {integrity: sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==} + dependencies: + undici-types: 5.26.5 - /@types/parse-json@4.0.0: - resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} + /@types/parse-json@4.0.1: + resolution: {integrity: sha512-3YmXzzPAdOTVljVMkTMBdBEvlOLg2cDQaDhnnhT3nT9uDbnJzjWhKlzb+desT12Y7tGqaN6d+AbozcKzyL36Ng==} dev: false - /@types/parse5@5.0.3: - resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} + /@types/prismjs@1.26.2: + resolution: {integrity: sha512-/r7Cp7iUIk7gts26mHXD66geUC+2Fo26TZYjQK6Nr4LDfi6lmdRmMqM0oPwfiMhUwoBAOFe8GstKi2pf6hZvwA==} dev: false - /@types/prop-types@15.7.5: - resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} + /@types/prop-types@15.7.9: + resolution: {integrity: sha512-n1yyPsugYNSmHgxDFjicaI2+gCNjsBck8UX9kuofAKlc0h1bL+20oSF72KeNaW2DUlesbEVCFgyV2dPGTiY42g==} - /@types/qs@6.9.7: - resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} + /@types/qs@6.9.9: + resolution: {integrity: sha512-wYLxw35euwqGvTDx6zfY1vokBFnsK0HNrzc6xNHchxfO2hpuRg74GbkEW7e3sSmPvj0TjCDT1VCa6OtHXnubsg==} dev: false - /@types/range-parser@1.2.4: - resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} + /@types/range-parser@1.2.6: + resolution: {integrity: sha512-+0autS93xyXizIYiyL02FCY8N+KkKPhILhcUSA276HxzreZ16kl+cmwvV2qAM/PuCCwPXzOXOWhiPcw20uSFcA==} dev: false - /@types/react-router-config@5.0.7: - resolution: {integrity: sha512-pFFVXUIydHlcJP6wJm7sDii5mD/bCmmAY0wQzq+M+uX7bqS95AQqHZWP1iNMKrWVQSuHIzj5qi9BvrtLX2/T4w==} + /@types/react-router-config@5.0.9: + resolution: {integrity: sha512-a7zOj9yVUtM3Ns5stoseQAAsmppNxZpXDv6tZiFV5qlRmV4W96u53on1vApBX1eRSc8mrFOiB54Hc0Pk1J8GFg==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.15 + '@types/react': 18.2.33 '@types/react-router': 5.1.20 /@types/react-router-dom@5.3.3: resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.15 + '@types/react': 18.2.33 '@types/react-router': 5.1.20 /@types/react-router@5.1.20: resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.15 + '@types/react': 18.2.33 - /@types/react@18.2.15: - resolution: {integrity: sha512-oEjE7TQt1fFTFSbf8kkNuc798ahTUzn3Le67/PWjE8MAfYAD/qB7O8hSTcromLFqHCt9bcdOg5GXMokzTjJ5SA==} + /@types/react@18.2.33: + resolution: {integrity: sha512-v+I7S+hu3PIBoVkKGpSYYpiBT1ijqEzWpzQD62/jm4K74hPpSP7FF9BnKG6+fg2+62weJYkkBWDJlZt5JO/9hg==} dependencies: - '@types/prop-types': 15.7.5 - '@types/scheduler': 0.16.3 + '@types/prop-types': 15.7.9 + '@types/scheduler': 0.16.5 csstype: 3.1.2 - /@types/responselike@1.0.0: - resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} - dependencies: - '@types/node': 20.4.2 - dev: false - /@types/retry@0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} dev: false - /@types/sax@1.2.4: - resolution: {integrity: sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==} + /@types/sax@1.2.6: + resolution: {integrity: sha512-A1mpYCYu1aHFayy8XKN57ebXeAbh9oQIZ1wXcno6b1ESUAfMBDMx7mf/QGlYwcMRaFryh9YBuH03i/3FlPGDkQ==} dependencies: - '@types/node': 20.4.2 + '@types/node': 17.0.45 dev: false - /@types/scheduler@0.16.3: - resolution: {integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==} + /@types/scheduler@0.16.5: + resolution: {integrity: sha512-s/FPdYRmZR8SjLWGMCuax7r3qCWQw9QKHzXVukAuuIJkXkDRwp+Pu5LMIVFi0Fxbav35WURicYr8u1QsoybnQw==} - /@types/send@0.17.1: - resolution: {integrity: sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==} + /@types/send@0.17.3: + resolution: {integrity: sha512-/7fKxvKUoETxjFUsuFlPB9YndePpxxRAOfGC/yJdc9kTjTeP5kRCTzfnE8kPUKCeyiyIZu0YQ76s50hCedI1ug==} dependencies: - '@types/mime': 1.3.2 - '@types/node': 20.4.2 + '@types/mime': 1.3.4 + '@types/node': 20.8.10 dev: false - /@types/serve-index@1.9.1: - resolution: {integrity: sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==} + /@types/serve-index@1.9.3: + resolution: {integrity: sha512-4KG+yMEuvDPRrYq5fyVm/I2uqAJSAwZK9VSa+Zf+zUq9/oxSSvy3kkIqyL+jjStv6UCVi8/Aho0NHtB1Fwosrg==} dependencies: - '@types/express': 4.17.17 + '@types/express': 4.17.20 dev: false - /@types/serve-static@1.15.2: - resolution: {integrity: sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==} + /@types/serve-static@1.15.4: + resolution: {integrity: sha512-aqqNfs1XTF0HDrFdlY//+SGUxmdSUbjeRXb5iaZc3x0/vMbYmdw9qvOgHWOyyLFxSSRnUuP5+724zBgfw8/WAw==} dependencies: - '@types/http-errors': 2.0.1 - '@types/mime': 3.0.1 - '@types/node': 20.4.2 + '@types/http-errors': 2.0.3 + '@types/mime': 3.0.3 + '@types/node': 20.8.10 dev: false - /@types/sockjs@0.3.33: - resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==} + /@types/sockjs@0.3.35: + resolution: {integrity: sha512-tIF57KB+ZvOBpAQwSaACfEu7htponHXaFzP7RfKYgsOS0NoYnn+9+jzp7bbq4fWerizI3dTB4NfAZoyeQKWJLw==} dependencies: - '@types/node': 20.4.2 + '@types/node': 20.8.10 + dev: false + + /@types/unist@2.0.9: + resolution: {integrity: sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==} dev: false - /@types/unist@2.0.7: - resolution: {integrity: sha512-cputDpIbFgLUaGQn6Vqg3/YsJwxUwHLO13v3i5ouxT4lat0khip9AEWxtERujXV9wxIB1EyF97BSJFt6vpdI8g==} + /@types/unist@3.0.1: + resolution: {integrity: sha512-ue/hDUpPjC85m+PM9OQDMZr3LywT+CT6mPsQq8OJtCLiERkGRcQUFvu9XASF5XWqyZFXbf15lvb3JFJ4dRLWPg==} dev: false - /@types/ws@8.5.5: - resolution: {integrity: sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==} + /@types/ws@8.5.8: + resolution: {integrity: sha512-flUksGIQCnJd6sZ1l5dqCEG/ksaoAg/eUwiLAGTJQcfgvZJKF++Ta4bJA6A5aPSJmsr+xlseHn4KLgVlNnvPTg==} dependencies: - '@types/node': 20.4.2 + '@types/node': 20.8.10 dev: false - /@types/yargs-parser@21.0.0: - resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} + /@types/yargs-parser@21.0.2: + resolution: {integrity: sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==} dev: false - /@types/yargs@17.0.24: - resolution: {integrity: sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==} + /@types/yargs@17.0.29: + resolution: {integrity: sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==} dependencies: - '@types/yargs-parser': 21.0.0 + '@types/yargs-parser': 21.0.2 + dev: false + + /@ungap/structured-clone@1.2.0: + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} dev: false /@webassemblyjs/ast@1.11.6: @@ -3113,20 +3088,28 @@ packages: negotiator: 0.6.3 dev: false - /acorn-import-assertions@1.9.0(acorn@8.10.0): + /acorn-import-assertions@1.9.0(acorn@8.11.2): resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} peerDependencies: acorn: ^8 dependencies: - acorn: 8.10.0 + acorn: 8.11.2 + + /acorn-jsx@5.3.2(acorn@8.11.2): + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.11.2 + dev: false - /acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} + /acorn-walk@8.3.0: + resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==} engines: {node: '>=0.4.0'} dev: false - /acorn@8.10.0: - resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} + /acorn@8.11.2: + resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} engines: {node: '>=0.4.0'} hasBin: true @@ -3187,32 +3170,32 @@ packages: uri-js: 4.4.1 dev: false - /algoliasearch-helper@3.13.3(algoliasearch@4.18.0): - resolution: {integrity: sha512-jhbbuYZ+fheXpaJlqdJdFa1jOsrTWKmRRTYDM3oVTto5VodZzM7tT+BHzslAotaJf/81CKrm6yLRQn8WIr/K4A==} + /algoliasearch-helper@3.15.0(algoliasearch@4.20.0): + resolution: {integrity: sha512-DGUnK3TGtDQsaUE4ayF/LjSN0DGsuYThB8WBgnnDY0Wq04K6lNVruO3LfqJOgSfDiezp+Iyt8Tj4YKHi+/ivSA==} peerDependencies: algoliasearch: '>= 3.1 < 6' dependencies: '@algolia/events': 4.0.1 - algoliasearch: 4.18.0 + algoliasearch: 4.20.0 dev: false - /algoliasearch@4.18.0: - resolution: {integrity: sha512-pCuVxC1SVcpc08ENH32T4sLKSyzoU7TkRIDBMwSLfIiW+fq4znOmWDkAygHZ6pRcO9I1UJdqlfgnV7TRj+MXrA==} + /algoliasearch@4.20.0: + resolution: {integrity: sha512-y+UHEjnOItoNy0bYO+WWmLWBlPwDjKHW6mNHrPi0NkuhpQOOEbrkwQH/wgKFDLh7qlKjzoKeiRtlpewDPDG23g==} dependencies: - '@algolia/cache-browser-local-storage': 4.18.0 - '@algolia/cache-common': 4.18.0 - '@algolia/cache-in-memory': 4.18.0 - '@algolia/client-account': 4.18.0 - '@algolia/client-analytics': 4.18.0 - '@algolia/client-common': 4.18.0 - '@algolia/client-personalization': 4.18.0 - '@algolia/client-search': 4.18.0 - '@algolia/logger-common': 4.18.0 - '@algolia/logger-console': 4.18.0 - '@algolia/requester-browser-xhr': 4.18.0 - '@algolia/requester-common': 4.18.0 - '@algolia/requester-node-http': 4.18.0 - '@algolia/transporter': 4.18.0 + '@algolia/cache-browser-local-storage': 4.20.0 + '@algolia/cache-common': 4.20.0 + '@algolia/cache-in-memory': 4.20.0 + '@algolia/client-account': 4.20.0 + '@algolia/client-analytics': 4.20.0 + '@algolia/client-common': 4.20.0 + '@algolia/client-personalization': 4.20.0 + '@algolia/client-search': 4.20.0 + '@algolia/logger-common': 4.20.0 + '@algolia/logger-console': 4.20.0 + '@algolia/requester-browser-xhr': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/requester-node-http': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false /ansi-align@3.0.1: @@ -3295,58 +3278,56 @@ packages: resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} dev: false + /astring@1.8.6: + resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==} + hasBin: true + dev: false + + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + dev: false + /at-least-node@1.0.0: resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} engines: {node: '>= 4.0.0'} dev: false - /autoprefixer@10.4.14(postcss@8.4.26): - resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} + /autoprefixer@10.4.16(postcss@8.4.31): + resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: - browserslist: 4.21.10 - caniuse-lite: 1.0.30001524 - fraction.js: 4.2.0 + browserslist: 4.22.1 + caniuse-lite: 1.0.30001559 + fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.0 - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /axios@0.25.0: - resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==} + /axios@0.27.2: + resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} dependencies: - follow-redirects: 1.15.2 + follow-redirects: 1.15.3 + form-data: 4.0.0 transitivePeerDependencies: - debug dev: false - /babel-loader@8.3.0(@babel/core@7.22.9)(webpack@5.88.2): - resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} - engines: {node: '>= 8.9'} - peerDependencies: - '@babel/core': ^7.0.0 - webpack: '>=2' - dependencies: - '@babel/core': 7.22.9 - find-cache-dir: 3.3.2 - loader-utils: 2.0.4 - make-dir: 3.1.0 - schema-utils: 2.7.1 - webpack: 5.88.2 - dev: false - - /babel-plugin-apply-mdx-type-prop@1.6.22(@babel/core@7.12.9): - resolution: {integrity: sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==} + /babel-loader@9.1.3(@babel/core@7.23.2)(webpack@5.89.0): + resolution: {integrity: sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==} + engines: {node: '>= 14.15.0'} peerDependencies: - '@babel/core': ^7.11.6 + '@babel/core': ^7.12.0 + webpack: '>=5' dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@mdx-js/util': 1.6.22 + '@babel/core': 7.23.2 + find-cache-dir: 4.0.0 + schema-utils: 4.2.0 + webpack: 5.89.0 dev: false /babel-plugin-dynamic-import-node@2.3.3: @@ -3355,50 +3336,44 @@ packages: object.assign: 4.1.4 dev: false - /babel-plugin-extract-import-names@1.6.22: - resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==} - dependencies: - '@babel/helper-plugin-utils': 7.10.4 - dev: false - - /babel-plugin-polyfill-corejs2@0.4.4(@babel/core@7.22.9): - resolution: {integrity: sha512-9WeK9snM1BfxB38goUEv2FLnA6ja07UMfazFHzCXUb3NyDZAwfXvQiURQ6guTTMeHcOsdknULm1PDhs4uWtKyA==} + /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.2): + resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.9 - '@babel/helper-define-polyfill-provider': 0.4.1(@babel/core@7.22.9) - '@nicolo-ribaudo/semver-v6': 6.3.3 + '@babel/compat-data': 7.23.2 + '@babel/core': 7.23.2 + '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /babel-plugin-polyfill-corejs3@0.8.2(@babel/core@7.22.9): - resolution: {integrity: sha512-Cid+Jv1BrY9ReW9lIfNlNpsI53N+FN7gE+f73zLAUbr9C52W4gKLWSByx47pfDJsEysojKArqOtOKZSVIIUTuQ==} + /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.2): + resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-define-polyfill-provider': 0.4.1(@babel/core@7.22.9) - core-js-compat: 3.31.1 + '@babel/core': 7.23.2 + '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) + core-js-compat: 3.33.2 transitivePeerDependencies: - supports-color dev: false - /babel-plugin-polyfill-regenerator@0.5.1(@babel/core@7.22.9): - resolution: {integrity: sha512-L8OyySuI6OSQ5hFy9O+7zFjyr4WhAfRjLIOkhQGYl+emwJkd/S4XXT1JpfrgR1jrQ1NcGiOh+yAdGlF8pnC3Jw==} + /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.2): + resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-define-polyfill-provider': 0.4.1(@babel/core@7.22.9) + '@babel/core': 7.23.2 + '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) transitivePeerDependencies: - supports-color dev: false - /bail@1.0.5: - resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} + /bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} dev: false /balanced-match@1.0.2: @@ -3455,27 +3430,27 @@ packages: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} dev: false - /boxen@5.1.2: - resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} - engines: {node: '>=10'} + /boxen@6.2.1: + resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: ansi-align: 3.0.1 camelcase: 6.3.0 chalk: 4.1.2 - cli-boxes: 2.2.1 - string-width: 4.2.3 - type-fest: 0.20.2 - widest-line: 3.1.0 - wrap-ansi: 7.0.0 + cli-boxes: 3.0.0 + string-width: 5.1.2 + type-fest: 2.19.0 + widest-line: 4.0.1 + wrap-ansi: 8.1.0 dev: false - /boxen@6.2.1: - resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + /boxen@7.1.1: + resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} + engines: {node: '>=14.16'} dependencies: ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 + camelcase: 7.0.1 + chalk: 5.3.0 cli-boxes: 3.0.0 string-width: 5.1.2 type-fest: 2.19.0 @@ -3497,15 +3472,15 @@ packages: fill-range: 7.0.1 dev: false - /browserslist@4.21.10: - resolution: {integrity: sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==} + /browserslist@4.22.1: + resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001524 - electron-to-chromium: 1.4.504 + caniuse-lite: 1.0.30001559 + electron-to-chromium: 1.4.572 node-releases: 2.0.13 - update-browserslist-db: 1.0.11(browserslist@4.21.10) + update-browserslist-db: 1.0.13(browserslist@4.22.1) /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -3520,24 +3495,30 @@ packages: engines: {node: '>= 0.8'} dev: false - /cacheable-request@6.1.0: - resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} - engines: {node: '>=8'} + /cacheable-lookup@7.0.0: + resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==} + engines: {node: '>=14.16'} + dev: false + + /cacheable-request@10.2.14: + resolution: {integrity: sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==} + engines: {node: '>=14.16'} dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 + '@types/http-cache-semantics': 4.0.3 + get-stream: 6.0.1 http-cache-semantics: 4.1.1 - keyv: 3.1.0 - lowercase-keys: 2.0.0 - normalize-url: 4.5.1 - responselike: 1.0.2 + keyv: 4.5.4 + mimic-response: 4.0.0 + normalize-url: 8.0.0 + responselike: 3.0.0 dev: false - /call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} + /call-bind@1.0.5: + resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.2.1 + function-bind: 1.1.2 + get-intrinsic: 1.2.2 + set-function-length: 1.1.1 dev: false /callsites@3.1.0: @@ -3549,12 +3530,7 @@ packages: resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} dependencies: pascal-case: 3.1.2 - tslib: 2.6.0 - dev: false - - /camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} + tslib: 2.6.2 dev: false /camelcase@6.3.0: @@ -3562,20 +3538,25 @@ packages: engines: {node: '>=10'} dev: false + /camelcase@7.0.1: + resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} + engines: {node: '>=14.16'} + dev: false + /caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: - browserslist: 4.21.10 - caniuse-lite: 1.0.30001524 + browserslist: 4.22.1 + caniuse-lite: 1.0.30001559 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: false - /caniuse-lite@1.0.30001524: - resolution: {integrity: sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA==} + /caniuse-lite@1.0.30001559: + resolution: {integrity: sha512-cPiMKZgqgkg5LY3/ntGeLFUpi6tzddBNS58A4tnTgQw1zON7u2sZMU7SzOeVH4tj20++9ggL+V6FDOFMTaFFYA==} - /ccount@1.1.0: - resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} + /ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} dev: false /chalk@2.4.2: @@ -3595,16 +3576,30 @@ packages: supports-color: 7.2.0 dev: false - /character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} + /chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + dev: false + + /char-regex@1.0.2: + resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} + engines: {node: '>=10'} + dev: false + + /character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} dev: false - /character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} + /character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} dev: false - /character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} + /character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + dev: false + + /character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} dev: false /cheerio-select@2.1.0: @@ -3650,12 +3645,8 @@ packages: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} - /ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - dev: false - - /ci-info@3.8.0: - resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} + /ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} dev: false @@ -3671,11 +3662,6 @@ packages: engines: {node: '>=6'} dev: false - /cli-boxes@2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} - dev: false - /cli-boxes@3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} @@ -3698,12 +3684,6 @@ packages: kind-of: 6.0.3 shallow-clone: 3.0.1 - /clone-response@1.0.3: - resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} - dependencies: - mimic-response: 1.0.1 - dev: false - /clsx@1.2.1: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} engines: {node: '>=6'} @@ -3714,8 +3694,8 @@ packages: engines: {node: '>=6'} dev: false - /collapse-white-space@1.0.6: - resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==} + /collapse-white-space@2.1.0: + resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==} dev: false /color-convert@1.9.3: @@ -3747,13 +3727,25 @@ packages: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} dev: false - /combine-promises@1.1.0: - resolution: {integrity: sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==} + /combine-promises@1.2.0: + resolution: {integrity: sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==} engines: {node: '>=10'} dev: false - /comma-separated-tokens@1.0.8: - resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + dependencies: + delayed-stream: 1.0.0 + dev: false + + /comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + dev: false + + /commander@10.0.1: + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} dev: false /commander@2.20.3: @@ -3773,8 +3765,8 @@ packages: engines: {node: '>= 12'} dev: false - /commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} + /common-path-prefix@3.0.0: + resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} dev: false /compressible@2.0.18: @@ -3803,16 +3795,22 @@ packages: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} dev: false - /configstore@5.0.1: - resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} - engines: {node: '>=8'} + /config-chain@1.1.13: + resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} + dependencies: + ini: 1.3.8 + proto-list: 1.2.4 + dev: false + + /configstore@6.0.0: + resolution: {integrity: sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==} + engines: {node: '>=12'} dependencies: - dot-prop: 5.3.0 + dot-prop: 6.0.1 graceful-fs: 4.2.11 - make-dir: 3.1.0 - unique-string: 2.0.0 + unique-string: 3.0.0 write-file-atomic: 3.0.3 - xdg-basedir: 4.0.0 + xdg-basedir: 5.1.0 dev: false /connect-history-api-fallback@2.0.0: @@ -3841,8 +3839,8 @@ packages: engines: {node: '>= 0.6'} dev: false - /convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + /convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: false /cookie-signature@1.0.6: @@ -3859,34 +3857,34 @@ packages: engines: {node: '>=12'} dev: false - /copy-webpack-plugin@11.0.0(webpack@5.88.2): + /copy-webpack-plugin@11.0.0(webpack@5.89.0): resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==} engines: {node: '>= 14.15.0'} peerDependencies: webpack: ^5.1.0 dependencies: - fast-glob: 3.3.0 + fast-glob: 3.3.1 glob-parent: 6.0.2 globby: 13.2.2 normalize-path: 3.0.0 schema-utils: 4.2.0 serialize-javascript: 6.0.1 - webpack: 5.88.2 + webpack: 5.89.0 dev: false - /core-js-compat@3.31.1: - resolution: {integrity: sha512-wIDWd2s5/5aJSdpOJHfSibxNODxoGoWOBHt8JSPB41NOE94M7kuTPZCYLOlTtuoXTsBPKobpJ6T+y0SSy5L9SA==} + /core-js-compat@3.33.2: + resolution: {integrity: sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw==} dependencies: - browserslist: 4.21.10 + browserslist: 4.22.1 dev: false - /core-js-pure@3.31.1: - resolution: {integrity: sha512-w+C62kvWti0EPs4KPMCMVv9DriHSXfQOCQ94bGGBiEW5rrbtt/Rz8n5Krhfw9cpFyzXBjf3DB3QnPdEzGDY4Fw==} + /core-js-pure@3.33.2: + resolution: {integrity: sha512-a8zeCdyVk7uF2elKIGz67AjcXOxjRbwOLz8SbklEso1V+2DoW4OkAMZN9S9GBgvZIaqQi/OemFX4OiSoQEmg1Q==} requiresBuild: true dev: false - /core-js@3.31.1: - resolution: {integrity: sha512-2sKLtfq1eFST7l7v62zaqXacPc7uG8ZAya8ogijLhTtaKNcpzpB4TMoTw2Si+8GYKRwFPMMtUT0263QFWFfqyQ==} + /core-js@3.33.2: + resolution: {integrity: sha512-XeBzWI6QL3nJQiHmdzbAOiMYqjrb7hwU7A39Qhvd/POSa/t9E1AeZyEZx3fNvp/vtM8zXwhoL0FsiS0hD0pruQ==} requiresBuild: true dev: false @@ -3898,7 +3896,7 @@ packages: resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} engines: {node: '>=8'} dependencies: - '@types/parse-json': 4.0.0 + '@types/parse-json': 4.0.1 import-fresh: 3.3.0 parse-json: 5.2.0 path-type: 4.0.0 @@ -3909,27 +3907,33 @@ packages: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} dependencies: - '@types/parse-json': 4.0.0 + '@types/parse-json': 4.0.1 import-fresh: 3.3.0 parse-json: 5.2.0 path-type: 4.0.0 yaml: 1.10.2 dev: false - /cosmiconfig@8.2.0: - resolution: {integrity: sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==} + /cosmiconfig@8.3.6(typescript@5.2.2): + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true dependencies: import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 + typescript: 5.2.2 dev: false /cross-fetch@3.1.8: resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} dependencies: - node-fetch: 2.6.12 + node-fetch: 2.7.0 transitivePeerDependencies: - encoding dev: false @@ -3943,38 +3947,40 @@ packages: which: 2.0.2 dev: false - /crypto-random-string@2.0.0: - resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} - engines: {node: '>=8'} + /crypto-random-string@4.0.0: + resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} + engines: {node: '>=12'} + dependencies: + type-fest: 1.4.0 dev: false - /css-declaration-sorter@6.4.1(postcss@8.4.26): + /css-declaration-sorter@6.4.1(postcss@8.4.31): resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} engines: {node: ^10 || ^12 || >=14} peerDependencies: postcss: ^8.0.9 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /css-loader@6.8.1(webpack@5.88.2): + /css-loader@6.8.1(webpack@5.89.0): resolution: {integrity: sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.26) - postcss: 8.4.26 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.26) - postcss-modules-local-by-default: 4.0.3(postcss@8.4.26) - postcss-modules-scope: 3.0.0(postcss@8.4.26) - postcss-modules-values: 4.0.0(postcss@8.4.26) + icss-utils: 5.1.0(postcss@8.4.31) + postcss: 8.4.31 + postcss-modules-extract-imports: 3.0.0(postcss@8.4.31) + postcss-modules-local-by-default: 4.0.3(postcss@8.4.31) + postcss-modules-scope: 3.0.0(postcss@8.4.31) + postcss-modules-values: 4.0.0(postcss@8.4.31) postcss-value-parser: 4.2.0 semver: 7.5.4 - webpack: 5.88.2 + webpack: 5.89.0 dev: false - /css-minimizer-webpack-plugin@4.2.2(clean-css@5.3.2)(webpack@5.88.2): + /css-minimizer-webpack-plugin@4.2.2(clean-css@5.3.2)(webpack@5.89.0): resolution: {integrity: sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==} engines: {node: '>= 14.15.0'} peerDependencies: @@ -4000,13 +4006,13 @@ packages: optional: true dependencies: clean-css: 5.3.2 - cssnano: 5.1.15(postcss@8.4.26) - jest-worker: 29.6.1 - postcss: 8.4.26 + cssnano: 5.1.15(postcss@8.4.31) + jest-worker: 29.7.0 + postcss: 8.4.31 schema-utils: 4.2.0 serialize-javascript: 6.0.1 source-map: 0.6.1 - webpack: 5.88.2 + webpack: 5.89.0 dev: false /css-select@4.3.0: @@ -4048,77 +4054,77 @@ packages: hasBin: true dev: false - /cssnano-preset-advanced@5.3.10(postcss@8.4.26): + /cssnano-preset-advanced@5.3.10(postcss@8.4.31): resolution: {integrity: sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - autoprefixer: 10.4.14(postcss@8.4.26) - cssnano-preset-default: 5.2.14(postcss@8.4.26) - postcss: 8.4.26 - postcss-discard-unused: 5.1.0(postcss@8.4.26) - postcss-merge-idents: 5.1.1(postcss@8.4.26) - postcss-reduce-idents: 5.2.0(postcss@8.4.26) - postcss-zindex: 5.1.0(postcss@8.4.26) + autoprefixer: 10.4.16(postcss@8.4.31) + cssnano-preset-default: 5.2.14(postcss@8.4.31) + postcss: 8.4.31 + postcss-discard-unused: 5.1.0(postcss@8.4.31) + postcss-merge-idents: 5.1.1(postcss@8.4.31) + postcss-reduce-idents: 5.2.0(postcss@8.4.31) + postcss-zindex: 5.1.0(postcss@8.4.31) dev: false - /cssnano-preset-default@5.2.14(postcss@8.4.26): + /cssnano-preset-default@5.2.14(postcss@8.4.31): resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - css-declaration-sorter: 6.4.1(postcss@8.4.26) - cssnano-utils: 3.1.0(postcss@8.4.26) - postcss: 8.4.26 - postcss-calc: 8.2.4(postcss@8.4.26) - postcss-colormin: 5.3.1(postcss@8.4.26) - postcss-convert-values: 5.1.3(postcss@8.4.26) - postcss-discard-comments: 5.1.2(postcss@8.4.26) - postcss-discard-duplicates: 5.1.0(postcss@8.4.26) - postcss-discard-empty: 5.1.1(postcss@8.4.26) - postcss-discard-overridden: 5.1.0(postcss@8.4.26) - postcss-merge-longhand: 5.1.7(postcss@8.4.26) - postcss-merge-rules: 5.1.4(postcss@8.4.26) - postcss-minify-font-values: 5.1.0(postcss@8.4.26) - postcss-minify-gradients: 5.1.1(postcss@8.4.26) - postcss-minify-params: 5.1.4(postcss@8.4.26) - postcss-minify-selectors: 5.2.1(postcss@8.4.26) - postcss-normalize-charset: 5.1.0(postcss@8.4.26) - postcss-normalize-display-values: 5.1.0(postcss@8.4.26) - postcss-normalize-positions: 5.1.1(postcss@8.4.26) - postcss-normalize-repeat-style: 5.1.1(postcss@8.4.26) - postcss-normalize-string: 5.1.0(postcss@8.4.26) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.26) - postcss-normalize-unicode: 5.1.1(postcss@8.4.26) - postcss-normalize-url: 5.1.0(postcss@8.4.26) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.26) - postcss-ordered-values: 5.1.3(postcss@8.4.26) - postcss-reduce-initial: 5.1.2(postcss@8.4.26) - postcss-reduce-transforms: 5.1.0(postcss@8.4.26) - postcss-svgo: 5.1.0(postcss@8.4.26) - postcss-unique-selectors: 5.1.1(postcss@8.4.26) - dev: false - - /cssnano-utils@3.1.0(postcss@8.4.26): + css-declaration-sorter: 6.4.1(postcss@8.4.31) + cssnano-utils: 3.1.0(postcss@8.4.31) + postcss: 8.4.31 + postcss-calc: 8.2.4(postcss@8.4.31) + postcss-colormin: 5.3.1(postcss@8.4.31) + postcss-convert-values: 5.1.3(postcss@8.4.31) + postcss-discard-comments: 5.1.2(postcss@8.4.31) + postcss-discard-duplicates: 5.1.0(postcss@8.4.31) + postcss-discard-empty: 5.1.1(postcss@8.4.31) + postcss-discard-overridden: 5.1.0(postcss@8.4.31) + postcss-merge-longhand: 5.1.7(postcss@8.4.31) + postcss-merge-rules: 5.1.4(postcss@8.4.31) + postcss-minify-font-values: 5.1.0(postcss@8.4.31) + postcss-minify-gradients: 5.1.1(postcss@8.4.31) + postcss-minify-params: 5.1.4(postcss@8.4.31) + postcss-minify-selectors: 5.2.1(postcss@8.4.31) + postcss-normalize-charset: 5.1.0(postcss@8.4.31) + postcss-normalize-display-values: 5.1.0(postcss@8.4.31) + postcss-normalize-positions: 5.1.1(postcss@8.4.31) + postcss-normalize-repeat-style: 5.1.1(postcss@8.4.31) + postcss-normalize-string: 5.1.0(postcss@8.4.31) + postcss-normalize-timing-functions: 5.1.0(postcss@8.4.31) + postcss-normalize-unicode: 5.1.1(postcss@8.4.31) + postcss-normalize-url: 5.1.0(postcss@8.4.31) + postcss-normalize-whitespace: 5.1.1(postcss@8.4.31) + postcss-ordered-values: 5.1.3(postcss@8.4.31) + postcss-reduce-initial: 5.1.2(postcss@8.4.31) + postcss-reduce-transforms: 5.1.0(postcss@8.4.31) + postcss-svgo: 5.1.0(postcss@8.4.31) + postcss-unique-selectors: 5.1.1(postcss@8.4.31) + dev: false + + /cssnano-utils@3.1.0(postcss@8.4.31): resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /cssnano@5.1.15(postcss@8.4.26): + /cssnano@5.1.15(postcss@8.4.31): resolution: {integrity: sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 5.2.14(postcss@8.4.26) + cssnano-preset-default: 5.2.14(postcss@8.4.31) lilconfig: 2.1.0 - postcss: 8.4.26 + postcss: 8.4.31 yaml: 1.10.2 dev: false @@ -4155,11 +4161,17 @@ packages: ms: 2.1.2 dev: false - /decompress-response@3.3.0: - resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} - engines: {node: '>=4'} + /decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + dependencies: + character-entities: 2.0.2 + dev: false + + /decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} dependencies: - mimic-response: 1.0.1 + mimic-response: 3.1.0 dev: false /deep-extend@0.6.0: @@ -4179,8 +4191,18 @@ packages: execa: 5.1.1 dev: false - /defer-to-connect@1.1.3: - resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} + /defer-to-connect@2.0.1: + resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} + engines: {node: '>=10'} + dev: false + + /define-data-property@1.1.1: + resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.2 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 dev: false /define-lazy-prop@2.0.0: @@ -4188,11 +4210,12 @@ packages: engines: {node: '>=8'} dev: false - /define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} + /define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} dependencies: - has-property-descriptors: 1.0.0 + define-data-property: 1.1.1 + has-property-descriptors: 1.0.1 object-keys: 1.1.1 dev: false @@ -4210,6 +4233,11 @@ packages: slash: 3.0.0 dev: false + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + dev: false + /depd@1.1.2: resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} engines: {node: '>= 0.6'} @@ -4220,17 +4248,16 @@ packages: engines: {node: '>= 0.8'} dev: false + /dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + dev: false + /destroy@1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} dev: false - /detab@2.0.4: - resolution: {integrity: sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==} - dependencies: - repeat-string: 1.6.1 - dev: false - /detect-node@2.1.0: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} dev: false @@ -4256,6 +4283,12 @@ packages: - supports-color dev: false + /devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + dependencies: + dequal: 2.0.3 + dev: false + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -4267,22 +4300,22 @@ packages: resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==} dev: false - /dns-packet@5.6.0: - resolution: {integrity: sha512-rza3UH1LwdHh9qyPXp8lkwpjSNk/AMD3dPytUoRoqnypDUhY0xvbdmVhWOfxO68frEfV9BU8V12Ez7ZsHGZpCQ==} + /dns-packet@5.6.1: + resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==} engines: {node: '>=6'} dependencies: '@leichtgewicht/ip-codec': 2.0.4 dev: false - /docusaurus-plugin-sass@0.2.5(@docusaurus/core@2.4.3)(sass@1.69.5)(webpack@5.88.2): + /docusaurus-plugin-sass@0.2.5(@docusaurus/core@3.0.0)(sass@1.69.5)(webpack@5.89.0): resolution: {integrity: sha512-Z+D0fLFUKcFpM+bqSUmqKIU+vO+YF1xoEQh5hoFreg2eMf722+siwXDD+sqtwU8E4MvVpuvsQfaHwODNlxJAEg==} peerDependencies: '@docusaurus/core': ^2.0.0-beta || ^3.0.0-alpha sass: ^1.30.0 dependencies: - '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@5.2.2) + '@docusaurus/core': 3.0.0(@docusaurus/types@3.0.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.2.2) sass: 1.69.5 - sass-loader: 10.4.1(sass@1.69.5)(webpack@5.88.2) + sass-loader: 10.4.1(sass@1.69.5)(webpack@5.89.0) transitivePeerDependencies: - fibers - node-sass @@ -4349,20 +4382,16 @@ packages: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} dependencies: no-case: 3.0.4 - tslib: 2.6.0 + tslib: 2.6.2 dev: false - /dot-prop@5.3.0: - resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} - engines: {node: '>=8'} + /dot-prop@6.0.1: + resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} + engines: {node: '>=10'} dependencies: is-obj: 2.0.0 dev: false - /duplexer3@0.1.5: - resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} - dev: false - /duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} dev: false @@ -4375,8 +4404,8 @@ packages: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: false - /electron-to-chromium@1.4.504: - resolution: {integrity: sha512-cSMwIAd8yUh54VwitVRVvHK66QqHWE39C3DRj8SWiXitEpVSY3wNPD9y1pxQtLIi4w3UdzF9klLsmuPshz09DQ==} + /electron-to-chromium@1.4.572: + resolution: {integrity: sha512-RlFobl4D3ieetbnR+2EpxdzFl9h0RAJkPK3pfiwMug2nhBin2ZCsGIAJWdpNniLz43sgXam/CgipOmvTA+rUiA==} /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -4386,13 +4415,17 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: false + /emojilib@2.4.0: + resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} + dev: false + /emojis-list@3.0.0: resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} engines: {node: '>= 4'} dev: false - /emoticon@3.2.0: - resolution: {integrity: sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==} + /emoticon@4.0.1: + resolution: {integrity: sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw==} dev: false /encodeurl@1.0.2: @@ -4400,12 +4433,6 @@ packages: engines: {node: '>= 0.8'} dev: false - /end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - dependencies: - once: 1.4.0 - dev: false - /enhanced-resolve@5.15.0: resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==} engines: {node: '>=10.13.0'} @@ -4428,16 +4455,16 @@ packages: is-arrayish: 0.2.1 dev: false - /es-module-lexer@1.3.0: - resolution: {integrity: sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==} + /es-module-lexer@1.3.1: + resolution: {integrity: sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==} /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - /escape-goat@2.1.1: - resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==} - engines: {node: '>=8'} + /escape-goat@4.0.0: + resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==} + engines: {node: '>=12'} dev: false /escape-html@1.0.3: @@ -4454,6 +4481,11 @@ packages: engines: {node: '>=10'} dev: false + /escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + dev: false + /eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -4481,6 +4513,54 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + /estree-util-attach-comments@3.0.0: + resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==} + dependencies: + '@types/estree': 1.0.4 + dev: false + + /estree-util-build-jsx@3.0.1: + resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==} + dependencies: + '@types/estree-jsx': 1.0.2 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + estree-walker: 3.0.3 + dev: false + + /estree-util-is-identifier-name@3.0.0: + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + dev: false + + /estree-util-to-js@2.0.0: + resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==} + dependencies: + '@types/estree-jsx': 1.0.2 + astring: 1.8.6 + source-map: 0.7.4 + dev: false + + /estree-util-value-to-estree@3.0.1: + resolution: {integrity: sha512-b2tdzTurEIbwRh+mKrEcaWfu1wgb8J1hVsgREg7FFiecWwK/PhO8X0kyc+0bIcKNtD4sqxIdNoRy6/p/TvECEA==} + engines: {node: '>=16.0.0'} + dependencies: + '@types/estree': 1.0.4 + is-plain-obj: 4.1.0 + dev: false + + /estree-util-visit@2.0.0: + resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==} + dependencies: + '@types/estree-jsx': 1.0.2 + '@types/unist': 3.0.1 + dev: false + + /estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + dependencies: + '@types/estree': 1.0.4 + dev: false + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} @@ -4500,7 +4580,7 @@ packages: resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} engines: {node: '>= 0.8'} dependencies: - '@types/node': 20.4.2 + '@types/node': 20.8.10 require-like: 0.1.2 dev: false @@ -4580,8 +4660,8 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - /fast-glob@3.3.0: - resolution: {integrity: sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==} + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -4606,6 +4686,12 @@ packages: reusify: 1.0.4 dev: false + /fault@2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + dependencies: + format: 0.2.2 + dev: false + /faye-websocket@0.11.4: resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==} engines: {node: '>=0.8.0'} @@ -4634,7 +4720,7 @@ packages: object-assign: 4.1.1 promise: 7.3.1 setimmediate: 1.0.5 - ua-parser-js: 1.0.35 + ua-parser-js: 1.0.37 transitivePeerDependencies: - encoding dev: false @@ -4646,7 +4732,7 @@ packages: xml-js: 1.6.11 dev: false - /file-loader@6.2.0(webpack@5.88.2): + /file-loader@6.2.0(webpack@5.89.0): resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -4654,7 +4740,7 @@ packages: dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.88.2 + webpack: 5.89.0 dev: false /filesize@8.0.7: @@ -4684,13 +4770,12 @@ packages: - supports-color dev: false - /find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} + /find-cache-dir@4.0.0: + resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==} + engines: {node: '>=14.16'} dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 + common-path-prefix: 3.0.0 + pkg-dir: 7.0.0 dev: false /find-up@3.0.0: @@ -4700,14 +4785,6 @@ packages: locate-path: 3.0.0 dev: false - /find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - dev: false - /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -4716,20 +4793,32 @@ packages: path-exists: 4.0.0 dev: false - /flux@4.0.4(react@17.0.2): + /find-up@6.3.0: + resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + dev: false + + /flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + /flux@4.0.4(react@18.2.0): resolution: {integrity: sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==} peerDependencies: react: ^15.0.2 || ^16.0.0 || ^17.0.0 dependencies: fbemitter: 3.0.0 fbjs: 3.0.5 - react: 17.0.2 + react: 18.2.0 transitivePeerDependencies: - encoding dev: false - /follow-redirects@1.15.2: - resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} + /follow-redirects@1.15.3: + resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -4738,7 +4827,7 @@ packages: optional: true dev: false - /fork-ts-checker-webpack-plugin@6.5.3(typescript@5.2.2)(webpack@5.88.2): + /fork-ts-checker-webpack-plugin@6.5.3(typescript@5.2.2)(webpack@5.89.0): resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==} engines: {node: '>=10', yarn: '>=1.0.0'} peerDependencies: @@ -4752,8 +4841,8 @@ packages: vue-template-compiler: optional: true dependencies: - '@babel/code-frame': 7.22.5 - '@types/json-schema': 7.0.12 + '@babel/code-frame': 7.22.13 + '@types/json-schema': 7.0.14 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 6.0.0 @@ -4766,7 +4855,26 @@ packages: semver: 7.5.4 tapable: 1.1.3 typescript: 5.2.2 - webpack: 5.88.2 + webpack: 5.89.0 + dev: false + + /form-data-encoder@2.1.4: + resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==} + engines: {node: '>= 14.17'} + dev: false + + /form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: false + + /format@0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} dev: false /forwarded@0.2.0: @@ -4774,8 +4882,8 @@ packages: engines: {node: '>= 0.6'} dev: false - /fraction.js@4.2.0: - resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} + /fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} dev: false /fresh@0.5.2: @@ -4783,9 +4891,9 @@ packages: engines: {node: '>= 0.6'} dev: false - /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} + /fs-extra@11.1.1: + resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} + engines: {node: '>=14.14'} dependencies: graceful-fs: 4.2.11 jsonfile: 6.1.0 @@ -4802,8 +4910,8 @@ packages: universalify: 2.0.0 dev: false - /fs-monkey@1.0.4: - resolution: {integrity: sha512-INM/fWAxMICjttnD0DX1rBvinKskj5G1w+oy/pnm9u/tSlnBrzFonJMcalKJ30P8RRsPzKcCG7Q8l0jx5Fh9YQ==} + /fs-monkey@1.0.5: + resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==} dev: false /fs.realpath@1.0.0: @@ -4818,8 +4926,8 @@ packages: dev: false optional: true - /function-bind@1.1.1: - resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} dev: false /gensync@1.0.0-beta.2: @@ -4827,33 +4935,19 @@ packages: engines: {node: '>=6.9.0'} dev: false - /get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} + /get-intrinsic@1.2.2: + resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} dependencies: - function-bind: 1.1.1 - has: 1.0.3 + function-bind: 1.1.2 has-proto: 1.0.1 has-symbols: 1.0.3 + hasown: 2.0.0 dev: false /get-own-enumerable-property-symbols@3.0.2: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} dev: false - /get-stream@4.1.0: - resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} - engines: {node: '>=6'} - dependencies: - pump: 3.0.0 - dev: false - - /get-stream@5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: false - /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -4925,7 +5019,7 @@ packages: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.0 + fast-glob: 3.3.1 ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 @@ -4936,29 +5030,37 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: dir-glob: 3.0.1 - fast-glob: 3.3.0 + fast-glob: 3.3.1 ignore: 5.2.4 merge2: 1.4.1 slash: 4.0.0 dev: false - /got@9.6.0: - resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==} - engines: {node: '>=8.6'} + /gopd@1.0.1: + resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: - '@sindresorhus/is': 0.14.0 - '@szmarczak/http-timer': 1.1.2 - '@types/keyv': 3.1.4 - '@types/responselike': 1.0.0 - cacheable-request: 6.1.0 - decompress-response: 3.3.0 - duplexer3: 0.1.5 - get-stream: 4.1.0 - lowercase-keys: 1.0.1 - mimic-response: 1.0.1 - p-cancelable: 1.1.0 - to-readable-stream: 1.0.0 - url-parse-lax: 3.0.0 + get-intrinsic: 1.2.2 + dev: false + + /got@12.6.1: + resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} + engines: {node: '>=14.16'} + dependencies: + '@sindresorhus/is': 5.6.0 + '@szmarczak/http-timer': 5.0.1 + cacheable-lookup: 7.0.0 + cacheable-request: 10.2.14 + decompress-response: 6.0.0 + form-data-encoder: 2.1.4 + get-stream: 6.0.1 + http2-wrapper: 2.2.0 + lowercase-keys: 3.0.0 + p-cancelable: 3.0.0 + responselike: 3.0.0 + dev: false + + /graceful-fs@4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} dev: false /graceful-fs@4.2.11: @@ -4994,10 +5096,10 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - /has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + /has-property-descriptors@1.0.1: + resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} dependencies: - get-intrinsic: 1.2.1 + get-intrinsic: 1.2.2 dev: false /has-proto@1.0.1: @@ -5010,78 +5112,161 @@ packages: engines: {node: '>= 0.4'} dev: false - /has-yarn@2.1.0: - resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} - engines: {node: '>=8'} + /has-yarn@3.0.0: + resolution: {integrity: sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false - /has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} + /hasown@2.0.0: + resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + engines: {node: '>= 0.4'} + dependencies: + function-bind: 1.1.2 + dev: false + + /hast-util-from-dom@5.0.0: + resolution: {integrity: sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==} dependencies: - function-bind: 1.1.1 + '@types/hast': 3.0.2 + hastscript: 8.0.0 + web-namespaces: 2.0.1 dev: false - /hast-to-hyperscript@9.0.1: - resolution: {integrity: sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==} + /hast-util-from-html-isomorphic@2.0.0: + resolution: {integrity: sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==} dependencies: - '@types/unist': 2.0.7 - comma-separated-tokens: 1.0.8 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - style-to-object: 0.3.0 - unist-util-is: 4.1.0 - web-namespaces: 1.1.4 + '@types/hast': 3.0.2 + hast-util-from-dom: 5.0.0 + hast-util-from-html: 2.0.1 + unist-util-remove-position: 5.0.0 dev: false - /hast-util-from-parse5@6.0.1: - resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==} + /hast-util-from-html@2.0.1: + resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==} dependencies: - '@types/parse5': 5.0.3 - hastscript: 6.0.0 - property-information: 5.6.0 - vfile: 4.2.1 - vfile-location: 3.2.0 - web-namespaces: 1.1.4 + '@types/hast': 3.0.2 + devlop: 1.1.0 + hast-util-from-parse5: 8.0.1 + parse5: 7.1.2 + vfile: 6.0.1 + vfile-message: 4.0.2 + dev: false + + /hast-util-from-parse5@8.0.1: + resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} + dependencies: + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + devlop: 1.1.0 + hastscript: 8.0.0 + property-information: 6.3.0 + vfile: 6.0.1 + vfile-location: 5.0.2 + web-namespaces: 2.0.1 dev: false - /hast-util-parse-selector@2.2.5: - resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} + /hast-util-is-element@3.0.0: + resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} + dependencies: + '@types/hast': 3.0.2 + dev: false + + /hast-util-parse-selector@4.0.0: + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} + dependencies: + '@types/hast': 3.0.2 + dev: false + + /hast-util-raw@9.0.1: + resolution: {integrity: sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==} + dependencies: + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + '@ungap/structured-clone': 1.2.0 + hast-util-from-parse5: 8.0.1 + hast-util-to-parse5: 8.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.0.2 + parse5: 7.1.2 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.1 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + dev: false + + /hast-util-to-estree@3.1.0: + resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==} + dependencies: + '@types/estree': 1.0.4 + '@types/estree-jsx': 1.0.2 + '@types/hast': 3.0.2 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-attach-comments: 3.0.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.0 + mdast-util-mdx-jsx: 3.0.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 + style-to-object: 0.4.4 + unist-util-position: 5.0.0 + zwitch: 2.0.4 + transitivePeerDependencies: + - supports-color + dev: false + + /hast-util-to-jsx-runtime@2.2.0: + resolution: {integrity: sha512-wSlp23N45CMjDg/BPW8zvhEi3R+8eRE1qFbjEyAUzMCzu2l1Wzwakq+Tlia9nkCtEl5mDxa7nKHsvYJ6Gfn21A==} + dependencies: + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 + style-to-object: 0.4.4 + unist-util-position: 5.0.0 + vfile-message: 4.0.2 dev: false - /hast-util-raw@6.0.1: - resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==} + /hast-util-to-parse5@8.0.0: + resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} dependencies: - '@types/hast': 2.3.5 - hast-util-from-parse5: 6.0.1 - hast-util-to-parse5: 6.0.0 - html-void-elements: 1.0.5 - parse5: 6.0.1 - unist-util-position: 3.1.0 - vfile: 4.2.1 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 + '@types/hast': 3.0.2 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 dev: false - /hast-util-to-parse5@6.0.0: - resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==} + /hast-util-to-text@4.0.0: + resolution: {integrity: sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w==} dependencies: - hast-to-hyperscript: 9.0.1 - property-information: 5.6.0 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + hast-util-is-element: 3.0.0 + unist-util-find-after: 5.0.0 dev: false - /hastscript@6.0.0: - resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} + /hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} dependencies: - '@types/hast': 2.3.5 - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 + '@types/hast': 3.0.2 + dev: false + + /hastscript@8.0.0: + resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} + dependencies: + '@types/hast': 3.0.2 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 4.0.0 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 dev: false /he@1.2.0: @@ -5092,7 +5277,7 @@ packages: /history@4.10.1: resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==} dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.2 loose-envify: 1.4.0 resolve-pathname: 3.0.0 tiny-invariant: 1.3.1 @@ -5130,7 +5315,21 @@ packages: he: 1.2.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.19.0 + terser: 5.24.0 + dev: false + + /html-minifier-terser@7.2.0: + resolution: {integrity: sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==} + engines: {node: ^14.13.1 || >=16.0.0} + hasBin: true + dependencies: + camel-case: 4.1.2 + clean-css: 5.3.2 + commander: 10.0.1 + entities: 4.5.0 + param-case: 3.0.4 + relateurl: 0.2.7 + terser: 5.24.0 dev: false /html-tags@3.3.1: @@ -5138,11 +5337,11 @@ packages: engines: {node: '>=8'} dev: false - /html-void-elements@1.0.5: - resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==} + /html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} dev: false - /html-webpack-plugin@5.5.3(webpack@5.88.2): + /html-webpack-plugin@5.5.3(webpack@5.89.0): resolution: {integrity: sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg==} engines: {node: '>=10.13.0'} peerDependencies: @@ -5153,7 +5352,7 @@ packages: lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2 + webpack: 5.89.0 dev: false /htmlparser2@6.1.0: @@ -5207,7 +5406,7 @@ packages: resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} dev: false - /http-proxy-middleware@2.0.6(@types/express@4.17.17): + /http-proxy-middleware@2.0.6(@types/express@4.17.20): resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} engines: {node: '>=12.0.0'} peerDependencies: @@ -5216,8 +5415,8 @@ packages: '@types/express': optional: true dependencies: - '@types/express': 4.17.17 - '@types/http-proxy': 1.17.11 + '@types/express': 4.17.20 + '@types/http-proxy': 1.17.13 http-proxy: 1.18.1 is-glob: 4.0.3 is-plain-obj: 3.0.0 @@ -5231,12 +5430,20 @@ packages: engines: {node: '>=8.0.0'} dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.2 + follow-redirects: 1.15.3 requires-port: 1.0.0 transitivePeerDependencies: - debug dev: false + /http2-wrapper@2.2.0: + resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} + engines: {node: '>=10.19.0'} + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + dev: false + /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} @@ -5249,13 +5456,13 @@ packages: safer-buffer: 2.1.2 dev: false - /icss-utils@5.1.0(postcss@8.4.26): + /icss-utils@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false /ignore@5.2.4: @@ -5275,8 +5482,8 @@ packages: resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} dev: false - /immutable@4.3.1: - resolution: {integrity: sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==} + /immutable@4.3.4: + resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==} dev: false /import-fresh@3.3.0: @@ -5287,9 +5494,9 @@ packages: resolve-from: 4.0.0 dev: false - /import-lazy@2.1.0: - resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==} - engines: {node: '>=4'} + /import-lazy@4.0.0: + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} + engines: {node: '>=8'} dev: false /imurmurhash@0.1.4: @@ -5355,15 +5562,15 @@ packages: engines: {node: '>= 10'} dev: false - /is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} + /is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} dev: false - /is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} + /is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 dev: false /is-arrayish@0.2.1: @@ -5377,26 +5584,21 @@ packages: binary-extensions: 2.2.0 dev: false - /is-buffer@2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} - dev: false - - /is-ci@2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} + /is-ci@3.0.1: + resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true dependencies: - ci-info: 2.0.0 + ci-info: 3.9.0 dev: false - /is-core-module@2.12.1: - resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==} + /is-core-module@2.13.1: + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: - has: 1.0.3 + hasown: 2.0.0 dev: false - /is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} + /is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} dev: false /is-docker@2.2.1: @@ -5427,8 +5629,8 @@ packages: is-extglob: 2.1.1 dev: false - /is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} + /is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} dev: false /is-installed-globally@0.4.0: @@ -5439,9 +5641,9 @@ packages: is-path-inside: 3.0.3 dev: false - /is-npm@5.0.0: - resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} - engines: {node: '>=10'} + /is-npm@6.0.0: + resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /is-number@7.0.0: @@ -5469,22 +5671,33 @@ packages: engines: {node: '>=8'} dev: false - /is-plain-obj@2.1.0: - resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} - engines: {node: '>=8'} - dev: false - /is-plain-obj@3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} engines: {node: '>=10'} dev: false + /is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + dev: false + /is-plain-object@2.0.4: resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 + /is-plain-object@5.0.0: + resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} + engines: {node: '>=0.10.0'} + dev: false + + /is-reference@3.0.2: + resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} + dependencies: + '@types/estree': 1.0.4 + dev: false + /is-regexp@1.0.0: resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} engines: {node: '>=0.10.0'} @@ -5504,14 +5717,6 @@ packages: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} dev: false - /is-whitespace-character@1.0.4: - resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==} - dev: false - - /is-word-character@1.0.4: - resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==} - dev: false - /is-wsl@2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} @@ -5519,8 +5724,9 @@ packages: is-docker: 2.2.1 dev: false - /is-yarn-global@0.3.0: - resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==} + /is-yarn-global@0.4.1: + resolution: {integrity: sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==} + engines: {node: '>=12'} dev: false /isarray@0.0.1: @@ -5539,14 +5745,14 @@ packages: resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} engines: {node: '>=0.10.0'} - /jest-util@29.6.1: - resolution: {integrity: sha512-NRFCcjc+/uO3ijUVyNOQJluf8PtGCe/W6cix36+M3cTFgiYqFOOW5MgN4JOOcvbUhcKTYVd1CvHz/LWi8d16Mg==} + /jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.6.1 - '@types/node': 20.4.2 + '@jest/types': 29.6.3 + '@types/node': 20.8.10 chalk: 4.1.2 - ci-info: 3.8.0 + ci-info: 3.9.0 graceful-fs: 4.2.11 picomatch: 2.3.1 dev: false @@ -5555,27 +5761,27 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.4.2 + '@types/node': 20.8.10 merge-stream: 2.0.0 supports-color: 8.1.1 - /jest-worker@29.6.1: - resolution: {integrity: sha512-U+Wrbca7S8ZAxAe9L6nb6g8kPdia5hj32Puu5iOqBCMTMWFHXuK6dOV2IFrpedbTV8fjMFLdWNttQTBL6u2MRA==} + /jest-worker@29.7.0: + resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 20.4.2 - jest-util: 29.6.1 + '@types/node': 20.8.10 + jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 dev: false - /jiti@1.19.1: - resolution: {integrity: sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg==} + /jiti@1.21.0: + resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} hasBin: true dev: false - /joi@17.9.2: - resolution: {integrity: sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw==} + /joi@17.11.0: + resolution: {integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==} dependencies: '@hapi/hoek': 9.3.0 '@hapi/topo': 5.1.0 @@ -5612,8 +5818,8 @@ packages: hasBin: true dev: false - /json-buffer@3.0.0: - resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==} + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} dev: false /json-parse-even-better-errors@2.3.1: @@ -5640,10 +5846,17 @@ packages: graceful-fs: 4.2.11 dev: false - /keyv@3.1.0: - resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==} + /katex@0.16.9: + resolution: {integrity: sha512-fsSYjWS0EEOwvy81j3vRA8TEAhQhKiqO+FQaKWp0m39qwOzHVBgAUBIXWj1pB+O2W3fIpNa6Y9KSKCVbfPhyAQ==} + hasBin: true dependencies: - json-buffer: 3.0.0 + commander: 8.3.0 + dev: false + + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + dependencies: + json-buffer: 3.0.1 dev: false /kind-of@6.0.3: @@ -5664,15 +5877,15 @@ packages: engines: {node: '>= 8'} dev: false - /latest-version@5.1.0: - resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==} - engines: {node: '>=8'} + /latest-version@7.0.0: + resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==} + engines: {node: '>=14.16'} dependencies: - package-json: 6.5.0 + package-json: 8.1.1 dev: false - /launch-editor@2.6.0: - resolution: {integrity: sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==} + /launch-editor@2.6.1: + resolution: {integrity: sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==} dependencies: picocolors: 1.0.0 shell-quote: 1.8.1 @@ -5718,13 +5931,6 @@ packages: path-exists: 3.0.0 dev: false - /locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - dependencies: - p-locate: 4.1.0 - dev: false - /locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} @@ -5732,6 +5938,13 @@ packages: p-locate: 5.0.0 dev: false + /locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-locate: 6.0.0 + dev: false + /lodash.curry@4.1.1: resolution: {integrity: sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==} dev: false @@ -5740,132 +5953,741 @@ packages: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} dev: false + /lodash.escape@4.0.1: + resolution: {integrity: sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==} + dev: false + + /lodash.flatten@4.4.0: + resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==} + dev: false + /lodash.flow@3.5.0: resolution: {integrity: sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==} dev: false + /lodash.invokemap@4.6.0: + resolution: {integrity: sha512-CfkycNtMqgUlfjfdh2BhKO/ZXrP8ePOX5lEU/g0R3ItJcnuxWDwokMGKx1hWcfOikmyOVx6X9IwWnDGlgKl61w==} + dev: false + /lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} dev: false + /lodash.pullall@4.2.0: + resolution: {integrity: sha512-VhqxBKH0ZxPpLhiu68YD1KnHmbhQJQctcipvmFnqIBDYzcIHzf3Zpu0tpeOKtR4x76p9yohc506eGdOjTmyIBg==} + dev: false + /lodash.uniq@4.5.0: resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} dev: false - /lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + /lodash.uniqby@4.7.0: + resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} + dev: false + + /lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: false + + /longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + dev: false + + /loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + dependencies: + js-tokens: 4.0.0 + + /lower-case@2.0.2: + resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} + dependencies: + tslib: 2.6.2 + dev: false + + /lowercase-keys@3.0.0: + resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false + + /lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + dependencies: + yallist: 3.1.1 + dev: false + + /lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + dependencies: + yallist: 4.0.0 + dev: false + + /markdown-extensions@2.0.0: + resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==} + engines: {node: '>=16'} + dev: false + + /markdown-table@3.0.3: + resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} + dev: false + + /mdast-util-directive@3.0.0: + resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==} + dependencies: + '@types/mdast': 4.0.2 + '@types/unist': 3.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-visit-parents: 6.0.1 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-find-and-replace@3.0.1: + resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} + dependencies: + '@types/mdast': 4.0.2 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + dev: false + + /mdast-util-from-markdown@2.0.0: + resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==} + dependencies: + '@types/mdast': 4.0.2 + '@types/unist': 3.0.1 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-decode-string: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-frontmatter@2.0.1: + resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} + dependencies: + '@types/mdast': 4.0.2 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-autolink-literal@2.0.0: + resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==} + dependencies: + '@types/mdast': 4.0.2 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.1 + micromark-util-character: 2.0.1 + dev: false + + /mdast-util-gfm-footnote@2.0.0: + resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} + dependencies: + '@types/mdast': 4.0.2 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + micromark-util-normalize-identifier: 2.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + dependencies: + '@types/mdast': 4.0.2 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + dependencies: + '@types/mdast': 4.0.2 + devlop: 1.1.0 + markdown-table: 3.0.3 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + dependencies: + '@types/mdast': 4.0.2 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm@3.0.0: + resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} + dependencies: + mdast-util-from-markdown: 2.0.0 + mdast-util-gfm-autolink-literal: 2.0.0 + mdast-util-gfm-footnote: 2.0.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-math@3.0.0: + resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} + dependencies: + '@types/hast': 3.0.2 + '@types/mdast': 4.0.2 + devlop: 1.1.0 + longest-streak: 3.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + unist-util-remove-position: 5.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-expression@2.0.0: + resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} + dependencies: + '@types/estree-jsx': 1.0.2 + '@types/hast': 3.0.2 + '@types/mdast': 4.0.2 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-jsx@3.0.0: + resolution: {integrity: sha512-XZuPPzQNBPAlaqsTTgRrcJnyFbSOBovSadFgbFu8SnuNgm+6Bdx1K+IWoitsmj6Lq6MNtI+ytOqwN70n//NaBA==} + dependencies: + '@types/estree-jsx': 1.0.2 + '@types/hast': 3.0.2 + '@types/mdast': 4.0.2 + '@types/unist': 3.0.1 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-remove-position: 5.0.0 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.2 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx@3.0.0: + resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==} + dependencies: + mdast-util-from-markdown: 2.0.0 + mdast-util-mdx-expression: 2.0.0 + mdast-util-mdx-jsx: 3.0.0 + mdast-util-mdxjs-esm: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdxjs-esm@2.0.1: + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} + dependencies: + '@types/estree-jsx': 1.0.2 + '@types/hast': 3.0.2 + '@types/mdast': 4.0.2 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-phrasing@4.0.0: + resolution: {integrity: sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==} + dependencies: + '@types/mdast': 4.0.2 + unist-util-is: 6.0.0 + dev: false + + /mdast-util-to-hast@13.0.2: + resolution: {integrity: sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==} + dependencies: + '@types/hast': 3.0.2 + '@types/mdast': 4.0.2 + '@ungap/structured-clone': 1.2.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.0 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + dev: false + + /mdast-util-to-markdown@2.1.0: + resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + dependencies: + '@types/mdast': 4.0.2 + '@types/unist': 3.0.1 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.0.0 + mdast-util-to-string: 4.0.0 + micromark-util-decode-string: 2.0.0 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + dev: false + + /mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + dependencies: + '@types/mdast': 4.0.2 + dev: false + + /mdn-data@2.0.14: + resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + dev: false + + /media-typer@0.3.0: + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} + engines: {node: '>= 0.6'} + dev: false + + /memfs@3.5.3: + resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} + engines: {node: '>= 4.0.0'} + dependencies: + fs-monkey: 1.0.5 + dev: false + + /merge-descriptors@1.0.1: + resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} + dev: false + + /merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + /merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: false + + /methods@1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} + engines: {node: '>= 0.6'} + dev: false + + /micromark-core-commonmark@2.0.0: + resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==} + dependencies: + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-factory-destination: 2.0.0 + micromark-factory-label: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-factory-title: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-html-tag-name: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-subtokenize: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-directive@3.0.0: + resolution: {integrity: sha512-61OI07qpQrERc+0wEysLHMvoiO3s2R56x5u7glHq2Yqq6EHbH4dW25G9GfDdGCDYqA21KE6DWgNSzxSwHc2hSg==} + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + parse-entities: 4.0.1 + dev: false + + /micromark-extension-frontmatter@2.0.0: + resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} + dependencies: + fault: 2.0.1 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm-autolink-literal@2.0.0: + resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm-footnote@2.0.0: + resolution: {integrity: sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==} + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==} + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm-table@2.0.0: + resolution: {integrity: sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==} + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + dependencies: + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm-task-list-item@2.0.1: + resolution: {integrity: sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==} + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + dependencies: + micromark-extension-gfm-autolink-literal: 2.0.0 + micromark-extension-gfm-footnote: 2.0.0 + micromark-extension-gfm-strikethrough: 2.0.0 + micromark-extension-gfm-table: 2.0.0 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.0.1 + micromark-util-combine-extensions: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-math@3.0.0: + resolution: {integrity: sha512-iJ2Q28vBoEovLN5o3GO12CpqorQRYDPT+p4zW50tGwTfJB+iv/VnB6Ini+gqa24K97DwptMBBIvVX6Bjk49oyQ==} + dependencies: + '@types/katex': 0.16.5 + devlop: 1.1.0 + katex: 0.16.9 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-mdx-expression@3.0.0: + resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} + dependencies: + '@types/estree': 1.0.4 + devlop: 1.1.0 + micromark-factory-mdx-expression: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-mdx-jsx@3.0.0: + resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.4 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + micromark-factory-mdx-expression: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + vfile-message: 4.0.2 + dev: false + + /micromark-extension-mdx-md@2.0.0: + resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==} + dependencies: + micromark-util-types: 2.0.0 + dev: false + + /micromark-extension-mdxjs-esm@3.0.0: + resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==} + dependencies: + '@types/estree': 1.0.4 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + dev: false + + /micromark-extension-mdxjs@3.0.0: + resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==} + dependencies: + acorn: 8.11.2 + acorn-jsx: 5.3.2(acorn@8.11.2) + micromark-extension-mdx-expression: 3.0.0 + micromark-extension-mdx-jsx: 3.0.0 + micromark-extension-mdx-md: 2.0.0 + micromark-extension-mdxjs-esm: 3.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-factory-destination@2.0.0: + resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-factory-label@2.0.0: + resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false + + /micromark-factory-mdx-expression@2.0.1: + resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==} + dependencies: + '@types/estree': 1.0.4 + devlop: 1.1.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + dev: false + + /micromark-factory-space@1.1.0: + resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-factory-space@2.0.0: + resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-types: 2.0.0 dev: false - /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true + /micromark-factory-title@2.0.0: + resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} dependencies: - js-tokens: 4.0.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: false - /lower-case@2.0.2: - resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} + /micromark-factory-whitespace@2.0.0: + resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} dependencies: - tslib: 2.6.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 dev: false - /lowercase-keys@1.0.1: - resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} - engines: {node: '>=0.10.0'} + /micromark-util-character@1.2.0: + resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==} + dependencies: + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 dev: false - /lowercase-keys@2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} + /micromark-util-character@2.0.1: + resolution: {integrity: sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==} + dependencies: + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 dev: false - /lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + /micromark-util-chunked@2.0.0: + resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} dependencies: - yallist: 3.1.1 + micromark-util-symbol: 2.0.0 dev: false - /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} + /micromark-util-classify-character@2.0.0: + resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} dependencies: - yallist: 4.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 dev: false - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} + /micromark-util-combine-extensions@2.0.0: + resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} dependencies: - semver: 6.3.1 + micromark-util-chunked: 2.0.0 + micromark-util-types: 2.0.0 dev: false - /markdown-escapes@1.0.4: - resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} + /micromark-util-decode-numeric-character-reference@2.0.1: + resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} + dependencies: + micromark-util-symbol: 2.0.0 dev: false - /mdast-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==} + /micromark-util-decode-string@2.0.0: + resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} dependencies: - unist-util-remove: 2.1.0 + decode-named-character-reference: 1.0.2 + micromark-util-character: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-symbol: 2.0.0 dev: false - /mdast-util-definitions@4.0.0: - resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==} - dependencies: - unist-util-visit: 2.0.3 + /micromark-util-encode@2.0.0: + resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} dev: false - /mdast-util-to-hast@10.0.1: - resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==} + /micromark-util-events-to-acorn@2.0.2: + resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} dependencies: - '@types/mdast': 3.0.12 - '@types/unist': 2.0.7 - mdast-util-definitions: 4.0.0 - mdurl: 1.0.1 - unist-builder: 2.0.3 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 + '@types/acorn': 4.0.6 + '@types/estree': 1.0.4 + '@types/unist': 3.0.1 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + vfile-message: 4.0.2 dev: false - /mdast-util-to-string@2.0.0: - resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} + /micromark-util-html-tag-name@2.0.0: + resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} dev: false - /mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + /micromark-util-normalize-identifier@2.0.0: + resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} + dependencies: + micromark-util-symbol: 2.0.0 dev: false - /mdurl@1.0.1: - resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} + /micromark-util-resolve-all@2.0.0: + resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} + dependencies: + micromark-util-types: 2.0.0 dev: false - /media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} + /micromark-util-sanitize-uri@2.0.0: + resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-encode: 2.0.0 + micromark-util-symbol: 2.0.0 dev: false - /memfs@3.5.3: - resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} - engines: {node: '>= 4.0.0'} + /micromark-util-subtokenize@2.0.0: + resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==} dependencies: - fs-monkey: 1.0.4 + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 dev: false - /merge-descriptors@1.0.1: - resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} + /micromark-util-symbol@1.1.0: + resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==} dev: false - /merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + /micromark-util-symbol@2.0.0: + resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + dev: false - /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} + /micromark-util-types@1.1.0: + resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==} dev: false - /methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} + /micromark-util-types@2.0.0: + resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + dev: false + + /micromark@4.0.0: + resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} + dependencies: + '@types/debug': 4.1.10 + debug: 4.3.4 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-chunked: 2.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-encode: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-subtokenize: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + transitivePeerDependencies: + - supports-color dev: false /micromatch@4.0.5: @@ -5909,19 +6731,24 @@ packages: engines: {node: '>=6'} dev: false - /mimic-response@1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} + /mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + dev: false + + /mimic-response@4.0.0: + resolution: {integrity: sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false - /mini-css-extract-plugin@2.7.6(webpack@5.88.2): + /mini-css-extract-plugin@2.7.6(webpack@5.89.0): resolution: {integrity: sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 dependencies: schema-utils: 4.2.0 - webpack: 5.88.2 + webpack: 5.89.0 dev: false /minimalistic-assert@1.0.1: @@ -5959,7 +6786,7 @@ packages: resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} hasBin: true dependencies: - dns-packet: 5.6.0 + dns-packet: 5.6.1 thunky: 1.1.0 dev: false @@ -5981,17 +6808,20 @@ packages: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} dependencies: lower-case: 2.0.2 - tslib: 2.6.0 + tslib: 2.6.2 dev: false - /node-emoji@1.11.0: - resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} + /node-emoji@2.1.0: + resolution: {integrity: sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==} dependencies: - lodash: 4.17.21 + '@sindresorhus/is': 3.1.2 + char-regex: 1.0.2 + emojilib: 2.4.0 + skin-tone: 2.0.0 dev: false - /node-fetch@2.6.12: - resolution: {integrity: sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==} + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} peerDependencies: encoding: ^0.1.0 @@ -6020,16 +6850,16 @@ packages: engines: {node: '>=0.10.0'} dev: false - /normalize-url@4.5.1: - resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} - engines: {node: '>=8'} - dev: false - /normalize-url@6.1.0: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} dev: false + /normalize-url@8.0.0: + resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} + engines: {node: '>=14.16'} + dev: false + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -6051,8 +6881,8 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - /object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} + /object-inspect@1.13.1: + resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} dev: false /object-keys@1.1.1: @@ -6064,8 +6894,8 @@ packages: resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 + call-bind: 1.0.5 + define-properties: 1.2.1 has-symbols: 1.0.3 object-keys: 1.1.1 dev: false @@ -6113,9 +6943,9 @@ packages: hasBin: true dev: false - /p-cancelable@1.1.0: - resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} - engines: {node: '>=6'} + /p-cancelable@3.0.0: + resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} + engines: {node: '>=12.20'} dev: false /p-limit@2.3.0: @@ -6132,16 +6962,16 @@ packages: yocto-queue: 0.1.0 dev: false - /p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} + /p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - p-limit: 2.3.0 + yocto-queue: 1.0.0 dev: false - /p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} + /p-locate@3.0.0: + resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} + engines: {node: '>=6'} dependencies: p-limit: 2.3.0 dev: false @@ -6153,6 +6983,13 @@ packages: p-limit: 3.1.0 dev: false + /p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-limit: 4.0.0 + dev: false + /p-map@4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} @@ -6173,21 +7010,21 @@ packages: engines: {node: '>=6'} dev: false - /package-json@6.5.0: - resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} - engines: {node: '>=8'} + /package-json@8.1.1: + resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==} + engines: {node: '>=14.16'} dependencies: - got: 9.6.0 - registry-auth-token: 4.2.2 - registry-url: 5.1.0 - semver: 6.3.1 + got: 12.6.1 + registry-auth-token: 5.0.2 + registry-url: 6.0.1 + semver: 7.5.4 dev: false /param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} dependencies: dot-case: 3.0.4 - tslib: 2.6.0 + tslib: 2.6.2 dev: false /parent-module@1.0.1: @@ -6197,22 +7034,24 @@ packages: callsites: 3.1.0 dev: false - /parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} + /parse-entities@4.0.1: + resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 + '@types/unist': 2.0.9 + character-entities: 2.0.2 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 dev: false /parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.22.13 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -6229,10 +7068,6 @@ packages: parse5: 7.1.2 dev: false - /parse5@6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - dev: false - /parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} dependencies: @@ -6248,7 +7083,7 @@ packages: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} dependencies: no-case: 3.0.4 - tslib: 2.6.0 + tslib: 2.6.2 dev: false /path-exists@3.0.0: @@ -6261,6 +7096,11 @@ packages: engines: {node: '>=8'} dev: false + /path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false + /path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} @@ -6298,6 +7138,14 @@ packages: engines: {node: '>=8'} dev: false + /periscopic@3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + dependencies: + '@types/estree': 1.0.4 + estree-walker: 3.0.3 + is-reference: 3.0.2 + dev: false + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} @@ -6306,11 +7154,11 @@ packages: engines: {node: '>=8.6'} dev: false - /pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} + /pkg-dir@7.0.0: + resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} + engines: {node: '>=14.16'} dependencies: - find-up: 4.1.0 + find-up: 6.3.0 dev: false /pkg-up@3.1.0: @@ -6320,350 +7168,352 @@ packages: find-up: 3.0.0 dev: false - /postcss-calc@8.2.4(postcss@8.4.26): + /postcss-calc@8.2.4(postcss@8.4.31): resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} peerDependencies: postcss: ^8.2.2 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: false - /postcss-colormin@5.3.1(postcss@8.4.26): + /postcss-colormin@5.3.1(postcss@8.4.31): resolution: {integrity: sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 + browserslist: 4.22.1 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-convert-values@5.1.3(postcss@8.4.26): + /postcss-convert-values@5.1.3(postcss@8.4.31): resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 - postcss: 8.4.26 + browserslist: 4.22.1 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-discard-comments@5.1.2(postcss@8.4.26): + /postcss-discard-comments@5.1.2(postcss@8.4.31): resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-discard-duplicates@5.1.0(postcss@8.4.26): + /postcss-discard-duplicates@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-discard-empty@5.1.1(postcss@8.4.26): + /postcss-discard-empty@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-discard-overridden@5.1.0(postcss@8.4.26): + /postcss-discard-overridden@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-discard-unused@5.1.0(postcss@8.4.26): + /postcss-discard-unused@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-selector-parser: 6.0.13 dev: false - /postcss-loader@7.3.3(postcss@8.4.26)(webpack@5.88.2): + /postcss-loader@7.3.3(postcss@8.4.31)(typescript@5.2.2)(webpack@5.89.0): resolution: {integrity: sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==} engines: {node: '>= 14.15.0'} peerDependencies: postcss: ^7.0.0 || ^8.0.1 webpack: ^5.0.0 dependencies: - cosmiconfig: 8.2.0 - jiti: 1.19.1 - postcss: 8.4.26 + cosmiconfig: 8.3.6(typescript@5.2.2) + jiti: 1.21.0 + postcss: 8.4.31 semver: 7.5.4 - webpack: 5.88.2 + webpack: 5.89.0 + transitivePeerDependencies: + - typescript dev: false - /postcss-merge-idents@5.1.1(postcss@8.4.26): + /postcss-merge-idents@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0(postcss@8.4.26) - postcss: 8.4.26 + cssnano-utils: 3.1.0(postcss@8.4.31) + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-merge-longhand@5.1.7(postcss@8.4.26): + /postcss-merge-longhand@5.1.7(postcss@8.4.31): resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 - stylehacks: 5.1.1(postcss@8.4.26) + stylehacks: 5.1.1(postcss@8.4.31) dev: false - /postcss-merge-rules@5.1.4(postcss@8.4.26): + /postcss-merge-rules@5.1.4(postcss@8.4.31): resolution: {integrity: sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 + browserslist: 4.22.1 caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.26) - postcss: 8.4.26 + cssnano-utils: 3.1.0(postcss@8.4.31) + postcss: 8.4.31 postcss-selector-parser: 6.0.13 dev: false - /postcss-minify-font-values@5.1.0(postcss@8.4.26): + /postcss-minify-font-values@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-gradients@5.1.1(postcss@8.4.26): + /postcss-minify-gradients@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: colord: 2.9.3 - cssnano-utils: 3.1.0(postcss@8.4.26) - postcss: 8.4.26 + cssnano-utils: 3.1.0(postcss@8.4.31) + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-params@5.1.4(postcss@8.4.26): + /postcss-minify-params@5.1.4(postcss@8.4.31): resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 - cssnano-utils: 3.1.0(postcss@8.4.26) - postcss: 8.4.26 + browserslist: 4.22.1 + cssnano-utils: 3.1.0(postcss@8.4.31) + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-selectors@5.2.1(postcss@8.4.26): + /postcss-minify-selectors@5.2.1(postcss@8.4.31): resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-selector-parser: 6.0.13 dev: false - /postcss-modules-extract-imports@3.0.0(postcss@8.4.26): + /postcss-modules-extract-imports@3.0.0(postcss@8.4.31): resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-modules-local-by-default@4.0.3(postcss@8.4.26): + /postcss-modules-local-by-default@4.0.3(postcss@8.4.31): resolution: {integrity: sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.26) - postcss: 8.4.26 + icss-utils: 5.1.0(postcss@8.4.31) + postcss: 8.4.31 postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: false - /postcss-modules-scope@3.0.0(postcss@8.4.26): + /postcss-modules-scope@3.0.0(postcss@8.4.31): resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-selector-parser: 6.0.13 dev: false - /postcss-modules-values@4.0.0(postcss@8.4.26): + /postcss-modules-values@4.0.0(postcss@8.4.31): resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.26) - postcss: 8.4.26 + icss-utils: 5.1.0(postcss@8.4.31) + postcss: 8.4.31 dev: false - /postcss-normalize-charset@5.1.0(postcss@8.4.26): + /postcss-normalize-charset@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-normalize-display-values@5.1.0(postcss@8.4.26): + /postcss-normalize-display-values@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-positions@5.1.1(postcss@8.4.26): + /postcss-normalize-positions@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-repeat-style@5.1.1(postcss@8.4.26): + /postcss-normalize-repeat-style@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-string@5.1.0(postcss@8.4.26): + /postcss-normalize-string@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-timing-functions@5.1.0(postcss@8.4.26): + /postcss-normalize-timing-functions@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-unicode@5.1.1(postcss@8.4.26): + /postcss-normalize-unicode@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 - postcss: 8.4.26 + browserslist: 4.22.1 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-url@5.1.0(postcss@8.4.26): + /postcss-normalize-url@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: normalize-url: 6.1.0 - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-whitespace@5.1.1(postcss@8.4.26): + /postcss-normalize-whitespace@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-ordered-values@5.1.3(postcss@8.4.26): + /postcss-ordered-values@5.1.3(postcss@8.4.31): resolution: {integrity: sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0(postcss@8.4.26) - postcss: 8.4.26 + cssnano-utils: 3.1.0(postcss@8.4.31) + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-idents@5.2.0(postcss@8.4.26): + /postcss-reduce-idents@5.2.0(postcss@8.4.31): resolution: {integrity: sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-initial@5.1.2(postcss@8.4.26): + /postcss-reduce-initial@5.1.2(postcss@8.4.31): resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 + browserslist: 4.22.1 caniuse-api: 3.0.0 - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss-reduce-transforms@5.1.0(postcss@8.4.26): + /postcss-reduce-transforms@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 dev: false @@ -6675,34 +7525,34 @@ packages: util-deprecate: 1.0.2 dev: false - /postcss-sort-media-queries@4.4.1(postcss@8.4.26): + /postcss-sort-media-queries@4.4.1(postcss@8.4.31): resolution: {integrity: sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==} engines: {node: '>=10.0.0'} peerDependencies: postcss: ^8.4.16 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 sort-css-media-queries: 2.1.0 dev: false - /postcss-svgo@5.1.0(postcss@8.4.26): + /postcss-svgo@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: false - /postcss-unique-selectors@5.1.1(postcss@8.4.26): + /postcss-unique-selectors@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 postcss-selector-parser: 6.0.13 dev: false @@ -6710,17 +7560,17 @@ packages: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} dev: false - /postcss-zindex@5.1.0(postcss@8.4.26): + /postcss-zindex@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.26 + postcss: 8.4.31 dev: false - /postcss@8.4.26: - resolution: {integrity: sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==} + /postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.6 @@ -6728,11 +7578,6 @@ packages: source-map-js: 1.0.2 dev: false - /prepend-http@2.0.0: - resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==} - engines: {node: '>=4'} - dev: false - /pretty-error@4.0.0: resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} dependencies: @@ -6745,12 +7590,14 @@ packages: engines: {node: '>=4'} dev: false - /prism-react-renderer@1.3.5(react@17.0.2): - resolution: {integrity: sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==} + /prism-react-renderer@2.1.0(react@18.2.0): + resolution: {integrity: sha512-I5cvXHjA1PVGbGm1MsWCpvBCRrYyxEri0MC7/JbfIfYfcXAxHyO5PaUjs3A8H5GW6kJcLhTHxxMaOZZpRZD2iQ==} peerDependencies: - react: '>=0.14.9' + react: '>=16.0.0' dependencies: - react: 17.0.2 + '@types/prismjs': 1.26.2 + clsx: 1.2.1 + react: 18.2.0 dev: false /prismjs@1.29.0: @@ -6783,10 +7630,12 @@ packages: object-assign: 4.1.1 react-is: 16.13.1 - /property-information@5.6.0: - resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} - dependencies: - xtend: 4.0.2 + /property-information@6.3.0: + resolution: {integrity: sha512-gVNZ74nqhRMiIUYWGQdosYetaKc83x8oT41a0LlV3AAFCAZwCpg4vmGkq8t34+cUhp3cnM4XDiU/7xlgK7HGrg==} + dev: false + + /proto-list@1.2.4: + resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} dev: false /proxy-addr@2.0.7: @@ -6797,26 +7646,19 @@ packages: ipaddr.js: 1.9.1 dev: false - /pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - dev: false - /punycode@1.4.1: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} dev: false - /punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - /pupa@2.1.1: - resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==} - engines: {node: '>=8'} + /pupa@3.1.0: + resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==} + engines: {node: '>=12.20'} dependencies: - escape-goat: 2.1.1 + escape-goat: 4.0.0 dev: false /pure-color@1.3.0: @@ -6840,6 +7682,11 @@ packages: inherits: 2.0.4 dev: false + /quick-lru@5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + dev: false + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: @@ -6884,7 +7731,7 @@ packages: pure-color: 1.3.0 dev: false - /react-dev-utils@12.0.1(typescript@5.2.2)(webpack@5.88.2): + /react-dev-utils@12.0.1(typescript@5.2.2)(webpack@5.89.0): resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} engines: {node: '>=14'} peerDependencies: @@ -6894,16 +7741,16 @@ packages: typescript: optional: true dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.22.13 address: 1.2.2 - browserslist: 4.21.10 + browserslist: 4.22.1 chalk: 4.1.2 cross-spawn: 7.0.3 detect-port-alt: 1.1.6 escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.2.2)(webpack@5.88.2) + fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.2.2)(webpack@5.89.0) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -6919,22 +7766,21 @@ packages: strip-ansi: 6.0.1 text-table: 0.2.0 typescript: 5.2.2 - webpack: 5.88.2 + webpack: 5.89.0 transitivePeerDependencies: - eslint - supports-color - vue-template-compiler dev: false - /react-dom@17.0.2(react@17.0.2): - resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} + /react-dom@18.2.0(react@18.2.0): + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: - react: 17.0.2 + react: ^18.2.0 dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 - react: 17.0.2 - scheduler: 0.20.2 + react: 18.2.0 + scheduler: 0.23.0 /react-error-overlay@6.0.11: resolution: {integrity: sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==} @@ -6943,119 +7789,101 @@ packages: /react-fast-compare@3.2.2: resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==} - /react-helmet-async@1.3.0(react-dom@17.0.2)(react@17.0.2): + /react-helmet-async@1.3.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==} peerDependencies: react: ^16.6.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.6.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.2 invariant: 2.2.4 prop-types: 15.8.1 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) react-fast-compare: 3.2.2 shallowequal: 1.1.0 /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - /react-json-view@1.21.3(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==} - peerDependencies: - react: ^17.0.0 || ^16.3.0 || ^15.5.4 - react-dom: ^17.0.0 || ^16.3.0 || ^15.5.4 - dependencies: - flux: 4.0.4(react@17.0.2) - react: 17.0.2 - react-base16-styling: 0.6.0 - react-dom: 17.0.2(react@17.0.2) - react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.5.2(react@17.0.2) - transitivePeerDependencies: - - '@types/react' - - encoding - dev: false - /react-lifecycles-compat@3.0.4: resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} dev: false - /react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.88.2): + /react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.89.0): resolution: {integrity: sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==} engines: {node: '>=10.13.0'} peerDependencies: react-loadable: '*' webpack: '>=4.41.1 || 5.x' dependencies: - '@babel/runtime': 7.22.6 - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) - webpack: 5.88.2 + '@babel/runtime': 7.23.2 + react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) + webpack: 5.89.0 dev: false - /react-router-config@5.1.1(react-router@5.3.4)(react@17.0.2): + /react-router-config@5.1.1(react-router@5.3.4)(react@18.2.0): resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} peerDependencies: react: '>=15' react-router: '>=5' dependencies: - '@babel/runtime': 7.22.6 - react: 17.0.2 - react-router: 5.3.4(react@17.0.2) + '@babel/runtime': 7.23.2 + react: 18.2.0 + react-router: 5.3.4(react@18.2.0) dev: false - /react-router-dom@5.3.4(react@17.0.2): + /react-router-dom@5.3.4(react@18.2.0): resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==} peerDependencies: react: '>=15' dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.2 history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 17.0.2 - react-router: 5.3.4(react@17.0.2) + react: 18.2.0 + react-router: 5.3.4(react@18.2.0) tiny-invariant: 1.3.1 tiny-warning: 1.0.3 dev: false - /react-router@5.3.4(react@17.0.2): + /react-router@5.3.4(react@18.2.0): resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==} peerDependencies: react: '>=15' dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.2 history: 4.10.1 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 path-to-regexp: 1.8.0 prop-types: 15.8.1 - react: 17.0.2 + react: 18.2.0 react-is: 16.13.1 tiny-invariant: 1.3.1 tiny-warning: 1.0.3 dev: false - /react-textarea-autosize@8.5.2(react@17.0.2): - resolution: {integrity: sha512-uOkyjkEl0ByEK21eCJMHDGBAAd/BoFQBawYK5XItjAmCTeSbjxghd8qnt7nzsLYzidjnoObu6M26xts0YGKsGg==} + /react-textarea-autosize@8.3.4(@types/react@18.2.33)(react@18.2.0): + resolution: {integrity: sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==} engines: {node: '>=10'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.22.6 - react: 17.0.2 - use-composed-ref: 1.3.0(react@17.0.2) - use-latest: 1.2.1(react@17.0.2) + '@babel/runtime': 7.23.2 + react: 18.2.0 + use-composed-ref: 1.3.0(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.33)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false - /react@17.0.2: - resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} + /react@18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 /readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} @@ -7093,7 +7921,7 @@ packages: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} dependencies: - resolve: 1.22.2 + resolve: 1.22.8 dev: false /recursive-readdir@2.2.3: @@ -7103,8 +7931,8 @@ packages: minimatch: 3.1.2 dev: false - /regenerate-unicode-properties@10.1.0: - resolution: {integrity: sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==} + /regenerate-unicode-properties@10.1.1: + resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} engines: {node: '>=4'} dependencies: regenerate: 1.4.2 @@ -7114,13 +7942,13 @@ packages: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: false - /regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + /regenerator-runtime@0.14.0: + resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - /regenerator-transform@0.15.1: - resolution: {integrity: sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==} + /regenerator-transform@0.15.2: + resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.2 dev: false /regexpu-core@5.3.2: @@ -7129,22 +7957,22 @@ packages: dependencies: '@babel/regjsgen': 0.8.0 regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.0 + regenerate-unicode-properties: 10.1.1 regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.1.0 dev: false - /registry-auth-token@4.2.2: - resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==} - engines: {node: '>=6.0.0'} + /registry-auth-token@5.0.2: + resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} + engines: {node: '>=14'} dependencies: - rc: 1.2.8 + '@pnpm/npm-conf': 2.2.2 dev: false - /registry-url@5.1.0: - resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==} - engines: {node: '>=8'} + /registry-url@6.0.1: + resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==} + engines: {node: '>=12'} dependencies: rc: 1.2.8 dev: false @@ -7156,63 +7984,124 @@ packages: jsesc: 0.5.0 dev: false + /rehype-katex@7.0.0: + resolution: {integrity: sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==} + dependencies: + '@types/hast': 3.0.2 + '@types/katex': 0.16.5 + hast-util-from-html-isomorphic: 2.0.0 + hast-util-to-text: 4.0.0 + katex: 0.16.9 + unist-util-visit-parents: 6.0.1 + vfile: 6.0.1 + dev: false + + /rehype-raw@7.0.0: + resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + dependencies: + '@types/hast': 3.0.2 + hast-util-raw: 9.0.1 + vfile: 6.0.1 + dev: false + /relateurl@0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} dev: false - /remark-emoji@2.2.0: - resolution: {integrity: sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==} + /remark-directive@3.0.0: + resolution: {integrity: sha512-l1UyWJ6Eg1VPU7Hm/9tt0zKtReJQNOA4+iDMAxTyZNWnJnFlbS/7zhiel/rogTLQ2vMYwDzSJa4BiVNqGlqIMA==} + dependencies: + '@types/mdast': 4.0.2 + mdast-util-directive: 3.0.0 + micromark-extension-directive: 3.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-emoji@4.0.1: + resolution: {integrity: sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + '@types/mdast': 4.0.2 + emoticon: 4.0.1 + mdast-util-find-and-replace: 3.0.1 + node-emoji: 2.1.0 + unified: 11.0.4 + dev: false + + /remark-frontmatter@5.0.0: + resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==} + dependencies: + '@types/mdast': 4.0.2 + mdast-util-frontmatter: 2.0.1 + micromark-extension-frontmatter: 2.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-gfm@4.0.0: + resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} + dependencies: + '@types/mdast': 4.0.2 + mdast-util-gfm: 3.0.0 + micromark-extension-gfm: 3.0.0 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-math@6.0.0: + resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==} dependencies: - emoticon: 3.2.0 - node-emoji: 1.11.0 - unist-util-visit: 2.0.3 + '@types/mdast': 4.0.2 + mdast-util-math: 3.0.0 + micromark-extension-math: 3.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color dev: false - /remark-footnotes@2.0.0: - resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==} + /remark-mdx@3.0.0: + resolution: {integrity: sha512-O7yfjuC6ra3NHPbRVxfflafAj3LTwx3b73aBvkEFU5z4PsD6FD4vrqJAkE5iNGLz71GdjXfgRqm3SQ0h0VuE7g==} + dependencies: + mdast-util-mdx: 3.0.0 + micromark-extension-mdxjs: 3.0.0 + transitivePeerDependencies: + - supports-color dev: false - /remark-mdx@1.6.22: - resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==} + /remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-proposal-object-rest-spread': 7.12.1(@babel/core@7.12.9) - '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) - '@mdx-js/util': 1.6.22 - is-alphabetical: 1.0.4 - remark-parse: 8.0.3 - unified: 9.2.0 + '@types/mdast': 4.0.2 + mdast-util-from-markdown: 2.0.0 + micromark-util-types: 2.0.0 + unified: 11.0.4 transitivePeerDependencies: - supports-color dev: false - /remark-parse@8.0.3: - resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==} + /remark-rehype@11.0.0: + resolution: {integrity: sha512-vx8x2MDMcxuE4lBmQ46zYUDfcFMmvg80WYX+UNLeG6ixjdCCLcw1lrgAukwBTuOFsS78eoAedHGn9sNM0w7TPw==} dependencies: - ccount: 1.1.0 - collapse-white-space: 1.0.6 - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - is-whitespace-character: 1.0.4 - is-word-character: 1.0.4 - markdown-escapes: 1.0.4 - parse-entities: 2.0.0 - repeat-string: 1.6.1 - state-toggle: 1.0.3 - trim: 0.0.1 - trim-trailing-lines: 1.1.4 - unherit: 1.1.3 - unist-util-remove-position: 2.0.1 - vfile-location: 3.2.0 - xtend: 4.0.2 + '@types/hast': 3.0.2 + '@types/mdast': 4.0.2 + mdast-util-to-hast: 13.0.2 + unified: 11.0.4 + vfile: 6.0.1 dev: false - /remark-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==} + /remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} dependencies: - mdast-squeeze-paragraphs: 4.0.0 + '@types/mdast': 4.0.2 + mdast-util-to-markdown: 2.1.0 + unified: 11.0.4 dev: false /renderkid@3.0.0: @@ -7225,11 +8114,6 @@ packages: strip-ansi: 6.0.1 dev: false - /repeat-string@1.6.1: - resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} - engines: {node: '>=0.10'} - dev: false - /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} @@ -7243,6 +8127,10 @@ packages: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} dev: false + /resolve-alpn@1.2.1: + resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} + dev: false + /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -7252,19 +8140,20 @@ packages: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==} dev: false - /resolve@1.22.2: - resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} + /resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true dependencies: - is-core-module: 2.12.1 + is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: false - /responselike@1.0.2: - resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} + /responselike@3.0.0: + resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} + engines: {node: '>=14.16'} dependencies: - lowercase-keys: 1.0.1 + lowercase-keys: 3.0.0 dev: false /retry@0.13.1: @@ -7284,17 +8173,18 @@ packages: glob: 7.2.3 dev: false - /rtl-detect@1.0.4: - resolution: {integrity: sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==} + /rtl-detect@1.1.2: + resolution: {integrity: sha512-PGMBq03+TTG/p/cRB7HCLKJ1MgDIi07+QU1faSjiYRfmY5UsAttV9Hs08jDAHVwcOwmVLcSJkpwyfXszVjWfIQ==} dev: false - /rtlcss@3.5.0: - resolution: {integrity: sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==} + /rtlcss@4.1.1: + resolution: {integrity: sha512-/oVHgBtnPNcggP2aVXQjSy6N1mMAfHg4GSag0QtZBlD5bdDgAHwr4pydqJGd+SUCu9260+Pjqbjwtvu7EMH1KQ==} + engines: {node: '>=12.0.0'} hasBin: true dependencies: - find-up: 5.0.0 + escalade: 3.1.1 picocolors: 1.0.0 - postcss: 8.4.26 + postcss: 8.4.31 strip-json-comments: 3.1.1 dev: false @@ -7307,7 +8197,7 @@ packages: /rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} dependencies: - tslib: 2.6.0 + tslib: 2.6.2 dev: false /safe-buffer@5.1.2: @@ -7321,7 +8211,7 @@ packages: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: false - /sass-loader@10.4.1(sass@1.69.5)(webpack@5.88.2): + /sass-loader@10.4.1(sass@1.69.5)(webpack@5.89.0): resolution: {integrity: sha512-aX/iJZTTpNUNx/OSYzo2KsjIUQHqvWsAhhUijFjAPdZTEhstjZI9zTNvkTTwsx+uNUJqUwOw5gacxQMx4hJxGQ==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -7343,7 +8233,7 @@ packages: sass: 1.69.5 schema-utils: 3.3.0 semver: 7.5.4 - webpack: 5.88.2 + webpack: 5.89.0 dev: false /sass@1.69.5: @@ -7352,34 +8242,24 @@ packages: hasBin: true dependencies: chokidar: 3.5.3 - immutable: 4.3.1 + immutable: 4.3.4 source-map-js: 1.0.2 dev: false - /sax@1.2.4: - resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} + /sax@1.3.0: + resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==} dev: false - /scheduler@0.20.2: - resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} + /scheduler@0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 /schema-utils@2.7.0: resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==} engines: {node: '>= 8.9.0'} dependencies: - '@types/json-schema': 7.0.12 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - dev: false - - /schema-utils@2.7.1: - resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} - engines: {node: '>= 8.9.0'} - dependencies: - '@types/json-schema': 7.0.12 + '@types/json-schema': 7.0.14 ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) dev: false @@ -7388,7 +8268,7 @@ packages: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/json-schema': 7.0.12 + '@types/json-schema': 7.0.14 ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) @@ -7396,15 +8276,14 @@ packages: resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} engines: {node: '>= 12.13.0'} dependencies: - '@types/json-schema': 7.0.12 + '@types/json-schema': 7.0.14 ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) ajv-keywords: 5.1.0(ajv@8.12.0) dev: false - /search-insights@2.7.0: - resolution: {integrity: sha512-GLbVaGgzYEKMvuJbHRhLi1qoBFnjXZGZ6l4LxOYPCp4lI2jDRB3jPU9/XNhMwv6kvnA9slTreq6pvK+b3o3aqg==} - engines: {node: '>=8.16.0'} + /search-insights@2.9.0: + resolution: {integrity: sha512-bkWW9nIHOFkLwjQ1xqVaMbjjO5vhP26ERsH9Y3pKr8imthofEFIxlnOabkmGcw6ksRj9jWidcI65vvjJH/nTGg==} dev: false /section-matter@1.0.0: @@ -7419,23 +8298,19 @@ packages: resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==} dev: false - /selfsigned@2.1.1: - resolution: {integrity: sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==} + /selfsigned@2.4.1: + resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==} engines: {node: '>=10'} dependencies: + '@types/node-forge': 1.3.8 node-forge: 1.3.1 dev: false - /semver-diff@3.1.1: - resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==} - engines: {node: '>=8'} + /semver-diff@4.0.0: + resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} + engines: {node: '>=12'} dependencies: - semver: 6.3.1 - dev: false - - /semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true + semver: 7.5.4 dev: false /semver@6.3.1: @@ -7517,6 +8392,16 @@ packages: - supports-color dev: false + /set-function-length@1.1.1: + resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.1 + get-intrinsic: 1.2.2 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 + dev: false + /setimmediate@1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} dev: false @@ -7567,22 +8452,22 @@ packages: /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - object-inspect: 1.12.3 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 + object-inspect: 1.13.1 dev: false /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: false - /sirv@1.0.19: - resolution: {integrity: sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==} + /sirv@2.0.3: + resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} engines: {node: '>= 10'} dependencies: - '@polka/url': 1.0.0-next.21 + '@polka/url': 1.0.0-next.23 mrmime: 1.0.1 - totalist: 1.1.0 + totalist: 3.0.1 dev: false /sisteransi@1.0.5: @@ -7595,9 +8480,16 @@ packages: hasBin: true dependencies: '@types/node': 17.0.45 - '@types/sax': 1.2.4 + '@types/sax': 1.2.6 arg: 5.0.2 - sax: 1.2.4 + sax: 1.3.0 + dev: false + + /skin-tone@2.0.0: + resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} + engines: {node: '>=8'} + dependencies: + unicode-emoji-modifier-base: 1.0.0 dev: false /slash@3.0.0: @@ -7634,17 +8526,17 @@ packages: buffer-from: 1.1.2 source-map: 0.6.1 - /source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - dev: false - /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} - /space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} + /source-map@0.7.4: + resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} + engines: {node: '>= 8'} + dev: false + + /space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} dev: false /spdy-transport@3.0.0: @@ -7677,15 +8569,16 @@ packages: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} dev: false + /srcset@4.0.0: + resolution: {integrity: sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==} + engines: {node: '>=12'} + dev: false + /stable@0.1.8: resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' dev: false - /state-toggle@1.0.3: - resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} - dev: false - /statuses@1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} @@ -7696,8 +8589,8 @@ packages: engines: {node: '>= 0.8'} dev: false - /std-env@3.3.3: - resolution: {integrity: sha512-Rz6yejtVyWnVjC1RFvNmYL10kgjC49EOghxWn0RFqlCHGFpQx+Xe7yW3I4ceK1SGrWIGMjD5Kbue8W/udkbMJg==} + /std-env@3.4.3: + resolution: {integrity: sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==} dev: false /string-width@4.2.3: @@ -7730,6 +8623,13 @@ packages: safe-buffer: 5.2.1 dev: false + /stringify-entities@4.0.3: + resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + dev: false + /stringify-object@3.3.0: resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} engines: {node: '>=4'} @@ -7773,20 +8673,20 @@ packages: engines: {node: '>=8'} dev: false - /style-to-object@0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} + /style-to-object@0.4.4: + resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==} dependencies: inline-style-parser: 0.1.1 dev: false - /stylehacks@5.1.1(postcss@8.4.26): + /stylehacks@5.1.1(postcss@8.4.31): resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.10 - postcss: 8.4.26 + browserslist: 4.22.1 + postcss: 8.4.31 postcss-selector-parser: 6.0.13 dev: false @@ -7842,7 +8742,7 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - /terser-webpack-plugin@5.3.9(webpack@5.88.2): + /terser-webpack-plugin@5.3.9(webpack@5.89.0): resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -7858,20 +8758,20 @@ packages: uglify-js: optional: true dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - terser: 5.19.0 - webpack: 5.88.2 + terser: 5.24.0 + webpack: 5.89.0 - /terser@5.19.0: - resolution: {integrity: sha512-JpcpGOQLOXm2jsomozdMDpd5f8ZHh1rR48OFgWUH3QsyZcfPgv2qDCYbcDEAYNd4OZRj2bWYKpwdll/udZCk/Q==} + /terser@5.24.0: + resolution: {integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==} engines: {node: '>=10'} hasBin: true dependencies: '@jridgewell/source-map': 0.3.5 - acorn: 8.10.0 + acorn: 8.11.2 commander: 2.20.3 source-map-support: 0.5.21 @@ -7896,11 +8796,6 @@ packages: engines: {node: '>=4'} dev: false - /to-readable-stream@1.0.0: - resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} - engines: {node: '>=6'} - dev: false - /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -7913,8 +8808,8 @@ packages: engines: {node: '>=0.6'} dev: false - /totalist@1.1.0: - resolution: {integrity: sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==} + /totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} dev: false @@ -7922,25 +8817,20 @@ packages: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false - /trim-trailing-lines@1.1.4: - resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==} - dev: false - - /trim@0.0.1: - resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==} - deprecated: Use String.prototype.trim() instead + /trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} dev: false - /trough@1.0.5: - resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} + /trough@2.1.0: + resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} dev: false - /tslib@2.6.0: - resolution: {integrity: sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==} + /tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: false - /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + /type-fest@1.4.0: + resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} engines: {node: '>=10'} dev: false @@ -7968,22 +8858,23 @@ packages: engines: {node: '>=14.17'} hasBin: true - /ua-parser-js@1.0.35: - resolution: {integrity: sha512-fKnGuqmTBnIE+/KXSzCn4db8RTigUzw1AN0DmdU6hJovUTbYJKyqj+8Mt1c4VfRDnOVJnENmfYkIPZ946UrSAA==} + /ua-parser-js@1.0.37: + resolution: {integrity: sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==} dev: false - /unherit@1.1.3: - resolution: {integrity: sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==} - dependencies: - inherits: 2.0.4 - xtend: 4.0.2 - dev: false + /undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} dev: false + /unicode-emoji-modifier-base@1.0.0: + resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} + engines: {node: '>=4'} + dev: false + /unicode-match-property-ecmascript@2.0.0: resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} engines: {node: '>=4'} @@ -8002,84 +8893,76 @@ packages: engines: {node: '>=4'} dev: false - /unified@9.2.0: - resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} + /unified@11.0.4: + resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==} dependencies: - '@types/unist': 2.0.7 - bail: 1.0.5 + '@types/unist': 3.0.1 + bail: 2.0.2 + devlop: 1.1.0 extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 + is-plain-obj: 4.1.0 + trough: 2.1.0 + vfile: 6.0.1 dev: false - /unified@9.2.2: - resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} + /unique-string@3.0.0: + resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} + engines: {node: '>=12'} dependencies: - '@types/unist': 2.0.7 - bail: 1.0.5 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 + crypto-random-string: 4.0.0 dev: false - /unique-string@2.0.0: - resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} - engines: {node: '>=8'} + /unist-util-find-after@5.0.0: + resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} dependencies: - crypto-random-string: 2.0.0 - dev: false - - /unist-builder@2.0.3: - resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} - dev: false - - /unist-util-generated@1.1.6: - resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} + '@types/unist': 3.0.1 + unist-util-is: 6.0.0 dev: false - /unist-util-is@4.1.0: - resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} + /unist-util-is@6.0.0: + resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + dependencies: + '@types/unist': 3.0.1 dev: false - /unist-util-position@3.1.0: - resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} + /unist-util-position-from-estree@2.0.0: + resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==} + dependencies: + '@types/unist': 3.0.1 dev: false - /unist-util-remove-position@2.0.1: - resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==} + /unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} dependencies: - unist-util-visit: 2.0.3 + '@types/unist': 3.0.1 dev: false - /unist-util-remove@2.1.0: - resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==} + /unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} dependencies: - unist-util-is: 4.1.0 + '@types/unist': 3.0.1 + unist-util-visit: 5.0.0 dev: false - /unist-util-stringify-position@2.0.3: - resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} + /unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 3.0.1 dev: false - /unist-util-visit-parents@3.1.1: - resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} + /unist-util-visit-parents@6.0.1: + resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} dependencies: - '@types/unist': 2.0.7 - unist-util-is: 4.1.0 + '@types/unist': 3.0.1 + unist-util-is: 6.0.0 dev: false - /unist-util-visit@2.0.3: - resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} + /unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} dependencies: - '@types/unist': 2.0.7 - unist-util-is: 4.1.0 - unist-util-visit-parents: 3.1.1 + '@types/unist': 3.0.1 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 dev: false /universalify@2.0.0: @@ -8092,42 +8975,42 @@ packages: engines: {node: '>= 0.8'} dev: false - /update-browserslist-db@1.0.11(browserslist@4.21.10): - resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==} + /update-browserslist-db@1.0.13(browserslist@4.22.1): + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.21.10 + browserslist: 4.22.1 escalade: 3.1.1 picocolors: 1.0.0 - /update-notifier@5.1.0: - resolution: {integrity: sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==} - engines: {node: '>=10'} + /update-notifier@6.0.2: + resolution: {integrity: sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==} + engines: {node: '>=14.16'} dependencies: - boxen: 5.1.2 - chalk: 4.1.2 - configstore: 5.0.1 - has-yarn: 2.1.0 - import-lazy: 2.1.0 - is-ci: 2.0.0 + boxen: 7.1.1 + chalk: 5.3.0 + configstore: 6.0.0 + has-yarn: 3.0.0 + import-lazy: 4.0.0 + is-ci: 3.0.1 is-installed-globally: 0.4.0 - is-npm: 5.0.0 - is-yarn-global: 0.3.0 - latest-version: 5.1.0 - pupa: 2.1.1 + is-npm: 6.0.0 + is-yarn-global: 0.4.1 + latest-version: 7.0.0 + pupa: 3.1.0 semver: 7.5.4 - semver-diff: 3.1.1 - xdg-basedir: 4.0.0 + semver-diff: 4.0.0 + xdg-basedir: 5.1.0 dev: false /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: - punycode: 2.3.0 + punycode: 2.3.1 - /url-loader@4.1.1(file-loader@6.2.0)(webpack@5.88.2): + /url-loader@4.1.1(file-loader@6.2.0)(webpack@5.89.0): resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -8137,29 +9020,22 @@ packages: file-loader: optional: true dependencies: - file-loader: 6.2.0(webpack@5.88.2) + file-loader: 6.2.0(webpack@5.89.0) loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.88.2 - dev: false - - /url-parse-lax@3.0.0: - resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==} - engines: {node: '>=4'} - dependencies: - prepend-http: 2.0.0 + webpack: 5.89.0 dev: false - /use-composed-ref@1.3.0(react@17.0.2): + /use-composed-ref@1.3.0(react@18.2.0): resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - react: 17.0.2 + react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(react@17.0.2): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.33)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -8168,10 +9044,11 @@ packages: '@types/react': optional: true dependencies: - react: 17.0.2 + '@types/react': 18.2.33 + react: 18.2.0 dev: false - /use-latest@1.2.1(react@17.0.2): + /use-latest@1.2.1(@types/react@18.2.33)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -8180,16 +9057,9 @@ packages: '@types/react': optional: true dependencies: - react: 17.0.2 - use-isomorphic-layout-effect: 1.1.2(react@17.0.2) - dev: false - - /use-sync-external-store@1.2.0(react@17.0.2): - resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - dependencies: - react: 17.0.2 + '@types/react': 18.2.33 + react: 18.2.0 + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.33)(react@18.2.0) dev: false /util-deprecate@1.0.2: @@ -8223,33 +9093,35 @@ packages: engines: {node: '>= 0.8'} dev: false - /vfile-location@3.2.0: - resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==} + /vfile-location@5.0.2: + resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} + dependencies: + '@types/unist': 3.0.1 + vfile: 6.0.1 dev: false - /vfile-message@2.0.4: - resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} + /vfile-message@4.0.2: + resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} dependencies: - '@types/unist': 2.0.7 - unist-util-stringify-position: 2.0.3 + '@types/unist': 3.0.1 + unist-util-stringify-position: 4.0.0 dev: false - /vfile@4.2.1: - resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} + /vfile@6.0.1: + resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} dependencies: - '@types/unist': 2.0.7 - is-buffer: 2.0.5 - unist-util-stringify-position: 2.0.3 - vfile-message: 2.0.4 + '@types/unist': 3.0.1 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.2 dev: false - /wait-on@6.0.1: - resolution: {integrity: sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==} - engines: {node: '>=10.0.0'} + /wait-on@7.0.1: + resolution: {integrity: sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==} + engines: {node: '>=12.0.0'} hasBin: true dependencies: - axios: 0.25.0 - joi: 17.9.2 + axios: 0.27.2 + joi: 17.11.0 lodash: 4.17.21 minimist: 1.2.8 rxjs: 7.8.1 @@ -8270,35 +9142,42 @@ packages: minimalistic-assert: 1.0.1 dev: false - /web-namespaces@1.1.4: - resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} + /web-namespaces@2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} dev: false /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: false - /webpack-bundle-analyzer@4.9.0: - resolution: {integrity: sha512-+bXGmO1LyiNx0i9enBu3H8mv42sj/BJWhZNFwjz92tVnBa9J3JMGo2an2IXlEleoDOPn/Hofl5hr/xCpObUDtw==} + /webpack-bundle-analyzer@4.9.1: + resolution: {integrity: sha512-jnd6EoYrf9yMxCyYDPj8eutJvtjQNp8PHmni/e/ulydHBWhT5J3menXt3HEkScsu9YqMAcG4CfFjs3rj5pVU1w==} engines: {node: '>= 10.13.0'} hasBin: true dependencies: '@discoveryjs/json-ext': 0.5.7 - acorn: 8.10.0 - acorn-walk: 8.2.0 - chalk: 4.1.2 + acorn: 8.11.2 + acorn-walk: 8.3.0 commander: 7.2.0 + escape-string-regexp: 4.0.0 gzip-size: 6.0.0 - lodash: 4.17.21 + is-plain-object: 5.0.0 + lodash.debounce: 4.0.8 + lodash.escape: 4.0.1 + lodash.flatten: 4.4.0 + lodash.invokemap: 4.6.0 + lodash.pullall: 4.2.0 + lodash.uniqby: 4.7.0 opener: 1.5.2 - sirv: 1.0.19 + picocolors: 1.0.0 + sirv: 2.0.3 ws: 7.5.9 transitivePeerDependencies: - bufferutil - utf-8-validate dev: false - /webpack-dev-middleware@5.3.3(webpack@5.88.2): + /webpack-dev-middleware@5.3.3(webpack@5.89.0): resolution: {integrity: sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==} engines: {node: '>= 12.13.0'} peerDependencies: @@ -8309,10 +9188,10 @@ packages: mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.88.2 + webpack: 5.89.0 dev: false - /webpack-dev-server@4.15.1(webpack@5.88.2): + /webpack-dev-server@4.15.1(webpack@5.89.0): resolution: {integrity: sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==} engines: {node: '>= 12.13.0'} hasBin: true @@ -8325,13 +9204,13 @@ packages: webpack-cli: optional: true dependencies: - '@types/bonjour': 3.5.10 - '@types/connect-history-api-fallback': 1.5.0 - '@types/express': 4.17.17 - '@types/serve-index': 1.9.1 - '@types/serve-static': 1.15.2 - '@types/sockjs': 0.3.33 - '@types/ws': 8.5.5 + '@types/bonjour': 3.5.12 + '@types/connect-history-api-fallback': 1.5.2 + '@types/express': 4.17.20 + '@types/serve-index': 1.9.3 + '@types/serve-static': 1.15.4 + '@types/sockjs': 0.3.35 + '@types/ws': 8.5.8 ansi-html-community: 0.0.8 bonjour-service: 1.1.1 chokidar: 3.5.3 @@ -8342,20 +9221,20 @@ packages: express: 4.18.2 graceful-fs: 4.2.11 html-entities: 2.4.0 - http-proxy-middleware: 2.0.6(@types/express@4.17.17) + http-proxy-middleware: 2.0.6(@types/express@4.17.20) ipaddr.js: 2.1.0 - launch-editor: 2.6.0 + launch-editor: 2.6.1 open: 8.4.2 p-retry: 4.6.2 rimraf: 3.0.2 schema-utils: 4.2.0 - selfsigned: 2.1.1 + selfsigned: 2.4.1 serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack: 5.88.2 - webpack-dev-middleware: 5.3.3(webpack@5.88.2) - ws: 8.13.0 + webpack: 5.89.0 + webpack-dev-middleware: 5.3.3(webpack@5.89.0) + ws: 8.14.2 transitivePeerDependencies: - bufferutil - debug @@ -8363,19 +9242,20 @@ packages: - utf-8-validate dev: false - /webpack-merge@5.9.0: - resolution: {integrity: sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==} + /webpack-merge@5.10.0: + resolution: {integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==} engines: {node: '>=10.0.0'} dependencies: clone-deep: 4.0.1 + flat: 5.0.2 wildcard: 2.0.1 /webpack-sources@3.2.3: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} - /webpack@5.88.2: - resolution: {integrity: sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==} + /webpack@5.89.0: + resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -8384,17 +9264,17 @@ packages: webpack-cli: optional: true dependencies: - '@types/eslint-scope': 3.7.4 - '@types/estree': 1.0.1 + '@types/eslint-scope': 3.7.6 + '@types/estree': 1.0.4 '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/wasm-edit': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 - acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.21.10 + acorn: 8.11.2 + acorn-import-assertions: 1.9.0(acorn@8.11.2) + browserslist: 4.22.1 chrome-trace-event: 1.0.3 enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + es-module-lexer: 1.3.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -8405,7 +9285,7 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(webpack@5.88.2) + terser-webpack-plugin: 5.3.9(webpack@5.89.0) watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -8413,7 +9293,7 @@ packages: - esbuild - uglify-js - /webpackbar@5.0.2(webpack@5.88.2): + /webpackbar@5.0.2(webpack@5.89.0): resolution: {integrity: sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==} engines: {node: '>=12'} peerDependencies: @@ -8422,8 +9302,8 @@ packages: chalk: 4.1.2 consola: 2.15.3 pretty-time: 1.1.0 - std-env: 3.3.3 - webpack: 5.88.2 + std-env: 3.4.3 + webpack: 5.89.0 dev: false /websocket-driver@0.7.4: @@ -8462,13 +9342,6 @@ packages: isexe: 2.0.0 dev: false - /widest-line@3.1.0: - resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} - engines: {node: '>=8'} - dependencies: - string-width: 4.2.3 - dev: false - /widest-line@4.0.1: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} engines: {node: '>=12'} @@ -8479,15 +9352,6 @@ packages: /wildcard@2.0.1: resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==} - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: false - /wrap-ansi@8.1.0: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} @@ -8523,8 +9387,8 @@ packages: optional: true dev: false - /ws@8.13.0: - resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} + /ws@8.14.2: + resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -8536,21 +9400,16 @@ packages: optional: true dev: false - /xdg-basedir@4.0.0: - resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} - engines: {node: '>=8'} + /xdg-basedir@5.1.0: + resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==} + engines: {node: '>=12'} dev: false /xml-js@1.6.11: resolution: {integrity: sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==} hasBin: true dependencies: - sax: 1.2.4 - dev: false - - /xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} + sax: 1.3.0 dev: false /yallist@3.1.1: @@ -8571,6 +9430,11 @@ packages: engines: {node: '>=10'} dev: false - /zwitch@1.0.5: - resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} + /yocto-queue@1.0.0: + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} + dev: false + + /zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} dev: false diff --git a/rst2md.sh b/rst2md.sh index 98e60b6c..bd57dc69 100755 --- a/rst2md.sh +++ b/rst2md.sh @@ -9,7 +9,7 @@ # By default this will keep the original .rst file # # Original by https://gist.github.com/stupergenius/b43d38fbff0547c96322e3f44264a969 -# Modified by Tunghsiao Liu +# Modified by Sparanoid t@sparanoid.com set -o errexit set -o nounset diff --git a/tsconfig.json b/tsconfig.json index 6f475698..314eab8a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,6 @@ { // This file is not used in compilation. It is here just for a nice editor experience. - "extends": "@tsconfig/docusaurus/tsconfig.json", + "extends": "@docusaurus/tsconfig", "compilerOptions": { "baseUrl": "." } diff --git a/versioned_docs/version-0.10.0/arch/arch/05-device_target_interactions.md b/versioned_docs/version-0.10.0/arch/arch/05-device_target_interactions.md index 4a9b4d05..fc4c862f 100644 --- a/versioned_docs/version-0.10.0/arch/arch/05-device_target_interactions.md +++ b/versioned_docs/version-0.10.0/arch/arch/05-device_target_interactions.md @@ -13,7 +13,7 @@ sidebar_position: 150 * [Target](#tvm-target-specific-target) 类描述了运行函数的设备。它既对 target 代码生成器公开,也对优化 pass 公开。 * [target 代码生成器](#tvm-target-specific-codegen) 从 IRModule 构造了一个 [模块](/docs/arch/arch/runtimes#module),它由一个或多个 [PackedFunc](/docs/arch/arch/runtimes#PackedFunc) 组成。 -## DeviceAPI {#tvm-target-specific-device-api} +## DeviceAPI `DeviceAPI` 表示特定硬件设备 API 的句柄。(例如,`CUDADeviceAPI` 通过 CUDA 框架处理所有的交互。)大多数 `DeviceAPI` 方法接收一个 `device_id` 参数,来指定访问哪个设备。Python 中通常用 `tvm.runtime.device()` 函数访问它们,这个函数返回特定设备的句柄,通过特定 API 访问。(例如,`tvm.runtime.device()` 通过 CUDA API 访问物理设备 `0`。) @@ -52,7 +52,7 @@ TVM 框架若要使用新的 DeviceAPI,应该按照以下步骤注册: 2. 给 [device_api.h](https://github.com/apache/tvm/blob/main/include/tvm/runtime/device_api.h) 中的 `DeviceName` 添加一个案例,从而将枚举值转换为字符串表示形式。这个字符串表示应该和 `TVM_REGISTER_GLOBAL` 的名称匹配。 3. 将入口添加到 `tvm.runtime.Device` 的 `MASK2STR` 和 `STR2MASK` 字典,获取新的枚举值。 -## Target 定义 {#tvm-target-specific-target} +## Target 定义 `Target` 对象是属性(包含物理设备、其硬件/驱动程序限制,及其功能)的查找表。在优化和代码生成阶段都可以访问 `Target`。虽然相同的 `Target` 类适用于所有 runtime target,但每个 runtime target 可能需要添加特定于 target 的选项。 @@ -64,7 +64,7 @@ TVM 框架若要使用新的 DeviceAPI,应该按照以下步骤注册: 代码生成器中可以用 C++ 中的 `target->GetAttr(param_name)`,或是 Python 中的 `target.attrs` 字典来访问 target 属性。 -## Target 代码生成器 {#tvm-target-specific-codegen} +## Target 代码生成器 代码生成器采用优化的 `IRModule`,并将其转换为可执行表示。每个代码生成器注册后,才能被 TVM 框架使用。这是通过注册 `"target.build.foo"` 函数来完成的,其中 `foo` 与上面的 `TVM_REGISTER_TARGET_KIND` 定义中使用的名称相同。 diff --git a/versioned_docs/version-0.10.0/arch/arch/07-inferbound.md b/versioned_docs/version-0.10.0/arch/arch/07-inferbound.md index 05ba0143..f81765ae 100644 --- a/versioned_docs/version-0.10.0/arch/arch/07-inferbound.md +++ b/versioned_docs/version-0.10.0/arch/arch/07-inferbound.md @@ -146,7 +146,7 @@ InferBound pass 有两个不是很明显的属性: 消息传递函数被命名为「PassUp」或「PassDown」,取决于消息是从 DAG 中的子代传递给其父代(「PassUp」),还是从父代传递给其子代(「PassDown」)。例如,上图左侧的大箭头显示 PassDownDomain 从根 IterVar `i` 向其子 `i.outer` 和 `i.inner` 发送消息。 -## PassDownDomain {#passdowndomain} +## PassDownDomain PassDownDomain 的作用是为 root_iter_vars 取 InferRootBound 产生的 Range,并设置 stage 中所有其他 IterVars 的 Range。 @@ -193,7 +193,7 @@ InferBound 调用 InferRootBound,然后在 stage 计算图中的每个 stage *对于包含 compute_at 的 schedules**而言**,InferBound 更为复杂。因此首先**针对**不包含 compute_at 的 schedules**解读**InferBound。* -### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet {#phase1} +### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet ``` c++ /* @@ -212,7 +212,7 @@ InferBound 调用 InferRootBound,然后在 stage 计算图中的每个 stage 简单起见,假设 schedule 不包含线程轴。这种情况下,仅当 schedule 包含 compute_at 时,才和案例 2 相关。参阅 [InferBound 与 compute_at](#inferboundca) 节来进一步获取更多信息。 -### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root {#phase2} +### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root ```c++ /* @@ -293,7 +293,7 @@ IntSet 的并集是通过将每个 IntSet 转换为一个区间来计算的, ![图片](/img/docs/tvmai/tvmai.github.io/main/images/docs/inferbound/gatherbound_problem.png) -## InferBound 与 compute_at {#inferboundca} +## InferBound 与 compute_at 若 schedule 包含 compute_at,则 InferRootBound 的阶段 1-2 会变得更加复杂。 @@ -377,7 +377,7 @@ public: 再次考虑上面的例子。为了让 InferBound 确定必须计算 C 的多少元素,重要的是,要知道 C 的计算是发生在 D 的叶变量的范围内,还是在该范围之上。在例 1 中,C 的计算发生在 D 的所有叶变量的范围*之上*。在例 2,C 的计算发生在 D 的所有叶变量的范围*内*。在例 3,C 出现在D 的 i 维度的范围内,但在 D 的 j 维度的范围之上。 -CreateAttachPath 负责确定哪些作用域包含 stage C。这些作用域按从最内层到最外层的顺序排列。因此,对于每个 stage,CreateAttachPath 都会生成一个「附加路径」,其中列出了包含该 stage 从最里面到最外面的范围,在例 1,C 的附加路径为空。在例 2,C 的附加路径包含 {j,i}。在例 3,C 的附加路径是 {i}。 +CreateAttachPath 负责确定哪些作用域包含 stage C。这些作用域按从最内层到最外层的顺序排列。因此,对于每个 stage,CreateAttachPath 都会生成一个「附加路径」,其中列出了包含该 stage 从最里面到最外面的范围,在例 1,C 的附加路径为空。在例 2,C 的附加路径包含 `{j,i}`。在例 3,C 的附加路径是 `{i}`。 以下示例阐明了附加路径的概念,适用于更复杂的情况。 @@ -415,11 +415,11 @@ realize D([0, 4], [0, 5], [0, 16]) { } ``` -在这种情况下,C 的附加路径是 {dk, dj, di}。注意 C 没有使用 di,但 di 仍然出现在 C 的附加路径中。 +在这种情况下,C 的附加路径是 `{dk, dj, di}`。注意 C 没有使用 di,但 di 仍然出现在 C 的附加路径中。 **例 5** -根据上述定义,可以很自然地在拆分后应用 Compute_at。下面例子中,C 的附着点是 D 的 j_inner。C 的附着路径是 {j_inner, j_outer, i}。 +根据上述定义,可以很自然地在拆分后应用 Compute_at。下面例子中,C 的附着点是 D 的 j_inner。C 的附着路径是 `{j_inner, j_outer, i}`。 ``` python C = tvm.compute((5, 16), lambda i, j : tvm.const(5, "int32"), name='C') @@ -456,7 +456,7 @@ s[C].compute_at(s[D], D.op.axis[1]) s[D].compute_at(s[E], E.op.axis[1]) ``` -当 `debug_keep_trivial_loop=True` 时,C 的附加路径为 {dj,di,ej,ei},D 的附加路径为 {ej,ei}: +当 `debug_keep_trivial_loop=True` 时,C 的附加路径为 `{dj,di,ej,ei}`,D 的附加路径为 `{ej,ei}`: ``` c++ // attr [D] storage_scope = "global" @@ -494,7 +494,7 @@ produce E { 若没有附加,则已经为 consumer 变量计算的 Range 定义了 consumer 需要多少 C。但是,若 stage 实际上在 consumer 变量 j 的一个范围内,那么一次只需要 j 的范围内的一个点。 -### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet {#phase1ca} +### 阶段 1:为 consumer 的 leaf_iter_vars 初始化 IntSet ``` c++ /* @@ -512,7 +512,7 @@ produce E { * 案例 3:需要释放。这种情况下,leaf 的 Range 被简单地转换为 IntSet。 若在 consumer 中遇到 stage C 的附着点,就会发生案例 2。对于此 attach_ivar,以及 consumer 的所有更高叶变量,将应用案例 2。若 C 在叶变量的 Range 内,这将确保仅请求叶变量范围内的单个点。 -### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root {#phase2ca} +### 阶段 2:将 IntSet 从 consumer 的 leaf 传到 consumer 的 root ``` c++ /* @@ -530,7 +530,7 @@ produce E { PassUpDomain 将 up_state 向 consumer 传给所有 IterVars 后,将创建一个从 root_iter_vars 到 IntSet 的新映射。若 stage 没有附加到当前 consumer,那么对于 consumer 的 attach_path 中的每个变量 iv,将 iv 的 Range 添加到一个 `relax_set`。stage 的 root 变量是根据这个 `relax_set` 进行评估的。 -这是为了处理类似以下示例的情况,其中 C 没有附加到任何地方,但它的 consumer D 在 stage E 中附加。这种情况下,在确定 C 有多少需要计算时,必须考虑 D 的 attach_path,{ej,ei}。 +这是为了处理类似以下示例的情况,其中 C 没有附加到任何地方,但它的 consumer D 在 stage E 中附加。这种情况下,在确定 C 有多少需要计算时,必须考虑 D 的 attach_path,`{ej,ei}`。 ``` python C = tvm.compute((5, 16), lambda ci, cj : tvm.const(5, "int32"), name='C') diff --git a/versioned_docs/version-0.10.0/arch/arch/10-relay_op_strategy.md b/versioned_docs/version-0.10.0/arch/arch/10-relay_op_strategy.md index d5c93a1a..07174427 100644 --- a/versioned_docs/version-0.10.0/arch/arch/10-relay_op_strategy.md +++ b/versioned_docs/version-0.10.0/arch/arch/10-relay_op_strategy.md @@ -157,7 +157,7 @@ def conv2d_strategy_mytarget(attrs, inputs, out_type, target): ... ``` -## 从 Op 策略中选择实现 {#select-implementation-from-op-strategy} +## 从 Op 策略中选择实现 在编译过程中,Relay 编译引擎要确定当有多个算子时,使用哪个算子来实现。选择策略的工作原理如下。 diff --git a/versioned_docs/version-0.10.0/arch/arch/11-convert_layout.md b/versioned_docs/version-0.10.0/arch/arch/11-convert_layout.md index f3a8b7f5..14def826 100644 --- a/versioned_docs/version-0.10.0/arch/arch/11-convert_layout.md +++ b/versioned_docs/version-0.10.0/arch/arch/11-convert_layout.md @@ -213,7 +213,7 @@ ConvertLayout pass 非常易于使用。pass 不是默认 relay.build pipeline 为了指定要转换到的布局,创建一个映射,该映射由重度布局敏感的算子指向该算子期望布局的列表。以下第一个示例指定了数据布局,允许内核布局自动转换为 TVM 支持的布局(针对特定的数据布局和算子)。这是通过使用「default」关键字指定的。 -第二个示例显示了如何转换为指定内核布局。注意,以下示例将转换为相同的布局,即 {‘nn.conv2d’: [‘NCHW’, ‘default’]} == {‘nn.conv2d’: [‘NCHW’, ‘OIHW’]} +第二个示例显示了如何转换为指定内核布局。注意,以下示例将转换为相同的布局,即 `{‘nn.conv2d’: [‘NCHW’, ‘default’]} == {‘nn.conv2d’: [‘NCHW’, ‘OIHW’]}` ``` python # TFlite 框架到 Relay 解析器 - 默认布局是 NHWC diff --git a/versioned_docs/version-0.10.0/arch/arch/12-benchmark.md b/versioned_docs/version-0.10.0/arch/arch/12-benchmark.md index c0f0a45f..771cc3d0 100644 --- a/versioned_docs/version-0.10.0/arch/arch/12-benchmark.md +++ b/versioned_docs/version-0.10.0/arch/arch/12-benchmark.md @@ -20,18 +20,18 @@ sidebar_position: 220 | runtime_ms_std | 5.3 | statistics | | | timestamp | 1572282699.6 | metadata | indicates when this record is logged | | schema_version | “0.1” | metadata | ensure reproducibility as we iterate on this schema | -| metadata | { “docker_tag”:”gcr.io/…/0a680”, … } | metadata | docker_tag is optional | -| workload_args | {“input_name”: “Input3”, “input_shape”: [list_of_shape], “data_layout”: NHCW} | workload | | -| workload_metadata | {“class”: “vision”,”doc_url”: “https://github.com/.../README.md”, “opset”: 7,”type”: “body_analysis”,”url”: “https://onnxzoo...ferplus.tar.gz”, “md5”: “07fc7…”} | workload | source of workload | +| metadata | `{ “docker_tag”:”gcr.io/…/0a680”, … }` | metadata | docker_tag is optional | +| workload_args | `{“input_name”: “Input3”, “input_shape”: [list_of_shape], “data_layout”: NHCW}` | workload | | +| workload_metadata | `{“class”: “vision”,”doc_url”: “https://github.com/.../README.md”, “opset”: 7,”type”: “body_analysis”,”url”: “https://onnxzoo...ferplus.tar.gz”, “md5”: “07fc7…”}` | workload | source of workload | | engine_version | “1.0.5” | compiler | use semvar format | -| engine_config | {“llvm”: “llvm-8”, “nvcc”: 10.1, “accelerator”: “MLAS”, “relay_opt_level”: 3, “tvm_target”:”llvm -mcpu=cascadelake”} | compiler | fields are optionally specified | -| compilation_config | {“opt_level”: 3, “layer_schedules”:[]/ } | compiler | fields are optionally specified | -| software_config | {“os”: “ubuntu:18.04”,”pip”: { “docker”: “4.1.0”, “gitpython”: “3.0.4”, “numpy”: “1.17.4”, “onnx”: “1.6.0”}, “cudnn”: “cudnn-8”, “cuda_driver”: “480.10.1”} | backend | env dependency list | -| runtime_config | {“num_cpu_threads”: 3} | backend | info on non-hardware, non-software metadata | -| hardware_config | {“cpu_count”: 16, “cloud_machine_type”:”c2-standard-16”, “memory_GB”:64} | hardware | json descriptor of target hardware environment | -| execution_config | {“number”: 1, “repeat”: 10, “min_repeat_ms”, 0} | statistics | workload execution parameters | -| metrics | {“accuracy”: 48.5,“compilation_ms_mean”: 12} | statistics | other metrics | -| runtime_raw | [{“runtime_ms”: 12, …}, {“runtime_ms”:13,…},…] | statistics | optional raw metrics array | +| engine_config | `{“llvm”: “llvm-8”, “nvcc”: 10.1, “accelerator”: “MLAS”, “relay_opt_level”: 3, “tvm_target”:”llvm -mcpu=cascadelake”}` | compiler | fields are optionally specified | +| compilation_config | `{“opt_level”: 3, “layer_schedules”:[]/ }` | compiler | fields are optionally specified | +| software_config | `{“os”: “ubuntu:18.04”,”pip”: { “docker”: “4.1.0”, “gitpython”: “3.0.4”, “numpy”: “1.17.4”, “onnx”: “1.6.0”}, “cudnn”: “cudnn-8”, “cuda_driver”: “480.10.1”}` | backend | env dependency list | +| runtime_config | `{“num_cpu_threads”: 3}` | backend | info on non-hardware, non-software metadata | +| hardware_config | `{“cpu_count”: 16, “cloud_machine_type”:”c2-standard-16”, “memory_GB”:64}` | hardware | json descriptor of target hardware environment | +| execution_config | `{“number”: 1, “repeat”: 10, “min_repeat_ms”, 0}` | statistics | workload execution parameters | +| metrics | `{“accuracy”: 48.5,“compilation_ms_mean”: 12}` | statistics | other metrics | +| runtime_raw | `[{“runtime_ms”: 12, …}, {“runtime_ms”:13,…},…]` | statistics | optional raw metrics array | ## 存储格式 @@ -98,4 +98,4 @@ sidebar_position: 220 "execution_config":{}, "metrics":{} } -``` \ No newline at end of file +``` diff --git a/versioned_docs/version-0.10.0/arch/arch/17-model_library_format.md b/versioned_docs/version-0.10.0/arch/arch/17-model_library_format.md index fc4c9f46..4ba0b705 100644 --- a/versioned_docs/version-0.10.0/arch/arch/17-model_library_format.md +++ b/versioned_docs/version-0.10.0/arch/arch/17-model_library_format.md @@ -78,7 +78,7 @@ TVM 生成的所有代码都放在这个目录中。编写代码时,生成的 * `target`:将 `device_type`(潜在的整数,作为字符串)映射到描述用于该 `device_type` 的 Relay 后端的子 target 的字典。 * `version`:标识模型库格式中格式的数字版本号。当元数据结构或磁盘结构更改时,这个数字会增加。本文档反映的是第 `5` 版。 -### 内存使用总结 {#memory-usage-summary} +### 内存使用总结 它是具有如下子键的字典: diff --git a/versioned_docs/version-0.10.0/arch/arch/runtimes/index.md b/versioned_docs/version-0.10.0/arch/arch/runtimes/index.md index f3d5a169..3994f1e8 100644 --- a/versioned_docs/version-0.10.0/arch/arch/runtimes/index.md +++ b/versioned_docs/version-0.10.0/arch/arch/runtimes/index.md @@ -18,7 +18,7 @@ TVM 支持多种编程语言进行编译器堆栈开发和部署。本文档将 * 实验:将编译好的函数发送到嵌入式设备上直接运行。 我们期望能够用任何语言定义一个函数,然后用另一种语言调用。还期望将 runtime 内核最小化,部署到嵌入式设备。 -## PackedFunc {#PackedFunc} +## PackedFunc [PackedFunc](https://github.com/apache/tvm/blob/main/include/tvm/runtime/packed_func.h) 是一个简单而优雅的解决方案,它可以解决以上问题。单个 `PackedFunc` 对象代表一个函数调用,其调用者和被调用者可能使用不同的语言。 @@ -104,7 +104,7 @@ PackedFunc 用于编译器和部署堆栈: 与普通函数相比,调用 PackedFunc 的开销很小,因为它只在堆栈上保存了几个值,所以只要不包装小的函数即可。总之,PackedFunc 是 TVM 中的通用粘合剂,可以广泛使用它来支持编译器和部署。 -## 模块 {#module} +## 模块 由于 TVM 支持多种类型的设备,因此需要支持不同类型的驱动程序。必须用驱动程序 API 来加载内核,以打包格式设置参数,并执行内核启动。 @@ -209,6 +209,6 @@ PackedFunc 中的每个参数都包含一个关联值 [TVMValue](https://github. * [c_runtime_api.cc](https://github.com/apache/tvm/blob/main/src/runtime/c_runtime_api.cc#L262),用于 C API 以及如何提供回调。 为了支持扩展类型,使用了注册表系统来注册类型相关信息,如 C++ 中对所有类型的支持,参阅 [扩展类型](https://github.com/apache/tvm/tree/main/apps/extension) 了解更多详细信息。 -# Runtime 特定信息 {#runtime-specific-information} +# Runtime 特定信息 * [Vulkan Runtime](vulkan) diff --git a/versioned_docs/version-0.10.0/arch/arch/runtimes/vulkan.md b/versioned_docs/version-0.10.0/arch/arch/runtimes/vulkan.md index bd6fbeee..d396cb31 100644 --- a/versioned_docs/version-0.10.0/arch/arch/runtimes/vulkan.md +++ b/versioned_docs/version-0.10.0/arch/arch/runtimes/vulkan.md @@ -30,7 +30,7 @@ TVM 支持用 Vulkan 计算着色器(Vulkan compute shaders)来查询。所 截至 2021 年 5 月,还有一些 Vulkan 的实现没支持。例如,要支持 64 位整数。若不支持 Vulkan target,则会在 SPIR-V 代码生成期间报错。我们正努力消除这些限制,并支持其他 Vulkan 实现。 -## SPIR-V 功能 {#tvm-table-vulkan-capabilities} +## SPIR-V 功能 某些特定于设备的功能还对应于 SPIR-V 功能或扩展,它们必须在着色器中声明,或对应于要使用某个功能所需的最低 SPIR-V 版本。TVM 生成的着色器将声明执行编译好的计算图所需的最小扩展/功能集,以及 SPIR-V 的最小允许版本。 diff --git a/versioned_docs/version-0.10.0/arch/index.md b/versioned_docs/version-0.10.0/arch/index.md index a8c4f716..7f2c921e 100644 --- a/versioned_docs/version-0.10.0/arch/index.md +++ b/versioned_docs/version-0.10.0/arch/index.md @@ -13,7 +13,7 @@ title: 设计与架构 本指南提供了架构的一些补充视图。首先研究端到端的编译流程,并讨论关键的数据结构和转换。这种基于 runtime 的视图侧重于运行编译器时每个组件的交互。接下来研究代码库的逻辑模块及其关系。这部分提供了设计的静态总体视图。 -## 编译流程示例 {#example-compilation-flow} +## 编译流程示例 本指南研究编译器中的编译流程示例,下图显示了流程。在高层次,它包含以下步骤: @@ -132,7 +132,7 @@ result = gmod["get_output"](0).numpy() * 编写一组自定义转换(例如自定义量化)。 * 用 TVM 的 Python API 直接操作 IR。 -## 逻辑架构组件 {#logical-architecture-components} +## 逻辑架构组件 ![/img/docs/tlc-pack/web-data/main/images/design/tvm_static_overview.svg](/img/docs/tlc-pack/web-data/main/images/design/tvm_static_overview.svg) diff --git a/versioned_docs/version-0.10.0/contribute/code_guide.md b/versioned_docs/version-0.10.0/contribute/code_guide.md index 0f232d59..894ca591 100644 --- a/versioned_docs/version-0.10.0/contribute/code_guide.md +++ b/versioned_docs/version-0.10.0/contribute/code_guide.md @@ -26,26 +26,26 @@ python tests/scripts/ci.py lint clang-format 并不完美,必要时可以在某些代码区域上禁用 clang-format。 ``` c++ -// clang-format off -void Test() { +// clang-format off +void Test() { // clang-format 将在这个区域禁用。 -} +} // clang-format on ``` 因为 clang-format 可能无法识别宏,所以建议像普通函数样式一样使用宏。 ``` c++ -#define MACRO_IMPL { custom impl; } +#define MACRO_IMPL { custom impl; } #define MACRO_FUNC(x) // 不是首选,因为 clang-format 可能会将其识别为类型。 -// 首选 +// 首选 virtual void Func2() MACRO_IMPL; void Func3() { - // 首选 + // 首选 MACRO_FUNC(xyz); } ``` @@ -68,7 +68,7 @@ def test_mytest(target, dev): ... ``` -用 `target="llvm"`、`target="cuda"` 和其他几个运行 `test_mytest`。这可以确保测试由 CI 在正确的硬件上运行。如果只想针对几个 target 进行测试,请使用 `@tvm.testing.parametrize_targets("target_1", "target_2")`。如果想在单个 target 上进行测试,请使用来自 `tvm.testing()`{.interpreted-text role="func"} 的相关装饰器。例如,CUDA 测试使用 `@tvm.testing.requires_cuda` 装饰器。 +用 `target="llvm"`、`target="cuda"` 和其他几个运行 `test_mytest`。这可以确保测试由 CI 在正确的硬件上运行。如果只想针对几个 target 进行测试,请使用 `@tvm.testing.parametrize_targets("target_1", "target_2")`。如果想在单个 target 上进行测试,请使用来自 `tvm.testing()` 的相关装饰器。例如,CUDA 测试使用 `@tvm.testing.requires_cuda` 装饰器。 ## 处理整型常量表达式 diff --git a/versioned_docs/version-0.10.0/contribute/document.md b/versioned_docs/version-0.10.0/contribute/document.md index 93e00467..52d0765d 100644 --- a/versioned_docs/version-0.10.0/contribute/document.md +++ b/versioned_docs/version-0.10.0/contribute/document.md @@ -126,8 +126,8 @@ My Section reStructuredText 的 [figure](https://docutils.sourceforge.io/docs/ref/rst/directives.html#figure) 和 [image](https://docutils.sourceforge.io/docs/ref/rst/directives.html#image) 元素允许文档包含图像 URL。 -为 TVM 文档创建的图像文件应该在 仓库中,而使用这些图像的 *.rst* 文件应该在 TVM 仓库()。 +为 TVM 文档创建的图像文件应该在 [https://github.com/tlc-pack/web-data](https://github.com/tlc-pack/web-data) 仓库中,而使用这些图像的 *.rst* 文件应该在 TVM 仓库([https://github.com/apache/tvm](https://github.com/apache/tvm))。 这需要两个 GitHub Pull Request,一个用于图像文件,另一个用于 *.rst* 文件。contributor 与 reviewer 之间可能需要讨论来协调 review 的过程。 -重要提示:使用上述的两个 pull request 时,请先在 中 merge pull request,然后再在 中 merge pull request。这有助于确保 TVM 在线文档中的所有 URL 链接都是有效的。 +重要提示:使用上述的两个 pull request 时,请先在 [https://github.com/tlc-pack/web-data](https://github.com/tlc-pack/web-data) 中 merge pull request,然后再在 [https://github.com/apache/tvm](https://github.com/apache/tvm) 中 merge pull request。这有助于确保 TVM 在线文档中的所有 URL 链接都是有效的。 diff --git a/versioned_docs/version-0.10.0/contribute/pull_request.md b/versioned_docs/version-0.10.0/contribute/pull_request.md index 62edd700..04cf8da1 100644 --- a/versioned_docs/version-0.10.0/contribute/pull_request.md +++ b/versioned_docs/version-0.10.0/contribute/pull_request.md @@ -20,17 +20,17 @@ sidebar_position: 2 # 虽然使用的 lint 命令应该与在 CI 中运行的相同,但此命令会重现 # 准确的 CI lint 过程(通常有助于调试 lint 脚本错误或避免手动安装工具) python tests/scripts/ci.py lint - + # 运行所有的 lint 步骤。 docker/lint.sh - + # 要单独运行步骤,请在命令行中指定步骤名称。 # 一个不正确拼写的步骤名称会导致工具打印所有可用的步骤。 docker/lint.sh ... ``` - + 若 clang-format lint 检查失败,运行 git-clang-format 自动对代码重新格式化: - + ``` bash # 运行 clang-format 检查所有自 upstream/main 以来改变的文件 docker/bash.sh ci_lint ./tests/lint/git-clang-format.sh upstream/main @@ -54,7 +54,7 @@ sidebar_position: 2 使用 Docker 镜像,创建能部署到多台机器上的稳定的 CI 环境。按照 [这个 issue 模板](https://github.com/apache/tvm/issues/new?assignees=&labels=&template=ci-image.md&title=%5BCI+Image%5D+) 的步骤,更新 CI Docker 镜像。 -## 测试 {#pr-testing} +## 测试 尽管每个 pull request 都有自动运行单元测试的 hook,但推荐先在本地运行单元测试,以减少 reviewer 的负担并加快 review 过程。 diff --git a/versioned_docs/version-0.10.0/contribute/release_process.md b/versioned_docs/version-0.10.0/contribute/release_process.md index 50a442fc..8996320f 100644 --- a/versioned_docs/version-0.10.0/contribute/release_process.md +++ b/versioned_docs/version-0.10.0/contribute/release_process.md @@ -29,11 +29,11 @@ TVM 中的版本 manager 角色意味着要负责以下这些事情: 如果已经上传了密钥,则可以跳过这部分。 -参考 将生成的 gpg 密钥上传到公钥服务器。 +参考 [https://www.apache.org/dev/openpgp.html#generate-key](https://www.apache.org/dev/openpgp.html#generate-key) 将生成的 gpg 密钥上传到公钥服务器。 通过 `gpg --export` 和 `gpg --import` 命令可以将 gpg 密钥传输到另一台机器上发布。 -最后一步是使用你的代码签名密钥 更新 KEYS 文件。查看对 TVM 主分支及 ASF SVN 的更改, +最后一步是使用你的代码签名密钥 [https://www.apache.org/dev/openpgp.html#export-public-key](https://www.apache.org/dev/openpgp.html#export-public-key) 更新 KEYS 文件。查看对 TVM 主分支及 ASF SVN 的更改, ``` bash # 指定 --depth=files 参数将跳过检查已有文件夹 @@ -122,7 +122,7 @@ svn ci --username $ASF_USERNAME --password "$ASF_PASSWORD" -m "Add RC" ## 对候选版本投票 -第一次投票在 Apache TVM 开发者名单()上进行。为了获得更多关注,可以创建一个以 “[VOTE]” 开头的 GitHub Issue,它会自动镜像到 dev@。可以查看以前的投票帖子来了解它是如何进行的。电子邮件应遵循以下格式: +第一次投票在 Apache TVM 开发者名单([dev@tvm.apache.org](mailto:dev@tvm.apache.org))上进行。为了获得更多关注,可以创建一个以 “[VOTE]” 开头的 GitHub Issue,它会自动镜像到 dev@。可以查看以前的投票帖子来了解它是如何进行的。电子邮件应遵循以下格式: - 在电子邮件中提供版本说明初稿的链接 - 提供候选版本工程的链接 @@ -157,8 +157,8 @@ git push --delete origin v0.6.0.rc2 ## 更新 TVM 网站 -网站仓库位于 。向下载页面中添加版本工程以及 GPG 签名和 SHA 哈希。 +网站仓库位于 [https://github.com/apache/tvm-site](https://github.com/apache/tvm-site)。向下载页面中添加版本工程以及 GPG 签名和 SHA 哈希。 ## 发布公告 -向 发送公告邮件。公告应包括发布说明和下载页面的链接。 +向 [announce@apache.org](mailto:announce@apache.org) 和 [dev@tvm.apache.org](mailto:dev@tvm.apache.org) 发送公告邮件。公告应包括发布说明和下载页面的链接。 diff --git a/versioned_docs/version-0.10.0/how_to/deploy/07-vitis_ai.md b/versioned_docs/version-0.10.0/how_to/deploy/07-vitis_ai.md index 68f67612..5ea3e553 100644 --- a/versioned_docs/version-0.10.0/how_to/deploy/07-vitis_ai.md +++ b/versioned_docs/version-0.10.0/how_to/deploy/07-vitis_ai.md @@ -28,7 +28,7 @@ TVM 中当前的 Vitis AI 流支持使用 [Zynq Ultrascale+ MPSoc](https://www.x [Vitis AI 系统要求页面](https://github.com/Xilinx/Vitis-AI/blob/master/docs/learn/system_requirements.md) 列出了运行 Docker 容器以及在 Alveo 卡上执行的系统要求。对于边缘设备(例如 Zynq),部署模型需要使用带有 Vitis AI 流程的 TVM 编译模型的主机,以及用于运行编译模型的边缘设备。主机系统要求与上面链接中指定的相同。 -## 设置说明 {#setup} +## 设置说明 本节介绍如何用 Vitis AI 流为云和边缘设置 TVM。支持 Vitis AI 的 TVM 是通过 Docker 容器提供的。提供的脚本和 Dockerfile 将 TVM 和 Vitis AI 编译为单个镜像。 @@ -70,7 +70,7 @@ TVM 中当前的 Vitis AI 流支持使用 [Zynq Ultrascale+ MPSoc](https://www.x 在这个 Docker 容器中可以为云和边缘目标编译模型。要在 docker 容器内的云 Alveo 或 Versal VCK5000 卡上运行,按照 [Alveo](#alveo-setup) 或者 [Versal VCK5000](#versal-vck5000-setup) 设置说明进行操作。分别参照 [Zynq](#zynq-setup) 和 [Versal VCK190](#versal-vck190-setup),为推理过程设置 Zynq 或 Versal VCK190 评估单板。 -### Alveo 设置 {#alveo-setup} +### Alveo 设置 查看 [Alveo 设置](https://github.com/Xilinx/Vitis-AI/blob/v1.4/setup/alveo/README.md) 获取设置信息。 @@ -85,7 +85,7 @@ source setup.sh [DPU-IDENTIFIER] 可在此页面顶部的 DPU Targets 表的第二列中找到此 DPU 标识符。 -### Versal VCK5000 设置 {#versal-vck5000-setup} +### Versal VCK5000 设置 查看 [VCK5000 Setup](https://github.com/Xilinx/Vitis-AI/blob/v1.4/setup/vck5000/README.md) 获取设置信息。 @@ -98,7 +98,7 @@ cd Vitis-AI/setup/vck5000 source setup.sh ``` -### Zynq 设置 {#zynq-setup} +### Zynq 设置 除了构建 TVM - Vitis AI docker 之外,对于 Zynq 目标(DPUCZDX8G),编译阶段在主机上的 docker 内运行,不需要任何特定设置。执行模型时,首先要设置 Zynq 板,更多信息如下。 @@ -173,11 +173,11 @@ source setup.sh 可能会看到有关未找到 "cpu-tf" runtime 的警告,可以忽略。 ::: -### Versal VCK190 设置 {#versal-vck190-setup} +### Versal VCK190 设置 参考 [Zynq 设置](#zynq-setup) 设置 Versal VCK190,但在步骤 1 中参考 [VCK190 镜像](https://www.xilinx.com/member/forms/download/design-license-xef.html?filename=xilinx-vck190-dpu-v2020.2-v1.4.0.img.gz)。其他步骤相同。 -## 编译模型 {#compile} +## 编译模型 带有 Vitis AI 流的 TVM 包含编译和推理两个阶段。在编译期间,用户可以为当前支持的云或边缘目标设备选择要编译的模型。编译模型生成的文件可用于在 [推理](#inference) 阶段在指定的目标设备上运行模型。目前,采用 Vitis AI 流程的 TVM 支持选定数量的 Xilinx 数据中心和边缘设备。 @@ -290,13 +290,13 @@ lib_edge.export_library('deploy_lib_edge.so', **lib_kwargs) 使用 TVM 和 Vitis AI 编译模型的教程到此结束,有关如何运行已编译的模型,参阅下一节。 -## 推理 {#inference} +## 推理 带有 Vitis AI 流的 TVM 包含编译和推理两个阶段,在编译期间,用户可以选择为当前支持的任何目标设备编译模型。编译模型后生成的文件可用于在推理阶段在目标设备上运行模型。 查看 [在 Alveo 和 VCK5000 上运行](#running-on-alveo-and-vck5000) 以及 [在 Zynq 和 VCK190 上运行](#running-on-zynq-and-vck190) 部分,分别在云加速卡和边缘板上进行推理。 -### 在 Alveo 和 VCK5000 上运行 {#running-on-alveo-and-vck5000} +### 在 Alveo 和 VCK5000 上运行 按照编译模型部分中的步骤,可以在 Docker 内的新输入上执行如下命令以加速推理: @@ -325,7 +325,7 @@ module.set_input(input_name, input_data) module.run() ``` -### 在 Zynq 和 VCK190 上运行 {#running-on-zynq-and-vck190} +### 在 Zynq 和 VCK190 上运行 开始前按照 [Zynq](#zynq-setup) 或 [Versal VCK190](#versal-vck190-setup) 设置说明进行设置。 diff --git a/versioned_docs/version-0.10.0/how_to/microtvm/01-aot.md b/versioned_docs/version-0.10.0/how_to/microtvm/01-aot.md index e9232e12..8389cb4f 100644 --- a/versioned_docs/version-0.10.0/how_to/microtvm/01-aot.md +++ b/versioned_docs/version-0.10.0/how_to/microtvm/01-aot.md @@ -62,7 +62,7 @@ relay_mod, params = relay.frontend.from_tflite( # 使用 C runtime(crt),并通过将 system-lib 设置为 True 来启用静态链接 RUNTIME = Runtime("crt", {"system-lib": True}) -# 在主机上模拟一个微控制器。使用来自 `src/runtime/crt/host/main.cc `_ 的 main()。 +# 在主机上模拟一个微控制器。使用来自 `src/runtime/crt/host/main.cc [https://github.com/apache/tvm/blob/main/src/runtime/crt/host/main.cc](https://github.com/apache/tvm/blob/main/src/runtime/crt/host/main.cc)`_ 的 main()。 # 若要使用物理硬件,请将「host」替换为与你的硬件匹配的内容。 TARGET = tvm.target.target.micro("host") diff --git a/versioned_docs/version-0.10.0/how_to/microtvm/03-tvm_arm.md b/versioned_docs/version-0.10.0/how_to/microtvm/03-tvm_arm.md index 99353105..492d7344 100644 --- a/versioned_docs/version-0.10.0/how_to/microtvm/03-tvm_arm.md +++ b/versioned_docs/version-0.10.0/how_to/microtvm/03-tvm_arm.md @@ -46,7 +46,7 @@ TVMC - TVM driver command-line interface 运行 demo 需要一些额外的 Python 包。通过下面的 requirements.txt 文件,来安装这些额外的 Python 包: *requirements.txt*[¶](#requirements-txt) -{#requirements-txt} + ``` text attrs==21.2.0 cloudpickle==2.0.0 @@ -167,7 +167,7 @@ curl -sS https://s3.amazonaws.com/model-server/inputs/kitten.jpg -o ./kitten.jpg * `outputs.h` - 用一个全零的整数数组,为推理的输出保留 1001 个整数值。 *convert_image.py*[¶](#convert-image-py) -{#convert-image-py} + ``` python #!python ./convert_image.py import os @@ -236,7 +236,7 @@ python convert_image.py ./kitten.jpg 以下脚本将在 src 目录中创建一个 `labels.h` 头文件,之前下载的 labels.txt 文件会变成字符串数组。该数组将用于显示图像分类后为的标签。 *convert_labels.py*[¶](#convert-image) -{#convert-image} + ``` python #!python ./convert_labels.py import os @@ -272,7 +272,7 @@ python convert_labels.py 下面的 C 程序会在之前下载并转换为整数数组的图像上,运行 MobileNet v1 模型的单个推理。由于该模型是以「ethos-u ...」为 target 编译的,因此需要迁移 Ethos(TM)-U55 NPU 支持的算子,以便进行加速。一旦应用程序构建并运行,测试图像应该被正确地归类为「tabby」,并且结果会显示在控制台上。这个文件应该放在 `./src`。 demo.c[¶](#demo-c) -{#demo-c} + ``` c #include #include diff --git a/versioned_docs/version-0.10.0/how_to/microtvm/05-microtvm_tflite.md b/versioned_docs/version-0.10.0/how_to/microtvm/05-microtvm_tflite.md index a9d3ebf1..e183c81f 100644 --- a/versioned_docs/version-0.10.0/how_to/microtvm/05-microtvm_tflite.md +++ b/versioned_docs/version-0.10.0/how_to/microtvm/05-microtvm_tflite.md @@ -74,11 +74,11 @@ title: 支持 TFLite 模型的 microTVM **题外话:重新创建预训练 TFLite 模型** 本教程下载了预训练的 TFLite 模型。使用微控制器时,请注意这些设备的资源高度受限,像 MobileNet 这样的标准模型和小内存并不匹配。 - + 本教程使用 TF Micro 示例模型之一。 - + 若要复制训练步骤,参阅:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/micro/examples/hello_world/train - + :::note 若不小心从 `wget https://storage.googleapis.com/download.tensorflow.org/models/tflite/micro/hello_world_2020_04_13.zip` 下载了示例预训练模型,会由于未实现的操作码(114)而失败。 ::: @@ -238,7 +238,7 @@ os.unlink(model_library_format_tar_path) # 模型库格式用作此过程的模型输入。 # 平台为嵌入时提供了集成,可以被 TVM 直接用于主机驱动 # 推理和自动调优。这种集成由 -# `microTVM 项目 API` _提供。 +# `microTVM 项目 API` [https://github.com/apache/tvm-rfcs/blob/main/rfcs/0008-microtvm-project-api.md](https://github.com/apache/tvm-rfcs/blob/main/rfcs/0008-microtvm-project-api.md)_提供。 # # 嵌入式平台需要提供一个包含 microTVM API Server 的模板项目(通常, # 存在于根目录中的“microtvm_api_server.py”文件中)。本教程使用示例“主机” @@ -328,4 +328,4 @@ result is: [[0.4443792]] [下载 Python 源代码:micro_tflite.py](https://tvm.apache.org/docs/_downloads/2fb9ae7bf124f72614a43137cf2919cb/micro_tflite.py) -[下载 Jupyter Notebook:micro_tflite.ipynb](https://tvm.apache.org/docs/_downloads/5b279d8a8718816263fa65b0eef1a5c0/micro_tflite.ipynb) \ No newline at end of file +[下载 Jupyter Notebook:micro_tflite.ipynb](https://tvm.apache.org/docs/_downloads/5b279d8a8718816263fa65b0eef1a5c0/micro_tflite.ipynb) diff --git a/versioned_docs/version-0.10.0/how_to/microtvm/06-microtvm_arduino.md b/versioned_docs/version-0.10.0/how_to/microtvm/06-microtvm_arduino.md index 3307f154..fa1bd39e 100644 --- a/versioned_docs/version-0.10.0/how_to/microtvm/06-microtvm_arduino.md +++ b/versioned_docs/version-0.10.0/how_to/microtvm/06-microtvm_arduino.md @@ -214,7 +214,7 @@ validation_dataset = full_dataset.skip(len(train_dataset)) 首先,可以将输入图像的大小从 224x224 减小到 96x96 或 64x64,Keras 可以轻松做到这一点。还可以将模型的 **alpha** 从 1.0 降低到 0.25,这使得网络的宽度(和过滤器的数量)缩小了四倍。如果真的空间有限,可以通过让模型拍摄灰度图像而不是 RGB 图像来减少**通道**数量。 -在本教程中,使用 RGB 64x64 输入图像和 alpha 0.25。效果虽然不是很理想,但它允许完成的模型适合 192 KB 的 RAM,同时仍然允许使用官方 TensorFlow 源模型执行迁移学习(如果使用 alpha <0.25 或灰度输入,无法做到这样)。 +在本教程中,使用 RGB 64x64 输入图像和 alpha 0.25。效果虽然不是很理想,但它允许完成的模型适合 192 KB 的 RAM,同时仍然允许使用官方 TensorFlow 源模型执行迁移学习(如果使用 alpha \<0.25 或灰度输入,无法做到这样)。 ### 什么是迁移学习? diff --git a/versioned_docs/version-0.10.0/install/docker.md b/versioned_docs/version-0.10.0/install/docker.md index 937f79fa..bb2a6ff0 100644 --- a/versioned_docs/version-0.10.0/install/docker.md +++ b/versioned_docs/version-0.10.0/install/docker.md @@ -65,4 +65,4 @@ Docker 镜像。 你也可以利用非官方的第三方预建镜像,注意:这些镜像是用来测试的,并不是 ASF 的版本。 -. +[https://hub.docker.com/r/tlcpack/](https://hub.docker.com/r/tlcpack/). diff --git a/versioned_docs/version-0.10.0/install/from_source.md b/versioned_docs/version-0.10.0/install/from_source.md index 66637f6c..a8cd6099 100644 --- a/versioned_docs/version-0.10.0/install/from_source.md +++ b/versioned_docs/version-0.10.0/install/from_source.md @@ -26,7 +26,7 @@ git submodule init git submodule update ``` -## 构建共享库 {#build-shared-library} +## 构建共享库 我们的目标是构建共享库: @@ -175,7 +175,7 @@ brew install python@3.8 如果一切顺利,我们就可以去查看 [Python 包的安装](#python-package-installation) 了。 -### 使用 Conda 环境进行构建 {#build-with-conda} +### 使用 Conda 环境进行构建 Conda 可以用来获取运行 TVM 所需的必要依赖。如果没有安装 Conda,请参照 [Conda @@ -234,7 +234,7 @@ cmake --build build --config Release -- /m 中安装 HIP runtime。确保安装系统中已经安装了 ROCm。 - 安装 LLVM 的最新稳定版本(v6.0.1),以及 LLD,确保 `ld.lld` 可以通过命令行获取。 -## Python 包的安装 {#python-package-installation} +## Python 包的安装 ### TVM 包 @@ -310,7 +310,7 @@ pip install xgboost [NNPACK Contrib 安装](nnpack) -## 启用 C++ 测试 {#C++_tests} +## 启用 C++ 测试 可以用 [Google Test](https://github.com/google/googletest) 来驱动 TVM 中的 C++ 测试。安装 GTest 最简单的方法是从源代码安装: diff --git a/versioned_docs/version-0.10.0/reference/api/python/auto_scheduler.md b/versioned_docs/version-0.10.0/reference/api/python/auto_scheduler.md index 13772faf..2c7bf16f 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/auto_scheduler.md +++ b/versioned_docs/version-0.10.0/reference/api/python/auto_scheduler.md @@ -2,6 +2,6 @@ title: tvm.auto_scheduler --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.auto_scheduler ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/autotvm.md b/versioned_docs/version-0.10.0/reference/api/python/autotvm.md index 7e5c2685..e6319ab4 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/autotvm.md +++ b/versioned_docs/version-0.10.0/reference/api/python/autotvm.md @@ -16,11 +16,11 @@ tvm.autotvm.apply_history_best tvm.autotvm.measure.measure ::: -::: {.autoclass members=""} +::: tvm.autotvm.measure.MeasureInput ::: -::: {.autoclass members=""} +::: tvm.autotvm.measure.MeasureResult ::: @@ -46,58 +46,58 @@ tvm.autotvm.measure.measure_methods.LocalRunner ## tvm.autotvm.tuner -::: {.automodule members=""} +::: tvm.autotvm.tuner ::: -::: {.autoclass members=""} +::: tvm.autotvm.tuner.Tuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.RandomTuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.GridSearchTuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.GATuner ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.autotvm.tuner.XGBTuner ::: -::: {.automodule members=""} +::: tvm.autotvm.tuner.callback ::: ## tvm.autotvm.task -::: {.automodule members=""} +::: tvm.autotvm.task ::: -::: {.automodule members=""} +::: tvm.autotvm.task.task ::: -::: {.automodule members=""} +::: tvm.autotvm.task.space ::: -::: {.automodule members=""} +::: tvm.autotvm.task.dispatcher ::: -::: {.automodule members=""} +::: tvm.autotvm.task.topi_integration ::: ## tvm.autotvm.record -::: {.automodule members=""} +::: tvm.autotvm.record ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/contrib.md b/versioned_docs/version-0.10.0/reference/api/python/contrib.md index ba49b3e7..c0b574b0 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/contrib.md +++ b/versioned_docs/version-0.10.0/reference/api/python/contrib.md @@ -8,138 +8,138 @@ tvm.contrib ## tvm.contrib.cblas -::: {.automodule members=""} +::: tvm.contrib.cblas ::: ## tvm.contrib.clang -::: {.automodule members=""} +::: tvm.contrib.clang ::: ## tvm.contrib.cc -::: {.automodule members=""} +::: tvm.contrib.cc ::: ## tvm.contrib.cublas -::: {.automodule members=""} +::: tvm.contrib.cublas ::: ## tvm.contrib.dlpack -::: {.automodule members=""} +::: tvm.contrib.dlpack ::: ## tvm.contrib.emcc -::: {.automodule members=""} +::: tvm.contrib.emcc ::: ## tvm.contrib.miopen -::: {.automodule members=""} +::: tvm.contrib.miopen ::: ## tvm.contrib.mxnet -::: {.automodule members=""} +::: tvm.contrib.mxnet ::: ## tvm.contrib.ndk -::: {.automodule members=""} +::: tvm.contrib.ndk ::: ## tvm.contrib.nnpack -::: {.automodule members=""} +::: tvm.contrib.nnpack ::: ## tvm.contrib.nvcc -::: {.automodule members=""} +::: tvm.contrib.nvcc ::: ## tvm.contrib.pickle_memoize -::: {.automodule members=""} +::: tvm.contrib.pickle_memoize ::: ## tvm.contrib.random -::: {.automodule members=""} +::: tvm.contrib.random ::: ## tvm.contrib.relay_viz -::: {.automodule members=""} +::: tvm.contrib.relay_viz ::: -::: {.automodule members=""} +::: tvm.contrib.relay_viz.dot ::: -::: {.automodule members=""} +::: tvm.contrib.relay_viz.terminal ::: -::: {.automodule members=""} +::: tvm.contrib.relay_viz.interface ::: ## tvm.contrib.rocblas -::: {.automodule members=""} +::: tvm.contrib.rocblas ::: ## tvm.contrib.rocm -::: {.automodule members=""} +::: tvm.contrib.rocm ::: ## tvm.contrib.sparse -::: {.automodule members=""} +::: tvm.contrib.sparse ::: ## tvm.contrib.spirv -::: {.automodule members=""} +::: tvm.contrib.spirv ::: ## tvm.contrib.tar -::: {.automodule members=""} +::: tvm.contrib.tar ::: ## tvm.contrib.utils -::: {.automodule members=""} +::: tvm.contrib.utils ::: ## tvm.contrib.xcode -::: {.automodule members=""} +::: tvm.contrib.xcode ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/error.md b/versioned_docs/version-0.10.0/reference/api/python/error.md index 95d5dc0c..ba83dfd5 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/error.md +++ b/versioned_docs/version-0.10.0/reference/api/python/error.md @@ -2,6 +2,6 @@ title: tvm.error --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.error ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/graph_executor.md b/versioned_docs/version-0.10.0/reference/api/python/graph_executor.md index 810338eb..90110e9b 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/graph_executor.md +++ b/versioned_docs/version-0.10.0/reference/api/python/graph_executor.md @@ -2,6 +2,6 @@ title: tvm.contrib.graph_executor --- -::: {.automodule members=""} +::: tvm.contrib.graph_executor ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/index.md b/versioned_docs/version-0.10.0/reference/api/python/index.md index a7518508..ab82bf8d 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/index.md +++ b/versioned_docs/version-0.10.0/reference/api/python/index.md @@ -2,9 +2,9 @@ title: Python API --- -::: {.toctree maxdepth="2"} +``` runtime ndarray error ir target tir te driver relay/index relay/frontend relay/nn relay/vision relay/image relay/transform relay/analysis relay/backend relay/dataflow_pattern relay/testing autotvm auto_scheduler rpc micro contrib graph_executor topi vta/index -::: +``` diff --git a/versioned_docs/version-0.10.0/reference/api/python/ir.md b/versioned_docs/version-0.10.0/reference/api/python/ir.md index 4c60d1fb..16eebd04 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/ir.md +++ b/versioned_docs/version-0.10.0/reference/api/python/ir.md @@ -1,17 +1,17 @@ ## tvm.ir -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.ir ::: ## tvm.instrument -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.instrument ::: ## tvm.transform -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.transform ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/micro.md b/versioned_docs/version-0.10.0/reference/api/python/micro.md index ed2cac3b..69db2fda 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/micro.md +++ b/versioned_docs/version-0.10.0/reference/api/python/micro.md @@ -2,6 +2,6 @@ title: tvm.micro --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.micro ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/ndarray.md b/versioned_docs/version-0.10.0/reference/api/python/ndarray.md index dcab1750..f144d9b5 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/ndarray.md +++ b/versioned_docs/version-0.10.0/reference/api/python/ndarray.md @@ -6,7 +6,7 @@ title: tvm.runtime.ndarray tvm.runtime.ndarray ::: -::: {.autoclass members="" inherited-members=""} +::: tvm.nd.NDArray ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/analysis.md b/versioned_docs/version-0.10.0/reference/api/python/relay/analysis.md index cbc937a2..0a82d753 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/analysis.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/analysis.md @@ -2,6 +2,6 @@ title: tvm.relay.analysis --- -::: {.automodule members="" imported-members="" exclude-members="Object, RelayExpr, IRModule, Type" autosummary=""} +::: tvm.relay.analysis ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/backend.md b/versioned_docs/version-0.10.0/reference/api/python/relay/backend.md index e3df36cb..2d50a660 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/backend.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/backend.md @@ -6,18 +6,18 @@ title: tvm.relay.backend tvm.relay.backend ::: -::: {.automodule members=""} +::: tvm.relay.backend.interpreter ::: -::: {.automodule members=""} +::: tvm.relay.backend.te_compiler ::: -::: {.automodule members=""} +::: tvm.relay.backend.graph_executor_codegen ::: -::: {.automodule members=""} +::: tvm.relay.backend.vm ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/dataflow_pattern.md b/versioned_docs/version-0.10.0/reference/api/python/relay/dataflow_pattern.md index 19fabdc3..9c44104a 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/dataflow_pattern.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/dataflow_pattern.md @@ -2,6 +2,6 @@ title: tvm.relay.dataflow_pattern --- -::: {.automodule members="" imported-members="" exclude-members="Object, Node" autosummary=""} +::: tvm.relay.dataflow_pattern ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/frontend.md b/versioned_docs/version-0.10.0/reference/api/python/relay/frontend.md index 539268a4..ca06b419 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/frontend.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/frontend.md @@ -2,6 +2,6 @@ title: tvm.relay.frontend --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.frontend ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/image.md b/versioned_docs/version-0.10.0/reference/api/python/relay/image.md index aeaa7507..9c214971 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/image.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/image.md @@ -2,6 +2,6 @@ title: tvm.relay.image --- -::: {.automodule members="" imported-members="" exclude-members="Expr, Constant" autosummary=""} +::: tvm.relay.image ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/index.md b/versioned_docs/version-0.10.0/reference/api/python/relay/index.md index 656d2cac..ee6cb3e8 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/index.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/index.md @@ -2,12 +2,6 @@ title: tvm.relay --- -::: {.automodule members="" imported-members="" exclude-members="RelayExpr, -Type, TypeKind, -TypeVar, GlobalTypeVar, TypeConstraint, FuncType, TupleType, IncompleteType, -TypeCall, TypeRelation, TensorType, RelayRefType, GlobalVar, SourceName, -Span, Var, Op, Constructor -:noindex: TypeData -:autosummary:"} +::: tvm.relay ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/nn.md b/versioned_docs/version-0.10.0/reference/api/python/relay/nn.md index 34dc4754..0b3873f1 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/nn.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/nn.md @@ -2,6 +2,6 @@ title: tvm.relay.nn --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.nn ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/testing.md b/versioned_docs/version-0.10.0/reference/api/python/relay/testing.md index 17116aa1..d861cfe1 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/testing.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/testing.md @@ -2,42 +2,42 @@ title: tvm.relay.testing --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.testing ::: -::: {.automodule members=""} +::: tvm.relay.testing.mlp ::: -::: {.automodule members=""} +::: tvm.relay.testing.resnet ::: -::: {.automodule members=""} +::: tvm.relay.testing.dcgan ::: -::: {.automodule members=""} +::: tvm.relay.testing.mobilenet ::: -::: {.automodule members=""} +::: tvm.relay.testing.lstm ::: -::: {.automodule members=""} +::: tvm.relay.testing.inception_v3 ::: -::: {.automodule members=""} +::: tvm.relay.testing.squeezenet ::: -::: {.automodule members=""} +::: tvm.relay.testing.vgg ::: -::: {.automodule members=""} +::: tvm.relay.testing.densenet ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/transform.md b/versioned_docs/version-0.10.0/reference/api/python/relay/transform.md index 0fc59717..6578b10b 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/transform.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/transform.md @@ -2,6 +2,6 @@ title: tvm.relay.transform --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.transform ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/relay/vision.md b/versioned_docs/version-0.10.0/reference/api/python/relay/vision.md index 732e05ab..9b8332e7 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/relay/vision.md +++ b/versioned_docs/version-0.10.0/reference/api/python/relay/vision.md @@ -2,6 +2,6 @@ title: tvm.relay.vision --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.relay.vision ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/rpc.md b/versioned_docs/version-0.10.0/reference/api/python/rpc.md index 380993af..9689387d 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/rpc.md +++ b/versioned_docs/version-0.10.0/reference/api/python/rpc.md @@ -2,6 +2,6 @@ title: tvm.rpc --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.rpc ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/runtime.md b/versioned_docs/version-0.10.0/reference/api/python/runtime.md index 4f6ef926..cdaa27f3 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/runtime.md +++ b/versioned_docs/version-0.10.0/reference/api/python/runtime.md @@ -2,6 +2,6 @@ title: tvm.runtime --- -::: {.automodule members="" imported-members="" exclude-members="NDArray" autosummary=""} +::: tvm.runtime ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/target.md b/versioned_docs/version-0.10.0/reference/api/python/target.md index 2bcb2aa5..e9ef930e 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/target.md +++ b/versioned_docs/version-0.10.0/reference/api/python/target.md @@ -2,6 +2,6 @@ title: tvm.target --- -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.target ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/te.md b/versioned_docs/version-0.10.0/reference/api/python/te.md index 2666ba85..628f883f 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/te.md +++ b/versioned_docs/version-0.10.0/reference/api/python/te.md @@ -1,11 +1,11 @@ ## tvm.te -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.te ::: ## tvm.te.hybrid -::: {.automodule members="" imported-members="" autosummary=""} +::: tvm.te.hybrid ::: diff --git a/versioned_docs/version-0.10.0/reference/api/python/tir.md b/versioned_docs/version-0.10.0/reference/api/python/tir.md index 215368b1..88b44909 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/tir.md +++ b/versioned_docs/version-0.10.0/reference/api/python/tir.md @@ -1,23 +1,23 @@ -## tvm.tir {#api-python-tir} +## tvm.tir -::: {.automodule members="" imported-members="" exclude-members="PrimExpr, const" autosummary=""} +``` tvm.tir -::: +``` ## tvm.tir.transform -::: {.automodule members="" imported-members="" autosummary=""} +``` tvm.tir.transform -::: +``` ## tvm.tir.analysis -::: {.automodule members="" imported-members="" noindex="Buffer, Stmt" autosummary=""} +``` tvm.tir.analysis -::: +``` ## tvm.tir.stmt_functor -::: {.automodule members="" autosummary=""} +``` tvm.tir.stmt_functor -::: +``` diff --git a/versioned_docs/version-0.10.0/reference/api/python/topi.md b/versioned_docs/version-0.10.0/reference/api/python/topi.md index 054b7f2a..0629b9f0 100644 --- a/versioned_docs/version-0.10.0/reference/api/python/topi.md +++ b/versioned_docs/version-0.10.0/reference/api/python/topi.md @@ -2,24 +2,24 @@ title: tvm.topi --- -::: {.automodule members="" imported-members="" noindex="AssertStmt" autosummary=""} +``` tvm.topi -::: +``` ## tvm.topi.nn -::: {.automodule members="" imported-members="" autosummary=""} +``` tvm.topi.nn -::: +``` ## tvm.topi.image -::: {.automodule members="" imported-members="" autosummary=""} +``` tvm.topi.image -::: +``` ## tvm.topi.sparse -::: {.automodule members="" imported-members="" autosummary=""} +``` tvm.topi.sparse -::: +``` diff --git a/versioned_docs/version-0.10.0/reference/langref/index.md b/versioned_docs/version-0.10.0/reference/langref/index.md index 8fbb72ee..5cd9a1db 100644 --- a/versioned_docs/version-0.10.0/reference/langref/index.md +++ b/versioned_docs/version-0.10.0/reference/langref/index.md @@ -22,9 +22,9 @@ transformations and optimizations. The below pages describe the grammar, type system, algebraic data types, and operators in Relay, respectively. -::: {.toctree maxdepth="2"} +``` relay_expr relay_type relay_adt relay_op relay_pattern -::: +``` ## Hybrid Script @@ -32,6 +32,6 @@ The below page describes the TVM hybrid script front-end, which uses software emulation to support some constructs not officially supported in TVM. -::: {.toctree maxdepth="2"} +``` hybrid_script -::: +``` diff --git a/versioned_docs/version-0.10.0/reference/langref/relay_adt.md b/versioned_docs/version-0.10.0/reference/langref/relay_adt.md index 96cff08a..320cee40 100644 --- a/versioned_docs/version-0.10.0/reference/langref/relay_adt.md +++ b/versioned_docs/version-0.10.0/reference/langref/relay_adt.md @@ -53,7 +53,7 @@ variables) to the list of constructors for that ADT.* Below is a simple example of defining an ADT and using it in a function via a match expression: -``` +``` # Defines an ADT named "Numbers" data Numbers { Empty : () -> Numbers @@ -83,7 +83,7 @@ Note that ADTs are identified by name, meaning that two ADTs with structurally identical constructors will nevertheless be distinct data types from the point of view of the typechecker. -``` +``` # structurally identical constructors to Numbers data Numbers2 { Empty2 : () -> Numbers2 @@ -105,7 +105,7 @@ functions, ADTs can be polymorphic and take type parameters. For example, one of the standard ADTs commonly used in functional programming languages is the optional type, defined here: -``` +``` # a is a type parameter data Optional { None : () -> Optional @@ -129,7 +129,7 @@ thus given a type that contains the concrete type arguments for that instance, ensuring the information is kept around. Let the below example illustrate: -``` +``` # the signature for option indicates the type argument def @inc_scalar(%opt : Optional[Tensor[(), int32]]) -> Tensor[(), int32] { match(%opt) { @@ -184,7 +184,7 @@ Many commonly used ADTs involve recursion; some of these are given in [Common ADT Uses](#common-adt-uses). As an example here, we will examine the list ADT, ubiquitous in functional languages: -``` +``` data List { Nil : () -> List Cons : (a, List[a]) -> List @@ -202,7 +202,7 @@ empty list). Lists represented in this manner can easily be recursively processed. For example, the following function sums a list of integers: -``` +``` def @list_sum(%l : List[Tensor[(), int32]]) -> Tensor[(), int32] { match(%l) { case Nil() { 0 } @@ -217,7 +217,7 @@ share structures that can be factored out into generic, easily usable functions that will be discussed under [Common ADT Uses](#common-adt-uses). -## Pattern Matching in Match Expressions {#adt-pattern} +## Pattern Matching in Match Expressions Match expressions in Relay, as in other functional languages, are capable of more versatile pattern matching than simply having one case @@ -241,7 +241,7 @@ arguments to `Cons`. The below example uses a wildcard pattern to ignore one of the arguments to `Cons`: -``` +``` def @first(%l : List[a]) -> Optional[a] { match(%l) { case Nil() { None() } @@ -255,7 +255,7 @@ to avoid nested match expressions for a list option. A top-level wildcard pattern is also used to handle all cases that do not match the first clause: -``` +``` def @second_opt(%ll : Optional[List[a]]) -> Optional[a] { match(%ll) { # we only need the second member of the list if there is one @@ -275,7 +275,7 @@ are listed: the first clause whose pattern that matches the input value is the one that is evaluated. Here, a top-level variable pattern binds the whole input value: -``` +``` def @match_order_beware(%l : List[a]) -> List[a] { match(%l) { case %v { %v } @@ -313,7 +313,7 @@ Relay\'s Prelude. (These have all been extensively characterized in the functional programming literature, and we do not attempt to reproduce that work in this document.) -``` +``` # Map: for [h1, h2, ..., hn] returns [f(h1), f(h2), ..., f(hn)] def @map(%f : fn(a) -> b, %l : List[a]) -> List[b] { match(%l) { @@ -343,7 +343,7 @@ Using these iteration constructs, many common operations over lists can be expressed compactly. For example, the following map doubles all members of a list: -``` +``` # directly written def @double(%l : List[Tensor[(), int32]]) -> List[Tensor[(), int32]] { match(%l) { @@ -358,7 +358,7 @@ def @double(%l : List[Tensor[(), int32]]) -> List[Tensor[(), int32]] { The following right fold concatenates two lists: -``` +``` # directly written def @concat(%l1 : List[a], %l2 : List[a]) -> List[a] { match(%l1) { @@ -373,7 +373,7 @@ def @concat(%l1 : List[a], %l2 : List[a]) -> List[a] { The following left fold flattens a list of lists (using concatenation): -``` +``` # directly written def @flatten(%ll : List[List[a]]) -> List[a] { match(%ll) { @@ -407,14 +407,14 @@ recurrent neural net (RNN) cell, which takes in a past state and an input value and returns a new state and output value. In Relay, this would have the following signature: -``` +``` @cell : fn(state_type, in_type) -> (state_type, out_type) ``` We might consider a ReLU cell as a simple concrete example, with a trained version below: -``` +``` def @linear(%x, %w, %b) { %w*%x + %b } def @relu_cell(%w, # weights @@ -437,7 +437,7 @@ def @trained_cell(%w, %b) { Following Olah\'s example, we can encode a sequence (list) of inputs with the following left fold: -``` +``` def @encode(%cell, %input : List[in_type], %init : state_type) -> state_type { # not using the output @foldl(fn(%state, %in) { %cell(%state, %in).0 }, %init, %input) @@ -448,7 +448,7 @@ Using an *unfold* iterator (from Haskell\'s standard library), the same cell could be used to make a generator network (which takes a single input and produces a sequence of outputs): -``` +``` # included in Relay's Prelude def @unfoldr(%f : fn(b) -> Optional[(a, b)], %z : b) -> List[a] { match(%f(%z)) { @@ -478,7 +478,7 @@ An accumulating map (a fold that simultaneously updates an accumulator value and a list of outputs) can be used to write a general RNN (with an output for every input): -``` +``` def @map_accumr(%f : fn(a, b) -> (a, c), %acc : a, %l : List[b]) -> (a, List[c]) { match(%l) { case Nil() { (%acc, Nil()) } @@ -511,7 +511,7 @@ two sets of cells (which may have different weights) process the input in both directions and produce a single set of outputs. The following is a Relay implementation of that example: -``` +``` # creates a list of tuples from two lists # included in Relay's Prelude def @zip(%l : List[a], %m : List[b]) -> List[(a, b)] { diff --git a/versioned_docs/version-0.10.0/reference/langref/relay_expr.md b/versioned_docs/version-0.10.0/reference/langref/relay_expr.md index f39b197a..8b30189a 100644 --- a/versioned_docs/version-0.10.0/reference/langref/relay_expr.md +++ b/versioned_docs/version-0.10.0/reference/langref/relay_expr.md @@ -62,7 +62,7 @@ contained in the globally visible environment, known as the [module](#module-and-global-functions). Global identifiers must be unique. -See :py`~tvm.relay.expr.GlobalVar`{.interpreted-text role="class"} for +See `GlobalVar` for its implementation and documentation. ### Local Variable @@ -79,7 +79,7 @@ to `%a` in the inner scope refer to the later definition, while references to `%a` in the outer scope continue to refer to the first one. -``` +``` let %a = 1; let %b = 2 * %a; // %b = 2 let %a = %a + %a; // %a = 2. %a is shadowed @@ -87,14 +87,13 @@ let %a = %a + %a; // %a = 2. %a is shadowed ``` (Note that in Relay\'s implementation, each definition of a local -variable creates a new :py`~tvm.relay.expr.Var`{.interpreted-text -role="class"}, so a shadowed local variable, despite having the same +variable creates a new `Var`, so a shadowed local variable, despite having the same name as one in an outer scope, will be a different object. This allows for comparing local variables by pointer identity with the knowledge that the same local variable object corresponds to a different binding site.) -See :py`~tvm.relay.expr.Var`{.interpreted-text role="class"} for its +See `Var` for its implementation and documentation. ## Functions @@ -110,24 +109,24 @@ argument to a function or returned by a function, as function expressions evaluate to closures (see the [Closures](#closures) subsection), which are values like tensors and tuples. -See :py`~tvm.relay.function.Function`{.interpreted-text role="class"} +See `Function` for the definition and documentation of function nodes. ### Syntax A definition minimally consists of the keyword `fn`, an empty set of parameters, and a body expression -(:py`~tvm.relay.expr.Expr`{.interpreted-text role="class"}) contained by +(`Expr`) contained by curly braces. -``` +``` fn() { body } ``` A definition may contain any number of parameters. For example, a simple function that invokes the `add` operator: -``` +``` fn(%x, %y) { add(%x, %y) } ``` @@ -137,7 +136,7 @@ variables, just like those bound in a `let` expression. One may also annotate explicit types on functions. For example, we can restrict the above function to only work on certain types: -``` +``` fn(%x : Tensor[(10, 10), float32], %y : Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { add(%x, %y) @@ -147,7 +146,7 @@ fn(%x : Tensor[(10, 10), float32], %y : Tensor[(10, 10), float32]) The above function only takes arguments of type `Tensor[(10, 10), float32]` and returns a value of type `Tensor[(10, 10), float32]`. A function parameter is just a local -variable (:py`~tvm.relay.expr.LocalVar`{.interpreted-text role="class"}) +variable (`LocalVar`) optionally annotated with a type, written as `%x : T`. When the type information is omitted, Relay attempts to infer the most @@ -159,7 +158,7 @@ function body and call sites. A recursive function expression can be defined using a `let` binding, as here: -``` +``` let %fact = fn(%x : Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { if (%x == Constant(0, (10, 10), float32)) { Constant(1, (10, 10), float32) @@ -181,7 +180,7 @@ For example, in the below example, the final result will be a tensor of zero values because the closure for `%f` stores the value of `%x` at the pointer where `%f` was defined. -``` +``` let %g = fn() { let %x = Constant(0, (10, 10), float32); // %x is a free variable in the below function @@ -208,13 +207,12 @@ Type parameters are classified by *kind* and can only appear in parts of the type signature where their kind is appropriate (e.g., type parameters of kind `Shape` can only appear where a shape would be expected in a tensor type); for a full discussion, see -`the documentation on type parameters `{.interpreted-text -role="ref"}. +`the documentation on type parameters `. For example, one can define a polymorphic identity function for any Relay type as follows: -``` +``` fn(%x : t) -> t { %x } @@ -223,7 +221,7 @@ fn(%x : t) -> t { The below definition is also polymorphic, but restricts its arguments to tensor types: -``` +``` fn(%x : Tensor[s, bt]) { %x } @@ -236,7 +234,7 @@ Notice that the return type is omitted and will be inferred. A function may also be subject to one or more type relations, such as in the following: -``` +``` fn(%x, %y) where Broadcast { add(%x, %y) } ``` @@ -252,8 +250,7 @@ constraints on types (especially tensor shapes). All function relations must hold at all call sites; type checking is thus treated as a constraint-solving problem. For more detail on type relations and their implementations, please see -`their section in the documentation on Relay's type system `{.interpreted-text -role="ref"}. +`their section in the documentation on Relay's type system `. ## Operators @@ -272,8 +269,7 @@ From the perspective of Relay\'s type system, an operator is a function, so operators may be called like any other function and have function types. In particular, operator types are registered using a single type relation (see -`the documentation on type relations `{.interpreted-text -role="ref"}), typically a relation specialized to that operator. For +`the documentation on type relations `), typically a relation specialized to that operator. For example, the `add` operator is registered with the `Broadcast` relation, indicating that the arguments of `add` must be tensors and that the return type is a tensor whose shape depends on those of its arguments. @@ -286,20 +282,19 @@ Note that common arithmetic operators such as `add` and `multiply` may be written using the corresponding arithmetic operators in the text format (e.g., `+` or `*`) as syntactic sugar. -See :py`~tvm.relay.op.Op`{.interpreted-text role="class"} for the +See `Op` for the definition and documentation of operator nodes, demonstrating the infrastructure for registering operator metadata. The other files in -:py`~tvm.relay.op`{.interpreted-text role="class"} give handles for +`` give handles for generating a call to various pre-registered operators. The -`tutorial on adding operators to Relay `{.interpreted-text -role="ref"} shows how to add further operators into the language. +`tutorial on adding operators to Relay ` shows how to add further operators into the language. ## ADT Constructors Algebraic data types (ADTs) in Relay are described in detail in a -`separate overview`{.interpreted-text role="ref"} and +`separate overview` and their integration into the type system is described -`here`{.interpreted-text role="ref"}. +`here`. In this section, we will simply note that ADT constructors are given a function type and should be used inside call nodes like a function or @@ -326,7 +321,7 @@ well as the name (\"tag\") of the constructor. The tag will be used for deconstructing the instances and retrieving the values when [ADT Matching](#adt-matching). -See :py`~tvm.relay.adt.Constructor`{.interpreted-text role="class"} for +See `Constructor` for the definition and documentation. ## Call @@ -339,7 +334,7 @@ functions) and Relay operators. The syntax of calls follows that used in C-like languages, demonstrated in the example below: -``` +``` let %c = 1; let %f = fn(%x : Tensor[(), float32], %y : Tensor[(), float32]) { %x + %y + %c }; %f(10, 11) @@ -362,7 +357,7 @@ given, type inference will attempt to infer type arguments if possible. The following code gives examples of explicit and inferred type arguments: -``` +``` // %f : fn(a, b) -> c let %x1 = %f(True, False); // %x1 is of type Tensor[(), bool] @@ -381,15 +376,15 @@ has the `Broadcast` relation, then there are many different shapes that the arguments in the below call could have that would satisfy the type annotation: -``` +``` let %x : Tensor[(100, 100, 100), float32] = %f(%a, %b); %x ``` -See :py`~tvm.relay.expr.Call`{.interpreted-text role="class"} for its +See `Call` for its definition and documentation. -## Module and Global Functions {#module-description} +## Module and Global Functions Relay keeps a global data structure known as a \"module\" (often called an \"environment\" in other functional programming languages) to keep @@ -409,7 +404,7 @@ function definition includes a global identifier and is allowed to recursively refer to that identifier in the body, as in the following example: -``` +``` def @ackermann(%m : Tensor[(), int32], %n : Tensor[(), int32]) -> Tensor[(), int32] { if (%m == 0) { %n + 1 @@ -427,15 +422,14 @@ and body above. Any reference to the identifier `@ackermann` elsewhere in the code could then look up the identifier in the module and replace the function definition as needed. -See :py`~tvm.IRModule`{.interpreted-text role="class"} for the +See `IRModule` for the definition and documentation of a module. ## Constant This node represents a constant tensor value (see -:py`~tvm.relay.Value`{.interpreted-text role="mod"} for more details). A -constant is represented as a :py`~tvm.NDArray`{.interpreted-text -role="class"}, allowing Relay to utilize TVM operators for constant +`Value` for more details). A +constant is represented as a `NDArray`, allowing Relay to utilize TVM operators for constant evaluation. This node can also represent scalar constants, since scalars are tensors @@ -443,7 +437,7 @@ with a shape of `()`. In the text format, numerical and boolean literals are thus syntactic sugar for constants encoding a tensor type with a rank-zero shape. -See :py`~tvm.relay.expr.Constant`{.interpreted-text role="class"} for +See `Constant` for its definition and documentation. ## Tuples @@ -454,14 +448,14 @@ The tuple node builds a finite (that is, of statically known size) sequence of heterogeneous data. These tuples match Python\'s closely, and their fixed length allows for efficient projection of their members. -``` +``` fn(%a : Tensor[(10, 10), float32], %b : float32, %c : Tensor[(100, 100), float32]) { let %tup = (%a, %b); // type: (Tensor[(10, 10), float32], float32) ((%tup.0 + %tup.1), %c) // type: (Tensor[(10, 10), float32], Tensor[(100, 100), float32]) } ``` -See :py`~tvm.relay.expr.Tuple`{.interpreted-text role="class"} for its +See `Tuple` for its definition and documentation. ### Projection @@ -471,11 +465,11 @@ particular member of the tuple. Projections are 0-indexed. For example, the below projection evaluates to `%b`: -``` +``` (%a, %b, %c).1 ``` -See :py`~tvm.relay.expr.TupleGetItem`{.interpreted-text role="class"} +See `TupleGetItem` for its definition and documentation. ## Let Bindings @@ -499,7 +493,7 @@ evaluating the bindings it depends on. For example, in the following example the entire expression evaluates to a tensor of shape `(10, 10)` where all elements are 2: -``` +``` let %x : Tensor[(10, 10), float32] = Constant(1, (10, 10), float32); %x + %x ``` @@ -511,13 +505,13 @@ where neither depends on the other can be safely reordered. For example, the first and second `let` bindings below may be evaluated in either order because neither has a dataflow dependency on the other: -``` +``` let %x = %a + %b; let %y = %c + %d; %x * %y ``` -See :py`~tvm.relay.expr.Let`{.interpreted-text role="class"} for its +See `Let` for its definition and documentation. ## Graph Bindings @@ -536,15 +530,14 @@ already employed by NNVM and other dataflow graph-based input formats. The fact that the variables are not scoped offers some flexibility in evaluation order compared to `let` bindings, though this can also introduce some ambiguity in programs (the -`developer introduction to the Relay IR`{.interpreted-text -role="ref"} includes more detailed discussion of this nuance). +`developer introduction to the Relay IR` includes more detailed discussion of this nuance). *Note: Graph bindings are not currently parsed by the text format.* In Relay\'s text format, a graph binding can be written as below (note the lack of a `let` keyword and a semicolon): -``` +``` %1 = %a + %b %2 = %1 + %1 %2 * %2 @@ -558,7 +551,7 @@ corresponding Relay AST node and using the variables repeatedly, as below (a C++ program using the corresponding API bindings could accomplish the same thing): -``` +``` sum1 = relay.add(a, b) sum2 = relay.add(sum1, sum1) relay.multiply(sum2, sum2) @@ -578,7 +571,7 @@ Relay has a simple if-then-else expression that allows programs to branch on a single value of type `bool`, i.e., a zero-rank tensor of booleans (`Tensor[(), bool]`). -``` +``` if (%t == %u) { %t } else { @@ -593,13 +586,13 @@ evaluates to the value of the \"then\" branch if the condition value evaluates to `True` and evaluates to the value of the \"else\" branch if the condition value evaluates to `False`. -See :py`~tvm.relay.expr.If`{.interpreted-text role="class"} for its +See `If` for its definition and documentation. ## ADT Matching Instances of algebraic data types (ADTs), as discussed in the -`ADT overview`{.interpreted-text role="ref"}, are +`ADT overview`, are containers that store the arguments passed to the constructor used to create them, tagged by the constructor name. @@ -612,8 +605,7 @@ expressions are capable of more general pattern-matching than simply splitting by constructors: any ADT instance nested inside an instance (e.g., a list of lists) can be deconstructed at the same time as the outer instance, while the different fields of the instance can be bound -to variables. (See `this section`{.interpreted-text -role="ref"} for a detailed description of ADT pattern-matching.) +to variables. (See `this section` for a detailed description of ADT pattern-matching.) A match expression is defined using the input value (an expression) and a list of clauses, each of which consists of a pattern and an @@ -623,7 +615,7 @@ evaluated and returned. For example, suppose we have an ADT for natural numbers: -``` +``` data Nat { Z : () -> Nat # zero S : (Nat) -> Nat # successor (+1) to a nat @@ -632,7 +624,7 @@ data Nat { Then the following function subtracts one from a passed nat: -``` +``` fn(%v: Nat[]) -> Nat[] { match(%v) { case Z() { Z() } @@ -645,7 +637,7 @@ The following function subtracts two from its argument if it is at least two and returns the argument otherwise, using a nested constructor pattern: -``` +``` fn(%v : Nat[]) -> Nat[] { match(%v) { case S(S(%n)) { %n } @@ -659,7 +651,7 @@ As aforementioned, the ordering of match clauses is relevant. In the below example, the first clause will always match so those below it can never run: -``` +``` fn(%v : Nat[]) -> Nat[] { match(%v) { case _ { %v } @@ -670,7 +662,7 @@ fn(%v : Nat[]) -> Nat[] { } ``` -See :py`~tvm.relay.adt.Match`{.interpreted-text role="class"} for its +See `Match` for its definition and documentation. ## TempExprs @@ -688,5 +680,5 @@ For an example of `TempExpr` being used in a pass, see to store information about scaling parameters as the pass tries to fold these into the weights of a convolution. -See :py`~tvm.relay.expr.TempExpr`{.interpreted-text role="class"} for +See `TempExpr` for its definition and documentation. diff --git a/versioned_docs/version-0.10.0/reference/langref/relay_op.md b/versioned_docs/version-0.10.0/reference/langref/relay_op.md index f38049e5..2bab53a7 100644 --- a/versioned_docs/version-0.10.0/reference/langref/relay_op.md +++ b/versioned_docs/version-0.10.0/reference/langref/relay_op.md @@ -9,11 +9,7 @@ front-end frameworks and provide basic building blocks for optimization. Since deep learning is a fast evolving field, it is possible to have operators that are not in here. -::: note -::: title -Note -::: - +:::warning This document will directly list the function signature of these operators in the python frontend. ::: @@ -24,20 +20,20 @@ operators in the python frontend. This level enables fully connected multi-layer perceptron. -::: {.autosummary nosignatures=""} +``` tvm.relay.log tvm.relay.sqrt tvm.relay.rsqrt tvm.relay.exp tvm.relay.sigmoid tvm.relay.add tvm.relay.subtract tvm.relay.multiply tvm.relay.divide tvm.relay.mod tvm.relay.tanh tvm.relay.concatenate tvm.relay.expand_dims tvm.relay.nn.softmax tvm.relay.nn.log_softmax tvm.relay.nn.relu tvm.relay.nn.dropout tvm.relay.nn.batch_norm tvm.relay.nn.bias_add -::: +``` **Level 2: Convolutions** This level enables typical convnet models. -::: {.autosummary nosignatures=""} +``` tvm.relay.nn.conv2d tvm.relay.nn.conv2d_transpose tvm.relay.nn.conv3d tvm.relay.nn.conv3d_transpose tvm.relay.nn.dense tvm.relay.nn.max_pool2d tvm.relay.nn.max_pool3d tvm.relay.nn.avg_pool2d tvm.relay.nn.avg_pool3d @@ -50,13 +46,13 @@ tvm.relay.nn.contrib_conv2d_winograd_without_weight_transform tvm.relay.nn.contrib_conv2d_winograd_weight_transform tvm.relay.nn.contrib_conv3d_winograd_without_weight_transform tvm.relay.nn.contrib_conv3d_winograd_weight_transform -::: +``` **Level 3: Additional Math And Transform Operators** This level enables additional math and transform operators. -::: {.autosummary nosignatures=""} +``` tvm.relay.nn.leaky_relu tvm.relay.nn.prelu tvm.relay.reshape tvm.relay.reshape_like tvm.relay.copy tvm.relay.transpose tvm.relay.squeeze tvm.relay.floor tvm.relay.ceil tvm.relay.sign @@ -68,11 +64,11 @@ tvm.relay.split tvm.relay.arange tvm.relay.meshgrid tvm.relay.stack tvm.relay.repeat tvm.relay.tile tvm.relay.reverse tvm.relay.reverse_sequence tvm.relay.unravel_index tvm.relay.sparse_to_dense -::: +``` **Level 4: Broadcast and Reductions** -::: {.autosummary nosignatures=""} +``` tvm.relay.right_shift tvm.relay.left_shift tvm.relay.equal tvm.relay.not_equal tvm.relay.greater tvm.relay.greater_equal tvm.relay.less tvm.relay.less_equal tvm.relay.all tvm.relay.any @@ -83,30 +79,30 @@ tvm.relay.sum tvm.relay.max tvm.relay.min tvm.relay.mean tvm.relay.variance tvm.relay.std tvm.relay.mean_variance tvm.relay.mean_std tvm.relay.prod tvm.relay.strided_slice tvm.relay.broadcast_to -::: +``` **Level 5: Vision/Image Operators** -::: {.autosummary nosignatures=""} +``` tvm.relay.image.resize1d tvm.relay.image.resize2d tvm.relay.image.resize3d tvm.relay.image.crop_and_resize tvm.relay.image.dilation2d tvm.relay.vision.multibox_prior tvm.relay.vision.multibox_transform_loc tvm.relay.vision.nms tvm.relay.vision.yolo_reorg -::: +``` **Level 6: Algorithm Operators** -::: {.autosummary nosignatures=""} +``` tvm.relay.argsort tvm.relay.topk -::: +``` **Level 10: Temporary Operators** This level support backpropagation of broadcast operators. It is temporary. -::: {.autosummary nosignatures=""} +``` tvm.relay.broadcast_to_like tvm.relay.collapse_sum_like tvm.relay.slice_like tvm.relay.shape_of tvm.relay.ndarray_size tvm.relay.layout_transform tvm.relay.device_copy @@ -114,13 +110,13 @@ tvm.relay.annotation.on_device tvm.relay.reverse_reshape tvm.relay.sequence_mask tvm.relay.nn.batch_matmul tvm.relay.nn.adaptive_max_pool2d tvm.relay.nn.adaptive_avg_pool2d tvm.relay.one_hot -::: +``` **Level 11: Dialect Operators** This level supports dialect operators. -::: {.autosummary nosignatures=""} +``` tvm.relay.qnn.op.add tvm.relay.qnn.op.batch_matmul tvm.relay.qnn.op.concatenate tvm.relay.qnn.op.conv2d tvm.relay.qnn.op.conv2d_transpose tvm.relay.qnn.op.dense @@ -128,4 +124,4 @@ tvm.relay.qnn.op.dequantize tvm.relay.qnn.op.mul tvm.relay.qnn.op.quantize tvm.relay.qnn.op.requantize tvm.relay.qnn.op.rsqrt tvm.relay.qnn.op.simulated_dequantize tvm.relay.qnn.op.simulated_quantize tvm.relay.qnn.op.subtract -::: +``` diff --git a/versioned_docs/version-0.10.0/reference/langref/relay_pattern.md b/versioned_docs/version-0.10.0/reference/langref/relay_pattern.md index 51500f48..ef92242f 100644 --- a/versioned_docs/version-0.10.0/reference/langref/relay_pattern.md +++ b/versioned_docs/version-0.10.0/reference/langref/relay_pattern.md @@ -160,8 +160,8 @@ def test_match_tuple(): The next example is matching a pattern of batch_norm -\> get(0) -\> relu. Note that you can also use -[is_tuple_get_item(bn_node)]{.title-ref} to match a -[TupleGetItem]{.title-ref} node with any index. +[is_tuple_get_item(bn_node)] to match a +[TupleGetItem] node with any index. ``` python def test_match_tuple_get_item(): @@ -332,7 +332,7 @@ doesn\'t correspond to a set of patterns nodes exactly 1-to-1. There are a few other places where we support such \"fuzzy\" matching. Tuples, Functions, and Call nodes with any number of inputs can be -matched by passing [None]{.title-ref} as the argument value, i.e.: +matched by passing [None] as the argument value, i.e.: tuple_pattern = is_tuple(None) func_pattern = FunctionPattern(None, wildcard() + wildcard()) @@ -345,9 +345,9 @@ arguments. Additionally, we support matching Functions with fuzzy bodies, i.e., a function body that is under constrained by the pattern. The pattern [FunctionPattern(\[is_var(), is_var()\], wildcard() + -wildcard()\])]{.title-ref} will match [relay.Function(\[x, y\], x + -y)]{.title-ref}, but it will also match [relay.Function(\[x, y\], x \* -x + y)]{.title-ref}. In the second case, the pattern doesn\'t perfectly +wildcard()\])] will match [relay.Function(\[x, y\], x + +y)], but it will also match [relay.Function(\[x, y\], x \* +x + y)]. In the second case, the pattern doesn\'t perfectly constrain the body of the function, so the resulting match is fuzzy. ## Pattern Language Design diff --git a/versioned_docs/version-0.10.0/reference/langref/relay_type.md b/versioned_docs/version-0.10.0/reference/langref/relay_type.md index 00ef5d52..4e469ee1 100644 --- a/versioned_docs/version-0.10.0/reference/langref/relay_type.md +++ b/versioned_docs/version-0.10.0/reference/langref/relay_type.md @@ -49,7 +49,7 @@ to Relay expressions. The base type for all Relay types. All Relay types are sub-classes of this base type. -See :py`~tvm.relay.ty.Type`{.interpreted-text role="class"} for its +See `Type` for its definition and documentation. ## Tensor Type @@ -71,11 +71,11 @@ shapes will be concrete before running a program. For example, here is a simple concrete tensor type corresponding to a 10-by-10 tensor of 32-bit floats: -``` +``` Tensor[(10, 10), float32] ``` -See :py`~tvm.relay.ty.TensorType`{.interpreted-text role="class"} for +See `TensorType` for its definition and documentation. ## Tuple Type @@ -93,13 +93,13 @@ For example, in the below code, `%t` is of type `(Tensor[(), bool], Tensor[(10, 10), float32])` and `%c` is of type `Tensor[(10, 10), float32]`. -``` +``` let %t = (False, Constant(1, (10, 10), float32)); let %c = %t.1; %c ``` -See :py`~tvm.relay.ty.TupleType`{.interpreted-text role="class"} for its +See `TupleType` for its definition and documentation. ## Type Parameter @@ -125,14 +125,14 @@ parameters at call sites. For example, `s` below is a type parameter of kind `Shape` and it will be substituted with `(10, 10)` at the call site below: -``` +``` def @plus(%t1 : Tensor[s, float32], %t2 : Tensor[s, float32]) { add(%t1, %t2) } plus<(10, 10)>(%a, %b) ``` -See :py`~tvm.relay.ty.TypeVar`{.interpreted-text role="class"} for its +See `TypeVar` for its definition and documentation. ## Type Constraint @@ -141,12 +141,12 @@ This is an abstract class representing a type constraint, to be elaborated upon in further releases. Currently, type relations are the only type constraints provided; they are discussed below. -See :py`~tvm.relay.ty.TypeConstraint`{.interpreted-text role="class"} +See `TypeConstraint` for its definition and documentation. ## Function Type -A function type in Relay, see [tvm/relay/type.h]{.title-ref} for more +A function type in Relay, see [tvm/relay/type.h] for more details. This is the type assigned to functions in Relay. A function type @@ -162,7 +162,7 @@ hold at every call site of the function. The type constraints typically take the function\'s argument types and the function\'s return type as arguments, but may take a subset instead. -See :py`~tvm.relay.ty.FuncType`{.interpreted-text role="class"} for its +See `FuncType` for its definition and documentation. ## Type Relation @@ -175,8 +175,8 @@ Relay to statically reason about the shapes in these cases. A type relation `R` describes a relationship between the input and output types of a Relay function. Namely, `R` is a function on types -that outputs [true]{.title-ref} if the relationship holds and -[false]{.title-ref} if it fails to hold. Types given to a relation may +that outputs [true] if the relationship holds and +[false] if it fails to hold. Types given to a relation may be incomplete or include shape variables, so type inference must assign appropriate values to incomplete types and shape variables for necessary relations to hold, if such values exist. @@ -200,7 +200,7 @@ Flatten(Tensor(sh, bt), O) :- If we have a relation like `Broadcast` it becomes possible to type operators like `add`: -``` +``` add : fn(t1, t2) -> t3 where Broadcast ``` @@ -234,7 +234,7 @@ Presently all of the relations used in Relay are implemented in C++. See the files in `src/relay/op` for examples of relations implemented in C++. -See :py`~tvm.relay.ty.TypeRelation`{.interpreted-text role="class"} for +See `TypeRelation` for its definition and documentation. ## Incomplete Type @@ -252,15 +252,15 @@ concrete type arguments (instantiated) at call sites, whereas incomplete types may appear anywhere in the program and are filled in during type inference. -See :py`~tvm.relay.ty.IncompleteType`{.interpreted-text role="class"} +See `IncompleteType` for its definition and documentation. -## Algebraic Data Types {#adt-typing} +## Algebraic Data Types *Note: ADTs are not currently supported in the text format.* Algebraic data types (ADTs) are described in more detail in -`their overview `{.interpreted-text role="ref"}; this +`their overview `; this section describes their implementation in the type system. An ADT is defined by a collection of named constructors, each of which @@ -298,7 +298,7 @@ Recursion in an ADT definition thus follows just like recursion for a global function: the constructor can simply reference the ADT handle (global type variable) in its definition. -See :py`~tvm.relay.ty.GlobalTypeVar`{.interpreted-text role="class"} for +See `GlobalTypeVar` for its definition and documentation. ### Definitions (Type Data) @@ -306,8 +306,7 @@ its definition and documentation. Besides a name, an ADT needs to store the constructors that are used to define it and any type parameters used within them. These are stored in the module, -`analogous to global function definitions`{.interpreted-text -role="ref"}. +`analogous to global function definitions`. While type-checking uses of ADTs, the type system sometimes must index into the module using the ADT name to look up information about @@ -316,7 +315,7 @@ a match expression clause, the type-checker must check the constructor\'s signature to ensure that any bound variables are being assigned the correct types. -See :py`~tvm.relay.adt.TypeData`{.interpreted-text role="class"} for its +See `TypeData` for its definition and documentation. ### Type Call @@ -340,7 +339,7 @@ one argument for each type parameter in the ADT definition. (An ADT definition with no arguments means that any instance will have no type arguments passed to the type call). -See :py`~tvm.relay.ty.TypeCall`{.interpreted-text role="class"} for its +See `TypeCall` for its definition and documentation. ### Example: List ADT @@ -349,7 +348,7 @@ This subsection uses the simple list ADT (included as a default ADT in Relay) to illustrate the constructs described in the previous sections. Its definition is as follows: -``` +``` data List { Nil : () -> List Cons : (a, List[a]) -> List @@ -366,7 +365,7 @@ the `Cons` constructor is accomplished by using the global type variable Below two instances of lists with their types given, using type calls: -``` +``` Cons(1, Cons(2, Nil())) # List[Tensor[(), int32]] Cons((1, 1), Cons((2, 2), Nil())) # List[(Tensor[(), int32], Tensor[(), int32])] ``` @@ -378,7 +377,7 @@ take any arguments that use a type parameter. (Nevertheless, for any Here are two lists that are rejected by the type system because the type parameters do not match: -``` +``` # attempting to put an integer on a list of int * int tuples Cons(1, Cons((1, 1), Nil())) # attempting to put a list of ints on a list of lists of int * int tuples diff --git a/versioned_docs/version-0.10.0/tutorial/06-tensor_expr.md b/versioned_docs/version-0.10.0/tutorial/06-tensor_expr.md index 57206cf7..04fb2d47 100644 --- a/versioned_docs/version-0.10.0/tutorial/06-tensor_expr.md +++ b/versioned_docs/version-0.10.0/tutorial/06-tensor_expr.md @@ -318,7 +318,7 @@ if run_cuda: # 编译后的 TVM 函数提供了一个任何语言都可调用的 C API。 # # 我们在 Python 中提供了最小数组 API 来进行快速测试以及制作原型。 - # 数组 API 基于 `DLPack `_ 标准。 + # 数组 API 基于 `DLPack [https://github.com/dmlc/dlpack](https://github.com/dmlc/dlpack)`_ 标准。 # # - 首先创建 GPU 设备。 # - 然后 tvm.nd.array 将数据复制到 GPU 上。 diff --git a/versioned_docs/version-0.10.0/tutorial/07-ops_AutoTVM.md b/versioned_docs/version-0.10.0/tutorial/07-ops_AutoTVM.md index c1ab10ee..80e4b1e2 100644 --- a/versioned_docs/version-0.10.0/tutorial/07-ops_AutoTVM.md +++ b/versioned_docs/version-0.10.0/tutorial/07-ops_AutoTVM.md @@ -297,7 +297,7 @@ Finish loading 10 records ## 总结 -本教程展示了如何构建算子模板,使得 TVM 能够搜索参数空间,并选择优化的调度配置。为了更深入地了解其工作原理,推荐基于 :ref: *张量表达式入门 _* 教程中演示的调度操作,向调度添加新的搜索参数。接下来的章节将演示 AutoScheduler,它是TVM 中一种优化常用算子的方法,同时无需用户提供自定义的模板。 +本教程展示了如何构建算子模板,使得 TVM 能够搜索参数空间,并选择优化的调度配置。为了更深入地了解其工作原理,推荐基于 :ref: *张量表达式入门 ``* 教程中演示的调度操作,向调度添加新的搜索参数。接下来的章节将演示 AutoScheduler,它是TVM 中一种优化常用算子的方法,同时无需用户提供自定义的模板。 [下载 Python 源代码:autotvm_matmul_x86.py](https://tvm.apache.org/docs/_downloads/8e7bbc9dbdda76ac573b24606b41c006/autotvm_matmul_x86.py) diff --git a/versioned_docs/version-0.10.0/tutorial/10-rpc.md b/versioned_docs/version-0.10.0/tutorial/10-rpc.md index 4f8c2d59..8c7b659a 100644 --- a/versioned_docs/version-0.10.0/tutorial/10-rpc.md +++ b/versioned_docs/version-0.10.0/tutorial/10-rpc.md @@ -98,11 +98,11 @@ func.export_library(path) 除了 `-mtriple`,还可设置其他编译选项,例如: -* **-mcpu=** +* **`-mcpu=`** 指定生成的代码运行的芯片架构。默认情况这是从 target 三元组推断出来的,并自动检测到当前架构。 -* **-mattr=a1,+a2,-a3,…** +* **`-mattr=a1,+a2,-a3,…`** 覆盖或控制 target 的指定属性,例如是否启用 SIMD 操作。默认属性集由当前 CPU 设置。要获取可用属性列表,执行: diff --git a/versioned_docs/version-0.10.0/tutorial/11-quick_start.md b/versioned_docs/version-0.10.0/tutorial/11-quick_start.md index f5b08223..3a4c0e1f 100644 --- a/versioned_docs/version-0.10.0/tutorial/11-quick_start.md +++ b/versioned_docs/version-0.10.0/tutorial/11-quick_start.md @@ -52,7 +52,7 @@ mod, params = relay.testing.resnet.get_workload( print(mod.astext(show_meta_data=False)) ``` -访问代码中的 mod.astext 更多信息: +访问代码中的 mod.astext 更多信息:[https://tvm.apache.org/docs/reference/api/python/ir.html#tvm.ir.Node.astext](https://tvm.apache.org/docs/reference/api/python/ir.html#tvm.ir.Node.astext) 输出结果: @@ -250,4 +250,4 @@ tvm.testing.assert_allclose(out_deploy, out, atol=1e-5) [下载 Python 源代码:relay_quick_start.py](https://tvm.apache.org/docs/_downloads/cc6d9aebd24d54d81752590cbc8f99f9/relay_quick_start.py) -[下载 Jupyter Notebook:relay_quick_start.ipynb](https://tvm.apache.org/docs/_downloads/3dd2108354ac3028c96bcd6a0c7899dd/relay_quick_start.ipynb) \ No newline at end of file +[下载 Jupyter Notebook:relay_quick_start.ipynb](https://tvm.apache.org/docs/_downloads/3dd2108354ac3028c96bcd6a0c7899dd/relay_quick_start.ipynb)