feat : add License page

This commit is contained in:
cxymds
2025-03-28 18:04:19 +08:00
parent 19f4e82b0d
commit e2fa738894
4 changed files with 186 additions and 5 deletions
+159
View File
@@ -0,0 +1,159 @@
<template>
<div class="license-page eading-7">
<page-header>
<template #title>
<h1 class="text-2xl font-bold">License</h1>
</template>
</page-header>
<page-content>
<n-card size="large" >
<template #header>
<h1 class="text-2xl font-bold text-center">Apache许可证</h1>
</template>
<article>
<section style="max-width: 1220px;margin: 0 auto;">
<n-p>
2.0 2004 1
</n-p>
<n-p class=" mt-2">
<n-a href="http://www.apache.org/licenses/"><n-text type="info">http://www.apache.org/licenses/</n-text></n-a>
</n-p>
<n-divider />
<n-h3>使用复制和分发的条款和条件</n-h3>
<n-h4>1. 定义</n-h4>
<n-p>
本许可证系指本文档第 1 节至第 9 节所定义的使用复制和分发的条款和条件
</n-p>
<n-p>
许可方系指授予本许可证的版权所有者或经其授权的实体
</n-p>
<n-p>
法人实体系指行为实体及其他控制该实体受该实体控制或与该实体在共同控制之下的实体的集合就本条定义而言控制(i)直接或间接地引导或管理该实体的权力不论通过合同或其他形式(ii)拥有百分之五十50%或以上流通股的所有权(iii)拥有该实体的实益所有权
</n-p>
<n-p>
您的系指行使本许可证下许可的个人或法人实体
</n-p>
<n-p>
源码形式系指进行修改的首选形式包括但不限于软件源代码源文档和配置文件
</n-p>
<n-p>
目标码形式系指对源码形式进行机器转换或翻译而产生的任何形式包括但不限于已编译的目标代码生成的文档和转换的其他媒体类型
</n-p>
<n-p>
本作品系指在本许可证下无论以源码形式或目标码形式提供的原创作品如作品中所包含或附加的版权声明所述示例请见下文附录
</n-p>
<n-p>
衍生作品系指基于或衍生于本作品的任何作品无论是源码形式或目标码形式且对本作品的编辑修订注释阐述或其他修改在整体上形成原创作品就本许可证而言衍生作品不包括与本作品及其衍生作品仍保持分离或仅通过接口连接或以名称绑定的作品
</n-p>
<n-p>
贡献系指由版权所有者或由经其授权的个人或法人实体有意提交给许可方以纳入本作品的任何原创作品包括本作品的原始版本和对本作品的任何修改或添加或其衍生作品就本条定义而言提交系指发送给许可方或其代表的任何电子口头或书面形式的通信内容包括但不限于为供讨论和改进本作品目的发送到许可方管理的或代表许可方的电子邮件列表源代码控制系统和发布跟踪系统的通信内容但不包括版权所有者明确标注或以其他方式书面指定为非贡献的通信内容
</n-p>
<n-p>
贡献者是指许可方以及其贡献已被许可方接收且许可方代表其将贡献合并入本作品中的任何个人或法人实体
</n-p>
<n-h4>
2. 版权许可的授予
</n-h4>
<n-p>
受限于本许可证的条款和条件每个贡献者特此授予您永久的全球性的非排他性的免交易费的免许可费的不可撤销的版权许可以复制准备衍生作品公开展示公开表演分许可和分发本作品及其衍生作品以源码或目标码形式
</n-p>
<n-h4>
3. 专利许可的授予
</n-h4>
<n-p>
受限于本许可证的条款和条件每个贡献者特此授予您永久的全球性的非排他性的免交易费的免许可费的不可撤销的按本节规定的除外专利许可以制造委托制造使用许诺销售销售进口及以其他方式转移本作品该许可仅及于贡献者有权许可且由其贡献本身或由其贡献与其提交时所针对的本作品形成的组合所必然侵犯的专利权利要求如果您对任何实体提起专利诉讼包括在法律诉讼中的交叉诉讼主张或反诉主张主张本作品或纳入本作品的贡献构成专利的直接侵权或帮助侵权则在本许可证下授予您的任何专利许可自该诉讼提起之日起终止
</n-p>
<n-h4>
4. 再分发
</n-h4>
<n-p>
您可在任何媒介上复制和分发本作品或其衍生作品的副本无论是否经过修改无论以源码形式或目标形式只要您满足以下条件
</n-p>
<n-ol>
<n-li>
1. 您必须向本作品或衍生作品的任何其他接收者提供本许可证的副本
</n-li>
<n-li>
2. 您必须使任何修改后的文件都附上显著的声明说明您修改了该文件
</n-li>
<n-li>
3. 您必须在您分发的任何衍生作品的源码形式中保留来自本作品源码形式的所有版权专利商标和权属声明但与该衍生作品任何部分无关的声明除外
</n-li>
<n-li>
4. 如果本作品分发时包含NOTICE文本文件则您分发的任何衍生作品必须至少在下述一处位置包含本文件中的署名声明的可读副本但与该衍生作品任何部分无关的声明除外在作为衍生作品一部分的 NOTICE 文本文件中在与衍生作品一并提供的源码形式或文档中或在衍生作品生成的显示界面中通常展示第三方声明的任何位置如有NOTICE 文件中的内容仅为提供信息并不修改本许可您可以在您分发的衍生作品中添加您自己的权属声明与本作品的NOTICE文本并列或作为其附录只要该添加的权属声明不被解释为修改本许可
</n-li>
</n-ol>
<n-p>
您可以对您的修改部分添加您自己的版权声明并可以就您的修改部分或就任何衍生作品整体提供额外或不同的许可条款和条件以使用复制或分发只要您使用复制和分发本作品符合本许可规定的条件
</n-p>
<n-h4>
5. 贡献的提交
</n-h4>
<n-p>
除非您另有明确说明您向许可方有意提交的任何以纳入本作品的贡献均受本许可证的条款和条件约束而不带有任何附加条款或条件尽管有上述规定本许可证中任何内容均不会取代或修改您可能与许可方另行签署的任何关于该贡献的许可协议的条款
</n-p>
<n-h4>
6. 商标
</n-h4>
<n-p>
本许可证不授予使用许可方的商号商标服务标志或产品名称的许可但在描述本作品来源及复制 NOTICE 文件内容时因合理和习惯用法需要的除外
</n-p>
<n-h4>
7. 免责申明
</n-h4>
<n-p>
除非所适用法律要求或经书面同意许可方就本作品及每个贡献者就其贡献按原样提供没有任何明示或默示的保证或条件包括但不限于关于权属不侵权适销性或特定目的适用性的任何保证或条件您自行负责确认使用或再分发本作品的适当性并承担与您行使本许可证下所授许可相关的任何风险
</n-p>
<n-h4>
8. 责任限制
</n-h4>
<n-p>
在任何情况和任何法律理论下无论在侵权包括过失合同或其他方面除非所适用法律要求如故意或严重过失行为或经书面同意任何贡献者均不对您的损失承担责任包括因本许可证或因使用或无法使用本作品而导致的任何直接的间接的特定的偶然性的或继发性的损失包括但不限于商誉损失停工计算机失灵或故障或任何其他商业损害或损失即使该贡献者曾被告知该损失的可能性
</n-p>
<n-h4>
9. 接受保证或附加责任
</n-h4>
<n-p>
在再分发本作品或其衍生作品时您可以选择接受支持保证补偿或其他符合本许可证的责任义务和/或权利并为之收取费用然而在接受该义务时您只能代表您自己行事且责任完全由您承担不得代表任何其他贡献者且在其他贡献者因您接受此类保证或附加责任而产生赔偿责任或主张时您必须同意补偿辩护并使该贡献者免受该损害
</n-p>
<n-h4>
条款和条件结束
</n-h4>
<n-h4>
附录如何将 Apache 许可证应用到您的作品中
</n-h4>
<n-p>
在您作品中包含 Apache 许可证的副本通常在名为LICENSE的文件中并考虑在您作品中包含一个引用该许可证的NOTICE文件
</n-p>
<n-p>
要将 Apache 许可证应用于您的作品请附上下述声明模板并将由括号[]包围的字段替换为您自己的标识信息不要包含方括号该文本应纳入文件格式适合的注释语法中我们还建议将文件名或类名和目的描述与版权声明放在同一打印页面以便于在第三方档案中识别
</n-p>
<n-p> 版权所有[rustfs][版权所有者名称]</n-p>
<n-p>根据 Apache 许可证第 2.0 本许可证许可</n-p>
<n-p>除非符合本许可证的规定否则您不得使用此文件</n-p>
<n-p>您可以在此获取本许可证的副本</n-p>
<n-p>
除非所适用法律要求或经书面同意在本许可证下分发的软件是按原样分发的没有任何形式的保证或条件不论明示或默示请查阅本许可证了解有关本许可证下许可和限制的具体要求
</n-p>
</section>
</article>
</n-card>
</page-content>
</div>
</template>
<script setup>
import { NCard, NDivider ,NOl} from 'naive-ui';
</script>
<style scoped>
article h2, article h3 {
margin-top: 20px;
}
article p {
margin-bottom: 15px;
}
</style>
+7 -3
View File
@@ -14,7 +14,7 @@
</div>
<div class="flex items-center gap-4">
<n-button @click="() => (formVisible = true)">
<n-button @click="() => openForm()">
<Icon name="ri:add-line" class="mr-2" />
<span>添加生命周期规则</span>
</n-button>
@@ -27,7 +27,7 @@
<n-data-table class="border dark:border-neutral-700 rounded overflow-hidden" :columns="columns" :data="pageData" :pagination="false" :bordered="false" />
</page-content>
<buckets-info ref="infoRef"></buckets-info>
<lifecycle-new-form ref="formRef"></lifecycle-new-form>
</div>
</template>
@@ -36,7 +36,6 @@ import { Icon } from '#components'
import { NButton, NSpace, type DataTableColumns } from 'naive-ui'
const { listBuckets } = useBucket({});
const formVisible = ref(false);
const searchTerm = ref('');
interface RowData {
@@ -129,6 +128,11 @@ const bucketName = ref<string>(
const pageData = ref([])
const formRef = ref()
const openForm = ()=>{
formRef.value.open()
}
const handleRowDelete = (row: RowData, e: Event) => {
e.stopPropagation();
console.log(row);