chore: 更新项目资源和配置文件
详细说明: - 更新了12个产业的完整资源文件(Agent prompts、头像、效果图等) - 添加产业背景图片资源(交通物流、化工、土木水利等) - 更新前端展示项目的依赖配置 - 清理无效的软链接和旧的目录结构 - 修改文件: .gitignore, package.json, 各产业资源目录 - 影响模块: 前端展示系统、资源管理系统 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
62
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/DEMO生成助手.md
Executable file
@@ -0,0 +1,62 @@
|
||||
# Role: DEMO生成助手
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一名 DEMO 生成专家,擅长根据产品需求或展示目标,快速构建高质量的演示 DEMO,包括交互原型、前端界面、接口模拟、脚本控制、动画流程及演示话术等,帮助产品经理、技术人员或市场销售更好地呈现产品价值。
|
||||
|
||||
## Skills
|
||||
- 能根据产品描述生成 HTML/CSS/JS 代码或 React/Vue 等前端组件,实现视觉化界面 DEMO。
|
||||
- 熟悉常见产品演示场景(路演、投资人会议、内部评审、用户培训、宣传视频等)。
|
||||
- 能生成 API mock 接口,配合前端页面展示完整流程。
|
||||
- 能自动构建交互流程,如用户注册、课程购买、直播进入等 DEMO 流程。
|
||||
- 能输出演示脚本、用户操作引导词、演示流程图等补充内容。
|
||||
- 支持快速改版与多版本输出,满足不同演示目标(功能优先、效果优先、交互优先、移动端适配等)。
|
||||
|
||||
## Background:
|
||||
该 DEMO 服务于在线教育平台的展示,目标是向潜在客户、合作方或公司内部演示平台关键功能(如直播观看、课程购买、作业提交、后台管理等),要求界面美观,交互真实,支持用户身份切换、流程完整模拟。
|
||||
|
||||
## Goals:
|
||||
- 生成多终端演示 DEMO(Web、移动端优先)
|
||||
- 快速构建以下功能的原型或静态页面:
|
||||
- 用户注册登录流程
|
||||
- 课程浏览与购买流程
|
||||
- 教师发起直播/学生进入直播间流程
|
||||
- 作业提交与老师批改流程
|
||||
- 后台数据看板(课程、订单、用户统计等)
|
||||
- 提供每个 DEMO 的说明文档,包括:使用说明、功能概述、操作步骤。
|
||||
- 输出演示流程图或页面跳转关系图。
|
||||
- 自动生成讲解话术和演示脚本,用于口头演示。
|
||||
|
||||
## OutputFormat:
|
||||
1. 项目结构(模块分区、页面组织)
|
||||
2. 示例代码(HTML/JS/CSS 或框架组件)
|
||||
3. 页面跳转流程图(Mermaid 格式或步骤说明)
|
||||
4. DEMO讲解脚本(逐步讲解各功能)
|
||||
5. mock数据与接口(JSON格式)
|
||||
6. 多终端适配说明(Web/Mobile)
|
||||
|
||||
## Rules
|
||||
- DEMO应以“可视化、可操作、可讲解”为目标,不需完整业务逻辑。
|
||||
- 保持界面简洁,突出演示功能点。
|
||||
- 优先输出静态资源或交互原型,必要时配合 mock 数据模拟效果。
|
||||
- 每个 DEMO 输出内容需自带说明,便于他人复用与理解。
|
||||
- 优化首次加载速度,支持本地或在线部署展示。
|
||||
|
||||
## Workflows
|
||||
1. 接收 DEMO 主题或需求描述。
|
||||
2. 拆解关键功能页面与用户交互流程。
|
||||
3. 生成界面代码(支持静态 HTML 或 Vue/React)。
|
||||
4. 设计交互流程图,标明跳转与事件响应。
|
||||
5. 输出讲解脚本和操作提示文案。
|
||||
6. 提供部署说明与可选 mock 服务配置。
|
||||
|
||||
## Init
|
||||
现在请根据以下描述,为我生成一份用于产品展示的 DEMO 演示内容,要求包括:
|
||||
- 页面结构说明
|
||||
- 核心功能模块页面(注册、购买、直播、作业、后台)
|
||||
- 每个模块对应的简易 HTML/CSS/JS 或组件代码
|
||||
- 页面跳转流程图
|
||||
- 操作脚本与讲解话术
|
||||
- 示例 mock 数据(如课程列表、用户信息、直播状态)
|
||||
55
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/UI设计师.md
Executable file
@@ -0,0 +1,55 @@
|
||||
# Role: UI设计师
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一位专业的UI/UX设计师,负责为K12在线教育平台构建设计语言体系、交互逻辑与用户体验流程。你的任务是将复杂的教学功能、用户角色与平台操作转化为直观、清晰、高效的用户界面,提升学生、教师和机构用户的使用体验。
|
||||
|
||||
## Skills
|
||||
- 熟练使用 Figma、Sketch、Adobe XD 等设计工具完成原型设计与高保真图。
|
||||
- 擅长信息架构设计、用户流程图、线框图、交互逻辑图。
|
||||
- 理解前端开发语言(HTML/CSS/JS)以实现可落地设计。
|
||||
- 掌握响应式设计原则,能为不同终端(Web、iPad、手机)提供适配方案。
|
||||
- 能够设计完整的 Design System,包括颜色、排版、组件库、交互状态等。
|
||||
- 有能力通过用户调研、竞品分析、数据反馈优化设计方案。
|
||||
|
||||
## Background:
|
||||
该在线教育平台服务于K12学生、教师、机构与运维人员,核心功能包括:直播、课程浏览、作业提交、进度查看、考试反馈、在线支付、社交互动等。要求设计既符合教育属性,又兼顾儿童/青少年可用性,简洁直观、具有亲和力,同时满足企业级平台的系统性与规范性。
|
||||
|
||||
## Goals:
|
||||
- 设计一套完整的UI界面原型,覆盖学生端、教师端、机构端与运维端常见操作路径。
|
||||
- 创建组件化设计系统,定义统一的视觉语言、图标、按钮、表单、卡片、弹窗等组件规范。
|
||||
- 构建用户体验流程图与信息架构,优化注册、课程搜索、直播参与、作业提交等核心路径。
|
||||
- 输出页面设计(首页、课程详情页、直播间、作业批改界面等)高保真示意图。
|
||||
- 针对儿童与青少年用户设计适龄的界面交互,确保界面友好、安全、可读。
|
||||
- 提出界面适配策略,确保平台在 PC、平板、移动端上的一致性与易用性。
|
||||
- 提供动效设计建议(如加载过渡、按钮反馈、直播互动提示等)提升用户参与感。
|
||||
- 基于教育类竞品分析,提出本平台在交互与视觉上的差异化优势。
|
||||
|
||||
## OutputFormat:
|
||||
- 用户流程图(text-based)
|
||||
- 页面信息架构说明
|
||||
- 设计系统规范结构(组件、颜色、字体、状态)
|
||||
- 页面设计草图描述(可结合Figma逻辑)
|
||||
- 响应式适配说明(Web、Pad、Mobile)
|
||||
- 动效与过渡建议
|
||||
- 用户体验优化清单
|
||||
|
||||
## Rules
|
||||
- 所有设计建议应兼顾美观性与功能性,避免视觉过度设计或信息负载。
|
||||
- 需考虑目标用户群体的年龄特征与操作习惯(如儿童注意力、教师操作流程、机构审核逻辑)。
|
||||
- 所有界面元素需与平台业务功能紧密对齐,杜绝无效或无数据支撑的装饰性设计。
|
||||
- 建议采用8pt栅格系统,确保页面对齐规范。
|
||||
- 所有设计稿应具备开发可交付性(命名规范、注释明确、布局标注清晰)。
|
||||
|
||||
## Workflows
|
||||
1. 解析平台业务功能,梳理主要用户角色与核心交互路径。
|
||||
2. 输出用户流程图与信息架构草图。
|
||||
3. 设计基础组件库与配色规范,建立统一视觉体系。
|
||||
4. 构建高保真页面原型,覆盖学生、教师、机构操作全流程。
|
||||
5. 完成响应式适配与动效设计建议。
|
||||
6. 基于用户测试与竞品反馈迭代优化设计方案。
|
||||
|
||||
## Init
|
||||
请基于K12在线教育平台的核心功能与用户角色,构建设计语言系统与用户体验方案,并输出首页、课程浏览、直播互动、作业提交、课程管理等核心界面的界面结构与设计规范。关注用户路径是否清晰、操作是否易懂、信息是否分层合理,确保平台适配多终端、具备高可用性与教育友好性。
|
||||
55
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/产品测试工程师.md
Executable file
@@ -0,0 +1,55 @@
|
||||
# Role: 产品测试工程师
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一位专业的产品测试工程师,负责构建和执行完整的测试流程,保障在线教育平台的功能正确性、性能稳定性与安全合规性。你将围绕用户注册、课程管理、直播互动、作业提交、支付流程、权限系统等模块,编写测试用例、设计自动化测试策略、模拟异常场景,并输出详细的测试报告与优化建议。
|
||||
|
||||
## Skills
|
||||
- 熟悉黑盒测试、白盒测试、回归测试、冒烟测试、集成测试等常规测试方法。
|
||||
- 精通测试用例设计技巧(边界值、等价类、状态转换、因果图等)。
|
||||
- 熟练使用自动化测试框架(如 Cypress、Selenium、Jest、Postman、JMeter)。
|
||||
- 具备性能测试与安全测试能力,能编写压力测试脚本并分析瓶颈。
|
||||
- 能结合产品需求撰写完整测试计划、测试策略与报告。
|
||||
- 能协同开发定位 bug,提供复现路径与日志分析建议。
|
||||
|
||||
## Background
|
||||
你正在测试一个用于K12教育的在线教育平台,系统功能复杂,包含用户注册登录、课程发布与购买、直播流互动、作业与考试、学生学习进度追踪、支付系统与消息通知等模块,目标是保障平台在10万并发用户下依旧高可用且无重大漏洞。
|
||||
|
||||
## Goals
|
||||
- 制定涵盖所有业务模块的测试计划,确保测试覆盖率 ≥ 90%
|
||||
- 编写结构化测试用例,覆盖正常流程、边界条件与异常路径
|
||||
- 执行功能测试、回归测试、UI测试、接口测试
|
||||
- 开展性能测试,识别系统在高并发下的性能瓶颈
|
||||
- 设计自动化测试脚本,提升回归测试效率
|
||||
- 输出可执行的测试报告与缺陷追踪表
|
||||
- 验证安全机制,包括认证、权限、CSRF/XSS/SQL 注入等防护有效性
|
||||
|
||||
## OutputFormat
|
||||
1. 测试计划(含测试范围、时间节点、测试类型、测试人员分工)
|
||||
2. 测试用例模板(含编号、模块、测试点、步骤、预期结果、优先级)
|
||||
3. 自动化测试建议(工具、脚本结构、持续集成)
|
||||
4. 性能测试方案(并发用户模拟、响应时间目标、瓶颈预判)
|
||||
5. 安全测试清单(漏洞类型、防护验证方式)
|
||||
6. 缺陷报告模板(含严重等级、复现步骤、日志路径)
|
||||
7. 测试报告(通过率统计、缺陷总结、优化建议)
|
||||
|
||||
## Rules
|
||||
- 所有测试活动需以业务场景为基础,确保真实还原用户操作路径
|
||||
- 对于关键路径(如支付、作业提交)必须全流程自动化验证
|
||||
- 所有测试结果需有数据支撑,便于分析与回归
|
||||
- Bug 报告需含截图、日志、浏览器/设备信息等上下文
|
||||
- 性能测试需覆盖峰值并发场景,异常输入必须覆盖极端用例
|
||||
|
||||
## Workflows
|
||||
1. 阅读产品需求文档与接口文档,梳理测试点
|
||||
2. 编写并审查测试计划,明确测试类型与覆盖范围
|
||||
3. 编写测试用例并提交审阅
|
||||
4. 执行手动与自动化测试,提交缺陷并跟踪修复进度
|
||||
5. 进行性能测试、安全测试与边界测试
|
||||
6. 整理测试报告,参与评审与发布决策
|
||||
7. 回归测试所有已修复缺陷,确保产品上线质量
|
||||
|
||||
## Init
|
||||
请为在线教育平台制定完整的测试方案,从功能测试到安全测试、性能测试都要覆盖;然后帮我编写一批示例测试用例,并提供测试报告模板与缺陷反馈清单;最后,请根据平台高并发场景提供性能测试建议与指标预估。
|
||||
54
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/产品经理.md
Executable file
@@ -0,0 +1,54 @@
|
||||
# Role: 产品经理
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一位擅长从0到1产品规划的产品经理,负责在线教育平台的产品设计与需求管理,涵盖用户调研、功能规划、原型设计、版本迭代、竞品分析、跨团队沟通等工作。你需持续洞察用户痛点,驱动产品从概念到落地的完整过程,确保交付符合市场与业务目标。
|
||||
|
||||
## Skills
|
||||
- 业务抽象与需求分析能力:将教育场景中的用户痛点拆解为明确的产品功能。
|
||||
- 产品规划与路线图设计能力:制定中长期产品演进规划和迭代节奏。
|
||||
- 原型与交互设计能力:熟练使用 Figma、Axure 或墨刀,能产出交互清晰的中高保真原型。
|
||||
- PRD 编写能力:产出完整的产品需求文档(功能模块说明、用户流程、验收标准)。
|
||||
- 多角色协作与沟通能力:跨职能团队(前端、后端、UI、测试、运维、市场)协同管理产品迭代。
|
||||
- 用户反馈收集与数据分析能力:基于用户行为数据优化产品体验。
|
||||
|
||||
## Background:
|
||||
项目为 K12 在线教育平台,核心用户为学生、教师、机构和运维团队,需支持直播互动、课程回放、作业考试、进度追踪、用户管理、支付系统等。当前处于从需求分析向产品原型阶段过渡,产品需支撑高并发、强交互的教学场景,并满足教育机构的业务管理需求。
|
||||
|
||||
## Goals:
|
||||
- 帮助识别和拆解用户需求,输出完整的功能列表。
|
||||
- 撰写高质量 PRD 文档(包括需求背景、目标、功能描述、交互流程、接口说明、验收标准)。
|
||||
- 协助完成产品原型设计与用户流程图。
|
||||
- 规划产品迭代节奏(MVP 设计、V1.0发布、后续优化计划)。
|
||||
- 输出用户旅程图和典型使用场景分析。
|
||||
- 跟踪上线后数据与反馈,迭代优化功能点。
|
||||
- 对竞品平台(如猿辅导、学而思等)进行功能对比分析,提出差异化设计建议。
|
||||
|
||||
## OutputFormat:
|
||||
1. 功能清单与模块结构图(结构化列表)
|
||||
2. 每个功能的用户故事 + 交互流程图
|
||||
3. 产品原型建议(支持 AI 生成草图描述)
|
||||
4. PRD 框架模板(标题结构 + 示例内容)
|
||||
5. 版本规划表(MVP -> V1.0 -> V2.0)
|
||||
6. 竞品分析报告模板
|
||||
7. 数据驱动优化建议(上线后跟踪方案)
|
||||
|
||||
## Rules
|
||||
- 所有文档与结构需满足开发、测试、设计等多团队使用需求。
|
||||
- 功能优先级应基于用户价值与开发成本双维度排序。
|
||||
- 所有交互流程需明确输入、输出、异常情况与响应提示。
|
||||
- 尽可能结合用户调研或竞品案例支撑功能设计。
|
||||
|
||||
## Workflows
|
||||
1. 收集业务目标与用户需求。
|
||||
2. 梳理用户角色与使用场景。
|
||||
3. 制定产品功能架构图与模块列表。
|
||||
4. 输出 PRD 初稿 + 原型图。
|
||||
5. 组织团队评审并更新文档。
|
||||
6. 跟进开发进度并参与版本验收。
|
||||
7. 上线后分析数据与用户反馈,驱动产品迭代。
|
||||
|
||||
## Init
|
||||
请你现在扮演在线教育平台的产品经理角色,结合学生、教师、机构三类核心用户的使用场景,输出详细的功能结构图、模块拆解、用户流程图和初步的PRD文档提纲,并制定产品V1.0的核心功能上线计划。关注直播、作业、支付与用户成长数据模块的优先级排布。
|
||||
52
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/前端开发工程师.md
Executable file
@@ -0,0 +1,52 @@
|
||||
# Role: 前端开发工程师
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一名熟练掌握现代前端技术栈的开发工程师,负责构建在线教育平台的 Web 前端,要求兼顾性能、用户体验、响应式设计与组件复用。你将使用 Vue3 + TypeScript(或 React)开发课程管理、直播互动、作业系统、支付等核心模块的前端界面。
|
||||
|
||||
## Skills
|
||||
- 熟悉 Vue3 / React 及其生态,如 Vuex、Pinia、Redux、React Query 等。
|
||||
- 精通 TypeScript,具备模块化和组件化开发经验。
|
||||
- 熟练使用 Vite、Webpack 等构建工具。
|
||||
- 能根据 UI 原型开发高可用、响应式的交互界面。
|
||||
- 熟悉 RESTful API 对接流程,能编写通用请求封装逻辑。
|
||||
- 熟悉前端性能优化、安全策略(如 XSS、CSRF 防御)。
|
||||
- 熟练使用 Ant Design、Element Plus 或 Tailwind CSS 进行样式开发。
|
||||
|
||||
## Background:
|
||||
平台面向 K12 学生,核心功能包括课程浏览、直播互动、作业提交、用户注册登录、支付下单等。前端需具备优秀的交互设计与移动端适配能力。
|
||||
|
||||
## Goals:
|
||||
- 构建课程浏览、购买、观看、作业提交等页面。
|
||||
- 实现直播互动前端功能(举手、聊天室、连麦按钮控制等)。
|
||||
- 实现注册登录、权限控制、用户状态保持等用户系统界面。
|
||||
- 对接后端 API,管理 Token、接口请求、错误处理等逻辑。
|
||||
- 实现支付流程页面及与支付 SDK 的对接。
|
||||
- 使用组件化思想封装可复用组件。
|
||||
|
||||
## OutputFormat:
|
||||
- 每个页面或模块的功能说明
|
||||
- UI 组件结构树或目录结构建议
|
||||
- Vue/React + TypeScript 的代码样例
|
||||
- 样式建议(使用 Tailwind、SCSS 或 Ant Design)
|
||||
- API 请求封装与状态管理建议
|
||||
- 响应式与移动端适配方案
|
||||
|
||||
## Rules
|
||||
- 所有代码需使用 TypeScript 并符合 ESLint 规范。
|
||||
- 组件命名与代码结构需统一规范,便于维护。
|
||||
- 尽量使用组合式 API(Vue)或 Hooks(React)进行逻辑组织。
|
||||
- 页面需兼容主流浏览器,适配手机和平板。
|
||||
|
||||
## Workflows
|
||||
1. 读取产品需求与原型图。
|
||||
2. 拆分模块与页面结构,规划组件目录。
|
||||
3. 为每个页面设计交互流程与 API 对接逻辑。
|
||||
4. 编写响应式布局与样式,优化用户体验。
|
||||
5. 联调接口,处理鉴权、错误、加载状态。
|
||||
6. 测试兼容性并优化性能(懒加载、组件缓存等)。
|
||||
|
||||
## Init
|
||||
请根据在线教育平台的业务需求,为我生成课程浏览页/直播互动页/作业提交页的 Vue3(或 React)代码结构、核心组件、样式设计建议与 API 对接逻辑。
|
||||
58
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/后端开发工程师.md
Executable file
@@ -0,0 +1,58 @@
|
||||
# Role: 后端开发工程师
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一名专业的后端开发工程师,负责在线教育平台的后端系统开发,包括用户认证、权限管理、课程与直播接口、作业提交与批改系统、支付系统、消息通知系统等模块的设计与实现。你需要确保系统稳定、高性能、安全,满足平台的大规模并发访问需求,并遵循微服务架构规范。
|
||||
|
||||
## Skills
|
||||
- 精通 Java / Spring Boot / Spring Cloud 微服务开发(或 Node.js / Nest.js)。
|
||||
- 熟悉 RESTful API 设计,掌握 GraphQL 查询优化。
|
||||
- 精通数据库设计与优化(MySQL/PostgreSQL)、Redis 缓存、ElasticSearch 搜索引擎。
|
||||
- 熟悉分布式架构设计、消息队列(Kafka/RabbitMQ)、接口限流与降级策略。
|
||||
- 熟练使用 JWT/OAuth2 进行用户认证与权限控制。
|
||||
- 掌握 Docker、CI/CD 自动部署流程,具备基本 DevOps 能力。
|
||||
- 熟悉直播、文件上传、支付回调等接口开发。
|
||||
|
||||
## Background:
|
||||
项目为一套支持直播、回放、作业与考试、学生进度追踪、订单支付等功能的 K12 在线教育平台,需支持百万级注册用户、10万级并发访问,要求系统安全、稳定、低延迟。
|
||||
|
||||
## Goals:
|
||||
- 按模块完成平台后端的 API 接口开发任务,确保接口文档规范清晰。
|
||||
- 完成用户系统、课程系统、作业考试、支付、消息等模块的后端逻辑实现。
|
||||
- 使用 JWT 实现用户身份验证与权限校验。
|
||||
- 使用 Redis 缓存高频数据、实现验证码/Session 缓存等功能。
|
||||
- 使用 Kafka 实现直播互动消息异步处理,避免接口阻塞。
|
||||
- 编写单元测试、集成测试,保障接口稳定性。
|
||||
- 优化数据库结构与查询性能,支持高并发场景。
|
||||
- 配合前端、运维完成接口联调、部署上线。
|
||||
|
||||
## OutputFormat:
|
||||
- 模块结构设计图(文本说明即可)
|
||||
- 核心数据表结构设计(简要 ER 模型)
|
||||
- API 接口路径、方法、参数、响应体样例
|
||||
- 中间件与技术选型说明(缓存、队列、认证)
|
||||
- 性能优化建议(数据库索引、缓存策略)
|
||||
- 安全机制说明(加密、权限校验、接口防刷)
|
||||
|
||||
## Rules
|
||||
- 所有接口应遵循 RESTful 风格,响应结构统一(如:code/msg/data)。
|
||||
- 所有敏感操作必须验证权限,使用 JWT Token 做用户认证。
|
||||
- 所有数据库查询应考虑分页、索引、事务一致性。
|
||||
- 接口返回时间不超过 500ms,核心模块支持压测与限流。
|
||||
- 使用 Swagger 或 OpenAPI 标准文档接口。
|
||||
|
||||
## Workflows
|
||||
1. 接收产品需求并细化功能模块。
|
||||
2. 拆解接口列表,编写接口设计文档(含字段、参数、响应结构)。
|
||||
3. 设计对应数据库结构,确保索引、字段类型合理。
|
||||
4. 编写接口控制器、服务层、DAO 层逻辑。
|
||||
5. 接入 Redis 缓存热数据,提高访问性能。
|
||||
6. 对接 Kafka/RabbitMQ 异步处理任务。
|
||||
7. 编写单元测试,使用 Postman/Jest 接口测试。
|
||||
8. 打包容器镜像,完成部署上线。
|
||||
9. 收集日志,处理接口异常与安全风险。
|
||||
|
||||
## Init
|
||||
现在,请为我生成以下后端模块的接口设计与实现建议:1) 用户注册与登录系统(JWT + Redis 缓存验证码);2) 课程创建与查询接口(分页 + 关键字搜索);3) 作业提交与教师批改模块;4) 支付订单生成与回调处理;5) 直播消息的异步投递与消息通知推送系统。要求接口高性能、低延迟、安全稳定,适配高并发环境。
|
||||
49
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/平台架构师.md
Executable file
@@ -0,0 +1,49 @@
|
||||
# Role: 平台架构师
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一名资深平台架构师,负责设计并优化一套高可用、高性能、可扩展的在线教育平台系统架构,涵盖前后端分层、微服务拆分、数据库设计、缓存策略、消息队列、直播流处理、安全机制及高并发场景下的性能优化方案。
|
||||
|
||||
## Skills
|
||||
- 能分析业务需求并转化为可落地的技术架构方案。
|
||||
- 熟悉主流架构体系(如微服务、Serverless、分布式架构)。
|
||||
- 精通云原生技术(Docker、Kubernetes、CI/CD)。
|
||||
- 能基于性能、安全、成本等维度做出合理技术选型。
|
||||
- 能撰写技术文档,并指导开发团队进行架构落地。
|
||||
|
||||
## Background:
|
||||
该平台服务对象为K12教育机构,需要支持直播、回放、作业考试、学生进度追踪等功能,目标是支撑10万级并发访问,要求高稳定、高可用、低延迟。
|
||||
|
||||
## Goals:
|
||||
- 设计一套技术架构,支持平台所有核心功能。
|
||||
- 给出数据库、缓存、API网关、消息队列等模块的设计建议。
|
||||
- 提供应对高并发的技术方案与部署架构图。
|
||||
- 指导开发团队如何模块化、微服务化地实现系统。
|
||||
- 评估不同技术选型的优劣,如 WebRTC vs RTMP,MySQL vs PostgreSQL,Spring Cloud vs Node 微服务等。
|
||||
|
||||
## OutputFormat:
|
||||
- 技术架构总览图说明(文字)
|
||||
- 模块划分与职责列表
|
||||
- 各关键技术组件的选型理由
|
||||
- 高并发架构建议
|
||||
- 安全机制设计建议
|
||||
- 微服务与接口规范建议
|
||||
|
||||
## Rules
|
||||
- 架构设计应考虑未来迭代与扩展性。
|
||||
- 保证技术落地性与开发团队技能匹配。
|
||||
- 所有建议需基于当前主流开源技术或云服务组件。
|
||||
- 用专业术语清晰表达,但避免晦涩难懂。
|
||||
|
||||
## Workflows
|
||||
1. 接收平台业务需求和性能目标。
|
||||
2. 拆解功能模块与角色权限模型。
|
||||
3. 设计系统架构(包含技术栈、服务划分、数据流)。
|
||||
4. 输出模块职责与接口定义。
|
||||
5. 说明高可用与容灾机制设计。
|
||||
6. 提出安全与性能优化建议。
|
||||
|
||||
## Init
|
||||
现在请根据在线教育平台的业务需求,为我设计一份可实施的系统架构方案,并提供核心模块的设计建议与技术选型分析。考虑高并发、直播、回放、作业管理、支付等复杂业务场景。
|
||||
49
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/需求文档撰写专员.md
Executable file
@@ -0,0 +1,49 @@
|
||||
# Role: 需求文档撰写专员
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一名专业的产品需求文档撰写专员,擅长将业务目标、用户需求转化为结构化的PRD(产品需求文档)或BRD(业务需求文档),确保开发团队、测试团队及利益相关方准确理解产品功能、流程与边界。
|
||||
|
||||
## Skills
|
||||
- 擅长信息结构化、文档标准化表达。
|
||||
- 能快速理解产品架构、业务流程与用户痛点。
|
||||
- 熟练撰写用户故事、用例流程图、非功能性需求等。
|
||||
- 能清晰表达功能范围、交互逻辑、接口需求与验收标准。
|
||||
- 精通产品文档格式(如PRD模板、需求矩阵、交互流程图等)。
|
||||
|
||||
## Background:
|
||||
该在线教育平台服务K12用户,包含直播、回放、作业、考试、支付、权限管理等功能模块,平台需满足多角色协同(学生、教师、机构、运维)使用。
|
||||
|
||||
## Goals:
|
||||
- 将产品规划内容转化为标准化、完整的需求文档。
|
||||
- 提炼各功能模块的详细功能点与业务流程。
|
||||
- 撰写符合团队协作的文档结构,适用于评审、开发与测试使用。
|
||||
- 明确功能边界、异常流程与验收标准,减少返工风险。
|
||||
|
||||
## OutputFormat:
|
||||
- 文档名称与版本信息
|
||||
- 背景与目标说明
|
||||
- 用户角色与使用场景
|
||||
- 功能模块拆解与详细描述
|
||||
- 数据流/页面流程图描述(文字形式)
|
||||
- 非功能需求与约束条件
|
||||
- 验收标准与接口需求摘要
|
||||
|
||||
## Rules
|
||||
- 使用清晰、规范、结构化的语言表达。
|
||||
- 以开发可实施为核心目标,避免模糊描述。
|
||||
- 所有需求必须具备可测性(有明确验收标准)。
|
||||
- 所有用户行为需说明主流程与异常流程。
|
||||
|
||||
## Workflows
|
||||
1. 分析产品战略或业务目标。
|
||||
2. 梳理角色、场景与功能需求。
|
||||
3. 分模块编写需求文档,结构清晰、层级分明。
|
||||
4. 明确交互流程、接口需求、数据字段。
|
||||
5. 编写验收标准与测试要点。
|
||||
6. 输出 PRD/BRD 文档草案,支持审阅反馈。
|
||||
|
||||
## Init
|
||||
现在请帮我根据在线教育平台的功能架构与用户角色,撰写一份标准的产品需求文档草案,涵盖直播模块、作业模块、课程管理模块的详细需求。文档结构应符合产品评审规范,便于开发实现与测试验证。
|
||||
47
web_frontend/web_result/data/订单班文档资料/智能开发/Agent_prompt/项目经理.md
Executable file
@@ -0,0 +1,47 @@
|
||||
# Role: 项目经理
|
||||
|
||||
## Profile
|
||||
- author: LangGPT
|
||||
- version: 1.0
|
||||
- language: 中文
|
||||
- description: 你是一位经验丰富的 IT 项目经理,负责协调多个角色(产品、开发、测试、运营)推进在线教育平台的建设与上线,确保项目在时间、预算和质量范围内高效交付。
|
||||
|
||||
## Skills
|
||||
- 能编写详细的项目计划与里程碑。
|
||||
- 熟悉敏捷与瀑布式项目管理方法,能够根据场景灵活选型。
|
||||
- 精通任务拆解、资源协调、进度跟踪与风险管理。
|
||||
- 熟练使用项目管理工具(如 Jira、Trello、甘特图、OKR)。
|
||||
- 能产出项目文档(PRD 对接文档、进度报告、会议纪要等)。
|
||||
|
||||
## Background:
|
||||
本项目为构建一套面向 K12 教育机构的在线教学平台,功能涉及直播、作业、回放、学生分析、支付等多个模块,项目团队包含前端、后端、测试、UI、运营人员。
|
||||
|
||||
## Goals:
|
||||
- 拆解项目阶段任务并制定详细的时间表(如甘特图描述)。
|
||||
- 制定每个阶段的交付物与验收标准。
|
||||
- 跟踪进度、识别风险点、提出应对策略。
|
||||
- 组织周会/月会汇报材料,协助跨部门沟通。
|
||||
- 监控项目 KPI,确保如期上线并运营平稳。
|
||||
|
||||
## OutputFormat:
|
||||
- 项目计划(阶段划分 + 时间节点 + 关键任务)
|
||||
- 项目管理模板(甘特图表格、进度看板、任务负责人列表)
|
||||
- 风险清单与应对策略
|
||||
- 团队协作建议与会议节奏设计
|
||||
- 项目汇报文案与汇总报告草稿
|
||||
|
||||
## Rules
|
||||
- 所有输出必须结构化、可执行、便于复制到管理工具中。
|
||||
- 用明确的时间范围、任务负责人、任务输出物描述每项工作。
|
||||
- 强调里程碑控制、交付闭环与预警机制。
|
||||
- 结合技术与管理维度,兼顾可行性与落地性。
|
||||
|
||||
## Workflows
|
||||
1. 接收完整项目需求与目标。
|
||||
2. 拆解项目阶段与子任务。
|
||||
3. 输出项目进度表与团队任务分配。
|
||||
4. 提出进度追踪与异常预警机制。
|
||||
5. 提供项目汇报与总结材料模板。
|
||||
|
||||
## Init
|
||||
现在请根据在线教育平台的开发计划与功能需求,帮助我设计一套完整的项目管理方案,包括任务拆解、进度表、角色分工、风险清单与会议管理建议。
|
||||
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/DEMO生成助手.jpg
Executable file
|
After Width: | Height: | Size: 334 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/Ul设计师.jpg
Executable file
|
After Width: | Height: | Size: 352 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/产品经理.jpg
Executable file
|
After Width: | Height: | Size: 336 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/前端开发工程师.jpg
Executable file
|
After Width: | Height: | Size: 385 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/后端开发工程师.jpg
Executable file
|
After Width: | Height: | Size: 378 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/平台架构师.jpg
Executable file
|
After Width: | Height: | Size: 402 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/软件测试工程师.jpg
Executable file
|
After Width: | Height: | Size: 359 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/需求文档撰写专员.jpg
Executable file
|
After Width: | Height: | Size: 345 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/agent头像/项目经理.jpg
Executable file
|
After Width: | Height: | Size: 356 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/API配置界面.jpg
Executable file
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 92 KiB |
|
After Width: | Height: | Size: 168 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/智能学习数据分析.jpg
Executable file
|
After Width: | Height: | Size: 148 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/注册界面.jpg
Executable file
|
After Width: | Height: | Size: 74 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/热门课程.jpg
Executable file
|
After Width: | Height: | Size: 842 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/用户信息后台数据.jpg
Executable file
|
After Width: | Height: | Size: 140 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/课程信息后台数据.jpg
Executable file
|
After Width: | Height: | Size: 136 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/课程内容.jpg
Executable file
|
After Width: | Height: | Size: 112 KiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/课程直播间.jpg
Executable file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/image/首页.jpg
Executable file
|
After Width: | Height: | Size: 195 KiB |
54
web_frontend/web_result/data/订单班文档资料/智能开发/notion文稿/rename_images.py
Executable file
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
智能开发订单班图片重命名脚本
|
||||
将UUID样式的图片文件名重命名为描述性名称
|
||||
"""
|
||||
|
||||
import os
|
||||
import shutil
|
||||
|
||||
# 图片映射关系(基于markdown文档中的描述)
|
||||
image_map = {
|
||||
"image.jpg": "首页.jpg",
|
||||
"image 1.jpg": "用户信息后台数据.jpg",
|
||||
"image 2.jpg": "智能学习数据分析.jpg",
|
||||
"image 3.jpg": "课程信息后台数据.jpg",
|
||||
"image 4.jpg": "课程内容.jpg",
|
||||
"image 5.jpg": "课程直播间.jpg",
|
||||
"image 6.jpg": "注册界面.jpg",
|
||||
"image 7.jpg": "热门课程.jpg",
|
||||
"image 8.jpg": "API配置界面.jpg",
|
||||
}
|
||||
|
||||
# 获取当前脚本所在目录
|
||||
current_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
image_dir = os.path.join(current_dir, "image")
|
||||
|
||||
print("=" * 60)
|
||||
print("智能开发订单班图片重命名脚本")
|
||||
print("=" * 60)
|
||||
print(f"图片目录: {image_dir}")
|
||||
print(f"准备重命名 {len(image_map)} 个文件")
|
||||
print("=" * 60)
|
||||
|
||||
# 重命名文件
|
||||
renamed_count = 0
|
||||
for old_name, new_name in image_map.items():
|
||||
old_path = os.path.join(image_dir, old_name)
|
||||
new_path = os.path.join(image_dir, new_name)
|
||||
|
||||
if os.path.exists(old_path):
|
||||
try:
|
||||
shutil.move(old_path, new_path)
|
||||
print(f"✓ {old_name} → {new_name}")
|
||||
renamed_count += 1
|
||||
except Exception as e:
|
||||
print(f"✗ 重命名失败: {old_name} → {new_name}")
|
||||
print(f" 错误: {e}")
|
||||
else:
|
||||
print(f"⚠ 文件不存在: {old_name}")
|
||||
|
||||
print("=" * 60)
|
||||
print(f"重命名完成: {renamed_count}/{len(image_map)} 个文件")
|
||||
print("=" * 60)
|
||||
9
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/css/font-awesome.css
vendored
Executable file
391
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/css/index.css
Executable file
@@ -0,0 +1,391 @@
|
||||
|
||||
.page-list-title span {
|
||||
font-weight: 900;
|
||||
}
|
||||
.page-list-title svg {
|
||||
font-size: 14px;
|
||||
}
|
||||
.page-list {
|
||||
font-size: 12px;
|
||||
flex: 0 0 294px;
|
||||
overflow-y: auto;
|
||||
min-height: 152px;
|
||||
}
|
||||
.page-list .page-list-title {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
font-size: 12px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
align-items: center;
|
||||
position: relative;
|
||||
height: 42px;
|
||||
padding: 0 10px 0 16px;
|
||||
}
|
||||
.page-list .page-list-title .page-list-title-btns svg,
|
||||
.page-list .page-list-title .search-container svg{
|
||||
font-size: 12px;
|
||||
}
|
||||
.page-list .page-list-title .page-list-title-btns{
|
||||
display: flex;
|
||||
gap: 2px;
|
||||
justify-content:end;
|
||||
}
|
||||
.page-list .page-list-title .page-list-title-btns span,
|
||||
.page-list .page-list-title .search-container> .hide-search-btn {
|
||||
display: inline-flex;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
border-radius: 4px;
|
||||
align-items: center;
|
||||
justify-content: center
|
||||
}
|
||||
.page-list .page-list-title .search-container {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
height: 42px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 0 14px;
|
||||
gap: 13px;
|
||||
}
|
||||
.search-container .ant-input-affix-wrapper {
|
||||
padding: 0 12px;
|
||||
}
|
||||
.search-container .ant-input-affix-wrapper .ant-input-prefix{
|
||||
margin-right: 9px;
|
||||
}
|
||||
.copy-page{
|
||||
.ant-dropdown-menu-title-content{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
.page-operate-icon {
|
||||
display: flex;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
margin-right: 7px;
|
||||
margin-left: 1px;
|
||||
}
|
||||
.page-search {
|
||||
width: calc(100% - 48px);
|
||||
margin-top: 8px;
|
||||
margin-bottom: 6px;
|
||||
font-size: 12px;
|
||||
height: 28px;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.add-square {
|
||||
width: 220px;
|
||||
height: 150px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
cursor: pointer;
|
||||
padding: 29px 0 25px 0;
|
||||
}
|
||||
.add-square.add-page-ai {
|
||||
padding: 21px 0 25px 0;
|
||||
}
|
||||
.add-square.add-page-ai .add-square-icon{
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.add-square.add-page-ai .add-square-name {
|
||||
margin-bottom: 0!important
|
||||
}
|
||||
.add-square .add-square-icon{
|
||||
margin-bottom: 13px;
|
||||
}
|
||||
|
||||
.add-square-name {
|
||||
width: 110px !important;
|
||||
height: 20px;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
border: unset !important;
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
.yt-ui-input-focus:focus{
|
||||
border: unset !important;
|
||||
box-shadow:none !important;
|
||||
border-radius: 0;
|
||||
border-bottom: 1px solid var(--ui-add-model-box-add-square-active-border-color) !important;
|
||||
}
|
||||
|
||||
.add-square-size {
|
||||
width: 46px !important;
|
||||
height: 20px;
|
||||
padding:0;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
border: unset !important;
|
||||
}
|
||||
.add-page-model .ant-modal-content{
|
||||
padding: 0;
|
||||
border-radius: 10px;
|
||||
overflow: hidden;
|
||||
}
|
||||
.add-page-model .ant-modal-content .ant-modal-header{
|
||||
padding: 16px 30px 16px 32px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.add-page-model .ant-modal-content .ant-modal-header .ant-modal-title{
|
||||
font-size: 14px;
|
||||
}
|
||||
.add-page-model .ant-modal-content .ant-modal-header .ant-modal-close-x{
|
||||
font-size: 14px;
|
||||
}
|
||||
.add-page-model.ant-modal .ant-modal-body {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
max-height: 404px;
|
||||
overflow-y: auto;
|
||||
border-bottom: 1px solid #DBDBDB;
|
||||
padding: 34px 52px 21px 44px;
|
||||
column-gap: 30px;
|
||||
row-gap: 24px;
|
||||
}
|
||||
.add-page-model .ant-modal-footer {
|
||||
padding: 3px 24px 17px 24px;
|
||||
}
|
||||
.add-page-model.ant-modal .ant-modal-footer .ant-btn{
|
||||
width: 80px;
|
||||
font-size: 14px;
|
||||
margin-right: 12px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.add-page-model.ant-modal .ant-modal-footer .ant-btn:last-child{
|
||||
margin-right: 0;
|
||||
margin-inline-start: 0;
|
||||
}
|
||||
.template-square {
|
||||
width: 220px;
|
||||
height: 150px;
|
||||
cursor: pointer;
|
||||
line-height: 17px;
|
||||
}
|
||||
.template-square-pic {
|
||||
width: 100%;
|
||||
height: 124px;
|
||||
border-radius: 4px;
|
||||
overflow:hidden
|
||||
}
|
||||
.template-square-pic img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.template-square-content {
|
||||
width:100%;
|
||||
display: flex;
|
||||
align-items: end;
|
||||
height: 26px;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.template-square-title {
|
||||
flex:1 1 100%;
|
||||
overflow:hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
margin-right: 2px;
|
||||
}
|
||||
.template-square-others {
|
||||
flex: 1 0 50px;
|
||||
display: flex;
|
||||
}
|
||||
.page-list .add-page-btn {
|
||||
width: calc(100% - 20px);
|
||||
border: 0;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
margin: 10px auto 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
padding-left: 20px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
line-height: 17px;
|
||||
text-align: left;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
padding-left: 45px;
|
||||
}
|
||||
.page-list .add-page-btn img {
|
||||
width: 12px;
|
||||
object-fit: none;
|
||||
}
|
||||
.page-tree {
|
||||
padding: 0 10px 10px;
|
||||
flex: 1;
|
||||
overflow: auto;
|
||||
font-size: 12px;
|
||||
height: calc(100% - 94px);
|
||||
.ant-dropdown-link{
|
||||
margin-right: 10px;
|
||||
}
|
||||
.drag-over{
|
||||
border: 1px solid var(--pannel-web-excel-open-btn-color);
|
||||
z-index: 999;
|
||||
}
|
||||
}
|
||||
.page-tree .ant-tree-treenode,
|
||||
.page-tree .ant-tree-node-content-wrapper {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.page-tree .ant-tree-treenode .ant-tree-node-content-wrapper {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
.page-tree .ant-tree-treenode .ant-tree-node-content-wrapper .ant-tree-icon__customize {
|
||||
flex: 0 0 14px;
|
||||
align-items: center;
|
||||
display: inline-flex;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
.page-tree .ant-tree-treenode .ant-tree-node-content-wrapper .ant-tree-title {
|
||||
padding-left: 4px;
|
||||
flex: 1;
|
||||
width: 0;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.page-tree .ant-tree-treenode .ant-tree-node-content-wrapper .page-tree-item-title {
|
||||
position: relative;
|
||||
width: calc(100% - 28px);
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.page-tree .ant-tree-treenode .ant-tree-switcher {
|
||||
line-height:32px;
|
||||
width: 8px;
|
||||
margin-right: 4px;
|
||||
}
|
||||
.page-tree .ant-tree-treenode .ant-tree-title {
|
||||
min-height:32px;
|
||||
line-height:32px;
|
||||
}
|
||||
.page-tree .ant-tree-node-content-wrapper:hover {}
|
||||
|
||||
.page-tree .hover-hide {
|
||||
position:absolute;
|
||||
right: 4px;
|
||||
font-size: 14px;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
display: flex;
|
||||
}
|
||||
.page-tree .hover-hide> span {
|
||||
margin-right: 8px;
|
||||
font-size: 14px;
|
||||
display: none;
|
||||
}
|
||||
.page-tree .ant-dropdown-trigger:hover{
|
||||
.hover-hide > span{
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.max-page-modal.ant-modal-wrap {
|
||||
.ant-modal-header {
|
||||
height: 48px;
|
||||
margin: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 0 24px;
|
||||
.ant-modal-title {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
.ant-modal-content {
|
||||
height: 380px;
|
||||
padding: 0;
|
||||
border-radius: 10px;
|
||||
overflow: hidden;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.ant-modal-close {
|
||||
font-size: 14px;
|
||||
}
|
||||
.ant-modal-body {
|
||||
flex: 1;
|
||||
padding: 29px 51px 0 51px;
|
||||
.tip {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
margin-bottom: 20px;
|
||||
.max-page-icon.anticon {
|
||||
margin-right: 9px;
|
||||
font-size: 18px;
|
||||
transform: translateY(3px);
|
||||
}
|
||||
.tip-text {
|
||||
text-align: center;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 24px;
|
||||
text-align: center;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
}
|
||||
}
|
||||
.qrcode {
|
||||
width: 170px;
|
||||
height: 162px;
|
||||
margin: 0 auto 11px;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
img {
|
||||
flex: 1;
|
||||
object-fit: contain;
|
||||
}
|
||||
}
|
||||
.tel {
|
||||
text-align: center;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
line-height: 28px;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.max-ai-page-modal.ant-modal-wrap {
|
||||
.ant-modal-content {
|
||||
height: 320px;
|
||||
.ant-modal-body {
|
||||
padding: 34px 51px 0 51px;
|
||||
}
|
||||
.ant-modal-body .qrcode {
|
||||
margin: 0 auto 16px
|
||||
}
|
||||
.ant-modal-close {
|
||||
top: 13px;
|
||||
}
|
||||
}
|
||||
}
|
||||
83
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/css/tailwindcss.css
Executable file
165
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/LICENSE.txt
Executable file
@@ -0,0 +1,165 @@
|
||||
Fonticons, Inc. (https://fontawesome.com)
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Font Awesome Free License
|
||||
|
||||
Font Awesome Free is free, open source, and GPL friendly. You can use it for
|
||||
commercial projects, open source projects, or really almost whatever you want.
|
||||
Full Font Awesome Free license: https://fontawesome.com/license/free.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
|
||||
|
||||
The Font Awesome Free download is licensed under a Creative Commons
|
||||
Attribution 4.0 International License and applies to all icons packaged
|
||||
as SVG and JS file types.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
# Fonts: SIL OFL 1.1 License
|
||||
|
||||
In the Font Awesome Free download, the SIL OFL license applies to all icons
|
||||
packaged as web and desktop font files.
|
||||
|
||||
Copyright (c) 2024 Fonticons, Inc. (https://fontawesome.com)
|
||||
with Reserved Font Name: "Font Awesome".
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
SIL OPEN FONT LICENSE
|
||||
Version 1.1 - 26 February 2007
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting — in part or in whole — any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
# Code: MIT License (https://opensource.org/licenses/MIT)
|
||||
|
||||
In the Font Awesome Free download, the MIT license applies to all non-font and
|
||||
non-icon files.
|
||||
|
||||
Copyright 2024 Fonticons, Inc.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in the
|
||||
Software without restriction, including without limitation the rights to use, copy,
|
||||
modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
|
||||
and to permit persons to whom the Software is furnished to do so, subject to the
|
||||
following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
||||
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
# Attribution
|
||||
|
||||
Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
|
||||
Awesome Free files already contain embedded comments with sufficient
|
||||
attribution, so you shouldn't need to do anything additional when using these
|
||||
files normally.
|
||||
|
||||
We've kept attribution comments terse, so we ask that you do not actively work
|
||||
to remove them from files, especially code. They're a great way for folks to
|
||||
learn about Font Awesome.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
# Brand Icons
|
||||
|
||||
All brand icons are trademarks of their respective owners. The use of these
|
||||
trademarks does not indicate endorsement of the trademark holder by Font
|
||||
Awesome, nor vice versa. **Please do not use brand logos for any purpose except
|
||||
to represent the company, product, or service to which they refer.**
|
||||
7876
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/all.css
vendored
Executable file
9
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/all.min.css
vendored
Executable file
1600
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/brands.css
vendored
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/brands.min.css
vendored
Executable file
6215
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/fontawesome.css
vendored
Executable file
9
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/fontawesome.min.css
vendored
Executable file
19
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/regular.css
vendored
Executable file
@@ -0,0 +1,19 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
:root, :host {
|
||||
--fa-style-family-classic: 'Font Awesome 6 Free';
|
||||
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; }
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }
|
||||
|
||||
.far,
|
||||
.fa-regular {
|
||||
font-weight: 400; }
|
||||
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/regular.min.css
vendored
Executable file
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}
|
||||
19
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/solid.css
vendored
Executable file
@@ -0,0 +1,19 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
:root, :host {
|
||||
--fa-style-family-classic: 'Font Awesome 6 Free';
|
||||
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free'; }
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
|
||||
|
||||
.fas,
|
||||
.fa-solid {
|
||||
font-weight: 900; }
|
||||
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/solid.min.css
vendored
Executable file
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}
|
||||
459
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/svg-with-js.css
vendored
Executable file
@@ -0,0 +1,459 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
:root, :host {
|
||||
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free';
|
||||
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free';
|
||||
--fa-font-light: normal 300 1em/1 'Font Awesome 6 Pro';
|
||||
--fa-font-thin: normal 100 1em/1 'Font Awesome 6 Pro';
|
||||
--fa-font-duotone: normal 900 1em/1 'Font Awesome 6 Duotone';
|
||||
--fa-font-brands: normal 400 1em/1 'Font Awesome 6 Brands';
|
||||
--fa-font-sharp-solid: normal 900 1em/1 'Font Awesome 6 Sharp';
|
||||
--fa-font-sharp-regular: normal 400 1em/1 'Font Awesome 6 Sharp';
|
||||
--fa-font-sharp-light: normal 300 1em/1 'Font Awesome 6 Sharp';
|
||||
--fa-font-sharp-thin: normal 100 1em/1 'Font Awesome 6 Sharp';
|
||||
--fa-font-sharp-duotone-solid: normal 900 1em/1 'Font Awesome 6 Sharp Duotone'; }
|
||||
|
||||
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
|
||||
overflow: visible;
|
||||
box-sizing: content-box; }
|
||||
|
||||
.svg-inline--fa {
|
||||
display: var(--fa-display, inline-block);
|
||||
height: 1em;
|
||||
overflow: visible;
|
||||
vertical-align: -.125em; }
|
||||
.svg-inline--fa.fa-2xs {
|
||||
vertical-align: 0.1em; }
|
||||
.svg-inline--fa.fa-xs {
|
||||
vertical-align: 0em; }
|
||||
.svg-inline--fa.fa-sm {
|
||||
vertical-align: -0.07143em; }
|
||||
.svg-inline--fa.fa-lg {
|
||||
vertical-align: -0.2em; }
|
||||
.svg-inline--fa.fa-xl {
|
||||
vertical-align: -0.25em; }
|
||||
.svg-inline--fa.fa-2xl {
|
||||
vertical-align: -0.3125em; }
|
||||
.svg-inline--fa.fa-pull-left {
|
||||
margin-right: var(--fa-pull-margin, 0.3em);
|
||||
width: auto; }
|
||||
.svg-inline--fa.fa-pull-right {
|
||||
margin-left: var(--fa-pull-margin, 0.3em);
|
||||
width: auto; }
|
||||
.svg-inline--fa.fa-li {
|
||||
width: var(--fa-li-width, 2em);
|
||||
top: 0.25em; }
|
||||
.svg-inline--fa.fa-fw {
|
||||
width: var(--fa-fw-width, 1.25em); }
|
||||
|
||||
.fa-layers svg.svg-inline--fa {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0; }
|
||||
|
||||
.fa-layers-text, .fa-layers-counter {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
text-align: center; }
|
||||
|
||||
.fa-layers {
|
||||
display: inline-block;
|
||||
height: 1em;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
vertical-align: -.125em;
|
||||
width: 1em; }
|
||||
.fa-layers svg.svg-inline--fa {
|
||||
transform-origin: center center; }
|
||||
|
||||
.fa-layers-text {
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
transform-origin: center center; }
|
||||
|
||||
.fa-layers-counter {
|
||||
background-color: var(--fa-counter-background-color, #ff253a);
|
||||
border-radius: var(--fa-counter-border-radius, 1em);
|
||||
box-sizing: border-box;
|
||||
color: var(--fa-inverse, #fff);
|
||||
line-height: var(--fa-counter-line-height, 1);
|
||||
max-width: var(--fa-counter-max-width, 5em);
|
||||
min-width: var(--fa-counter-min-width, 1.5em);
|
||||
overflow: hidden;
|
||||
padding: var(--fa-counter-padding, 0.25em 0.5em);
|
||||
right: var(--fa-right, 0);
|
||||
text-overflow: ellipsis;
|
||||
top: var(--fa-top, 0);
|
||||
transform: scale(var(--fa-counter-scale, 0.25));
|
||||
transform-origin: top right; }
|
||||
|
||||
.fa-layers-bottom-right {
|
||||
bottom: var(--fa-bottom, 0);
|
||||
right: var(--fa-right, 0);
|
||||
top: auto;
|
||||
transform: scale(var(--fa-layers-scale, 0.25));
|
||||
transform-origin: bottom right; }
|
||||
|
||||
.fa-layers-bottom-left {
|
||||
bottom: var(--fa-bottom, 0);
|
||||
left: var(--fa-left, 0);
|
||||
right: auto;
|
||||
top: auto;
|
||||
transform: scale(var(--fa-layers-scale, 0.25));
|
||||
transform-origin: bottom left; }
|
||||
|
||||
.fa-layers-top-right {
|
||||
top: var(--fa-top, 0);
|
||||
right: var(--fa-right, 0);
|
||||
transform: scale(var(--fa-layers-scale, 0.25));
|
||||
transform-origin: top right; }
|
||||
|
||||
.fa-layers-top-left {
|
||||
left: var(--fa-left, 0);
|
||||
right: auto;
|
||||
top: var(--fa-top, 0);
|
||||
transform: scale(var(--fa-layers-scale, 0.25));
|
||||
transform-origin: top left; }
|
||||
|
||||
.fa-1x {
|
||||
font-size: 1em; }
|
||||
|
||||
.fa-2x {
|
||||
font-size: 2em; }
|
||||
|
||||
.fa-3x {
|
||||
font-size: 3em; }
|
||||
|
||||
.fa-4x {
|
||||
font-size: 4em; }
|
||||
|
||||
.fa-5x {
|
||||
font-size: 5em; }
|
||||
|
||||
.fa-6x {
|
||||
font-size: 6em; }
|
||||
|
||||
.fa-7x {
|
||||
font-size: 7em; }
|
||||
|
||||
.fa-8x {
|
||||
font-size: 8em; }
|
||||
|
||||
.fa-9x {
|
||||
font-size: 9em; }
|
||||
|
||||
.fa-10x {
|
||||
font-size: 10em; }
|
||||
|
||||
.fa-2xs {
|
||||
font-size: 0.625em;
|
||||
line-height: 0.1em;
|
||||
vertical-align: 0.225em; }
|
||||
|
||||
.fa-xs {
|
||||
font-size: 0.75em;
|
||||
line-height: 0.08333em;
|
||||
vertical-align: 0.125em; }
|
||||
|
||||
.fa-sm {
|
||||
font-size: 0.875em;
|
||||
line-height: 0.07143em;
|
||||
vertical-align: 0.05357em; }
|
||||
|
||||
.fa-lg {
|
||||
font-size: 1.25em;
|
||||
line-height: 0.05em;
|
||||
vertical-align: -0.075em; }
|
||||
|
||||
.fa-xl {
|
||||
font-size: 1.5em;
|
||||
line-height: 0.04167em;
|
||||
vertical-align: -0.125em; }
|
||||
|
||||
.fa-2xl {
|
||||
font-size: 2em;
|
||||
line-height: 0.03125em;
|
||||
vertical-align: -0.1875em; }
|
||||
|
||||
.fa-fw {
|
||||
text-align: center;
|
||||
width: 1.25em; }
|
||||
|
||||
.fa-ul {
|
||||
list-style-type: none;
|
||||
margin-left: var(--fa-li-margin, 2.5em);
|
||||
padding-left: 0; }
|
||||
.fa-ul > li {
|
||||
position: relative; }
|
||||
|
||||
.fa-li {
|
||||
left: calc(-1 * var(--fa-li-width, 2em));
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
width: var(--fa-li-width, 2em);
|
||||
line-height: inherit; }
|
||||
|
||||
.fa-border {
|
||||
border-color: var(--fa-border-color, #eee);
|
||||
border-radius: var(--fa-border-radius, 0.1em);
|
||||
border-style: var(--fa-border-style, solid);
|
||||
border-width: var(--fa-border-width, 0.08em);
|
||||
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); }
|
||||
|
||||
.fa-pull-left {
|
||||
float: left;
|
||||
margin-right: var(--fa-pull-margin, 0.3em); }
|
||||
|
||||
.fa-pull-right {
|
||||
float: right;
|
||||
margin-left: var(--fa-pull-margin, 0.3em); }
|
||||
|
||||
.fa-beat {
|
||||
animation-name: fa-beat;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
|
||||
|
||||
.fa-bounce {
|
||||
animation-name: fa-bounce;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); }
|
||||
|
||||
.fa-fade {
|
||||
animation-name: fa-fade;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
|
||||
|
||||
.fa-beat-fade {
|
||||
animation-name: fa-beat-fade;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
|
||||
|
||||
.fa-flip {
|
||||
animation-name: fa-flip;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
|
||||
|
||||
.fa-shake {
|
||||
animation-name: fa-shake;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, linear); }
|
||||
|
||||
.fa-spin {
|
||||
animation-name: fa-spin;
|
||||
animation-delay: var(--fa-animation-delay, 0s);
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 2s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, linear); }
|
||||
|
||||
.fa-spin-reverse {
|
||||
--fa-animation-direction: reverse; }
|
||||
|
||||
.fa-pulse,
|
||||
.fa-spin-pulse {
|
||||
animation-name: fa-spin;
|
||||
animation-direction: var(--fa-animation-direction, normal);
|
||||
animation-duration: var(--fa-animation-duration, 1s);
|
||||
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--fa-animation-timing, steps(8)); }
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.fa-beat,
|
||||
.fa-bounce,
|
||||
.fa-fade,
|
||||
.fa-beat-fade,
|
||||
.fa-flip,
|
||||
.fa-pulse,
|
||||
.fa-shake,
|
||||
.fa-spin,
|
||||
.fa-spin-pulse {
|
||||
animation-delay: -1ms;
|
||||
animation-duration: 1ms;
|
||||
animation-iteration-count: 1;
|
||||
transition-delay: 0s;
|
||||
transition-duration: 0s; } }
|
||||
|
||||
@keyframes fa-beat {
|
||||
0%, 90% {
|
||||
transform: scale(1); }
|
||||
45% {
|
||||
transform: scale(var(--fa-beat-scale, 1.25)); } }
|
||||
|
||||
@keyframes fa-bounce {
|
||||
0% {
|
||||
transform: scale(1, 1) translateY(0); }
|
||||
10% {
|
||||
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); }
|
||||
30% {
|
||||
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); }
|
||||
50% {
|
||||
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); }
|
||||
57% {
|
||||
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); }
|
||||
64% {
|
||||
transform: scale(1, 1) translateY(0); }
|
||||
100% {
|
||||
transform: scale(1, 1) translateY(0); } }
|
||||
|
||||
@keyframes fa-fade {
|
||||
50% {
|
||||
opacity: var(--fa-fade-opacity, 0.4); } }
|
||||
|
||||
@keyframes fa-beat-fade {
|
||||
0%, 100% {
|
||||
opacity: var(--fa-beat-fade-opacity, 0.4);
|
||||
transform: scale(1); }
|
||||
50% {
|
||||
opacity: 1;
|
||||
transform: scale(var(--fa-beat-fade-scale, 1.125)); } }
|
||||
|
||||
@keyframes fa-flip {
|
||||
50% {
|
||||
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } }
|
||||
|
||||
@keyframes fa-shake {
|
||||
0% {
|
||||
transform: rotate(-15deg); }
|
||||
4% {
|
||||
transform: rotate(15deg); }
|
||||
8%, 24% {
|
||||
transform: rotate(-18deg); }
|
||||
12%, 28% {
|
||||
transform: rotate(18deg); }
|
||||
16% {
|
||||
transform: rotate(-22deg); }
|
||||
20% {
|
||||
transform: rotate(22deg); }
|
||||
32% {
|
||||
transform: rotate(-12deg); }
|
||||
36% {
|
||||
transform: rotate(12deg); }
|
||||
40%, 100% {
|
||||
transform: rotate(0deg); } }
|
||||
|
||||
@keyframes fa-spin {
|
||||
0% {
|
||||
transform: rotate(0deg); }
|
||||
100% {
|
||||
transform: rotate(360deg); } }
|
||||
|
||||
.fa-rotate-90 {
|
||||
transform: rotate(90deg); }
|
||||
|
||||
.fa-rotate-180 {
|
||||
transform: rotate(180deg); }
|
||||
|
||||
.fa-rotate-270 {
|
||||
transform: rotate(270deg); }
|
||||
|
||||
.fa-flip-horizontal {
|
||||
transform: scale(-1, 1); }
|
||||
|
||||
.fa-flip-vertical {
|
||||
transform: scale(1, -1); }
|
||||
|
||||
.fa-flip-both,
|
||||
.fa-flip-horizontal.fa-flip-vertical {
|
||||
transform: scale(-1, -1); }
|
||||
|
||||
.fa-rotate-by {
|
||||
transform: rotate(var(--fa-rotate-angle, 0)); }
|
||||
|
||||
.fa-stack {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
height: 2em;
|
||||
position: relative;
|
||||
width: 2.5em; }
|
||||
|
||||
.fa-stack-1x,
|
||||
.fa-stack-2x {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
z-index: var(--fa-stack-z-index, auto); }
|
||||
|
||||
.svg-inline--fa.fa-stack-1x {
|
||||
height: 1em;
|
||||
width: 1.25em; }
|
||||
|
||||
.svg-inline--fa.fa-stack-2x {
|
||||
height: 2em;
|
||||
width: 2.5em; }
|
||||
|
||||
.fa-inverse {
|
||||
color: var(--fa-inverse, #fff); }
|
||||
|
||||
.sr-only,
|
||||
.fa-sr-only {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border-width: 0; }
|
||||
|
||||
.sr-only-focusable:not(:focus),
|
||||
.fa-sr-only-focusable:not(:focus) {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border-width: 0; }
|
||||
|
||||
.svg-inline--fa .fa-primary {
|
||||
fill: var(--fa-primary-color, currentColor);
|
||||
opacity: var(--fa-primary-opacity, 1); }
|
||||
|
||||
.svg-inline--fa .fa-secondary {
|
||||
fill: var(--fa-secondary-color, currentColor);
|
||||
opacity: var(--fa-secondary-opacity, 0.4); }
|
||||
|
||||
.svg-inline--fa.fa-swap-opacity .fa-primary {
|
||||
opacity: var(--fa-secondary-opacity, 0.4); }
|
||||
|
||||
.svg-inline--fa.fa-swap-opacity .fa-secondary {
|
||||
opacity: var(--fa-primary-opacity, 1); }
|
||||
|
||||
.svg-inline--fa mask .fa-primary,
|
||||
.svg-inline--fa mask .fa-secondary {
|
||||
fill: black; }
|
||||
|
||||
.fad.fa-inverse,
|
||||
.fa-duotone.fa-inverse {
|
||||
color: var(--fa-inverse, #fff); }
|
||||
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/svg-with-js.min.css
vendored
Executable file
26
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/v4-font-face.css
vendored
Executable file
@@ -0,0 +1,26 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@font-face {
|
||||
font-family: 'FontAwesome';
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
|
||||
|
||||
@font-face {
|
||||
font-family: 'FontAwesome';
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
|
||||
|
||||
@font-face {
|
||||
font-family: 'FontAwesome';
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype");
|
||||
unicode-range: U+F003,U+F006,U+F014,U+F016-F017,U+F01A-F01B,U+F01D,U+F022,U+F03E,U+F044,U+F046,U+F05C-F05D,U+F06E,U+F070,U+F087-F088,U+F08A,U+F094,U+F096-F097,U+F09D,U+F0A0,U+F0A2,U+F0A4-F0A7,U+F0C5,U+F0C7,U+F0E5-F0E6,U+F0EB,U+F0F6-F0F8,U+F10C,U+F114-F115,U+F118-F11A,U+F11C-F11D,U+F133,U+F147,U+F14E,U+F150-F152,U+F185-F186,U+F18E,U+F190-F192,U+F196,U+F1C1-F1C9,U+F1D9,U+F1DB,U+F1E3,U+F1EA,U+F1F7,U+F1F9,U+F20A,U+F247-F248,U+F24A,U+F24D,U+F255-F25B,U+F25D,U+F271-F274,U+F278,U+F27B,U+F28C,U+F28E,U+F29C,U+F2B5,U+F2B7,U+F2BA,U+F2BC,U+F2BE,U+F2C0-F2C1,U+F2C3,U+F2D0,U+F2D2,U+F2D4,U+F2DC; }
|
||||
|
||||
@font-face {
|
||||
font-family: 'FontAwesome';
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype");
|
||||
unicode-range: U+F041,U+F047,U+F065-F066,U+F07D-F07E,U+F080,U+F08B,U+F08E,U+F090,U+F09A,U+F0AC,U+F0AE,U+F0B2,U+F0D0,U+F0D6,U+F0E4,U+F0EC,U+F10A-F10B,U+F123,U+F13E,U+F148-F149,U+F14C,U+F156,U+F15E,U+F160-F161,U+F163,U+F175-F178,U+F195,U+F1F8,U+F219,U+F27A; }
|
||||
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/v4-font-face.min.css
vendored
Executable file
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}
|
||||
2194
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/v4-shims.css
vendored
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/v4-shims.min.css
vendored
Executable file
22
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/v5-font-face.css
vendored
Executable file
@@ -0,0 +1,22 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 5 Brands';
|
||||
font-display: block;
|
||||
font-weight: 400;
|
||||
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 5 Free';
|
||||
font-display: block;
|
||||
font-weight: 900;
|
||||
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 5 Free';
|
||||
font-display: block;
|
||||
font-weight: 400;
|
||||
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }
|
||||
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/css/v5-font-face.min.css
vendored
Executable file
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}
|
||||
6044
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/all.js
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/all.min.js
vendored
Executable file
789
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/brands.js
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/brands.min.js
vendored
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/conflict-detection.min.js
vendored
Executable file
3118
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/fontawesome.js
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/fontawesome.min.js
vendored
Executable file
460
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/regular.js
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/regular.min.js
vendored
Executable file
1692
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/solid.js
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/solid.min.js
vendored
Executable file
6
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/js/v4-shims.min.js
vendored
Executable file
152
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_animated.less
vendored
Executable file
@@ -0,0 +1,152 @@
|
||||
// animating icons
|
||||
// --------------------------
|
||||
|
||||
.@{fa-css-prefix}-beat {
|
||||
animation-name: ~'@{fa-css-prefix}-beat';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, ease-in-out)';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-bounce {
|
||||
animation-name: ~'@{fa-css-prefix}-bounce';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, cubic-bezier(0.280, 0.840, 0.420, 1))';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-fade {
|
||||
animation-name: ~'@{fa-css-prefix}-fade';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1))';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-beat-fade {
|
||||
animation-name: ~'@{fa-css-prefix}-beat-fade';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1))';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-flip {
|
||||
animation-name: ~'@{fa-css-prefix}-flip';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, ease-in-out)';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-shake {
|
||||
animation-name: ~'@{fa-css-prefix}-shake';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, linear)';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-spin {
|
||||
animation-name: ~'@{fa-css-prefix}-spin';
|
||||
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 2s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, linear)';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-spin-reverse {
|
||||
--@{fa-css-prefix}-animation-direction: reverse;
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-pulse,
|
||||
.@{fa-css-prefix}-spin-pulse {
|
||||
animation-name: ~'@{fa-css-prefix}-spin';
|
||||
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
|
||||
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
|
||||
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
|
||||
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, steps(8));';
|
||||
}
|
||||
|
||||
// if agent or operating system prefers reduced motion, disable animations
|
||||
// see: https://www.smashingmagazine.com/2020/09/design-reduced-motion-sensitivities/
|
||||
// see: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.@{fa-css-prefix}-beat,
|
||||
.@{fa-css-prefix}-bounce,
|
||||
.@{fa-css-prefix}-fade,
|
||||
.@{fa-css-prefix}-beat-fade,
|
||||
.@{fa-css-prefix}-flip,
|
||||
.@{fa-css-prefix}-pulse,
|
||||
.@{fa-css-prefix}-shake,
|
||||
.@{fa-css-prefix}-spin,
|
||||
.@{fa-css-prefix}-spin-pulse {
|
||||
animation-delay: -1ms;
|
||||
animation-duration: 1ms;
|
||||
animation-iteration-count: 1;
|
||||
transition-delay: 0s;
|
||||
transition-duration: 0s;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-beat' {
|
||||
0%, 90% { transform: scale(1); }
|
||||
45% { transform: ~'scale(var(--@{fa-css-prefix}-beat-scale, 1.25))'; }
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-bounce' {
|
||||
0% { transform: scale(1,1) translateY(0); }
|
||||
10% { transform: ~'scale(var(--@{fa-css-prefix}-bounce-start-scale-x, 1.1),var(--@{fa-css-prefix}-bounce-start-scale-y, 0.9))' translateY(0); }
|
||||
30% { transform: ~'scale(var(--@{fa-css-prefix}-bounce-jump-scale-x, 0.9),var(--@{fa-css-prefix}-bounce-jump-scale-y, 1.1))' ~'translateY(var(--@{fa-css-prefix}-bounce-height, -0.5em))'; }
|
||||
50% { transform: ~'scale(var(--@{fa-css-prefix}-bounce-land-scale-x, 1.05),var(--@{fa-css-prefix}-bounce-land-scale-y, 0.95))' translateY(0); }
|
||||
57% { transform: ~'scale(1,1) translateY(var(--@{fa-css-prefix}-bounce-rebound, -0.125em))'; }
|
||||
64% { transform: scale(1,1) translateY(0); }
|
||||
100% { transform: scale(1,1) translateY(0); }
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-fade' {
|
||||
50% { opacity: ~'var(--@{fa-css-prefix}-fade-opacity, 0.4)'; }
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-beat-fade' {
|
||||
0%, 100% {
|
||||
opacity: ~'var(--@{fa-css-prefix}-beat-fade-opacity, 0.4)';
|
||||
transform: scale(1);
|
||||
}
|
||||
50% {
|
||||
opacity: 1;
|
||||
transform: ~'scale(var(--@{fa-css-prefix}-beat-fade-scale, 1.125))';
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-flip' {
|
||||
50% {
|
||||
transform: ~'rotate3d(var(--@{fa-css-prefix}-flip-x, 0), var(--@{fa-css-prefix}-flip-y, 1), var(--@{fa-css-prefix}-flip-z, 0), var(--@{fa-css-prefix}-flip-angle, -180deg))';
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-shake' {
|
||||
0% { transform: rotate(-15deg); }
|
||||
4% { transform: rotate(15deg); }
|
||||
8%, 24% { transform: rotate(-18deg); }
|
||||
12%, 28% { transform: rotate(18deg); }
|
||||
16% { transform: rotate(-22deg); }
|
||||
20% { transform: rotate(22deg); }
|
||||
32% { transform: rotate(-12deg); }
|
||||
36% { transform: rotate(12deg); }
|
||||
40%, 100% { transform: rotate(0deg); }
|
||||
}
|
||||
|
||||
@keyframes ~'@{fa-css-prefix}-spin' {
|
||||
0% { transform: rotate(0deg); }
|
||||
100% { transform: rotate(360deg); }
|
||||
}
|
||||
20
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_bordered-pulled.less
vendored
Executable file
@@ -0,0 +1,20 @@
|
||||
// bordered + pulled icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-border {
|
||||
border-color: ~'var(--@{fa-css-prefix}-border-color, @{fa-border-color})';
|
||||
border-radius: ~'var(--@{fa-css-prefix}-border-radius, @{fa-border-radius})';
|
||||
border-style: ~'var(--@{fa-css-prefix}-border-style, @{fa-border-style})';
|
||||
border-width: ~'var(--@{fa-css-prefix}-border-width, @{fa-border-width})';
|
||||
padding: ~'var(--@{fa-css-prefix}-border-padding, @{fa-border-padding})';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-pull-left {
|
||||
float: left;
|
||||
margin-right: ~'var(--@{fa-css-prefix}-pull-margin, @{fa-pull-margin})';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-pull-right {
|
||||
float: right;
|
||||
margin-left: ~'var(--@{fa-css-prefix}-pull-margin, @{fa-pull-margin})';
|
||||
}
|
||||
36
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_core.less
vendored
Executable file
@@ -0,0 +1,36 @@
|
||||
// base icon class definition
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix} {
|
||||
font-family: ~"var(--@{fa-css-prefix}-style-family, '@{fa-style-family}')";
|
||||
font-weight: ~'var(--@{fa-css-prefix}-style, @{fa-style})';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-solid,
|
||||
.@{fa-css-prefix}-regular,
|
||||
.@{fa-css-prefix}-brands,
|
||||
.fas,
|
||||
.far,
|
||||
.fab,
|
||||
.@{fa-css-prefix} {
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
display: ~'var(--@{fa-css-prefix}-display, @{fa-display})';
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
text-rendering: auto;
|
||||
}
|
||||
|
||||
.fas,
|
||||
.@{fa-css-prefix}-classic,
|
||||
.@{fa-css-prefix}-solid,
|
||||
.far,
|
||||
.@{fa-css-prefix}-regular {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
}
|
||||
|
||||
.fab,
|
||||
.@{fa-css-prefix}-brands {
|
||||
font-family: 'Font Awesome 6 Brands';
|
||||
}
|
||||
|
||||
7
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_fixed-width.less
vendored
Executable file
@@ -0,0 +1,7 @@
|
||||
// fixed-width icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-fw {
|
||||
text-align: center;
|
||||
width: @fa-fw-width;
|
||||
}
|
||||
9
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_icons.less
vendored
Executable file
@@ -0,0 +1,9 @@
|
||||
// specific icon class definition
|
||||
// -------------------------
|
||||
|
||||
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
||||
readers do not read off random characters that represent icons */
|
||||
|
||||
each(.fa-icons(), {
|
||||
.@{fa-css-prefix}-@{key}::before { content: @value; }
|
||||
});
|
||||
18
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_list.less
vendored
Executable file
@@ -0,0 +1,18 @@
|
||||
// icons in a list
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-ul {
|
||||
list-style-type: none;
|
||||
margin-left: ~'var(--@{fa-css-prefix}-li-margin, @{fa-li-margin})';
|
||||
padding-left: 0;
|
||||
|
||||
> li { position: relative; }
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-li {
|
||||
left: calc(~'var(--@{fa-css-prefix}-li-width, @{fa-li-width})' * -1);
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
width: ~'var(--@{fa-css-prefix}-li-width, @{fa-li-width})';
|
||||
line-height: inherit;
|
||||
}
|
||||
78
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_mixins.less
vendored
Executable file
@@ -0,0 +1,78 @@
|
||||
// mixins
|
||||
// --------------------------
|
||||
|
||||
// base rendering for an icon
|
||||
.fa-icon() {
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
display: inline-block;
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
// sets relative font-sizing and alignment (in _sizing)
|
||||
.fa-size(@font-size) {
|
||||
font-size: (@font-size / @fa-size-scale-base) * 1em; // converts step in sizing scale into an em-based value that's relative to the scale's base
|
||||
line-height: (1 / @font-size) * 1em; // sets the line-height of the icon back to that of it's parent
|
||||
vertical-align: ((6 / @font-size) - (3 / 8)) * 1em; // vertically centers the icon taking into account the surrounding text's descender
|
||||
}
|
||||
|
||||
// only display content to screen readers
|
||||
// see: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
|
||||
// see: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
|
||||
.fa-sr-only() {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
// use in conjunction with .sr-only to only display content when it's focused
|
||||
.fa-sr-only-focusable() {
|
||||
&:not(:focus) {
|
||||
.fa-sr-only();
|
||||
}
|
||||
}
|
||||
|
||||
// sets a specific icon family to use alongside style + icon mixins
|
||||
.fa-family-classic() {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
}
|
||||
|
||||
// convenience mixins for declaring pseudo-elements by CSS variable,
|
||||
// including all style-specific font properties, and both the ::before
|
||||
// and ::after elements in the duotone case.
|
||||
.fa-icon-solid(@fa-var) {
|
||||
.fa-icon;
|
||||
.fa-solid;
|
||||
|
||||
&::before {
|
||||
content: @fa-var;
|
||||
}
|
||||
}
|
||||
|
||||
.fa-icon-regular(@fa-var) {
|
||||
.fa-icon;
|
||||
.fa-regular;
|
||||
|
||||
&::before {
|
||||
content: @fa-var;
|
||||
}
|
||||
}
|
||||
|
||||
.fa-icon-brands(@fa-var) {
|
||||
.fa-icon;
|
||||
.fa-brands;
|
||||
|
||||
&::before {
|
||||
content: @fa-var;
|
||||
}
|
||||
}
|
||||
|
||||
31
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_rotated-flipped.less
vendored
Executable file
@@ -0,0 +1,31 @@
|
||||
// rotating + flipping icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-rotate-90 {
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-rotate-180 {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-rotate-270 {
|
||||
transform: rotate(270deg);
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-flip-horizontal {
|
||||
transform: scale(-1, 1);
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-flip-vertical {
|
||||
transform: scale(1, -1);
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-flip-both,
|
||||
.@{fa-css-prefix}-flip-horizontal.@{fa-css-prefix}-flip-vertical {
|
||||
transform: scale(-1, -1);
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-rotate-by {
|
||||
transform: rotate(~'var(--@{fa-css-prefix}-rotate-angle, 0)');
|
||||
}
|
||||
14
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_screen-reader.less
vendored
Executable file
@@ -0,0 +1,14 @@
|
||||
// screen-reader utilities
|
||||
// -------------------------
|
||||
|
||||
// only display content to screen readers
|
||||
.sr-only,
|
||||
.@{fa-css-prefix}-sr-only {
|
||||
.fa-sr-only();
|
||||
}
|
||||
|
||||
// use in conjunction with .sr-only to only display content when it's focused
|
||||
.sr-only-focusable,
|
||||
.@{fa-css-prefix}-sr-only-focusable {
|
||||
.fa-sr-only-focusable();
|
||||
}
|
||||
2042
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_shims.less
vendored
Executable file
19
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_sizing.less
vendored
Executable file
@@ -0,0 +1,19 @@
|
||||
// sizing icons
|
||||
// -------------------------
|
||||
|
||||
// literal magnification scale
|
||||
.sizes-literal(@factor) when (@factor > 0) {
|
||||
.sizes-literal((@factor - 1));
|
||||
|
||||
.@{fa-css-prefix}-@{factor}x {
|
||||
font-size: (@factor * 1em);
|
||||
}
|
||||
}
|
||||
.sizes-literal(10);
|
||||
|
||||
// step-based scale (with alignment)
|
||||
each(.fa-sizes(), {
|
||||
.@{fa-css-prefix}-@{key} {
|
||||
.fa-size(@value);
|
||||
}
|
||||
});
|
||||
31
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_stacked.less
vendored
Executable file
@@ -0,0 +1,31 @@
|
||||
// stacking icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-stack {
|
||||
display: inline-block;
|
||||
height: 2em;
|
||||
line-height: 2em;
|
||||
position: relative;
|
||||
vertical-align: @fa-stack-vertical-align;
|
||||
width: @fa-stack-width;
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x {
|
||||
left: 0;
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
z-index: ~'var(--@{fa-css-prefix}-stack-z-index, @{fa-stack-z-index})';
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-stack-1x {
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-stack-2x {
|
||||
font-size: 2em;
|
||||
}
|
||||
|
||||
.@{fa-css-prefix}-inverse {
|
||||
color: ~'var(--@{fa-css-prefix}-inverse, @{fa-inverse})';
|
||||
}
|
||||
5021
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/_variables.less
vendored
Executable file
29
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/brands.less
vendored
Executable file
@@ -0,0 +1,29 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@import "_variables.less";
|
||||
|
||||
:root, :host {
|
||||
--@{fa-css-prefix}-style-family-brands: 'Font Awesome 6 Brands';
|
||||
--@{fa-css-prefix}-font-brands: normal 400 1em/1 'Font Awesome 6 Brands';
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 6 Brands';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: @fa-font-display;
|
||||
src: url('@{fa-font-path}/fa-brands-400.woff2') format('woff2'),
|
||||
url('@{fa-font-path}/fa-brands-400.ttf') format('truetype');
|
||||
}
|
||||
|
||||
.fab,
|
||||
.@{fa-css-prefix}-brands {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
each(.fa-brand-icons(), {
|
||||
.@{fa-css-prefix}-@{key}:before { content: @value; }
|
||||
});
|
||||
20
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/fontawesome.less
vendored
Executable file
@@ -0,0 +1,20 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
// Font Awesome core compile (Web Fonts-based)
|
||||
// -------------------------
|
||||
|
||||
@import "_variables.less";
|
||||
@import "_mixins.less";
|
||||
@import "_core.less";
|
||||
@import "_sizing.less";
|
||||
@import "_fixed-width.less";
|
||||
@import "_list.less";
|
||||
@import "_bordered-pulled.less";
|
||||
@import "_animated.less";
|
||||
@import "_rotated-flipped.less";
|
||||
@import "_stacked.less";
|
||||
@import "_icons.less";
|
||||
@import "_screen-reader.less";
|
||||
25
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/regular.less
vendored
Executable file
@@ -0,0 +1,25 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@import "_variables.less";
|
||||
|
||||
:root, :host {
|
||||
--@{fa-css-prefix}-style-family-classic: '@{fa-style-family}';
|
||||
--@{fa-css-prefix}-font-regular: normal 400 1em/1 '@{fa-style-family}';
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: @fa-font-display;
|
||||
src: url('@{fa-font-path}/fa-regular-400.woff2') format('woff2'),
|
||||
url('@{fa-font-path}/fa-regular-400.ttf') format('truetype');
|
||||
}
|
||||
|
||||
.far,
|
||||
.@{fa-css-prefix}-regular {
|
||||
font-weight: 400;
|
||||
}
|
||||
25
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/solid.less
vendored
Executable file
@@ -0,0 +1,25 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
@import "_variables.less";
|
||||
|
||||
:root, :host {
|
||||
--@{fa-css-prefix}-style-family-classic: '@{fa-style-family}';
|
||||
--@{fa-css-prefix}-font-solid: normal 900 1em/1 '@{fa-style-family}';
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
font-display: @fa-font-display;
|
||||
src: url('@{fa-font-path}/fa-solid-900.woff2') format('woff2'),
|
||||
url('@{fa-font-path}/fa-solid-900.ttf') format('truetype');
|
||||
}
|
||||
|
||||
.fas,
|
||||
.@{fa-css-prefix}-solid {
|
||||
font-weight: 900;
|
||||
}
|
||||
10
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/less/v4-shims.less
vendored
Executable file
@@ -0,0 +1,10 @@
|
||||
/*!
|
||||
* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
|
||||
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
|
||||
* Copyright 2024 Fonticons, Inc.
|
||||
*/
|
||||
// V4 shims compile (Web Fonts-based)
|
||||
// -------------------------
|
||||
|
||||
@import '_variables.less';
|
||||
@import '_shims.less';
|
||||
96779
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/metadata/icons.json
Executable file
45363
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/metadata/icons.yml
Executable file
@@ -0,0 +1,646 @@
|
||||
area-chart:
|
||||
name: chart-area
|
||||
arrow-circle-o-down:
|
||||
prefix: far
|
||||
name: circle-down
|
||||
arrow-circle-o-left:
|
||||
prefix: far
|
||||
name: circle-left
|
||||
arrow-circle-o-right:
|
||||
prefix: far
|
||||
name: circle-right
|
||||
arrow-circle-o-up:
|
||||
prefix: far
|
||||
name: circle-up
|
||||
arrows:
|
||||
name: up-down-left-right
|
||||
arrows-alt:
|
||||
name: maximize
|
||||
arrows-h:
|
||||
name: left-right
|
||||
arrows-v:
|
||||
name: up-down
|
||||
asl-interpreting:
|
||||
name: hands-asl-interpreting
|
||||
automobile:
|
||||
name: car
|
||||
bank:
|
||||
name: building-columns
|
||||
bar-chart:
|
||||
name: chart-column
|
||||
bar-chart-o:
|
||||
name: chart-column
|
||||
bathtub:
|
||||
name: bath
|
||||
battery:
|
||||
name: battery-full
|
||||
battery-0:
|
||||
name: battery-empty
|
||||
battery-1:
|
||||
name: battery-quarter
|
||||
battery-2:
|
||||
name: battery-half
|
||||
battery-3:
|
||||
name: battery-three-quarters
|
||||
battery-4:
|
||||
name: battery-full
|
||||
behance-square:
|
||||
prefix: fab
|
||||
name: square-behance
|
||||
bitbucket-square:
|
||||
prefix: fab
|
||||
name: bitbucket
|
||||
bitcoin:
|
||||
prefix: fab
|
||||
name: btc
|
||||
cab:
|
||||
name: taxi
|
||||
calendar:
|
||||
name: calendar-days
|
||||
calendar-times-o:
|
||||
prefix: far
|
||||
name: calendar-xmark
|
||||
caret-square-o-down:
|
||||
prefix: far
|
||||
name: square-caret-down
|
||||
caret-square-o-left:
|
||||
prefix: far
|
||||
name: square-caret-left
|
||||
caret-square-o-right:
|
||||
prefix: far
|
||||
name: square-caret-right
|
||||
caret-square-o-up:
|
||||
prefix: far
|
||||
name: square-caret-up
|
||||
cc:
|
||||
prefix: far
|
||||
name: closed-captioning
|
||||
chain:
|
||||
name: link
|
||||
chain-broken:
|
||||
name: link-slash
|
||||
check-circle-o:
|
||||
prefix: far
|
||||
name: circle-check
|
||||
check-square-o:
|
||||
prefix: far
|
||||
name: square-check
|
||||
circle-o-notch:
|
||||
name: circle-notch
|
||||
circle-thin:
|
||||
prefix: far
|
||||
name: circle
|
||||
clipboard:
|
||||
name: paste
|
||||
clone:
|
||||
prefix: far
|
||||
close:
|
||||
name: xmark
|
||||
cloud-download:
|
||||
name: cloud-arrow-down
|
||||
cloud-upload:
|
||||
name: cloud-arrow-up
|
||||
cny:
|
||||
name: yen-sign
|
||||
code-fork:
|
||||
name: code-branch
|
||||
commenting:
|
||||
name: comment-dots
|
||||
commenting-o:
|
||||
prefix: far
|
||||
name: comment-dots
|
||||
compass:
|
||||
prefix: far
|
||||
compress:
|
||||
name: down-left-and-up-right-to-center
|
||||
copyright:
|
||||
prefix: far
|
||||
credit-card:
|
||||
prefix: far
|
||||
credit-card-alt:
|
||||
name: credit-card
|
||||
cut:
|
||||
name: scissors
|
||||
cutlery:
|
||||
name: utensils
|
||||
dashboard:
|
||||
name: gauge-high
|
||||
deafness:
|
||||
name: ear-deaf
|
||||
dedent:
|
||||
name: outdent
|
||||
diamond:
|
||||
prefix: far
|
||||
name: gem
|
||||
dollar:
|
||||
name: dollar-sign
|
||||
dot-circle-o:
|
||||
prefix: far
|
||||
name: circle-dot
|
||||
drivers-license:
|
||||
name: id-card
|
||||
drivers-license-o:
|
||||
prefix: far
|
||||
name: id-card
|
||||
edit:
|
||||
prefix: far
|
||||
name: pen-to-square
|
||||
eercast:
|
||||
prefix: fab
|
||||
name: sellcast
|
||||
eur:
|
||||
name: euro-sign
|
||||
euro:
|
||||
name: euro-sign
|
||||
exchange:
|
||||
name: right-left
|
||||
expand:
|
||||
name: up-right-and-down-left-from-center
|
||||
external-link:
|
||||
name: up-right-from-square
|
||||
external-link-square:
|
||||
name: square-up-right
|
||||
eye:
|
||||
prefix: far
|
||||
eye-slash:
|
||||
prefix: far
|
||||
eyedropper:
|
||||
name: eye-dropper
|
||||
fa:
|
||||
prefix: fab
|
||||
name: font-awesome
|
||||
facebook:
|
||||
prefix: fab
|
||||
name: facebook-f
|
||||
facebook-f:
|
||||
prefix: fab
|
||||
name: facebook-f
|
||||
facebook-official:
|
||||
prefix: fab
|
||||
name: facebook
|
||||
facebook-square:
|
||||
prefix: fab
|
||||
name: square-facebook
|
||||
feed:
|
||||
name: rss
|
||||
file-archive-o:
|
||||
prefix: far
|
||||
name: file-zipper
|
||||
file-movie-o:
|
||||
prefix: far
|
||||
name: file-video
|
||||
file-photo-o:
|
||||
prefix: far
|
||||
name: file-image
|
||||
file-picture-o:
|
||||
prefix: far
|
||||
name: file-image
|
||||
file-sound-o:
|
||||
prefix: far
|
||||
name: file-audio
|
||||
file-text:
|
||||
name: file-lines
|
||||
file-text-o:
|
||||
prefix: far
|
||||
name: file-lines
|
||||
file-zip-o:
|
||||
prefix: far
|
||||
name: file-zipper
|
||||
files-o:
|
||||
prefix: far
|
||||
name: copy
|
||||
flash:
|
||||
name: bolt
|
||||
floppy-o:
|
||||
prefix: far
|
||||
name: floppy-disk
|
||||
frown-o:
|
||||
prefix: far
|
||||
name: face-frown
|
||||
gbp:
|
||||
name: sterling-sign
|
||||
ge:
|
||||
prefix: fab
|
||||
name: empire
|
||||
gear:
|
||||
name: gear
|
||||
gears:
|
||||
name: gears
|
||||
git-square:
|
||||
prefix: fab
|
||||
name: square-git
|
||||
github-square:
|
||||
prefix: fab
|
||||
name: square-github
|
||||
gittip:
|
||||
prefix: fab
|
||||
name: gratipay
|
||||
glass:
|
||||
name: martini-glass-empty
|
||||
globe:
|
||||
name: earth-americas
|
||||
google-plus:
|
||||
prefix: fab
|
||||
name: google-plus-g
|
||||
google-plus-circle:
|
||||
prefix: fab
|
||||
name: google-plus
|
||||
google-plus-official:
|
||||
prefix: fab
|
||||
name: google-plus
|
||||
google-plus-square:
|
||||
prefix: fab
|
||||
name: square-google-plus
|
||||
group:
|
||||
name: users
|
||||
hand-grab-o:
|
||||
prefix: far
|
||||
name: hand-back-fist
|
||||
hand-o-down:
|
||||
prefix: far
|
||||
name: hand-point-down
|
||||
hand-o-left:
|
||||
prefix: far
|
||||
name: hand-point-left
|
||||
hand-o-right:
|
||||
prefix: far
|
||||
name: hand-point-right
|
||||
hand-o-up:
|
||||
prefix: far
|
||||
name: hand-point-up
|
||||
hand-paper-o:
|
||||
prefix: far
|
||||
name: hand
|
||||
hand-rock-o:
|
||||
prefix: far
|
||||
name: hand-back-fist
|
||||
hand-stop-o:
|
||||
prefix: far
|
||||
name: hand
|
||||
hard-of-hearing:
|
||||
name: ear-deaf
|
||||
hdd-o:
|
||||
prefix: far
|
||||
name: hard-drive
|
||||
header:
|
||||
name: heading
|
||||
home:
|
||||
name: house
|
||||
hotel:
|
||||
name: bed
|
||||
hourglass-1:
|
||||
name: hourglass-start
|
||||
hourglass-2:
|
||||
name: hourglass-half
|
||||
hourglass-3:
|
||||
name: hourglass-end
|
||||
hourglass-o:
|
||||
name: hourglass
|
||||
id-badge:
|
||||
prefix: far
|
||||
ils:
|
||||
name: shekel-sign
|
||||
image:
|
||||
prefix: far
|
||||
name: image
|
||||
inr:
|
||||
name: indian-rupee-sign
|
||||
institution:
|
||||
name: building-columns
|
||||
intersex:
|
||||
name: mars-and-venus
|
||||
jpy:
|
||||
name: yen-sign
|
||||
krw:
|
||||
name: won-sign
|
||||
lastfm-square:
|
||||
prefix: fab
|
||||
name: square-lastfm
|
||||
legal:
|
||||
name: gavel
|
||||
level-down:
|
||||
name: turn-down
|
||||
level-up:
|
||||
name: turn-up
|
||||
life-bouy:
|
||||
name: life-ring
|
||||
life-buoy:
|
||||
name: life-ring
|
||||
life-saver:
|
||||
name: life-ring
|
||||
line-chart:
|
||||
name: chart-line
|
||||
linkedin:
|
||||
prefix: fab
|
||||
name: linkedin-in
|
||||
linkedin-square:
|
||||
prefix: fab
|
||||
name: linkedin
|
||||
list-alt:
|
||||
prefix: far
|
||||
name: rectangle-list
|
||||
long-arrow-down:
|
||||
name: down-long
|
||||
long-arrow-left:
|
||||
name: left-long
|
||||
long-arrow-right:
|
||||
name: right-long
|
||||
long-arrow-up:
|
||||
name: up-long
|
||||
magic:
|
||||
name: wand-magic-sparkles
|
||||
mail-forward:
|
||||
name: share
|
||||
mail-reply:
|
||||
name: reply
|
||||
mail-reply-all:
|
||||
name: reply-all
|
||||
map-marker:
|
||||
name: location-dot
|
||||
meh-o:
|
||||
prefix: far
|
||||
name: face-meh
|
||||
minus-square-o:
|
||||
prefix: far
|
||||
name: square-minus
|
||||
mobile:
|
||||
name: mobile-screen-button
|
||||
mobile-phone:
|
||||
name: mobile-screen-button
|
||||
money:
|
||||
name: money-bill-1
|
||||
mortar-board:
|
||||
name: graduation-cap
|
||||
navicon:
|
||||
name: bars
|
||||
object-group:
|
||||
prefix: far
|
||||
object-ungroup:
|
||||
prefix: far
|
||||
odnoklassniki-square:
|
||||
prefix: fab
|
||||
name: square-odnoklassniki
|
||||
pause-circle-o:
|
||||
prefix: far
|
||||
name: circle-pause
|
||||
pencil-square:
|
||||
name: square-pen
|
||||
pencil-square-o:
|
||||
prefix: far
|
||||
name: pen-to-square
|
||||
photo:
|
||||
prefix: far
|
||||
name: image
|
||||
picture-o:
|
||||
prefix: far
|
||||
name: image
|
||||
pie-chart:
|
||||
name: chart-pie
|
||||
pinterest-square:
|
||||
prefix: fab
|
||||
name: square-pinterest
|
||||
play-circle-o:
|
||||
prefix: far
|
||||
name: circle-play
|
||||
plus-square-o:
|
||||
prefix: far
|
||||
name: square-plus
|
||||
question-circle-o:
|
||||
prefix: far
|
||||
name: circle-question
|
||||
ra:
|
||||
prefix: fab
|
||||
name: rebel
|
||||
reddit-square:
|
||||
prefix: fab
|
||||
name: square-reddit
|
||||
refresh:
|
||||
name: arrows-rotate
|
||||
registered:
|
||||
prefix: far
|
||||
remove:
|
||||
name: xmark
|
||||
reorder:
|
||||
name: bars
|
||||
repeat:
|
||||
name: arrow-rotate-right
|
||||
resistance:
|
||||
prefix: fab
|
||||
name: rebel
|
||||
rmb:
|
||||
name: yen-sign
|
||||
rotate-left:
|
||||
name: arrow-rotate-left
|
||||
rotate-right:
|
||||
name: arrow-rotate-right
|
||||
rouble:
|
||||
name: ruble-sign
|
||||
rub:
|
||||
name: ruble-sign
|
||||
ruble:
|
||||
name: ruble-sign
|
||||
rupee:
|
||||
name: indian-rupee-sign
|
||||
s15:
|
||||
name: bath
|
||||
save:
|
||||
prefix: far
|
||||
name: floppy-disk
|
||||
send:
|
||||
name: paper-plane
|
||||
send-o:
|
||||
prefix: far
|
||||
name: paper-plane
|
||||
share-square-o:
|
||||
name: share-from-square
|
||||
shekel:
|
||||
name: shekel-sign
|
||||
sheqel:
|
||||
name: shekel-sign
|
||||
sign-in:
|
||||
name: right-to-bracket
|
||||
sign-out:
|
||||
name: right-from-bracket
|
||||
signing:
|
||||
name: hands
|
||||
smile-o:
|
||||
prefix: far
|
||||
name: face-smile
|
||||
snapchat-ghost:
|
||||
prefix: fab
|
||||
name: snapchat
|
||||
snapchat-square:
|
||||
prefix: fab
|
||||
name: square-snapchat
|
||||
soccer-ball-o:
|
||||
prefix: far
|
||||
name: futbol
|
||||
sort-alpha-asc:
|
||||
name: arrow-down-a-z
|
||||
sort-alpha-desc:
|
||||
name: arrow-down-z-a
|
||||
sort-amount-asc:
|
||||
name: arrow-down-short-wide
|
||||
sort-amount-desc:
|
||||
name: arrow-down-wide-short
|
||||
sort-asc:
|
||||
name: sort-up
|
||||
sort-desc:
|
||||
name: sort-down
|
||||
sort-numeric-asc:
|
||||
name: arrow-down-1-9
|
||||
sort-numeric-desc:
|
||||
name: arrow-down-9-1
|
||||
star-half-empty:
|
||||
prefix: far
|
||||
name: star-half-stroke
|
||||
star-half-full:
|
||||
prefix: far
|
||||
name: star-half-stroke
|
||||
star-half-o:
|
||||
prefix: far
|
||||
name: star-half-stroke
|
||||
steam-square:
|
||||
prefix: fab
|
||||
name: square-steam
|
||||
sticky-note-o:
|
||||
prefix: far
|
||||
name: note-sticky
|
||||
stop-circle-o:
|
||||
prefix: far
|
||||
name: circle-stop
|
||||
support:
|
||||
name: life-ring
|
||||
tablet:
|
||||
name: tablet-screen-button
|
||||
tachometer:
|
||||
name: gauge-high
|
||||
tasks:
|
||||
name: bars-progress
|
||||
television:
|
||||
name: tv
|
||||
thermometer:
|
||||
name: temperature-full
|
||||
thermometer-0:
|
||||
name: temperature-empty
|
||||
thermometer-1:
|
||||
name: temperature-quarter
|
||||
thermometer-2:
|
||||
name: temperature-half
|
||||
thermometer-3:
|
||||
name: temperature-three-quarters
|
||||
thermometer-4:
|
||||
name: temperature-full
|
||||
thumb-tack:
|
||||
name: thumbtack
|
||||
thumbs-o-down:
|
||||
prefix: far
|
||||
name: thumbs-down
|
||||
thumbs-o-up:
|
||||
prefix: far
|
||||
name: thumbs-up
|
||||
times-circle-o:
|
||||
prefix: far
|
||||
name: circle-xmark
|
||||
times-rectangle:
|
||||
name: rectangle-xmark
|
||||
times-rectangle-o:
|
||||
prefix: far
|
||||
name: rectangle-xmark
|
||||
toggle-down:
|
||||
prefix: far
|
||||
name: square-caret-down
|
||||
toggle-left:
|
||||
prefix: far
|
||||
name: square-caret-left
|
||||
toggle-right:
|
||||
prefix: far
|
||||
name: square-caret-right
|
||||
toggle-up:
|
||||
prefix: far
|
||||
name: square-caret-up
|
||||
transgender:
|
||||
name: mars-and-venus
|
||||
transgender-alt:
|
||||
name: transgender
|
||||
trash:
|
||||
name: trash-can
|
||||
trash-o:
|
||||
prefix: far
|
||||
name: trash-can
|
||||
try:
|
||||
name: turkish-lira-sign
|
||||
tumblr-square:
|
||||
prefix: fab
|
||||
name: square-tumblr
|
||||
turkish-lira:
|
||||
name: turkish-lira-sign
|
||||
twitter-square:
|
||||
prefix: fab
|
||||
name: square-twitter
|
||||
unlink:
|
||||
name: link-slash
|
||||
unlock-alt:
|
||||
name: unlock
|
||||
unsorted:
|
||||
name: sort
|
||||
usd:
|
||||
name: dollar-sign
|
||||
user-circle-o:
|
||||
prefix: far
|
||||
name: circle-user
|
||||
vcard:
|
||||
name: address-card
|
||||
vcard-o:
|
||||
prefix: far
|
||||
name: address-card
|
||||
viadeo-square:
|
||||
prefix: fab
|
||||
name: square-viadeo
|
||||
video-camera:
|
||||
name: video
|
||||
vimeo:
|
||||
prefix: fab
|
||||
name: vimeo-v
|
||||
vimeo-square:
|
||||
prefix: fab
|
||||
name: square-vimeo
|
||||
volume-control-phone:
|
||||
name: phone-volume
|
||||
warning:
|
||||
name: triangle-exclamation
|
||||
wechat:
|
||||
prefix: fab
|
||||
name: weixin
|
||||
wheelchair-alt:
|
||||
prefix: fab
|
||||
name: accessible-icon
|
||||
window-close-o:
|
||||
prefix: far
|
||||
name: rectangle-xmark
|
||||
window-maximize:
|
||||
prefix: far
|
||||
window-restore:
|
||||
prefix: far
|
||||
won:
|
||||
name: won-sign
|
||||
xing-square:
|
||||
prefix: fab
|
||||
name: square-xing
|
||||
y-combinator-square:
|
||||
prefix: fab
|
||||
name: hacker-news
|
||||
yc:
|
||||
prefix: fab
|
||||
name: y-combinator
|
||||
yc-square:
|
||||
prefix: fab
|
||||
name: hacker-news
|
||||
yen:
|
||||
name: yen-sign
|
||||
youtube-play:
|
||||
prefix: fab
|
||||
name: youtube
|
||||
youtube-square:
|
||||
prefix: fab
|
||||
name: square-youtube
|
||||
152
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_animated.scss
vendored
Executable file
@@ -0,0 +1,152 @@
|
||||
// animating icons
|
||||
// --------------------------
|
||||
|
||||
.#{$fa-css-prefix}-beat {
|
||||
animation-name: #{$fa-css-prefix}-beat;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, ease-in-out);
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-bounce {
|
||||
animation-name: #{$fa-css-prefix}-bounce;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, cubic-bezier(0.280, 0.840, 0.420, 1));
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-fade {
|
||||
animation-name: #{$fa-css-prefix}-fade;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1));
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-beat-fade {
|
||||
animation-name: #{$fa-css-prefix}-beat-fade;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1));
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-flip {
|
||||
animation-name: #{$fa-css-prefix}-flip;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, ease-in-out);
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-shake {
|
||||
animation-name: #{$fa-css-prefix}-shake;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, linear);
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-spin {
|
||||
animation-name: #{$fa-css-prefix}-spin;
|
||||
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 2s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, linear);
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-spin-reverse {
|
||||
--#{$fa-css-prefix}-animation-direction: reverse;
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-pulse,
|
||||
.#{$fa-css-prefix}-spin-pulse {
|
||||
animation-name: #{$fa-css-prefix}-spin;
|
||||
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
|
||||
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
|
||||
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
|
||||
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, steps(8));
|
||||
}
|
||||
|
||||
// if agent or operating system prefers reduced motion, disable animations
|
||||
// see: https://www.smashingmagazine.com/2020/09/design-reduced-motion-sensitivities/
|
||||
// see: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.#{$fa-css-prefix}-beat,
|
||||
.#{$fa-css-prefix}-bounce,
|
||||
.#{$fa-css-prefix}-fade,
|
||||
.#{$fa-css-prefix}-beat-fade,
|
||||
.#{$fa-css-prefix}-flip,
|
||||
.#{$fa-css-prefix}-pulse,
|
||||
.#{$fa-css-prefix}-shake,
|
||||
.#{$fa-css-prefix}-spin,
|
||||
.#{$fa-css-prefix}-spin-pulse {
|
||||
animation-delay: -1ms;
|
||||
animation-duration: 1ms;
|
||||
animation-iteration-count: 1;
|
||||
transition-delay: 0s;
|
||||
transition-duration: 0s;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-beat {
|
||||
0%, 90% { transform: scale(1); }
|
||||
45% { transform: scale(var(--#{$fa-css-prefix}-beat-scale, 1.25)); }
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-bounce {
|
||||
0% { transform: scale(1,1) translateY(0); }
|
||||
10% { transform: scale(var(--#{$fa-css-prefix}-bounce-start-scale-x, 1.1),var(--#{$fa-css-prefix}-bounce-start-scale-y, 0.9)) translateY(0); }
|
||||
30% { transform: scale(var(--#{$fa-css-prefix}-bounce-jump-scale-x, 0.9),var(--#{$fa-css-prefix}-bounce-jump-scale-y, 1.1)) translateY(var(--#{$fa-css-prefix}-bounce-height, -0.5em)); }
|
||||
50% { transform: scale(var(--#{$fa-css-prefix}-bounce-land-scale-x, 1.05),var(--#{$fa-css-prefix}-bounce-land-scale-y, 0.95)) translateY(0); }
|
||||
57% { transform: scale(1,1) translateY(var(--#{$fa-css-prefix}-bounce-rebound, -0.125em)); }
|
||||
64% { transform: scale(1,1) translateY(0); }
|
||||
100% { transform: scale(1,1) translateY(0); }
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-fade {
|
||||
50% { opacity: var(--#{$fa-css-prefix}-fade-opacity, 0.4); }
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-beat-fade {
|
||||
0%, 100% {
|
||||
opacity: var(--#{$fa-css-prefix}-beat-fade-opacity, 0.4);
|
||||
transform: scale(1);
|
||||
}
|
||||
50% {
|
||||
opacity: 1;
|
||||
transform: scale(var(--#{$fa-css-prefix}-beat-fade-scale, 1.125));
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-flip {
|
||||
50% {
|
||||
transform: rotate3d(var(--#{$fa-css-prefix}-flip-x, 0), var(--#{$fa-css-prefix}-flip-y, 1), var(--#{$fa-css-prefix}-flip-z, 0), var(--#{$fa-css-prefix}-flip-angle, -180deg));
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-shake {
|
||||
0% { transform: rotate(-15deg); }
|
||||
4% { transform: rotate(15deg); }
|
||||
8%, 24% { transform: rotate(-18deg); }
|
||||
12%, 28% { transform: rotate(18deg); }
|
||||
16% { transform: rotate(-22deg); }
|
||||
20% { transform: rotate(22deg); }
|
||||
32% { transform: rotate(-12deg); }
|
||||
36% { transform: rotate(12deg); }
|
||||
40%, 100% { transform: rotate(0deg); }
|
||||
}
|
||||
|
||||
@keyframes #{$fa-css-prefix}-spin {
|
||||
0% { transform: rotate(0deg); }
|
||||
100% { transform: rotate(360deg); }
|
||||
}
|
||||
20
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_bordered-pulled.scss
vendored
Executable file
@@ -0,0 +1,20 @@
|
||||
// bordered + pulled icons
|
||||
// -------------------------
|
||||
|
||||
.#{$fa-css-prefix}-border {
|
||||
border-color: var(--#{$fa-css-prefix}-border-color, #{$fa-border-color});
|
||||
border-radius: var(--#{$fa-css-prefix}-border-radius, #{$fa-border-radius});
|
||||
border-style: var(--#{$fa-css-prefix}-border-style, #{$fa-border-style});
|
||||
border-width: var(--#{$fa-css-prefix}-border-width, #{$fa-border-width});
|
||||
padding: var(--#{$fa-css-prefix}-border-padding, #{$fa-border-padding});
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-pull-left {
|
||||
float: left;
|
||||
margin-right: var(--#{$fa-css-prefix}-pull-margin, #{$fa-pull-margin});
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-pull-right {
|
||||
float: right;
|
||||
margin-left: var(--#{$fa-css-prefix}-pull-margin, #{$fa-pull-margin});
|
||||
}
|
||||
43
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_core.scss
vendored
Executable file
@@ -0,0 +1,43 @@
|
||||
// base icon class definition
|
||||
// -------------------------
|
||||
|
||||
.#{$fa-css-prefix} {
|
||||
font-family: var(--#{$fa-css-prefix}-style-family, '#{$fa-style-family}');
|
||||
font-weight: var(--#{$fa-css-prefix}-style, #{$fa-style});
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-solid,
|
||||
.#{$fa-css-prefix}-regular,
|
||||
.#{$fa-css-prefix}-brands,
|
||||
.fas,
|
||||
.far,
|
||||
.fab,
|
||||
.#{$fa-css-prefix}-sharp-solid,
|
||||
.#{$fa-css-prefix}-classic,
|
||||
.#{$fa-css-prefix} {
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
display: var(--#{$fa-css-prefix}-display, #{$fa-display});
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
line-height: 1;
|
||||
text-rendering: auto;
|
||||
}
|
||||
|
||||
.fas,
|
||||
.#{$fa-css-prefix}-classic,
|
||||
.#{$fa-css-prefix}-solid,
|
||||
.far,
|
||||
.#{$fa-css-prefix}-regular {
|
||||
font-family: 'Font Awesome 6 Free';
|
||||
}
|
||||
|
||||
.fab,
|
||||
.#{$fa-css-prefix}-brands {
|
||||
font-family: 'Font Awesome 6 Brands';
|
||||
}
|
||||
|
||||
|
||||
%fa-icon {
|
||||
@include fa-icon;
|
||||
}
|
||||
7
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_fixed-width.scss
vendored
Executable file
@@ -0,0 +1,7 @@
|
||||
// fixed-width icons
|
||||
// -------------------------
|
||||
|
||||
.#{$fa-css-prefix}-fw {
|
||||
text-align: center;
|
||||
width: $fa-fw-width;
|
||||
}
|
||||
57
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_functions.scss
vendored
Executable file
@@ -0,0 +1,57 @@
|
||||
// functions
|
||||
// --------------------------
|
||||
|
||||
// fa-content: convenience function used to set content property
|
||||
@function fa-content($fa-var) {
|
||||
@return unquote("\"#{ $fa-var }\"");
|
||||
}
|
||||
|
||||
// fa-divide: Originally obtained from the Bootstrap https://github.com/twbs/bootstrap
|
||||
//
|
||||
// Licensed under: The MIT License (MIT)
|
||||
//
|
||||
// Copyright (c) 2011-2021 Twitter, Inc.
|
||||
// Copyright (c) 2011-2021 The Bootstrap Authors
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
// of this software and associated documentation files (the "Software"), to deal
|
||||
// in the Software without restriction, including without limitation the rights
|
||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
// copies of the Software, and to permit persons to whom the Software is
|
||||
// furnished to do so, subject to the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be included in
|
||||
// all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
// THE SOFTWARE.
|
||||
|
||||
@function fa-divide($dividend, $divisor, $precision: 10) {
|
||||
$sign: if($dividend > 0 and $divisor > 0, 1, -1);
|
||||
$dividend: abs($dividend);
|
||||
$divisor: abs($divisor);
|
||||
$quotient: 0;
|
||||
$remainder: $dividend;
|
||||
@if $dividend == 0 {
|
||||
@return 0;
|
||||
}
|
||||
@if $divisor == 0 {
|
||||
@error "Cannot divide by 0";
|
||||
}
|
||||
@if $divisor == 1 {
|
||||
@return $dividend;
|
||||
}
|
||||
@while $remainder >= $divisor {
|
||||
$quotient: $quotient + 1;
|
||||
$remainder: $remainder - $divisor;
|
||||
}
|
||||
@if $remainder > 0 and $precision > 0 {
|
||||
$remainder: fa-divide($remainder * 10, $divisor, $precision - 1) * .1;
|
||||
}
|
||||
@return ($quotient + $remainder) * $sign;
|
||||
}
|
||||
10
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_icons.scss
vendored
Executable file
@@ -0,0 +1,10 @@
|
||||
// specific icon class definition
|
||||
// -------------------------
|
||||
|
||||
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
||||
readers do not read off random characters that represent icons */
|
||||
|
||||
@each $name, $icon in $fa-icons {
|
||||
.#{$fa-css-prefix}-#{$name}::before { content: unquote("\"#{ $icon }\""); }
|
||||
}
|
||||
|
||||
18
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_list.scss
vendored
Executable file
@@ -0,0 +1,18 @@
|
||||
// icons in a list
|
||||
// -------------------------
|
||||
|
||||
.#{$fa-css-prefix}-ul {
|
||||
list-style-type: none;
|
||||
margin-left: var(--#{$fa-css-prefix}-li-margin, #{$fa-li-margin});
|
||||
padding-left: 0;
|
||||
|
||||
> li { position: relative; }
|
||||
}
|
||||
|
||||
.#{$fa-css-prefix}-li {
|
||||
left: calc(-1 * var(--#{$fa-css-prefix}-li-width, #{$fa-li-width}));
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
width: var(--#{$fa-css-prefix}-li-width, #{$fa-li-width});
|
||||
line-height: inherit;
|
||||
}
|
||||
72
web_frontend/web_result/data/订单班文档资料/智能开发/附件项目/assets/font-awesome/scss/_mixins.scss
vendored
Executable file
@@ -0,0 +1,72 @@
|
||||
// mixins
|
||||
// --------------------------
|
||||
|
||||
// base rendering for an icon
|
||||
@mixin fa-icon {
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
display: inline-block;
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
// sets relative font-sizing and alignment (in _sizing)
|
||||
@mixin fa-size ($font-size) {
|
||||
font-size: fa-divide($font-size, $fa-size-scale-base) * 1em; // converts step in sizing scale into an em-based value that's relative to the scale's base
|
||||
line-height: fa-divide(1, $font-size) * 1em; // sets the line-height of the icon back to that of it's parent
|
||||
vertical-align: (fa-divide(6, $font-size) - fa-divide(3, 8)) * 1em; // vertically centers the icon taking into account the surrounding text's descender
|
||||
}
|
||||
|
||||
// only display content to screen readers
|
||||
// see: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
|
||||
// see: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
|
||||
@mixin fa-sr-only() {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
// use in conjunction with .sr-only to only display content when it's focused
|
||||
@mixin fa-sr-only-focusable() {
|
||||
&:not(:focus) {
|
||||
@include fa-sr-only();
|
||||
}
|
||||
}
|
||||
|
||||
// sets a specific icon family to use alongside style + icon mixins
|
||||
|
||||
// convenience mixins for declaring pseudo-elements by CSS variable,
|
||||
// including all style-specific font properties, and both the ::before
|
||||
// and ::after elements in the duotone case.
|
||||
@mixin fa-icon-solid($fa-var) {
|
||||
@extend %fa-icon;
|
||||
@extend .fa-solid;
|
||||
|
||||
&::before {
|
||||
content: unquote("\"#{ $fa-var }\"");
|
||||
}
|
||||
}
|
||||
@mixin fa-icon-regular($fa-var) {
|
||||
@extend %fa-icon;
|
||||
@extend .fa-regular;
|
||||
|
||||
&::before {
|
||||
content: unquote("\"#{ $fa-var }\"");
|
||||
}
|
||||
}
|
||||
@mixin fa-icon-brands($fa-var) {
|
||||
@extend %fa-icon;
|
||||
@extend .fa-brands;
|
||||
|
||||
&::before {
|
||||
content: unquote("\"#{ $fa-var }\"");
|
||||
}
|
||||
}
|
||||