diff --git a/admin/src/router/index.ts b/admin/src/router/index.ts index 9725610..19f9fa4 100644 --- a/admin/src/router/index.ts +++ b/admin/src/router/index.ts @@ -2,6 +2,7 @@ import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router' import Shell from '../views/Shell.vue' const routes: RouteRecordRaw[] = [ + { path: '/admin/login', component: () => import('../views/admin/Login.vue') }, { path: '/', component: Shell, @@ -15,8 +16,9 @@ const routes: RouteRecordRaw[] = [ { path: 'parts/templates', component: () => import('../views/parts/Templates.vue') }, { path: 'consult', component: () => import('../views/consult/ConsultList.vue') } ,{ path: 'notice/list', component: () => import('../views/notice/NoticeList.vue') } - ,{ path: 'dict/units', component: () => import('../views/dict/Units.vue') } + ,{ path: 'dict/categories', component: () => import('../views/dict/Categories.vue') } + ,{ path: 'normal-admin/applications', component: () => import('../views/normal-admin/Applications.vue') } ] } ] diff --git a/admin/src/views/Shell.vue b/admin/src/views/Shell.vue index c2c7212..5c843aa 100644 --- a/admin/src/views/Shell.vue +++ b/admin/src/views/Shell.vue @@ -14,8 +14,8 @@ 模板管理 咨询回复 公告管理 - 主单位 主类别 + 普通管理员审批 diff --git a/admin/src/views/admin/Login.vue b/admin/src/views/admin/Login.vue new file mode 100644 index 0000000..dd70994 --- /dev/null +++ b/admin/src/views/admin/Login.vue @@ -0,0 +1,59 @@ + + + + 平台管理员登录 + + + + + + + + + 登录 + + + 说明:登录成功后将把 ADMIN_ID/TOKEN 写入本地用于授权。 + + + + + + + + + diff --git a/admin/src/views/normal-admin/Applications.vue b/admin/src/views/normal-admin/Applications.vue new file mode 100644 index 0000000..30d0b1b --- /dev/null +++ b/admin/src/views/normal-admin/Applications.vue @@ -0,0 +1,96 @@ + + + + 普通管理员申请 + + + + + + + + 查询 + 重置 + + + + + + + + + + + + + {{ formatDate(row.createdAt) }} + + + + 通过 + 驳回 + + + + + + + + + + + + 取消 + 确认驳回 + + + + + + + + + + diff --git a/admin/src/views/parts/Templates.vue b/admin/src/views/parts/Templates.vue index 2f9c1ea..c62768e 100644 --- a/admin/src/views/parts/Templates.vue +++ b/admin/src/views/parts/Templates.vue @@ -23,31 +23,37 @@ {{ row.status===1?'启用':'停用' }} - + - 编辑 + 查看 + + + + 删除 + + - + - + - + - + - + 参数字段 - + 新增字段 @@ -55,14 +61,14 @@ {{ $index+1 }} - + - + - + @@ -72,28 +78,31 @@ - + - + - + - + - + - 删除 + + 删除 + — + - 取消 - 保存 + {{ dlg.id? '关闭':'取消' }} + 保存 @@ -122,11 +131,7 @@ function loadCategories() { }) } -function openCreate() { - dlg.visible = true; dlg.id = 0 - Object.assign(form, { id:0, categoryId: undefined, name:'', modelRule:'', status:1, params:[] }) -} -function openEdit(row:any) { +function openView(row:any) { dlg.visible = true; dlg.id = row.id http.get(`/api/admin/part-templates/${row.id}`).then(res => { const d = res.data @@ -135,14 +140,19 @@ function openEdit(row:any) { }) } +function openCreate() { + dlg.visible = true; dlg.id = 0 + Object.assign(form, { id: 0, categoryId: undefined, name: '', modelRule: '', status: 1, params: [] }) +} + function addParam() { form.params.push({ fieldKey:'', fieldLabel:'', type:'string', required:false, unit:'', enumOptionsText:'', searchable:false, dedupeParticipate:false, sortOrder:0 }) } -function removeParam(i:number) { - form.params.splice(i,1) -} + +function removeParam(i:number) { form.params.splice(i,1) } + function save() { - // 前端校验:fieldKey/fieldLabel/类型/重复 + // 校验 const seen = new Set() for (const p of form.params) { const key = String(p.fieldKey||'').trim() @@ -157,9 +167,19 @@ function save() { const payload:any = { categoryId: form.categoryId, name: form.name, modelRule: form.modelRule, status: form.status, params: form.params.map((p:any)=>({ fieldKey:p.fieldKey, fieldLabel:p.fieldLabel, type:p.type, required:p.required, unit:p.unit, enumOptions: (p.enumOptionsText||'').split(',').map((s:string)=>s.trim()).filter((s:string)=>s), searchable:p.searchable, dedupeParticipate:p.dedupeParticipate, sortOrder:p.sortOrder })) } - const req = dlg.id ? http.put(`/api/admin/part-templates/${dlg.id}`, { ...payload, deleteAllRelatedProductsAndSubmissions: true }) - : http.post('/api/admin/part-templates', payload) - req.then(()=>{ ElMessage.success('保存成功'); dlg.visible=false; load() }) + http.post('/api/admin/part-templates', payload).then(()=>{ + ElMessage.success('创建成功'); dlg.visible=false; load() + }) +} + +function doDelete(row:any) { + // 默认非强制删除;如需强制,可加 { params: { force: true } } + http.delete(`/api/admin/part-templates/${row.id}`).then(()=>{ + ElMessage.success('已隐藏(可通过后台强制删除彻底清理)') + load() + }).catch((err:any)=>{ + ElMessage.error(err?.message || '删除失败') + }) } onMounted(()=>{ loadCategories(); load() }) diff --git a/backend/data/attachments/2025/09/27/4ba1a56e751cbeaa8f650c6e537402996cb65e0fea2fd0a64a1333d39fc434d9.png b/backend/data/attachments/2025/09/27/4ba1a56e751cbeaa8f650c6e537402996cb65e0fea2fd0a64a1333d39fc434d9.png new file mode 100644 index 0000000..290fe75 Binary files /dev/null and b/backend/data/attachments/2025/09/27/4ba1a56e751cbeaa8f650c6e537402996cb65e0fea2fd0a64a1333d39fc434d9.png differ diff --git a/backend/data/attachments/2025/09/28/26f61f0b79f7f77c80ffb57b486b6816b553f54346fe822236700a3f78045e2d.jpg b/backend/data/attachments/2025/09/28/26f61f0b79f7f77c80ffb57b486b6816b553f54346fe822236700a3f78045e2d.jpg new file mode 100644 index 0000000..efa4026 Binary files /dev/null and b/backend/data/attachments/2025/09/28/26f61f0b79f7f77c80ffb57b486b6816b553f54346fe822236700a3f78045e2d.jpg differ diff --git a/backend/data/attachments/2025/09/28/6b56ceef792d34e297ba7d54b91e831096b508a27134ef10cc40e6efc52e3d23.png b/backend/data/attachments/2025/09/28/6b56ceef792d34e297ba7d54b91e831096b508a27134ef10cc40e6efc52e3d23.png new file mode 100644 index 0000000..d2ae2bb Binary files /dev/null and b/backend/data/attachments/2025/09/28/6b56ceef792d34e297ba7d54b91e831096b508a27134ef10cc40e6efc52e3d23.png differ diff --git a/backend/data/attachments/2025/09/29/4c6e1c35d3fb58f0e8b43e4268997f30d60e48e1b52a73652558ec7c148a6efc.jpg b/backend/data/attachments/2025/09/29/4c6e1c35d3fb58f0e8b43e4268997f30d60e48e1b52a73652558ec7c148a6efc.jpg new file mode 100644 index 0000000..bda6184 Binary files /dev/null and b/backend/data/attachments/2025/09/29/4c6e1c35d3fb58f0e8b43e4268997f30d60e48e1b52a73652558ec7c148a6efc.jpg differ diff --git a/backend/data/attachments/2025/09/29/ca1448006d639132cefeb485eecd7a72bac36c95b065892d1190b5d572d867f3.jpg b/backend/data/attachments/2025/09/29/ca1448006d639132cefeb485eecd7a72bac36c95b065892d1190b5d572d867f3.jpg new file mode 100644 index 0000000..2d80fb6 Binary files /dev/null and b/backend/data/attachments/2025/09/29/ca1448006d639132cefeb485eecd7a72bac36c95b065892d1190b5d572d867f3.jpg differ diff --git a/backend/db/db.sql b/backend/db/db.sql index 99bd796..333ecff 100644 --- a/backend/db/db.sql +++ b/backend/db/db.sql @@ -156,7 +156,7 @@ CREATE TABLE IF NOT EXISTS products ( user_id BIGINT UNSIGNED NOT NULL, name VARCHAR(120) NOT NULL, category_id BIGINT UNSIGNED NULL, - unit_id BIGINT UNSIGNED NOT NULL, + -- unit_id 已移除 brand VARCHAR(64) NULL, model VARCHAR(64) NULL, spec VARCHAR(128) NULL, @@ -175,12 +175,12 @@ CREATE TABLE IF NOT EXISTS products ( UNIQUE KEY ux_products_shop_barcode (shop_id, barcode), KEY idx_products_shop (shop_id), KEY idx_products_category (category_id), - KEY idx_products_unit (unit_id), + -- KEY idx_products_unit (unit_id), FULLTEXT KEY ft_products_search (name, brand, model, spec, search_text), CONSTRAINT fk_products_shop FOREIGN KEY (shop_id) REFERENCES shops(id), CONSTRAINT fk_products_user FOREIGN KEY (user_id) REFERENCES users(id), CONSTRAINT fk_products_category FOREIGN KEY (category_id) REFERENCES product_categories(id), - CONSTRAINT fk_products_unit FOREIGN KEY (unit_id) REFERENCES product_units(id), + -- CONSTRAINT fk_products_unit FOREIGN KEY (unit_id) REFERENCES product_units(id), CONSTRAINT fk_products_globalsku FOREIGN KEY (global_sku_id) REFERENCES global_skus(id), CONSTRAINT ck_products_safe_range CHECK (safe_min IS NULL OR safe_max IS NULL OR safe_min <= safe_max) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='商品'; diff --git a/backend/src/main/java/com/example/demo/admin/AdminDictController.java b/backend/src/main/java/com/example/demo/admin/AdminDictController.java index 42f5b71..ae0a5c0 100644 --- a/backend/src/main/java/com/example/demo/admin/AdminDictController.java +++ b/backend/src/main/java/com/example/demo/admin/AdminDictController.java @@ -71,11 +71,7 @@ public class AdminDictController { public ResponseEntity> deleteUnit(@PathVariable("id") Long id) { ProductUnit u = unitRepository.findById(id).orElse(null); if (u == null || !u.getShopId().equals(defaults.getDictShopId())) return ResponseEntity.status(404).body(Map.of("message","not found")); - // 引用保护:若有商品使用该单位,阻止删除 - Long cnt = jdbcTemplate.queryForObject("SELECT COUNT(*) FROM products WHERE unit_id=?", Long.class, id); - if (cnt != null && cnt > 0) { - return ResponseEntity.status(409).body(Map.of("message","存在引用,无法删除")); - } + // 按新方案:移除对 products.unit_id 的引用校验(该字段已移除) unitRepository.deleteById(id); return ResponseEntity.ok().build(); } @@ -121,12 +117,15 @@ public class AdminDictController { public ResponseEntity> deleteCategory(@PathVariable("id") Long id) { ProductCategory c = categoryRepository.findById(id).orElse(null); if (c == null || !c.getShopId().equals(defaults.getDictShopId())) return ResponseEntity.status(404).body(Map.of("message","not found")); - // 子类与引用保护 - Long child = jdbcTemplate.queryForObject("SELECT COUNT(*) FROM product_categories WHERE parent_id=?", Long.class, id); - if (child != null && child > 0) return ResponseEntity.status(409).body(Map.of("message","存在子类,无法删除")); - Long cnt = jdbcTemplate.queryForObject("SELECT COUNT(*) FROM products WHERE category_id=?", Long.class, id); - if (cnt != null && cnt > 0) return ResponseEntity.status(409).body(Map.of("message","存在引用,无法删除")); - categoryRepository.deleteById(id); + // 平台管理员二次确认可在拦截器或前端完成;此处执行软删级联 + // 1) 软删分类 + jdbcTemplate.update("UPDATE product_categories SET deleted_at=NOW(), updated_at=NOW() WHERE id=? AND deleted_at IS NULL", id); + // 2) 软删分类下模板(使用 deleted_at 统一标记) + jdbcTemplate.update("UPDATE part_templates SET deleted_at=NOW(), updated_at=NOW() WHERE category_id=? AND (deleted_at IS NULL)", id); + // 3) 软删该分类下的所有商品:包括通过模板创建的与直接挂分类的 + jdbcTemplate.update("UPDATE products SET deleted_at=NOW(), updated_at=NOW() WHERE (category_id=? OR template_id IN (SELECT id FROM part_templates WHERE category_id=?)) AND deleted_at IS NULL", id, id); + // 4) 软删该分类下的所有配件提交:包含直接指向分类的与指向该分类下模板的 + jdbcTemplate.update("UPDATE part_submissions SET deleted_at=NOW(), updated_at=NOW() WHERE (category_id=? OR template_id IN (SELECT id FROM part_templates WHERE category_id=?)) AND deleted_at IS NULL", id, id); return ResponseEntity.ok().build(); } } diff --git a/backend/src/main/java/com/example/demo/auth/EmailAuthService.java b/backend/src/main/java/com/example/demo/auth/EmailAuthService.java index 957ef07..35c8ab3 100644 --- a/backend/src/main/java/com/example/demo/auth/EmailAuthService.java +++ b/backend/src/main/java/com/example/demo/auth/EmailAuthService.java @@ -21,16 +21,20 @@ public class EmailAuthService { private final com.example.demo.common.ShopDefaultsProperties shopDefaults; private final EmailSenderService emailSender; + private final com.example.demo.common.DefaultSeedService defaultSeedService; + public EmailAuthService(JdbcTemplate jdbcTemplate, JwtService jwtService, JwtProperties jwtProps, com.example.demo.common.ShopDefaultsProperties shopDefaults, - EmailSenderService emailSender) { + EmailSenderService emailSender, + com.example.demo.common.DefaultSeedService defaultSeedService) { this.jdbcTemplate = jdbcTemplate; this.jwtService = jwtService; this.jwtProps = jwtProps; this.shopDefaults = shopDefaults; this.emailSender = emailSender; + this.defaultSeedService = defaultSeedService; } public static class SendCodeRequest { public String email; public String scene; } @@ -205,6 +209,9 @@ public class EmailAuthService { Number userGenId = userKey.getKey(); if (userGenId == null) throw new IllegalStateException("创建用户失败"); userId = userGenId.longValue(); + + // 初始化默认客户/供应商(幂等) + defaultSeedService.initializeForShop(shopId, userId); } String token = jwtService.signToken(userId, shopId, null, "email_otp", email); diff --git a/backend/src/main/java/com/example/demo/auth/NormalAdminApplyController.java b/backend/src/main/java/com/example/demo/auth/NormalAdminApplyController.java index e86d64e..2999ca5 100644 --- a/backend/src/main/java/com/example/demo/auth/NormalAdminApplyController.java +++ b/backend/src/main/java/com/example/demo/auth/NormalAdminApplyController.java @@ -6,6 +6,7 @@ import org.springframework.web.bind.annotation.*; import java.util.Map; import java.util.Objects; +import java.util.LinkedHashMap; @RestController @RequestMapping("/api/normal-admin") @@ -27,6 +28,11 @@ public class NormalAdminApplyController { } else { sidFinal = shopId; } // 校验 VIP(根据配置可选) boolean requireVip = true; // 默认要求VIP有效 + try { + String v = jdbc.query("SELECT value FROM system_parameters WHERE `key`='normalAdmin.requiredVipActive' ORDER BY id DESC LIMIT 1", + rs -> rs.next() ? rs.getString(1) : null); + if (v != null) { v = v.trim(); if (v.startsWith("\"") && v.endsWith("\"")) v = v.substring(1, v.length()-1); requireVip = ("true".equalsIgnoreCase(v) || "1".equals(v)); } + } catch (Exception ignored) {} Integer vipOk = jdbc.query( "SELECT CASE WHEN (is_vip=1 AND status=1 AND (expire_at IS NULL OR expire_at>NOW())) THEN 1 ELSE 0 END FROM vip_users WHERE user_id=? AND shop_id=? ORDER BY id DESC LIMIT 1", ps -> { ps.setLong(1, userId); ps.setLong(2, sidFinal); }, @@ -41,7 +47,12 @@ public class NormalAdminApplyController { ps -> { ps.setLong(1, sidFinal); ps.setLong(2, userId); ps.setString(3, "apply"); ps.setString(4, remark); }); // 是否自动通过 - boolean autoApprove = false; // 默认false,后续接入 system_parameters + boolean autoApprove = false; + try { + String v = jdbc.query("SELECT value FROM system_parameters WHERE `key`='normalAdmin.autoApprove' ORDER BY id DESC LIMIT 1", + rs -> rs.next() ? rs.getString(1) : null); + if (v != null) { v = v.trim(); if (v.startsWith("\"") && v.endsWith("\"")) v = v.substring(1, v.length()-1); autoApprove = ("true".equalsIgnoreCase(v) || "1".equals(v)); } + } catch (Exception ignored) {} if (autoApprove) { // 将角色变更为 normal_admin 并写入 approve 审计 String prev = jdbc.query("SELECT role FROM users WHERE id=?", ps -> ps.setLong(1, userId), rs -> rs.next()? rs.getString(1): null); @@ -52,6 +63,62 @@ public class NormalAdminApplyController { return ResponseEntity.ok(Map.of("ok", true)); } + + @GetMapping("/application/status") + public ResponseEntity> myApplicationStatus(@RequestHeader(name = "X-User-Id") long userId) { + try { + Map out = new LinkedHashMap<>(); + // 当前角色 + String role = null; + try { + role = jdbc.query("SELECT role FROM users WHERE id=? LIMIT 1", + ps -> ps.setLong(1, userId), rs -> rs.next() ? rs.getString(1) : null); + } catch (Exception ignored) {} + boolean isNormalAdmin = role != null && "normal_admin".equalsIgnoreCase(role.trim()); + + // 最近一次审计动作 + Map last = null; + try { + last = jdbc.query( + "SELECT action, created_at AS createdAt, remark FROM normal_admin_audits WHERE user_id=? ORDER BY created_at DESC LIMIT 1", + ps -> ps.setLong(1, userId), + rs -> { + if (!rs.next()) return null; + Map m = new LinkedHashMap<>(); + m.put("action", rs.getString("action")); + m.put("createdAt", rs.getTimestamp("createdAt")); + m.put("remark", rs.getString("remark")); + return m; + } + ); + } catch (Exception ignored) {} + + String applicationStatus = "none"; + if (isNormalAdmin) { + applicationStatus = "approved"; + } else if (last != null) { + String action = (String) last.get("action"); + if ("apply".equalsIgnoreCase(action)) applicationStatus = "pending"; + else if ("approve".equalsIgnoreCase(action)) applicationStatus = "approved"; + else if ("reject".equalsIgnoreCase(action)) applicationStatus = "rejected"; + else if ("revoke".equalsIgnoreCase(action)) applicationStatus = "revoked"; + } + + out.put("isNormalAdmin", isNormalAdmin); + out.put("applicationStatus", applicationStatus); + if (last != null) { + out.put("lastAction", last.get("action")); + out.put("lastActionAt", last.get("createdAt")); + out.put("lastRemark", last.get("remark")); + } + return ResponseEntity.ok(out); + } catch (Exception e) { + Map fallback = new LinkedHashMap<>(); + fallback.put("isNormalAdmin", false); + fallback.put("applicationStatus", "none"); + return ResponseEntity.ok(fallback); + } + } } diff --git a/backend/src/main/java/com/example/demo/auth/RegisterService.java b/backend/src/main/java/com/example/demo/auth/RegisterService.java index 16b8221..b1cf715 100644 --- a/backend/src/main/java/com/example/demo/auth/RegisterService.java +++ b/backend/src/main/java/com/example/demo/auth/RegisterService.java @@ -20,6 +20,7 @@ public class RegisterService { private final JwtProperties jwtProps; private final ShopDefaultsProperties shopDefaults; private AppDefaultsProperties appDefaults; + private com.example.demo.common.DefaultSeedService defaultSeedService; public RegisterService(JdbcTemplate jdbcTemplate, JwtService jwtService, @@ -36,6 +37,11 @@ public class RegisterService { this.appDefaults = appDefaults; } + @Autowired + public void setDefaultSeedService(com.example.demo.common.DefaultSeedService defaultSeedService) { + this.defaultSeedService = defaultSeedService; + } + private String hashPassword(String raw) { try { return org.springframework.security.crypto.bcrypt.BCrypt.hashpw(raw, org.springframework.security.crypto.bcrypt.BCrypt.gensalt(10)); @@ -108,6 +114,11 @@ public class RegisterService { // 3) 创建默认账户(现金/银行存款/微信) createDefaultAccounts(shopId, userId); + + // 4) 初始化默认客户/供应商(幂等) + if (defaultSeedService != null) { + defaultSeedService.initializeForShop(shopId, userId); + } } String token = jwtService.signToken(userId, shopId, phone, "register"); diff --git a/backend/src/main/java/com/example/demo/common/AppDefaultsProperties.java b/backend/src/main/java/com/example/demo/common/AppDefaultsProperties.java index 2c3a52f..402c50e 100644 --- a/backend/src/main/java/com/example/demo/common/AppDefaultsProperties.java +++ b/backend/src/main/java/com/example/demo/common/AppDefaultsProperties.java @@ -18,6 +18,10 @@ public class AppDefaultsProperties { private String accountWechatName = "微信"; private String accountAlipayName = "支付宝"; + // 默认往来单位名称(配置化,避免硬编码) + private String customerName = "散客"; + private String supplierName = "默认供应商"; + public Long getShopId() { return shopId; } public void setShopId(Long shopId) { this.shopId = shopId; } public Long getUserId() { return userId; } @@ -34,6 +38,12 @@ public class AppDefaultsProperties { public void setAccountWechatName(String accountWechatName) { this.accountWechatName = accountWechatName; } public String getAccountAlipayName() { return accountAlipayName; } public void setAccountAlipayName(String accountAlipayName) { this.accountAlipayName = accountAlipayName; } + + public String getCustomerName() { return customerName; } + public void setCustomerName(String customerName) { this.customerName = customerName; } + + public String getSupplierName() { return supplierName; } + public void setSupplierName(String supplierName) { this.supplierName = supplierName; } } diff --git a/backend/src/main/java/com/example/demo/common/DefaultSeedService.java b/backend/src/main/java/com/example/demo/common/DefaultSeedService.java new file mode 100644 index 0000000..f25264c --- /dev/null +++ b/backend/src/main/java/com/example/demo/common/DefaultSeedService.java @@ -0,0 +1,41 @@ +package com.example.demo.common; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +public class DefaultSeedService { + + private final JdbcTemplate jdbcTemplate; + private final AppDefaultsProperties appDefaults; + + public DefaultSeedService(JdbcTemplate jdbcTemplate, AppDefaultsProperties appDefaults) { + this.jdbcTemplate = jdbcTemplate; + this.appDefaults = appDefaults; + } + + /** + * 幂等初始化:为新店铺创建默认客户/供应商(若不存在)。 + */ + @Transactional + public void initializeForShop(Long shopId, Long userId) { + if (shopId == null || userId == null) return; + // 默认客户 + jdbcTemplate.update( + "INSERT INTO customers (shop_id,user_id,name,price_level,status,created_at,updated_at) " + + "SELECT ?, ?, ?, 'retail', 1, NOW(), NOW() FROM DUAL " + + "WHERE NOT EXISTS (SELECT 1 FROM customers WHERE shop_id=? AND name=?)", + shopId, userId, appDefaults.getCustomerName(), shopId, appDefaults.getCustomerName() + ); + // 默认供应商 + jdbcTemplate.update( + "INSERT INTO suppliers (shop_id,user_id,name,status,created_at,updated_at) " + + "SELECT ?, ?, ?, 1, NOW(), NOW() FROM DUAL " + + "WHERE NOT EXISTS (SELECT 1 FROM suppliers WHERE shop_id=? AND name=?)", + shopId, userId, appDefaults.getSupplierName(), shopId, appDefaults.getSupplierName() + ); + } +} + + diff --git a/backend/src/main/java/com/example/demo/common/NormalAdminAuthInterceptor.java b/backend/src/main/java/com/example/demo/common/NormalAdminAuthInterceptor.java index 3b080f5..de33398 100644 --- a/backend/src/main/java/com/example/demo/common/NormalAdminAuthInterceptor.java +++ b/backend/src/main/java/com/example/demo/common/NormalAdminAuthInterceptor.java @@ -59,7 +59,16 @@ public class NormalAdminAuthInterceptor implements HandlerInterceptor { } // 可选校验:VIP 有效 - boolean requireVip = Boolean.parseBoolean(String.valueOf(System.getenv().getOrDefault("NORMAL_ADMIN_REQUIRE_VIP_ACTIVE", "true"))); + boolean requireVip; + try { + String v = jdbcTemplate.query("SELECT value FROM system_parameters WHERE `key`='normalAdmin.requiredVipActive' ORDER BY id DESC LIMIT 1", + rs -> rs.next() ? rs.getString(1) : null); + if (v == null) requireVip = true; else { + v = v.trim(); + if (v.startsWith("\"") && v.endsWith("\"")) v = v.substring(1, v.length()-1); + requireVip = "true".equalsIgnoreCase(v) || "1".equals(v); + } + } catch (Exception e) { requireVip = true; } if (requireVip) { Integer vipOk = jdbcTemplate.query( "SELECT CASE WHEN (is_vip=1 AND status=1 AND (expire_at IS NULL OR expire_at>NOW())) THEN 1 ELSE 0 END FROM vip_users WHERE user_id=? AND shop_id=? ORDER BY id DESC LIMIT 1", diff --git a/backend/src/main/java/com/example/demo/common/WebConfig.java b/backend/src/main/java/com/example/demo/common/WebConfig.java index e6611ef..1ac2ad5 100644 --- a/backend/src/main/java/com/example/demo/common/WebConfig.java +++ b/backend/src/main/java/com/example/demo/common/WebConfig.java @@ -4,6 +4,7 @@ import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistration; import org.springframework.lang.NonNull; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration @@ -29,6 +30,19 @@ public class WebConfig implements WebMvcConfigurer { InterceptorRegistration nr = registry.addInterceptor(normalAdminAuthInterceptor); nr.addPathPatterns("/api/normal-admin/parts/**"); } + + @Override + public void addResourceHandlers(@NonNull ResourceHandlerRegistry registry) { + // 将 /static/** 映射到前端静态资源目录(开发时)与 classpath 静态目录(部署时) + String userDir = System.getProperty("user.dir"); + String frontendStatic = userDir + java.io.File.separator + "frontend" + java.io.File.separator + "static" + java.io.File.separator; + registry.addResourceHandler("/static/**") + .addResourceLocations( + "file:" + frontendStatic, + "classpath:/static/", + "classpath:/public/" + ); + } } diff --git a/backend/src/main/java/com/example/demo/order/OrderService.java b/backend/src/main/java/com/example/demo/order/OrderService.java index a3ad751..1bec6ff 100644 --- a/backend/src/main/java/com/example/demo/order/OrderService.java +++ b/backend/src/main/java/com/example/demo/order/OrderService.java @@ -27,14 +27,18 @@ public class OrderService { private final JdbcTemplate jdbcTemplate; private final ProductPriceRepository productPriceRepository; + private final com.example.demo.common.AppDefaultsProperties appDefaults; + public OrderService(InventoryRepository inventoryRepository, JdbcTemplate jdbcTemplate, AccountDefaultsProperties accountDefaults, - ProductPriceRepository productPriceRepository) { + ProductPriceRepository productPriceRepository, + com.example.demo.common.AppDefaultsProperties appDefaults) { this.inventoryRepository = inventoryRepository; this.jdbcTemplate = jdbcTemplate; this.accountDefaults = accountDefaults; this.productPriceRepository = productPriceRepository; + this.appDefaults = appDefaults; } @Transactional @@ -134,8 +138,12 @@ public class OrderService { "VALUES (?,?,?,?,'approved', ?, 0, ?, NOW(), NOW())"; } - Long customerId = req.customerId; - Long supplierId = req.supplierId; + final Long customerId = (isSalesHead && req.customerId == null) + ? resolveOrCreateDefaultCustomer(shopId, userId) + : req.customerId; + final Long supplierId = (isPurchaseHead && req.supplierId == null) + ? resolveOrCreateDefaultSupplier(shopId, userId) + : req.supplierId; jdbcTemplate.update(con -> { java.sql.PreparedStatement ps = con.prepareStatement(headSql, new String[]{"id"}); int idx = 1; @@ -188,6 +196,28 @@ public class OrderService { return new OrderDtos.CreateOrderResponse(orderId, orderNo); } + private Long resolveOrCreateDefaultCustomer(Long shopId, Long userId) { + String name = appDefaults.getCustomerName(); + java.util.List ids = jdbcTemplate.query("SELECT id FROM customers WHERE shop_id=? AND name=? LIMIT 1", (rs,rn)->rs.getLong(1), shopId, name); + if (!ids.isEmpty()) return ids.get(0); + jdbcTemplate.update("INSERT INTO customers (shop_id,user_id,name,price_level,status,created_at,updated_at) VALUES (?,?,?,'retail',1,NOW(),NOW())", + shopId, userId, name); + ids = jdbcTemplate.query("SELECT id FROM customers WHERE shop_id=? AND name=? LIMIT 1", (rs,rn)->rs.getLong(1), shopId, name); + if (!ids.isEmpty()) return ids.get(0); + throw new IllegalStateException("默认客户创建失败"); + } + + private Long resolveOrCreateDefaultSupplier(Long shopId, Long userId) { + String name = appDefaults.getSupplierName(); + java.util.List ids = jdbcTemplate.query("SELECT id FROM suppliers WHERE shop_id=? AND name=? LIMIT 1", (rs,rn)->rs.getLong(1), shopId, name); + if (!ids.isEmpty()) return ids.get(0); + jdbcTemplate.update("INSERT INTO suppliers (shop_id,user_id,name,status,created_at,updated_at) VALUES (?,?,?,1,NOW(),NOW())", + shopId, userId, name); + ids = jdbcTemplate.query("SELECT id FROM suppliers WHERE shop_id=? AND name=? LIMIT 1", (rs,rn)->rs.getLong(1), shopId, name); + if (!ids.isEmpty()) return ids.get(0); + throw new IllegalStateException("默认供应商创建失败"); + } + private BigDecimal resolveProductCostPrice(Long productId, Long shopId) { return productPriceRepository.findById(productId) .filter(price -> price.getShopId().equals(shopId)) diff --git a/backend/src/main/java/com/example/demo/product/controller/MetadataController.java b/backend/src/main/java/com/example/demo/product/controller/MetadataController.java index 3934c70..f877ea2 100644 --- a/backend/src/main/java/com/example/demo/product/controller/MetadataController.java +++ b/backend/src/main/java/com/example/demo/product/controller/MetadataController.java @@ -49,11 +49,14 @@ public class MetadataController { @GetMapping("/api/product-templates") public ResponseEntity> listTemplates(@RequestParam(name = "categoryId", required = false) Long categoryId) { Map body = new HashMap<>(); + // 排除已软删模板;仍要求 status=1 才可见 java.util.List list = - categoryId == null ? templateRepository.findByStatusOrderByIdDesc(1) - : templateRepository.findByStatusAndCategoryIdOrderByIdDesc(1, categoryId); + (categoryId == null) + ? templateRepository.findByStatusOrderByIdDesc(1) + : templateRepository.findByStatusAndCategoryIdOrderByIdDesc(1, categoryId); java.util.List> out = new java.util.ArrayList<>(); for (com.example.demo.product.entity.PartTemplate t : list) { + try { if (t.getDeletedAt() != null) continue; } catch (Exception ignore) {} java.util.Map m = new java.util.HashMap<>(); m.put("id", t.getId()); m.put("categoryId", t.getCategoryId()); diff --git a/backend/src/main/java/com/example/demo/product/controller/NormalAdminSubmissionController.java b/backend/src/main/java/com/example/demo/product/controller/NormalAdminSubmissionController.java index 74c95b1..fc396c4 100644 --- a/backend/src/main/java/com/example/demo/product/controller/NormalAdminSubmissionController.java +++ b/backend/src/main/java/com/example/demo/product/controller/NormalAdminSubmissionController.java @@ -1,7 +1,9 @@ package com.example.demo.product.controller; import com.example.demo.product.service.ProductSubmissionService; +import jakarta.servlet.http.HttpServletResponse; import org.springframework.http.ResponseEntity; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.web.bind.annotation.*; @RestController @@ -9,19 +11,28 @@ import org.springframework.web.bind.annotation.*; public class NormalAdminSubmissionController { private final ProductSubmissionService submissionService; + private final JdbcTemplate jdbc; - public NormalAdminSubmissionController(ProductSubmissionService submissionService) { + public NormalAdminSubmissionController(ProductSubmissionService submissionService, + JdbcTemplate jdbc) { this.submissionService = submissionService; + this.jdbc = jdbc; } - // 代理现有管理端接口,但不暴露跨店查询参数,实际范围由拦截器限定 + private Long findShopIdByUser(Long userId) { + if (userId == null) return null; + return jdbc.query("SELECT shop_id FROM users WHERE id=?", ps -> ps.setLong(1, userId), rs -> rs.next()? rs.getLong(1): null); + } + + // 代理现有管理端接口,但范围限定为当前用户所属店铺 @GetMapping("/submissions") - public ResponseEntity> list(@RequestParam(name = "status", required = false) String status, + public ResponseEntity> list(@RequestHeader(name = "X-User-Id", required = false) Long userId, + @RequestParam(name = "status", required = false) String status, @RequestParam(name = "kw", required = false) String kw, @RequestParam(name = "page", defaultValue = "1") int page, @RequestParam(name = "size", defaultValue = "20") int size) { - // 普通管理端不允许跨店过滤,reviewer/shopId 均不提供 - return ResponseEntity.ok(submissionService.listAdmin(status, kw, null, null, null, null, page, size)); + Long shopId = findShopIdByUser(userId); + return ResponseEntity.ok(submissionService.listAdmin(status, kw, shopId, null, null, null, page, size)); } @GetMapping("/submissions/{id}") @@ -42,7 +53,6 @@ public class NormalAdminSubmissionController { public ResponseEntity> approve(@PathVariable("id") Long id, @RequestHeader(name = "X-User-Id", required = false) Long userId, @RequestBody(required = false) com.example.demo.product.dto.ProductSubmissionDtos.ApproveRequest req) { - // 这里将 X-User-Id 作为审批人记录(普通管理员为用户表) var resp = submissionService.approve(id, userId, req); return ResponseEntity.ok(resp); } @@ -54,6 +64,15 @@ public class NormalAdminSubmissionController { submissionService.reject(id, userId, req); return ResponseEntity.ok(java.util.Map.of("ok", true)); } + + @GetMapping("/submissions/export") + public void export(@RequestHeader(name = "X-User-Id", required = false) Long userId, + @RequestParam(name = "status", required = false) String status, + @RequestParam(name = "kw", required = false) String kw, + HttpServletResponse response) { + Long shopId = findShopIdByUser(userId); + submissionService.export(status, kw, shopId, null, null, null, response); + } } diff --git a/backend/src/main/java/com/example/demo/product/controller/PartTemplateController.java b/backend/src/main/java/com/example/demo/product/controller/PartTemplateController.java index 360c728..ef1bf47 100644 --- a/backend/src/main/java/com/example/demo/product/controller/PartTemplateController.java +++ b/backend/src/main/java/com/example/demo/product/controller/PartTemplateController.java @@ -38,6 +38,15 @@ public class PartTemplateController { public ResponseEntity> list() { return ResponseEntity.ok(templateService.list()); } + + @DeleteMapping("/{id}") + public ResponseEntity> delete(@PathVariable("id") Long id, + @RequestParam(value = "force", required = false) Boolean force) { + templateService.delete(id, Boolean.TRUE.equals(force)); + return ResponseEntity.ok(java.util.Map.of("ok", true)); + } + + // 分类级联软删将在 AdminDictController 中触发;此处保持模板单体删除逻辑 } diff --git a/backend/src/main/java/com/example/demo/product/controller/ProductController.java b/backend/src/main/java/com/example/demo/product/controller/ProductController.java index c03952b..698759b 100644 --- a/backend/src/main/java/com/example/demo/product/controller/ProductController.java +++ b/backend/src/main/java/com/example/demo/product/controller/ProductController.java @@ -23,18 +23,29 @@ public class ProductController { public ResponseEntity> search(@RequestHeader(name = "X-Shop-Id", required = false) Long shopId, @RequestParam(name = "kw", required = false) String kw, @RequestParam(name = "categoryId", required = false) Long categoryId, + @RequestParam(name = "templateId", required = false) Long templateId, + @RequestParam java.util.Map requestParams, @RequestParam(name = "page", defaultValue = "1") int page, @RequestParam(name = "size", defaultValue = "50") int size) { Long sid = (shopId == null ? defaults.getShopId() : shopId); - Page result = productService.search(sid, kw, categoryId, Math.max(page - 1, 0), size); + java.util.Map paramFilters = new java.util.HashMap<>(); + for (java.util.Map.Entry e : requestParams.entrySet()) { + String k = e.getKey(); + if (k != null && k.startsWith("param_") && e.getValue() != null && !e.getValue().isBlank()) { + String key = k.substring(6); + if (!key.isBlank()) paramFilters.put(key, e.getValue()); + } + } + Page result = productService.search(sid, kw, categoryId, templateId, paramFilters, Math.max(page - 1, 0), size); java.util.Map body = new java.util.HashMap<>(); body.put("list", result.getContent()); return ResponseEntity.ok(body); } @GetMapping("/{id}") - public ResponseEntity> detail(@PathVariable("id") Long id) { - return productService.findDetail(id) + public ResponseEntity> detail(@PathVariable("id") Long id, + @RequestParam(name = "includeDeleted", required = false, defaultValue = "false") boolean includeDeleted) { + return productService.findDetail(id, includeDeleted) .>map(ResponseEntity::ok) .orElseGet(() -> ResponseEntity.notFound().build()); } @@ -61,6 +72,15 @@ public class ProductController { productService.update(id, sid, uid, req); return ResponseEntity.ok().build(); } + + @DeleteMapping("/{id}") + public ResponseEntity> delete(@PathVariable("id") Long id, + @RequestHeader(name = "X-Shop-Id", required = false) Long shopId, + @RequestHeader(name = "X-User-Id", required = false) Long userId) { + Long sid = (shopId == null ? defaults.getShopId() : shopId); + productService.delete(id, sid); + return ResponseEntity.ok().build(); + } } diff --git a/backend/src/main/java/com/example/demo/product/dto/ProductDtos.java b/backend/src/main/java/com/example/demo/product/dto/ProductDtos.java index 1e2d4cb..13943b6 100644 --- a/backend/src/main/java/com/example/demo/product/dto/ProductDtos.java +++ b/backend/src/main/java/com/example/demo/product/dto/ProductDtos.java @@ -15,6 +15,7 @@ public class ProductDtos { public BigDecimal stock; // from inventories.quantity public BigDecimal retailPrice; // from product_prices public String cover; // first image url + public Boolean deleted; // derived from deleted_at } public static class ProductDetail { @@ -26,7 +27,8 @@ public class ProductDtos { public String spec; public String origin; public Long categoryId; - public Long unitId; + // 单位字段已移除 + public Long templateId; public BigDecimal safeMin; public BigDecimal safeMax; public BigDecimal stock; @@ -35,6 +37,10 @@ public class ProductDtos { public BigDecimal wholesalePrice; public BigDecimal bigClientPrice; public List images; + public Map parameters; + public Long sourceSubmissionId; + public String externalCode; + public Boolean deleted; } public static class Image { diff --git a/backend/src/main/java/com/example/demo/product/dto/ProductSubmissionDtos.java b/backend/src/main/java/com/example/demo/product/dto/ProductSubmissionDtos.java index 2776496..7a923bc 100644 --- a/backend/src/main/java/com/example/demo/product/dto/ProductSubmissionDtos.java +++ b/backend/src/main/java/com/example/demo/product/dto/ProductSubmissionDtos.java @@ -8,12 +8,13 @@ public class ProductSubmissionDtos { public static class CreateRequest { public Long templateId; + public String externalCode; // 外部编号 public String name; public String model; public String brand; public String spec; public String origin; - public Long unitId; + // 单位字段已移除 public Long categoryId; public Map parameters; public List images; @@ -25,11 +26,12 @@ public class ProductSubmissionDtos { public static class UpdateRequest { public Long templateId; + public String externalCode; // 外部编号 public String name; public String brand; public String spec; public String origin; - public Long unitId; + // 单位字段已移除 public Long categoryId; public Map parameters; public List images; @@ -72,12 +74,13 @@ public class ProductSubmissionDtos { public Long shopId; public Long userId; public Long templateId; + public String externalCode; public String name; public String model; public String brand; public String spec; public String origin; - public Long unitId; + // 单位字段已移除 public Long categoryId; public Map parameters; public List images; diff --git a/backend/src/main/java/com/example/demo/product/entity/PartTemplate.java b/backend/src/main/java/com/example/demo/product/entity/PartTemplate.java index 568743b..399cba0 100644 --- a/backend/src/main/java/com/example/demo/product/entity/PartTemplate.java +++ b/backend/src/main/java/com/example/demo/product/entity/PartTemplate.java @@ -32,6 +32,9 @@ public class PartTemplate { @Column(name = "updated_at") private LocalDateTime updatedAt; + @Column(name = "deleted_at") + private LocalDateTime deletedAt; + public Long getId() { return id; } public Long getCategoryId() { return categoryId; } public void setCategoryId(Long categoryId) { this.categoryId = categoryId; } @@ -47,6 +50,8 @@ public class PartTemplate { public void setCreatedAt(LocalDateTime createdAt) { this.createdAt = createdAt; } public LocalDateTime getUpdatedAt() { return updatedAt; } public void setUpdatedAt(LocalDateTime updatedAt) { this.updatedAt = updatedAt; } + public LocalDateTime getDeletedAt() { return deletedAt; } + public void setDeletedAt(LocalDateTime deletedAt) { this.deletedAt = deletedAt; } } diff --git a/backend/src/main/java/com/example/demo/product/entity/Product.java b/backend/src/main/java/com/example/demo/product/entity/Product.java index 881ece1..343fc69 100644 --- a/backend/src/main/java/com/example/demo/product/entity/Product.java +++ b/backend/src/main/java/com/example/demo/product/entity/Product.java @@ -24,9 +24,6 @@ public class Product { @Column(name = "category_id") private Long categoryId; - @Column(name = "unit_id", nullable = false) - private Long unitId; - @Column(name = "template_id") private Long templateId; @@ -84,8 +81,6 @@ public class Product { public void setName(String name) { this.name = name; } public Long getCategoryId() { return categoryId; } public void setCategoryId(Long categoryId) { this.categoryId = categoryId; } - public Long getUnitId() { return unitId; } - public void setUnitId(Long unitId) { this.unitId = unitId; } public Long getTemplateId() { return templateId; } public void setTemplateId(Long templateId) { this.templateId = templateId; } public String getBrand() { return brand; } diff --git a/backend/src/main/java/com/example/demo/product/repo/PartTemplateRepository.java b/backend/src/main/java/com/example/demo/product/repo/PartTemplateRepository.java index 3514e96..3fe6ef8 100644 --- a/backend/src/main/java/com/example/demo/product/repo/PartTemplateRepository.java +++ b/backend/src/main/java/com/example/demo/product/repo/PartTemplateRepository.java @@ -6,6 +6,7 @@ import org.springframework.data.jpa.repository.JpaRepository; public interface PartTemplateRepository extends JpaRepository { java.util.List findByStatusOrderByIdDesc(Integer status); java.util.List findByStatusAndCategoryIdOrderByIdDesc(Integer status, Long categoryId); + java.util.List findByDeletedAtIsNullOrderByIdDesc(); } diff --git a/backend/src/main/java/com/example/demo/product/repo/ProductRepository.java b/backend/src/main/java/com/example/demo/product/repo/ProductRepository.java index f978098..8909908 100644 --- a/backend/src/main/java/com/example/demo/product/repo/ProductRepository.java +++ b/backend/src/main/java/com/example/demo/product/repo/ProductRepository.java @@ -11,10 +11,11 @@ public interface ProductRepository extends JpaRepository { @Query("SELECT p FROM Product p WHERE p.shopId = :shopId AND (p.deletedAt IS NULL) AND " + "(:kw IS NULL OR :kw = '' OR p.name LIKE CONCAT('%', :kw, '%') OR p.brand LIKE CONCAT('%', :kw, '%') OR p.model LIKE CONCAT('%', :kw, '%') OR p.spec LIKE CONCAT('%', :kw, '%') OR p.barcode LIKE CONCAT('%', :kw, '%')) AND " + - "(:categoryId IS NULL OR p.categoryId = :categoryId) ORDER BY p.id DESC") + "(:categoryId IS NULL OR p.categoryId = :categoryId) AND (:templateId IS NULL OR p.templateId = :templateId) ORDER BY p.id DESC") Page search(@Param("shopId") Long shopId, @Param("kw") String kw, @Param("categoryId") Long categoryId, + @Param("templateId") Long templateId, Pageable pageable); boolean existsByShopIdAndBarcode(Long shopId, String barcode); diff --git a/backend/src/main/java/com/example/demo/product/repo/ProductSubmissionRepository.java b/backend/src/main/java/com/example/demo/product/repo/ProductSubmissionRepository.java index 70f10e4..e48c861 100644 --- a/backend/src/main/java/com/example/demo/product/repo/ProductSubmissionRepository.java +++ b/backend/src/main/java/com/example/demo/product/repo/ProductSubmissionRepository.java @@ -14,7 +14,9 @@ public interface ProductSubmissionRepository extends JpaRepository findByShopIdAndUserIdAndStatusIn(Long shopId, Long userId, List statuses, Pageable pageable); - @Query("SELECT ps FROM ProductSubmission ps WHERE (:statusList IS NULL OR ps.status IN :statusList) " + + Page findByShopIdAndUserIdAndStatusInAndDeletedAtIsNull(Long shopId, Long userId, List statuses, Pageable pageable); + + @Query("SELECT ps FROM ProductSubmission ps WHERE ps.deletedAt IS NULL AND (:statusList IS NULL OR ps.status IN :statusList) " + "AND (:kw IS NULL OR ps.modelUnique LIKE :kw OR ps.name LIKE :kw OR ps.brand LIKE :kw) " + "AND (:shopId IS NULL OR ps.shopId = :shopId) " + "AND (:reviewerId IS NULL OR ps.reviewerId = :reviewerId) " + diff --git a/backend/src/main/java/com/example/demo/product/service/PartTemplateService.java b/backend/src/main/java/com/example/demo/product/service/PartTemplateService.java index 76d68cc..e824e9c 100644 --- a/backend/src/main/java/com/example/demo/product/service/PartTemplateService.java +++ b/backend/src/main/java/com/example/demo/product/service/PartTemplateService.java @@ -64,6 +64,15 @@ public class PartTemplateService { if (req.modelRule != null) t.setModelRule(req.modelRule); if (req.status != null) t.setStatus(req.status); t.setUpdatedAt(LocalDateTime.now()); + try { + // 若模板已被软删,不允许通过 update 将其“启用”,需运维恢复 + java.lang.reflect.Field f = t.getClass().getDeclaredField("deletedAt"); + f.setAccessible(true); + Object v = f.get(t); + if (v != null && (req.status != null && req.status == 1)) { + throw new IllegalStateException("模板已删除,无法启用。请联系平台管理员"); + } + } catch (NoSuchFieldException ignore) { } catch (IllegalAccessException ignore) { } templateRepository.save(t); if (req.params != null) { @@ -117,6 +126,32 @@ public class PartTemplateService { return out; } + @Transactional + public void delete(Long id, boolean force) { + if (!force) { + // 软删除:隐藏模板并级联软删该模板下商品 + PartTemplate t = templateRepository.findById(id).orElseThrow(); + t.setStatus(0); + t.setUpdatedAt(LocalDateTime.now()); + // 统一软删标记:写入 deleted_at + try { jdbcTemplate.update("UPDATE part_templates SET deleted_at=NOW() WHERE id=? AND deleted_at IS NULL", id); } catch (Exception ignore) {} + templateRepository.save(t); + // 级联软删商品与配件提交 + jdbcTemplate.update("UPDATE products SET deleted_at=NOW() WHERE template_id=? AND deleted_at IS NULL", id); + jdbcTemplate.update("UPDATE part_submissions SET deleted_at=NOW() WHERE template_id=? AND deleted_at IS NULL", id); + return; + } + + // 永久删除:删除参数与模板,并清理关联数据 + paramRepository.findByTemplateIdOrderBySortOrderAscIdAsc(id).forEach(p -> paramRepository.deleteById(p.getId())); + jdbcTemplate.update("UPDATE products SET deleted_at=NOW() WHERE template_id=? AND deleted_at IS NULL", id); + jdbcTemplate.update("DELETE FROM product_images WHERE product_id IN (SELECT id FROM products WHERE template_id=? )", id); + jdbcTemplate.update("DELETE FROM product_prices WHERE product_id IN (SELECT id FROM products WHERE template_id=? )", id); + jdbcTemplate.update("DELETE FROM inventories WHERE product_id IN (SELECT id FROM products WHERE template_id=? )", id); + jdbcTemplate.update("UPDATE part_submissions SET deleted_at=NOW() WHERE template_id=? AND deleted_at IS NULL", id); + templateRepository.deleteById(id); + } + private void upsertParams(Long templateId, List params, LocalDateTime now) { if (params == null) return; int idx = 0; diff --git a/backend/src/main/java/com/example/demo/product/service/ProductService.java b/backend/src/main/java/com/example/demo/product/service/ProductService.java index bf5625f..1948fdb 100644 --- a/backend/src/main/java/com/example/demo/product/service/ProductService.java +++ b/backend/src/main/java/com/example/demo/product/service/ProductService.java @@ -96,10 +96,7 @@ public class ProductService { product.setCategoryId(submission.getCategoryId()); changed = true; } - if (submission.getUnitId() != null && !submission.getUnitId().equals(product.getUnitId())) { - product.setUnitId(submission.getUnitId()); - changed = true; - } + // 单位字段已移除 if (submission.getRemarkText() != null && !submission.getRemarkText().isBlank()) { product.setDescription(submission.getRemarkText()); changed = true; @@ -137,58 +134,55 @@ public class ProductService { syncImages(submission.getUserId(), productId, product.getShopId(), images); } - public Page search(Long shopId, String kw, Long categoryId, int page, int size) { - try { - Page p = productRepository.search(shopId, kw, categoryId, PageRequest.of(page, size)); - return p.map(prod -> { - ProductDtos.ProductListItem it = new ProductDtos.ProductListItem(); - it.id = prod.getId(); - it.name = prod.getName(); - it.brand = prod.getBrand(); - it.model = prod.getModel(); - it.spec = prod.getSpec(); - inventoryRepository.findById(prod.getId()).ifPresent(inv -> it.stock = inv.getQuantity()); - priceRepository.findById(prod.getId()).ifPresent(pr -> it.retailPrice = pr.getRetailPrice()); - List imgs = imageRepository.findByProductIdOrderBySortOrderAscIdAsc(prod.getId()); - it.cover = imgs.isEmpty() ? null : imgs.get(0).getUrl(); - return it; - }); - } catch (Exception e) { - // 安全回退为 JDBC 查询,保障功能可用 - StringBuilder sql = new StringBuilder("SELECT p.id,p.name,p.brand,p.model,p.spec,\n" + - "(SELECT i.quantity FROM inventories i WHERE i.product_id=p.id) AS stock,\n" + - "(SELECT pr.retail_price FROM product_prices pr WHERE pr.product_id=p.id) AS retail_price,\n" + - "(SELECT img.url FROM product_images img WHERE img.product_id=p.id ORDER BY img.sort_order, img.id LIMIT 1) AS cover\n" + - "FROM products p WHERE p.shop_id=? AND p.deleted_at IS NULL"); - List ps = new ArrayList<>(); - ps.add(shopId); - if (kw != null && !kw.isBlank()) { sql.append(" AND (p.name LIKE ? OR p.brand LIKE ? OR p.model LIKE ? OR p.spec LIKE ? OR p.barcode LIKE ?)"); - String like = "%" + kw + "%"; ps.add(like); ps.add(like); ps.add(like); ps.add(like); ps.add(like); } - if (categoryId != null) { sql.append(" AND p.category_id=?"); ps.add(categoryId); } - sql.append(" ORDER BY p.id DESC LIMIT ? OFFSET ?"); - ps.add(size); ps.add(page * size); - List list = jdbcTemplate.query(sql.toString(), (rs,rn) -> { - ProductDtos.ProductListItem it = new ProductDtos.ProductListItem(); - it.id = rs.getLong("id"); - it.name = rs.getString("name"); - it.brand = rs.getString("brand"); - it.model = rs.getString("model"); - it.spec = rs.getString("spec"); - java.math.BigDecimal st = (java.math.BigDecimal) rs.getObject("stock"); - it.stock = st; - java.math.BigDecimal rp = (java.math.BigDecimal) rs.getObject("retail_price"); - it.retailPrice = rp; - it.cover = rs.getString("cover"); - return it; - }, ps.toArray()); - return new PageImpl<>(list, PageRequest.of(page, size), list.size()); + public Page search(Long shopId, String kw, Long categoryId, Long templateId, java.util.Map paramFilters, int page, int size) { + // 直接使用 JDBC 支持 JSON_EXTRACT 过滤(MySQL) + StringBuilder sql = new StringBuilder("SELECT p.id,p.name,p.brand,p.model,p.spec,\n" + + "(SELECT i.quantity FROM inventories i WHERE i.product_id=p.id) AS stock,\n" + + "(SELECT pr.retail_price FROM product_prices pr WHERE pr.product_id=p.id) AS retail_price,\n" + + "(SELECT img.url FROM product_images img WHERE img.product_id=p.id ORDER BY img.sort_order, img.id LIMIT 1) AS cover,\n" + + "(p.deleted_at IS NOT NULL) AS deleted\n" + + "FROM products p WHERE p.shop_id=? AND p.deleted_at IS NULL"); + List ps = new ArrayList<>(); + ps.add(shopId); + if (kw != null && !kw.isBlank()) { sql.append(" AND (p.name LIKE ? OR p.brand LIKE ? OR p.model LIKE ? OR p.spec LIKE ? OR p.barcode LIKE ?)"); + String like = "%" + kw + "%"; ps.add(like); ps.add(like); ps.add(like); ps.add(like); ps.add(like); } + if (categoryId != null) { sql.append(" AND p.category_id=?"); ps.add(categoryId); } + if (templateId != null) { sql.append(" AND p.template_id=?"); ps.add(templateId); } + if (paramFilters != null && !paramFilters.isEmpty()) { + for (java.util.Map.Entry ent : paramFilters.entrySet()) { + String key = ent.getKey(); String val = ent.getValue(); + if (key == null || key.isBlank() || val == null || val.isBlank()) continue; + // 精确匹配参数值:将 JSON 值解包后与入参做等值比较,避免 LIKE 导致的误匹配 + sql.append(" AND JSON_UNQUOTE(JSON_EXTRACT(p.attributes_json, ?)) = ?"); + ps.add("$." + key); + ps.add(val.trim()); + } } + sql.append(" ORDER BY p.id DESC LIMIT ? OFFSET ?"); + ps.add(size); ps.add(page * size); + List list = jdbcTemplate.query(sql.toString(), (rs,rn) -> { + ProductDtos.ProductListItem it = new ProductDtos.ProductListItem(); + it.id = rs.getLong("id"); + it.name = rs.getString("name"); + it.brand = rs.getString("brand"); + it.model = rs.getString("model"); + it.spec = rs.getString("spec"); + java.math.BigDecimal st = (java.math.BigDecimal) rs.getObject("stock"); + it.stock = st; + java.math.BigDecimal rp = (java.math.BigDecimal) rs.getObject("retail_price"); + it.retailPrice = rp; + it.cover = rs.getString("cover"); + it.deleted = rs.getBoolean("deleted"); + return it; + }, ps.toArray()); + return new PageImpl<>(list, PageRequest.of(page, size), list.size()); } - public Optional findDetail(Long id) { + public Optional findDetail(Long id, boolean includeDeleted) { Optional op = productRepository.findById(id); if (op.isEmpty()) return Optional.empty(); Product p = op.get(); + if (p.getDeletedAt() != null && !includeDeleted) return Optional.empty(); ProductDtos.ProductDetail d = new ProductDtos.ProductDetail(); d.id = p.getId(); d.name = p.getName(); @@ -198,7 +192,7 @@ public class ProductService { d.spec = p.getSpec(); d.origin = p.getOrigin(); d.categoryId = p.getCategoryId(); - d.unitId = p.getUnitId(); + d.templateId = p.getTemplateId(); d.safeMin = p.getSafeMin(); d.safeMax = p.getSafeMax(); inventoryRepository.findById(p.getId()).ifPresent(inv -> d.stock = inv.getQuantity()); @@ -216,6 +210,11 @@ public class ProductService { list.add(i); } d.images = list; + d.parameters = JsonUtils.fromJson(p.getAttributesJson(), new com.fasterxml.jackson.core.type.TypeReference>() {}); + d.sourceSubmissionId = p.getSourceSubmissionId(); + // deleted 标志供前端展示 + d.deleted = (p.getDeletedAt() != null); + // externalCode 来自 submission,若来源存在可透传(此处留空,由前端兼容) return Optional.of(d); } @@ -235,7 +234,7 @@ public class ProductService { p.setSpec(emptyToNull(req.spec)); p.setOrigin(emptyToNull(req.origin)); p.setCategoryId(req.categoryId); - p.setUnitId(req.unitId); + // 单位字段已移除 p.setDedupeKey(emptyToNull(req.dedupeKey)); p.setSafeMin(req.safeMin); p.setSafeMax(req.safeMax); @@ -290,7 +289,7 @@ public class ProductService { p.setSpec(emptyToNull(req.spec)); p.setOrigin(emptyToNull(req.origin)); p.setCategoryId(req.categoryId); - p.setUnitId(req.unitId); + // 单位字段已移除 p.setDedupeKey(emptyToNull(req.dedupeKey)); p.setSafeMin(req.safeMin); p.setSafeMax(req.safeMax); @@ -306,7 +305,7 @@ public class ProductService { private void validate(Long shopId, ProductDtos.CreateOrUpdateProductRequest req) { if (req.name == null || req.name.isBlank()) throw new IllegalArgumentException("name必填"); - if (req.unitId == null) throw new IllegalArgumentException("unitId必填"); + // 不再要求 unitId if (req.safeMin != null && req.safeMax != null) { if (req.safeMin.compareTo(req.safeMax) > 0) throw new IllegalArgumentException("安全库存区间不合法"); } @@ -360,6 +359,16 @@ public class ProductService { private static T nvl(T v, T def) { return v != null ? v : def; } private static String emptyToNull(String s) { return (s == null || s.isBlank()) ? null : s; } + + @Transactional + public void delete(Long id, Long shopId) { + Product p = productRepository.findById(id).orElse(null); + if (p == null) return; + if (!p.getShopId().equals(shopId)) throw new IllegalArgumentException("跨店铺数据"); + p.setDeletedAt(LocalDateTime.now()); + productRepository.save(p); + // 关联数据:价格/库存采用 ON DELETE CASCADE 不触发;软删仅标记主表 + } } diff --git a/backend/src/main/java/com/example/demo/product/service/ProductSubmissionService.java b/backend/src/main/java/com/example/demo/product/service/ProductSubmissionService.java index 47b2349..67ca6b5 100644 --- a/backend/src/main/java/com/example/demo/product/service/ProductSubmissionService.java +++ b/backend/src/main/java/com/example/demo/product/service/ProductSubmissionService.java @@ -14,6 +14,7 @@ import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Sort; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -43,15 +44,18 @@ public class ProductSubmissionService { private final ProductService productService; private final PartTemplateParamRepository templateParamRepository; private final AppDefaultsProperties defaults; + private final JdbcTemplate jdbcTemplate; public ProductSubmissionService(ProductSubmissionRepository submissionRepository, ProductService productService, AppDefaultsProperties defaults, - PartTemplateParamRepository templateParamRepository) { + PartTemplateParamRepository templateParamRepository, + JdbcTemplate jdbcTemplate) { this.submissionRepository = submissionRepository; this.productService = productService; this.defaults = defaults; this.templateParamRepository = templateParamRepository; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -61,12 +65,13 @@ public class ProductSubmissionService { submission.setShopId(shopId); submission.setUserId(userId); submission.setTemplateId(req.templateId); + if (req.externalCode != null && !req.externalCode.isBlank()) submission.setExternalCode(req.externalCode.trim()); submission.setName(req.name); submission.setModelUnique(normalizeModel(req.model)); submission.setBrand(req.brand); submission.setSpec(req.spec); submission.setOrigin(req.origin); - submission.setUnitId(req.unitId); + // 单位字段已移除 submission.setCategoryId(req.categoryId); submission.setAttributesJson(JsonUtils.toJson(req.parameters)); submission.setImagesJson(JsonUtils.toJson(req.images)); @@ -84,7 +89,7 @@ public class ProductSubmissionService { public ProductSubmissionDtos.PageResult listMine(Long shopId, Long userId, String status, int page, int size) { String normalizedStatus = (status == null || status.isBlank() || "undefined".equalsIgnoreCase(status)) ? null : status; - Page result = submissionRepository.findByShopIdAndUserIdAndStatusIn( + Page result = submissionRepository.findByShopIdAndUserIdAndStatusInAndDeletedAtIsNull( shopId, userId, resolveStatuses(normalizedStatus), PageRequest.of(Math.max(page - 1, 0), size, Sort.by(Sort.Direction.DESC, "createdAt"))); return toPageResult(result); } @@ -109,6 +114,26 @@ public class ProductSubmissionService { LocalDateTime endTime = parseDate(endAt); List records = submissionRepository.searchAdmin(statuses.isEmpty() ? null : statuses, kwLike, shopId, reviewerId, start, endTime, PageRequest.of(0, 2000, Sort.by(Sort.Direction.DESC, "createdAt"))).getContent(); + // 收集所有模板的必填参数标题 + java.util.LinkedHashSet requiredParamLabels = new java.util.LinkedHashSet<>(); + java.util.Map> labelToKeyByTemplate = new java.util.HashMap<>(); + for (ProductSubmission s : records) { + Long tid = s.getTemplateId(); + if (tid == null || tid <= 0) continue; + if (!labelToKeyByTemplate.containsKey(tid)) { + java.util.Map map = new java.util.LinkedHashMap<>(); + var defs = templateParamRepository.findByTemplateIdOrderBySortOrderAscIdAsc(tid); + for (var d : defs) { + if (Boolean.TRUE.equals(d.getRequired())) { + map.put(d.getFieldLabel(), d.getFieldKey()); + requiredParamLabels.add(d.getFieldLabel()); + } + } + labelToKeyByTemplate.put(tid, map); + } else { + for (var e : labelToKeyByTemplate.get(tid).keySet()) requiredParamLabels.add(e); + } + } try (Workbook workbook = new XSSFWorkbook()) { Sheet sheet = workbook.createSheet("Submissions"); CreationHelper creationHelper = workbook.getCreationHelper(); @@ -117,27 +142,36 @@ public class ProductSubmissionService { int rowIdx = 0; Row header = sheet.createRow(rowIdx++); - String[] headers = {"ID", "型号", "名称", "品牌", "状态", "提交人", "店铺", "提交时间", "审核时间", "审核备注"}; - for (int i = 0; i < headers.length; i++) { - header.createCell(i).setCellValue(headers[i]); - } + java.util.List headers = new java.util.ArrayList<>(); + headers.add("编号"); + headers.add("分类"); + headers.add("品牌"); + headers.add("型号"); + headers.addAll(requiredParamLabels); + headers.add("备注"); + for (int i = 0; i < headers.size(); i++) header.createCell(i).setCellValue(headers.get(i)); for (ProductSubmission submission : records) { Row row = sheet.createRow(rowIdx++); int col = 0; - row.createCell(col++).setCellValue(submission.getId()); - row.createCell(col++).setCellValue(nvl(submission.getModelUnique())); - row.createCell(col++).setCellValue(nvl(submission.getName())); + // 编号、分类、品牌、型号 + row.createCell(col++).setCellValue(nvl(submission.getExternalCode())); + row.createCell(col++).setCellValue(nvl(resolveCategoryName(submission.getCategoryId()))); row.createCell(col++).setCellValue(nvl(submission.getBrand())); - row.createCell(col++).setCellValue(submission.getStatus().name()); - row.createCell(col++).setCellValue(submission.getUserId() != null ? submission.getUserId() : 0); - row.createCell(col++).setCellValue(submission.getShopId() != null ? submission.getShopId() : 0); - setDateCell(row.createCell(col++), submission.getCreatedAt(), dateStyle); - setDateCell(row.createCell(col++), submission.getReviewedAt(), dateStyle); - row.createCell(col).setCellValue(nvl(submission.getReviewRemark())); + row.createCell(col++).setCellValue(nvl(submission.getModelUnique())); + // 模板必填参数值 + java.util.Map params = JsonUtils.fromJson(submission.getAttributesJson(), new com.fasterxml.jackson.core.type.TypeReference>() {}); + java.util.Map l2k = labelToKeyByTemplate.getOrDefault(submission.getTemplateId(), java.util.Collections.emptyMap()); + for (String label : requiredParamLabels) { + String key = l2k.get(label); + Object v = (key == null || params == null) ? null : params.get(key); + row.createCell(col++).setCellValue(v == null ? "" : String.valueOf(v)); + } + // 备注 + row.createCell(col).setCellValue(nvl(submission.getRemarkText())); } - for (int i = 0; i < headers.length; i++) { + for (int i = 0; i < headers.size(); i++) { sheet.autoSizeColumn(i); int width = sheet.getColumnWidth(i); sheet.setColumnWidth(i, Math.min(width + 512, 10000)); @@ -153,6 +187,15 @@ public class ProductSubmissionService { } } + private final java.util.Map categoryNameCache = new java.util.HashMap<>(); + private String resolveCategoryName(Long categoryId) { + if (categoryId == null) return ""; + if (categoryNameCache.containsKey(categoryId)) return categoryNameCache.get(categoryId); + String name = jdbcTemplate.query("SELECT name FROM product_categories WHERE id=?", ps -> ps.setLong(1, categoryId), rs -> rs.next()? rs.getString(1): ""); + categoryNameCache.put(categoryId, name == null ? "" : name); + return name == null ? "" : name; + } + public Optional findDetail(Long id) { return submissionRepository.findById(id).map(this::toDetail); } @@ -168,10 +211,11 @@ public class ProductSubmissionService { throw new IllegalArgumentException("仅待审核记录可编辑"); } submission.setName(req.name != null ? req.name : submission.getName()); + if (req.externalCode != null) submission.setExternalCode(req.externalCode); submission.setBrand(req.brand != null ? req.brand : submission.getBrand()); submission.setSpec(req.spec != null ? req.spec : submission.getSpec()); submission.setOrigin(req.origin != null ? req.origin : submission.getOrigin()); - submission.setUnitId(req.unitId != null ? req.unitId : submission.getUnitId()); + // 单位字段已移除 submission.setCategoryId(req.categoryId != null ? req.categoryId : submission.getCategoryId()); if (req.parameters != null) submission.setAttributesJson(JsonUtils.toJson(req.parameters)); if (req.images != null) submission.setImagesJson(JsonUtils.toJson(req.images)); @@ -372,11 +416,12 @@ public class ProductSubmissionService { detail.shopId = submission.getShopId(); detail.userId = submission.getUserId(); detail.name = submission.getName(); + detail.externalCode = submission.getExternalCode(); detail.model = submission.getModelUnique(); detail.brand = submission.getBrand(); detail.spec = submission.getSpec(); detail.origin = submission.getOrigin(); - detail.unitId = submission.getUnitId(); + // 单位字段已移除 detail.categoryId = submission.getCategoryId(); detail.templateId = submission.getTemplateId(); detail.parameters = JsonUtils.fromJson(submission.getAttributesJson(), new com.fasterxml.jackson.core.type.TypeReference>() {}); @@ -426,7 +471,7 @@ public class ProductSubmissionService { payload.spec = submission.getSpec(); payload.origin = submission.getOrigin(); payload.categoryId = submission.getCategoryId(); - payload.unitId = submission.getUnitId(); + // 单位字段已移除 payload.dedupeKey = submission.getDedupeKey(); payload.safeMin = submission.getSafeMin(); payload.safeMax = submission.getSafeMax(); diff --git a/backend/txm/debug_out/txm.log b/backend/txm/debug_out/txm.log index a872eb2..71b4d1d 100644 --- a/backend/txm/debug_out/txm.log +++ b/backend/txm/debug_out/txm.log @@ -94,3 +94,135 @@ 2025-09-27 22:56:27.814 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 2025-09-27 22:56:27.815 | DEBUG | asyncio | Using proactor: IocpProactor 2025-09-27 22:56:27.839 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-27 23:05:41.132 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-27 23:05:41.133 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-27 23:05:41.135 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-27 23:05:41.171 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-27 23:47:53.925 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-27 23:47:53.926 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-27 23:47:53.928 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-27 23:47:53.957 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 01:24:20.344 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 01:24:20.346 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 01:24:20.363 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 01:24:20.585 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:00:52.538 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:00:52.542 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 22:00:52.560 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 22:00:52.876 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:02:38.951 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:02:38.954 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 22:02:38.956 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 22:02:38.980 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:29:34.466 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:29:34.468 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 22:29:34.476 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 22:29:34.670 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:35:16.776 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:35:16.779 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 22:35:16.780 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 22:35:16.811 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:38:31.014 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 22:38:31.017 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 22:38:31.020 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 22:38:31.048 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:06:13.053 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:06:13.055 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 23:06:13.057 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 23:06:13.108 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:15:20.745 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:15:20.749 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 23:15:20.753 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 23:15:20.798 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:22:54.219 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:22:54.223 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 23:22:54.226 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 23:22:54.264 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:23:45.474 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:23:45.482 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 23:23:45.490 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 23:23:45.530 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:41:40.864 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:41:40.869 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 23:41:40.873 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 23:41:40.910 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:50:01.655 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-28 23:50:01.658 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-28 23:50:01.661 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-28 23:50:01.696 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 00:03:06.082 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 00:03:06.095 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 00:03:06.106 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 00:03:06.388 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 11:43:33.011 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 11:43:33.016 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 11:43:33.032 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 11:43:33.358 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 11:59:27.297 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 11:59:27.298 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 11:59:27.306 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 11:59:27.418 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 12:21:49.423 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 12:21:49.425 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 12:21:49.427 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 12:21:49.456 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 12:24:55.373 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 12:24:55.375 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 12:24:55.389 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 12:24:55.608 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 12:54:19.142 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 12:54:19.144 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 12:54:19.146 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 12:54:19.168 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 13:00:11.536 | DEBUG | python_multipart.multipart | Calling on_part_begin with no data +2025-09-29 13:00:11.536 | DEBUG | python_multipart.multipart | Calling on_header_field with data[38:57] +2025-09-29 13:00:11.536 | DEBUG | python_multipart.multipart | Calling on_header_value with data[59:125] +2025-09-29 13:00:11.536 | DEBUG | python_multipart.multipart | Calling on_header_end with no data +2025-09-29 13:00:11.536 | DEBUG | python_multipart.multipart | Calling on_header_field with data[127:139] +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_header_value with data[141:151] +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_header_end with no data +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_header_field with data[153:167] +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_header_value with data[169:174] +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_header_end with no data +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_headers_finished with no data +2025-09-29 13:00:11.538 | DEBUG | python_multipart.multipart | Calling on_part_data with data[178:69513] +2025-09-29 13:00:11.539 | DEBUG | python_multipart.multipart | Calling on_part_data with data[0:14631] +2025-09-29 13:00:11.539 | DEBUG | python_multipart.multipart | Calling on_part_end with no data +2025-09-29 13:00:11.539 | DEBUG | python_multipart.multipart | Calling on_end with no data +2025-09-29 13:00:11.550 | DEBUG | app.server.main | /api/barcode/scan 收到图像: shape=(1440, 1080, 3), dtype=uint8 +2025-09-29 13:00:11.559 | DEBUG | pyzbar_engine | 调用 pyzbar: symbols=8, rotations=[0, 90, 180, 270], try_invert=True +2025-09-29 13:00:11.802 | DEBUG | pyzbar_engine | pyzbar 返回结果数: 1 +2025-09-29 13:00:11.803 | DEBUG | EAN13Recognizer | pyzbar 返回 1 条结果 +2025-09-29 13:00:11.803 | DEBUG | EAN13Recognizer | 输入尺寸=(1707, 1280, 3), 预处理后尺寸=(1707, 1280, 3) +2025-09-29 13:00:11.804 | DEBUG | pyzbar_engine | 调用 pyzbar: symbols=8, rotations=[0, 90, 180, 270], try_invert=True +2025-09-29 13:00:12.040 | DEBUG | pyzbar_engine | pyzbar 返回结果数: 1 +2025-09-29 13:00:12.040 | DEBUG | EAN13Recognizer | pyzbar 识别到 1 条结果 +2025-09-29 13:00:12.056 | DEBUG | EAN13Recognizer | ROI bbox=(372, 627, 654, 190) +2025-09-29 13:00:12.060 | DEBUG | EAN13Recognizer | 透视矫正后尺寸=(120, 413) +2025-09-29 13:00:12.098 | DEBUG | EAN13Recognizer | 自研 EAN13 解码失败 +2025-09-29 13:00:12.099 | DEBUG | EAN13Recognizer | recognize_any 未命中 EAN13, others=1 +2025-09-29 13:00:12.100 | INFO | app.server.main | /api/barcode/scan 命中非 EAN: type=CODE128, code=84455470401081732071, cost_ms=561.2 +2025-09-29 13:11:28.027 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 13:11:28.029 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 13:11:28.030 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 13:11:28.059 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 19:35:33.086 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 19:35:33.087 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 19:35:33.105 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 19:35:33.458 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:02:28.561 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:02:28.563 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 21:02:28.579 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 21:02:28.828 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:13:29.629 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:13:29.631 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 21:13:29.632 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 21:13:29.653 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:26:27.378 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:26:27.379 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 21:26:27.382 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 21:26:27.404 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:30:25.753 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} +2025-09-29 21:30:25.754 | INFO | __main__ | 启动 FastAPI 服务器: 127.0.0.1:8000 +2025-09-29 21:30:25.756 | DEBUG | asyncio | Using proactor: IocpProactor +2025-09-29 21:30:25.775 | DEBUG | EAN13Recognizer | 配置加载完成: preprocess={'resize_width': 1280, 'gaussian_blur_ksize': 3, 'morphology_kernel': 17, 'sobel_ksize': 3, 'binarize': 'otsu', 'close_kernel': 21}, roi={'min_area_ratio': 0.01, 'min_wh_ratio': 2.0, 'warp_target_height': 120, 'crop_bottom_ratio': 0.25}, decoder={'sample_rows': [0.35, 0.5, 0.65], 'total_modules': 95, 'guard_tolerance': 0.35, 'peak_valley_rel_threshold': 0.2, 'engine_order': ['pyzbar', 'ean13'], 'try_invert': True, 'rotations': [0, 90, 180, 270]} diff --git a/doc/database_documentation.md b/doc/database_documentation.md index cd3a030..65c00e5 100644 --- a/doc/database_documentation.md +++ b/doc/database_documentation.md @@ -267,7 +267,7 @@ | user_id | BIGINT UNSIGNED | NOT NULL | | | | name | VARCHAR(120) | NOT NULL | | 供全文检索 | | category_id | BIGINT UNSIGNED | YES | | | -| unit_id | BIGINT UNSIGNED | NOT NULL | | | +| unit_id | (已移除) | | | | | template_id | BIGINT UNSIGNED | YES | | 关联的模板 | | brand | VARCHAR(64) | YES | | | | model | VARCHAR(64) | YES | | | @@ -291,8 +291,8 @@ - safe_min/safe_max: 安全库存上下限 - search_text: 聚合检索字段(触发器维护) -**Indexes**: - PRIMARY KEY: `id` - KEY: `idx_products_shop` (`shop_id`) - KEY: `idx_products_category` (`category_id`) - KEY: `idx_products_unit` (`unit_id`) - KEY: `idx_products_template` (`template_id`) - KEY: `idx_products_dedupe` (`dedupe_key`) - KEY: `idx_products_shop_blacklist` (`shop_id`,`is_blacklisted`) - FULLTEXT: `ft_products_search` (`name`,`brand`,`model`,`spec`,`search_text`) - UNIQUE: `ux_products_shop_barcode` (`shop_id`,`barcode`) - UNIQUE: `ux_products_template_name_model` (`template_id`,`name`,`model`) -**Foreign Keys**: - `fk_products_shop`: `shop_id` → `shops(id)` - `fk_products_user`: `user_id` → `users(id)` - `fk_products_category`: `category_id` → `product_categories(id)` - `fk_products_unit`: `unit_id` → `product_units(id)` - `fk_products_template`: `template_id` → `part_templates(id)` - `fk_products_globalsku`: `global_skus(id)` +**Indexes**: - PRIMARY KEY: `id` - KEY: `idx_products_shop` (`shop_id`) - KEY: `idx_products_category` (`category_id`) - KEY: `idx_products_template` (`template_id`) - KEY: `idx_products_dedupe` (`dedupe_key`) - KEY: `idx_products_shop_blacklist` (`shop_id`,`is_blacklisted`) - FULLTEXT: `ft_products_search` (`name`,`brand`,`model`,`spec`,`search_text`) - UNIQUE: `ux_products_shop_barcode` (`shop_id`,`barcode`) - UNIQUE: `ux_products_template_name_model` (`template_id`,`name`,`model`) +**Foreign Keys**: - `fk_products_shop`: `shop_id` → `shops(id)` - `fk_products_user`: `user_id` → `users(id)` - `fk_products_category`: `category_id` → `product_categories(id)` - `fk_products_template`: `template_id` → `part_templates(id)` - `fk_products_globalsku`: `global_skus(id)` ### part_submissions(配件提交与审核) | Column Name | Data Type | Nullable | Default | Comment | @@ -377,8 +377,9 @@ | created_by_admin_id | BIGINT UNSIGNED | YES | | 创建管理员 | | created_at | TIMESTAMP | NOT NULL | CURRENT_TIMESTAMP | | | updated_at | TIMESTAMP | NOT NULL | CURRENT_TIMESTAMP | | +| deleted_at | DATETIME | YES | | 软删标记 | -**Indexes**: - PRIMARY KEY: `id` - KEY: `idx_pt_category` (`category_id`) - KEY: `idx_pt_status` (`status`) - KEY: `idx_pt_admin` (`created_by_admin_id`) +**Indexes**: - PRIMARY KEY: `id` - KEY: `idx_pt_category` (`category_id`) - KEY: `idx_pt_status` (`status`) - KEY: `idx_pt_admin` (`created_by_admin_id`) - KEY: `idx_part_templates_deleted_at` (`deleted_at`) **Foreign Keys**: - `fk_pt_category`: `category_id` → `product_categories(id)` - `fk_pt_admin`: `created_by_admin_id` → `admins(id)` ### part_template_params(模板参数字段) diff --git a/doc/openapi.yaml b/doc/openapi.yaml index a4375e9..382325d 100644 --- a/doc/openapi.yaml +++ b/doc/openapi.yaml @@ -728,6 +728,30 @@ paths: responses: '200': { description: 成功 } + /api/normal-admin/application/status: + get: + summary: 普通管理员-本人申请状态查询(✅ Fully Implemented) + description: 返回当前用户最近一次申请状态与是否已具备普通管理员权限。 + parameters: + - in: header + name: X-User-Id + required: true + schema: { type: integer, format: int64 } + description: 当前登录用户ID + responses: + '200': + description: 成功 + content: + application/json: + schema: + type: object + properties: + isNormalAdmin: { type: boolean } + applicationStatus: { type: string, enum: [none, pending, approved, rejected, revoked] } + lastAction: { type: string, nullable: true } + lastActionAt: { type: string, format: date-time, nullable: true } + lastRemark: { type: string, nullable: true } + /api/admin/normal-admin/applications: get: summary: 平台-普通管理员申请列表(❌ Partially Implemented) @@ -1149,12 +1173,18 @@ paths: /api/products: get: summary: 商品搜索(✅ Fully Implemented) - description: 支持 kw/page/size/categoryId;返回 {list:[]} 以兼容前端。 + description: 支持 kw/page/size/categoryId/templateId 以及模板参数过滤。模板参数以 param_ 前缀传入,如 param_颜色=黑、param_内径=10;后端对 JSON attributes 进行 LIKE 匹配(字符串化),多个参数为 AND 关系。返回 {list:[]} 以兼容前端。 parameters: - in: query name: kw schema: type: string + - in: query + name: categoryId + schema: { type: integer, format: int64 } + - in: query + name: templateId + schema: { type: integer, format: int64 } - in: query name: page schema: @@ -1165,6 +1195,11 @@ paths: schema: type: integer default: 50 + - in: query + name: param_* + schema: + type: string + description: 模板参数过滤,星号代表任意模板参数键;示例 param_颜色=黑 responses: '200': description: 成功 @@ -1204,11 +1239,16 @@ paths: /api/products/{id}: get: summary: 商品详情(✅ Fully Implemented) + description: 默认对软删记录返回 404;仅当 includeDeleted=true 时返回已软删详情(仅管理端使用)。 parameters: - in: path name: id required: true schema: { type: integer } + - in: query + name: includeDeleted + required: false + schema: { type: boolean, default: false } responses: '200': description: 成功 @@ -2232,7 +2272,6 @@ paths: spec: { type: string, nullable: true } origin: { type: string, nullable: true } barcode: { type: string, nullable: true } - unitId: { type: integer, format: int64, nullable: true } categoryId: { type: integer, format: int64, nullable: true } parameters: { type: object, additionalProperties: true, nullable: true } images: @@ -2311,7 +2350,6 @@ paths: spec: { type: string, nullable: true } origin: { type: string, nullable: true } barcode: { type: string, nullable: true } - unitId: { type: integer, format: int64, nullable: true } categoryId: { type: integer, format: int64, nullable: true } parameters: { type: object, additionalProperties: true, nullable: true } images: @@ -2401,7 +2439,6 @@ paths: name: { type: string, nullable: true } brand: { type: string, nullable: true } spec: { type: string, nullable: true } - unitId: { type: integer, format: int64, nullable: true } categoryId: { type: integer, format: int64, nullable: true } parameters: { type: object, additionalProperties: true, nullable: true } images: @@ -2482,7 +2519,7 @@ paths: /api/admin/part-templates: get: - summary: 管理端-模板列表(❌ Partially Implemented) + summary: 管理端-模板列表(✅ Fully Implemented) responses: { '200': { description: 成功 } } post: summary: 管理端-创建模板(❌ Partially Implemented) @@ -2514,11 +2551,27 @@ paths: responses: { '200': { description: 成功 } } /api/admin/part-templates/{id}: get: - summary: 管理端-模板详情(❌ Partially Implemented) + summary: 管理端-模板详情(✅ Fully Implemented) parameters: [ { in: path, name: id, required: true, schema: { type: integer, format: int64 } } ] responses: { '200': { description: 成功 } } put: summary: 管理端-更新模板(❌ Partially Implemented) + delete: + summary: 管理端-删除模板(软删除,✅ Fully Implemented) + description: |- + 默认行为:软删除(隐藏)——仅将 `part_templates.status` 置为 0,前台列表默认不再显示。 + 强制模式:`force=true` 时,执行永久删除:删除参数定义并清理关联商品(软删)与提交(软删),最后删除模板记录。 + parameters: + - in: path + name: id + required: true + schema: { type: integer, format: int64 } + - in: query + name: force + required: false + schema: { type: boolean } + responses: + '200': { description: 成功 } parameters: [ { in: path, name: id, required: true, schema: { type: integer, format: int64 } } ] requestBody: required: true diff --git a/doc/模板参数可模糊查询_功能需求文档.md b/doc/模板参数可模糊查询_功能需求文档.md new file mode 100644 index 0000000..a587db0 --- /dev/null +++ b/doc/模板参数可模糊查询_功能需求文档.md @@ -0,0 +1,127 @@ +## 模板参数可模糊查询(±容差)功能需求文档 + +### 1. 背景与目标 +当前用户端「按模板参数查询」要求参数值与数据库完全相同才能命中,实际使用中数值类参数(如内径、外径、长度等)存在测量/录入微小误差,严格等值导致命中率偏低。新增能力:在管理端创建模板时,为每个参数提供「可模糊查询」选项;开启后,用户搜索该参数时按数值区间匹配(±容差);未开启的参数继续精确等值。 + +### 2. 业务范围 +- 场景:用户端/管理端的商品列表查询(含「按模板参数查询」模式)。 +- 对象:模板参数定义(仅限数值型参数生效)。 +- 不影响:名称/品牌/型号/规格关键字搜索逻辑;非数值类型参数的等值匹配逻辑。 + +### 3. 术语与约束 +- 模板参数类型:string/number/boolean/enum/date。 +- 模糊查询仅对 type=number 生效;其他类型不展示该选项或忽略配置。 +- 容差(tolerance):对搜索入参 v,匹配区间为 \[v - tolerance, v + tolerance](闭区间)。默认容差为 1(见配置项),可在参数层级单独覆盖。 +- 组合关系:多参数为 AND 关系;每个参数根据其「可模糊查询」与容差独立计算。 + +### 4. 交互与流程 +- 管理端-模板配置: + - 新建/编辑模板参数时,新增选项: + - 可模糊查询(开关,仅当类型为 number 显示) + - 容差值(number,>0,显示单位提示,同 `unit` 字段;当开关开启时必填,否则置空) + - 校验: + - type≠number 时禁止开启; + - 容差必须为正数,支持小数; + - 可保存为“使用平台默认容差”,当字段留空时后端落默认(见配置)。 +- 用户端/管理端-按模板参数查询: + - 入参与现状一致:仍以 `templateId` + 多个 `param_*` 传参; + - 行为变化: + - 对应参数若开启可模糊查询:按区间 \[v - tol, v + tol] 比较; + - 否则:仍为精确等值比较。 + +### 5. 数据模型变更(待实施) +- 表:`part_template_params` + - 新增列: + - `fuzzy_searchable` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否允许模糊查询(仅数值型)' + - `fuzzy_tolerance` DECIMAL(18,6) NULL COMMENT '容差;NULL 表示使用平台默认容差' + - 说明: + - 仅当 `type='number' AND fuzzy_searchable=1` 时才使用容差; + - 初始迁移将全部历史记录置为 `fuzzy_searchable=0, fuzzy_tolerance=NULL`,保持现有行为不变。 + +### 6. 配置项(后端) +- `search.fuzzy.enabled`(bool,默认 true):是否启用模糊查询全局开关; +- `search.fuzzy.defaultTolerance`(decimal,默认 1.0):当参数未设置 `fuzzy_tolerance` 时使用; +- 读取途径:Spring 配置(application.properties/yaml)或环境变量。禁止在代码中硬编码数字 1。 +- 仅全局配置,不支持租户级(`system_parameters`)覆盖;无需设置小数精度上限/最大容差限制。 + +### 7. 接口协议与兼容性 +- 查询接口:`GET /api/products`(已存在) + - 入参保持不变:`templateId`、`param_*`。 + - 语义扩展(无须 `templateId` 也启用模糊):后端将基于商品行的 `template_id` 与参数定义逐行判定某个 `param_*` 是否启用 ±容差;若该参数在对应模板中未开启模糊或非数值型,则对该条件执行等值匹配。 +- 模板接口:`POST /api/admin/part-templates`、`PUT /api/admin/part-templates/{id}`(已存在) + - 参数定义对象新增字段: + - `fuzzySearchable`(boolean) + - `fuzzyTolerance`(number,nullable) + - 若前端暂未改造,后端默认按 `fuzzySearchable=false` 处理,兼容旧请求体。 + +(根据「接口规范生效条件」,待功能开发完成后更新 `doc/openapi.yaml` 中对应 schema 与描述,并在 summary/description 标注实现状态) + +### 8. 后端实现要点(建议方案) +当前实现(精确匹配),示意: +```sql +-- 现状(等值): +AND JSON_UNQUOTE(JSON_EXTRACT(p.attributes_json, '$.内径')) = '10' +``` + +推荐实现: +- 行级判定方案(支持无 `templateId` 也启用模糊): + - 对每个传入的 `param_=v`: + - 以 `EXISTS` 子查询或 `JOIN part_template_params ptp ON ptp.template_id=p.template_id AND ptp.field_key=''` 获取参数定义; + - 若 `ptp.type='number' AND ptp.fuzzy_searchable=1`:对 `v` 解析为数值,计算 `tol = COALESCE(ptp.fuzzy_tolerance, :defaultTolerance)`; + - 下限截断:`lower = GREATEST(0, v - tol)`; + - 条件: + ```sql + CAST(JSON_UNQUOTE(JSON_EXTRACT(p.attributes_json, '$.')) AS DECIMAL(18,6)) BETWEEN :lower AND :upper + ``` + - 否则:执行等值匹配: + ```sql + JSON_UNQUOTE(JSON_EXTRACT(p.attributes_json, '$.')) = :val + ``` +- 快路径(可选):当请求携带 `templateId` 时,可先一次性加载该模板参数定义映射到内存,按映射决定每个条件构造,以减少 `JOIN/EXISTS` 次数。 +- 容差取值:优先 `ptp.fuzzy_tolerance`,否则全局 `search.fuzzy.defaultTolerance`。 + +性能建议: +- 初期:允许全表扫描 + JSON_EXTRACT;观察真实 QPS 与延迟; +- 进阶(可选):对热点参数引入“生成列 + 索引”(Generated Column),例如: + - 在 `products` 增加 `attr_ DECIMAL(18,6) GENERATED ALWAYS AS (CAST(JSON_UNQUOTE(JSON_EXTRACT(attributes_json, '$.')) AS DECIMAL(18,6))) STORED` 并建索引,以支持范围查询; + - 仅对访问量高的少数参数启用,避免列爆炸。 + +### 9. 管理端实现要点(UI/校验) +- `admin/src/views/parts/Templates.vue`: + - 参数编辑行新增: + - 开关:可模糊查询(仅 type=number 显示) + - 数值输入:容差(显示单位,>0,支持小数;留空表示使用平台默认) + - 保存/加载兼容:与后端新增字段映射,历史数据默认显示为关闭态。 + - 校验:当参数开启模糊时,对应值在 UI 侧仅允许数字输入;单位提示与 `unit` 一致。 + +### 10. 验收标准(Test Cases) +- 单参数-模糊:模板字段 `内径`(number,fuzzy=true,tolerance=1);商品 A/B/C 分别取值 9/10/11;搜索 `param_内径=10` 命中 A/B/C。 +- 单参数-精确:同上但 fuzzy=false;搜索 `param_内径=10` 仅命中 B。 +- 多参数组合:`内径`(fuzzy=true, tol=0.5)、`长度`(fuzzy=false);搜索 `param_内径=10`、`param_长度=20` 仅命中满足区间与等值的交集。 +- 无 templateId:也启用模糊;后端逐行按 `p.template_id` 与参数定义判定是否应用容差。 +- 容差来源:当 `fuzzy_tolerance=NULL` 时,生效平台默认容差;覆盖值生效优先级高于默认。 +- 非数值参数:即使请求携带 `param_颜色=黑`,也严格等值。 + - 下限截断:当 `v - tol < 0` 时,以 `0` 作为下限;不支持负数参数匹配。 + - 非法输入:当参数在模板中开启模糊但请求值非数字时,返回 400(Bad Request)。 + +### 11. 兼容与回退 +- 不改动现有请求入参与返回体,历史客户端无需升级亦可按原精确逻辑使用; +- 新能力由模板参数配置显式开启,可随时在模板中关闭; +- 如需全局关闭,可通过 `search.fuzzy.enabled=false` 临时禁用(后端配置)。 + +### 12. 风险与注意事项 +- 数据质量:历史 `attributes_json` 中数值可能以字符串存储;需统一以 `CAST(JSON_UNQUOTE(...))` 解析。 +- 单位与容差:UI 需提示单位;容差与单位一一对应,避免“毫米 vs 厘米”误解。 +- 性能:范围查询较等值更难走索引;必要时引入“生成列+索引”优化热点字段。 + - 负数与边界:不支持负数参数;区间采用闭区间,且下限截断为 `0`。 + +### 13. 实施清单(参考) +1) 数据库:为 `part_template_params` 增列 `fuzzy_searchable`、`fuzzy_tolerance`;(变更需通过 MysqlMCP,成功后同步更新 `doc/database_documentation.md` 与 `backend/db/db.sql`) +2) 配置:新增 `search.fuzzy.*` 配置项并给出默认值(全局生效,无租户级覆盖); +3) 管理端:模板参数编辑 UI 新增开关与容差输入; +4) 后端:按 8 节改造查询 SQL 构建逻辑(无 `templateId` 也启用模糊,行级按模板判定); +5) 文档:在功能开发完成后更新 `doc/openapi.yaml` 中模板参数 schema 与 `GET /api/products` 的查询规则说明,并标注实现状态; +6) 发布:前后端同步上线;无需灰度与回滚开关; +7) 验收:按 10 节用例覆盖单测/集成测试与手工回归。 + + diff --git a/doc/货品删除功能开发文档.md b/doc/货品删除功能开发文档.md new file mode 100644 index 0000000..1f03324 --- /dev/null +++ b/doc/货品删除功能开发文档.md @@ -0,0 +1,175 @@ +## 货品删除功能开发文档(软删方案) + +### 1. 背景与目标 +- 将“与货品相关”的删除行为统一为软删除,避免历史引用断裂,支持后续恢复与审计。 +- 用户仅保留“拉黑/恢复”,订单维持“作废 void”,不做删除。 + +### 2. 范围 +- 货品主表:`products` +- 关联信息:`product_images`、`product_prices`、`inventories`、`product_aliases` +- 相关查询接口:商品搜索、详情、导出(如有) + +### 2.1 父子级联关系(必须遵守) +- 分类(`product_categories`) → 模板(`part_templates`) → 商品(`products`) +- 规则: + - 删除分类 ⇒ 级联软删该分类下所有模板;再级联软删由这些模板创建的所有商品;并同时软删所有 `category_id=该分类` 的商品(包括未通过模板创建的商品)。 + - 删除模板 ⇒ 仅软删该模板下的商品,不影响同分类其它模板的商品。 + - 订单不可删除,仅允许作废(void),因此采用“软删”是必要前提,避免历史订单断裂。 + - 恢复:当前不提供任何恢复入口;如未来开放,恢复不做级联,需逐层独立恢复以避免误恢复。 + +### 3. 设计要点 +- 软删标记:使用 `products.deleted_at DATETIME NULL`(已存在)。被软删即视为“不对外可见”。 +- 恢复:当前不提供恢复入口。若未来开放,语义为将 `deleted_at=NULL`。 +- 查询默认过滤:所有列表/搜索默认附加 `deleted_at IS NULL`(当前搜索已实现)。 +- 详情访问:若记录被软删,返回 404(或通过 `includeDeleted=true` 显式读取)。 +- 关联表处理:软删商品时不物理删除图片/价格/库存/别名(均按商品引用读取,详情被 404 屏蔽即可)。 + +- 模板软删标记统一:为 `part_templates` 引入 `deleted_at DATETIME NULL` 以统一软删标记;`status` 字段保留为启停用,不代表软删。所有查询需同时过滤 `deleted_at IS NULL AND status=1`(按需)。 + +- 字典与作用域:分类与单位属于 `shop_id=0` 的全局字典。删除分类会影响所有店铺下此分类的模板与商品;此操作需平台管理员权限并要求二次确认。 + +- 报表与搜索:默认排除软删记录;不提供“含回收站”开关。 + +- 数据保留与清理:支持配置项 `SOFT_DELETE_RETENTION_DAYS`(默认永久保留,仅清理无引用对象)。 + +- 单位删除校验:移除对已废弃 `products.unit_id` 的校验逻辑。 + +### 4. 数据库与索引 +现状:`products` 存在唯一约束 `UNIQUE(shop_id, barcode)`。软删后可能需要“同店铺、同条码”重新建商品。 + +- 目标:唯一约束仅作用于“活动记录”(未软删)。 +- 做法:增加生成列 `is_active` 并重建唯一索引(MySQL 8)。 + +DDL(上线脚本草案) +```sql +-- 仅对生产环境执行一次;如已存在请跳过对应步骤 +ALTER TABLE products + ADD COLUMN is_active TINYINT AS (CASE WHEN deleted_at IS NULL THEN 1 ELSE 0 END) STORED, + ADD INDEX idx_products_deleted_at (deleted_at); + +-- 重建唯一索引,使其仅约束未软删记录 +DROP INDEX ux_products_shop_barcode ON products; -- 若不存在请忽略 +CREATE UNIQUE INDEX ux_products_shop_barcode_live ON products(shop_id, barcode, is_active); +``` + +风险与说明 +- “条码为空”不会受唯一约束影响(MySQL 对 NULL 不唯一);符合预期。 +- 老数据不受影响;后续删除改为软删即可。 +- 若未来需要“永久删除”,可新增仅限平台运维的强删脚本,先清理关联,再物理删除目标商品。 +- 如未来开放“恢复”,当恢复商品与现存“活动记录”在 `(shop_id, barcode)` 上冲突时,恢复应返回 `409 Conflict` 并附带冲突商品信息。 + +模板表 DDL(新增软删标记) +```sql +ALTER TABLE part_templates + ADD COLUMN deleted_at DATETIME NULL, + ADD INDEX idx_part_templates_deleted_at (deleted_at); +``` + +### 5. 接口设计(OpenAPI 约定) +说明:按规范,等后端开始开发即补充到 `/doc/openapi.yaml` 并标注实现状态;本方案不新增任何“恢复”接口。 + +1) 软删商品(行为不变,明确语义) +- Method/Path: `DELETE /api/products/{id}` +- 语义:软删,将 `deleted_at=NOW()`。 +- 返回:`200 {}` +- 鉴权:需要 `X-Shop-Id`/`X-User-Id` 或 Token,且仅允许同店铺数据。 + +2) 商品详情(行为调整) +- Method/Path: `GET /api/products/{id}` +- 默认:若 `deleted_at IS NOT NULL` 返回 `404`。 +- 可选:`includeDeleted=true` 时允许读取已软删详情(仅管理端使用)。 + +3) 恢复接口 +- 不同意新增以下恢复接口:`PUT /api/admin/dicts/categories/{id}/restore`、`PUT /api/admin/part-templates/{id}/restore`、`PUT /api/products/{id}/restore`。 + +### 6. 后端实现说明 +- Controller 改动(示意) + - `ProductController.delete(id, shopId)`:保持现有调用,内部执行软删。 + - `GET /api/products/{id}`:调用 `productService.findDetail(id)` 前,先判断 `deleted_at`,若非空且未显式 `includeDeleted` → `404`。 + +- Service 改动(核心) + - 移除/不提供任何恢复相关方法。 + - `findDetail(id)`:若被软删且无 `includeDeleted` 参数 → 返回空 Optional。 + - 模板表采用 `deleted_at` 表示软删,`status` 表示启停用;查询需同时过滤 `deleted_at IS NULL` 与必要的 `status` 条件。 + +#### 6.1 级联软删伪代码 +```java +// 分类软删 +void deleteCategorySoft(Long categoryId) { + // 1) 标记分类 deleted_at + UPDATE product_categories SET deleted_at=NOW() WHERE id=? AND deleted_at IS NULL; + // 2) 级联模板软删(统一使用 deleted_at) + UPDATE part_templates SET deleted_at=NOW() WHERE category_id=? AND deleted_at IS NULL; + // 3) 级联商品软删:模板创建的商品 + 直接挂在分类下的商品 + UPDATE products SET deleted_at=NOW() WHERE ( + template_id IN (SELECT id FROM part_templates WHERE category_id=?) + OR category_id=? + ) AND deleted_at IS NULL; +} + +// 模板软删(不波及其它模板) +void deleteTemplateSoft(Long templateId) { + // 1) 模板标记为软删 + UPDATE part_templates SET deleted_at=NOW() WHERE id=? AND deleted_at IS NULL; + // 2) 级联商品软删(仅该模板下) + UPDATE products SET deleted_at=NOW() WHERE template_id=? AND deleted_at IS NULL; +} +``` + +### 7. 前端改动 +- 列表页:保持不显示软删项(现已过滤)。 +- 详情页:若接口返回 404,提示“已被删除或无权限”。 +- 管理端:不提供“回收站/恢复”入口;删除按钮提示:该操作为软删除,对前台不可见,当前无恢复入口。 + +### 8. 权限与审计 +- 鉴权:沿用现有用户/店铺头部识别;仅同店铺商品可操作。 +- 权限边界: + - 普通用户:仅可删除本用户的货品;无权删除模板与分类;无恢复权限。 + - 店铺管理员:仅有审核功能;无删除模板/分类与恢复权限。 + - 平台管理员:可删除货品、模板、分类;删除全局分类需二次确认;无恢复权限。 +- 审计:不记录操作日志(操作者、时间、来源 IP、对象 ID 与名称),以简化开发。 + +### 9. 测试用例 +- 删除后搜索不可见;`GET /api/products/{id}` 返回 404。 +- 条码唯一:软删后允许同店铺同条码新建。 +- (如未来开放恢复)恢复时如与现有活动记录冲突,返回 409 并附带冲突商品信息。 + +### 10. 发布与回滚 +- 发布顺序: + 1) 执行数据库 DDL(生成列与索引)。 + 2) 上线后端(调整 detail 行为,移除/不提供恢复逻辑)。 + 3) 上线前端(不提供回收站/恢复入口)。 +- 回滚: + - 后端回滚到旧版本;DDL 不需要回退(生成列与新索引向前兼容)。 + +### 11. FAQ / 风险 +- 问:软删后图片与价格是否清理? + - 答:不清理,保持数据可恢复;若永久删除再统一清理关联。 +- 问:库存与统计是否包含软删商品? + - 答:常规统计应排除软删;如需包含,增加显式参数。 +- 问:条码冲突如何处理? + - 答:按“活动记录”唯一;如未来开放恢复,发现冲突则返回 409,并指明冲突商品。 +- 问:字典(分类/单位)是否为全局维度?删除是否影响所有店铺? + - 答:是,`shop_id=0` 全局字典;删除全局分类会影响所有店铺下该分类的模板与商品,需平台管理员二次确认。 +- 问:是否保留“强删”入口? + - 答:保留仅限平台运维的强删入口(默认关闭)。分类/模板强删前需校验无订单关联商品后再执行。 +- 问:为何不做物理删除? + - 答:订单/流水等历史记录必须可追溯;物理删除会破坏外键与统计。软删能满足“前台不可见、后台可恢复”的业务诉求。 + + +### 12. 任务拆解(实施) +- 后端: + - [ ] `GET /api/products/{id}` 软删返回 404 / 支持 `includeDeleted` + - [ ] 分类删除级联扩展:同时软删 `category_id=该分类` 的商品(含未走模板创建) + - [ ] 模板表引入 `deleted_at`;查询同时过滤 `deleted_at IS NULL` 与必要的 `status` + - [ ] 移除“单位删除校验检查 products.unit_id”的逻辑 +- 数据库: + - [ ] 为 `products` 增加 `is_active` 与唯一索引(见 DDL) + - [ ] 为 `part_templates` 增加 `deleted_at` 与索引 +- 前端管理端: + - [ ] 删除按钮文案更新(软删除,对前台不可见,当前无恢复入口) + - [ ] 不提供“回收站/恢复”入口 + +(本文件为技术方案与实施指引,变更上线后请同步 `/doc/openapi.yaml` 与 `/doc/database_documentation.md`) + + diff --git a/frontend/.env.local b/frontend/.env.local new file mode 100644 index 0000000..99d2361 --- /dev/null +++ b/frontend/.env.local @@ -0,0 +1 @@ +VITE_APP_API_BASE_URL=http://192.168.31.192:8080 diff --git a/frontend/common/config.js b/frontend/common/config.js index 15f91cb..999c3fa 100644 --- a/frontend/common/config.js +++ b/frontend/common/config.js @@ -49,3 +49,8 @@ export const KPI_ICONS = { stockCount: '/static/icons/product.png' } +// 登录页顶部图片,避免在页面硬编码,允许通过环境变量或本地存储覆盖 +const envAuthLoginImg = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_AUTH_LOGIN_TOP_IMAGE || process.env.AUTH_LOGIN_TOP_IMAGE)) || ''; +const storageAuthLoginImg = typeof uni !== 'undefined' ? (uni.getStorageSync('AUTH_LOGIN_TOP_IMAGE') || '') : ''; +export const AUTH_LOGIN_TOP_IMAGE = String(envAuthLoginImg || storageAuthLoginImg || '/static/icons/undraw_visual-data_1eya.png'); + diff --git a/frontend/common/constants.js b/frontend/common/constants.js index 99b1b1a..0c96323 100644 --- a/frontend/common/constants.js +++ b/frontend/common/constants.js @@ -42,3 +42,11 @@ export const STORAGE_KEYS = { } +// KPI 标签常量,避免页面硬编码 +export const KPI_LABELS = { + todaySales: '今日销售额', + monthSales: '本月销售额', + monthProfit: '本月利润', + stockCount: '库存量' +} + diff --git a/frontend/pages.json b/frontend/pages.json index bc39330..aa5a551 100644 --- a/frontend/pages.json +++ b/frontend/pages.json @@ -38,11 +38,23 @@ } }, { - "path": "pages/product/form", + "path": "pages/product/submission-detail", "style": { - "navigationBarTitleText": "编辑货品" + "navigationBarTitleText": "提交详情" } }, + { + "path": "pages/product/form", + "style": { + "navigationBarTitleText": "编辑货品" + } + }, + { + "path": "pages/product/product-detail", + "style": { + "navigationBarTitleText": "货品详情" + } + }, { "path": "pages/product/categories", "style": { diff --git a/frontend/pages/auth/login.vue b/frontend/pages/auth/login.vue index dbef1ca..06908b7 100644 --- a/frontend/pages/auth/login.vue +++ b/frontend/pages/auth/login.vue @@ -1,18 +1,21 @@ - - 登录 - 注册 - 忘记密码 + + + 邮箱密码登录 - + 登录 + + 注册 + 忘记密码 + - + @@ -24,7 +27,7 @@ 注册新用户 - + @@ -35,16 +38,19 @@ 重置密码 + diff --git a/frontend/pages/index/index.vue b/frontend/pages/index/index.vue index 04ea5b3..95ce2b6 100644 --- a/frontend/pages/index/index.vue +++ b/frontend/pages/index/index.vue @@ -12,28 +12,28 @@ - 今日销售额 + {{ KPI_LABELS.todaySales }} {{ kpi.todaySales }} - 本月销售额 + {{ KPI_LABELS.monthSales }} {{ kpi.monthSales }} - 本月利润 + {{ KPI_LABELS.monthProfit }} {{ kpi.monthProfit }} - 库存商品数量 + {{ KPI_LABELS.stockCount }} {{ kpi.stockCount }} @@ -93,12 +93,13 @@ @@ -186,6 +259,9 @@ page { border-color: #4c8dff; } +/* 指定 hero 内激活态徽标文本为黑色 */ +.vip-hero .status-pill.active text { color: #000 !important; } + .vip-summary { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); @@ -337,6 +413,45 @@ page { opacity: 0.88; } +.apply-card { + margin-top: 0; + background: linear-gradient(135deg, rgba(30,173,145,0.14) 0%, rgba(30,173,145,0.06) 100%); + border-radius: 28rpx; + padding: 30rpx 28rpx; + display: flex; + align-items: center; + gap: 24rpx; + border: 2rpx solid rgba(30,173,145,0.18); + box-shadow: 0 10rpx 24rpx rgba(30,173,145,0.15); +} + +.apply-text { flex: 1; display:flex; flex-direction: column; gap: 10rpx; } +.apply-title { font-size: 32rpx; font-weight: 800; color: #1ead91; } +.apply-desc { font-size: 24rpx; color: #247a66; line-height: 34rpx; } +.apply-btn { + flex: 0 0 auto; + padding: 20rpx 36rpx; + border-radius: 999rpx; + border: none; + background-color: transparent; + background: linear-gradient(135deg, #1ead91 0%, #159b7e 100%); + color: #fff; + font-size: 28rpx; + font-weight: 700; + box-shadow: 0 10rpx 22rpx rgba(21,155,126,0.20); +} + +.apply-btn::after { border: none; } +.apply-btn:active { opacity: .9; } + +.apply-btn.disabled { + opacity: .5; + background: #c7e8df; + color: #fff; + box-shadow: none; + pointer-events: none; +} + @media (max-width: 375px) { .vip-summary { grid-template-columns: 1fr; diff --git a/frontend/pages/product/form.vue b/frontend/pages/product/form.vue index 65d8c64..b1a62b8 100644 --- a/frontend/pages/product/form.vue +++ b/frontend/pages/product/form.vue @@ -31,41 +31,18 @@ + + - - - - - 主单位:{{ unitLabel }} - 类别:{{ categoryLabel }} - - - 库存与安全库存 - - - - - - - + - - - 价格(进价/零售/批发/大单) - - - - - - - - + 图片 @@ -94,14 +71,11 @@ export default { return { id: '', form: { - name: '', barcode: '', brand: '', model: '', spec: '', origin: '', - categoryId: '', unitId: '', - stock: null, safeMin: null, safeMax: null, - purchasePrice: null, retailPrice: null, wholesalePrice: null, bigClientPrice: null, + name: '', barcode: '', brand: '', model: '', spec: '', + categoryId: '', images: [], remark: '', platformStatus: '', sourceSubmissionId: '' }, - units: [], categories: [], keyboardHeight: 0 } @@ -115,12 +89,7 @@ export default { this.disposeKeyboardListener() }, computed: { - unitNames() { return this.units.map(u => u.name) }, categoryNames() { return this.categories.map(c => c.name) }, - unitLabel() { - const u = this.units.find(x => String(x.id) === String(this.form.unitId)) - return u ? u.name : '选择单位' - }, categoryLabel() { const c = this.categories.find(x => String(x.id) === String(this.form.categoryId)) return c ? c.name : '选择类别' @@ -128,7 +97,7 @@ export default { }, methods: { async bootstrap() { - await Promise.all([this.fetchUnits(), this.fetchCategories()]) + await Promise.all([this.fetchCategories()]) if (this.id) this.loadDetail() }, initKeyboardListener() { @@ -147,22 +116,12 @@ export default { } } catch (_) {} }, - async fetchUnits() { - try { - const res = await get('/api/product-units') - this.units = Array.isArray(res?.list) ? res.list : (Array.isArray(res) ? res : []) - } catch (_) {} - }, async fetchCategories() { try { const res = await get('/api/product-categories') this.categories = Array.isArray(res?.list) ? res.list : (Array.isArray(res) ? res : []) } catch (_) {} }, - onPickUnit(e) { - const idx = Number(e.detail.value); const u = this.units[idx] - this.form.unitId = u ? u.id : '' - }, onPickCategory(e) { const idx = Number(e.detail.value); const c = this.categories[idx] this.form.categoryId = c ? c.id : '' @@ -193,12 +152,8 @@ export default { const data = await get('/api/products/' + this.id) Object.assign(this.form, { name: data.name, - barcode: data.barcode, brand: data.brand, model: data.model, spec: data.spec, origin: data.origin, - categoryId: data.categoryId, unitId: data.unitId, - stock: data.stock, - safeMin: data.safeMin, safeMax: data.safeMax, - purchasePrice: data.purchasePrice, retailPrice: data.retailPrice, - wholesalePrice: data.wholesalePrice, bigClientPrice: data.bigClientPrice, + barcode: data.barcode, brand: data.brand, model: data.model, spec: data.spec, + categoryId: data.categoryId, images: (data.images || []).map(i => i.url || i), remark: data.remark || '', platformStatus: data.platformStatus || '', @@ -208,21 +163,13 @@ export default { }, validate() { if (!this.form.name) { uni.showToast({ title: '请填写名称', icon: 'none' }); return false } - if (this.form.safeMin != null && this.form.safeMax != null && Number(this.form.safeMin) > Number(this.form.safeMax)) { - uni.showToast({ title: '安全库存区间不合法', icon: 'none' }); return false - } return true }, buildPayload() { const f = this.form return { - name: f.name, barcode: f.barcode, brand: f.brand, model: f.model, spec: f.spec, origin: f.origin, - categoryId: f.categoryId || null, unitId: f.unitId, - safeMin: f.safeMin, safeMax: f.safeMax, - prices: { - purchasePrice: f.purchasePrice, retailPrice: f.retailPrice, wholesalePrice: f.wholesalePrice, bigClientPrice: f.bigClientPrice - }, - stock: f.stock, + name: f.name, barcode: f.barcode, brand: f.brand, model: f.model, spec: f.spec, + categoryId: f.categoryId || null, images: f.images, remark: f.remark } @@ -236,7 +183,7 @@ export default { else await post('/api/products', payload) uni.showToast({ title: '保存成功', icon: 'success', mask: false }) if (goOn && !this.id) { - this.form = { name: '', barcode: '', brand: '', model: '', spec: '', origin: '', categoryId: '', unitId: '', stock: null, safeMin: null, safeMax: null, purchasePrice: null, retailPrice: null, wholesalePrice: null, bigClientPrice: null, images: [], remark: '', platformStatus: '', sourceSubmissionId: '' } + this.form = { name: '', barcode: '', brand: '', model: '', spec: '', categoryId: '', images: [], remark: '', platformStatus: '', sourceSubmissionId: '' } } else { setTimeout(() => uni.navigateBack(), 400) } diff --git a/frontend/pages/product/list.vue b/frontend/pages/product/list.vue index f4c8018..490c5b7 100644 --- a/frontend/pages/product/list.vue +++ b/frontend/pages/product/list.vue @@ -2,32 +2,59 @@ 全部 - 按类别 + 查询 我的提交 - - - - {{ categoryLabel }} - + + + (query.mode = ['direct','nameLike','template'][Number(e.detail.value)] || 'direct')"> + {{ modeLabel }} + + + + + + + + + {{ categoryLabel }} + + + {{ templateLabel }} + + + + + + + + + {{ displayParamEnum(p) }} + + + {{ paramValues[p.fieldKey] || ('选择' + p.fieldLabel) }} + + + + + 查询 - + - - {{ it.name }} + + {{ it.name }} + 已删除 平台推荐 我的提交 {{ it.brand || '-' }} {{ it.model || '' }} {{ it.spec || '' }} - 库存:{{ it.stock ?? 0 }} - 零售价:¥{{ (it.retailPrice ?? it.price ?? 0).toFixed(2) }} - + @@ -47,11 +74,13 @@ export default { data() { return { items: [], - query: { kw: '', page: 1, size: 20, categoryId: '' }, + query: { kw: '', page: 1, size: 20, categoryId: '', mode: 'direct', templateId: '', params: {} }, finished: false, loading: false, tab: 'all', - categories: [] + categories: [], + templates: [], + paramValues: {} } }, onLoad() { @@ -76,26 +105,59 @@ export default { categoryLabel() { const c = this.categories.find(x => String(x.id) === String(this.query.categoryId)) return c ? '类别:' + c.name : '选择类别' - } + }, + modeLabel() { + const map = { direct: '直接查询', nameLike: '名称模糊查询', template: '按模板参数查询' } + return map[this.query.mode] || '直接查询' + }, + templateNames() { return this.templates.map(t => t.name) }, + templateLabel() { + const t = this.templates.find(x => String(x.id) === String(this.query.templateId)) + return t ? '模板:' + t.name : '选择模板' + }, + selectedTemplate() { return this.templates.find(t => String(t.id) === String(this.query.templateId)) || null }, + selectedTemplateParams() { return (this.selectedTemplate && Array.isArray(this.selectedTemplate.params)) ? this.selectedTemplate.params : [] } }, methods: { switchTab(t) { this.tab = t this.query.categoryId = '' + this.query.templateId = '' + this.paramValues = {} this.reload() }, onPickCategory(e) { const idx = Number(e.detail.value) const c = this.categories[idx] this.query.categoryId = c ? c.id : '' - this.reload() + this.fetchTemplates() }, + onPickTemplate(e) { + const idx = Number(e.detail.value) + const t = this.templates[idx] + this.query.templateId = t ? t.id : '' + this.paramValues = {} + }, + onPickParamEnumWrapper(p, e) { + const idx = Number(e.detail.value) + const arr = p.enumOptions || [] + this.paramValues[p.fieldKey] = arr[idx] + }, + onParamBoolChange(p, e) { this.paramValues[p.fieldKey] = e?.detail?.value ? true : false }, + onParamDateChange(p, e) { this.paramValues[p.fieldKey] = e?.detail?.value || '' }, async fetchCategories() { try { const res = await get('/api/product-categories', {}) this.categories = Array.isArray(res?.list) ? res.list : (Array.isArray(res) ? res : []) } catch (_) {} }, + async fetchTemplates() { + try { + const res = await get('/api/product-templates', this.query.categoryId ? { categoryId: this.query.categoryId } : {}) + const list = Array.isArray(res?.list) ? res.list : (Array.isArray(res) ? res : []) + this.templates = list + } catch (_) { this.templates = [] } + }, reload() { this.items = [] this.query.page = 1 @@ -107,7 +169,16 @@ export default { this.loading = true try { const params = { kw: this.query.kw, page: this.query.page, size: this.query.size } - if (this.tab === 'category' && this.query.categoryId) params.categoryId = this.query.categoryId + if (this.tab === 'search') { + if (this.query.categoryId) params.categoryId = this.query.categoryId + if (this.query.templateId) params.templateId = this.query.templateId + if (this.paramValues && Object.keys(this.paramValues).length) { + for (const k of Object.keys(this.paramValues)) { + const v = this.paramValues[k] + if (v !== undefined && v !== null && v !== '') params['param_' + k] = v + } + } + } const res = await get('/api/products', params) const list = Array.isArray(res?.list) ? res.list : (Array.isArray(res) ? res : []) this.items = this.items.concat(list) @@ -119,13 +190,26 @@ export default { this.loading = false } }, - openForm(id) { - const url = '/pages/product/form' + (id ? ('?id=' + id) : '') - uni.navigateTo({ url }) - }, - goMySubmissions() { + openDetail(id) { + uni.navigateTo({ url: '/pages/product/product-detail?id=' + id }) + }, + goMySubmissions() { uni.navigateTo({ url: '/pages/product/submissions' }) - } + }, + async remove(it) { + try { + const r = await new Promise(resolve => { + uni.showModal({ content: '确认删除该货品?删除后可在后台恢复', success: resolve }) + }) + if (!r || !r.confirm) return + const { del } = require('../../common/http.js') + await del('/api/products/' + it.id) + uni.showToast({ title: '已删除', icon: 'success' }) + this.reload() + } catch (e) { + uni.showToast({ title: '删除失败', icon: 'none' }) + } + } } } @@ -139,6 +223,9 @@ export default { .search { display:flex; gap: 12rpx; padding: 16rpx; background:$uni-bg-color-grey; align-items: center; } .search input { flex:1; background:$uni-bg-color-hover; border-radius: 12rpx; padding: 12rpx; color: $uni-text-color; } .picker { padding: 8rpx 12rpx; background:$uni-bg-color-hover; border-radius: 10rpx; color:$uni-text-color-grey; } +.template-mode { flex-direction: column; align-items: stretch; gap: 8rpx; } +.picker-row { display:flex; gap: 12rpx; } +.params-wrap { margin-top: 6rpx; background:$uni-bg-color-grey; border-radius: 12rpx; padding: 8rpx 8rpx; } .list { flex:1; } .item { display:flex; padding: 20rpx; background:$uni-bg-color-grey; border-bottom: 1rpx solid $uni-border-color; } .thumb { width: 120rpx; height: 120rpx; border-radius: 12rpx; margin-right: 16rpx; background:$uni-bg-color-hover; } @@ -146,6 +233,7 @@ export default { .name { color:$uni-text-color; margin-bottom: 6rpx; font-weight: 600; display:flex; align-items:center; gap: 12rpx; } .tag-platform { font-size: 22rpx; color:#fff; background:#2d8cf0; padding: 4rpx 10rpx; border-radius: 8rpx; } .tag-custom { font-size: 22rpx; color:#fff; background:#67c23a; padding: 4rpx 10rpx; border-radius: 8rpx; } +.tag-deleted { font-size: 22rpx; color:#fff; background:#909399; padding: 4rpx 10rpx; border-radius: 8rpx; } .meta { color:$uni-text-color-grey; font-size: 24rpx; } .price { margin-left: 20rpx; color:$uni-color-primary; } .empty { height: 60vh; display:flex; align-items:center; justify-content:center; color:$uni-text-color-grey; } diff --git a/frontend/pages/product/product-detail.vue b/frontend/pages/product/product-detail.vue new file mode 100644 index 0000000..01cbcd6 --- /dev/null +++ b/frontend/pages/product/product-detail.vue @@ -0,0 +1,142 @@ + + + + {{ detail.model }} + 已删除 + + + + 名称{{ detail.name || '-' }} + 品牌{{ detail.brand || '-' }} + 型号{{ detail.model || '-' }} + 条码{{ detail.barcode || '-' }} + 类别{{ categoryName }} + 模板{{ templateName }} + 编号{{ detail.externalCode }} + + + + 参数 + + + {{ item.label }}({{ item.unit }}) + {{ item.value }} + + + 未填写参数 + + + + 图片 + + + + 未上传图片 + + + + 备注 + {{ detail.remark || '无' }} + + + + 返回 + 删除 + + + 加载中... + + + + + + diff --git a/frontend/pages/product/submission-detail.vue b/frontend/pages/product/submission-detail.vue index ab33307..72bc82d 100644 --- a/frontend/pages/product/submission-detail.vue +++ b/frontend/pages/product/submission-detail.vue @@ -9,18 +9,17 @@ 名称{{ detail.name || '-' }} 品牌{{ detail.brand || '-' }} 规格{{ detail.spec || '-' }} - 产地{{ detail.origin || '-' }} 条码{{ detail.barcode || '-' }} - 单位{{ unitName }} 类别{{ categoryName }} - 安全库存{{ stockRange }} + 模板{{ templateName }} + 参数 - - - {{ item.key }} + + + {{ item.label }} {{ item.value }} @@ -63,7 +62,8 @@ export default { id: '', detail: null, unitName: '-', - categoryName: '-' + categoryName: '-', + templateName: '-' } }, async onLoad(query) { @@ -79,8 +79,9 @@ export default { try { const data = await get(`/api/products/submissions/${this.id}`) this.detail = data - this.unitName = this.unitLookup(data.unitId) + // 单位已移除 this.categoryName = this.categoryLookup(data.categoryId) + this.templateName = this.templateLookup(data.templateId) } catch (e) { const msg = e?.message || '加载失败' uni.showToast({ title: msg, icon: 'none' }) @@ -96,11 +97,7 @@ export default { if (s === 'rejected') return 'rejected' return 'pending' }, - parameterPairs() { - const params = this.detail?.parameters - if (!params || typeof params !== 'object') return [] - return Object.keys(params).map(k => ({ key: k, value: params[k] })) - }, + preview(idx) { if (!this.detail?.images || !this.detail.images.length) return uni.previewImage({ urls: this.detail.images, current: idx }) @@ -120,7 +117,7 @@ export default { }, unitLookup(id) { try { - const list = uni.getStorageSync('CACHE_UNITS') || [] + const list = [] const found = list.find(x => String(x.id) === String(id)) return found ? found.name : '-' } catch (_) { return '-' } @@ -132,6 +129,13 @@ export default { return found ? found.name : '-' } catch (_) { return '-' } }, + templateLookup(id) { + try { + const list = uni.getStorageSync('CACHE_TEMPLATES') || [] + const found = list.find(x => String(x.id) === String(id)) + return found ? found.name : '-' + } catch (_) { return '-' } + }, back() { uni.navigateBack({ delta: 1 }) }, @@ -160,6 +164,20 @@ export default { if (min != null && max != null) return `${min} ~ ${max}` if (min != null) return `≥ ${min}` return `≤ ${max}` + }, + labeledPairs() { + const params = this.detail?.parameters + if (!params || typeof params !== 'object') return [] + // 从缓存模板中读取 label + let labelMap = {} + try { + const templates = uni.getStorageSync('CACHE_TEMPLATES') || [] + const tpl = templates.find(t => String(t.id) === String(this.detail?.templateId)) + if (tpl && Array.isArray(tpl.params)) { + for (const p of tpl.params) labelMap[p.fieldKey] = p.fieldLabel + } + } catch (_) {} + return Object.keys(params).map(k => ({ key: k, label: labelMap[k] || k, value: params[k] })) } } } diff --git a/frontend/pages/product/submissions.vue b/frontend/pages/product/submissions.vue index 96601ce..e6ed4b0 100644 --- a/frontend/pages/product/submissions.vue +++ b/frontend/pages/product/submissions.vue @@ -68,9 +68,10 @@ export default { methods: { async preloadDictionaries() { try { - const [units, categories] = await Promise.all([ + const [units, categories, templates] = await Promise.all([ this.cacheUnitsLoaded ? Promise.resolve(null) : get('/api/product-units'), - this.cacheCategoriesLoaded ? Promise.resolve(null) : get('/api/product-categories') + this.cacheCategoriesLoaded ? Promise.resolve(null) : get('/api/product-categories'), + get('/api/product-templates') ]) if (units) { const list = Array.isArray(units?.list) ? units.list : (Array.isArray(units) ? units : []) @@ -82,6 +83,10 @@ export default { uni.setStorageSync('CACHE_CATEGORIES', list) this.cacheCategoriesLoaded = true } + if (templates) { + const list = Array.isArray(templates?.list) ? templates.list : (Array.isArray(templates) ? templates : []) + uni.setStorageSync('CACHE_TEMPLATES', list) + } } catch (_) { // 忽略缓存失败 } diff --git a/frontend/pages/product/submit.vue b/frontend/pages/product/submit.vue index 1838e91..d67abbd 100644 --- a/frontend/pages/product/submit.vue +++ b/frontend/pages/product/submit.vue @@ -32,6 +32,13 @@ + + + 编号 + + + + 模板 @@ -43,6 +50,42 @@ + + + + 参数 + + + + + {{ p.fieldLabel }}({{ p.unit }})* + + + + + + + + + (paramValues[p.fieldKey]=e.detail.value)" /> + + + + {{ displayEnum(p) }} + + + + + {{ paramValues[p.fieldKey] || ('选择' + p.fieldLabel) }} + + + + + + + + + 图片 @@ -91,6 +134,7 @@ export default { categoryId: '', templateId: '', + externalCode: '', parameters: {}, images: [], remark: '', @@ -172,11 +216,18 @@ export default { this.form.templateId = t ? t.id : '' this.paramValues = {} }, + onPickDate(p, e) { + this.paramValues[p.fieldKey] = e?.detail?.value || '' + }, onPickEnum(p, e) { const idx = Number(e.detail.value) const arr = p.enumOptions || [] this.paramValues[p.fieldKey] = arr[idx] }, + displayEnum(p) { + const v = this.paramValues[p.fieldKey] + return (v === undefined || v === null || v === '') ? ('选择' + p.fieldLabel) : String(v) + }, async scanBarcode() { try { const chooseRes = await uni.chooseImage({ count: 1, sourceType: ['camera','album'], sizeType: ['compressed'] }) @@ -253,6 +304,7 @@ export default { model: this.form.model, brand: this.form.brand, barcode: this.form.barcode, + externalCode: this.form.externalCode || null, categoryId: this.form.categoryId || null, templateId: this.form.templateId || null, parameters: paramsForSubmit, diff --git a/frontend/static/icons/undraw_visual-data_1eya.png b/frontend/static/icons/undraw_visual-data_1eya.png new file mode 100644 index 0000000..eecc141 Binary files /dev/null and b/frontend/static/icons/undraw_visual-data_1eya.png differ diff --git a/frontend/static/icons/配件审核_1758986693151.xlsx b/frontend/static/icons/配件审核_1758986693151.xlsx new file mode 100644 index 0000000..91d534b Binary files /dev/null and b/frontend/static/icons/配件审核_1758986693151.xlsx differ diff --git a/frontend/static/icons/配件审核_1758987353730.xlsx b/frontend/static/icons/配件审核_1758987353730.xlsx new file mode 100644 index 0000000..b421396 Binary files /dev/null and b/frontend/static/icons/配件审核_1758987353730.xlsx differ diff --git a/frontend/uni.scss b/frontend/uni.scss index 08eecc1..87d3ea9 100644 --- a/frontend/uni.scss +++ b/frontend/uni.scss @@ -74,3 +74,9 @@ $uni-color-subtitle: #555555; // 二级标题颜色 $uni-font-size-subtitle:26px; $uni-color-paragraph: #3F536E; // 文章段落颜色 $uni-font-size-paragraph:15px; + +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +$app-form-control-height: 76rpx; // 控件总高度(含边框) +$app-form-control-padding-x: 20rpx; // 水平方向内边距 +$app-form-control-border-width: 2rpx; // 边框宽度 +$app-form-control-border-radius: 12rpx; // 圆角半径 diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map index ed31365..8658281 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map @@ -1 +1 @@ -{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["\"D:\\wx\\PartsInquiry\\frontend\\static\\icons\\icons8-account-male-100.png\"\r\n\r\n\r\n","import App from './App'\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\nApp.mpType = 'app'\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n return {\r\n app\r\n }\r\n}\r\n// #endif\r\n\r\n// 规范化 WebSocket 关闭码(仅微信小程序)\r\n// #ifdef MP-WEIXIN\r\nif (typeof uni !== 'undefined' && typeof uni.connectSocket === 'function') {\r\n const _connectSocket = uni.connectSocket\r\n uni.connectSocket = function(options) {\r\n const task = _connectSocket.call(this, options)\r\n if (task && typeof task.close === 'function') {\r\n const _close = task.close\r\n task.close = function(params = {}) {\r\n if (params && typeof params === 'object') {\r\n const codeNum = Number(params.code)\r\n const isValid = codeNum === 1000 || (codeNum >= 3000 && codeNum <= 4999)\r\n if (!isValid) {\r\n params.code = 1000\r\n if (!params.reason) params.reason = 'normalized from invalid close code'\r\n }\r\n }\r\n return _close.call(this, params)\r\n }\r\n }\r\n return task\r\n }\r\n}\r\n// #endif\r\n\r\n// 全局安全返回:首屏无法后退时自动回到首页 tab(微信小程序)\r\n// #ifdef MP-WEIXIN\r\nif (typeof uni !== 'undefined' && typeof uni.navigateBack === 'function') {\r\n const _navigateBack = uni.navigateBack\r\n uni.navigateBack = function(params = {}) {\r\n try {\r\n const pages = typeof getCurrentPages === 'function' ? getCurrentPages() : []\r\n const maxDelta = pages.length > 0 ? (pages.length - 1) : 0\r\n const d = Number(params.delta || 1)\r\n if (maxDelta >= 1 && d <= maxDelta) {\r\n return _navigateBack.call(this, params)\r\n }\r\n return uni.switchTab({ url: '/pages/index/index' })\r\n } catch (e) {\r\n return uni.switchTab({ url: '/pages/index/index' })\r\n }\r\n }\r\n}\r\n// #endif"],"names":["uni","createSSRApp","App"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACC,MAAK,YAAU;AAAA,EACd,UAAU,WAAW;AACpBA,kBAAAA,MAAA,MAAA,OAAA,gBAAY,YAAY;AAAA,EACxB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,gBAAA,UAAU;AAAA,EACtB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,EACvB;AACD;ACIM,SAAS,YAAY;AAC1B,QAAM,MAAMC,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;AAKA,IAAI,OAAOF,cAAG,UAAK,eAAe,OAAOA,cAAAA,MAAI,kBAAkB,YAAY;AACzE,QAAM,iBAAiBA,cAAAA,MAAI;AAC3BA,sBAAI,gBAAgB,SAAS,SAAS;AACpC,UAAM,OAAO,eAAe,KAAK,MAAM,OAAO;AAC9C,QAAI,QAAQ,OAAO,KAAK,UAAU,YAAY;AAC5C,YAAM,SAAS,KAAK;AACpB,WAAK,QAAQ,SAAS,SAAS,IAAI;AACjC,YAAI,UAAU,OAAO,WAAW,UAAU;AACxC,gBAAM,UAAU,OAAO,OAAO,IAAI;AAClC,gBAAM,UAAU,YAAY,OAAS,WAAW,OAAQ,WAAW;AACnE,cAAI,CAAC,SAAS;AACZ,mBAAO,OAAO;AACd,gBAAI,CAAC,OAAO;AAAQ,qBAAO,SAAS;AAAA,UACrC;AAAA,QACF;AACD,eAAO,OAAO,KAAK,MAAM,MAAM;AAAA,MAChC;AAAA,IACF;AACD,WAAO;AAAA,EACR;AACH;AAKA,IAAI,OAAOA,cAAG,UAAK,eAAe,OAAOA,cAAAA,MAAI,iBAAiB,YAAY;AACxE,QAAM,gBAAgBA,cAAAA,MAAI;AAC1BA,gBAAAA,MAAI,eAAe,SAAS,SAAS,IAAI;AACvC,QAAI;AACF,YAAM,QAAQ,OAAO,oBAAoB,aAAa,gBAAiB,IAAG,CAAE;AAC5E,YAAM,WAAW,MAAM,SAAS,IAAK,MAAM,SAAS,IAAK;AACzD,YAAM,IAAI,OAAO,OAAO,SAAS,CAAC;AAClC,UAAI,YAAY,KAAK,KAAK,UAAU;AAClC,eAAO,cAAc,KAAK,MAAM,MAAM;AAAA,MACvC;AACD,aAAOA,cAAG,MAAC,UAAU,EAAE,KAAK,qBAAoB,CAAE;AAAA,IACnD,SAAQ,GAAG;AACV,aAAOA,cAAG,MAAC,UAAU,EAAE,KAAK,qBAAoB,CAAE;AAAA,IACnD;AAAA,EACF;AACH;;;"} \ No newline at end of file +{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["\"D:\\wx\\PartsInquiry\\frontend\\static\\icons\\icons8-account-male-100.png\"\r\n\r\n\r\n","import App from './App'\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\nApp.mpType = 'app'\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n return {\r\n app\r\n }\r\n}\r\n// #endif\r\n\r\n// 规范化 WebSocket 关闭码(仅微信小程序)\r\n// #ifdef MP-WEIXIN\r\nif (typeof uni !== 'undefined' && typeof uni.connectSocket === 'function') {\r\n const _connectSocket = uni.connectSocket\r\n uni.connectSocket = function(options) {\r\n const task = _connectSocket.call(this, options)\r\n if (task && typeof task.close === 'function') {\r\n const _close = task.close\r\n task.close = function(params = {}) {\r\n if (params && typeof params === 'object') {\r\n const codeNum = Number(params.code)\r\n const isValid = codeNum === 1000 || (codeNum >= 3000 && codeNum <= 4999)\r\n if (!isValid) {\r\n params.code = 1000\r\n if (!params.reason) params.reason = 'normalized from invalid close code'\r\n }\r\n }\r\n return _close.call(this, params)\r\n }\r\n }\r\n return task\r\n }\r\n}\r\n// #endif\r\n\r\n// 全局安全返回:首屏无法后退时自动回到首页 tab(微信小程序)\r\n// #ifdef MP-WEIXIN\r\nif (typeof uni !== 'undefined' && typeof uni.navigateBack === 'function') {\r\n const _navigateBack = uni.navigateBack\r\n uni.navigateBack = function(params = {}) {\r\n try {\r\n const pages = typeof getCurrentPages === 'function' ? getCurrentPages() : []\r\n const maxDelta = pages.length > 0 ? (pages.length - 1) : 0\r\n const d = Number(params.delta || 1)\r\n if (maxDelta >= 1 && d <= maxDelta) {\r\n return _navigateBack.call(this, params)\r\n }\r\n return uni.switchTab({ url: '/pages/index/index' })\r\n } catch (e) {\r\n return uni.switchTab({ url: '/pages/index/index' })\r\n }\r\n }\r\n}\r\n// #endif"],"names":["uni","createSSRApp","App"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACC,MAAK,YAAU;AAAA,EACd,UAAU,WAAW;AACpBA,kBAAAA,MAAA,MAAA,OAAA,gBAAY,YAAY;AAAA,EACxB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,gBAAA,UAAU;AAAA,EACtB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,EACvB;AACD;ACIM,SAAS,YAAY;AAC1B,QAAM,MAAMC,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;AAKA,IAAI,OAAOF,cAAG,UAAK,eAAe,OAAOA,cAAAA,MAAI,kBAAkB,YAAY;AACzE,QAAM,iBAAiBA,cAAAA,MAAI;AAC3BA,sBAAI,gBAAgB,SAAS,SAAS;AACpC,UAAM,OAAO,eAAe,KAAK,MAAM,OAAO;AAC9C,QAAI,QAAQ,OAAO,KAAK,UAAU,YAAY;AAC5C,YAAM,SAAS,KAAK;AACpB,WAAK,QAAQ,SAAS,SAAS,IAAI;AACjC,YAAI,UAAU,OAAO,WAAW,UAAU;AACxC,gBAAM,UAAU,OAAO,OAAO,IAAI;AAClC,gBAAM,UAAU,YAAY,OAAS,WAAW,OAAQ,WAAW;AACnE,cAAI,CAAC,SAAS;AACZ,mBAAO,OAAO;AACd,gBAAI,CAAC,OAAO;AAAQ,qBAAO,SAAS;AAAA,UACrC;AAAA,QACF;AACD,eAAO,OAAO,KAAK,MAAM,MAAM;AAAA,MAChC;AAAA,IACF;AACD,WAAO;AAAA,EACR;AACH;AAKA,IAAI,OAAOA,cAAG,UAAK,eAAe,OAAOA,cAAAA,MAAI,iBAAiB,YAAY;AACxE,QAAM,gBAAgBA,cAAAA,MAAI;AAC1BA,gBAAAA,MAAI,eAAe,SAAS,SAAS,IAAI;AACvC,QAAI;AACF,YAAM,QAAQ,OAAO,oBAAoB,aAAa,gBAAiB,IAAG,CAAE;AAC5E,YAAM,WAAW,MAAM,SAAS,IAAK,MAAM,SAAS,IAAK;AACzD,YAAM,IAAI,OAAO,OAAO,SAAS,CAAC;AAClC,UAAI,YAAY,KAAK,KAAK,UAAU;AAClC,eAAO,cAAc,KAAK,MAAM,MAAM;AAAA,MACvC;AACD,aAAOA,cAAG,MAAC,UAAU,EAAE,KAAK,qBAAoB,CAAE;AAAA,IACnD,SAAQ,GAAG;AACV,aAAOA,cAAG,MAAC,UAAU,EAAE,KAAK,qBAAoB,CAAE;AAAA,IACnD;AAAA,EACF;AACH;;;"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/config.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/config.js.map index 49ccd15..f175bd9 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/config.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/config.js.map @@ -1 +1 @@ -{"version":3,"file":"config.js","sources":["common/config.js"],"sourcesContent":["// 统一配置:禁止在业务代码中硬编码\n// 优先级:环境变量(Vite/HBuilderX 构建注入) > 本地存储 > 默认值\n\nconst envBaseUrl = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_API_BASE_URL || process.env.API_BASE_URL)) || '';\nconst storageBaseUrl = typeof uni !== 'undefined' ? (uni.getStorageSync('API_BASE_URL') || '') : '';\nconst fallbackBaseUrl = 'http://127.0.0.1:8080';\n\nexport const API_BASE_URL = (envBaseUrl || storageBaseUrl || fallbackBaseUrl).replace(/\\/$/, '');\n\n// 多地址候选(按优先级顺序,自动去重与去尾斜杠)\nconst candidateBases = [envBaseUrl, storageBaseUrl, fallbackBaseUrl, 'http://127.0.0.1:8080', 'http://localhost:8080'];\nexport const API_BASE_URL_CANDIDATES = Array.from(new Set(candidateBases.filter(Boolean))).map(u => String(u).replace(/\\/$/, ''));\n\nconst envShopId = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_SHOP_ID || process.env.SHOP_ID)) || '';\nconst storageShopId = typeof uni !== 'undefined' ? (uni.getStorageSync('SHOP_ID') || '') : '';\nexport const SHOP_ID = Number(envShopId || storageShopId || 1);\n\n\n// 默认用户(可移除):\n// - 用途:开发/演示环境,自动将用户固定为“张老板”(id=2)\n// - 开关优先级:环境变量 > 本地存储 > 默认值\n// - 生产默认关闭(false);开发可通过本地存储或环境变量开启\nconst envEnableDefaultUser = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_ENABLE_DEFAULT_USER || process.env.ENABLE_DEFAULT_USER)) || '';\nconst storageEnableDefaultUser = typeof uni !== 'undefined' ? (uni.getStorageSync('ENABLE_DEFAULT_USER') || '') : '';\nexport const ENABLE_DEFAULT_USER = String(envEnableDefaultUser || storageEnableDefaultUser || 'false').toLowerCase() === 'true';\n\nconst envDefaultUserId = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_DEFAULT_USER_ID || process.env.DEFAULT_USER_ID)) || '';\nconst storageDefaultUserId = typeof uni !== 'undefined' ? (uni.getStorageSync('DEFAULT_USER_ID') || '') : '';\nexport const DEFAULT_USER_ID = Number(envDefaultUserId || storageDefaultUserId || 0);\n\n\n// 会员价格(单位:元/月):环境 > 本地存储 > 默认值\nconst envVipPrice = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_VIP_PRICE || process.env.VIP_PRICE)) || '';\nconst storageVipPrice = typeof uni !== 'undefined' ? (uni.getStorageSync('VIP_PRICE') || '') : '';\nexport const VIP_PRICE_PER_MONTH = Number(envVipPrice || storageVipPrice || 15);\n\n\n// 首页横幅图片(公告上方),避免硬编码\n// 优先级:环境变量 > 本地存储 > 默认值(放置于 /static/icons/ 下)\nconst envHomeBanner = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_HOME_BANNER_IMG || process.env.HOME_BANNER_IMG)) || '';\nconst storageHomeBanner = typeof uni !== 'undefined' ? (uni.getStorageSync('HOME_BANNER_IMG') || '') : '';\nexport const HOME_BANNER_IMG = String(envHomeBanner || storageHomeBanner || '/static/icons/home-banner.png');\n\n// KPI 图标(可按需覆盖),避免在页面里硬编码\nexport const KPI_ICONS = {\n todaySales: '/static/icons/webwxgetmsgimg.jpg',\n monthSales: '/static/icons/webwxgetmsgimg.jpg',\n monthProfit: '/static/icons/icons8-profit-50.png',\n stockCount: '/static/icons/product.png'\n}\n\n"],"names":["uni"],"mappings":";;AAGA,MAAM,aAAc,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,yBAAyB,QAAQ,IAAI,iBAAkB;AACzI,MAAM,iBAAiB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,cAAc,KAAK,KAAM;AACjG,MAAM,kBAAkB;AAEZ,MAAC,gBAAgB,cAAc,kBAAkB,iBAAiB,QAAQ,OAAO,EAAE;AAG/F,MAAM,iBAAiB,CAAC,YAAY,gBAAgB,iBAAiB,yBAAyB,uBAAuB;AACzG,MAAC,0BAA0B,MAAM,KAAK,IAAI,IAAI,eAAe,OAAO,OAAO,CAAC,CAAC,EAAE,IAAI,OAAK,OAAO,CAAC,EAAE,QAAQ,OAAO,EAAE,CAAC;AAEhI,MAAM,YAAa,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,oBAAoB,QAAQ,IAAI,YAAa;AAC9H,MAAM,gBAAgB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,SAAS,KAAK,KAAM;AAC/E,MAAC,UAAU,OAAO,aAAa,iBAAiB,CAAC;AAO7D,MAAM,uBAAwB,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,gCAAgC,QAAQ,IAAI,wBAAyB;AACjK,MAAM,2BAA2B,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,qBAAqB,KAAK,KAAM;AACtG,MAAC,sBAAsB,OAAO,wBAAwB,4BAA4B,OAAO,EAAE,YAAW,MAAO;AAEzH,MAAM,mBAAoB,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,4BAA4B,QAAQ,IAAI,oBAAqB;AACrJ,MAAM,uBAAuB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,iBAAiB,KAAK,KAAM;AAC9F,MAAC,kBAAkB,OAAO,oBAAoB,wBAAwB,CAAC;AAI9D,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,sBAAsB,QAAQ,IAAI,cAAe;AAC5G,OAAOA,cAAG,UAAK,cAAeA,cAAG,MAAC,eAAe,WAAW,KAAK,KAAM;AAMxE,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,4BAA4B,QAAQ,IAAI,oBAAqB;AACxH,OAAOA,cAAG,UAAK,cAAeA,cAAG,MAAC,eAAe,iBAAiB,KAAK,KAAM;AAI3F,MAAC,YAAY;AAAA,EACrB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,YAAY;AAChB;;;;;;;"} \ No newline at end of file +{"version":3,"file":"config.js","sources":["common/config.js"],"sourcesContent":["// 统一配置:禁止在业务代码中硬编码\n// 优先级:环境变量(Vite/HBuilderX 构建注入) > 本地存储 > 默认值\n\nconst envBaseUrl = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_API_BASE_URL || process.env.API_BASE_URL)) || '';\nconst storageBaseUrl = typeof uni !== 'undefined' ? (uni.getStorageSync('API_BASE_URL') || '') : '';\nconst fallbackBaseUrl = 'http://127.0.0.1:8080';\n\nexport const API_BASE_URL = (envBaseUrl || storageBaseUrl || fallbackBaseUrl).replace(/\\/$/, '');\n\n// 多地址候选(按优先级顺序,自动去重与去尾斜杠)\nconst candidateBases = [envBaseUrl, storageBaseUrl, fallbackBaseUrl, 'http://127.0.0.1:8080', 'http://localhost:8080'];\nexport const API_BASE_URL_CANDIDATES = Array.from(new Set(candidateBases.filter(Boolean))).map(u => String(u).replace(/\\/$/, ''));\n\nconst envShopId = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_SHOP_ID || process.env.SHOP_ID)) || '';\nconst storageShopId = typeof uni !== 'undefined' ? (uni.getStorageSync('SHOP_ID') || '') : '';\nexport const SHOP_ID = Number(envShopId || storageShopId || 1);\n\n\n// 默认用户(可移除):\n// - 用途:开发/演示环境,自动将用户固定为“张老板”(id=2)\n// - 开关优先级:环境变量 > 本地存储 > 默认值\n// - 生产默认关闭(false);开发可通过本地存储或环境变量开启\nconst envEnableDefaultUser = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_ENABLE_DEFAULT_USER || process.env.ENABLE_DEFAULT_USER)) || '';\nconst storageEnableDefaultUser = typeof uni !== 'undefined' ? (uni.getStorageSync('ENABLE_DEFAULT_USER') || '') : '';\nexport const ENABLE_DEFAULT_USER = String(envEnableDefaultUser || storageEnableDefaultUser || 'false').toLowerCase() === 'true';\n\nconst envDefaultUserId = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_DEFAULT_USER_ID || process.env.DEFAULT_USER_ID)) || '';\nconst storageDefaultUserId = typeof uni !== 'undefined' ? (uni.getStorageSync('DEFAULT_USER_ID') || '') : '';\nexport const DEFAULT_USER_ID = Number(envDefaultUserId || storageDefaultUserId || 0);\n\n\n// 会员价格(单位:元/月):环境 > 本地存储 > 默认值\nconst envVipPrice = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_VIP_PRICE || process.env.VIP_PRICE)) || '';\nconst storageVipPrice = typeof uni !== 'undefined' ? (uni.getStorageSync('VIP_PRICE') || '') : '';\nexport const VIP_PRICE_PER_MONTH = Number(envVipPrice || storageVipPrice || 15);\n\n\n// 首页横幅图片(公告上方),避免硬编码\n// 优先级:环境变量 > 本地存储 > 默认值(放置于 /static/icons/ 下)\nconst envHomeBanner = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_HOME_BANNER_IMG || process.env.HOME_BANNER_IMG)) || '';\nconst storageHomeBanner = typeof uni !== 'undefined' ? (uni.getStorageSync('HOME_BANNER_IMG') || '') : '';\nexport const HOME_BANNER_IMG = String(envHomeBanner || storageHomeBanner || '/static/icons/home-banner.png');\n\n// KPI 图标(可按需覆盖),避免在页面里硬编码\nexport const KPI_ICONS = {\n todaySales: '/static/icons/webwxgetmsgimg.jpg',\n monthSales: '/static/icons/webwxgetmsgimg.jpg',\n monthProfit: '/static/icons/icons8-profit-50.png',\n stockCount: '/static/icons/product.png'\n}\n\n// 登录页顶部图片,避免在页面硬编码,允许通过环境变量或本地存储覆盖\nconst envAuthLoginImg = (typeof process !== 'undefined' && process.env && (process.env.VITE_APP_AUTH_LOGIN_TOP_IMAGE || process.env.AUTH_LOGIN_TOP_IMAGE)) || '';\nconst storageAuthLoginImg = typeof uni !== 'undefined' ? (uni.getStorageSync('AUTH_LOGIN_TOP_IMAGE') || '') : '';\nexport const AUTH_LOGIN_TOP_IMAGE = String(envAuthLoginImg || storageAuthLoginImg || '/static/icons/undraw_visual-data_1eya.png');\n\n"],"names":["uni"],"mappings":";;AAGA,MAAM,aAAc,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,yBAAyB,QAAQ,IAAI,iBAAkB;AACzI,MAAM,iBAAiB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,cAAc,KAAK,KAAM;AACjG,MAAM,kBAAkB;AAEZ,MAAC,gBAAgB,cAAc,kBAAkB,iBAAiB,QAAQ,OAAO,EAAE;AAG/F,MAAM,iBAAiB,CAAC,YAAY,gBAAgB,iBAAiB,yBAAyB,uBAAuB;AACzG,MAAC,0BAA0B,MAAM,KAAK,IAAI,IAAI,eAAe,OAAO,OAAO,CAAC,CAAC,EAAE,IAAI,OAAK,OAAO,CAAC,EAAE,QAAQ,OAAO,EAAE,CAAC;AAEhI,MAAM,YAAa,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,oBAAoB,QAAQ,IAAI,YAAa;AAC9H,MAAM,gBAAgB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,SAAS,KAAK,KAAM;AAC/E,MAAC,UAAU,OAAO,aAAa,iBAAiB,CAAC;AAO7D,MAAM,uBAAwB,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,gCAAgC,QAAQ,IAAI,wBAAyB;AACjK,MAAM,2BAA2B,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,qBAAqB,KAAK,KAAM;AACtG,MAAC,sBAAsB,OAAO,wBAAwB,4BAA4B,OAAO,EAAE,YAAW,MAAO;AAEzH,MAAM,mBAAoB,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,4BAA4B,QAAQ,IAAI,oBAAqB;AACrJ,MAAM,uBAAuB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,iBAAiB,KAAK,KAAM;AAC9F,MAAC,kBAAkB,OAAO,oBAAoB,wBAAwB,CAAC;AAI9D,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,sBAAsB,QAAQ,IAAI,cAAe;AAC5G,OAAOA,cAAG,UAAK,cAAeA,cAAG,MAAC,eAAe,WAAW,KAAK,KAAM;AAMxE,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,4BAA4B,QAAQ,IAAI,oBAAqB;AACxH,OAAOA,cAAG,UAAK,cAAeA,cAAG,MAAC,eAAe,iBAAiB,KAAK,KAAM;AAI3F,MAAC,YAAY;AAAA,EACrB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,YAAY;AAChB;AAGA,MAAM,kBAAmB,OAAO,YAAY,eAAe,QAAQ,QAAQ,QAAQ,IAAI,iCAAiC,QAAQ,IAAI,yBAA0B;AAC9J,MAAM,sBAAsB,OAAOA,cAAG,UAAK,cAAeA,cAAAA,MAAI,eAAe,sBAAsB,KAAK,KAAM;AAClG,MAAC,uBAAuB,OAAO,mBAAmB,uBAAuB,2CAA2C;;;;;;;;"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/constants.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/constants.js.map index 2232667..87e94d3 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/constants.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/common/constants.js.map @@ -1 +1 @@ -{"version":3,"file":"constants.js","sources":["common/constants.js"],"sourcesContent":["// 统一常量配置:其他收入/支出分类,禁止在业务中硬编码\r\nexport const INCOME_CATEGORIES = [\r\n\t{ key: 'sale_income', label: '销售收入' },\r\n\t{ key: 'operation_income', label: '经营所得' },\r\n\t{ key: 'interest_income', label: '利息收入' },\r\n\t{ key: 'investment_income', label: '投资收入' },\r\n\t{ key: 'other_income', label: '其它收入' }\r\n]\r\n\r\nexport const EXPENSE_CATEGORIES = [\r\n\t{ key: 'operation_expense', label: '经营支出' },\r\n\t{ key: 'office_supplies', label: '办公用品' },\r\n\t{ key: 'rent', label: '房租' },\r\n\t{ key: 'interest_expense', label: '利息支出' },\r\n\t{ key: 'other_expense', label: '其它支出' }\r\n]\r\n\r\n// 路由常量(集中管理页面路径,避免在业务中硬编码)\r\nexport const ROUTES = {\r\n\thome: '/pages/index/index',\r\n\tproductList: '/pages/product/list',\r\n\tproductForm: '/pages/product/form',\r\n\tproductSelect: '/pages/product/select',\r\n\tproductSettings: '/pages/product/settings',\r\n\torderCreate: '/pages/order/create',\r\n\tdetail: '/pages/detail/index',\r\n\tmy: '/pages/my/index',\r\n\tmyAbout: '/pages/my/about',\r\n\tmyVip: '/pages/my/vip',\r\n\treport: '/pages/report/index',\r\n\tcustomerSelect: '/pages/customer/select',\r\n\tsupplierSelect: '/pages/supplier/select',\r\n\taccountSelect: '/pages/account/select'\r\n}\r\n\r\n\r\n// 本地存储键:统一管理,避免在业务中散落硬编码\r\nexport const STORAGE_KEYS = {\r\n\tVIP_IS_VIP: 'USER_VIP_IS_VIP',\r\n\tVIP_START: 'USER_VIP_START',\r\n\tVIP_END: 'USER_VIP_END'\r\n}\r\n\r\n\r\n"],"names":[],"mappings":";AACY,MAAC,oBAAoB;AAAA,EAChC,EAAE,KAAK,eAAe,OAAO,OAAQ;AAAA,EACrC,EAAE,KAAK,oBAAoB,OAAO,OAAQ;AAAA,EAC1C,EAAE,KAAK,mBAAmB,OAAO,OAAQ;AAAA,EACzC,EAAE,KAAK,qBAAqB,OAAO,OAAQ;AAAA,EAC3C,EAAE,KAAK,gBAAgB,OAAO,OAAQ;AACvC;AAEY,MAAC,qBAAqB;AAAA,EACjC,EAAE,KAAK,qBAAqB,OAAO,OAAQ;AAAA,EAC3C,EAAE,KAAK,mBAAmB,OAAO,OAAQ;AAAA,EACzC,EAAE,KAAK,QAAQ,OAAO,KAAM;AAAA,EAC5B,EAAE,KAAK,oBAAoB,OAAO,OAAQ;AAAA,EAC1C,EAAE,KAAK,iBAAiB,OAAO,OAAQ;AACxC;AAGY,MAAC,SAAS;AAAA,EACrB,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,eAAe;AAChB;;;;"} \ No newline at end of file +{"version":3,"file":"constants.js","sources":["common/constants.js"],"sourcesContent":["// 统一常量配置:其他收入/支出分类,禁止在业务中硬编码\nexport const INCOME_CATEGORIES = [\n\t{ key: 'sale_income', label: '销售收入' },\n\t{ key: 'operation_income', label: '经营所得' },\n\t{ key: 'interest_income', label: '利息收入' },\n\t{ key: 'investment_income', label: '投资收入' },\n\t{ key: 'other_income', label: '其它收入' }\n]\n\nexport const EXPENSE_CATEGORIES = [\n\t{ key: 'operation_expense', label: '经营支出' },\n\t{ key: 'office_supplies', label: '办公用品' },\n\t{ key: 'rent', label: '房租' },\n\t{ key: 'interest_expense', label: '利息支出' },\n\t{ key: 'other_expense', label: '其它支出' }\n]\n\n// 路由常量(集中管理页面路径,避免在业务中硬编码)\nexport const ROUTES = {\n\thome: '/pages/index/index',\n\tproductList: '/pages/product/list',\n\tproductForm: '/pages/product/form',\n\tproductSelect: '/pages/product/select',\n\tproductSettings: '/pages/product/settings',\n\torderCreate: '/pages/order/create',\n\tdetail: '/pages/detail/index',\n\tmy: '/pages/my/index',\n\tmyAbout: '/pages/my/about',\n\tmyVip: '/pages/my/vip',\n\treport: '/pages/report/index',\n\tcustomerSelect: '/pages/customer/select',\n\tsupplierSelect: '/pages/supplier/select',\n\taccountSelect: '/pages/account/select'\n}\n\n\n// 本地存储键:统一管理,避免在业务中散落硬编码\nexport const STORAGE_KEYS = {\n\tVIP_IS_VIP: 'USER_VIP_IS_VIP',\n\tVIP_START: 'USER_VIP_START',\n\tVIP_END: 'USER_VIP_END'\n}\n\n\n// KPI 标签常量,避免页面硬编码\nexport const KPI_LABELS = {\n todaySales: '今日销售额',\n monthSales: '本月销售额',\n monthProfit: '本月利润',\n stockCount: '库存量'\n}\n\n"],"names":[],"mappings":";AACY,MAAC,oBAAoB;AAAA,EAChC,EAAE,KAAK,eAAe,OAAO,OAAQ;AAAA,EACrC,EAAE,KAAK,oBAAoB,OAAO,OAAQ;AAAA,EAC1C,EAAE,KAAK,mBAAmB,OAAO,OAAQ;AAAA,EACzC,EAAE,KAAK,qBAAqB,OAAO,OAAQ;AAAA,EAC3C,EAAE,KAAK,gBAAgB,OAAO,OAAQ;AACvC;AAEY,MAAC,qBAAqB;AAAA,EACjC,EAAE,KAAK,qBAAqB,OAAO,OAAQ;AAAA,EAC3C,EAAE,KAAK,mBAAmB,OAAO,OAAQ;AAAA,EACzC,EAAE,KAAK,QAAQ,OAAO,KAAM;AAAA,EAC5B,EAAE,KAAK,oBAAoB,OAAO,OAAQ;AAAA,EAC1C,EAAE,KAAK,iBAAiB,OAAO,OAAQ;AACxC;AAGY,MAAC,SAAS;AAAA,EACrB,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,eAAe;AAChB;AAYY,MAAC,aAAa;AAAA,EACtB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,YAAY;AAChB;;;;;"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/auth/login.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/auth/login.js.map index 549cee8..83a6d4e 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/auth/login.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/auth/login.js.map @@ -1 +1 @@ -{"version":3,"file":"login.js","sources":["pages/auth/login.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvYXV0aC9sb2dpbi52dWU"],"sourcesContent":["\n\t\n\t\t\n\t\t\t登录\n\t\t\t注册\n\t\t\t忘记密码\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t登录\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t0 || loading\" @click=\"sendRegCode\">{{ regCountdown>0? (regCountdown+'s') : '获取验证码' }}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t注册新用户\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t0 || loading\" @click=\"sendResetCode\">{{ resetCountdown>0? (resetCountdown+'s') : '获取验证码' }}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t重置密码\n\t\t\n\t\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/auth/login.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","post"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"login.js","sources":["pages/auth/login.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvYXV0aC9sb2dpbi52dWU"],"sourcesContent":["\n\t\n\t\t\n\t\t\t\n\t\t\n 邮箱密码登录\n\n \n\t\t\t\n\t\t\t\n\t\t\t登录\n \n 注册\n 忘记密码\n \n\t\t\n\n \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t0 || loading\" @click=\"sendRegCode\">{{ regCountdown>0? (regCountdown+'s') : '获取验证码' }}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t注册新用户\n\t\t\n\n \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t0 || loading\" @click=\"sendResetCode\">{{ resetCountdown>0? (resetCountdown+'s') : '获取验证码' }}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t重置密码\n\t\t\n\t\n \n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/auth/login.vue'\nwx.createPage(MiniProgramPage)"],"names":["AUTH_LOGIN_TOP_IMAGE","uni","post"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map index 6221fa8..afdbb01 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sources":["pages/index/index.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvaW5kZXgvaW5kZXgudnVl"],"sourcesContent":["\n \n\t\t\n\t\t\n\t\t\t\n\t\t\t\t五金配件管家\n\t\t\n\t\t\t\t\t{{ consultLabel }}\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t今日销售额\n\t\t\t\t\t\t{{ kpi.todaySales }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t本月销售额\n\t\t\t\t\t\t{{ kpi.monthSales }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t本月利润\n\t\t\t\t\t\t{{ kpi.monthProfit }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t库存商品数量\n\t\t\t\t\t\t{{ kpi.stockCount }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t咨询\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t取消\n\t\t\t\t\t提交\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t公告\n\t\t\t加载中...\n\t\t\t{{ noticeError }}\n\t\t\t暂无公告\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ n.text }}\n\t\t\t\t\t\t{{ n.tag }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t常用功能\n\t\t\n\n \t\t\n \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{{ item.emoji }}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{{ item.title }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n \t\t\n\t\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["KPI_ICON_MAP","uni","get","put","post","ROUTES"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sources":["pages/index/index.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvaW5kZXgvaW5kZXgudnVl"],"sourcesContent":["\n \n\t\t\n\t\t\n\t\t\t\n\t\t\t\t五金配件管家\n\t\t\n\t\t\t\t\t{{ consultLabel }}\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ KPI_LABELS.todaySales }}\n\t\t\t\t\t\t{{ kpi.todaySales }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ KPI_LABELS.monthSales }}\n\t\t\t\t\t\t{{ kpi.monthSales }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ KPI_LABELS.monthProfit }}\n\t\t\t\t\t\t{{ kpi.monthProfit }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ KPI_LABELS.stockCount }}\n\t\t\t\t\t\t{{ kpi.stockCount }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t咨询\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t取消\n\t\t\t\t\t提交\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t公告\n\t\t\t加载中...\n\t\t\t{{ noticeError }}\n\t\t\t暂无公告\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ n.text }}\n\t\t\t\t\t\t{{ n.tag }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t常用功能\n\t\t\n\n \t\t\n \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{{ item.emoji }}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{{ item.title }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n \t\t\n\t\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["KPI_ICON_MAP","KPI_LABELS","uni","get","put","post","ROUTES"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map index 915e6d2..45b6a30 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sources":["pages/my/index.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvbXkvaW5kZXgudnVl"],"sourcesContent":["\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t{{ shopName }}\n {{ emailDisplay }}\n\t\t\t\t老板\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t未登录\n\t\t\t\t登录后同步数据\n\t\t\t\t访客\n\t\t\t\n\t\t\t登录\n\t\t\n\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t{{ vipIsVip ? 'VIP' : '非VIP' }}\n\t\t\t\t会员状态\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t开始\n\t\t\t\t\t{{ vipStartDisplay }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t结束\n\t\t\t\t\t{{ vipEndDisplay }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t会员与订单\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tVIP会员\n\t\t\t\t\t已开通\n\t\t\t\t\t待开通\n\t\t\t\t\n\t\t\t\t›\n\t\t\t\n\t\t\t\n\t\t\t\t我的订单\n\t\t\t\t›\n\t\t\t\n\t\t\n\n\t\t\n\n\t\t\n\t\t\t设置中心\n\t\t\t\n\t\t\t\t账号与安全\n\t\t\t\t修改头像、姓名、密码、电话\n\t\t\t\t›\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t关于与协议\n\t\t\t\t›\n\t\t\t\n \n 退出登录\n \n\t\t\n\t\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["API_BASE_URL","uni","get"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sources":["pages/my/index.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvbXkvaW5kZXgudnVl"],"sourcesContent":["\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t{{ shopName }}\n {{ emailDisplay }}\n\t\t\t\t老板\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t未登录\n\t\t\t\t登录后同步数据\n\t\t\t\t访客\n\t\t\t\n\t\t\t登录\n\t\t\n\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t{{ vipIsVip ? 'VIP' : '非VIP' }}\n\t\t\t\t会员状态\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t开始\n\t\t\t\t\t{{ vipStartDisplay }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t结束\n\t\t\t\t\t{{ vipEndDisplay }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t会员与订单\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tVIP会员\n\t\t\t\t\t已开通\n\t\t\t\t\t待开通\n\t\t\t\t\n\t\t\t\t›\n\t\t\t\n\t\t\t\n\t\t\t\t我的订单\n\t\t\t\t›\n\t\t\t\n\t\t\n\n\t\t\n\n\t\t\n\t\t\t设置中心\n\t\t\t\n\t\t\t\t账号与安全\n\t\t\t\t修改头像、姓名、密码、电话\n\t\t\t\t›\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t关于与协议\n\t\t\t\t›\n\t\t\t\n \n 退出登录\n \n\t\t\n\t\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["API_BASE_URL","uni","get"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/vip.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/vip.js.map index 9851fe9..c00d6dd 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/vip.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/my/vip.js.map @@ -1 +1 @@ -{"version":3,"file":"vip.js","sources":["pages/my/vip.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvbXkvdmlwLnZ1ZQ"],"sourcesContent":["\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t{{ isVip ? 'VIP会员' : '升级 VIP 会员' }}\n\t\t\t\t{{ isVip ? '尊享完整数据与高效体验' : '开通后可查看全部历史数据并解锁高级功能' }}\n\t\t\t\n\t\t\t\n\t\t\t\t{{ isVip ? '已开通' : '普通用户' }}\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t会员状态\n\t\t\t\t已激活\n\t\t\t\n\t\t\t\n\t\t\t\t有效期至\n\t\t\t\t{{ expireDisplay }}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t当前身份\n\t\t\t\t普通用户\n\t\t\t\n\t\t\t\n\t\t\t\t会员价格\n\t\t\t\t¥{{ priceDisplay }}/月\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t会员特权\n\t\t\t\t聚焦数据留存与专业形象,让经营更有底气\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{{ item.title }}\n\t\t\t\t\t{{ item.desc }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t立即升级 VIP\n\t\t\t\t不限历史数据、专属标识,助您高效管账\n\t\t\t\n\t\t\t\n\t\t\t\t立即开通\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/vip.vue'\nwx.createPage(MiniProgramPage)"],"names":["get","post","uni"],"mappings":";;;;AA+DA,MAAK,YAAU;AAAA,EACd,OAAM;AACL,WAAO;AAAA,MACG,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MAChB,UAAU,CAAC;AAAA,IACZ;AAAA,EACA;AAAA,EACD,SAAQ;AACP,SAAK,QAAQ;AACb,SAAK,gBAAgB;AAAA,EACrB;AAAA,EACD,UAAU;AAAA,IACT,gBAAe;AACd,YAAM,IAAI,OAAO,KAAK,UAAU,EAAE;AAClC,aAAO,KAAK;AAAA,IACZ;AAAA,IACD,eAAc;AACb,YAAM,IAAI,OAAO,KAAK,KAAK;AAC3B,aAAO,OAAO,SAAS,CAAC,KAAK,IAAI,IAAI,EAAE,QAAQ,CAAC,IAAI;AAAA,IACrD;AAAA,EACA;AAAA,EACD,SAAS;AAAA,IACR,kBAAiB;AAChB,WAAK,WAAW;AAAA,QACf,EAAE,KAAK,WAAW,OAAO,UAAU,MAAM,mBAAmB,MAAM,2CAA4C;AAAA,QAC9G,EAAE,KAAK,YAAY,OAAO,UAAU,MAAM,mBAAmB,MAAM,qCAAsC;AAAA,QACzG,EAAE,KAAK,YAAY,OAAO,UAAU,MAAM,kBAAkB,MAAM,4CAA4C;AAAA,MAC/G;AAAA,IACA;AAAA,IACK,MAAM,UAAS;AACX,UAAI;AACA,cAAM,OAAO,MAAMA,YAAG,IAAC,iBAAiB;AACxC,aAAK,QAAQ,CAAC,EAAC,6BAAM;AACrB,aAAK,UAAS,6BAAM,aAAY;AAChC,YAAI,QAAO,6BAAM,WAAU;AAAU,eAAK,QAAQ,KAAK;AAAA,MAC3D,SAAQ,GAAG;AAEP,aAAK,QAAQ;AAAA,MACjB;AAAA,IACT;AAAA,IACK,MAAM,QAAO;AACT,UAAI;AACA,cAAMC,YAAI,KAAC,gBAAgB,EAAE;AAC7BC,sBAAG,MAAC,UAAU,EAAE,OAAO,UAAU,MAAM,WAAW;AAClD,cAAM,KAAK,QAAQ;AAAA,MACvB,SAAQ,GAAG;AACPA,sBAAAA,MAAI,UAAU,EAAE,OAAO,OAAO,EAAE,WAAW,MAAM,GAAG,MAAM,QAAQ;AAAA,MACtE;AAAA,IACV;AAAA,EACD;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClHA,GAAG,WAAW,eAAe;"} \ No newline at end of file +{"version":3,"file":"vip.js","sources":["pages/my/vip.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvbXkvdmlwLnZ1ZQ"],"sourcesContent":["\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t{{ isVip ? 'VIP会员' : '升级 VIP 会员' }}\n\t\t\t\t{{ isVip ? '尊享完整数据与高效体验' : '开通后可查看全部历史数据并解锁高级功能' }}\n\t\t\t\n\t\t\t\n\t\t\t\t{{ isVip ? '已开通' : '普通用户' }}\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t会员状态\n\t\t\t\t已激活\n\t\t\t\n\t\t\t\n\t\t\t\t有效期至\n\t\t\t\t{{ expireDisplay }}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t当前身份\n\t\t\t\t普通用户\n\t\t\t\n\t\t\t\n\t\t\t\t会员价格\n\t\t\t\t¥{{ priceDisplay }}/月\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t会员特权\n\t\t\t\t聚焦数据留存与专业形象,让经营更有底气\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{{ item.title }}\n\t\t\t\t\t{{ item.desc }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t申请成为普通管理员\n\t\t\t\t在普通管理端参与配件审核\n\t\t\t\n\t\t\t\n\t\t\t\t{{ applyBtnText }}\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t立即升级 VIP\n\t\t\t\t不限历史数据、专属标识,助您高效管账\n\t\t\t\n\t\t\t\n\t\t\t\t立即开通\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/vip.vue'\nwx.createPage(MiniProgramPage)"],"names":["m","get","post","uni"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/detail.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/detail.js.map new file mode 100644 index 0000000..67e8a2a --- /dev/null +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/detail.js.map @@ -0,0 +1 @@ +{"version":3,"file":"detail.js","sources":["pages/product/detail.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9kZXRhaWwudnVl"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\t{{ detail.name || detail.model }}\r\n\t\t\t可修改后提交审核\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t名称\r\n\t\t\t品牌\r\n\t\t\t型号\r\n\t\t\t规格\r\n\t\t\t产地\r\n\t\t\t条码\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t模板参数(可选项留空)\r\n\t\t\t\r\n\t\t\t\t{{ p.fieldLabel }}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t (params[p.fieldKey]=e.detail.value)\" />\r\n\t\t\t\t onPickEnum(p, e)\">\r\n\t\t\t\t\t{{ displayEnum(p) }}\r\n\t\t\t\t\r\n\t\t\t\t (params[p.fieldKey]=e.detail.value)\">\r\n\t\t\t\t\t{{ params[p.fieldKey] || ('选择' + p.fieldLabel) }}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t图片\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t提交审核\r\n\t\t\r\n\t\r\n\t加载中...\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/detail.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get","post"],"mappings":";;;AA8CA,MAAK,gBAAiB,MAAW;AAGjC,MAAK,YAAU;AAAA,EACd,YAAY,EAAE,cAAe;AAAA,EAC7B,OAAM;AACL,WAAO;AAAA,MACN,IAAI;AAAA,MACJ,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,MAAM,EAAE,MAAK,IAAI,OAAM,IAAI,OAAM,IAAI,MAAK,IAAI,QAAO,IAAI,SAAQ,GAAI;AAAA,MACrE,QAAQ,CAAE;AAAA,MACV,QAAQ,CAAE;AAAA,MACV,YAAY;AAAA,IACb;AAAA,EACA;AAAA,EACD,MAAM,OAAO,GAAE;AACd,SAAK,MAAK,uBAAG,OAAM;AACnB,QAAI,CAAC,KAAK,IAAI;AAAEA,oBAAAA,MAAI,UAAU,EAAE,OAAO,QAAQ,MAAM,QAAQ;AAAG;AAAA,IAAO;AACvE,UAAM,KAAK,WAAW;AAAA,EACtB;AAAA,EACD,SAAS;AAAA,IACR,MAAM,aAAY;AACjB,UAAG;AACF,cAAM,IAAI,MAAMC,gBAAI,iBAAiB,KAAK,EAAE,EAAE;AAC9C,aAAK,SAAS;AACd,aAAK,OAAO,EAAE,MAAM,EAAE,QAAM,IAAI,OAAO,EAAE,SAAO,IAAI,OAAO,EAAE,SAAO,IAAI,MAAM,EAAE,QAAM,IAAI,QAAQ,EAAE,UAAQ,IAAI,SAAS,EAAE,WAAS,GAAG;AACvI,aAAK,SAAS,OAAO,OAAO,CAAA,GAAI,EAAE,cAAc,EAAE;AAClD,aAAK,UAAU,EAAE,UAAQ,CAAA,GAAI,IAAI,OAAK,EAAE,OAAO,CAAC;AAChD,YAAI,EAAE,YAAY;AACjB,cAAG;AACF,kBAAM,MAAM,MAAMA,YAAG,IAAC,wBAAwB;AAC9C,kBAAM,OAAO,MAAM,QAAQ,2BAAK,IAAI,IAAI,IAAI,OAAQ,MAAM,QAAQ,GAAG,IAAE,MAAI,CAAA;AAC3E,iBAAK,WAAW,KAAK,KAAK,OAAK,OAAO,EAAE,EAAE,MAAM,OAAO,EAAE,UAAU,CAAC,KAAK;AAAA,UACzE,SAAM,GAAE;AAAE,iBAAK,WAAW;AAAA,UAAK;AAAA,QACjC;AAAA,MACA,SAAM,GAAE;AAAED,4BAAI,UAAU,EAAE,QAAO,uBAAG,YAAS,QAAQ,MAAK,OAAQ,CAAA;AAAA,MAAE;AAAA,IACrE;AAAA,IACD,WAAW,GAAG,GAAE;AAAE,YAAM,MAAM,OAAO,EAAE,OAAO,KAAK;AAAG,YAAM,MAAM,EAAE,eAAa,CAAA;AAAI,WAAK,OAAO,KAAK,KAAK,KAAK,QAAQ,EAAE,UAAU,IAAI,GAAG,CAAC,IAAK,KAAK,OAAO,EAAE,QAAQ,IAAE,IAAI,GAAG;AAAA,IAAI;AAAA,IACpL,YAAY,GAAE;AAAE,YAAM,IAAI,KAAK,OAAO,EAAE,QAAQ;AAAG,aAAQ,KAAG,QAAM,MAAI,KAAK,OAAK,EAAE,aAAY,OAAO,CAAC;AAAA,IAAG;AAAA,IAC3G,MAAM,eAAc;AACnB,UAAI,CAAC,KAAK;AAAQ;AAClB,WAAK,aAAa;AAClB,UAAG;AACF,cAAM,UAAU,EAAE,WAAW,KAAK,OAAO,IAAI,YAAY,KAAK,OAAO,cAAc,MAAM,MAAM,KAAK,KAAK,MAAM,OAAO,KAAK,KAAK,OAAO,OAAO,KAAK,KAAK,OAAO,MAAM,KAAK,KAAK,MAAM,QAAQ,KAAK,KAAK,QAAQ,QAAQ,KAAK,OAAO,QAAQ,YAAY,KAAK,OAAO,YAAY,YAAY,KAAK,QAAQ,QAAQ,KAAK,QAAQ,QAAQ,KAAK,OAAO,UAAQ,IAAI,SAAS,KAAK,KAAK,QAAQ;AACxX,cAAM,IAAI,MAAME,iBAAK,6BAA6B,OAAO;AACzD,YAAI,MAAM,EAAE,MAAM,EAAE,SAAS;AAAEF,8BAAI,UAAU,EAAE,OAAM,SAAS,MAAK,WAAW;AAAG,qBAAW,MAAKA,cAAG,MAAC,WAAW,EAAE,KAAK,8BAA8B,GAAG,GAAG;AAAA,QAAE;AAAA,MAC7J,SAAM,GAAE;AAAEA,4BAAI,UAAU,EAAE,QAAO,uBAAG,YAAS,QAAQ,MAAK,OAAQ,CAAA;AAAA,MAAE;AAC5D,aAAK,aAAa;AAAA,MAAM;AAAA,IAClC;AAAA,EACD;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChGA,GAAG,WAAW,eAAe;"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/form.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/form.js.map index 20f5cc3..b3e72ab 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/form.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/form.js.map @@ -1 +1 @@ -{"version":3,"file":"form.js","sources":["pages/product/form.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9mb3JtLnZ1ZQ"],"sourcesContent":["\n \n \n \n 编辑货品\n 完善基础信息与价格\n \n 平台推荐货品,建议谨慎修改核心字段\n 此货品源于我的提交,审核通过后已入库\n \n\t\t\t\n\t\t\t\t商品名称\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\t条形码\n\t\t\t\n\t\t\t\t\n\t\t\t图片识码\n\t\t\t\t\n\t\t\t\t\n\t\t\t图片识码\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t主单位:{{ unitLabel }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t类别:{{ categoryLabel }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n \n\t\t\t\n\t\t\t\t库存与安全库存\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t价格(进价/零售/批发/大单)\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t图片\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t备注\n\t\t\t\n\t\t\n\n \n 保存\n 保存并继续\n \n\t\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/form.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get","upload","put","post"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"form.js","sources":["pages/product/form.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9mb3JtLnZ1ZQ"],"sourcesContent":["\n \n \n \n 编辑货品\n 完善基础信息与价格\n \n 平台推荐货品,建议谨慎修改核心字段\n 此货品源于我的提交,审核通过后已入库\n \n\t\t\t\n\t\t\t\t商品名称\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\t条形码\n\t\t\t\n\t\t\t\t\n\t\t\t图片识码\n\t\t\t\t\n\t\t\t\t\n\t\t\t图片识码\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t类别:{{ categoryLabel }}\n\t\t\t\t\n\t\t\t\n\t\t\n\n \n\n\t\t\n\n\t\t\n\t\t\t图片\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t备注\n\t\t\t\n\t\t\n\n \n 保存\n 保存并继续\n \n\t\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/form.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get","upload","put","post"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/list.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/list.js.map index 063bf0d..149d935 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/list.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/list.js.map @@ -1 +1 @@ -{"version":3,"file":"list.js","sources":["pages/product/list.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9saXN0LnZ1ZQ"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\t全部\r\n\t\t\t按类别\r\n\t\t\t我的提交\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{{ categoryLabel }}\r\n\t\t\t\r\n\t\t\t查询\r\n\t\t\r\n\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{ it.name }}\r\n\t\t\t\t\t\t\t平台推荐\r\n\t\t\t\t\t\t\t我的提交\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{{ it.brand || '-' }} {{ it.model || '' }} {{ it.spec || '' }}\r\n\t\t\t\t\t\t库存:{{ it.stock ?? 0 }}\r\n\t\t\t\t\t\t\t零售价:¥{{ (it.retailPrice ?? it.price ?? 0).toFixed(2) }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t暂无数据,点击右上角“+”新增\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/list.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"list.js","sources":["pages/product/list.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9saXN0LnZ1ZQ"],"sourcesContent":["\n\t\n\t\t\n\t\t\t全部\n\t\t\t查询\n\t\t\t我的提交\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\t (query.mode = ['direct','nameLike','template'][Number(e.detail.value)] || 'direct')\">\n\t\t\t\t\t{{ modeLabel }}\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ categoryLabel }}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ templateLabel }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{{ displayParamEnum(p) }}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{{ paramValues[p.fieldKey] || ('选择' + p.fieldLabel) }}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t查询\n\t\t\n\n\t\t\n\t\t\t\n \n\t\t\t\t\t\n\t\t\t\t\t\n \n {{ it.name }}\n 已删除\n\t\t\t\t\t\t\t平台推荐\n\t\t\t\t\t\t\t我的提交\n\t\t\t\t\t\t\n\t\t\t\t\t\t{{ it.brand || '-' }} {{ it.model || '' }} {{ it.spec || '' }}\n \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t暂无数据,点击右上角“+”新增\n\t\t\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n\n\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/list.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/product-detail.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/product-detail.js.map new file mode 100644 index 0000000..4dd5954 --- /dev/null +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/product-detail.js.map @@ -0,0 +1 @@ +{"version":3,"file":"product-detail.js","sources":["pages/product/product-detail.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9wcm9kdWN0LWRldGFpbC52dWU"],"sourcesContent":["\r\n \r\n \r\n {{ detail.model }}\r\n 已删除\r\n \r\n\r\n \r\n 名称{{ detail.name || '-' }}\r\n 品牌{{ detail.brand || '-' }}\r\n 型号{{ detail.model || '-' }}\r\n 条码{{ detail.barcode || '-' }}\r\n 类别{{ categoryName }}\r\n 模板{{ templateName }}\r\n 编号{{ detail.externalCode }}\r\n \r\n\r\n \r\n 参数\r\n \r\n \r\n {{ item.label }}({{ item.unit }})\r\n {{ item.value }}\r\n \r\n \r\n 未填写参数\r\n \r\n\r\n \r\n 图片\r\n \r\n \r\n \r\n 未上传图片\r\n \r\n\r\n \r\n 备注\r\n {{ detail.remark || '无' }}\r\n \r\n\r\n \r\n 返回\r\n 删除\r\n \r\n \r\n 加载中...\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/product-detail.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get","del","_a"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submission-detail.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submission-detail.js.map new file mode 100644 index 0000000..9b7c439 --- /dev/null +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submission-detail.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-detail.js","sources":["pages/product/submission-detail.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9zdWJtaXNzaW9uLWRldGFpbC52dWU"],"sourcesContent":["\n \n \n {{ detail.model }}\n {{ statusLabel(detail.status) }}\n \n\n \n 名称{{ detail.name || '-' }}\n 品牌{{ detail.brand || '-' }}\n 规格{{ detail.spec || '-' }}\n 条码{{ detail.barcode || '-' }}\n 类别{{ categoryName }}\n 模板{{ templateName }}\n \n \n\n \n 参数\n \n \n {{ item.label }}\n {{ item.value }}\n \n \n 未填写参数\n \n\n \n 图片\n \n \n \n 未上传图片\n \n\n \n 备注\n {{ detail.remark || '无' }}\n \n\n \n 提交时间{{ formatTime(detail.createdAt) }}\n 审核时间{{ formatTime(detail.reviewedAt) }}\n 审核说明{{ detail.reviewRemark }}\n \n\n \n 返回\n 重新提交\n \n \n 加载中...\n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submission-detail.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","get","_a"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submissions.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submissions.js.map index 657cc5a..11d93bf 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submissions.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submissions.js.map @@ -1 +1 @@ -{"version":3,"file":"submissions.js","sources":["pages/product/submissions.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9zdWJtaXNzaW9ucy52dWU"],"sourcesContent":["\r\n \r\n \r\n 我的配件提交\r\n 查看待审核、已通过、已驳回的记录\r\n \r\n\r\n \r\n 全部\r\n 待审核\r\n 已通过\r\n 已驳回\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ item.model || '-' }}\r\n {{ statusLabel(item.status) }}\r\n \r\n \r\n {{ item.name || '未填写名称' }}\r\n 品牌:{{ item.brand || '-' }}\r\n 提交:{{ formatTime(item.createdAt) }}\r\n 审核:{{ formatTime(item.reviewedAt) }}\r\n \r\n \r\n 详情\r\n 等待审核\r\n 重新提交\r\n \r\n \r\n \r\n \r\n 暂无提交记录,快去提交新的配件吧\r\n 立即提交\r\n \r\n 加载中...\r\n 没有更多了\r\n \r\n\r\n +\r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submissions.vue'\nwx.createPage(MiniProgramPage)"],"names":["get","uni"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"submissions.js","sources":["pages/product/submissions.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9zdWJtaXNzaW9ucy52dWU"],"sourcesContent":["\n \n \n 我的配件提交\n 查看待审核、已通过、已驳回的记录\n \n\n \n 全部\n 待审核\n 已通过\n 已驳回\n \n\n \n \n \n \n {{ item.model || '-' }}\n {{ statusLabel(item.status) }}\n \n \n {{ item.name || '未填写名称' }}\n 品牌:{{ item.brand || '-' }}\n 提交:{{ formatTime(item.createdAt) }}\n 审核:{{ formatTime(item.reviewedAt) }}\n \n \n 详情\n 等待审核\n 重新提交\n \n \n \n \n 暂无提交记录,快去提交新的配件吧\n 立即提交\n \n 加载中...\n 没有更多了\n \n\n +\n \n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submissions.vue'\nwx.createPage(MiniProgramPage)"],"names":["get","uni"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submit.js.map b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submit.js.map index c77cb47..34be630 100644 --- a/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submit.js.map +++ b/frontend/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/submit.js.map @@ -1 +1 @@ -{"version":3,"file":"submit.js","sources":["pages/product/submit.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9zdWJtaXQudnVl"],"sourcesContent":["\n \n \n 提交配件\n 填写型号、名称、参数与图片,提交后进入待审核状态\n \n\n \n \n 型号\n \n \n \n 品牌\n \n \n \n \n 条码\n \n 识码\n \n \n\n \n \n \n 类别\n \n {{ categoryLabel }}\n \n \n \n\n \n \n 模板\n \n \n \n {{ templateLabel }}\n \n \n \n\n \n \n 图片\n \n \n \n\n \n \n 备注\n \n \n \n\n \n \n 安全库存\n \n \n \n \n \n \n\n \n 提交审核\n 查重\n \n \n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submit.vue'\nwx.createPage(MiniProgramPage)"],"names":["get","uni","upload","post"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"submit.js","sources":["pages/product/submit.vue","../../../../Downloads/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvcHJvZHVjdC9zdWJtaXQudnVl"],"sourcesContent":["\n \n \n 提交配件\n 填写型号、名称、参数与图片,提交后进入待审核状态\n \n\n \n \n 型号\n \n \n \n 品牌\n \n \n \n \n 条码\n \n 识码\n \n \n\n \n \n \n 类别\n \n {{ categoryLabel }}\n \n \n \n\n \n \n 编号\n \n \n \n\n \n \n 模板\n \n \n \n {{ templateLabel }}\n \n \n \n\n \n \n \n 参数\n \n \n \n \n {{ p.fieldLabel }}({{ p.unit }})*\n \n \n \n \n \n \n \n \n (paramValues[p.fieldKey]=e.detail.value)\" />\n \n \n \n {{ displayEnum(p) }}\n \n \n \n \n {{ paramValues[p.fieldKey] || ('选择' + p.fieldLabel) }}\n \n \n \n \n \n \n \n \n\n \n \n 图片\n \n \n \n\n \n \n 备注\n \n \n \n\n \n \n 安全库存\n \n \n \n \n \n \n\n \n 提交审核\n 查重\n \n \n\n\n\n\n\n","import MiniProgramPage from 'C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submit.vue'\nwx.createPage(MiniProgramPage)"],"names":["get","uni","upload","post"],"mappings":"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"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/app-config-service.js b/frontend/unpackage/dist/dev/app-plus/app-config-service.js index 8262734..d61cc23 100644 --- a/frontend/unpackage/dist/dev/app-plus/app-config-service.js +++ b/frontend/unpackage/dist/dev/app-plus/app-config-service.js @@ -1,8 +1,8 @@ ;(function(){ let u=void 0,isReady=false,onReadyCallbacks=[],isServiceReady=false,onServiceReadyCallbacks=[]; - const __uniConfig = {"pages":[],"globalStyle":{"backgroundColor":"#F8F8F8","navigationBar":{"backgroundColor":"#F8F8F8","titleText":"五金配件管家","type":"default","titleColor":"#000000"},"isNVue":false},"nvue":{"compiler":"uni-app","styleCompiler":"uni-app","flex-direction":"column"},"renderer":"auto","appname":"林林林","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":true},"compilerVersion":"4.76","entryPagePath":"pages/index/index","entryPageQuery":"","realEntryPagePath":"","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000},"tabBar":{"position":"bottom","color":"#8a7535","selectedColor":"#B4880F","borderStyle":"black","blurEffect":"none","fontSize":"10px","iconWidth":"24px","spacing":"3px","height":"50px","list":[{"pagePath":"pages/index/index","text":"首页","iconPath":"/static/logo.png","selectedIconPath":"/static/logo.png"},{"pagePath":"pages/product/list","text":"货品","iconPath":"/static/logo.png","selectedIconPath":"/static/logo.png"},{"pagePath":"pages/order/create","text":"开单","iconPath":"/static/logo.png","selectedIconPath":"/static/logo.png"},{"pagePath":"pages/detail/index","text":"明细","iconPath":"/static/logo.png","selectedIconPath":"/static/logo.png"},{"pagePath":"pages/my/index","text":"我的","iconPath":"/static/logo.png","selectedIconPath":"/static/logo.png"}],"backgroundColor":"#ffffff","selectedIndex":0,"shown":true},"locales":{},"darkmode":false,"themeConfig":{}}; - const __uniRoutes = [{"path":"pages/index/index","meta":{"isQuit":true,"isEntry":true,"isTabBar":true,"tabBarIndex":0,"navigationBar":{"titleText":"五金配件管家","type":"default"},"isNVue":false}},{"path":"pages/order/create","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":2,"navigationBar":{"titleText":"开单","type":"default"},"isNVue":false}},{"path":"pages/product/select","meta":{"navigationBar":{"titleText":"选择商品","type":"default"},"isNVue":false}},{"path":"pages/product/list","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":1,"navigationBar":{"titleText":"货品列表","type":"default"},"isNVue":false}},{"path":"pages/product/form","meta":{"navigationBar":{"titleText":"编辑货品","type":"default"},"isNVue":false}},{"path":"pages/product/categories","meta":{"navigationBar":{"titleText":"类别管理","type":"default"},"isNVue":false}},{"path":"pages/product/units","meta":{"navigationBar":{"titleText":"单位管理","type":"default"},"isNVue":false}},{"path":"pages/product/settings","meta":{"navigationBar":{"titleText":"货品设置","type":"default"},"isNVue":false}},{"path":"pages/customer/select","meta":{"navigationBar":{"titleText":"选择客户","type":"default"},"isNVue":false}},{"path":"pages/customer/form","meta":{"navigationBar":{"titleText":"新增客户","type":"default"},"isNVue":false}},{"path":"pages/customer/detail","meta":{"navigationBar":{"titleText":"客户详情","type":"default"},"isNVue":false}},{"path":"pages/supplier/select","meta":{"navigationBar":{"titleText":"选择供应商","type":"default"},"isNVue":false}},{"path":"pages/supplier/form","meta":{"navigationBar":{"titleText":"新增/编辑供应商","type":"default"},"isNVue":false}},{"path":"pages/account/select","meta":{"navigationBar":{"titleText":"选择账户","type":"default"},"isNVue":false}},{"path":"pages/account/ledger","meta":{"navigationBar":{"titleText":"账户流水","type":"default"},"isNVue":false}},{"path":"pages/account/form","meta":{"navigationBar":{"titleText":"新增/编辑账户","type":"default"},"isNVue":false}},{"path":"pages/detail/index","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":3,"navigationBar":{"titleText":"明细","type":"default"},"isNVue":false}},{"path":"pages/my/index","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":4,"navigationBar":{"titleText":"我的","type":"default"},"isNVue":false}},{"path":"pages/my/about","meta":{"navigationBar":{"titleText":"关于与协议","type":"default"},"isNVue":false}},{"path":"pages/report/index","meta":{"navigationBar":{"titleText":"报表","type":"default"},"isNVue":false}}].map(uniRoute=>(uniRoute.meta.route=uniRoute.path,__uniConfig.pages.push(uniRoute.path),uniRoute.path='/'+uniRoute.path,uniRoute)); + const __uniConfig = {"pages":[],"globalStyle":{"backgroundColor":"#FFFFFF","backgroundTextStyle":"dark","navigationBar":{"backgroundColor":"#FFFFFF","titleText":"五金配件管家","type":"default","titleColor":"#000000"},"isNVue":false},"nvue":{"compiler":"uni-app","styleCompiler":"uni-app","flex-direction":"column"},"renderer":"auto","appname":"林林林","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":true},"compilerVersion":"4.76","entryPagePath":"pages/index/index","entryPageQuery":"","realEntryPagePath":"","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000},"tabBar":{"position":"bottom","color":"#444444","selectedColor":"#4C8DFF","borderStyle":"black","blurEffect":"none","fontSize":"10px","iconWidth":"24px","spacing":"3px","height":"50px","list":[{"pagePath":"pages/index/index","text":"首页","iconPath":"/static/icons/home.png","selectedIconPath":"/static/icons/home.png"},{"pagePath":"pages/product/list","text":"货品","iconPath":"/static/icons/product.png","selectedIconPath":"/static/icons/product.png"},{"pagePath":"pages/order/create","text":"开单","iconPath":"/static/icons/icons8-purchase-order-100.png","selectedIconPath":"/static/icons/icons8-purchase-order-100.png"},{"pagePath":"pages/detail/index","text":"明细","iconPath":"/static/icons/icons8-more-details-100.png","selectedIconPath":"/static/icons/icons8-more-details-100.png"},{"pagePath":"pages/my/index","text":"我的","iconPath":"/static/icons/icons8-account-male-100.png","selectedIconPath":"/static/icons/icons8-account-male-100.png"}],"backgroundColor":"#FFFFFF","selectedIndex":0,"shown":true},"locales":{},"darkmode":false,"themeConfig":{}}; + const __uniRoutes = [{"path":"pages/index/index","meta":{"isQuit":true,"isEntry":true,"isTabBar":true,"tabBarIndex":0,"navigationBar":{"titleText":"五金配件管家","type":"default"},"isNVue":false}},{"path":"pages/order/create","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":2,"navigationBar":{"titleText":"开单","type":"default"},"isNVue":false}},{"path":"pages/product/select","meta":{"navigationBar":{"titleText":"选择商品","type":"default"},"isNVue":false}},{"path":"pages/product/list","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":1,"navigationBar":{"titleText":"货品列表","type":"default"},"isNVue":false}},{"path":"pages/product/submit","meta":{"navigationBar":{"backgroundColor":"#ffffff","titleText":"提交配件","type":"default"},"isNVue":false}},{"path":"pages/product/submissions","meta":{"navigationBar":{"titleText":"我的提交","type":"default"},"isNVue":false}},{"path":"pages/product/submission-detail","meta":{"navigationBar":{"titleText":"提交详情","type":"default"},"isNVue":false}},{"path":"pages/product/form","meta":{"navigationBar":{"titleText":"编辑货品","type":"default"},"isNVue":false}},{"path":"pages/product/product-detail","meta":{"navigationBar":{"titleText":"货品详情","type":"default"},"isNVue":false}},{"path":"pages/product/categories","meta":{"navigationBar":{"titleText":"类别管理","type":"default"},"isNVue":false}},{"path":"pages/product/units","meta":{"navigationBar":{"titleText":"单位管理","type":"default"},"isNVue":false}},{"path":"pages/product/settings","meta":{"navigationBar":{"titleText":"货品设置","type":"default"},"isNVue":false}},{"path":"pages/customer/select","meta":{"navigationBar":{"titleText":"选择客户","type":"default"},"isNVue":false}},{"path":"pages/customer/form","meta":{"navigationBar":{"titleText":"新增客户","type":"default"},"isNVue":false}},{"path":"pages/customer/detail","meta":{"navigationBar":{"titleText":"客户详情","type":"default"},"isNVue":false}},{"path":"pages/supplier/select","meta":{"navigationBar":{"titleText":"选择供应商","type":"default"},"isNVue":false}},{"path":"pages/supplier/form","meta":{"navigationBar":{"titleText":"新增/编辑供应商","type":"default"},"isNVue":false}},{"path":"pages/account/select","meta":{"navigationBar":{"titleText":"选择账户","type":"default"},"isNVue":false}},{"path":"pages/account/ledger","meta":{"navigationBar":{"titleText":"账户流水","type":"default"},"isNVue":false}},{"path":"pages/account/form","meta":{"navigationBar":{"titleText":"新增/编辑账户","type":"default"},"isNVue":false}},{"path":"pages/detail/index","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":3,"navigationBar":{"titleText":"明细","type":"default"},"isNVue":false}},{"path":"pages/auth/login","meta":{"navigationBar":{"titleText":"登录","type":"default"},"isNVue":false}},{"path":"pages/auth/register","meta":{"navigationBar":{"titleText":"注册","type":"default"},"isNVue":false}},{"path":"pages/my/index","meta":{"isQuit":true,"isTabBar":true,"tabBarIndex":4,"navigationBar":{"titleText":"我的","type":"default"},"isNVue":false}},{"path":"pages/my/about","meta":{"navigationBar":{"titleText":"关于与协议","type":"default"},"isNVue":false}},{"path":"pages/my/security","meta":{"navigationBar":{"titleText":"账号与安全","type":"default"},"isNVue":false}},{"path":"pages/my/vip","meta":{"backgroundColor":"#1a1a2e","backgroundTextStyle":"light","navigationBar":{"backgroundColor":"#1a1a2e","titleText":"VIP会员","type":"default","titleColor":"#ffffff"},"isNVue":false}},{"path":"pages/my/orders","meta":{"navigationBar":{"titleText":"我的订单","type":"default"},"isNVue":false}},{"path":"pages/report/index","meta":{"navigationBar":{"titleText":"报表","type":"default"},"isNVue":false}}].map(uniRoute=>(uniRoute.meta.route=uniRoute.path,__uniConfig.pages.push(uniRoute.path),uniRoute.path='/'+uniRoute.path,uniRoute)); __uniConfig.styles=[];//styles __uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}}); __uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}}); diff --git a/frontend/unpackage/dist/dev/app-plus/app-service.js b/frontend/unpackage/dist/dev/app-plus/app-service.js index 3616487..a4ee8f4 100644 --- a/frontend/unpackage/dist/dev/app-plus/app-service.js +++ b/frontend/unpackage/dist/dev/app-plus/app-service.js @@ -50,10 +50,23 @@ if (uni.restoreGlobal) { const SHOP_ID = Number(envShopId || storageShopId || 1); const envEnableDefaultUser = typeof process !== "undefined" && define_process_env_default && (define_process_env_default.VITE_APP_ENABLE_DEFAULT_USER || define_process_env_default.ENABLE_DEFAULT_USER) || ""; const storageEnableDefaultUser = typeof uni !== "undefined" ? uni.getStorageSync("ENABLE_DEFAULT_USER") || "" : ""; - const ENABLE_DEFAULT_USER = String(envEnableDefaultUser || storageEnableDefaultUser || "true").toLowerCase() === "true"; + const ENABLE_DEFAULT_USER = String(envEnableDefaultUser || storageEnableDefaultUser || "false").toLowerCase() === "true"; const envDefaultUserId = typeof process !== "undefined" && define_process_env_default && (define_process_env_default.VITE_APP_DEFAULT_USER_ID || define_process_env_default.DEFAULT_USER_ID) || ""; const storageDefaultUserId = typeof uni !== "undefined" ? uni.getStorageSync("DEFAULT_USER_ID") || "" : ""; - const DEFAULT_USER_ID = Number(envDefaultUserId || storageDefaultUserId || 2); + const DEFAULT_USER_ID = Number(envDefaultUserId || storageDefaultUserId || 0); + typeof process !== "undefined" && define_process_env_default && (define_process_env_default.VITE_APP_VIP_PRICE || define_process_env_default.VIP_PRICE) || ""; + typeof uni !== "undefined" ? uni.getStorageSync("VIP_PRICE") || "" : ""; + typeof process !== "undefined" && define_process_env_default && (define_process_env_default.VITE_APP_HOME_BANNER_IMG || define_process_env_default.HOME_BANNER_IMG) || ""; + typeof uni !== "undefined" ? uni.getStorageSync("HOME_BANNER_IMG") || "" : ""; + const KPI_ICONS = { + todaySales: "/static/icons/webwxgetmsgimg.jpg", + monthSales: "/static/icons/webwxgetmsgimg.jpg", + monthProfit: "/static/icons/icons8-profit-50.png", + stockCount: "/static/icons/product.png" + }; + const envAuthLoginImg = typeof process !== "undefined" && define_process_env_default && (define_process_env_default.VITE_APP_AUTH_LOGIN_TOP_IMAGE || define_process_env_default.AUTH_LOGIN_TOP_IMAGE) || ""; + const storageAuthLoginImg = typeof uni !== "undefined" ? uni.getStorageSync("AUTH_LOGIN_TOP_IMAGE") || "" : ""; + const AUTH_LOGIN_TOP_IMAGE = String(envAuthLoginImg || storageAuthLoginImg || "/static/icons/undraw_visual-data_1eya.png"); function buildUrl(path) { if (!path) return API_BASE_URL; @@ -61,56 +74,95 @@ if (uni.restoreGlobal) { return path; return API_BASE_URL + (path.startsWith("/") ? path : "/" + path); } + function parseJwtClaims(token) { + try { + const parts = String(token || "").split("."); + if (parts.length < 2) + return {}; + const payload = JSON.parse(decodeURIComponent(escape(atob(parts[1].replace(/-/g, "+").replace(/_/g, "/"))))); + return payload || {}; + } catch (_) { + return {}; + } + } + function buildAuthHeaders(base = {}) { + const headers = { ...base }; + try { + const token = typeof uni !== "undefined" ? uni.getStorageSync("TOKEN") || "" : ""; + if (token) { + headers["Authorization"] = `Bearer ${token}`; + const claims = parseJwtClaims(token); + if (claims && claims.shopId) + headers["X-Shop-Id"] = claims.shopId; + if (claims && claims.userId) + headers["X-User-Id"] = claims.userId; + } else if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) { + if (headers["Authorization"]) + delete headers["Authorization"]; + headers["X-User-Id"] = headers["X-User-Id"] || DEFAULT_USER_ID; + if (SHOP_ID) + headers["X-Shop-Id"] = headers["X-Shop-Id"] || SHOP_ID; + } + } catch (_) { + if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) { + headers["X-User-Id"] = headers["X-User-Id"] || DEFAULT_USER_ID; + if (SHOP_ID) + headers["X-Shop-Id"] = headers["X-Shop-Id"] || SHOP_ID; + } + } + return headers; + } function requestWithFallback(options, candidates, idx, resolve, reject) { const base = candidates[idx] || API_BASE_URL; - const url = options.url.replace(/^https?:\/\/[^/]+/, base); - uni.request({ ...options, url, success: (res) => { + let url = options.url; + if (!/^https?:\/\//.test(url)) { + url = base + (url.startsWith("/") ? "" : "/") + url; + } else { + url = options.url.replace(/^https?:\/\/[^/]+/, base); + } + uni.request({ ...options, url, dataType: "json", success: (res) => { const { statusCode, data } = res; if (statusCode >= 200 && statusCode < 300) return resolve(data); const msg = data && (data.message || data.error || data.msg) || "HTTP " + statusCode; uni.showToast({ title: msg, icon: "none" }); - if (idx + 1 < candidates.length) + if (!options.__noRetry && statusCode >= 500 && idx + 1 < candidates.length) { return requestWithFallback(options, candidates, idx + 1, resolve, reject); + } reject(new Error(msg)); }, fail: (err) => { - if (idx + 1 < candidates.length) + if (!options.__noRetry && idx + 1 < candidates.length) return requestWithFallback(options, candidates, idx + 1, resolve, reject); reject(err); } }); } function get(path, params = {}) { return new Promise((resolve, reject) => { - const headers = { "X-Shop-Id": SHOP_ID }; - if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) - headers["X-User-Id"] = DEFAULT_USER_ID; + const headers = buildAuthHeaders({}); const options = { url: buildUrl(path), method: "GET", data: params, header: headers }; requestWithFallback(options, API_BASE_URL_CANDIDATES, 0, resolve, reject); }); } function post(path, body = {}) { return new Promise((resolve, reject) => { - const headers = { "Content-Type": "application/json", "X-Shop-Id": SHOP_ID }; - if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) - headers["X-User-Id"] = DEFAULT_USER_ID; + const headers = buildAuthHeaders({ "Content-Type": "application/json" }); const options = { url: buildUrl(path), method: "POST", data: body, header: headers }; + const p = String(path || ""); + if (p.includes("/api/auth/wxmp/login") || p.includes("/api/auth/sms/login") || p.includes("/api/auth/sms/send") || p.includes("/api/auth/email/login") || p.includes("/api/auth/email/send") || p.includes("/api/auth/password/login") || p.includes("/api/auth/register")) + options.__noRetry = true; requestWithFallback(options, API_BASE_URL_CANDIDATES, 0, resolve, reject); }); } function put(path, body = {}) { return new Promise((resolve, reject) => { - const headers = { "Content-Type": "application/json", "X-Shop-Id": SHOP_ID }; - if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) - headers["X-User-Id"] = DEFAULT_USER_ID; + const headers = buildAuthHeaders({ "Content-Type": "application/json" }); const options = { url: buildUrl(path), method: "PUT", data: body, header: headers }; requestWithFallback(options, API_BASE_URL_CANDIDATES, 0, resolve, reject); }); } function del(path, body = {}) { return new Promise((resolve, reject) => { - const headers = { "Content-Type": "application/json", "X-Shop-Id": SHOP_ID }; - if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) - headers["X-User-Id"] = DEFAULT_USER_ID; + const headers = buildAuthHeaders({ "Content-Type": "application/json" }); const options = { url: buildUrl(path), method: "DELETE", data: body, header: headers }; requestWithFallback(options, API_BASE_URL_CANDIDATES, 0, resolve, reject); }); @@ -131,9 +183,22 @@ if (uni.restoreGlobal) { return resolve(res.data); } } + if (statusCode >= 400 && statusCode < 500) { + try { + const data = typeof res.data === "string" ? JSON.parse(res.data) : res.data; + return resolve(data); + } catch (e) { + return resolve({ success: false, message: "HTTP " + statusCode }); + } + } if (idx + 1 < candidates.length) return uploadWithFallback(options, candidates, idx + 1, resolve, reject); - reject(new Error("HTTP " + statusCode)); + try { + const data = typeof res.data === "string" ? JSON.parse(res.data) : res.data; + return resolve(data); + } catch (e) { + return resolve({ success: false, message: "HTTP " + statusCode }); + } }, fail: (err) => { if (idx + 1 < candidates.length) @@ -144,9 +209,7 @@ if (uni.restoreGlobal) { } function upload(path, filePath, formData = {}, name = "file") { return new Promise((resolve, reject) => { - const header = { "X-Shop-Id": SHOP_ID }; - if (ENABLE_DEFAULT_USER && DEFAULT_USER_ID) - header["X-User-Id"] = DEFAULT_USER_ID; + const header = buildAuthHeaders({}); const options = { url: buildUrl(path), filePath, name, formData, header }; uploadWithFallback(options, API_BASE_URL_CANDIDATES, 0, resolve, reject); }); @@ -175,12 +238,18 @@ if (uni.restoreGlobal) { detail: "/pages/detail/index", my: "/pages/my/index", myAbout: "/pages/my/about", + myVip: "/pages/my/vip", report: "/pages/report/index", customerSelect: "/pages/customer/select", supplierSelect: "/pages/supplier/select", accountSelect: "/pages/account/select" }; - const _imports_0$1 = "/static/metal-bg.jpg"; + const KPI_LABELS = { + todaySales: "今日销售额", + monthSales: "本月销售额", + monthProfit: "本月利润", + stockCount: "库存量" + }; const _export_sfc = (sfc, props) => { const target = sfc.__vccOpts || sfc; for (const [key, val] of props) { @@ -188,31 +257,49 @@ if (uni.restoreGlobal) { } return target; }; - const _sfc_main$l = { + const _sfc_main$u = { data() { return { + KPI_ICONS, + KPI_LABELS, kpi: { todaySales: "0.00", monthSales: "0.00", monthProfit: "0.00", stockCount: "0" }, activeTab: "home", notices: [], loadingNotices: false, noticeError: "", + consultLabel: "咨询", + consultDialogVisible: false, + consultMessage: "", features: [ { key: "product", title: "货品", img: "/static/icons/product.png", emoji: "📦" }, - { key: "customer", title: "客户", img: "/static/icons/customer.png", emoji: "👥" }, - { key: "sale", title: "销售", img: "/static/icons/sale.png", emoji: "💰" }, - { key: "account", title: "账户", img: "/static/icons/account.png", emoji: "💳" }, - { key: "supplier", title: "供应商", img: "/static/icons/supplier.png", emoji: "🚚" }, - { key: "purchase", title: "进货", img: "/static/icons/purchase.png", emoji: "🛒" }, - { key: "otherPay", title: "其他支出", img: "/static/icons/other-pay.png", emoji: "💸" }, - { key: "vip", title: "VIP会员", img: "/static/icons/vip.png", emoji: "👑" }, - { key: "report", title: "报表", img: "/static/icons/report.png", emoji: "📊" }, - { key: "more", title: "更多", img: "/static/icons/more.png", emoji: "⋯" } + { key: "customer", title: "客户", img: "/static/icons/webwxgetmsgimg.png", emoji: "👥" }, + { key: "sale", title: "销售", img: "/static/icons/webwxgetmsgimg.jpg", emoji: "💰" }, + { key: "account", title: "账户", img: "/static/icons/icons8-profile-50.png", emoji: "💳" }, + { key: "supplier", title: "供应商", img: "/static/icons/icons8-supplier-50.png", emoji: "🚚" }, + { key: "purchase", title: "进货", img: "/static/icons/icons8-dollar-ethereum-exchange-50.png", emoji: "🛒" }, + { key: "otherPay", title: "其他支出", img: "/static/icons/icons8-expenditure-64.png", emoji: "💸" }, + { key: "vip", title: "VIP会员", img: "/static/icons/icons8-vip-48.png", emoji: "👑" }, + { key: "report", title: "报表", img: "/static/icons/icons8-graph-report-50.png", emoji: "📊" } ] }; }, onLoad() { + const hasToken = (() => { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + })(); + if (!hasToken) { + this.kpi = { todaySales: "0.00", monthSales: "0.00", monthProfit: "0.00", stockCount: "0" }; + this.notices = []; + uni.showToast({ title: "请登录使用该功能", icon: "none" }); + return; + } this.fetchMetrics(); this.fetchNotices(); + this.fetchLatestConsult(); }, methods: { async fetchMetrics() { @@ -229,6 +316,59 @@ if (uni.restoreGlobal) { } catch (e) { } }, + async fetchLatestConsult() { + try { + const d = await get("/api/consults"); + if (d && d.replied) + this.consultLabel = "已回复"; + else + this.consultLabel = "咨询"; + this._latestConsult = d; + } catch (e) { + this.consultLabel = "咨询"; + } + }, + onConsultTap() { + if (this.consultLabel === "已回复" && this._latestConsult && this._latestConsult.id) { + const msg = this._latestConsult.latestReply ? this._latestConsult.latestReply : this._latestConsult.message || ""; + uni.showModal({ title: "咨询回复", content: msg || "暂无内容", showCancel: false, success: async (res) => { + if (!res || res.confirm !== true) + return; + try { + const r = await put(`/api/consults/${this._latestConsult.id}/ack`, {}); + this.consultLabel = "咨询"; + this._latestConsult = null; + setTimeout(() => this.fetchLatestConsult(), 200); + } catch (e) { + try { + uni.showToast({ title: e && e.message || "已读同步失败", icon: "none" }); + } catch (_) { + } + } + } }); + return; + } + this.consultMessage = ""; + this.consultDialogVisible = true; + }, + closeConsultDialog() { + this.consultDialogVisible = false; + }, + async submitConsult() { + const text = String(this.consultMessage || "").trim(); + if (!text) { + uni.showToast({ title: "请输入咨询内容", icon: "none" }); + return; + } + try { + await post("/api/consults", { message: text }); + this.consultDialogVisible = false; + uni.showToast({ title: "已提交", icon: "success" }); + setTimeout(() => this.fetchLatestConsult(), 300); + } catch (e) { + uni.showToast({ title: e && e.message || "提交失败", icon: "none" }); + } + }, async fetchNotices() { this.loadingNotices = true; this.noticeError = ""; @@ -281,6 +421,10 @@ if (uni.restoreGlobal) { uni.navigateTo({ url: ROUTES.report }); return; } + if (item.key === "vip") { + uni.navigateTo({ url: "/pages/my/vip" }); + return; + } if (item.key === "otherPay") { try { uni.setStorageSync("ORDER_DEFAULT_PARAMS", { biz: "expense" }); @@ -299,7 +443,7 @@ if (uni.restoreGlobal) { }, goDetail() { try { - formatAppLog("log", "at pages/index/index.vue:177", "[index] goDetail → /pages/detail/index"); + formatAppLog("log", "at pages/index/index.vue:259", "[index] goDetail → /pages/detail/index"); } catch (e) { } uni.switchTab({ url: "/pages/detail/index" }); @@ -319,67 +463,168 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "home" }, [ - vue.createElementVNode("image", { - class: "home-bg", - src: _imports_0$1, - mode: "aspectFill" - }), vue.createCommentVNode(" 顶部统计卡片 "), vue.createElementVNode("view", { class: "hero" }, [ vue.createElementVNode("view", { class: "hero-top" }, [ vue.createElementVNode("text", { class: "brand" }, "五金配件管家"), - vue.createElementVNode("view", { class: "cta" }, [ - vue.createElementVNode("text", { class: "cta-text" }, "咨询") + vue.createElementVNode("view", { + class: "cta", + onClick: _cache[0] || (_cache[0] = (...args) => $options.onConsultTap && $options.onConsultTap(...args)), + "hover-class": "cta-active", + "hover-stay-time": "80" + }, [ + vue.createElementVNode( + "text", + { class: "cta-text" }, + vue.toDisplayString($data.consultLabel), + 1 + /* TEXT */ + ) ]) ]), - vue.createElementVNode("view", { class: "kpi" }, [ - vue.createElementVNode("view", { class: "kpi-item" }, [ - vue.createElementVNode("text", { class: "kpi-label" }, "今日销售额"), - vue.createElementVNode( - "text", - { class: "kpi-value" }, - vue.toDisplayString($data.kpi.todaySales), - 1 - /* TEXT */ - ) + vue.createElementVNode("view", { class: "kpi kpi-grid" }, [ + vue.createElementVNode("view", { class: "kpi-item kpi-card" }, [ + vue.createElementVNode("image", { + src: $data.KPI_ICONS.todaySales, + class: "kpi-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("view", { class: "kpi-content" }, [ + vue.createElementVNode( + "text", + { class: "kpi-label" }, + vue.toDisplayString($data.KPI_LABELS.todaySales), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "kpi-value" }, + vue.toDisplayString($data.kpi.todaySales), + 1 + /* TEXT */ + ) + ]) ]), - vue.createElementVNode("view", { class: "kpi-item" }, [ - vue.createElementVNode("text", { class: "kpi-label" }, "本月销售额"), - vue.createElementVNode( - "text", - { class: "kpi-value" }, - vue.toDisplayString($data.kpi.monthSales), - 1 - /* TEXT */ - ) + vue.createElementVNode("view", { class: "kpi-item kpi-card" }, [ + vue.createElementVNode("image", { + src: $data.KPI_ICONS.monthSales, + class: "kpi-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("view", { class: "kpi-content" }, [ + vue.createElementVNode( + "text", + { class: "kpi-label" }, + vue.toDisplayString($data.KPI_LABELS.monthSales), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "kpi-value" }, + vue.toDisplayString($data.kpi.monthSales), + 1 + /* TEXT */ + ) + ]) ]), - vue.createElementVNode("view", { class: "kpi-item" }, [ - vue.createElementVNode("text", { class: "kpi-label" }, "本月利润"), - vue.createElementVNode( - "text", - { class: "kpi-value" }, - vue.toDisplayString($data.kpi.monthProfit), - 1 - /* TEXT */ - ) + vue.createElementVNode("view", { class: "kpi-item kpi-card" }, [ + vue.createElementVNode("image", { + src: $data.KPI_ICONS.monthProfit, + class: "kpi-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("view", { class: "kpi-content" }, [ + vue.createElementVNode( + "text", + { class: "kpi-label" }, + vue.toDisplayString($data.KPI_LABELS.monthProfit), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "kpi-value" }, + vue.toDisplayString($data.kpi.monthProfit), + 1 + /* TEXT */ + ) + ]) ]), - vue.createElementVNode("view", { class: "kpi-item" }, [ - vue.createElementVNode("text", { class: "kpi-label" }, "库存商品数量"), - vue.createElementVNode( - "text", - { class: "kpi-value" }, - vue.toDisplayString($data.kpi.stockCount), - 1 - /* TEXT */ - ) + vue.createElementVNode("view", { class: "kpi-item kpi-card" }, [ + vue.createElementVNode("image", { + src: $data.KPI_ICONS.stockCount, + class: "kpi-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("view", { class: "kpi-content" }, [ + vue.createElementVNode( + "text", + { class: "kpi-label" }, + vue.toDisplayString($data.KPI_LABELS.stockCount), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "kpi-value" }, + vue.toDisplayString($data.kpi.stockCount), + 1 + /* TEXT */ + ) + ]) ]) ]) ]), - vue.createCommentVNode(" 广告栏:自动轮播,可点击查看详情 "), + vue.createCommentVNode(" 咨询输入弹层 "), + $data.consultDialogVisible ? (vue.openBlock(), vue.createElementBlock( + "view", + { + key: 0, + class: "dialog-mask", + onTouchmove: _cache[4] || (_cache[4] = vue.withModifiers(() => { + }, ["stop", "prevent"])), + onClick: _cache[5] || (_cache[5] = vue.withModifiers(() => { + }, ["stop"])) + }, + [ + vue.createElementVNode("view", { class: "dialog" }, [ + vue.createElementVNode("view", { class: "dialog-title" }, "咨询"), + vue.withDirectives(vue.createElementVNode( + "textarea", + { + class: "dialog-textarea", + "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.consultMessage = $event), + placeholder: "请输入咨询内容...", + maxlength: "500" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [vue.vModelText, $data.consultMessage] + ]), + vue.createElementVNode("view", { class: "dialog-actions" }, [ + vue.createElementVNode("view", { + class: "btn", + onClick: _cache[2] || (_cache[2] = (...args) => $options.closeConsultDialog && $options.closeConsultDialog(...args)) + }, "取消"), + vue.createElementVNode("view", { + class: "btn primary", + onClick: _cache[3] || (_cache[3] = (...args) => $options.submitConsult && $options.submitConsult(...args)) + }, "提交") + ]) + ]) + ], + 32 + /* NEED_HYDRATION */ + )) : vue.createCommentVNode("v-if", true), + vue.createCommentVNode(" 公告栏:放在常用功能上方、KPI 下方 "), vue.createElementVNode("view", { class: "notice" }, [ - vue.createElementVNode("view", { class: "notice-left" }, "广告"), + vue.createElementVNode("view", { class: "notice-left" }, "公告"), $data.loadingNotices ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "notice-swiper", @@ -447,40 +692,40 @@ if (uni.restoreGlobal) { ]), vue.createCommentVNode(" 功能九宫格(玻璃容器 + 圆角方形图标) "), vue.createElementVNode("view", { class: "grid-wrap" }, [ - vue.createElementVNode("view", { class: "grid" }, [ + vue.createElementVNode("view", { class: "feature-grid" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($data.features, (item) => { return vue.openBlock(), vue.createElementBlock("view", { - class: "grid-item", + class: "feature-card", key: item.key, onClick: ($event) => $options.onFeatureTap(item) }, [ - vue.createElementVNode("view", { class: "icon icon-squircle" }, [ + vue.createElementVNode("view", { class: "fc-icon" }, [ item.img ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, src: item.img, - class: "icon-img", + class: "fc-img", mode: "aspectFit", onError: ($event) => $options.onIconError(item) }, null, 40, ["src", "onError"])) : item.emoji ? (vue.openBlock(), vue.createElementBlock( "text", { key: 1, - class: "icon-emoji" + class: "fc-emoji" }, vue.toDisplayString(item.emoji), 1 /* TEXT */ )) : (vue.openBlock(), vue.createElementBlock("view", { key: 2, - class: "icon-placeholder" + class: "fc-placeholder" })) ]), vue.createElementVNode( - "text", - { class: "grid-chip" }, + "view", + { class: "fc-title" }, vue.toDisplayString(item.title), 1 /* TEXT */ @@ -495,15 +740,15 @@ if (uni.restoreGlobal) { vue.createCommentVNode(" 底部操作条改为原生 tabBar,移除自定义栏 ") ]); } - const PagesIndexIndex = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$k], ["__file", "D:/wx/PartsInquiry/frontend/pages/index/index.vue"]]); - const _imports_0 = "/static/logo.png"; + const PagesIndexIndex = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$t], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/index/index.vue"]]); + const _imports_0$4 = "/static/icons/icons8-shopping-cart-100.png"; function todayString() { const d = /* @__PURE__ */ new Date(); const m = (d.getMonth() + 1).toString().padStart(2, "0"); const day = d.getDate().toString().padStart(2, "0"); return `${d.getFullYear()}-${m}-${day}`; } - const _sfc_main$k = { + const _sfc_main$t = { data() { return { biz: "sale", @@ -528,7 +773,19 @@ if (uni.restoreGlobal) { selectedAccountName: "", // 收款/付款输入 payments: { cash: 0, bank: 0, wechat: 0 }, - showMore: false + showMore: false, + SEG_ICONS: { + sale: { + out: "/static/icons/icons8-shopping-cart-100.png", + return: "/static/icons/icons8-return-purchase-50.png", + collect: "/static/icons/icons8-profit-50.png" + }, + purchase: { + in: "/static/icons/icons8-purchase-order-100.png", + return: "/static/icons/icons8-return-purchase-50.png", + pay: "/static/icons/icons8-dollar-ethereum-exchange-50.png" + } + } }; }, computed: { @@ -602,13 +859,33 @@ if (uni.restoreGlobal) { } }, methods: { + fixMojibake(s) { + try { + if (!s) + return s; + const bad = /[ÂÃæåé¼½¢]/.test(s); + if (!bad) + return s; + return decodeURIComponent(escape(s)); + } catch (_) { + return s; + } + }, + normalizeCats(list) { + if (!Array.isArray(list)) + return []; + return list.map((it) => ({ + key: it && it.key || "", + label: this.fixMojibake(it && it.label || "") + })).filter((it) => it.key && it.label); + }, async fetchCategories() { try { const res = await get("/api/finance/categories"); if (res && Array.isArray(res.incomeCategories)) - this._incomeCategories = res.incomeCategories; + this._incomeCategories = this.normalizeCats(res.incomeCategories); if (res && Array.isArray(res.expenseCategories)) - this._expenseCategories = res.expenseCategories; + this._expenseCategories = this.normalizeCats(res.expenseCategories); this.ensureActiveCategory(); } catch (_) { this.ensureActiveCategory(); @@ -761,7 +1038,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "order" }, [ vue.createCommentVNode(" 顶部 Tab "), vue.createElementVNode("view", { class: "tabs" }, [ @@ -806,72 +1083,114 @@ if (uni.restoreGlobal) { /* CLASS */ ) ]), - vue.createCommentVNode(" 子类目按钮 "), + vue.createCommentVNode(" 子类目:改为分段式圆角胶囊,与需求截图一致 "), $data.biz === "sale" ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, - class: "subtabs" + class: "seg3" }, [ vue.createElementVNode( - "button", + "view", { - class: vue.normalizeClass(["subbtn", { active: $data.saleType === "out" }]), + class: vue.normalizeClass(["seg3-item", $data.saleType === "out" && "active"]), onClick: _cache[4] || (_cache[4] = ($event) => $data.saleType = "out") }, - "出货", + [ + vue.createElementVNode("image", { + src: $data.SEG_ICONS.sale.out, + class: "seg3-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("text", null, "出货") + ], 2 /* CLASS */ ), vue.createElementVNode( - "button", + "view", { - class: vue.normalizeClass(["subbtn", { active: $data.saleType === "return" }]), + class: vue.normalizeClass(["seg3-item", $data.saleType === "return" && "active"]), onClick: _cache[5] || (_cache[5] = ($event) => $data.saleType = "return") }, - "退货", + [ + vue.createElementVNode("image", { + src: $data.SEG_ICONS.sale.return, + class: "seg3-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("text", null, "退货") + ], 2 /* CLASS */ ), vue.createElementVNode( - "button", + "view", { - class: vue.normalizeClass(["subbtn", { active: $data.saleType === "collect" }]), + class: vue.normalizeClass(["seg3-item", $data.saleType === "collect" && "active"]), onClick: _cache[6] || (_cache[6] = ($event) => $data.saleType = "collect") }, - "收款", + [ + vue.createElementVNode("image", { + src: $data.SEG_ICONS.sale.collect, + class: "seg3-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("text", null, "收款") + ], 2 /* CLASS */ ) ])) : $data.biz === "purchase" ? (vue.openBlock(), vue.createElementBlock("view", { key: 1, - class: "subtabs" + class: "seg3" }, [ vue.createElementVNode( - "button", + "view", { - class: vue.normalizeClass(["subbtn", { active: $data.purchaseType === "in" }]), + class: vue.normalizeClass(["seg3-item", $data.purchaseType === "in" && "active"]), onClick: _cache[7] || (_cache[7] = ($event) => $data.purchaseType = "in") }, - "进货", + [ + vue.createElementVNode("image", { + src: $data.SEG_ICONS.purchase.in, + class: "seg3-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("text", null, "进货") + ], 2 /* CLASS */ ), vue.createElementVNode( - "button", + "view", { - class: vue.normalizeClass(["subbtn", { active: $data.purchaseType === "return" }]), + class: vue.normalizeClass(["seg3-item", $data.purchaseType === "return" && "active"]), onClick: _cache[8] || (_cache[8] = ($event) => $data.purchaseType = "return") }, - "退货", + [ + vue.createElementVNode("image", { + src: $data.SEG_ICONS.purchase.return, + class: "seg3-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("text", null, "退货") + ], 2 /* CLASS */ ), vue.createElementVNode( - "button", + "view", { - class: vue.normalizeClass(["subbtn", { active: $data.purchaseType === "pay" }]), + class: vue.normalizeClass(["seg3-item", $data.purchaseType === "pay" && "active"]), onClick: _cache[9] || (_cache[9] = ($event) => $data.purchaseType = "pay") }, - "付款", + [ + vue.createElementVNode("image", { + src: $data.SEG_ICONS.purchase.pay, + class: "seg3-icon", + mode: "aspectFit" + }, null, 8, ["src"]), + vue.createElementVNode("text", null, "付款") + ], 2 /* CLASS */ ) @@ -1074,18 +1393,68 @@ if (uni.restoreGlobal) { [ vue.createCommentVNode(" 已选商品与合计(销售/进货 出入库) "), vue.createElementVNode("view", null, [ + vue.createCommentVNode(" 快捷操作:加商品/选择客户(或供应商)/选择日期 → 不改功能,只换排版 "), + vue.createElementVNode("view", { class: "info-card" }, [ + vue.createElementVNode("view", { + class: "info-field party-field", + onClick: _cache[24] || (_cache[24] = ($event) => $data.biz === "sale" ? $options.chooseCustomer() : $options.chooseSupplier()) + }, [ + vue.createElementVNode( + "text", + { class: "info-label" }, + vue.toDisplayString($data.biz === "sale" ? "客户" : "供应商"), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "info-value" }, + vue.toDisplayString($data.biz === "sale" ? $options.customerLabel : $options.supplierLabel), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("picker", { + class: "info-field time-field", + mode: "date", + value: $data.order.orderTime, + onChange: _cache[25] || (_cache[25] = (...args) => $options.onDateChange && $options.onDateChange(...args)) + }, [ + vue.createElementVNode("view", null, [ + vue.createElementVNode("text", { class: "info-label" }, "时间"), + vue.createElementVNode( + "text", + { class: "info-value" }, + vue.toDisplayString($data.order.orderTime), + 1 + /* TEXT */ + ) + ]) + ], 40, ["value"]), + vue.createElementVNode("button", { + class: "info-action", + onClick: _cache[26] || (_cache[26] = (...args) => $options.chooseProduct && $options.chooseProduct(...args)) + }, [ + vue.createElementVNode("image", { + src: _imports_0$4, + class: "info-icon", + mode: "aspectFit" + }), + vue.createElementVNode("text", null, "加商品") + ]) + ]), vue.createElementVNode("view", { class: "summary" }, [ vue.createElementVNode( "text", - null, + { class: "sel" }, "选中货品(" + vue.toDisplayString($options.totalQuantity) + ")", 1 /* TEXT */ ), vue.createElementVNode( - "text", - null, - "合计金额:¥ " + vue.toDisplayString($options.totalAmount.toFixed(2)), + "view", + { class: "total-pill" }, + "合计: ¥ " + vue.toDisplayString($options.totalAmount.toFixed(2)), 1 /* TEXT */ ) @@ -1093,7 +1462,7 @@ if (uni.restoreGlobal) { vue.createCommentVNode(" 加号添加商品 "), vue.createElementVNode("view", { class: "add", - onClick: _cache[24] || (_cache[24] = (...args) => $options.chooseProduct && $options.chooseProduct(...args)) + onClick: _cache[27] || (_cache[27] = (...args) => $options.chooseProduct && $options.chooseProduct(...args)) }, "+") ]) ], @@ -1111,7 +1480,7 @@ if (uni.restoreGlobal) { "button", { class: vue.normalizeClass(["subbtn", { active: $data.counterpartyType === "customer" }]), - onClick: _cache[25] || (_cache[25] = ($event) => $options.setCounterparty("customer")) + onClick: _cache[28] || (_cache[28] = ($event) => $options.setCounterparty("customer")) }, "客户", 2 @@ -1121,7 +1490,7 @@ if (uni.restoreGlobal) { "button", { class: vue.normalizeClass(["subbtn", { active: $data.counterpartyType === "supplier" }]), - onClick: _cache[26] || (_cache[26] = ($event) => $options.setCounterparty("supplier")) + onClick: _cache[29] || (_cache[29] = ($event) => $options.setCounterparty("supplier")) }, "供应商", 2 @@ -1145,7 +1514,7 @@ if (uni.restoreGlobal) { ]), vue.createElementVNode("view", { class: "field", - onClick: _cache[27] || (_cache[27] = (...args) => $options.chooseCounterparty && $options.chooseCounterparty(...args)) + onClick: _cache[30] || (_cache[30] = (...args) => $options.chooseCounterparty && $options.chooseCounterparty(...args)) }, [ vue.createElementVNode("text", { class: "label" }, "往来单位"), vue.createElementVNode( @@ -1158,7 +1527,7 @@ if (uni.restoreGlobal) { ]), vue.createElementVNode("view", { class: "field", - onClick: _cache[28] || (_cache[28] = (...args) => $options.chooseAccount && $options.chooseAccount(...args)) + onClick: _cache[31] || (_cache[31] = (...args) => $options.chooseAccount && $options.chooseAccount(...args)) }, [ vue.createElementVNode("text", { class: "label" }, "结算账户"), vue.createElementVNode( @@ -1176,7 +1545,7 @@ if (uni.restoreGlobal) { { class: "value", type: "digit", - "onUpdate:modelValue": _cache[29] || (_cache[29] = ($event) => $data.trxAmount = $event), + "onUpdate:modelValue": _cache[32] || (_cache[32] = ($event) => $data.trxAmount = $event), placeholder: "0.00" }, null, @@ -1195,7 +1564,7 @@ if (uni.restoreGlobal) { vue.withDirectives(vue.createElementVNode( "textarea", { - "onUpdate:modelValue": _cache[30] || (_cache[30] = ($event) => $data.order.remark = $event), + "onUpdate:modelValue": _cache[33] || (_cache[33] = ($event) => $data.order.remark = $event), maxlength: "200", placeholder: "备注(最多输入200个字)" }, @@ -1216,11 +1585,6 @@ if (uni.restoreGlobal) { key: 7, class: "empty" }, [ - vue.createElementVNode("image", { - src: _imports_0, - mode: "widthFix", - class: "empty-img" - }), vue.createElementVNode("text", { class: "empty-text" }, "购物车里空空如也"), vue.createElementVNode("text", { class: "empty-sub" }, "扫描或点击 “+” 选择商品吧") ])) : (vue.openBlock(), vue.createElementBlock( @@ -1248,7 +1612,7 @@ if (uni.restoreGlobal) { vue.withDirectives(vue.createElementVNode("input", { type: "number", "onUpdate:modelValue": ($event) => it.quantity = $event, - onInput: _cache[31] || (_cache[31] = ($event) => $options.recalc()) + onInput: _cache[34] || (_cache[34] = ($event) => $options.recalc()) }, null, 40, ["onUpdate:modelValue"]), [ [ vue.vModelText, @@ -1293,17 +1657,17 @@ if (uni.restoreGlobal) { vue.createElementVNode("view", { class: "bottom" }, [ vue.createElementVNode("button", { class: "ghost", - onClick: _cache[32] || (_cache[32] = (...args) => $options.saveAndReset && $options.saveAndReset(...args)) + onClick: _cache[35] || (_cache[35] = (...args) => $options.saveAndReset && $options.saveAndReset(...args)) }, "再记一笔"), vue.createElementVNode("button", { class: "primary", - onClick: _cache[33] || (_cache[33] = (...args) => $options.submit && $options.submit(...args)) + onClick: _cache[36] || (_cache[36] = (...args) => $options.submit && $options.submit(...args)) }, "保存") ]) ]); } - const PagesOrderCreate = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$j], ["__file", "D:/wx/PartsInquiry/frontend/pages/order/create.vue"]]); - const _sfc_main$j = { + const PagesOrderCreate = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render$s], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/order/create.vue"]]); + const _sfc_main$s = { data() { return { kw: "", products: [] }; }, @@ -1329,7 +1693,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "search" }, [ vue.withDirectives(vue.createElementVNode( @@ -1385,23 +1749,47 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesProductSelect = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$i], ["__file", "D:/wx/PartsInquiry/frontend/pages/product/select.vue"]]); - const _sfc_main$i = { + const PagesProductSelect = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["render", _sfc_render$r], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/select.vue"]]); + const _sfc_main$r = { data() { return { items: [], - query: { kw: "", page: 1, size: 20, categoryId: "" }, + query: { kw: "", page: 1, size: 20, categoryId: "", mode: "direct", templateId: "", params: {} }, finished: false, loading: false, tab: "all", - categories: [] + categories: [], + templates: [], + paramValues: {} }; }, onLoad() { + const hasToken = (() => { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + })(); + if (!hasToken) { + this.items = []; + this.categories = []; + uni.showToast({ title: "请登录使用该功能", icon: "none" }); + return; + } this.fetchCategories(); this.reload(); }, onShow() { + const hasToken = (() => { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + })(); + if (!hasToken) + return; this.reload(); }, computed: { @@ -1411,19 +1799,57 @@ if (uni.restoreGlobal) { categoryLabel() { const c = this.categories.find((x) => String(x.id) === String(this.query.categoryId)); return c ? "类别:" + c.name : "选择类别"; + }, + modeLabel() { + const map = { direct: "直接查询", nameLike: "名称模糊查询", template: "按模板参数查询" }; + return map[this.query.mode] || "直接查询"; + }, + templateNames() { + return this.templates.map((t) => t.name); + }, + templateLabel() { + const t = this.templates.find((x) => String(x.id) === String(this.query.templateId)); + return t ? "模板:" + t.name : "选择模板"; + }, + selectedTemplate() { + return this.templates.find((t) => String(t.id) === String(this.query.templateId)) || null; + }, + selectedTemplateParams() { + return this.selectedTemplate && Array.isArray(this.selectedTemplate.params) ? this.selectedTemplate.params : []; } }, methods: { switchTab(t) { this.tab = t; this.query.categoryId = ""; + this.query.templateId = ""; + this.paramValues = {}; this.reload(); }, onPickCategory(e) { const idx = Number(e.detail.value); const c = this.categories[idx]; this.query.categoryId = c ? c.id : ""; - this.reload(); + this.fetchTemplates(); + }, + onPickTemplate(e) { + const idx = Number(e.detail.value); + const t = this.templates[idx]; + this.query.templateId = t ? t.id : ""; + this.paramValues = {}; + }, + onPickParamEnumWrapper(p, e) { + const idx = Number(e.detail.value); + const arr = p.enumOptions || []; + this.paramValues[p.fieldKey] = arr[idx]; + }, + onParamBoolChange(p, e) { + var _a; + this.paramValues[p.fieldKey] = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) ? true : false; + }, + onParamDateChange(p, e) { + var _a; + this.paramValues[p.fieldKey] = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) || ""; }, async fetchCategories() { try { @@ -1432,6 +1858,15 @@ if (uni.restoreGlobal) { } catch (_) { } }, + async fetchTemplates() { + try { + const res = await get("/api/product-templates", this.query.categoryId ? { categoryId: this.query.categoryId } : {}); + const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; + this.templates = list; + } catch (_) { + this.templates = []; + } + }, reload() { this.items = []; this.query.page = 1; @@ -1444,8 +1879,19 @@ if (uni.restoreGlobal) { this.loading = true; try { const params = { kw: this.query.kw, page: this.query.page, size: this.query.size }; - if (this.tab === "category" && this.query.categoryId) - params.categoryId = this.query.categoryId; + if (this.tab === "search") { + if (this.query.categoryId) + params.categoryId = this.query.categoryId; + if (this.query.templateId) + params.templateId = this.query.templateId; + if (this.paramValues && Object.keys(this.paramValues).length) { + for (const k of Object.keys(this.paramValues)) { + const v = this.paramValues[k]; + if (v !== void 0 && v !== null && v !== "") + params["param_" + k] = v; + } + } + } const res = await get("/api/products", params); const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; this.items = this.items.concat(list); @@ -1458,13 +1904,30 @@ if (uni.restoreGlobal) { this.loading = false; } }, - openForm(id) { - const url = "/pages/product/form" + (id ? "?id=" + id : ""); - uni.navigateTo({ url }); + openDetail(id) { + uni.navigateTo({ url: "/pages/product/product-detail?id=" + id }); + }, + goMySubmissions() { + uni.navigateTo({ url: "/pages/product/submissions" }); + }, + async remove(it) { + try { + const r = await new Promise((resolve) => { + uni.showModal({ content: "确认删除该货品?删除后可在后台恢复", success: resolve }); + }); + if (!r || !r.confirm) + return; + const { del: del2 } = require("../../common/http.js"); + await del2("/api/products/" + it.id); + uni.showToast({ title: "已删除", icon: "success" }); + this.reload(); + } catch (e) { + uni.showToast({ title: "删除失败", icon: "none" }); + } } } }; - function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "tabs" }, [ vue.createElementVNode( @@ -1480,58 +1943,194 @@ if (uni.restoreGlobal) { vue.createElementVNode( "view", { - class: vue.normalizeClass(["tab", { active: $data.tab === "category" }]), - onClick: _cache[1] || (_cache[1] = ($event) => $options.switchTab("category")) + class: vue.normalizeClass(["tab", { active: $data.tab === "search" }]), + onClick: _cache[1] || (_cache[1] = ($event) => $options.switchTab("search")) }, - "按类别", + "查询", 2 /* CLASS */ - ) + ), + vue.createElementVNode("view", { + class: "tab extra", + onClick: _cache[2] || (_cache[2] = (...args) => $options.goMySubmissions && $options.goMySubmissions(...args)) + }, "我的提交") ]), - vue.createElementVNode("view", { class: "search" }, [ - vue.withDirectives(vue.createElementVNode( - "input", - { - "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.query.kw = $event), - placeholder: "输入名称/条码/规格查询", - onConfirm: _cache[3] || (_cache[3] = (...args) => $options.reload && $options.reload(...args)) - }, - null, - 544 - /* NEED_HYDRATION, NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.query.kw, - void 0, - { trim: true } - ] - ]), - $data.tab === "category" ? (vue.openBlock(), vue.createElementBlock("picker", { + $data.tab === "search" ? (vue.openBlock(), vue.createElementBlock( + "view", + { key: 0, - mode: "selector", - range: $options.categoryNames, - onChange: _cache[4] || (_cache[4] = (...args) => $options.onPickCategory && $options.onPickCategory(...args)) - }, [ - vue.createElementVNode( - "view", - { class: "picker" }, - vue.toDisplayString($options.categoryLabel), - 1 - /* TEXT */ - ) - ], 40, ["range"])) : vue.createCommentVNode("v-if", true), - vue.createElementVNode("button", { - size: "mini", - onClick: _cache[5] || (_cache[5] = (...args) => $options.reload && $options.reload(...args)) - }, "查询") - ]), + class: vue.normalizeClass(["search", { "template-mode": $data.query.mode === "template" }]) + }, + [ + vue.createElementVNode("view", { class: "mode" }, [ + vue.createElementVNode( + "picker", + { + mode: "selector", + range: ["直接查询", "名称模糊查询", "按模板参数查询"], + onChange: _cache[3] || (_cache[3] = (e) => $data.query.mode = ["direct", "nameLike", "template"][Number(e.detail.value)] || "direct") + }, + [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($options.modeLabel), + 1 + /* TEXT */ + ) + ], + 32 + /* NEED_HYDRATION */ + ) + ]), + $data.query.mode === "direct" || $data.query.mode === "nameLike" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock( + "input", + { + key: 0, + "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => $data.query.kw = $event), + placeholder: "输入名称/条码/规格查询", + onConfirm: _cache[5] || (_cache[5] = (...args) => $options.reload && $options.reload(...args)) + }, + null, + 544 + /* NEED_HYDRATION, NEED_PATCH */ + )), [ + [ + vue.vModelText, + $data.query.kw, + void 0, + { trim: true } + ] + ]) : vue.createCommentVNode("v-if", true), + $data.query.mode === "template" ? (vue.openBlock(), vue.createElementBlock( + vue.Fragment, + { key: 1 }, + [ + vue.createElementVNode("view", { class: "picker-row" }, [ + vue.createElementVNode("picker", { + mode: "selector", + range: $options.categoryNames, + onChange: _cache[6] || (_cache[6] = (...args) => $options.onPickCategory && $options.onPickCategory(...args)) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($options.categoryLabel), + 1 + /* TEXT */ + ) + ], 40, ["range"]), + vue.createElementVNode("picker", { + mode: "selector", + range: $options.templateNames, + onChange: _cache[7] || (_cache[7] = (...args) => $options.onPickTemplate && $options.onPickTemplate(...args)) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($options.templateLabel), + 1 + /* TEXT */ + ) + ], 40, ["range"]) + ]), + vue.createElementVNode("view", { class: "params-wrap" }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($options.selectedTemplateParams, (p, idx) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "param-row", + key: p.fieldKey + }, [ + p.type === "string" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", { + key: 0, + "onUpdate:modelValue": ($event) => $data.paramValues[p.fieldKey] = $event, + placeholder: "输入" + p.fieldLabel + }, null, 8, ["onUpdate:modelValue", "placeholder"])), [ + [ + vue.vModelText, + $data.paramValues[p.fieldKey], + void 0, + { trim: true } + ] + ]) : p.type === "number" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", { + key: 1, + type: "number", + "onUpdate:modelValue": ($event) => $data.paramValues[p.fieldKey] = $event, + placeholder: "输入" + p.fieldLabel + }, null, 8, ["onUpdate:modelValue", "placeholder"])), [ + [ + vue.vModelText, + $data.paramValues[p.fieldKey], + void 0, + { number: true } + ] + ]) : p.type === "boolean" ? (vue.openBlock(), vue.createElementBlock("switch", { + key: 2, + checked: !!$data.paramValues[p.fieldKey], + onChange: ($event) => $options.onParamBoolChange(p, $event) + }, null, 40, ["checked", "onChange"])) : p.type === "enum" ? (vue.openBlock(), vue.createElementBlock("picker", { + key: 3, + mode: "selector", + range: p.enumOptions || [], + onChange: ($event) => $options.onPickParamEnumWrapper(p, $event) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString(_ctx.displayParamEnum(p)), + 1 + /* TEXT */ + ) + ], 40, ["range", "onChange"])) : p.type === "date" ? (vue.openBlock(), vue.createElementBlock("picker", { + key: 4, + mode: "date", + onChange: ($event) => $options.onParamDateChange(p, $event) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($data.paramValues[p.fieldKey] || "选择" + p.fieldLabel), + 1 + /* TEXT */ + ) + ], 40, ["onChange"])) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", { + key: 5, + "onUpdate:modelValue": ($event) => $data.paramValues[p.fieldKey] = $event, + placeholder: "输入" + p.fieldLabel + }, null, 8, ["onUpdate:modelValue", "placeholder"])), [ + [ + vue.vModelText, + $data.paramValues[p.fieldKey], + void 0, + { trim: true } + ] + ]) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ]) + ], + 64 + /* STABLE_FRAGMENT */ + )) : vue.createCommentVNode("v-if", true), + vue.createElementVNode("button", { + size: "mini", + onClick: _cache[8] || (_cache[8] = (...args) => $options.reload && $options.reload(...args)) + }, "查询") + ], + 2 + /* CLASS */ + )) : vue.createCommentVNode("v-if", true), vue.createElementVNode( "scroll-view", { "scroll-y": "", class: "list", - onScrolltolower: _cache[6] || (_cache[6] = (...args) => $options.loadMore && $options.loadMore(...args)) + onScrolltolower: _cache[9] || (_cache[9] = (...args) => $options.loadMore && $options.loadMore(...args)) }, [ $data.items.length ? (vue.openBlock(true), vue.createElementBlock( @@ -1541,7 +2140,7 @@ if (uni.restoreGlobal) { return vue.openBlock(), vue.createElementBlock("view", { class: "item", key: it.id, - onClick: ($event) => $options.openForm(it.id) + onClick: ($event) => $options.openDetail(it.id) }, [ it.cover ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, @@ -1550,13 +2149,26 @@ if (uni.restoreGlobal) { mode: "aspectFill" }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("view", { class: "content" }, [ - vue.createElementVNode( - "view", - { class: "name" }, - vue.toDisplayString(it.name), - 1 - /* TEXT */ - ), + vue.createElementVNode("view", { class: "name" }, [ + vue.createElementVNode( + "text", + null, + vue.toDisplayString(it.name), + 1 + /* TEXT */ + ), + it.deleted ? (vue.openBlock(), vue.createElementBlock("text", { + key: 0, + class: "tag-deleted" + }, "已删除")) : vue.createCommentVNode("v-if", true), + it.platformStatus === "platform" ? (vue.openBlock(), vue.createElementBlock("text", { + key: 1, + class: "tag-platform" + }, "平台推荐")) : it.sourceSubmissionId ? (vue.openBlock(), vue.createElementBlock("text", { + key: 2, + class: "tag-custom" + }, "我的提交")) : vue.createCommentVNode("v-if", true) + ]), vue.createElementVNode( "view", { class: "meta" }, @@ -1564,20 +2176,7 @@ if (uni.restoreGlobal) { 1 /* TEXT */ ), - vue.createElementVNode("view", { class: "meta" }, [ - vue.createTextVNode( - "库存:" + vue.toDisplayString(it.stock ?? 0) + " ", - 1 - /* TEXT */ - ), - vue.createElementVNode( - "text", - { class: "price" }, - "零售价:¥" + vue.toDisplayString((it.retailPrice ?? it.price ?? 0).toFixed(2)), - 1 - /* TEXT */ - ) - ]) + vue.createCommentVNode(" 隐藏库存与价格展示,按需求仅展示基础信息 ") ]) ], 8, ["onClick"]); }), @@ -1593,20 +2192,18 @@ if (uni.restoreGlobal) { 32 /* NEED_HYDRATION */ ), - vue.createElementVNode("view", { - class: "fab", - onClick: _cache[7] || (_cache[7] = ($event) => $options.openForm()) - }, "+") + vue.createCommentVNode(" 保留“我的提交”页的+,此处不显示 ") ]); } - const PagesProductList = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$h], ["__file", "D:/wx/PartsInquiry/frontend/pages/product/list.vue"]]); + const PagesProductList = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["render", _sfc_render$q], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/list.vue"]]); + const _imports_0$3 = "/static/icons/icons8-close-48.png"; const ITEM_SIZE = 210; const GAP = 18; const COLS = 3; function px(rpx) { return rpx; } - const _sfc_main$h = { + const _sfc_main$q = { name: "ImageUploader", props: { modelValue: { type: Array, default: () => [] }, @@ -1624,6 +2221,14 @@ if (uni.restoreGlobal) { areaHeight() { const rows = Math.ceil((this.innerList.length + 1) / COLS) || 1; return rows * ITEM_SIZE + (rows - 1) * GAP; + }, + adderStyle() { + const index = this.innerList.length; + const row = Math.floor(index / COLS); + const col = index % COLS; + const x = px(col * (ITEM_SIZE + GAP)); + const y = px(row * (ITEM_SIZE + GAP)); + return { left: x + "rpx", top: y + "rpx" }; } }, watch: { @@ -1632,7 +2237,7 @@ if (uni.restoreGlobal) { handler(list) { const mapped = (list || []).map((u, i) => ({ uid: String(i) + "_" + (u.id || u.url || Math.random().toString(36).slice(2)), - url: typeof u === "string" ? u : u.url || "", + url: this.ensureAbsoluteUrl(typeof u === "string" ? u : u.url || ""), x: this.posOf(i).x, y: this.posOf(i).y })); @@ -1641,6 +2246,14 @@ if (uni.restoreGlobal) { } }, methods: { + ensureAbsoluteUrl(u) { + if (!u) + return ""; + const s = String(u); + if (s.startsWith("http://") || s.startsWith("https://")) + return s; + return API_BASE_URL + (s.startsWith("/") ? s : "/" + s); + }, posOf(index) { const row = Math.floor(index / COLS); const col = index % COLS; @@ -1674,7 +2287,7 @@ if (uni.restoreGlobal) { var _a; try { const resp = await upload(this.uploadPath, filePath, this.formData, this.uploadFieldName); - const url = (resp == null ? void 0 : resp.url) || ((_a = resp == null ? void 0 : resp.data) == null ? void 0 : _a.url) || (resp == null ? void 0 : resp.path) || ""; + const url = this.ensureAbsoluteUrl((resp == null ? void 0 : resp.url) || ((_a = resp == null ? void 0 : resp.data) == null ? void 0 : _a.url) || (resp == null ? void 0 : resp.path) || ""); if (!url) throw new Error("上传响应无 url"); this.innerList.push({ uid: Math.random().toString(36).slice(2), url, ...this.posOf(this.innerList.length) }); @@ -1715,7 +2328,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "uploader" }, [ vue.createElementVNode( "view", @@ -1753,22 +2366,31 @@ if (uni.restoreGlobal) { class: "thumb", onClick: ($event) => $options.preview(index) }, null, 8, ["src", "onClick"]), - vue.createElementVNode("view", { + vue.createElementVNode("image", { class: "remove", + src: _imports_0$3, + mode: "aspectFit", onClick: vue.withModifiers(($event) => $options.remove(index), ["stop"]) - }, "×", 8, ["onClick"]) + }, null, 8, ["onClick"]) ], 44, ["x", "y", "onChange", "onTouchend"]); }), 128 /* KEYED_FRAGMENT */ )), - $data.innerList.length < $props.max ? (vue.openBlock(), vue.createElementBlock("view", { - key: 0, - class: "adder", - onClick: _cache[0] || (_cache[0] = (...args) => $options.choose && $options.choose(...args)) - }, [ - vue.createElementVNode("text", null, "+") - ])) : vue.createCommentVNode("v-if", true) + $data.innerList.length < $props.max ? (vue.openBlock(), vue.createElementBlock( + "view", + { + key: 0, + class: "adder", + style: vue.normalizeStyle($options.adderStyle), + onClick: _cache[0] || (_cache[0] = (...args) => $options.choose && $options.choose(...args)) + }, + [ + vue.createElementVNode("text", null, "+") + ], + 4 + /* STYLE */ + )) : vue.createCommentVNode("v-if", true) ], 4 /* STYLE */ @@ -1779,8 +2401,1227 @@ if (uni.restoreGlobal) { ) ]); } - const ImageUploader = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$g], ["__scopeId", "data-v-7bd1ddd2"], ["__file", "D:/wx/PartsInquiry/frontend/components/ImageUploader.vue"]]); - const _sfc_main$g = { + const ImageUploader = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render$p], ["__scopeId", "data-v-7bd1ddd2"], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/components/ImageUploader.vue"]]); + const _sfc_main$p = { + components: { ImageUploader }, + data() { + return { + form: { + model: "", + brand: "", + barcode: "", + categoryId: "", + templateId: "", + externalCode: "", + parameters: {}, + images: [], + remark: "", + safeMin: null, + safeMax: null + }, + templates: [], + paramValues: {}, + checking: false, + parameterText: "", + categories: [], + submitting: false, + paramPlaceholder: '可输入 JSON,如 {"颜色":"黑","材质":"钢"}' + }; + }, + computed: { + categoryNames() { + return this.categories.map((c) => c.name); + }, + templateNames() { + return this.templates.map((t) => t.name); + }, + categoryLabel() { + const c = this.categories.find((x) => String(x.id) === String(this.form.categoryId)); + return c ? c.name : "选择类别"; + }, + selectedTemplate() { + return this.templates.find((t) => String(t.id) === String(this.form.templateId)); + }, + templateLabel() { + const t = this.selectedTemplate; + return t ? `${t.name}` : "选择模板"; + } + }, + onLoad(options) { + this.bootstrap(); + if (options && options.prefill) { + try { + const data = JSON.parse(decodeURIComponent(options.prefill)); + Object.assign(this.form, { + model: data.model || "", + brand: data.brand || "", + barcode: data.barcode || "", + categoryId: data.categoryId || "", + remark: data.remark || "" + }); + if (data.parameters && typeof data.parameters === "object") { + this.parameterText = JSON.stringify(data.parameters, null, 2); + } + } catch (_) { + } + } + }, + methods: { + async bootstrap() { + await Promise.all([this.fetchCategories()]); + await this.fetchTemplates(); + }, + async fetchCategories() { + try { + const res = await get("/api/product-categories"); + this.categories = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; + } catch (_) { + this.categories = []; + } + }, + async fetchTemplates() { + try { + const res = await get("/api/product-templates", this.form.categoryId ? { categoryId: this.form.categoryId } : {}); + const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; + this.templates = list; + } catch (_) { + this.templates = []; + } + }, + onPickCategory(e) { + const idx = Number(e.detail.value); + const c = this.categories[idx]; + this.form.categoryId = c ? c.id : ""; + this.fetchTemplates(); + }, + onPickTemplate(e) { + const idx = Number(e.detail.value); + const t = this.templates[idx]; + this.form.templateId = t ? t.id : ""; + this.paramValues = {}; + }, + onPickDate(p, e) { + var _a; + this.paramValues[p.fieldKey] = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) || ""; + }, + onPickEnum(p, e) { + const idx = Number(e.detail.value); + const arr = p.enumOptions || []; + this.paramValues[p.fieldKey] = arr[idx]; + }, + displayEnum(p) { + const v = this.paramValues[p.fieldKey]; + return v === void 0 || v === null || v === "" ? "选择" + p.fieldLabel : String(v); + }, + async scanBarcode() { + var _a; + try { + const chooseRes = await uni.chooseImage({ count: 1, sourceType: ["camera", "album"], sizeType: ["compressed"] }); + let filePath = chooseRes.tempFilePaths[0]; + try { + const comp = await uni.compressImage({ src: filePath, quality: 80 }); + filePath = comp.tempFilePath || filePath; + } catch (_) { + } + const data = await upload("/api/barcode/scan", filePath, {}, "file"); + const barcode = (data == null ? void 0 : data.barcode) || ((_a = data == null ? void 0 : data.data) == null ? void 0 : _a.barcode); + if (barcode) { + this.form.barcode = barcode; + uni.showToast({ title: "识别成功", icon: "success" }); + } else { + uni.showToast({ title: "未识别到条码", icon: "none" }); + } + } catch (e) { + const msg = (e == null ? void 0 : e.message) || "识码失败"; + uni.showToast({ title: msg, icon: "none" }); + } + }, + async checkModel() { + if (!this.form.model) + return uni.showToast({ title: "请填写型号", icon: "none" }); + try { + this.checking = true; + const res = await post("/api/products/submissions/check-model", { templateId: this.form.templateId, model: this.form.model }); + if (res && res.available) { + uni.showToast({ title: "可用,无重复", icon: "success" }); + } else { + uni.showToast({ title: "已存在相同型号提交", icon: "none" }); + } + } catch (e) { + const msg = (e == null ? void 0 : e.message) || "校验失败"; + uni.showToast({ title: msg, icon: "none" }); + } finally { + this.checking = false; + } + }, + async submit() { + if (this.submitting) + return; + if (!this.form.model) { + return uni.showToast({ title: "请填写型号", icon: "none" }); + } + let paramsObj = null; + if (this.parameterText) { + try { + paramsObj = JSON.parse(this.parameterText); + } catch (e) { + return uni.showToast({ title: "参数 JSON 不合法", icon: "none" }); + } + } + if (this.form.safeMin != null && this.form.safeMax != null && Number(this.form.safeMin) > Number(this.form.safeMax)) { + return uni.showToast({ title: "安全库存区间不合法", icon: "none" }); + } + let paramsForSubmit = paramsObj; + if (this.selectedTemplate) { + for (const p of this.selectedTemplate.params || []) { + if (p.required && (this.paramValues[p.fieldKey] === void 0 || this.paramValues[p.fieldKey] === null || this.paramValues[p.fieldKey] === "")) { + return uni.showToast({ title: `请填写 ${p.fieldLabel}`, icon: "none" }); + } + } + const shaped = {}; + for (const p of this.selectedTemplate.params || []) { + let v = this.paramValues[p.fieldKey]; + if (p.type === "number" && v !== void 0 && v !== null && v !== "") + v = Number(v); + if (p.type === "boolean") + v = !!v; + shaped[p.fieldKey] = v; + } + paramsForSubmit = shaped; + } + const payload = { + model: this.form.model, + brand: this.form.brand, + barcode: this.form.barcode, + externalCode: this.form.externalCode || null, + categoryId: this.form.categoryId || null, + templateId: this.form.templateId || null, + parameters: paramsForSubmit, + images: this.form.images, + remark: this.form.remark, + safeMin: this.form.safeMin, + safeMax: this.form.safeMax + }; + this.submitting = true; + try { + await post("/api/products/submissions", payload); + uni.showToast({ title: "提交成功", icon: "success" }); + setTimeout(() => { + uni.redirectTo({ url: "/pages/product/submissions" }); + }, 400); + } catch (e) { + const msg = (e == null ? void 0 : e.message) || "提交失败"; + uni.showToast({ title: msg, icon: "none" }); + } finally { + this.submitting = false; + } + } + } + }; + function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) { + const _component_ImageUploader = vue.resolveComponent("ImageUploader"); + return vue.openBlock(), vue.createElementBlock("scroll-view", { + "scroll-y": "", + class: "page" + }, [ + vue.createElementVNode("view", { class: "hero" }, [ + vue.createElementVNode("text", { class: "title" }, "提交配件"), + vue.createElementVNode("text", { class: "desc" }, "填写型号、名称、参数与图片,提交后进入待审核状态") + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row required" }, [ + vue.createElementVNode("text", { class: "label" }, "型号"), + vue.withDirectives(vue.createElementVNode( + "input", + { + "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.form.model = $event), + placeholder: "请输入型号(必填)" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.model, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "品牌"), + vue.withDirectives(vue.createElementVNode( + "input", + { + "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.brand = $event), + placeholder: "品牌/厂商" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.brand, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "条码"), + vue.withDirectives(vue.createElementVNode( + "input", + { + "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.form.barcode = $event), + placeholder: "可选,建议扫码录入" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.barcode, + void 0, + { trim: true } + ] + ]), + vue.createElementVNode("button", { + size: "mini", + class: "picker-btn", + onClick: _cache[3] || (_cache[3] = (...args) => $options.scanBarcode && $options.scanBarcode(...args)) + }, "识码") + ]) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "类别"), + vue.createElementVNode("picker", { + mode: "selector", + range: $options.categoryNames, + onChange: _cache[4] || (_cache[4] = (...args) => $options.onPickCategory && $options.onPickCategory(...args)) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($options.categoryLabel), + 1 + /* TEXT */ + ) + ], 40, ["range"]) + ]) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "编号"), + vue.withDirectives(vue.createElementVNode( + "input", + { + "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.form.externalCode = $event), + placeholder: "内部/外部编号(可选)" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.externalCode, + void 0, + { trim: true } + ] + ]) + ]) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "模板") + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("picker", { + mode: "selector", + range: $options.templateNames, + onChange: _cache[6] || (_cache[6] = (...args) => $options.onPickTemplate && $options.onPickTemplate(...args)) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($options.templateLabel), + 1 + /* TEXT */ + ) + ], 40, ["range"]) + ]) + ]), + vue.createCommentVNode(" 动态参数:根据模板渲染必填/可选项 "), + $options.selectedTemplate ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "section" + }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "参数") + ]), + vue.createElementVNode("view", { class: "param-list" }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($options.selectedTemplate.params || [], (p, idx) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "row", + key: p.fieldKey + }, [ + vue.createElementVNode("text", { class: "label" }, [ + vue.createTextVNode( + vue.toDisplayString(p.fieldLabel), + 1 + /* TEXT */ + ), + p.unit ? (vue.openBlock(), vue.createElementBlock( + "text", + { key: 0 }, + "(" + vue.toDisplayString(p.unit) + ")", + 1 + /* TEXT */ + )) : vue.createCommentVNode("v-if", true), + p.required ? (vue.openBlock(), vue.createElementBlock("text", { + key: 1, + style: { "color": "#ff5b5b" } + }, "*")) : vue.createCommentVNode("v-if", true) + ]), + p.type === "string" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", { + key: 0, + "onUpdate:modelValue": ($event) => $data.paramValues[p.fieldKey] = $event, + placeholder: "请输入" + p.fieldLabel + }, null, 8, ["onUpdate:modelValue", "placeholder"])), [ + [ + vue.vModelText, + $data.paramValues[p.fieldKey], + void 0, + { trim: true } + ] + ]) : p.type === "number" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", { + key: 1, + type: "number", + "onUpdate:modelValue": ($event) => $data.paramValues[p.fieldKey] = $event, + placeholder: "请输入" + p.fieldLabel + }, null, 8, ["onUpdate:modelValue", "placeholder"])), [ + [ + vue.vModelText, + $data.paramValues[p.fieldKey], + void 0, + { number: true } + ] + ]) : p.type === "boolean" ? (vue.openBlock(), vue.createElementBlock("switch", { + key: 2, + checked: !!$data.paramValues[p.fieldKey], + onChange: (e) => $data.paramValues[p.fieldKey] = e.detail.value + }, null, 40, ["checked", "onChange"])) : p.type === "enum" ? (vue.openBlock(), vue.createElementBlock("picker", { + key: 3, + mode: "selector", + range: p.enumOptions || [], + onChange: ($event) => $options.onPickEnum(p, $event) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($options.displayEnum(p)), + 1 + /* TEXT */ + ) + ], 40, ["range", "onChange"])) : p.type === "date" ? (vue.openBlock(), vue.createElementBlock("picker", { + key: 4, + mode: "date", + onChange: ($event) => $options.onPickDate(p, $event) + }, [ + vue.createElementVNode( + "view", + { class: "picker" }, + vue.toDisplayString($data.paramValues[p.fieldKey] || "选择" + p.fieldLabel), + 1 + /* TEXT */ + ) + ], 40, ["onChange"])) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", { + key: 5, + "onUpdate:modelValue": ($event) => $data.paramValues[p.fieldKey] = $event, + placeholder: "请输入" + p.fieldLabel + }, null, 8, ["onUpdate:modelValue", "placeholder"])), [ + [ + vue.vModelText, + $data.paramValues[p.fieldKey], + void 0, + { trim: true } + ] + ]) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ]) + ])) : vue.createCommentVNode("v-if", true), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "图片") + ]), + vue.createVNode(_component_ImageUploader, { + modelValue: $data.form.images, + "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.form.images = $event), + max: 9, + formData: { ownerType: "submission" } + }, null, 8, ["modelValue"]) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "备注") + ]), + vue.withDirectives(vue.createElementVNode( + "textarea", + { + class: "textarea", + "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => $data.form.remark = $event), + placeholder: "选填:补充说明" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.remark, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "安全库存") + ]), + vue.createElementVNode("view", { class: "row triple" }, [ + vue.withDirectives(vue.createElementVNode( + "input", + { + type: "number", + "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => $data.form.safeMin = $event), + placeholder: "下限" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.safeMin, + void 0, + { number: true } + ] + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + type: "number", + "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => $data.form.safeMax = $event), + placeholder: "上限" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.safeMax, + void 0, + { number: true } + ] + ]) + ]) + ]), + vue.createElementVNode("view", { class: "fixed" }, [ + vue.createElementVNode("button", { + class: "primary", + loading: $data.submitting, + onClick: _cache[11] || (_cache[11] = (...args) => $options.submit && $options.submit(...args)) + }, "提交审核", 8, ["loading"]), + vue.createElementVNode("button", { + class: "primary", + style: { "margin-top": "16rpx", "background": "#7aa9ff" }, + loading: $data.checking, + onClick: _cache[12] || (_cache[12] = (...args) => $options.checkModel && $options.checkModel(...args)) + }, "查重", 8, ["loading"]) + ]) + ]); + } + const PagesProductSubmit = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["render", _sfc_render$o], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submit.vue"]]); + const _sfc_main$o = { + data() { + return { + status: "", + items: [], + page: 1, + size: 20, + total: 0, + loading: false, + finished: false, + cacheUnitsLoaded: false, + cacheCategoriesLoaded: false + }; + }, + onShow() { + this.preloadDictionaries(); + this.reload(); + }, + methods: { + async preloadDictionaries() { + try { + const [units, categories, templates] = await Promise.all([ + this.cacheUnitsLoaded ? Promise.resolve(null) : get("/api/product-units"), + this.cacheCategoriesLoaded ? Promise.resolve(null) : get("/api/product-categories"), + get("/api/product-templates") + ]); + if (units) { + const list = Array.isArray(units == null ? void 0 : units.list) ? units.list : Array.isArray(units) ? units : []; + uni.setStorageSync("CACHE_UNITS", list); + this.cacheUnitsLoaded = true; + } + if (categories) { + const list = Array.isArray(categories == null ? void 0 : categories.list) ? categories.list : Array.isArray(categories) ? categories : []; + uni.setStorageSync("CACHE_CATEGORIES", list); + this.cacheCategoriesLoaded = true; + } + if (templates) { + const list = Array.isArray(templates == null ? void 0 : templates.list) ? templates.list : Array.isArray(templates) ? templates : []; + uni.setStorageSync("CACHE_TEMPLATES", list); + } + } catch (_) { + } + }, + switchStatus(s) { + if (this.status === s) + return; + this.status = s; + this.reload(); + }, + async reload() { + this.page = 1; + this.items = []; + this.finished = false; + await this.loadMore(); + }, + async loadMore() { + if (this.loading || this.finished) + return; + this.loading = true; + try { + const params = { page: this.page, size: this.size }; + if (this.status) + params.status = this.status; + const res = await get("/api/products/submissions", params); + const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : []; + this.items = this.items.concat(list); + this.total = Number((res == null ? void 0 : res.total) || this.items.length); + if (list.length < this.size) + this.finished = true; + this.page += 1; + } catch (e) { + formatAppLog("warn", "at pages/product/submissions.vue:118", "加载提交记录失败", e); + const msg = (e == null ? void 0 : e.message) || "加载失败"; + uni.showToast({ title: msg, icon: "none" }); + } finally { + this.loading = false; + } + }, + statusLabel(s) { + if (s === "approved") + return "已通过"; + if (s === "rejected") + return "已驳回"; + return "待审核"; + }, + statusClass(s) { + if (s === "approved") + return "approved"; + if (s === "rejected") + return "rejected"; + return "pending"; + }, + formatTime(value) { + if (!value) + return "-"; + try { + const d = new Date(value); + if (!Number.isFinite(d.getTime())) + return value; + const y = d.getFullYear(); + const m = String(d.getMonth() + 1).padStart(2, "0"); + const day = String(d.getDate()).padStart(2, "0"); + const hh = String(d.getHours()).padStart(2, "0"); + const mm = String(d.getMinutes()).padStart(2, "0"); + return `${y}-${m}-${day} ${hh}:${mm}`; + } catch (_) { + return value; + } + }, + viewDetail(id) { + uni.navigateTo({ url: `/pages/product/submission-detail?id=${id}` }); + }, + notifyPending() { + uni.showToast({ title: "审核中,请耐心等待", icon: "none" }); + }, + resubmit(item) { + const payload = { + model: item.model, + name: item.name, + brand: item.brand, + spec: item.spec, + origin: item.origin, + unitId: item.unitId, + categoryId: item.categoryId, + remark: item.remark + }; + const query = encodeURIComponent(JSON.stringify(payload)); + uni.navigateTo({ url: `/pages/product/submit?prefill=${query}` }); + }, + goSubmit() { + uni.navigateTo({ url: "/pages/product/submit" }); + } + } + }; + function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ + vue.createElementVNode("view", { class: "hero" }, [ + vue.createElementVNode("text", { class: "title" }, "我的配件提交"), + vue.createElementVNode("text", { class: "desc" }, "查看待审核、已通过、已驳回的记录") + ]), + vue.createElementVNode("view", { class: "tabs" }, [ + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["tab", { active: $data.status === "" }]), + onClick: _cache[0] || (_cache[0] = ($event) => $options.switchStatus("")) + }, + "全部", + 2 + /* CLASS */ + ), + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["tab", { active: $data.status === "pending" }]), + onClick: _cache[1] || (_cache[1] = ($event) => $options.switchStatus("pending")) + }, + "待审核", + 2 + /* CLASS */ + ), + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["tab", { active: $data.status === "approved" }]), + onClick: _cache[2] || (_cache[2] = ($event) => $options.switchStatus("approved")) + }, + "已通过", + 2 + /* CLASS */ + ), + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["tab", { active: $data.status === "rejected" }]), + onClick: _cache[3] || (_cache[3] = ($event) => $options.switchStatus("rejected")) + }, + "已驳回", + 2 + /* CLASS */ + ) + ]), + vue.createElementVNode( + "scroll-view", + { + "scroll-y": "", + class: "list", + onScrolltolower: _cache[6] || (_cache[6] = (...args) => $options.loadMore && $options.loadMore(...args)) + }, + [ + $data.items.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "cards" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.items, (item) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "card", + key: item.id + }, [ + vue.createElementVNode("view", { class: "card-header" }, [ + vue.createElementVNode( + "text", + { class: "model" }, + vue.toDisplayString(item.model || "-"), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { + class: vue.normalizeClass(["status", $options.statusClass(item.status)]) + }, + vue.toDisplayString($options.statusLabel(item.status)), + 3 + /* TEXT, CLASS */ + ) + ]), + vue.createElementVNode("view", { class: "card-body" }, [ + vue.createElementVNode( + "text", + { class: "name" }, + vue.toDisplayString(item.name || "未填写名称"), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "brand" }, + "品牌:" + vue.toDisplayString(item.brand || "-"), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "time" }, + "提交:" + vue.toDisplayString($options.formatTime(item.createdAt)), + 1 + /* TEXT */ + ), + item.reviewedAt ? (vue.openBlock(), vue.createElementBlock( + "text", + { + key: 0, + class: "time" + }, + "审核:" + vue.toDisplayString($options.formatTime(item.reviewedAt)), + 1 + /* TEXT */ + )) : vue.createCommentVNode("v-if", true) + ]), + vue.createElementVNode("view", { class: "card-footer" }, [ + vue.createElementVNode("button", { + size: "mini", + onClick: ($event) => $options.viewDetail(item.id) + }, "详情", 8, ["onClick"]), + item.status === "pending" ? (vue.openBlock(), vue.createElementBlock("button", { + key: 0, + size: "mini", + type: "primary", + onClick: _cache[4] || (_cache[4] = (...args) => $options.notifyPending && $options.notifyPending(...args)) + }, "等待审核")) : item.status === "rejected" ? (vue.openBlock(), vue.createElementBlock("button", { + key: 1, + size: "mini", + type: "warn", + onClick: ($event) => $options.resubmit(item) + }, "重新提交", 8, ["onClick"])) : vue.createCommentVNode("v-if", true) + ]) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "empty" + }, [ + vue.createElementVNode("text", null, "暂无提交记录,快去提交新的配件吧"), + vue.createElementVNode("button", { + size: "mini", + class: "primary", + onClick: _cache[5] || (_cache[5] = (...args) => $options.goSubmit && $options.goSubmit(...args)) + }, "立即提交") + ])), + $data.loading ? (vue.openBlock(), vue.createElementBlock("view", { + key: 2, + class: "loading" + }, "加载中...")) : $data.finished && $data.items.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 3, + class: "finished" + }, "没有更多了")) : vue.createCommentVNode("v-if", true) + ], + 32 + /* NEED_HYDRATION */ + ), + vue.createElementVNode("view", { + class: "fab", + onClick: _cache[7] || (_cache[7] = (...args) => $options.goSubmit && $options.goSubmit(...args)) + }, "+") + ]); + } + const PagesProductSubmissions = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render$n], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submissions.vue"]]); + const _sfc_main$n = { + data() { + return { + id: "", + detail: null, + unitName: "-", + categoryName: "-", + templateName: "-" + }; + }, + async onLoad(query) { + this.id = (query == null ? void 0 : query.id) || ""; + if (!this.id) { + uni.showToast({ title: "参数缺失", icon: "none" }); + return; + } + await this.loadDetail(); + }, + methods: { + async loadDetail() { + try { + const data = await get(`/api/products/submissions/${this.id}`); + this.detail = data; + this.categoryName = this.categoryLookup(data.categoryId); + this.templateName = this.templateLookup(data.templateId); + } catch (e) { + const msg = (e == null ? void 0 : e.message) || "加载失败"; + uni.showToast({ title: msg, icon: "none" }); + } + }, + statusLabel(s) { + if (s === "approved") + return "已通过"; + if (s === "rejected") + return "已驳回"; + return "待审核"; + }, + statusClass(s) { + if (s === "approved") + return "approved"; + if (s === "rejected") + return "rejected"; + return "pending"; + }, + preview(idx) { + var _a; + if (!((_a = this.detail) == null ? void 0 : _a.images) || !this.detail.images.length) + return; + uni.previewImage({ urls: this.detail.images, current: idx }); + }, + formatTime(value) { + if (!value) + return "-"; + try { + const d = new Date(value); + if (!Number.isFinite(d.getTime())) + return value; + const y = d.getFullYear(); + const m = String(d.getMonth() + 1).padStart(2, "0"); + const day = String(d.getDate()).padStart(2, "0"); + const hh = String(d.getHours()).padStart(2, "0"); + const mm = String(d.getMinutes()).padStart(2, "0"); + return `${y}-${m}-${day} ${hh}:${mm}`; + } catch (_) { + return value; + } + }, + unitLookup(id) { + try { + const list = []; + const found = list.find((x) => String(x.id) === String(id)); + return found ? found.name : "-"; + } catch (_) { + return "-"; + } + }, + categoryLookup(id) { + try { + const list = uni.getStorageSync("CACHE_CATEGORIES") || []; + const found = list.find((x) => String(x.id) === String(id)); + return found ? found.name : "-"; + } catch (_) { + return "-"; + } + }, + templateLookup(id) { + try { + const list = uni.getStorageSync("CACHE_TEMPLATES") || []; + const found = list.find((x) => String(x.id) === String(id)); + return found ? found.name : "-"; + } catch (_) { + return "-"; + } + }, + back() { + uni.navigateBack({ delta: 1 }); + }, + resubmit() { + const payload = { + model: this.detail.model, + name: this.detail.name, + brand: this.detail.brand, + spec: this.detail.spec, + origin: this.detail.origin, + unitId: this.detail.unitId, + categoryId: this.detail.categoryId, + remark: this.detail.remark, + barcode: this.detail.barcode, + parameters: this.detail.parameters + }; + const query = encodeURIComponent(JSON.stringify(payload)); + uni.navigateTo({ url: `/pages/product/submit?prefill=${query}` }); + } + }, + computed: { + stockRange() { + var _a, _b; + const min = (_a = this.detail) == null ? void 0 : _a.safeMin; + const max = (_b = this.detail) == null ? void 0 : _b.safeMax; + if (min == null && max == null) + return "-"; + if (min != null && max != null) + return `${min} ~ ${max}`; + if (min != null) + return `≥ ${min}`; + return `≤ ${max}`; + }, + labeledPairs() { + var _a; + const params = (_a = this.detail) == null ? void 0 : _a.parameters; + if (!params || typeof params !== "object") + return []; + let labelMap = {}; + try { + const templates = uni.getStorageSync("CACHE_TEMPLATES") || []; + const tpl = templates.find((t) => { + var _a2; + return String(t.id) === String((_a2 = this.detail) == null ? void 0 : _a2.templateId); + }); + if (tpl && Array.isArray(tpl.params)) { + for (const p of tpl.params) + labelMap[p.fieldKey] = p.fieldLabel; + } + } catch (_) { + } + return Object.keys(params).map((k) => ({ key: k, label: labelMap[k] || k, value: params[k] })); + } + } + }; + function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) { + return $data.detail ? (vue.openBlock(), vue.createElementBlock("scroll-view", { + key: 0, + "scroll-y": "", + class: "page" + }, [ + vue.createElementVNode("view", { class: "header" }, [ + vue.createElementVNode( + "text", + { class: "model" }, + vue.toDisplayString($data.detail.model), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { + class: vue.normalizeClass(["status", $options.statusClass($data.detail.status)]) + }, + vue.toDisplayString($options.statusLabel($data.detail.status)), + 3 + /* TEXT, CLASS */ + ) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "名称"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.name || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "品牌"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.brand || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "规格"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.spec || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "条码"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.barcode || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "类别"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.categoryName), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "模板"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.templateName), + 1 + /* TEXT */ + ) + ]), + vue.createCommentVNode(" 隐藏产地/单位/安全库存显示 ") + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "block-title" }, "参数"), + $options.labeledPairs.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "params" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($options.labeledPairs, (item) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "param", + key: item.key + }, [ + vue.createElementVNode( + "text", + { class: "param-key" }, + vue.toDisplayString(item.label), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "param-val" }, + vue.toDisplayString(item.value), + 1 + /* TEXT */ + ) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "placeholder" + }, "未填写参数")) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "block-title" }, "图片"), + $data.detail.images && $data.detail.images.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "images" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.detail.images, (img, idx) => { + return vue.openBlock(), vue.createElementBlock("image", { + key: idx, + src: img, + class: "image", + mode: "aspectFill", + onClick: ($event) => $options.preview(idx) + }, null, 8, ["src", "onClick"]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "placeholder" + }, "未上传图片")) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "block-title" }, "备注"), + vue.createElementVNode( + "view", + { class: "placeholder" }, + vue.toDisplayString($data.detail.remark || "无"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "提交时间"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($options.formatTime($data.detail.createdAt)), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "审核时间"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($options.formatTime($data.detail.reviewedAt)), + 1 + /* TEXT */ + ) + ]), + $data.detail.reviewRemark ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "row" + }, [ + vue.createElementVNode("text", { class: "label" }, "审核说明"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.reviewRemark), + 1 + /* TEXT */ + ) + ])) : vue.createCommentVNode("v-if", true) + ]), + vue.createElementVNode("view", { class: "footer" }, [ + vue.createElementVNode("button", { + size: "mini", + onClick: _cache[0] || (_cache[0] = (...args) => $options.back && $options.back(...args)) + }, "返回"), + $data.detail.status === "rejected" ? (vue.openBlock(), vue.createElementBlock("button", { + key: 0, + size: "mini", + type: "warn", + onClick: _cache[1] || (_cache[1] = (...args) => $options.resubmit && $options.resubmit(...args)) + }, "重新提交")) : vue.createCommentVNode("v-if", true) + ]) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "loading" + }, "加载中...")); + } + const PagesProductSubmissionDetail = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$m], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/submission-detail.vue"]]); + const _sfc_main$m = { components: { ImageUploader }, data() { return { @@ -1791,38 +3632,28 @@ if (uni.restoreGlobal) { brand: "", model: "", spec: "", - origin: "", categoryId: "", - unitId: "", - stock: null, - safeMin: null, - safeMax: null, - purchasePrice: null, - retailPrice: null, - wholesalePrice: null, - bigClientPrice: null, images: [], - remark: "" + remark: "", + platformStatus: "", + sourceSubmissionId: "" }, - units: [], - categories: [] + categories: [], + keyboardHeight: 0 }; }, onLoad(query) { this.id = (query == null ? void 0 : query.id) || ""; this.bootstrap(); + this.initKeyboardListener(); + }, + onUnload() { + this.disposeKeyboardListener(); }, computed: { - unitNames() { - return this.units.map((u) => u.name); - }, categoryNames() { return this.categories.map((c) => c.name); }, - unitLabel() { - const u = this.units.find((x) => String(x.id) === String(this.form.unitId)); - return u ? u.name : "选择单位"; - }, categoryLabel() { const c = this.categories.find((x) => String(x.id) === String(this.form.categoryId)); return c ? c.name : "选择类别"; @@ -1830,14 +3661,25 @@ if (uni.restoreGlobal) { }, methods: { async bootstrap() { - await Promise.all([this.fetchUnits(), this.fetchCategories()]); + await Promise.all([this.fetchCategories()]); if (this.id) this.loadDetail(); }, - async fetchUnits() { + initKeyboardListener() { try { - const res = await get("/api/product-units"); - this.units = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; + this.__keyboardListener = (e) => { + const h = e && (e.height || e.targetHeight || 0) || 0; + this.keyboardHeight = h; + }; + uni.onKeyboardHeightChange && uni.onKeyboardHeightChange(this.__keyboardListener); + } catch (_) { + } + }, + disposeKeyboardListener() { + try { + if (this.__keyboardListener && uni.offKeyboardHeightChange) { + uni.offKeyboardHeightChange(this.__keyboardListener); + } } catch (_) { } }, @@ -1848,20 +3690,32 @@ if (uni.restoreGlobal) { } catch (_) { } }, - onPickUnit(e) { - const idx = Number(e.detail.value); - const u = this.units[idx]; - this.form.unitId = u ? u.id : ""; - }, onPickCategory(e) { const idx = Number(e.detail.value); const c = this.categories[idx]; this.form.categoryId = c ? c.id : ""; }, - scan() { - uni.scanCode({ onlyFromCamera: false, success: (res) => { - this.form.barcode = res.result; - } }); + async chooseAndScanBarcode() { + try { + const chooseRes = await uni.chooseImage({ count: 1, sourceType: ["camera", "album"], sizeType: ["compressed"] }); + let filePath = chooseRes.tempFilePaths[0]; + try { + const comp = await uni.compressImage({ src: filePath, quality: 80 }); + filePath = comp.tempFilePath || filePath; + } catch (e) { + } + const data = await upload("/api/barcode/scan", filePath, {}, "file"); + if (data && data.success && data.barcode) { + this.form.barcode = data.barcode; + uni.showToast({ title: "识别成功", icon: "success", mask: false }); + return; + } + const msg = data && (data.message || data.error || data.msg) || "未识别"; + uni.showToast({ title: msg, icon: "none", mask: false }); + } catch (e) { + const msg = e && e.message ? String(e.message) : "网络异常或服务不可用"; + uni.showToast({ title: msg, icon: "none", mask: false }); + } }, async loadDetail() { try { @@ -1872,17 +3726,11 @@ if (uni.restoreGlobal) { brand: data.brand, model: data.model, spec: data.spec, - origin: data.origin, categoryId: data.categoryId, - unitId: data.unitId, - stock: data.stock, - safeMin: data.safeMin, - safeMax: data.safeMax, - purchasePrice: data.purchasePrice, - retailPrice: data.retailPrice, - wholesalePrice: data.wholesalePrice, - bigClientPrice: data.bigClientPrice, - images: (data.images || []).map((i) => i.url || i) + images: (data.images || []).map((i) => i.url || i), + remark: data.remark || "", + platformStatus: data.platformStatus || "", + sourceSubmissionId: data.sourceSubmissionId || "" }); } catch (_) { } @@ -1892,10 +3740,6 @@ if (uni.restoreGlobal) { uni.showToast({ title: "请填写名称", icon: "none" }); return false; } - if (this.form.safeMin != null && this.form.safeMax != null && Number(this.form.safeMin) > Number(this.form.safeMax)) { - uni.showToast({ title: "安全库存区间不合法", icon: "none" }); - return false; - } return true; }, buildPayload() { @@ -1906,23 +3750,16 @@ if (uni.restoreGlobal) { brand: f.brand, model: f.model, spec: f.spec, - origin: f.origin, categoryId: f.categoryId || null, - unitId: f.unitId, - safeMin: f.safeMin, - safeMax: f.safeMax, - prices: { - purchasePrice: f.purchasePrice, - retailPrice: f.retailPrice, - wholesalePrice: f.wholesalePrice, - bigClientPrice: f.bigClientPrice - }, - stock: f.stock, images: f.images, remark: f.remark }; }, async save(goOn) { + try { + uni.hideKeyboard && uni.hideKeyboard(); + } catch (_) { + } if (!this.validate()) return; const payload = this.buildPayload(); @@ -1931,25 +3768,37 @@ if (uni.restoreGlobal) { await put("/api/products/" + this.id, payload); else await post("/api/products", payload); - uni.showToast({ title: "保存成功", icon: "success" }); + uni.showToast({ title: "保存成功", icon: "success", mask: false }); if (goOn && !this.id) { - this.form = { name: "", barcode: "", brand: "", model: "", spec: "", origin: "", categoryId: "", unitId: "", stock: null, safeMin: null, safeMax: null, purchasePrice: null, retailPrice: null, wholesalePrice: null, bigClientPrice: null, images: [], remark: "" }; + this.form = { name: "", barcode: "", brand: "", model: "", spec: "", categoryId: "", images: [], remark: "", platformStatus: "", sourceSubmissionId: "" }; } else { setTimeout(() => uni.navigateBack(), 400); } } catch (e) { - uni.showToast({ title: "保存失败", icon: "none" }); + uni.showToast({ title: "保存失败", icon: "none", mask: false }); } } } }; - function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) { const _component_ImageUploader = vue.resolveComponent("ImageUploader"); return vue.openBlock(), vue.createElementBlock("scroll-view", { "scroll-y": "", class: "page" }, [ - vue.createElementVNode("view", { class: "card" }, [ + vue.createCommentVNode(" 顶部标题与操作提示 "), + vue.createElementVNode("view", { class: "hero small" }, [ + vue.createElementVNode("text", { class: "title" }, "编辑货品"), + vue.createElementVNode("text", { class: "sub" }, "完善基础信息与价格") + ]), + $data.form.platformStatus === "platform" ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "tip platform" + }, "平台推荐货品,建议谨慎修改核心字段")) : $data.form.sourceSubmissionId ? (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "tip custom" + }, "此货品源于我的提交,审核通过后已入库")) : vue.createCommentVNode("v-if", true), + vue.createElementVNode("view", { class: "section" }, [ vue.createElementVNode("view", { class: "row" }, [ vue.createElementVNode("text", { class: "label" }, "商品名称"), vue.withDirectives(vue.createElementVNode( @@ -1975,6 +3824,7 @@ if (uni.restoreGlobal) { vue.withDirectives(vue.createElementVNode( "input", { + class: "input-long", "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.barcode = $event), placeholder: "可扫码或输入" }, @@ -1991,11 +3841,9 @@ if (uni.restoreGlobal) { ]), vue.createElementVNode("button", { size: "mini", - onClick: _cache[2] || (_cache[2] = (...args) => $options.scan && $options.scan(...args)) - }, "扫码") - ]), - vue.createElementVNode("view", { class: "row" }, [ - vue.createElementVNode("text", { class: "label" }, "品牌/型号/规格/产地") + class: "picker-btn", + onClick: _cache[2] || (_cache[2] = (...args) => $options.chooseAndScanBarcode && $options.chooseAndScanBarcode(...args)) + }, "图片识码") ]), vue.createElementVNode("view", { class: "row" }, [ vue.withDirectives(vue.createElementVNode( @@ -2054,43 +3902,13 @@ if (uni.restoreGlobal) { ] ]) ]), + vue.createCommentVNode(" 隐藏产地输入 "), + vue.createCommentVNode(" 隐藏主单位选择 "), vue.createElementVNode("view", { class: "row" }, [ - vue.withDirectives(vue.createElementVNode( - "input", - { - "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.form.origin = $event), - placeholder: "产地" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.origin, - void 0, - { trim: true } - ] - ]) - ]), - vue.createElementVNode("view", { class: "row" }, [ - vue.createElementVNode("picker", { - mode: "selector", - range: $options.unitNames, - onChange: _cache[7] || (_cache[7] = (...args) => $options.onPickUnit && $options.onPickUnit(...args)) - }, [ - vue.createElementVNode( - "view", - { class: "picker" }, - "主单位:" + vue.toDisplayString($options.unitLabel), - 1 - /* TEXT */ - ) - ], 40, ["range"]), vue.createElementVNode("picker", { mode: "selector", range: $options.categoryNames, - onChange: _cache[8] || (_cache[8] = (...args) => $options.onPickCategory && $options.onPickCategory(...args)) + onChange: _cache[6] || (_cache[6] = (...args) => $options.onPickCategory && $options.onPickCategory(...args)) }, [ vue.createElementVNode( "view", @@ -2102,160 +3920,22 @@ if (uni.restoreGlobal) { ], 40, ["range"]) ]) ]), - vue.createElementVNode("view", { class: "card" }, [ - vue.createElementVNode("view", { class: "row" }, [ - vue.createElementVNode("text", { class: "label" }, "库存与安全库存") - ]), - vue.createElementVNode("view", { class: "row" }, [ - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => $data.form.stock = $event), - placeholder: "当前库存" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.stock, - void 0, - { number: true } - ] - ]), - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => $data.form.safeMin = $event), - placeholder: "安全库存下限" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.safeMin, - void 0, - { number: true } - ] - ]), - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[11] || (_cache[11] = ($event) => $data.form.safeMax = $event), - placeholder: "安全库存上限" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.safeMax, - void 0, - { number: true } - ] - ]) - ]) - ]), - vue.createElementVNode("view", { class: "card" }, [ - vue.createElementVNode("view", { class: "row" }, [ - vue.createElementVNode("text", { class: "label" }, "价格(进价/零售/批发/大单)") - ]), - vue.createElementVNode("view", { class: "row prices" }, [ - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => $data.form.purchasePrice = $event), - placeholder: "进货价" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.purchasePrice, - void 0, - { number: true } - ] - ]), - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[13] || (_cache[13] = ($event) => $data.form.retailPrice = $event), - placeholder: "零售价" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.retailPrice, - void 0, - { number: true } - ] - ]), - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[14] || (_cache[14] = ($event) => $data.form.wholesalePrice = $event), - placeholder: "批发价" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.wholesalePrice, - void 0, - { number: true } - ] - ]), - vue.withDirectives(vue.createElementVNode( - "input", - { - type: "number", - "onUpdate:modelValue": _cache[15] || (_cache[15] = ($event) => $data.form.bigClientPrice = $event), - placeholder: "大单价" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [ - vue.vModelText, - $data.form.bigClientPrice, - void 0, - { number: true } - ] - ]) - ]) - ]), - vue.createElementVNode("view", { class: "card" }, [ + vue.createCommentVNode(" 隐藏库存与安全库存输入 "), + vue.createCommentVNode(" 隐藏价格相关输入 "), + vue.createElementVNode("view", { class: "section" }, [ vue.createElementVNode("text", { class: "label" }, "图片"), vue.createVNode(_component_ImageUploader, { modelValue: $data.form.images, - "onUpdate:modelValue": _cache[16] || (_cache[16] = ($event) => $data.form.images = $event), + "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.form.images = $event), formData: { ownerType: "product" } }, null, 8, ["modelValue"]) ]), - vue.createElementVNode("view", { class: "card" }, [ + vue.createElementVNode("view", { class: "section" }, [ vue.createElementVNode("text", { class: "label" }, "备注"), vue.withDirectives(vue.createElementVNode( "textarea", { - "onUpdate:modelValue": _cache[17] || (_cache[17] = ($event) => $data.form.remark = $event), + "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => $data.form.remark = $event), placeholder: "可选", "auto-height": "" }, @@ -2271,20 +3951,339 @@ if (uni.restoreGlobal) { ] ]) ]), - vue.createElementVNode("view", { class: "fixed" }, [ - vue.createElementVNode("button", { - type: "default", - onClick: _cache[18] || (_cache[18] = ($event) => $options.save(false)) - }, "保存"), - vue.createElementVNode("button", { - type: "primary", - onClick: _cache[19] || (_cache[19] = ($event) => $options.save(true)) - }, "保存并继续") - ]) + vue.createElementVNode( + "view", + { + class: "fixed", + style: vue.normalizeStyle({ bottom: ($data.keyboardHeight || 0) + "px" }) + }, + [ + vue.createElementVNode("button", { + class: "ghost", + onClick: _cache[9] || (_cache[9] = ($event) => $options.save(false)) + }, "保存"), + vue.createElementVNode("button", { + class: "primary", + onClick: _cache[10] || (_cache[10] = ($event) => $options.save(true)) + }, "保存并继续") + ], + 4 + /* STYLE */ + ) ]); } - const PagesProductForm = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$f], ["__file", "D:/wx/PartsInquiry/frontend/pages/product/form.vue"]]); - const _sfc_main$f = { + const PagesProductForm = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$l], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/form.vue"]]); + const _sfc_main$l = { + data() { + return { id: "", detail: null, categoryName: "-", templateName: "-" }; + }, + async onLoad(query) { + this.id = (query == null ? void 0 : query.id) || ""; + if (!this.id) { + uni.showToast({ title: "参数缺失", icon: "none" }); + return; + } + await this.preloadDictionaries(); + await this.loadDetail(); + }, + methods: { + async preloadDictionaries() { + try { + const needCats = !Array.isArray(uni.getStorageSync("CACHE_CATEGORIES")); + const needTpls = !Array.isArray(uni.getStorageSync("CACHE_TEMPLATES")); + if (!needCats && !needTpls) + return; + const reqs = []; + if (needCats) + reqs.push(get("/api/product-categories")); + if (needTpls) + reqs.push(get("/api/product-templates")); + const res = await Promise.all(reqs); + let idx = 0; + if (needCats) { + const r = res[idx++]; + const list = Array.isArray(r == null ? void 0 : r.list) ? r.list : Array.isArray(r) ? r : []; + uni.setStorageSync("CACHE_CATEGORIES", list); + } + if (needTpls) { + const r = res[idx++]; + const list = Array.isArray(r == null ? void 0 : r.list) ? r.list : Array.isArray(r) ? r : []; + uni.setStorageSync("CACHE_TEMPLATES", list); + } + } catch (_) { + } + }, + async loadDetail() { + try { + const data = await get("/api/products/" + this.id); + this.detail = data; + this.categoryName = this.categoryLookup(data.categoryId); + this.templateName = this.templateLookup(data.templateId); + } catch (e) { + uni.showToast({ title: (e == null ? void 0 : e.message) || "加载失败", icon: "none" }); + } + }, + preview(idx) { + var _a; + try { + const list = (((_a = this.detail) == null ? void 0 : _a.images) || []).map((i) => i.url || i); + uni.previewImage({ urls: list, current: idx }); + } catch (_) { + } + }, + categoryLookup(id) { + try { + const list = uni.getStorageSync("CACHE_CATEGORIES") || []; + const f = list.find((x) => String(x.id) === String(id)); + return f ? f.name : "-"; + } catch (_) { + return "-"; + } + }, + templateLookup(id) { + try { + const list = uni.getStorageSync("CACHE_TEMPLATES") || []; + const f = list.find((x) => String(x.id) === String(id)); + return f ? f.name : "-"; + } catch (_) { + return "-"; + } + }, + async remove() { + try { + const r = await new Promise((resolve) => { + uni.showModal({ content: "确认删除该货品?删除后可在后台恢复", success: resolve }); + }); + if (!r || !r.confirm) + return; + await del("/api/products/" + this.id); + uni.showToast({ title: "已删除", icon: "success" }); + setTimeout(() => uni.navigateBack(), 400); + } catch (e) { + uni.showToast({ title: "删除失败", icon: "none" }); + } + }, + back() { + uni.navigateBack({ delta: 1 }); + } + }, + computed: { + labeledPairs() { + var _a; + const params = (_a = this.detail) == null ? void 0 : _a.parameters; + if (!params || typeof params !== "object") + return []; + let labelMap = {}, unitMap = {}; + try { + const templates = uni.getStorageSync("CACHE_TEMPLATES") || []; + const tpl = templates.find((t) => { + var _a2; + return String(t.id) === String((_a2 = this.detail) == null ? void 0 : _a2.templateId); + }); + if (tpl && Array.isArray(tpl.params)) + for (const p of tpl.params) { + labelMap[p.fieldKey] = p.fieldLabel; + unitMap[p.fieldKey] = p.unit; + } + } catch (_) { + } + return Object.keys(params).map((k) => ({ key: k, label: labelMap[k] || k, unit: unitMap[k] || "", value: params[k] })); + } + } + }; + function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) { + return $data.detail ? (vue.openBlock(), vue.createElementBlock("scroll-view", { + key: 0, + "scroll-y": "", + class: "page" + }, [ + vue.createElementVNode("view", { class: "header" }, [ + vue.createElementVNode( + "text", + { class: "model" }, + vue.toDisplayString($data.detail.model), + 1 + /* TEXT */ + ), + $data.detail.deleted ? (vue.openBlock(), vue.createElementBlock("text", { + key: 0, + class: "status deleted" + }, "已删除")) : vue.createCommentVNode("v-if", true) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "名称"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.name || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "品牌"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.brand || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "型号"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.model || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "条码"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.barcode || "-"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "类别"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.categoryName), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "模板"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.templateName), + 1 + /* TEXT */ + ) + ]), + $data.detail.externalCode ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "row" + }, [ + vue.createElementVNode("text", { class: "label" }, "编号"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($data.detail.externalCode), + 1 + /* TEXT */ + ) + ])) : vue.createCommentVNode("v-if", true) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "block-title" }, "参数"), + $options.labeledPairs.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "params" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($options.labeledPairs, (item) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "param", + key: item.key + }, [ + vue.createElementVNode("text", { class: "param-key" }, [ + vue.createTextVNode( + vue.toDisplayString(item.label), + 1 + /* TEXT */ + ), + item.unit ? (vue.openBlock(), vue.createElementBlock( + "text", + { key: 0 }, + "(" + vue.toDisplayString(item.unit) + ")", + 1 + /* TEXT */ + )) : vue.createCommentVNode("v-if", true) + ]), + vue.createElementVNode( + "text", + { class: "param-val" }, + vue.toDisplayString(item.value), + 1 + /* TEXT */ + ) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "placeholder" + }, "未填写参数")) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "block-title" }, "图片"), + $data.detail.images && $data.detail.images.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "images" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.detail.images, (img, idx) => { + return vue.openBlock(), vue.createElementBlock("image", { + key: idx, + src: img.url || img, + class: "image", + mode: "aspectFill", + onClick: ($event) => $options.preview(idx) + }, null, 8, ["src", "onClick"]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "placeholder" + }, "未上传图片")) + ]), + vue.createElementVNode("view", { class: "section" }, [ + vue.createElementVNode("view", { class: "block-title" }, "备注"), + vue.createElementVNode( + "view", + { class: "placeholder" }, + vue.toDisplayString($data.detail.remark || "无"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "footer" }, [ + vue.createElementVNode("button", { + size: "mini", + onClick: _cache[0] || (_cache[0] = (...args) => $options.back && $options.back(...args)) + }, "返回"), + vue.createElementVNode("button", { + size: "mini", + type: "warn", + onClick: _cache[1] || (_cache[1] = (...args) => $options.remove && $options.remove(...args)) + }, "删除") + ]) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "loading" + }, "加载中...")); + } + const PagesProductProductDetail = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$k], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/product-detail.vue"]]); + const _sfc_main$k = { data() { return { name: "", list: [] }; }, @@ -2320,7 +4319,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "toolbar" }, [ vue.withDirectives(vue.createElementVNode( @@ -2386,8 +4385,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesProductCategories = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$e], ["__file", "D:/wx/PartsInquiry/frontend/pages/product/categories.vue"]]); - const _sfc_main$e = { + const PagesProductCategories = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$j], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/categories.vue"]]); + const _sfc_main$j = { data() { return { name: "", list: [] }; }, @@ -2423,7 +4422,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "toolbar" }, [ vue.withDirectives(vue.createElementVNode( @@ -2489,8 +4488,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesProductUnits = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d], ["__file", "D:/wx/PartsInquiry/frontend/pages/product/units.vue"]]); - const _sfc_main$d = { + const PagesProductUnits = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$i], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/units.vue"]]); + const _sfc_main$i = { data() { return { settings: { hideZeroStock: false, hidePurchasePrice: false } }; }, @@ -2515,7 +4514,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "item" }, [ vue.createElementVNode("text", null, "隐藏零库存商品"), @@ -2533,8 +4532,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesProductSettings = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c], ["__file", "D:/wx/PartsInquiry/frontend/pages/product/settings.vue"]]); - const _sfc_main$c = { + const PagesProductSettings = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$h], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/product/settings.vue"]]); + const _sfc_main$h = { data() { return { kw: "", debtOnly: false, customers: [] }; }, @@ -2575,7 +4574,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "search" }, [ vue.withDirectives(vue.createElementVNode( @@ -2649,12 +4648,12 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesCustomerSelect = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b], ["__file", "D:/wx/PartsInquiry/frontend/pages/customer/select.vue"]]); - const _sfc_main$b = { + const PagesCustomerSelect = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$g], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/customer/select.vue"]]); + const _sfc_main$g = { data() { return { id: null, - form: { name: "", level: "", priceLevel: "retail", contactName: "", mobile: "", phone: "", address: "", arOpening: 0, remark: "" }, + form: { name: "", priceLevel: "retail", contactName: "", mobile: "", phone: "", address: "", arOpening: 0, remark: "" }, priceLevels: ["零售价", "批发价", "大单报价"], priceLabels: ["零售价", "批发价", "大单报价"], priceIdx: 0 @@ -2663,6 +4662,7 @@ if (uni.restoreGlobal) { onLoad(query) { if (query && query.id) { this.id = Number(query.id); + this.load(); } }, methods: { @@ -2670,6 +4670,27 @@ if (uni.restoreGlobal) { this.priceIdx = Number(e.detail.value); this.form.priceLevel = this.priceLevels[this.priceIdx]; }, + async load() { + if (!this.id) + return; + try { + const d = await get(`/api/customers/${this.id}`); + this.form = { + name: (d == null ? void 0 : d.name) || "", + priceLevel: (d == null ? void 0 : d.priceLevel) || "零售价", + contactName: (d == null ? void 0 : d.contactName) || "", + mobile: (d == null ? void 0 : d.mobile) || "", + phone: (d == null ? void 0 : d.phone) || "", + address: (d == null ? void 0 : d.address) || "", + arOpening: Number((d == null ? void 0 : d.arOpening) || 0), + remark: (d == null ? void 0 : d.remark) || "" + }; + const idx = this.priceLevels.indexOf(this.form.priceLevel || "零售价"); + this.priceIdx = idx >= 0 ? idx : 0; + } catch (e) { + uni.showToast({ title: (e == null ? void 0 : e.message) || "加载失败", icon: "none" }); + } + }, async save() { if (!this.form.name) return uni.showToast({ title: "请填写客户名称", icon: "none" }); @@ -2686,7 +4707,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "field" }, [ vue.createElementVNode("text", { class: "label" }, "客户名称"), @@ -2704,28 +4725,12 @@ if (uni.restoreGlobal) { [vue.vModelText, $data.form.name] ]) ]), - vue.createElementVNode("view", { class: "field" }, [ - vue.createElementVNode("text", { class: "label" }, "客户等级"), - vue.withDirectives(vue.createElementVNode( - "input", - { - class: "value", - "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.level = $event), - placeholder: "可选,如 VIP/A/B" - }, - null, - 512 - /* NEED_PATCH */ - ), [ - [vue.vModelText, $data.form.level] - ]) - ]), vue.createElementVNode("view", { class: "field" }, [ vue.createElementVNode("text", { class: "label" }, "售价档位"), vue.createElementVNode("picker", { range: $data.priceLabels, value: $data.priceIdx, - onChange: _cache[2] || (_cache[2] = (...args) => $options.onPriceChange && $options.onPriceChange(...args)) + onChange: _cache[1] || (_cache[1] = (...args) => $options.onPriceChange && $options.onPriceChange(...args)) }, [ vue.createElementVNode( "view", @@ -2742,7 +4747,7 @@ if (uni.restoreGlobal) { "input", { class: "value", - "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => $data.form.contactName = $event), + "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.form.contactName = $event), placeholder: "可选" }, null, @@ -2758,7 +4763,7 @@ if (uni.restoreGlobal) { "input", { class: "value", - "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => $data.form.mobile = $event), + "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => $data.form.mobile = $event), placeholder: "可选" }, null, @@ -2774,7 +4779,7 @@ if (uni.restoreGlobal) { "input", { class: "value", - "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.form.phone = $event), + "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => $data.form.phone = $event), placeholder: "可选(座机)" }, null, @@ -2790,7 +4795,7 @@ if (uni.restoreGlobal) { "input", { class: "value", - "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.form.address = $event), + "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.form.address = $event), placeholder: "可选" }, null, @@ -2807,7 +4812,7 @@ if (uni.restoreGlobal) { { class: "value", type: "digit", - "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.form.arOpening = $event), + "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.form.arOpening = $event), placeholder: "默认 0.00" }, null, @@ -2826,7 +4831,7 @@ if (uni.restoreGlobal) { vue.withDirectives(vue.createElementVNode( "textarea", { - "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => $data.form.remark = $event), + "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.form.remark = $event), maxlength: "200", placeholder: "备注(最多200字)" }, @@ -2840,15 +4845,15 @@ if (uni.restoreGlobal) { vue.createElementVNode("view", { class: "bottom" }, [ vue.createElementVNode("button", { class: "primary", - onClick: _cache[9] || (_cache[9] = (...args) => $options.save && $options.save(...args)) + onClick: _cache[8] || (_cache[8] = (...args) => $options.save && $options.save(...args)) }, "保存") ]) ]); } - const PagesCustomerForm = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a], ["__file", "D:/wx/PartsInquiry/frontend/pages/customer/form.vue"]]); - const _sfc_main$a = { + const PagesCustomerForm = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$f], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/customer/form.vue"]]); + const _sfc_main$f = { data() { - return { id: null, d: {}, editing: false, form: { name: "", contactName: "", mobile: "", phone: "", address: "", level: "", priceLevel: "零售价", arOpening: 0, remark: "" }, priceLevels: ["零售价", "批发价", "大单报价"], priceLabels: ["零售价", "批发价", "大单报价"], priceIdx: 0 }; + return { id: null, d: {}, editing: false, form: { name: "", contactName: "", mobile: "", phone: "", address: "", priceLevel: "零售价", arOpening: 0, remark: "" }, priceLevels: ["零售价", "批发价", "大单报价"], priceLabels: ["零售价", "批发价", "大单报价"], priceIdx: 0 }; }, onLoad(q) { if (q && q.id) { @@ -2866,7 +4871,6 @@ if (uni.restoreGlobal) { mobile: this.d.mobile || "", phone: this.d.phone || "", address: this.d.address || "", - level: this.d.level || "", priceLevel: this.d.priceLevel || "retail", arOpening: Number(this.d.arOpening || 0), remark: this.d.remark || "" @@ -2917,7 +4921,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "card" }, [ vue.createElementVNode("view", { class: "row" }, [ @@ -3050,32 +5054,6 @@ if (uni.restoreGlobal) { [vue.vModelText, $data.form.address] ]) ]), - vue.createElementVNode("view", { class: "row" }, [ - vue.createElementVNode("text", { class: "label" }, "等级"), - !$data.editing ? (vue.openBlock(), vue.createElementBlock( - "text", - { - key: 0, - class: "value" - }, - vue.toDisplayString($data.d.level || "—"), - 1 - /* TEXT */ - )) : vue.withDirectives((vue.openBlock(), vue.createElementBlock( - "input", - { - key: 1, - class: "value-input", - "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.form.level = $event), - placeholder: "可选,如 VIP/A/B" - }, - null, - 512 - /* NEED_PATCH */ - )), [ - [vue.vModelText, $data.form.level] - ]) - ]), vue.createElementVNode("view", { class: "row" }, [ vue.createElementVNode("text", { class: "label" }, "售价档位"), !$data.editing ? (vue.openBlock(), vue.createElementBlock( @@ -3091,7 +5069,7 @@ if (uni.restoreGlobal) { key: 1, range: $data.priceLabels, value: $data.priceIdx, - onChange: _cache[6] || (_cache[6] = (...args) => $options.onPriceChange && $options.onPriceChange(...args)) + onChange: _cache[5] || (_cache[5] = (...args) => $options.onPriceChange && $options.onPriceChange(...args)) }, [ vue.createElementVNode( "view", @@ -3119,7 +5097,7 @@ if (uni.restoreGlobal) { key: 1, class: "value-input", type: "digit", - "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.form.arOpening = $event), + "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.form.arOpening = $event), placeholder: "0.00" }, null, @@ -3160,7 +5138,7 @@ if (uni.restoreGlobal) { { key: 1, class: "value-input", - "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => $data.form.remark = $event), + "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.form.remark = $event), placeholder: "—" }, null, @@ -3176,7 +5154,7 @@ if (uni.restoreGlobal) { "button", { class: "ghost", - onClick: _cache[9] || (_cache[9] = (...args) => $options.toggleEdit && $options.toggleEdit(...args)) + onClick: _cache[8] || (_cache[8] = (...args) => $options.toggleEdit && $options.toggleEdit(...args)) }, vue.toDisplayString($data.editing ? "取消" : "编辑"), 1 @@ -3185,17 +5163,17 @@ if (uni.restoreGlobal) { $data.editing ? (vue.openBlock(), vue.createElementBlock("button", { key: 0, class: "primary", - onClick: _cache[10] || (_cache[10] = (...args) => $options.save && $options.save(...args)) + onClick: _cache[9] || (_cache[9] = (...args) => $options.save && $options.save(...args)) }, "保存")) : (vue.openBlock(), vue.createElementBlock("button", { key: 1, class: "primary", - onClick: _cache[11] || (_cache[11] = (...args) => $options.choose && $options.choose(...args)) + onClick: _cache[10] || (_cache[10] = (...args) => $options.choose && $options.choose(...args)) }, "选择此客户")) ]) ]); } - const PagesCustomerDetail = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9], ["__file", "D:/wx/PartsInquiry/frontend/pages/customer/detail.vue"]]); - const _sfc_main$9 = { + const PagesCustomerDetail = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$e], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/customer/detail.vue"]]); + const _sfc_main$e = { data() { return { kw: "", debtOnly: false, suppliers: [] }; }, @@ -3219,16 +5197,26 @@ if (uni.restoreGlobal) { uni.navigateTo({ url: "/pages/supplier/form" }); }, select(s) { - const opener = getCurrentPages()[getCurrentPages().length - 2]; - if (opener && opener.$vm) { - opener.$vm.order.supplierId = s.id; - opener.$vm.supplierName = s.name; + try { + const pages = getCurrentPages(); + const opener = pages && pages.length >= 2 ? pages[pages.length - 2] : null; + const vm = opener && opener.$vm ? opener.$vm : null; + const canPick = !!(vm && vm.order); + if (canPick) { + vm.order.supplierId = s.id; + if (Object.prototype.hasOwnProperty.call(vm, "supplierName")) + vm.supplierName = s.name; + uni.navigateBack(); + } else { + uni.navigateTo({ url: `/pages/supplier/form?id=${s.id}` }); + } + } catch (_) { + uni.navigateTo({ url: `/pages/supplier/form?id=${s.id}` }); } - uni.navigateBack(); } } }; - function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "search" }, [ vue.withDirectives(vue.createElementVNode( @@ -3302,8 +5290,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesSupplierSelect = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8], ["__file", "D:/wx/PartsInquiry/frontend/pages/supplier/select.vue"]]); - const _sfc_main$8 = { + const PagesSupplierSelect = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/supplier/select.vue"]]); + const _sfc_main$d = { data() { return { id: null, @@ -3313,9 +5301,29 @@ if (uni.restoreGlobal) { onLoad(query) { if (query && query.id) { this.id = Number(query.id); + this.load(); } }, methods: { + async load() { + if (!this.id) + return; + try { + const d = await get(`/api/suppliers/${this.id}`); + this.form = { + name: (d == null ? void 0 : d.name) || "", + contactName: (d == null ? void 0 : d.contactName) || "", + mobile: (d == null ? void 0 : d.mobile) || "", + phone: (d == null ? void 0 : d.phone) || "", + address: (d == null ? void 0 : d.address) || "", + apOpening: Number((d == null ? void 0 : d.apOpening) || 0), + apPayable: Number((d == null ? void 0 : d.apPayable) || 0), + remark: (d == null ? void 0 : d.remark) || "" + }; + } catch (e) { + uni.showToast({ title: (e == null ? void 0 : e.message) || "加载失败", icon: "none" }); + } + }, async save() { if (!this.form.name) return uni.showToast({ title: "请填写供应商名称", icon: "none" }); @@ -3332,7 +5340,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "field" }, [ vue.createElementVNode("text", { class: "label" }, "供应商名称"), @@ -3481,9 +5489,9 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesSupplierForm = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__file", "D:/wx/PartsInquiry/frontend/pages/supplier/form.vue"]]); + const PagesSupplierForm = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/supplier/form.vue"]]); const TYPE_MAP = { cash: "现金", bank: "银行", alipay: "支付宝", wechat: "微信", other: "其他" }; - const _sfc_main$7 = { + const _sfc_main$c = { data() { return { accounts: [], mode: "view" }; }, @@ -3517,7 +5525,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("scroll-view", { "scroll-y": "", @@ -3559,8 +5567,8 @@ if (uni.restoreGlobal) { }, "+") ]); } - const PagesAccountSelect = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6], ["__file", "D:/wx/PartsInquiry/frontend/pages/account/select.vue"]]); - const _sfc_main$6 = { + const PagesAccountSelect = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/account/select.vue"]]); + const _sfc_main$b = { data() { return { accountId: null, startDate: "", endDate: "", list: [], opening: 0, income: 0, expense: 0, ending: 0 }; }, @@ -3605,7 +5613,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "filters" }, [ vue.createElementVNode("picker", { @@ -3734,8 +5742,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesAccountLedger = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5], ["__file", "D:/wx/PartsInquiry/frontend/pages/account/ledger.vue"]]); - const _sfc_main$5 = { + const PagesAccountLedger = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/account/ledger.vue"]]); + const _sfc_main$a = { data() { return { id: null, @@ -3789,7 +5797,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_popup = vue.resolveComponent("uni-popup"); return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ vue.createElementVNode("view", { class: "form" }, [ @@ -3919,15 +5927,14 @@ if (uni.restoreGlobal) { }, 8, ["modelValue"]) ]); } - const PagesAccountForm = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__file", "D:/wx/PartsInquiry/frontend/pages/account/form.vue"]]); + const PagesAccountForm = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/account/form.vue"]]); const API_OF = { sale: "/api/orders", purchase: "/api/purchase-orders", collect: "/api/payments", - fund: "/api/other-transactions", - stock: "/api/inventories/logs" + fund: "/api/other-transactions" }; - const _sfc_main$4 = { + const _sfc_main$9 = { data() { return { biz: "sale", @@ -3935,18 +5942,19 @@ if (uni.restoreGlobal) { { key: "sale", name: "出货" }, { key: "purchase", name: "进货" }, { key: "collect", name: "收款" }, - { key: "fund", name: "资金" }, - { key: "stock", name: "盘点" } + { key: "fund", name: "资金" } ], range: "month", query: { kw: "" }, items: [], page: 1, - size: 20, + size: 15, finished: false, loading: false, startDate: "", - endDate: "" + endDate: "", + nonVipRetentionDays: 0, + isVip: false }; }, computed: { @@ -3961,8 +5969,21 @@ if (uni.restoreGlobal) { } }, onLoad() { + const hasToken = (() => { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + })(); + if (!hasToken) { + this.items = []; + this.total = 0; + uni.showToast({ title: "请登录使用该功能", icon: "none" }); + return; + } try { - formatAppLog("log", "at pages/detail/index.vue:92", "[detail] onLoad route = pages/detail/index"); + formatAppLog("log", "at pages/detail/index.vue:104", "[detail] onLoad route = pages/detail/index"); } catch (e) { } this.computeRange(); @@ -4010,6 +6031,20 @@ if (uni.restoreGlobal) { this.finished = false; this.loadMore(); }, + onStartChange(e) { + var _a; + this.startDate = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) || this.startDate; + if (this.endDate && this.startDate > this.endDate) + this.endDate = this.startDate; + this.reload(); + }, + onEndChange(e) { + var _a; + this.endDate = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) || this.endDate; + if (this.startDate && this.endDate < this.startDate) + this.startDate = this.endDate; + this.reload(); + }, async loadMore() { if (this.loading || this.finished) return; @@ -4025,12 +6060,43 @@ if (uni.restoreGlobal) { if (list.length < this.size) this.finished = true; this.page += 1; + await this.hintIfNonVipOutOfWindow(); } catch (e) { uni.showToast({ title: "加载失败", icon: "none" }); } finally { this.loading = false; } }, + async hintIfNonVipOutOfWindow() { + try { + if (this.isVip && this.isVip === true) + return; + if (!this.nonVipRetentionDays) { + const v = await get("/api/vip/status"); + this.isVip = !!(v == null ? void 0 : v.isVip); + this.nonVipRetentionDays = Number((v == null ? void 0 : v.nonVipRetentionDays) || 60); + if (this.isVip) + return; + } + if (!this.startDate) + return; + const start = new Date(this.startDate).getTime(); + const threshold = Date.now() - this.nonVipRetentionDays * 24 * 3600 * 1e3; + if (start < threshold) { + uni.showModal({ + title: "提示", + content: `普通用户仅显示近${this.nonVipRetentionDays}天数据,开通VIP可查看全部历史。`, + confirmText: "去开通VIP", + cancelText: "我知道了", + success: (r) => { + if (r.confirm) + uni.navigateTo({ url: "/pages/my/vip" }); + } + }); + } + } catch (e) { + } + }, formatDate(s) { if (!s) return ""; @@ -4054,62 +6120,9 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "page" }, [ - vue.createCommentVNode(" 顶部时间维度筛选 "), - vue.createElementVNode("view", { class: "seg" }, [ - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["seg-item", $data.range === "custom" && "active"]), - onClick: _cache[0] || (_cache[0] = ($event) => $options.switchRange("custom")) - }, - "自定义", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["seg-item", $data.range === "week" && "active"]), - onClick: _cache[1] || (_cache[1] = ($event) => $options.switchRange("week")) - }, - "本周", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["seg-item", $data.range === "today" && "active"]), - onClick: _cache[2] || (_cache[2] = ($event) => $options.switchRange("today")) - }, - "今日", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["seg-item", $data.range === "month" && "active"]), - onClick: _cache[3] || (_cache[3] = ($event) => $options.switchRange("month")) - }, - "本月", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["seg-item", $data.range === "year" && "active"]), - onClick: _cache[4] || (_cache[4] = ($event) => $options.switchRange("year")) - }, - "本年", - 2 - /* CLASS */ - ) - ]), - vue.createCommentVNode(" 业务类型侧边切换:销售/进货/收款/资金/盘点 "), + vue.createCommentVNode(" 业务类型侧边切换:销售/进货/收款/资金 "), vue.createElementVNode("view", { class: "content" }, [ vue.createElementVNode("view", { class: "biz-tabs" }, [ (vue.openBlock(true), vue.createElementBlock( @@ -4127,34 +6140,60 @@ if (uni.restoreGlobal) { )) ]), vue.createElementVNode("view", { class: "panel" }, [ - vue.createCommentVNode(" 搜索框与期间显示、总额 "), + vue.createCommentVNode(" 期间选择 + 搜索框 + 查询按钮 "), vue.createElementVNode("view", { class: "toolbar" }, [ - vue.createElementVNode("view", { class: "search" }, [ - vue.withDirectives(vue.createElementVNode("input", { - class: "search-input", - "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.query.kw = $event), - placeholder: $options.placeholder, - onConfirm: _cache[6] || (_cache[6] = (...args) => $options.reload && $options.reload(...args)) - }, null, 40, ["placeholder"]), [ - [ - vue.vModelText, - $data.query.kw, - void 0, - { trim: true } - ] - ]) + vue.createElementVNode("view", { class: "period-group" }, [ + vue.createElementVNode("text", { class: "period-label" }, "期间"), + vue.createElementVNode("picker", { + mode: "date", + value: $data.startDate, + onChange: _cache[0] || (_cache[0] = (...args) => $options.onStartChange && $options.onStartChange(...args)) + }, [ + vue.createElementVNode( + "view", + { class: "date-chip" }, + vue.toDisplayString($data.startDate), + 1 + /* TEXT */ + ) + ], 40, ["value"]), + vue.createElementVNode("text", { class: "sep" }, "~"), + vue.createElementVNode("picker", { + mode: "date", + value: $data.endDate, + onChange: _cache[1] || (_cache[1] = (...args) => $options.onEndChange && $options.onEndChange(...args)) + }, [ + vue.createElementVNode( + "view", + { class: "date-chip" }, + vue.toDisplayString($data.endDate), + 1 + /* TEXT */ + ) + ], 40, ["value"]) ]), - vue.createElementVNode( - "view", - { class: "period" }, - vue.toDisplayString($options.periodLabel), - 1 - /* TEXT */ - ), - vue.createElementVNode("button", { - size: "mini", - onClick: _cache[7] || (_cache[7] = (...args) => $options.reload && $options.reload(...args)) - }, "查询") + vue.createElementVNode("view", { class: "search-row" }, [ + vue.createElementVNode("view", { class: "search" }, [ + vue.withDirectives(vue.createElementVNode("input", { + class: "search-input", + "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.query.kw = $event), + placeholder: $options.placeholder, + onConfirm: _cache[3] || (_cache[3] = (...args) => $options.reload && $options.reload(...args)) + }, null, 40, ["placeholder"]), [ + [ + vue.vModelText, + $data.query.kw, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("button", { + class: "btn", + size: "mini", + onClick: _cache[4] || (_cache[4] = (...args) => $options.reload && $options.reload(...args)) + }, "查询") + ]) ]), vue.createElementVNode( "view", @@ -4169,7 +6208,7 @@ if (uni.restoreGlobal) { { "scroll-y": "", class: "list", - onScrolltolower: _cache[8] || (_cache[8] = (...args) => $options.loadMore && $options.loadMore(...args)) + onScrolltolower: _cache[5] || (_cache[5] = (...args) => $options.loadMore && $options.loadMore(...args)) }, [ $data.items.length ? (vue.openBlock(true), vue.createElementBlock( @@ -4206,10 +6245,12 @@ if (uni.restoreGlobal) { ]), vue.createElementVNode( "view", - { class: "amount" }, + { + class: vue.normalizeClass(["amount", { in: Number(it.amount || 0) >= 0, out: Number(it.amount || 0) < 0 }]) + }, "¥ " + vue.toDisplayString((it.amount || 0).toFixed(2)), - 1 - /* TEXT */ + 3 + /* TEXT, CLASS */ ), vue.createElementVNode("view", { class: "arrow" }, "›") ], 8, ["onClick"]); @@ -4219,7 +6260,23 @@ if (uni.restoreGlobal) { )) : (vue.openBlock(), vue.createElementBlock("view", { key: 1, class: "empty" - }, "暂无数据")) + }, "暂无数据")), + $data.items.length && !$data.finished ? vue.withDirectives((vue.openBlock(), vue.createElementBlock( + "view", + { + key: 2, + class: "loading" + }, + "加载中...", + 512 + /* NEED_PATCH */ + )), [ + [vue.vShow, $data.loading] + ]) : vue.createCommentVNode("v-if", true), + $data.finished && $data.items.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 3, + class: "finished" + }, "没有更多了")) : vue.createCommentVNode("v-if", true) ], 32 /* NEED_HYDRATION */ @@ -4227,77 +6284,1074 @@ if (uni.restoreGlobal) { vue.createCommentVNode(" 右下角新增按钮:根据业务类型跳转对应开单页或创建页 "), vue.createElementVNode("view", { class: "fab", - onClick: _cache[9] || (_cache[9] = (...args) => $options.onCreate && $options.onCreate(...args)) + onClick: _cache[6] || (_cache[6] = (...args) => $options.onCreate && $options.onCreate(...args)) }, "+") ]) ]) ]); } - const PagesDetailIndex = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3], ["__file", "D:/wx/PartsInquiry/frontend/pages/detail/index.vue"]]); - const _sfc_main$3 = { + const PagesDetailIndex = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/detail/index.vue"]]); + const _sfc_main$8 = { data() { return { - avatarUrl: "/static/logo.png", - shopName: "我的店铺", - mobile: "" + loading: false, + tab: "login", + authLoginTopImage: AUTH_LOGIN_TOP_IMAGE, + loginForm: { email: "", password: "" }, + regForm: { name: "", email: "", code: "", password: "", password2: "" }, + resetForm: { email: "", code: "", password: "", password2: "" }, + regCountdown: 0, + resetCountdown: 0, + _timers: [] }; }, - onLoad() { - this.fetchProfile(); + beforeUnmount() { + this._timers.forEach((t) => clearInterval(t)); + }, + methods: { + gotoRegister() { + this.tab = "register"; + }, + gotoReset() { + this.tab = "reset"; + }, + toast(msg) { + try { + uni.showToast({ title: String(msg || "操作失败"), icon: "none" }); + } catch (_) { + } + }, + validateEmail(v) { + return /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/.test(String(v || "").trim()); + }, + startCountdown(key) { + if (this[key] > 0) + return; + this[key] = 60; + const timer = setInterval(() => { + this[key] = Math.max(0, this[key] - 1); + if (this[key] === 0) + clearInterval(timer); + }, 1e3); + this._timers.push(timer); + }, + async onLogin() { + const { email, password } = this.loginForm; + if (!this.validateEmail(email)) + return this.toast("请输入正确邮箱"); + if (!password || password.length < 6) + return this.toast("请输入至少6位密码"); + this.loading = true; + try { + const data = await post("/api/auth/password/login", { email, password }); + this.afterLogin(data); + } catch (e) { + this.toast(e.message); + } finally { + this.loading = false; + } + }, + afterLogin(data) { + try { + if (data && data.token) { + uni.setStorageSync("TOKEN", data.token); + if (data.user && data.user.shopId) + uni.setStorageSync("SHOP_ID", data.user.shopId); + uni.setStorageSync("ENABLE_DEFAULT_USER", "false"); + uni.removeStorageSync("DEFAULT_USER_ID"); + this.toast("登录成功"); + setTimeout(() => { + uni.reLaunch({ url: "/pages/index/index" }); + }, 300); + } else { + this.toast("登录失败"); + } + } catch (_) { + this.toast("登录失败"); + } + }, + async sendRegCode() { + if (!this.validateEmail(this.regForm.email)) + return this.toast("请输入正确邮箱"); + this.loading = true; + try { + const r = await post("/api/auth/email/send", { email: this.regForm.email, scene: "register" }); + if (r && r.ok) + this.startCountdown("regCountdown"); + this.toast(r && r.ok ? "验证码已发送" : "发送过于频繁"); + } catch (e) { + this.toast(e.message); + } finally { + this.loading = false; + } + }, + async onRegister() { + const f = this.regForm; + if (!f.name || f.name.trim().length < 1) + return this.toast("请输入用户名"); + if (!this.validateEmail(f.email)) + return this.toast("请输入正确邮箱"); + if (!f.code) + return this.toast("请输入验证码"); + if (!f.password || f.password.length < 6) + return this.toast("密码至少6位"); + if (f.password !== f.password2) + return this.toast("两次密码不一致"); + this.loading = true; + try { + const data = await post("/api/auth/email/register", { name: f.name.trim(), email: f.email.trim(), code: f.code.trim(), password: f.password }); + this.afterLogin(data); + } catch (e) { + this.toast(e.message); + } finally { + this.loading = false; + } + }, + async sendResetCode() { + if (!this.validateEmail(this.resetForm.email)) + return this.toast("请输入正确邮箱"); + this.loading = true; + try { + const r = await post("/api/auth/email/send", { email: this.resetForm.email, scene: "reset" }); + if (r && r.ok) + this.startCountdown("resetCountdown"); + this.toast(r && r.ok ? "验证码已发送" : "发送过于频繁"); + } catch (e) { + this.toast(e.message); + } finally { + this.loading = false; + } + }, + async onReset() { + const f = this.resetForm; + if (!this.validateEmail(f.email)) + return this.toast("请输入正确邮箱"); + if (!f.code) + return this.toast("请输入验证码"); + if (!f.password || f.password.length < 6) + return this.toast("新密码至少6位"); + if (f.password !== f.password2) + return this.toast("两次密码不一致"); + this.loading = true; + try { + const r = await post("/api/auth/email/reset-password", { email: f.email.trim(), code: f.code.trim(), newPassword: f.password, confirmPassword: f.password2 }); + if (r && r.ok) { + this.toast("已重置,请使用新密码登录"); + this.tab = "login"; + this.loginForm.email = f.email; + } else + this.toast("重置失败"); + } catch (e) { + this.toast(e.message); + } finally { + this.loading = false; + } + } + } + }; + function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "auth-page" }, [ + vue.createElementVNode("view", { class: "login-hero" }, [ + vue.createElementVNode("image", { + class: "login-hero-img", + src: $data.authLoginTopImage, + mode: "widthFix" + }, null, 8, ["src"]) + ]), + vue.createElementVNode("view", { class: "header" }, [ + vue.createElementVNode("text", { class: "title" }, "邮箱密码登录") + ]), + $data.tab === "login" ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "panel" + }, [ + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "text", + "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.loginForm.email = $event), + placeholder: "输入邮箱" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.loginForm.email, + void 0, + { trim: true } + ] + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "password", + "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.loginForm.password = $event), + placeholder: "输入密码" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [vue.vModelText, $data.loginForm.password] + ]), + vue.createElementVNode("button", { + class: "btn primary", + disabled: $data.loading, + onClick: _cache[2] || (_cache[2] = (...args) => $options.onLogin && $options.onLogin(...args)) + }, "登录", 8, ["disabled"]), + vue.createElementVNode("view", { class: "quick-inline" }, [ + vue.createElementVNode("button", { + class: "quick-link", + onClick: _cache[3] || (_cache[3] = (...args) => $options.gotoRegister && $options.gotoRegister(...args)) + }, "注册"), + vue.createElementVNode("button", { + class: "quick-link", + onClick: _cache[4] || (_cache[4] = (...args) => $options.gotoReset && $options.gotoReset(...args)) + }, "忘记密码") + ]) + ])) : vue.createCommentVNode("v-if", true), + $data.tab === "register" ? (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "panel minor" + }, [ + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "text", + "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.regForm.name = $event), + placeholder: "输入用户名" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.regForm.name, + void 0, + { trim: true } + ] + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "text", + "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.regForm.email = $event), + placeholder: "输入邮箱" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.regForm.email, + void 0, + { trim: true } + ] + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input flex1", + type: "text", + "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => $data.regForm.code = $event), + placeholder: "邮箱验证码" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.regForm.code, + void 0, + { trim: true } + ] + ]), + vue.createElementVNode("button", { + class: "btn ghost", + disabled: $data.regCountdown > 0 || $data.loading, + onClick: _cache[8] || (_cache[8] = (...args) => $options.sendRegCode && $options.sendRegCode(...args)) + }, vue.toDisplayString($data.regCountdown > 0 ? $data.regCountdown + "s" : "获取验证码"), 9, ["disabled"]) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "password", + "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => $data.regForm.password = $event), + placeholder: "输入密码(≥6位)" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [vue.vModelText, $data.regForm.password] + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "password", + "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => $data.regForm.password2 = $event), + placeholder: "再次输入密码" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [vue.vModelText, $data.regForm.password2] + ]), + vue.createElementVNode("button", { + class: "btn primary", + disabled: $data.loading, + onClick: _cache[11] || (_cache[11] = (...args) => $options.onRegister && $options.onRegister(...args)) + }, "注册新用户", 8, ["disabled"]) + ])) : vue.createCommentVNode("v-if", true), + $data.tab === "reset" ? (vue.openBlock(), vue.createElementBlock("view", { + key: 2, + class: "panel minor" + }, [ + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "text", + "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => $data.resetForm.email = $event), + placeholder: "输入邮箱" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.resetForm.email, + void 0, + { trim: true } + ] + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input flex1", + type: "text", + "onUpdate:modelValue": _cache[13] || (_cache[13] = ($event) => $data.resetForm.code = $event), + placeholder: "邮箱验证码" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.resetForm.code, + void 0, + { trim: true } + ] + ]), + vue.createElementVNode("button", { + class: "btn ghost", + disabled: $data.resetCountdown > 0 || $data.loading, + onClick: _cache[14] || (_cache[14] = (...args) => $options.sendResetCode && $options.sendResetCode(...args)) + }, vue.toDisplayString($data.resetCountdown > 0 ? $data.resetCountdown + "s" : "获取验证码"), 9, ["disabled"]) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "password", + "onUpdate:modelValue": _cache[15] || (_cache[15] = ($event) => $data.resetForm.password = $event), + placeholder: "新密码(≥6位)" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [vue.vModelText, $data.resetForm.password] + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "password", + "onUpdate:modelValue": _cache[16] || (_cache[16] = ($event) => $data.resetForm.password2 = $event), + placeholder: "再次输入新密码" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [vue.vModelText, $data.resetForm.password2] + ]), + vue.createElementVNode("button", { + class: "btn primary", + disabled: $data.loading, + onClick: _cache[17] || (_cache[17] = (...args) => $options.onReset && $options.onReset(...args)) + }, "重置密码", 8, ["disabled"]) + ])) : vue.createCommentVNode("v-if", true) + ]); + } + const PagesAuthLogin = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/auth/login.vue"]]); + const _sfc_main$7 = { + data() { + return { + form: { + shopName: "", + name: "", + email: "", + code: "", + password: "" + }, + shopNameFocused: false, + nameFocused: false, + emailFocused: false, + codeFocused: false, + pwdFocused: false, + countdown: 0, + timer: null, + sending: false + }; }, computed: { - mobileDisplay() { - const m = String(this.mobile || ""); - return m.length === 11 ? m.slice(0, 3) + "****" + m.slice(7) : m || "未绑定手机号"; + btnText() { + if (this.countdown > 0) + return `${this.countdown}s`; + if (this.sending) + return "发送中..."; + return "获取验证码"; } }, methods: { - async fetchProfile() { + validate() { + const email = String(this.form.email || "").trim(); + const ok = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/.test(email); + if (!ok) { + uni.showToast({ title: "请输入正确的邮箱地址", icon: "none" }); + return false; + } + if (!/^\d{6}$/.test(String(this.form.code || "").trim())) { + uni.showToast({ title: "验证码格式不正确", icon: "none" }); + return false; + } + if (String(this.form.password || "").length < 6) { + uni.showToast({ title: "密码至少6位", icon: "none" }); + return false; + } + return true; + }, + startCountdown(sec) { + this.countdown = sec; + if (this.timer) + clearInterval(this.timer); + this.timer = setInterval(() => { + if (this.countdown <= 1) { + clearInterval(this.timer); + this.timer = null; + this.countdown = 0; + return; + } + this.countdown--; + }, 1e3); + }, + async sendCode() { + if (this.sending || this.countdown > 0) + return; + const e = String(this.form.email || "").trim(); + const ok = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/.test(e); + if (!ok) + return uni.showToast({ title: "请输入正确的邮箱地址", icon: "none" }); + this.sending = true; try { - await get("/api/dashboard/overview"); + const res = await post("/api/auth/email/send", { email: e, scene: "login" }); + const cd = Number(res && res.cooldownSec || 60); + this.startCountdown(cd); + uni.showToast({ title: "验证码已发送", icon: "none" }); + } catch (e2) { + const msg = e2 && e2.message || "发送失败"; + uni.showToast({ title: msg, icon: "none" }); + } finally { + this.sending = false; + } + }, + async onRegister() { + if (!this.validate()) + return; + const email = String(this.form.email || "").trim(); + const name = String(this.form.name || "").trim(); + try { + const data = await post("/api/auth/email/register", { email, code: String(this.form.code || "").trim(), name, password: String(this.form.password || "") }); + if (data && data.token) { + uni.setStorageSync("TOKEN", data.token); + if (data.user && data.user.email) + uni.setStorageSync("USER_EMAIL", data.user.email); + if (name) + try { + uni.setStorageSync("USER_NAME", name); + } catch (_) { + } + uni.showToast({ title: "注册成功", icon: "none" }); + setTimeout(() => { + uni.reLaunch({ url: "/pages/index/index" }); + }, 300); + } } catch (e) { + const msg = e && e.message || "注册失败"; + uni.showToast({ title: msg, icon: "none" }); + } + }, + onGoLogin() { + uni.navigateTo({ + url: "/pages/auth/login" + }); + } + } + }; + function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "register-container" }, [ + vue.createCommentVNode(" 背景装饰 "), + vue.createElementVNode("view", { class: "background-decoration" }, [ + vue.createElementVNode("view", { class: "circle circle-1" }), + vue.createElementVNode("view", { class: "circle circle-2" }), + vue.createElementVNode("view", { class: "circle circle-3" }) + ]), + vue.createCommentVNode(" 主要内容卡片 "), + vue.createElementVNode("view", { class: "register-card" }, [ + vue.createCommentVNode(" 顶部Logo区域 "), + vue.createElementVNode("view", { class: "header-section" }, [ + vue.createElementVNode("view", { class: "logo-container" }, [ + vue.createElementVNode("view", { class: "logo-icon" }, [ + (vue.openBlock(), vue.createElementBlock("svg", { + viewBox: "0 0 24 24", + class: "icon" + }, [ + vue.createElementVNode("path", { d: "M12 2C13.1 2 14 2.9 14 4C14 5.1 13.1 6 12 6C10.9 6 10 5.1 10 4C10 2.9 10.9 2 12 2ZM21 9V7L15 4V6C15 7.66 13.66 9 12 9S9 7.66 9 6V4L3 7V9C3 10.1 3.9 11 5 11V17C5 18.1 5.9 19 7 19H9C9 20.1 9.9 21 11 21H13C14.1 21 15 20.1 15 19H17C18.1 19 19 18.1 19 17V11C20.1 11 21 10.1 21 9Z" }) + ])) + ]), + vue.createElementVNode("text", { class: "app-name" }, "配件询价") + ]), + vue.createElementVNode("text", { class: "welcome-text" }, "创建账户"), + vue.createElementVNode("text", { class: "subtitle" }, "请填写以下信息完成注册") + ]), + vue.createCommentVNode(" 表单区域 "), + vue.createElementVNode("view", { class: "form-section" }, [ + vue.createCommentVNode(" 店铺名称 "), + vue.createElementVNode("view", { class: "input-group" }, [ + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["input-container", { focused: $data.shopNameFocused, filled: $data.form.shopName }]) + }, + [ + vue.createElementVNode("view", { class: "input-icon" }, [ + (vue.openBlock(), vue.createElementBlock("svg", { + viewBox: "0 0 24 24", + class: "icon" + }, [ + vue.createElementVNode("path", { d: "M12,3L2,12H5V20H19V12H22L12,3M12,8.75A2.25,2.25 0 0,1 14.25,11A2.25,2.25 0 0,1 12,13.25A2.25,2.25 0 0,1 9.75,11A2.25,2.25 0 0,1 12,8.75Z" }) + ])) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input-field", + "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.form.shopName = $event), + type: "text", + placeholder: "请输入店铺名称", + onFocus: _cache[1] || (_cache[1] = ($event) => $data.shopNameFocused = true), + onBlur: _cache[2] || (_cache[2] = ($event) => $data.shopNameFocused = false) + }, + null, + 544 + /* NEED_HYDRATION, NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.shopName, + void 0, + { trim: true } + ] + ]) + ], + 2 + /* CLASS */ + ) + ]), + vue.createCommentVNode(" 姓名 "), + vue.createElementVNode("view", { class: "input-group" }, [ + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["input-container", { focused: $data.nameFocused, filled: $data.form.name }]) + }, + [ + vue.createElementVNode("view", { class: "input-icon" }, [ + (vue.openBlock(), vue.createElementBlock("svg", { + viewBox: "0 0 24 24", + class: "icon" + }, [ + vue.createElementVNode("path", { d: "M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z" }) + ])) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input-field", + "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => $data.form.name = $event), + type: "text", + placeholder: "请输入您的姓名", + onFocus: _cache[4] || (_cache[4] = ($event) => $data.nameFocused = true), + onBlur: _cache[5] || (_cache[5] = ($event) => $data.nameFocused = false) + }, + null, + 544 + /* NEED_HYDRATION, NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.name, + void 0, + { trim: true } + ] + ]) + ], + 2 + /* CLASS */ + ) + ]), + vue.createCommentVNode(" 邮箱 "), + vue.createElementVNode("view", { class: "input-group" }, [ + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["input-container", { focused: $data.emailFocused, filled: $data.form.email }]) + }, + [ + vue.createElementVNode("view", { class: "input-icon" }, [ + (vue.openBlock(), vue.createElementBlock("svg", { + viewBox: "0 0 24 24", + class: "icon" + }, [ + vue.createElementVNode("path", { d: "M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-1 4l-7 4-7-4V6l7 4 7-4v2z" }) + ])) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input-field", + "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.form.email = $event), + type: "text", + placeholder: "请输入邮箱地址", + onFocus: _cache[7] || (_cache[7] = ($event) => $data.emailFocused = true), + onBlur: _cache[8] || (_cache[8] = ($event) => $data.emailFocused = false) + }, + null, + 544 + /* NEED_HYDRATION, NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.email, + void 0, + { trim: true } + ] + ]) + ], + 2 + /* CLASS */ + ) + ]), + vue.createCommentVNode(" 验证码 "), + vue.createElementVNode("view", { class: "input-group" }, [ + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["input-container", { focused: $data.codeFocused, filled: $data.form.code }]) + }, + [ + vue.createElementVNode("view", { class: "input-icon" }, [ + (vue.openBlock(), vue.createElementBlock("svg", { + viewBox: "0 0 24 24", + class: "icon" + }, [ + vue.createElementVNode("path", { d: "M3 10h18v2H3v-2zm0 6h12v2H3v-2zM3 6h18v2H3V6z" }) + ])) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input-field", + "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => $data.form.code = $event), + type: "number", + maxlength: "6", + placeholder: "请输入6位验证码", + onFocus: _cache[10] || (_cache[10] = ($event) => $data.codeFocused = true), + onBlur: _cache[11] || (_cache[11] = ($event) => $data.codeFocused = false) + }, + null, + 544 + /* NEED_HYDRATION, NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.code, + void 0, + { trim: true } + ] + ]) + ], + 2 + /* CLASS */ + ) + ]), + vue.createCommentVNode(" 密码 "), + vue.createElementVNode("view", { class: "input-group" }, [ + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["input-container", { focused: $data.pwdFocused, filled: $data.form.password }]) + }, + [ + vue.createElementVNode("view", { class: "input-icon" }, [ + (vue.openBlock(), vue.createElementBlock("svg", { + viewBox: "0 0 24 24", + class: "icon" + }, [ + vue.createElementVNode("path", { d: "M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z" }) + ])) + ]), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input-field", + "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => $data.form.password = $event), + password: "", + placeholder: "请设置登录密码(至少6位)", + onFocus: _cache[13] || (_cache[13] = ($event) => $data.pwdFocused = true), + onBlur: _cache[14] || (_cache[14] = ($event) => $data.pwdFocused = false) + }, + null, + 544 + /* NEED_HYDRATION, NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.password, + void 0, + { trim: true } + ] + ]) + ], + 2 + /* CLASS */ + ) + ]), + vue.createCommentVNode(" 发送验证码按钮 "), + vue.createElementVNode("view", { class: "input-group" }, [ + vue.createElementVNode("button", { + class: "login-button", + disabled: $data.countdown > 0 || $data.sending, + onClick: _cache[15] || (_cache[15] = (...args) => $options.sendCode && $options.sendCode(...args)) + }, vue.toDisplayString($options.btnText), 9, ["disabled"]) + ]) + ]), + vue.createCommentVNode(" 按钮区域 "), + vue.createElementVNode("view", { class: "actions-section" }, [ + vue.createElementVNode("button", { + class: "register-button", + onClick: _cache[16] || (_cache[16] = (...args) => $options.onRegister && $options.onRegister(...args)) + }, [ + vue.createElementVNode("text", { class: "button-text" }, "立即注册") + ]), + vue.createElementVNode("button", { + class: "login-button", + onClick: _cache[17] || (_cache[17] = (...args) => $options.onGoLogin && $options.onGoLogin(...args)) + }, [ + vue.createElementVNode("text", { class: "button-text" }, "已有账户?去登录") + ]) + ]), + vue.createCommentVNode(" 提示信息 "), + vue.createElementVNode("view", { class: "footer-section" }, [ + vue.createElementVNode("text", { class: "hint-text" }, "注册即表示您同意我们的服务条款和隐私政策") + ]) + ]) + ]); + } + const PagesAuthRegister = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/auth/register.vue"]]); + const _imports_0$2 = "/static/icons/icons8-login-50.png"; + function normalizeAvatar(url) { + if (!url) + return "/static/icons/icons8-mitt-24.png"; + const s = String(url); + if (/^https?:\/\//i.test(s)) + return s; + if (!API_BASE_URL) + return s; + if (s.startsWith("/")) + return `${API_BASE_URL}${s}`; + return `${API_BASE_URL}/${s}`; + } + const _sfc_main$6 = { + data() { + return { + avatarUrl: "/static/icons/icons8-mitt-24.png", + shopName: "未登录", + mobile: "", + pendingJsCode: "", + logging: false, + vipIsVip: false, + vipStart: "", + vipEnd: "" + }; + }, + onShow() { + this.fetchProfile(); + this.loadVip(); + try { + if (uni.getStorageSync("TOKEN")) { + this.$forceUpdate && this.$forceUpdate(); + } + } catch (e) { + } + }, + computed: { + isLoggedIn() { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + }, + avatarDisplay() { + return normalizeAvatar(this.avatarUrl); + }, + emailDisplay() { + if (!this.isLoggedIn) + return ""; + const e = String(uni.getStorageSync("USER_EMAIL") || ""); + if (!e) + return "未绑定邮箱"; + const at = e.indexOf("@"); + if (at > 1) { + const name = e.slice(0, at); + const domain = e.slice(at); + return (name.length <= 2 ? name[0] + "*" : name.slice(0, 2) + "***") + domain; + } + return e; + }, + vipStartDisplay() { + return this.formatDisplay(this.vipStart); + }, + vipEndDisplay() { + return this.formatDisplay(this.vipEnd); + } + }, + methods: { + // 登录相关方法已移除 + async fetchProfile() { + const hasToken = (() => { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + })(); + if (!hasToken) { + this.shopName = "未登录"; + this.avatarUrl = "/static/icons/icons8-mitt-24.png"; + this.mobile = ""; + return; } try { - const storeName = uni.getStorageSync("SHOP_NAME") || ""; - const avatar = uni.getStorageSync("USER_AVATAR") || ""; - const phone = uni.getStorageSync("USER_MOBILE") || ""; - if (storeName) - this.shopName = storeName; - if (avatar) - this.avatarUrl = avatar; + const profile = await get("/api/user/me"); + const latestAvatar = (profile == null ? void 0 : profile.avatarUrl) || ""; + if (latestAvatar) { + const bust = `${latestAvatar}${latestAvatar.includes("?") ? "&" : "?"}t=${Date.now()}`; + this.avatarUrl = bust; + try { + uni.setStorageSync("USER_AVATAR_RAW", latestAvatar); + uni.setStorageSync("USER_AVATAR", latestAvatar); + } catch (_) { + } + } else { + const cached = uni.getStorageSync("USER_AVATAR") || ""; + this.avatarUrl = cached || "/static/icons/icons8-mitt-24.png"; + } + const storeName = (profile == null ? void 0 : profile.name) || uni.getStorageSync("SHOP_NAME") || "未命名店铺"; + this.shopName = storeName; + const phone = (profile == null ? void 0 : profile.phone) || uni.getStorageSync("USER_MOBILE") || ""; this.mobile = phone; } catch (e) { + try { + const storeName = uni.getStorageSync("SHOP_NAME") || ""; + const avatar = uni.getStorageSync("USER_AVATAR") || ""; + const phone = uni.getStorageSync("USER_MOBILE") || ""; + if (storeName) + this.shopName = storeName; + if (avatar) + this.avatarUrl = avatar; + this.mobile = phone; + } catch (_) { + } } }, + async loadVip() { + try { + const hasToken = (() => { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + })(); + if (!hasToken) { + this.vipIsVip = false; + this.vipStart = ""; + this.vipEnd = ""; + return; + } + const data = await get("/api/vip/status"); + const active = !!(data == null ? void 0 : data.isVip); + this.vipIsVip = active; + this.vipEnd = (data == null ? void 0 : data.expireAt) || ""; + let computedStart = ""; + const exp = this.vipEnd; + if (exp) { + const m = String(exp).match(/^(\d{4})-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2})(?::(\d{2}))?)?/); + if (m) { + const y = Number(m[1]); + const mo = Number(m[2]) - 1; + const da = Number(m[3]); + const hh = Number(m[4] || "0"); + const mm = Number(m[5] || "0"); + const ss = Number(m[6] || "0"); + const startDate = new Date(y, mo - 1, da, hh, mm, ss); + const y2 = startDate.getFullYear(); + const m2 = (startDate.getMonth() + 1).toString().padStart(2, "0"); + const d2 = startDate.getDate().toString().padStart(2, "0"); + const h2 = startDate.getHours().toString().padStart(2, "0"); + const i2 = startDate.getMinutes().toString().padStart(2, "0"); + computedStart = `${y2}-${m2}-${d2} ${h2}:${i2}`; + } + } + this.vipStart = computedStart; + try { + uni.setStorageSync("USER_VIP_IS_VIP", String(active)); + uni.setStorageSync("USER_VIP_END", this.vipEnd); + if (this.vipStart) + uni.setStorageSync("USER_VIP_START", this.vipStart); + else + uni.removeStorageSync("USER_VIP_START"); + } catch (_) { + } + } catch (e) { + try { + const isVip = String(uni.getStorageSync("USER_VIP_IS_VIP") || "false").toLowerCase() === "true"; + this.vipIsVip = isVip; + this.vipStart = uni.getStorageSync("USER_VIP_START") || ""; + this.vipEnd = uni.getStorageSync("USER_VIP_END") || ""; + } catch (_) { + } + } + }, + formatDisplay(value) { + if (!value) + return "-"; + const s = String(value); + const m = s.match(/^(\d{4}-\d{2}-\d{2})/); + if (m) + return m[1]; + const d = new Date(s); + if (!isNaN(d.getTime())) { + const y = d.getFullYear(); + const mo = String(d.getMonth() + 1).padStart(2, "0"); + const da = String(d.getDate()).padStart(2, "0"); + return `${y}-${mo}-${da}`; + } + return s; + }, + startLogin() { + if (this.logging) + return; + this.logging = true; + const tryOnce = async () => ({}); + uni.login({ provider: "weixin", success: async (res) => { + this.pendingJsCode = res.code || ""; + if (!this.pendingJsCode) { + this.logging = false; + return uni.showToast({ title: "获取登录code失败", icon: "none" }); + } + try { + await tryOnce(); + } catch (e) { + const msg = e && e.message || ""; + if (msg.includes("40163") || msg.toLowerCase().includes("been used")) { + uni.login({ provider: "weixin", success: async (r2) => { + const fresh = r2.code || ""; + if (!fresh) { + this.logging = false; + return; + } + try { + await tryOnce(); + } finally { + this.logging = false; + } + } }); + return; + } + } finally { + this.logging = false; + } + }, fail: () => { + this.logging = false; + uni.showToast({ title: "微信登录失败", icon: "none" }); + } }); + }, + goLogin() { + uni.navigateTo({ url: "/pages/auth/login" }); + }, + onGetPhoneNumber(e) { + if (this.logging) + return; + this.logging = true; + uni.login({ provider: "weixin", success: (res) => { + const jsCode = res.code || ""; + if (!jsCode) { + this.logging = false; + return uni.showToast({ title: "获取登录code失败", icon: "none" }); + } + Promise.resolve().finally(() => { + this.logging = false; + }); + }, fail: () => { + this.logging = false; + uni.showToast({ title: "微信登录失败", icon: "none" }); + } }); + }, + goSmsLogin() { + uni.navigateTo({ url: "/pages/my/sms-login" }); + }, onAvatarError() { - this.avatarUrl = "/static/logo.png"; + this.avatarUrl = "/static/icons/icons8-mitt-24.png"; }, goVip() { - uni.showToast({ title: "VIP会员(开发中)", icon: "none" }); + uni.navigateTo({ url: "/pages/my/vip" }); }, goMyOrders() { - uni.switchTab({ url: "/pages/detail/index" }); - }, - goSupplier() { - uni.navigateTo({ url: "/pages/supplier/select" }); - }, - goCustomer() { - uni.navigateTo({ url: "/pages/customer/select" }); - }, - goCustomerQuote() { - uni.showToast({ title: "客户报价(开发中)", icon: "none" }); - }, - goShop() { - uni.showToast({ title: "店铺管理(开发中)", icon: "none" }); + uni.navigateTo({ url: "/pages/my/orders" }); }, editProfile() { - uni.showToast({ title: "账号与安全(开发中)", icon: "none" }); - }, - goProductSettings() { - uni.navigateTo({ url: "/pages/product/settings" }); - }, - goSystemParams() { - uni.showToast({ title: "系统参数(开发中)", icon: "none" }); + uni.navigateTo({ url: "/pages/my/security" }); }, goAbout() { uni.navigateTo({ url: "/pages/my/about" }); @@ -4305,11 +7359,20 @@ if (uni.restoreGlobal) { logout() { try { uni.removeStorageSync("TOKEN"); + uni.removeStorageSync("LOGINED"); + uni.removeStorageSync("LOGIN_PHONE"); + uni.removeStorageSync("DEFAULT_USER_ID"); + uni.setStorageSync("ENABLE_DEFAULT_USER", "false"); uni.removeStorageSync("USER_AVATAR"); + uni.removeStorageSync("USER_AVATAR_RAW"); uni.removeStorageSync("USER_NAME"); uni.removeStorageSync("USER_MOBILE"); + uni.removeStorageSync("USER_EMAIL"); uni.removeStorageSync("SHOP_NAME"); - uni.showToast({ title: "已退出", icon: "none" }); + uni.removeStorageSync("USER_VIP_IS_VIP"); + uni.removeStorageSync("USER_VIP_START"); + uni.removeStorageSync("USER_VIP_END"); + uni.showToast({ title: "已清理本地信息", icon: "none" }); setTimeout(() => { uni.reLaunch({ url: "/pages/index/index" }); }, 300); @@ -4319,12 +7382,15 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "me" }, [ - vue.createElementVNode("view", { class: "card user" }, [ + $options.isLoggedIn ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "card user" + }, [ vue.createElementVNode("image", { class: "avatar", - src: $data.avatarUrl, + src: $options.avatarDisplay, mode: "aspectFill", onError: _cache[0] || (_cache[0] = (...args) => $options.onAvatarError && $options.onAvatarError(...args)) }, null, 40, ["src"]), @@ -4339,104 +7405,131 @@ if (uni.restoreGlobal) { vue.createElementVNode( "text", { class: "phone" }, - vue.toDisplayString($options.mobileDisplay), + vue.toDisplayString($options.emailDisplay), 1 /* TEXT */ ), vue.createElementVNode("text", { class: "role" }, "老板") ]) - ]), + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "card user guest" + }, [ + vue.createElementVNode("image", { + class: "avatar", + src: _imports_0$2, + mode: "aspectFill" + }), + vue.createElementVNode("view", { class: "meta" }, [ + vue.createElementVNode("text", { class: "name" }, "未登录"), + vue.createElementVNode("text", { class: "phone" }, "登录后同步数据"), + vue.createElementVNode("text", { class: "role" }, "访客") + ]), + vue.createElementVNode("button", { + class: "login-entry", + onClick: _cache[1] || (_cache[1] = (...args) => $options.goLogin && $options.goLogin(...args)) + }, "登录") + ])), + vue.createCommentVNode(" VIP 卡片(置于“会员与订单”分组上方) "), + $options.isLoggedIn ? (vue.openBlock(), vue.createElementBlock( + "view", + { + key: 2, + class: vue.normalizeClass(["card vip", { active: $data.vipIsVip }]) + }, + [ + vue.createElementVNode("view", { class: "vip-row" }, [ + vue.createElementVNode( + "text", + { class: "vip-badge" }, + vue.toDisplayString($data.vipIsVip ? "VIP" : "非VIP"), + 1 + /* TEXT */ + ), + vue.createElementVNode("text", { class: "vip-title" }, "会员状态") + ]), + vue.createElementVNode("view", { class: "vip-meta" }, [ + vue.createElementVNode("view", { class: "item" }, [ + vue.createElementVNode("text", { class: "label" }, "开始"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($options.vipStartDisplay), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "item" }, [ + vue.createElementVNode("text", { class: "label" }, "结束"), + vue.createElementVNode( + "text", + { class: "value" }, + vue.toDisplayString($options.vipEndDisplay), + 1 + /* TEXT */ + ) + ]) + ]) + ], + 2 + /* CLASS */ + )) : vue.createCommentVNode("v-if", true), vue.createElementVNode("view", { class: "group" }, [ vue.createElementVNode("view", { class: "group-title" }, "会员与订单"), vue.createElementVNode("view", { class: "cell", - onClick: _cache[1] || (_cache[1] = (...args) => $options.goVip && $options.goVip(...args)) + onClick: _cache[2] || (_cache[2] = (...args) => $options.goVip && $options.goVip(...args)) }, [ - vue.createElementVNode("text", null, "VIP会员"), + vue.createElementVNode("view", { class: "cell-left" }, [ + vue.createElementVNode("text", null, "VIP会员"), + $data.vipIsVip ? (vue.openBlock(), vue.createElementBlock("text", { + key: 0, + class: "vip-tag" + }, "已开通")) : (vue.openBlock(), vue.createElementBlock("text", { + key: 1, + class: "vip-tag pending" + }, "待开通")) + ]), vue.createElementVNode("text", { class: "arrow" }, "›") ]), vue.createElementVNode("view", { class: "cell", - onClick: _cache[2] || (_cache[2] = (...args) => $options.goMyOrders && $options.goMyOrders(...args)) + onClick: _cache[3] || (_cache[3] = (...args) => $options.goMyOrders && $options.goMyOrders(...args)) }, [ vue.createElementVNode("text", null, "我的订单"), vue.createElementVNode("text", { class: "arrow" }, "›") ]) ]), - vue.createElementVNode("view", { class: "group" }, [ - vue.createElementVNode("view", { class: "group-title" }, "基础管理"), - vue.createElementVNode("view", { - class: "cell", - onClick: _cache[3] || (_cache[3] = (...args) => $options.goSupplier && $options.goSupplier(...args)) - }, [ - vue.createElementVNode("text", null, "供应商管理"), - vue.createElementVNode("text", { class: "arrow" }, "›") - ]), - vue.createElementVNode("view", { - class: "cell", - onClick: _cache[4] || (_cache[4] = (...args) => $options.goCustomer && $options.goCustomer(...args)) - }, [ - vue.createElementVNode("text", null, "客户管理"), - vue.createElementVNode("text", { class: "arrow" }, "›") - ]), - vue.createElementVNode("view", { - class: "cell", - onClick: _cache[5] || (_cache[5] = (...args) => $options.goCustomerQuote && $options.goCustomerQuote(...args)) - }, [ - vue.createElementVNode("text", null, "客户报价"), - vue.createElementVNode("text", { class: "arrow" }, "›") - ]), - vue.createElementVNode("view", { - class: "cell", - onClick: _cache[6] || (_cache[6] = (...args) => $options.goShop && $options.goShop(...args)) - }, [ - vue.createElementVNode("text", null, "店铺管理"), - vue.createElementVNode("text", { class: "arrow" }, "›") - ]) - ]), vue.createElementVNode("view", { class: "group" }, [ vue.createElementVNode("view", { class: "group-title" }, "设置中心"), vue.createElementVNode("view", { class: "cell", - onClick: _cache[7] || (_cache[7] = (...args) => $options.editProfile && $options.editProfile(...args)) + onClick: _cache[4] || (_cache[4] = (...args) => $options.editProfile && $options.editProfile(...args)) }, [ vue.createElementVNode("text", null, "账号与安全"), - vue.createElementVNode("text", { class: "desc" }, "修改头像、姓名、密码"), + vue.createElementVNode("text", { class: "desc" }, "修改头像、姓名、密码、电话"), vue.createElementVNode("text", { class: "arrow" }, "›") ]), vue.createElementVNode("view", { class: "cell", - onClick: _cache[8] || (_cache[8] = (...args) => $options.goProductSettings && $options.goProductSettings(...args)) - }, [ - vue.createElementVNode("text", null, "商品设置"), - vue.createElementVNode("text", { class: "arrow" }, "›") - ]), - vue.createElementVNode("view", { - class: "cell", - onClick: _cache[9] || (_cache[9] = (...args) => $options.goSystemParams && $options.goSystemParams(...args)) - }, [ - vue.createElementVNode("text", null, "系统参数"), - vue.createElementVNode("text", { class: "desc" }, "低价提示、默认收款、单行折扣等"), - vue.createElementVNode("text", { class: "arrow" }, "›") - ]), - vue.createElementVNode("view", { - class: "cell", - onClick: _cache[10] || (_cache[10] = (...args) => $options.goAbout && $options.goAbout(...args)) + onClick: _cache[5] || (_cache[5] = (...args) => $options.goAbout && $options.goAbout(...args)) }, [ vue.createElementVNode("text", null, "关于与协议"), vue.createElementVNode("text", { class: "arrow" }, "›") ]), - vue.createElementVNode("view", { + $options.isLoggedIn ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, class: "cell danger", - onClick: _cache[11] || (_cache[11] = (...args) => $options.logout && $options.logout(...args)) + onClick: _cache[6] || (_cache[6] = (...args) => $options.logout && $options.logout(...args)) }, [ vue.createElementVNode("text", null, "退出登录") - ]) + ])) : vue.createCommentVNode("v-if", true) ]) ]); } - const PagesMyIndex = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2], ["__file", "D:/wx/PartsInquiry/frontend/pages/my/index.vue"]]); - const _sfc_main$2 = { + const PagesMyIndex = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/index.vue"]]); + const _imports_0$1 = "/static/logo.png"; + const _sfc_main$5 = { methods: { openPolicy() { uni.showModal({ title: "隐私协议", content: "隐私协议(静态占位)", showCancel: false }); @@ -4449,12 +7542,12 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "about" }, [ vue.createElementVNode("view", { class: "hero" }, [ vue.createElementVNode("image", { class: "logo", - src: _imports_0, + src: _imports_0$1, mode: "aspectFit" }), vue.createElementVNode("text", { class: "title" }, "五金配件管家"), @@ -4489,7 +7582,707 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesMyAbout = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$1], ["__file", "D:/wx/PartsInquiry/frontend/pages/my/about.vue"]]); + const PagesMyAbout = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/about.vue"]]); + const _sfc_main$4 = { + data() { + return { + form: { name: "", avatarUrl: "" }, + pwd: { oldPassword: "", newPassword: "" }, + phone: { phone: "" }, + savingProfile: false, + savingPwd: false, + savingPhone: false, + sendingCode: false, + originalAvatarUrl: "" + }; + }, + onShow() { + this.loadProfile(); + }, + computed: { + avatarPreview() { + return this.normalizeAvatar(this.form.avatarUrl); + }, + canSendPhone() { + const p = String(this.phone.phone || "").trim(); + return /^1\d{10}$/.test(p); + } + }, + methods: { + async loadProfile() { + try { + const data = await get("/api/user/me"); + const rawAvatar = (data == null ? void 0 : data.avatarUrl) || (uni.getStorageSync("USER_AVATAR_RAW") || ""); + this.originalAvatarUrl = rawAvatar; + this.form.name = (data == null ? void 0 : data.name) || (uni.getStorageSync("USER_NAME") || ""); + this.form.avatarUrl = rawAvatar; + } catch (e) { + } + }, + normalizeAvatar(url) { + if (!url) + return "/static/icons/icons8-mitt-24.png"; + const s = String(url); + if (/^https?:\/\//i.test(s)) + return s; + const base = API_BASE_URL || ""; + if (!base) + return s; + if (s.startsWith("/")) + return `${base}${s}`; + return `${base}/${s}`; + }, + openAvatarDialog() { + uni.showActionSheet({ + itemList: ["粘贴图片URL", "从相册选择并上传"], + success: (res) => { + if (res.tapIndex === 0) { + uni.showModal({ + title: "头像URL", + editable: true, + placeholderText: "https://...", + success: async (m) => { + if (m.confirm && m.content) { + this.form.avatarUrl = m.content.trim(); + await this.saveProfile({ auto: true }); + } + } + }); + } else if (res.tapIndex === 1) { + uni.chooseImage({ count: 1, sizeType: ["compressed"], success: (ci) => { + const filePath = ci.tempFilePaths && ci.tempFilePaths[0] || ""; + if (!filePath) + return; + uni.showLoading({ title: "上传中..." }); + upload("/api/attachments", filePath, { ownerType: "user_avatar", ownerId: 0 }).then(async (data) => { + const url = data && (data.url || data.path); + if (url) { + this.form.avatarUrl = url; + await this.saveProfile({ auto: true }); + } + uni.showToast({ title: "已上传", icon: "success" }); + }).catch((e) => { + uni.showToast({ title: e && e.message || "上传失败", icon: "none" }); + }).finally(() => { + uni.hideLoading(); + }); + } }); + } + } + }); + }, + async saveProfile(opts = {}) { + const auto = opts && opts.auto; + const payload = {}; + if (this.form.name && this.form.name !== uni.getStorageSync("USER_NAME")) + payload.name = this.form.name; + if (this.form.avatarUrl && this.form.avatarUrl !== this.originalAvatarUrl) + payload.avatarUrl = this.form.avatarUrl; + if (Object.keys(payload).length === 0) { + if (!auto) + uni.showToast({ title: "无需修改", icon: "none" }); + return; + } + if (this.savingProfile) + return; + this.savingProfile = true; + try { + await put("/api/user/me", payload); + try { + if (payload.name) + uni.setStorageSync("USER_NAME", payload.name); + if (payload.avatarUrl) { + const rawUrl = payload.avatarUrl; + const displayUrl = `${rawUrl}${rawUrl.includes("?") ? "&" : "?"}t=${Date.now()}`; + uni.setStorageSync("USER_AVATAR_RAW", rawUrl); + uni.setStorageSync("USER_AVATAR", rawUrl); + this.originalAvatarUrl = rawUrl; + this.form.avatarUrl = rawUrl; + } + } catch (_) { + } + if (!payload.avatarUrl && this.form.avatarUrl) { + uni.setStorageSync("USER_AVATAR_RAW", this.form.avatarUrl); + uni.setStorageSync("USER_AVATAR", this.form.avatarUrl); + } + uni.showToast({ title: auto ? "头像已更新" : "已保存", icon: "success" }); + } catch (e) { + const msg = e && e.message || "保存失败"; + uni.showToast({ title: msg, icon: "none" }); + } finally { + this.savingProfile = false; + } + }, + async changePassword() { + if (!this.pwd.newPassword || this.pwd.newPassword.length < 6) + return uni.showToast({ title: "新密码至少6位", icon: "none" }); + this.savingPwd = true; + try { + await put("/api/user/me/password", { oldPassword: this.pwd.oldPassword || void 0, newPassword: this.pwd.newPassword }); + this.pwd.oldPassword = ""; + this.pwd.newPassword = ""; + uni.showToast({ title: "密码已修改", icon: "success" }); + } catch (e) { + uni.showToast({ title: e && e.message || "修改失败", icon: "none" }); + } finally { + this.savingPwd = false; + } + }, + async changePhoneDirect() { + if (!this.canSendPhone) + return uni.showToast({ title: "请输入正确手机号", icon: "none" }); + this.savingPhone = true; + try { + await put("/api/user/me/phone", { phone: this.phone.phone }); + uni.setStorageSync("USER_MOBILE", this.phone.phone); + uni.showToast({ title: "手机号已保存", icon: "success" }); + } catch (e) { + uni.showToast({ title: e && e.message || "保存失败", icon: "none" }); + } finally { + this.savingPhone = false; + } + } + } + }; + function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "security" }, [ + vue.createElementVNode("view", { class: "card" }, [ + vue.createElementVNode("view", { + class: "cell", + onClick: _cache[0] || (_cache[0] = (...args) => $options.openAvatarDialog && $options.openAvatarDialog(...args)) + }, [ + vue.createElementVNode("text", { class: "cell-label" }, "头像"), + vue.createElementVNode("image", { + class: "avatar-preview", + src: $options.avatarPreview, + mode: "aspectFill" + }, null, 8, ["src"]), + vue.createElementVNode("text", { class: "arrow" }, "›") + ]), + vue.createElementVNode("view", { class: "cell" }, [ + vue.createElementVNode("text", { class: "cell-label" }, "姓名"), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "cell-input", + type: "text", + "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.name = $event), + placeholder: "请输入姓名" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.form.name, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("button", { + class: "btn", + type: "primary", + loading: $data.savingProfile, + onClick: _cache[2] || (_cache[2] = (...args) => $options.saveProfile && $options.saveProfile(...args)) + }, "保存资料", 8, ["loading"]) + ]), + vue.createElementVNode("view", { class: "card" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "旧密码"), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + password: "", + "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => $data.pwd.oldPassword = $event), + placeholder: "如从未设置可留空" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.pwd.oldPassword, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "新密码"), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + password: "", + "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => $data.pwd.newPassword = $event), + placeholder: "至少6位" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.pwd.newPassword, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("button", { + class: "btn", + loading: $data.savingPwd, + onClick: _cache[5] || (_cache[5] = (...args) => $options.changePassword && $options.changePassword(...args)) + }, "修改密码", 8, ["loading"]) + ]), + vue.createElementVNode("view", { class: "card" }, [ + vue.createElementVNode("view", { class: "row" }, [ + vue.createElementVNode("text", { class: "label" }, "手机号"), + vue.withDirectives(vue.createElementVNode( + "input", + { + class: "input", + type: "text", + "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => $data.phone.phone = $event), + placeholder: "11位手机号" + }, + null, + 512 + /* NEED_PATCH */ + ), [ + [ + vue.vModelText, + $data.phone.phone, + void 0, + { trim: true } + ] + ]) + ]), + vue.createElementVNode("button", { + class: "btn", + loading: $data.savingPhone, + onClick: _cache[7] || (_cache[7] = (...args) => $options.changePhoneDirect && $options.changePhoneDirect(...args)) + }, "保存手机号", 8, ["loading"]) + ]) + ]); + } + const PagesMySecurity = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/security.vue"]]); + const _imports_0 = "/static/icons/icons8-vip-48 (1).png"; + const _sfc_main$3 = { + data() { + return { + isVip: false, + expire: "", + price: 0, + benefits: [], + normalAdmin: { isNormalAdmin: false, applicationStatus: "none" } + }; + }, + onShow() { + this.loadVip(); + this.loadNormalAdminStatus(); + this.composeBenefits(); + }, + computed: { + expireDisplay() { + const v = this.expire; + if (v === null || v === void 0) + return ""; + if (typeof v === "number") { + const d = new Date(v); + if (!isNaN(d.getTime())) { + const y = d.getFullYear(); + const m2 = String(d.getMonth() + 1).padStart(2, "0"); + const dd = String(d.getDate()).padStart(2, "0"); + return `${y}-${m2}-${dd}`; + } + return ""; + } + const s = String(v); + const m = s.match(/^(\d{4}-\d{2}-\d{2})/); + if (m) + return m[1]; + const idx = s.search(/[ T]/); + if (idx > 0) { + const head = s.slice(0, idx); + if (head) + return head; + } + const d2 = new Date(s); + if (!isNaN(d2.getTime())) { + const y = d2.getFullYear(); + const m2 = String(d2.getMonth() + 1).padStart(2, "0"); + const dd2 = String(d2.getDate()).padStart(2, "0"); + return `${y}-${m2}-${dd2}`; + } + return s; + }, + priceDisplay() { + const n = Number(this.price); + return Number.isFinite(n) && n > 0 ? n.toFixed(2) : "0.00"; + }, + applyDisabled() { + var _a, _b; + const s = String(((_a = this.normalAdmin) == null ? void 0 : _a.applicationStatus) || "none"); + return !!(((_b = this.normalAdmin) == null ? void 0 : _b.isNormalAdmin) || s === "approved" || s === "pending"); + }, + applyBtnText() { + var _a, _b, _c; + if (((_a = this.normalAdmin) == null ? void 0 : _a.isNormalAdmin) || ((_b = this.normalAdmin) == null ? void 0 : _b.applicationStatus) === "approved") + return "已通过"; + if (((_c = this.normalAdmin) == null ? void 0 : _c.applicationStatus) === "pending") + return "审核中"; + if (!this.isVip) + return "仅限VIP"; + return "提交申请"; + } + }, + methods: { + composeBenefits() { + this.benefits = [ + { key: "history", title: "完整历史留存", desc: "无限期保留交易、库存与客户数据", icon: "/static/icons/icons8-graph-report-50.png" }, + { key: "analysis", title: "高级统计面板", desc: "秒级汇总销售毛利,掌握生意节奏", icon: "/static/icons/icons8-profit-50.png" }, + { key: "priority", title: "优先客服支持", desc: "遇到问题优先处理,响应更迅速", icon: "/static/icons/icons8-account-male-100.png" } + ]; + }, + async loadVip() { + try { + const data = await get("/api/vip/status"); + this.isVip = !!(data == null ? void 0 : data.isVip); + this.expire = (data == null ? void 0 : data.expireAt) || ""; + if (typeof (data == null ? void 0 : data.price) === "number") + this.price = data.price; + } catch (e) { + this.isVip = false; + } + }, + async loadNormalAdminStatus() { + try { + const data = await get("/api/normal-admin/application/status"); + this.normalAdmin = { + isNormalAdmin: !!(data == null ? void 0 : data.isNormalAdmin), + applicationStatus: String((data == null ? void 0 : data.applicationStatus) || "none") + }; + } catch (e) { + this.normalAdmin = { isNormalAdmin: false, applicationStatus: "none" }; + } + }, + async onPay() { + try { + await post("/api/vip/pay", {}); + uni.showToast({ title: "已开通VIP", icon: "success" }); + await this.loadVip(); + } catch (e) { + uni.showToast({ title: String(e.message || "开通失败"), icon: "none" }); + } + }, + async onApplyNormalAdmin() { + var _a, _b, _c; + if (this.applyDisabled) { + const msg = ((_a = this.normalAdmin) == null ? void 0 : _a.isNormalAdmin) || ((_b = this.normalAdmin) == null ? void 0 : _b.applicationStatus) === "approved" ? "已通过,无需重复申请" : ((_c = this.normalAdmin) == null ? void 0 : _c.applicationStatus) === "pending" ? "审核中,请耐心等待" : "不可申请"; + return uni.showToast({ title: msg, icon: "none" }); + } + try { + await post("/api/normal-admin/apply", { remark: "从我的-会员发起申请" }); + uni.showToast({ title: "申请已提交", icon: "success" }); + await this.loadNormalAdminStatus(); + } catch (e) { + uni.showToast({ title: String(e.message || "申请失败"), icon: "none" }); + } + } + } + }; + function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "vip-page" }, [ + vue.createElementVNode("view", { class: "vip-hero" }, [ + vue.createElementVNode("image", { + class: "hero-icon", + src: _imports_0, + mode: "aspectFit" + }), + vue.createElementVNode("view", { class: "hero-text" }, [ + vue.createElementVNode( + "text", + { class: "hero-title" }, + vue.toDisplayString($data.isVip ? "VIP会员" : "升级 VIP 会员"), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "hero-subtitle" }, + vue.toDisplayString($data.isVip ? "尊享完整数据与高效体验" : "开通后可查看全部历史数据并解锁高级功能"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode( + "view", + { + class: vue.normalizeClass(["status-pill", { active: $data.isVip }]) + }, + [ + vue.createElementVNode( + "text", + null, + vue.toDisplayString($data.isVip ? "已开通" : "普通用户"), + 1 + /* TEXT */ + ) + ], + 2 + /* CLASS */ + ) + ]), + $data.isVip ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "vip-summary" + }, [ + vue.createElementVNode("view", { class: "summary-item" }, [ + vue.createElementVNode("text", { class: "summary-label" }, "会员状态"), + vue.createElementVNode("text", { class: "summary-value success" }, "已激活") + ]), + vue.createElementVNode("view", { class: "summary-item" }, [ + vue.createElementVNode("text", { class: "summary-label" }, "有效期至"), + vue.createElementVNode( + "text", + { class: "summary-value" }, + vue.toDisplayString($options.expireDisplay), + 1 + /* TEXT */ + ) + ]) + ])) : (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "vip-summary" + }, [ + vue.createElementVNode("view", { class: "summary-item" }, [ + vue.createElementVNode("text", { class: "summary-label" }, "当前身份"), + vue.createElementVNode("text", { class: "summary-value" }, "普通用户") + ]), + vue.createElementVNode("view", { class: "summary-item" }, [ + vue.createElementVNode("text", { class: "summary-label" }, "会员价格"), + vue.createElementVNode( + "text", + { class: "summary-value highlight" }, + "¥" + vue.toDisplayString($options.priceDisplay) + "/月", + 1 + /* TEXT */ + ) + ]) + ])), + vue.createElementVNode("view", { class: "benefit-section" }, [ + vue.createElementVNode("view", { class: "section-header" }, [ + vue.createElementVNode("text", { class: "section-title" }, "会员特权"), + vue.createElementVNode("text", { class: "section-subtitle" }, "聚焦数据留存与专业形象,让经营更有底气") + ]), + vue.createElementVNode("view", { class: "benefit-grid" }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.benefits, (item) => { + return vue.openBlock(), vue.createElementBlock("view", { + key: item.key, + class: "benefit-card" + }, [ + item.icon ? (vue.openBlock(), vue.createElementBlock("image", { + key: 0, + src: item.icon, + class: "benefit-icon", + mode: "aspectFit" + }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true), + vue.createElementVNode( + "text", + { class: "benefit-title" }, + vue.toDisplayString(item.title), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "benefit-desc" }, + vue.toDisplayString(item.desc), + 1 + /* TEXT */ + ) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ]) + ]), + vue.createCommentVNode(" 已是VIP:展示申请普通管理员入口 "), + $data.isVip ? (vue.openBlock(), vue.createElementBlock("view", { + key: 2, + class: "apply-card" + }, [ + vue.createElementVNode("view", { class: "apply-text" }, [ + vue.createElementVNode("text", { class: "apply-title" }, "申请成为普通管理员"), + vue.createElementVNode("text", { class: "apply-desc" }, "在普通管理端参与配件审核") + ]), + vue.createElementVNode( + "view", + { + role: "button", + class: vue.normalizeClass(["apply-btn", { disabled: $options.applyDisabled }]), + onClick: _cache[0] || (_cache[0] = (...args) => $options.onApplyNormalAdmin && $options.onApplyNormalAdmin(...args)) + }, + [ + vue.createElementVNode( + "text", + null, + vue.toDisplayString($options.applyBtnText), + 1 + /* TEXT */ + ) + ], + 2 + /* CLASS */ + ) + ])) : vue.createCommentVNode("v-if", true), + !$data.isVip ? (vue.openBlock(), vue.createElementBlock("view", { + key: 3, + class: "purchase-card" + }, [ + vue.createElementVNode("view", { class: "purchase-text" }, [ + vue.createElementVNode("text", { class: "purchase-title" }, "立即升级 VIP"), + vue.createElementVNode("text", { class: "purchase-desc" }, "不限历史数据、专属标识,助您高效管账") + ]), + vue.createElementVNode("button", { + class: "purchase-btn", + onClick: _cache[1] || (_cache[1] = (...args) => $options.onPay && $options.onPay(...args)) + }, [ + vue.createElementVNode("text", null, "立即开通") + ]) + ])) : vue.createCommentVNode("v-if", true) + ]); + } + const PagesMyVip = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/vip.vue"]]); + const _sfc_main$2 = { + data() { + return { list: [], page: 1, size: 20, loading: false }; + }, + onShow() { + this.fetch(true); + }, + computed: { + isLoggedIn() { + try { + return !!uni.getStorageSync("TOKEN"); + } catch (e) { + return false; + } + } + }, + methods: { + async fetch(reset = false) { + if (!this.isLoggedIn) + return; + if (this.loading) + return; + this.loading = true; + try { + const p = reset ? 1 : this.page; + const data = await get("/api/vip/recharges", { page: p, size: this.size }); + const arr = Array.isArray(data == null ? void 0 : data.list) ? data.list : []; + this.list = reset ? arr : (this.list || []).concat(arr); + this.page = p + 1; + } finally { + this.loading = false; + } + }, + fmt(v) { + if (!v) + return ""; + const s = String(v); + const m = s.match(/^(\d{4}-\d{2}-\d{2})([ T](\d{2}:\d{2}))/); + return m ? `${m[1]} ${m[3]}` : s; + }, + toMoney(v) { + try { + return Number(v).toFixed(2); + } catch (_) { + return v; + } + } + } + }; + function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "orders" }, [ + !$options.isLoggedIn ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "hint" + }, "请先登录后查看VIP支付记录")) : (vue.openBlock(), vue.createElementBlock("view", { key: 1 }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.list, (it) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "item", + key: it.id + }, [ + vue.createElementVNode("view", { class: "row1" }, [ + vue.createElementVNode( + "text", + { class: "price" }, + "¥ " + vue.toDisplayString($options.toMoney(it.price)), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "channel" }, + vue.toDisplayString(it.channel || "支付"), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "row2" }, [ + vue.createElementVNode( + "text", + { class: "date" }, + vue.toDisplayString($options.fmt(it.createdAt)), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "duration" }, + vue.toDisplayString(it.durationDays) + " 天", + 1 + /* TEXT */ + ) + ]), + it.expireTo ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "row3" + }, [ + vue.createElementVNode( + "text", + { class: "expire" }, + "有效期至 " + vue.toDisplayString($options.fmt(it.expireTo)), + 1 + /* TEXT */ + ) + ])) : vue.createCommentVNode("v-if", true) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )), + $data.list.length === 0 ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "empty" + }, "暂无支付记录")) : vue.createCommentVNode("v-if", true) + ])) + ]); + } + const PagesMyOrders = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$1], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/my/orders.vue"]]); function formatDate(d) { const y = d.getFullYear(); const m = String(d.getMonth() + 1).padStart(2, "0"); @@ -4503,39 +8296,62 @@ if (uni.restoreGlobal) { return { startDate: formatDate(start), endDate: formatDate(now), - mode: "sale", dim: "customer", rows: [], - total: { sales: 0, cost: 0, profit: 0 } + summary: { salesAmount: 0, costAmount: 0, profit: 0, profitRate: 0, itemCount: 0 }, + loading: false, + error: "" }; }, onLoad(query) { try { - const m = query && query.mode; const d = query && query.dim; - if (m) - this.mode = m; - if (d) + if (d === "product" || d === "customer") this.dim = d; } catch (e) { } this.refresh(); }, computed: { - profitRate() { - const { sales, profit } = this.total; - if (!sales) - return "0.00%"; - return (profit / sales * 100).toFixed(2) + "%"; + profitRateText() { + var _a; + const rate = Number(((_a = this.summary) == null ? void 0 : _a.profitRate) || 0); + return rate.toFixed(2) + "%"; + }, + summaryItems() { + if (!this.rows.length) + return []; + return [ + { label: "销售额", value: `¥ ${this.fmt(this.summary.salesAmount)}` }, + { label: "成本", value: `¥ ${this.fmt(this.summary.costAmount)}` }, + { label: "利润", value: `¥ ${this.fmt(this.summary.profit)}` }, + { label: "利润率", value: this.profitRateText } + ]; } }, methods: { fmt(n) { return Number(n || 0).toFixed(2); }, - setMode(m) { - this.mode = m; - this.dim = m === "sale" ? "customer" : m === "purchase" ? "supplier" : m === "inventory" ? "qty" : "ar"; + showProductSpec(row) { + return this.dim === "product" && row && row.spec; + }, + rowMetrics(row) { + if (!row) + return []; + return [ + { label: "销售额", value: `¥ ${this.fmt(row.salesAmount)}` }, + { label: "成本", value: `¥ ${this.fmt(row.costAmount)}` }, + { label: "利润", value: `¥ ${this.fmt(row.profit)}` }, + { label: "利润率", value: `${Number(row.profitRate || 0).toFixed(2)}%` } + ]; + }, + setDimension(d) { + if (d !== "customer" && d !== "product") + return; + if (this.dim === d) + return; + this.dim = d; this.refresh(); }, onStartChange(e) { @@ -4547,246 +8363,47 @@ if (uni.restoreGlobal) { this.refresh(); }, async refresh() { - if (this.mode === "sale") { - if (this.dim === "customer") - return this.loadByCustomer(); - if (this.dim === "product") - return this.loadByProduct(); - } - if (this.mode === "purchase") { - if (this.dim === "supplier") - return this.loadPurchaseBySupplier(); - if (this.dim === "product") - return this.loadPurchaseByProduct(); - } - if (this.mode === "inventory") { - if (this.dim === "qty") - return this.loadInventoryByQty(); - if (this.dim === "amount") - return this.loadInventoryByAmount(); - } - if (this.mode === "arap") { - if (this.dim === "ar") - return this.loadAR(); - if (this.dim === "ap") - return this.loadAP(); - } - }, - async loadByCustomer() { + var _a, _b, _c, _d, _e; + this.loading = true; + this.error = ""; try { - const listResp = await get("/api/orders", { biz: "sale", type: "out", startDate: this.startDate, endDate: this.endDate, page: 1, size: 200 }); - const list = listResp && (listResp.list || listResp) || []; - const map = /* @__PURE__ */ new Map(); - let totalSales = 0; - for (const it of list) { - const name = it.customerName || "未知客户"; - const amount = Number(it.amount || 0); - totalSales += amount; - if (!map.has(name)) - map.set(name, { name, sales: 0, cost: 0, profit: 0 }); - const row = map.get(name); - row.sales += amount; - } - const rows = Array.from(map.values()).map((r) => ({ ...r, profit: r.sales - r.cost })); - const total = { sales: totalSales, cost: 0, profit: totalSales }; - this.rows = rows; - this.total = total; + const resp = await get("/api/report/sales", { + dimension: this.dim, + startDate: this.startDate, + endDate: this.endDate + }); + const items = Array.isArray(resp == null ? void 0 : resp.items) ? resp.items : []; + this.rows = items.map((it) => ({ + name: (it == null ? void 0 : it.name) || (this.dim === "product" ? "未命名商品" : "未指定客户"), + spec: (it == null ? void 0 : it.spec) || "", + salesAmount: Number((it == null ? void 0 : it.salesAmount) || 0), + costAmount: Number((it == null ? void 0 : it.costAmount) || 0), + profit: Number((it == null ? void 0 : it.profit) || 0), + profitRate: Number((it == null ? void 0 : it.profitRate) || 0) + })); + this.summary = { + salesAmount: Number(((_a = resp == null ? void 0 : resp.summary) == null ? void 0 : _a.salesAmount) || 0), + costAmount: Number(((_b = resp == null ? void 0 : resp.summary) == null ? void 0 : _b.costAmount) || 0), + profit: Number(((_c = resp == null ? void 0 : resp.summary) == null ? void 0 : _c.profit) || 0), + profitRate: Number(((_d = resp == null ? void 0 : resp.summary) == null ? void 0 : _d.profitRate) || 0), + itemCount: Number(((_e = resp == null ? void 0 : resp.summary) == null ? void 0 : _e.itemCount) || this.rows.length) + }; } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadByProduct() { - try { - const listResp = await get("/api/orders", { biz: "sale", type: "out", startDate: this.startDate, endDate: this.endDate, page: 1, size: 200 }); - const list = listResp && (listResp.list || listResp) || []; - const agg = /* @__PURE__ */ new Map(); - for (const it of list) { - try { - const d = await get(`/api/orders/${it.id}`); - const items = d && d.items || []; - for (const m of items) { - const key = String(m.productId || m.name); - if (!agg.has(key)) - agg.set(key, { name: m.name || "#" + key, sales: 0, cost: 0, profit: 0 }); - const row = agg.get(key); - const sales = Number(m.amount || 0); - row.sales += sales; - } - } catch (_) { - } - } - const rows = Array.from(agg.values()).map((r) => ({ ...r, profit: r.sales - r.cost })); - const totalSales = rows.reduce((s, r) => s + r.sales, 0); - this.rows = rows; - this.total = { sales: totalSales, cost: 0, profit: totalSales }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadPurchaseBySupplier() { - try { - const listResp = await get("/api/purchase-orders", { startDate: this.startDate, endDate: this.endDate, page: 1, size: 200 }); - const list = listResp && (listResp.list || listResp) || []; - const map = /* @__PURE__ */ new Map(); - let total = 0; - for (const it of list) { - const name = it.supplierName || "未知供应商"; - const amount = Number(it.amount || 0); - total += amount; - if (!map.has(name)) - map.set(name, { name, sales: 0, cost: 0, profit: 0 }); - const row = map.get(name); - row.sales += amount; - } - this.rows = Array.from(map.values()); - this.total = { sales: total, cost: 0, profit: 0 }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadPurchaseByProduct() { - try { - const listResp = await get("/api/purchase-orders", { startDate: this.startDate, endDate: this.endDate, page: 1, size: 200 }); - const list = listResp && (listResp.list || listResp) || []; - const agg = /* @__PURE__ */ new Map(); - for (const it of list) { - try { - const d = await get(`/api/purchase-orders/${it.id}`); - for (const m of (d == null ? void 0 : d.items) || []) { - const key = String(m.productId || m.name); - if (!agg.has(key)) - agg.set(key, { name: m.name || "#" + key, sales: 0, cost: 0, profit: 0 }); - const row = agg.get(key); - row.sales += Number(m.amount || 0); - } - } catch (_) { - } - } - const rows = Array.from(agg.values()); - const total = rows.reduce((s, r) => s + r.sales, 0); - this.rows = rows; - this.total = { sales: total, cost: 0, profit: 0 }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadInventoryByQty() { - try { - const resp = await get("/api/inventories/logs", { startDate: this.startDate, endDate: this.endDate, page: 1, size: 200 }); - const list = resp && (resp.list || resp) || []; - const map = /* @__PURE__ */ new Map(); - let totalQty = 0; - for (const it of list) { - const key = it.productId || "未知"; - if (!map.has(key)) - map.set(key, { name: String(key), sales: 0, cost: 0, profit: 0 }); - const row = map.get(key); - const q = Number(it.qtyDelta || 0); - row.sales += q; - totalQty += q; - } - this.rows = Array.from(map.values()); - this.total = { sales: totalQty, cost: 0, profit: 0 }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadInventoryByAmount() { - try { - const resp = await get("/api/inventories/logs", { startDate: this.startDate, endDate: this.endDate, page: 1, size: 200 }); - const list = resp && (resp.list || resp) || []; - const map = /* @__PURE__ */ new Map(); - let totalAmt = 0; - for (const it of list) { - const key = it.productId || "未知"; - if (!map.has(key)) - map.set(key, { name: String(key), sales: 0, cost: 0, profit: 0 }); - const row = map.get(key); - const a = Number(it.amount || it.amountDelta || 0); - row.sales += a; - totalAmt += a; - } - this.rows = Array.from(map.values()); - this.total = { sales: totalAmt, cost: 0, profit: 0 }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadAR() { - try { - const res = await get("/api/customers", { page: 1, size: 100, debtOnly: false }); - const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; - const rows = list.map((c) => ({ name: c.name, sales: Number(c.receivable || 0), cost: 0, profit: 0 })); - const total = rows.reduce((s, r) => s + r.sales, 0); - this.rows = rows; - this.total = { sales: total, cost: 0, profit: 0 }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); - } - }, - async loadAP() { - try { - const res = await get("/api/suppliers", { page: 1, size: 100 }); - const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; - const rows = list.map((s) => ({ name: s.name, sales: Number(s.apPayable || 0), cost: 0, profit: 0 })); - const total = rows.reduce((s, r) => s + r.sales, 0); - this.rows = rows; - this.total = { sales: total, cost: 0, profit: 0 }; - } catch (e) { - uni.showToast({ title: "加载失败", icon: "none" }); + this.error = e && e.message || "报表加载失败"; + } finally { + this.loading = false; } } } }; function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "report" }, [ - vue.createElementVNode("view", { class: "modes" }, [ - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["mode-tab", { active: $data.mode === "sale" }]), - onClick: _cache[0] || (_cache[0] = ($event) => $options.setMode("sale")) - }, - "销售统计", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["mode-tab", { active: $data.mode === "purchase" }]), - onClick: _cache[1] || (_cache[1] = ($event) => $options.setMode("purchase")) - }, - "进货统计", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["mode-tab", { active: $data.mode === "inventory" }]), - onClick: _cache[2] || (_cache[2] = ($event) => $options.setMode("inventory")) - }, - "库存统计", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["mode-tab", { active: $data.mode === "arap" }]), - onClick: _cache[3] || (_cache[3] = ($event) => $options.setMode("arap")) - }, - "应收/应付对账", - 2 - /* CLASS */ - ) - ]), + vue.createElementVNode("view", { class: "header" }, "销售报表"), vue.createElementVNode("view", { class: "toolbar" }, [ vue.createElementVNode("picker", { mode: "date", value: $data.startDate, - onChange: _cache[4] || (_cache[4] = (...args) => $options.onStartChange && $options.onStartChange(...args)) + onChange: _cache[0] || (_cache[0] = (...args) => $options.onStartChange && $options.onStartChange(...args)) }, [ vue.createElementVNode( "view", @@ -4800,7 +8417,7 @@ if (uni.restoreGlobal) { vue.createElementVNode("picker", { mode: "date", value: $data.endDate, - onChange: _cache[5] || (_cache[5] = (...args) => $options.onEndChange && $options.onEndChange(...args)) + onChange: _cache[1] || (_cache[1] = (...args) => $options.onEndChange && $options.onEndChange(...args)) }, [ vue.createElementVNode( "view", @@ -4811,18 +8428,12 @@ if (uni.restoreGlobal) { ) ], 40, ["value"]) ]), - $data.mode === "sale" ? (vue.openBlock(), vue.createElementBlock("view", { - key: 0, - class: "tabs" - }, [ + vue.createElementVNode("view", { class: "tabs" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass(["tab", { active: $data.dim === "customer" }]), - onClick: _cache[6] || (_cache[6] = ($event) => { - $data.dim = "customer"; - $options.refresh(); - }) + onClick: _cache[2] || (_cache[2] = ($event) => $options.setDimension("customer")) }, "按客户", 2 @@ -4832,206 +8443,137 @@ if (uni.restoreGlobal) { "view", { class: vue.normalizeClass(["tab", { active: $data.dim === "product" }]), - onClick: _cache[7] || (_cache[7] = ($event) => { - $data.dim = "product"; - $options.refresh(); - }) + onClick: _cache[3] || (_cache[3] = ($event) => $options.setDimension("product")) }, "按货品", 2 /* CLASS */ ) - ])) : $data.mode === "purchase" ? (vue.openBlock(), vue.createElementBlock("view", { - key: 1, - class: "tabs" - }, [ - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["tab", { active: $data.dim === "supplier" }]), - onClick: _cache[8] || (_cache[8] = ($event) => { - $data.dim = "supplier"; - $options.refresh(); - }) - }, - "按供应商", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["tab", { active: $data.dim === "product" }]), - onClick: _cache[9] || (_cache[9] = ($event) => { - $data.dim = "product"; - $options.refresh(); - }) - }, - "按货品", - 2 - /* CLASS */ - ) - ])) : $data.mode === "inventory" ? (vue.openBlock(), vue.createElementBlock("view", { - key: 2, - class: "tabs" - }, [ - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["tab", { active: $data.dim === "qty" }]), - onClick: _cache[10] || (_cache[10] = ($event) => { - $data.dim = "qty"; - $options.refresh(); - }) - }, - "按数量", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["tab", { active: $data.dim === "amount" }]), - onClick: _cache[11] || (_cache[11] = ($event) => { - $data.dim = "amount"; - $options.refresh(); - }) - }, - "按金额", - 2 - /* CLASS */ - ) - ])) : $data.mode === "arap" ? (vue.openBlock(), vue.createElementBlock("view", { - key: 3, - class: "tabs" - }, [ - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["tab", { active: $data.dim === "ar" }]), - onClick: _cache[12] || (_cache[12] = ($event) => { - $data.dim = "ar"; - $options.refresh(); - }) - }, - "应收对账", - 2 - /* CLASS */ - ), - vue.createElementVNode( - "view", - { - class: vue.normalizeClass(["tab", { active: $data.dim === "ap" }]), - onClick: _cache[13] || (_cache[13] = ($event) => { - $data.dim = "ap"; - $options.refresh(); - }) - }, - "应付对账", - 2 - /* CLASS */ - ) - ])) : vue.createCommentVNode("v-if", true), - vue.createElementVNode("view", { class: "summary" }, [ - vue.createElementVNode("view", { class: "item" }, [ - vue.createElementVNode("text", { class: "label" }, "销售额"), - vue.createElementVNode( - "text", - { class: "value" }, - "¥ " + vue.toDisplayString($options.fmt($data.total.sales)), - 1 - /* TEXT */ - ) - ]), - vue.createElementVNode("view", { class: "item" }, [ - vue.createElementVNode("text", { class: "label" }, "成本"), - vue.createElementVNode( - "text", - { class: "value" }, - "¥ " + vue.toDisplayString($options.fmt($data.total.cost)), - 1 - /* TEXT */ - ) - ]), - vue.createElementVNode("view", { class: "item" }, [ - vue.createElementVNode("text", { class: "label" }, "利润"), - vue.createElementVNode( - "text", - { class: "value" }, - "¥ " + vue.toDisplayString($options.fmt($data.total.profit)), - 1 - /* TEXT */ - ) - ]), - vue.createElementVNode("view", { class: "item" }, [ - vue.createElementVNode("text", { class: "label" }, "利润率"), - vue.createElementVNode( - "text", - { class: "value" }, - vue.toDisplayString($options.profitRate), - 1 - /* TEXT */ - ) - ]) ]), - (vue.openBlock(true), vue.createElementBlock( - vue.Fragment, - null, - vue.renderList($data.rows, (row, idx) => { - return vue.openBlock(), vue.createElementBlock("view", { - key: idx, - class: "card" - }, [ - vue.createElementVNode("view", { class: "row-head" }, [ - row.avatar ? (vue.openBlock(), vue.createElementBlock("image", { - key: 0, - class: "thumb", - src: row.avatar - }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true), - vue.createElementVNode( - "view", - { class: "title" }, - vue.toDisplayString(row.name), - 1 - /* TEXT */ - ) - ]), - vue.createElementVNode("view", { class: "row-body" }, [ + $options.summaryItems.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 0, + class: "summary" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($options.summaryItems, (item, ix) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "summary-item", + key: ix + }, [ vue.createElementVNode( "text", - null, - "销售额:¥ " + vue.toDisplayString($options.fmt(row.sales)), + { class: "label" }, + vue.toDisplayString(item.label), 1 /* TEXT */ ), vue.createElementVNode( "text", - { style: { "margin-left": "18rpx" } }, - "成本:¥ " + vue.toDisplayString($options.fmt(row.cost)), - 1 - /* TEXT */ - ), - vue.createElementVNode( - "text", - { style: { "margin-left": "18rpx" } }, - "利润:¥ " + vue.toDisplayString($options.fmt(row.profit)), + { class: "value" }, + vue.toDisplayString(item.value), 1 /* TEXT */ ) - ]) - ]); - }), - 128 - /* KEYED_FRAGMENT */ - )) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) : vue.createCommentVNode("v-if", true), + $data.loading ? (vue.openBlock(), vue.createElementBlock("view", { + key: 1, + class: "loading" + }, "加载中...")) : $data.error ? (vue.openBlock(), vue.createElementBlock( + "view", + { + key: 2, + class: "empty" + }, + vue.toDisplayString($data.error), + 1 + /* TEXT */ + )) : !$data.rows.length ? (vue.openBlock(), vue.createElementBlock("view", { + key: 3, + class: "empty" + }, "暂无统计数据")) : (vue.openBlock(), vue.createElementBlock("view", { key: 4 }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.rows, (row, idx) => { + return vue.openBlock(), vue.createElementBlock("view", { + key: idx, + class: "card" + }, [ + vue.createElementVNode("view", { class: "row-head" }, [ + vue.createElementVNode("view", { class: "row-title" }, [ + vue.createElementVNode( + "view", + { class: "title" }, + vue.toDisplayString(row.name), + 1 + /* TEXT */ + ), + $options.showProductSpec(row) ? (vue.openBlock(), vue.createElementBlock( + "view", + { + key: 0, + class: "subtitle" + }, + vue.toDisplayString(row.spec), + 1 + /* TEXT */ + )) : vue.createCommentVNode("v-if", true) + ]) + ]), + vue.createElementVNode("view", { class: "row-body" }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($options.rowMetrics(row), (metric, mIdx) => { + return vue.openBlock(), vue.createElementBlock("view", { + class: "metric", + key: mIdx + }, [ + vue.createElementVNode( + "text", + { class: "metric-label" }, + vue.toDisplayString(metric.label), + 1 + /* TEXT */ + ), + vue.createElementVNode( + "text", + { class: "metric-value" }, + vue.toDisplayString(metric.value), + 1 + /* TEXT */ + ) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ]) + ]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ])) ]); } - const PagesReportIndex = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render], ["__file", "D:/wx/PartsInquiry/frontend/pages/report/index.vue"]]); + const PagesReportIndex = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render], ["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/pages/report/index.vue"]]); __definePage("pages/index/index", PagesIndexIndex); __definePage("pages/order/create", PagesOrderCreate); __definePage("pages/product/select", PagesProductSelect); __definePage("pages/product/list", PagesProductList); + __definePage("pages/product/submit", PagesProductSubmit); + __definePage("pages/product/submissions", PagesProductSubmissions); + __definePage("pages/product/submission-detail", PagesProductSubmissionDetail); __definePage("pages/product/form", PagesProductForm); + __definePage("pages/product/product-detail", PagesProductProductDetail); __definePage("pages/product/categories", PagesProductCategories); __definePage("pages/product/units", PagesProductUnits); __definePage("pages/product/settings", PagesProductSettings); @@ -5044,8 +8586,13 @@ if (uni.restoreGlobal) { __definePage("pages/account/ledger", PagesAccountLedger); __definePage("pages/account/form", PagesAccountForm); __definePage("pages/detail/index", PagesDetailIndex); + __definePage("pages/auth/login", PagesAuthLogin); + __definePage("pages/auth/register", PagesAuthRegister); __definePage("pages/my/index", PagesMyIndex); __definePage("pages/my/about", PagesMyAbout); + __definePage("pages/my/security", PagesMySecurity); + __definePage("pages/my/vip", PagesMyVip); + __definePage("pages/my/orders", PagesMyOrders); __definePage("pages/report/index", PagesReportIndex); const _sfc_main = { onLaunch: function() { @@ -5058,7 +8605,7 @@ if (uni.restoreGlobal) { formatAppLog("log", "at App.vue:10", "App Hide"); } }; - const App = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:/wx/PartsInquiry/frontend/App.vue"]]); + const App = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "C:/Users/21826/Desktop/Wj/PartsInquiry/frontend/App.vue"]]); function createApp() { const app = vue.createVueApp(App); return { diff --git a/frontend/unpackage/dist/dev/app-plus/app.css b/frontend/unpackage/dist/dev/app-plus/app.css index 091d80c..4cd4239 100644 --- a/frontend/unpackage/dist/dev/app-plus/app.css +++ b/frontend/unpackage/dist/dev/app-plus/app.css @@ -1,4 +1,87 @@ *{margin:0;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent}html,body{-webkit-user-select:none;user-select:none;width:100%}html{height:100%;height:100vh;width:100%;width:100vw}body{overflow-x:hidden;background-color:#fff;height:100%}#app{height:100%}input[type=search]::-webkit-search-cancel-button{display:none}.uni-loading,uni-button[loading]:before{background:transparent url(data:image/svg+xml;base64,\ PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=) no-repeat}.uni-loading{width:20px;height:20px;display:inline-block;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}@keyframes uni-loading{0%{transform:rotate3d(0,0,1,0)}to{transform:rotate3d(0,0,1,360deg)}}@media (prefers-color-scheme: dark){html{--UI-BG-COLOR-ACTIVE: #373737;--UI-BORDER-COLOR-1: #373737;--UI-BG: #000;--UI-BG-0: #191919;--UI-BG-1: #1f1f1f;--UI-BG-2: #232323;--UI-BG-3: #2f2f2f;--UI-BG-4: #606060;--UI-BG-5: #2c2c2c;--UI-FG: #fff;--UI-FG-0: hsla(0, 0%, 100%, .8);--UI-FG-HALF: hsla(0, 0%, 100%, .6);--UI-FG-1: hsla(0, 0%, 100%, .5);--UI-FG-2: hsla(0, 0%, 100%, .3);--UI-FG-3: hsla(0, 0%, 100%, .05)}body{background-color:var(--UI-BG-0);color:var(--UI-FG-0)}}[nvue] uni-view,[nvue] uni-label,[nvue] uni-swiper-item,[nvue] uni-scroll-view{display:flex;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}[nvue] uni-button{margin:0}[nvue-dir-row] uni-view,[nvue-dir-row] uni-label,[nvue-dir-row] uni-swiper-item{flex-direction:row}[nvue-dir-column] uni-view,[nvue-dir-column] uni-label,[nvue-dir-column] uni-swiper-item{flex-direction:column}[nvue-dir-row-reverse] uni-view,[nvue-dir-row-reverse] uni-label,[nvue-dir-row-reverse] uni-swiper-item{flex-direction:row-reverse}[nvue-dir-column-reverse] uni-view,[nvue-dir-column-reverse] uni-label,[nvue-dir-column-reverse] uni-swiper-item{flex-direction:column-reverse}[nvue] uni-view,[nvue] uni-image,[nvue] uni-input,[nvue] uni-scroll-view,[nvue] uni-swiper,[nvue] uni-swiper-item,[nvue] uni-text,[nvue] uni-textarea,[nvue] uni-video{position:relative;border:0px solid #000000;box-sizing:border-box}[nvue] uni-swiper-item{position:absolute}@keyframes once-show{0%{top:0}}uni-resize-sensor,uni-resize-sensor>div{position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden}uni-resize-sensor{display:block;z-index:-1;visibility:hidden;animation:once-show 1ms}uni-resize-sensor>div>div{position:absolute;left:0;top:0}uni-resize-sensor>div:first-child>div{width:100000px;height:100000px}uni-resize-sensor>div:last-child>div{width:200%;height:200%}uni-text[selectable]{cursor:auto;-webkit-user-select:text;user-select:text}uni-text{white-space:pre-line}uni-view{display:block}uni-view[hidden]{display:none}uni-button{position:relative;display:block;margin-left:auto;margin-right:auto;padding-left:14px;padding-right:14px;box-sizing:border-box;font-size:18px;text-align:center;text-decoration:none;line-height:2.55555556;border-radius:5px;-webkit-tap-highlight-color:transparent;overflow:hidden;color:#000;background-color:#f8f8f8;cursor:pointer}uni-button[hidden]{display:none!important}uni-button:after{content:" ";width:200%;height:200%;position:absolute;top:0;left:0;border:1px solid rgba(0,0,0,.2);transform:scale(.5);transform-origin:0 0;box-sizing:border-box;border-radius:10px}uni-button[native]{padding-left:0;padding-right:0}uni-button[native] .uni-button-cover-view-wrapper{border:inherit;border-color:inherit;border-radius:inherit;background-color:inherit}uni-button[native] .uni-button-cover-view-inner{padding-left:14px;padding-right:14px}uni-button uni-cover-view{line-height:inherit;white-space:inherit}uni-button[type=default]{color:#000;background-color:#f8f8f8}uni-button[type=primary]{color:#fff;background-color:#007aff}uni-button[type=warn]{color:#fff;background-color:#e64340}uni-button[disabled]{color:rgba(255,255,255,.6);cursor:not-allowed}uni-button[disabled][type=default],uni-button[disabled]:not([type]){color:rgba(0,0,0,.3);background-color:#f7f7f7}uni-button[disabled][type=primary]{background-color:rgba(0,122,255,.6)}uni-button[disabled][type=warn]{background-color:#ec8b89}uni-button[type=primary][plain]{color:#007aff;border:1px solid #007aff;background-color:transparent}uni-button[type=primary][plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[type=primary][plain]:after{border-width:0}uni-button[type=default][plain]{color:#353535;border:1px solid #353535;background-color:transparent}uni-button[type=default][plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[type=default][plain]:after{border-width:0}uni-button[plain]{color:#353535;border:1px solid #353535;background-color:transparent}uni-button[plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[plain]:after{border-width:0}uni-button[plain][native] .uni-button-cover-view-inner{padding:0}uni-button[type=warn][plain]{color:#e64340;border:1px solid #e64340;background-color:transparent}uni-button[type=warn][plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[type=warn][plain]:after{border-width:0}uni-button[size=mini]{display:inline-block;line-height:2.3;font-size:13px;padding:0 1.34em}uni-button[size=mini][native]{padding:0}uni-button[size=mini][native] .uni-button-cover-view-inner{padding:0 1.34em}uni-button[loading]:not([disabled]){cursor:progress}uni-button[loading]:before{content:" ";display:inline-block;width:18px;height:18px;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}uni-button[loading][type=primary]{color:rgba(255,255,255,.6);background-color:#0062cc}uni-button[loading][type=primary][plain]{color:#007aff;background-color:transparent}uni-button[loading][type=default]{color:rgba(0,0,0,.6);background-color:#dedede}uni-button[loading][type=default][plain]{color:#353535;background-color:transparent}uni-button[loading][type=warn]{color:rgba(255,255,255,.6);background-color:#ce3c39}uni-button[loading][type=warn][plain]{color:#e64340;background-color:transparent}uni-button[loading][native]:before{content:none}.button-hover{color:rgba(0,0,0,.6);background-color:#dedede}.button-hover[plain]{color:rgba(53,53,53,.6);border-color:rgba(53,53,53,.6);background-color:transparent}.button-hover[type=primary]{color:rgba(255,255,255,.6);background-color:#0062cc}.button-hover[type=primary][plain]{color:rgba(0,122,255,.6);border-color:rgba(0,122,255,.6);background-color:transparent}.button-hover[type=default]{color:rgba(0,0,0,.6);background-color:#dedede}.button-hover[type=default][plain]{color:rgba(53,53,53,.6);border-color:rgba(53,53,53,.6);background-color:transparent}.button-hover[type=warn]{color:rgba(255,255,255,.6);background-color:#ce3c39}.button-hover[type=warn][plain]{color:rgba(230,67,64,.6);border-color:rgba(230,67,64,.6);background-color:transparent}@media (prefers-color-scheme: dark){uni-button,uni-button[type=default]{color:#d6d6d6;background-color:#343434}.button-hover,.button-hover[type=default]{color:#d6d6d6;background-color:rgba(255,255,255,.1)}uni-button[disabled][type=default],uni-button[disabled]:not([type]){color:rgba(255,255,255,.2);background-color:rgba(255,255,255,.08)}uni-button[type=primary][plain][disabled]{color:rgba(255,255,255,.2);border-color:rgba(255,255,255,.2)}uni-button[type=default][plain]{color:#d6d6d6;border:1px solid #d6d6d6}.button-hover[type=default][plain]{color:rgba(150,150,150,.6);border-color:rgba(150,150,150,.6);background-color:rgba(50,50,50,.2)}uni-button[type=default][plain][disabled]{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.2)}}uni-canvas{width:300px;height:150px;display:block;position:relative}uni-canvas>.uni-canvas-canvas{position:absolute;top:0;left:0;width:100%;height:100%}uni-checkbox{-webkit-tap-highlight-color:transparent;display:inline-block;cursor:pointer}uni-checkbox[hidden]{display:none}uni-checkbox[disabled]{cursor:not-allowed}.uni-checkbox-wrapper{display:inline-flex;align-items:center;vertical-align:middle}.uni-checkbox-input{margin-right:5px;-webkit-appearance:none;appearance:none;outline:0;border:1px solid #d1d1d1;background-color:#fff;border-radius:3px;width:22px;height:22px;position:relative}.uni-checkbox-input svg{color:#007aff;font-size:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%) scale(.73)}@media (hover: hover){uni-checkbox:not([disabled]) .uni-checkbox-input:hover{border-color:var(--HOVER-BD-COLOR, #007aff)!important}}uni-checkbox-group{display:block}uni-checkbox-group[hidden]{display:none}uni-cover-image{display:block;line-height:1.2;overflow:hidden;height:100%;width:100%;pointer-events:auto}uni-cover-image[hidden]{display:none}uni-cover-image .uni-cover-image{width:100%;height:100%}uni-cover-view{display:block;line-height:1.2;overflow:hidden;white-space:nowrap;pointer-events:auto}uni-cover-view[hidden]{display:none}uni-cover-view .uni-cover-view{width:100%;height:100%;visibility:hidden;text-overflow:inherit;white-space:inherit;align-items:inherit;justify-content:inherit;flex-direction:inherit;flex-wrap:inherit;display:inherit;overflow:inherit}.ql-container{display:block;position:relative;box-sizing:border-box;-webkit-user-select:text;user-select:text;outline:none;overflow:hidden;width:100%;height:200px;min-height:200px}.ql-container[hidden]{display:none}.ql-container .ql-editor{position:relative;font-size:inherit;line-height:inherit;font-family:inherit;min-height:inherit;width:100%;height:100%;padding:0;overflow-x:hidden;overflow-y:auto;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-overflow-scrolling:touch}.ql-container .ql-editor::-webkit-scrollbar{width:0!important}.ql-container .ql-editor.scroll-disabled{overflow:hidden}.ql-container .ql-image-overlay{display:flex;position:absolute;box-sizing:border-box;border:1px dashed #ccc;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none}.ql-container .ql-image-overlay .ql-image-size{position:absolute;padding:4px 8px;text-align:center;background-color:#fff;color:#888;border:1px solid #ccc;box-sizing:border-box;opacity:.8;right:4px;top:4px;font-size:12px;display:inline-block;width:auto}.ql-container .ql-image-overlay .ql-image-toolbar{position:relative;text-align:center;box-sizing:border-box;background:#000;border-radius:5px;color:#fff;font-size:0;min-height:24px;z-index:100}.ql-container .ql-image-overlay .ql-image-toolbar span{display:inline-block;cursor:pointer;padding:5px;font-size:12px;border-right:1px solid #fff}.ql-container .ql-image-overlay .ql-image-toolbar span:last-child{border-right:0}.ql-container .ql-image-overlay .ql-image-toolbar span.triangle-up{padding:0;position:absolute;top:-12px;left:50%;transform:translate(-50%);width:0;height:0;border-width:6px;border-style:solid;border-color:transparent transparent black transparent}.ql-container .ql-image-overlay .ql-image-handle{position:absolute;height:12px;width:12px;border-radius:50%;border:1px solid #ccc;box-sizing:border-box;background:#fff}.ql-container img{display:inline-block;max-width:100%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;height:100%;outline:none;overflow-y:auto;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em}.ql-editor li.ql-direction-rtl:before{margin-right:-1.5em}.ql-editor li:before{display:inline-block;white-space:nowrap;width:2em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:2em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:2em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:2em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:4em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:4em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:4em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:6em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:8em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:8em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:8em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:10em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:10em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:10em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:12em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:14em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:14em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:14em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:16em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:16em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:16em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:18em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right,.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:rgba(0,0,0,.6);content:attr(data-placeholder);font-style:italic;pointer-events:none;position:absolute}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}uni-icon{display:inline-block;font-size:0;box-sizing:border-box}uni-icon[hidden]{display:none}uni-image{width:320px;height:240px;display:inline-block;overflow:hidden;position:relative}uni-image[hidden]{display:none}uni-image>div{width:100%;height:100%;background-repeat:no-repeat}uni-image>img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;display:block;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0}uni-image>.uni-image-will-change{will-change:transform}uni-input{display:block;font-size:16px;line-height:1.4em;height:1.4em;min-height:1.4em;overflow:hidden}uni-input[hidden]{display:none}.uni-input-wrapper,.uni-input-placeholder,.uni-input-form,.uni-input-input{outline:none;border:none;padding:0;margin:0;text-decoration:inherit}.uni-input-wrapper,.uni-input-form{display:flex;position:relative;width:100%;height:100%;flex-direction:column;justify-content:center}.uni-input-placeholder,.uni-input-input{width:100%}.uni-input-placeholder{position:absolute;top:auto!important;left:0;color:gray;overflow:hidden;text-overflow:clip;white-space:pre;word-break:keep-all;pointer-events:none;line-height:inherit}.uni-input-input{position:relative;display:block;height:100%;background:none;color:inherit;opacity:1;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:inherit;text-indent:inherit;text-transform:inherit;text-shadow:inherit}.uni-input-input[type=search]::-webkit-search-cancel-button,.uni-input-input[type=search]::-webkit-search-decoration{display:none}.uni-input-input::-webkit-outer-spin-button,.uni-input-input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}.uni-input-input[type=number]{-moz-appearance:textfield}.uni-input-input:disabled{-webkit-text-fill-color:currentcolor}.uni-label-pointer{cursor:pointer}uni-live-pusher{width:320px;height:240px;display:inline-block;line-height:0;overflow:hidden;position:relative}uni-live-pusher[hidden]{display:none}.uni-live-pusher-container{width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden;background-color:#000}.uni-live-pusher-slot{position:absolute;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none}uni-map{width:300px;height:225px;display:inline-block;line-height:0;overflow:hidden;position:relative}uni-map[hidden]{display:none}.uni-map-container{width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden;background-color:transparent}.uni-map-slot{position:absolute;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none}uni-map.web{position:relative;width:300px;height:150px;display:block}uni-map.web[hidden]{display:none}uni-map.web .amap-marker-label{padding:0;border:none;background-color:transparent}uni-map.web .amap-marker>.amap-icon>img{left:0!important;top:0!important}uni-map.web .uni-map-control{position:absolute;width:0;height:0;top:0;left:0;z-index:999}uni-map.web .uni-map-control-icon{position:absolute;max-width:initial}.uni-system-choose-location{display:block;position:fixed;left:0;top:0;width:100%;height:100%;background:#f8f8f8;z-index:999}.uni-system-choose-location .map{position:absolute;top:0;left:0;width:100%;height:300px}.uni-system-choose-location .map-location{position:absolute;left:50%;bottom:50%;width:32px;height:52px;margin-left:-16px;cursor:pointer;background-size:100%}.uni-system-choose-location .map-move{position:absolute;bottom:50px;right:10px;width:40px;height:40px;box-sizing:border-box;line-height:40px;background-color:#fff;border-radius:50%;pointer-events:auto;cursor:pointer;box-shadow:0 0 5px 1px rgba(0,0,0,.3)}.uni-system-choose-location .map-move>svg{display:block;width:100%;height:100%;box-sizing:border-box;padding:8px}.uni-system-choose-location .nav{position:absolute;top:0;left:0;width:100%;height:calc(44px + var(--status-bar-height));background-color:transparent;background-image:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,0))}.uni-system-choose-location .nav-btn{position:absolute;box-sizing:border-box;top:var(--status-bar-height);left:0;width:60px;height:44px;padding:6px;line-height:32px;font-size:26px;color:#fff;text-align:center;cursor:pointer}.uni-system-choose-location .nav-btn.confirm{left:auto;right:0}.uni-system-choose-location .nav-btn.disable{opacity:.4}.uni-system-choose-location .nav-btn>svg{display:block;width:100%;height:100%;border-radius:2px;box-sizing:border-box;padding:3px}.uni-system-choose-location .nav-btn.confirm>svg{background-color:#007aff;padding:5px}.uni-system-choose-location .menu{position:absolute;top:300px;left:0;width:100%;bottom:0;background-color:#fff}.uni-system-choose-location .search{display:flex;flex-direction:row;height:50px;padding:8px;line-height:34px;box-sizing:border-box;background-color:#fff}.uni-system-choose-location .search-input{flex:1;height:100%;border-radius:5px;padding:0 5px;background:#ebebeb}.uni-system-choose-location .search-btn{margin-left:5px;color:#007aff;font-size:17px;text-align:center}.uni-system-choose-location .list{position:absolute;top:50px;left:0;width:100%;bottom:0;padding-bottom:10px}.uni-system-choose-location .list-loading{display:flex;height:50px;justify-content:center;align-items:center}.uni-system-choose-location .list-item{position:relative;padding:10px 40px 10px 10px;cursor:pointer}.uni-system-choose-location .list-item>svg{display:none;position:absolute;top:50%;right:10px;width:30px;height:30px;margin-top:-15px;box-sizing:border-box;padding:5px}.uni-system-choose-location .list-item.selected>svg{display:block}.uni-system-choose-location .list-item:not(:last-child):after{position:absolute;content:"";height:1px;left:10px;bottom:0;width:100%;background-color:#d3d3d3}.uni-system-choose-location .list-item-title{font-size:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.uni-system-choose-location .list-item-detail{font-size:12px;color:gray;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media screen and (min-width: 800px){.uni-system-choose-location .map{top:0;height:100%}.uni-system-choose-location .map-move{bottom:10px;right:320px}.uni-system-choose-location .menu{top:calc(54px + var(--status-bar-height));left:auto;right:10px;width:300px;bottom:10px;max-height:600px;box-shadow:0 0 20px 5px rgba(0,0,0,.3)}}.uni-system-open-location{display:block;position:fixed;left:0;top:0;width:100%;height:100%;background:#f8f8f8;z-index:999}.uni-system-open-location .map{position:absolute;top:0;left:0;width:100%;bottom:80px;height:auto}.uni-system-open-location .info{position:absolute;bottom:0;left:0;width:100%;height:80px;background-color:#fff;padding:15px;box-sizing:border-box;line-height:1.5}.uni-system-open-location .info>.name{font-size:17px;color:#111}.uni-system-open-location .info>.address{font-size:14px;color:#666}.uni-system-open-location .info>.nav{position:absolute;top:50%;right:15px;width:50px;height:50px;border-radius:50%;margin-top:-25px;background-color:#007aff}.uni-system-open-location .info>.nav>svg{display:block;width:100%;height:100%;padding:10px;box-sizing:border-box}.uni-system-open-location .map-move{position:absolute;bottom:50px;right:10px;width:40px;height:40px;box-sizing:border-box;line-height:40px;background-color:#fff;border-radius:50%;pointer-events:auto;cursor:pointer;box-shadow:0 0 5px 1px rgba(0,0,0,.3)}.uni-system-open-location .map-move>svg{display:block;width:100%;height:100%;box-sizing:border-box;padding:8px}.uni-system-open-location .nav-btn-back{position:absolute;box-sizing:border-box;top:var(--status-bar-height);left:0;width:44px;height:44px;padding:6px;cursor:pointer}.uni-system-open-location .nav-btn-back>svg{display:block;width:100%;height:100%;border-radius:50%;background-color:rgba(0,0,0,.5);padding:3px;box-sizing:border-box}.uni-system-open-location .map-content{position:absolute;left:0;top:0;width:100%;bottom:0;overflow:hidden}.uni-system-open-location .map-content.fix-position{top:-74px;bottom:-44px}.uni-system-open-location .map-content>iframe{width:100%;height:100%;border:none}.uni-system-open-location .actTonav{position:absolute;right:16px;bottom:56px;width:60px;height:60px;border-radius:60px}.uni-system-open-location .nav-view{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;flex-direction:column}.uni-system-open-location .nav-view-top-placeholder{width:100%;height:var(--status-bar-height);background-color:#fff}.uni-system-open-location .nav-view-frame{width:100%;flex:1}uni-movable-area{display:block;position:relative;width:10px;height:10px}uni-movable-area[hidden]{display:none}uni-movable-view{display:inline-block;width:10px;height:10px;top:0;left:0;position:absolute;cursor:grab}uni-movable-view[hidden]{display:none}uni-navigator{height:auto;width:auto;display:block;cursor:pointer}uni-navigator[hidden]{display:none}.navigator-hover{background-color:rgba(0,0,0,.1);opacity:.7}.navigator-wrap,.navigator-wrap:link,.navigator-wrap:visited,.navigator-wrap:hover,.navigator-wrap:active{text-decoration:none;color:inherit;cursor:pointer}uni-picker-view{display:block}.uni-picker-view-wrapper{display:flex;position:relative;overflow:hidden;height:100%}uni-picker-view[hidden]{display:none}uni-picker-view-column{flex:1;position:relative;height:100%;overflow:hidden}uni-picker-view-column[hidden]{display:none}.uni-picker-view-group{height:100%;overflow:hidden}.uni-picker-view-mask{transform:translateZ(0)}.uni-picker-view-indicator,.uni-picker-view-mask{position:absolute;left:0;width:100%;z-index:3;pointer-events:none}.uni-picker-view-mask{top:0;height:100%;margin:0 auto;background-image:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.6)),linear-gradient(0deg,rgba(255,255,255,.95),rgba(255,255,255,.6));background-position:top,bottom;background-size:100% 102px;background-repeat:no-repeat;transform:translateZ(0)}.uni-picker-view-indicator{height:34px;top:50%;transform:translateY(-50%)}.uni-picker-view-content{position:absolute;top:0;left:0;width:100%;will-change:transform;padding:102px 0;cursor:pointer}.uni-picker-view-content>*{height:var(--picker-view-column-indicator-height);overflow:hidden}.uni-picker-view-indicator:before{top:0;border-top:1px solid #e5e5e5;transform-origin:0 0;transform:scaleY(.5)}.uni-picker-view-indicator:after{bottom:0;border-bottom:1px solid #e5e5e5;transform-origin:0 100%;transform:scaleY(.5)}.uni-picker-view-indicator:after,.uni-picker-view-indicator:before{content:" ";position:absolute;left:0;right:0;height:1px;color:#e5e5e5}@media (prefers-color-scheme: dark){.uni-picker-view-indicator:before{border-top-color:var(--UI-FG-3)}.uni-picker-view-indicator:after{border-bottom-color:var(--UI-FG-3)}.uni-picker-view-mask{background-image:linear-gradient(180deg,rgba(35,35,35,.95),rgba(35,35,35,.6)),linear-gradient(0deg,rgba(35,35,35,.95),rgba(35,35,35,.6))}}uni-progress{display:flex;align-items:center}uni-progress[hidden]{display:none}.uni-progress-bar{flex:1}.uni-progress-inner-bar{width:0;height:100%}.uni-progress-info{margin-top:0;margin-bottom:0;min-width:2em;margin-left:15px;font-size:16px}uni-radio{-webkit-tap-highlight-color:transparent;display:inline-block;cursor:pointer}uni-radio[hidden]{display:none}uni-radio[disabled]{cursor:not-allowed}.uni-radio-wrapper{display:inline-flex;align-items:center;vertical-align:middle}.uni-radio-input{-webkit-appearance:none;appearance:none;margin-right:5px;outline:0;border:1px solid #d1d1d1;background-color:#fff;border-radius:50%;width:22px;height:22px;position:relative}@media (hover: hover){uni-radio:not([disabled]) .uni-radio-input:hover{border-color:var(--HOVER-BD-COLOR, #007aff)!important}}.uni-radio-input svg{color:#fff;font-size:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%) scale(.73)}.uni-radio-input.uni-radio-input-disabled{background-color:#e1e1e1;border-color:#d1d1d1}.uni-radio-input.uni-radio-input-disabled svg{color:#adadad}uni-radio-group{display:block}uni-radio-group[hidden]{display:none}uni-scroll-view{display:block;width:100%}uni-scroll-view[hidden]{display:none}.uni-scroll-view{position:relative;-webkit-overflow-scrolling:touch;width:100%;height:100%;max-height:inherit}.uni-scroll-view-scrollbar-hidden::-webkit-scrollbar{display:none}.uni-scroll-view-scrollbar-hidden{-moz-scrollbars:none;scrollbar-width:none}.uni-scroll-view-content{width:100%;height:100%}.uni-scroll-view-refresher{position:relative;overflow:hidden;flex-shrink:0}.uni-scroll-view-refresher-container{position:absolute;width:100%;bottom:0;display:flex;flex-direction:column-reverse}.uni-scroll-view-refresh{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:row;justify-content:center;align-items:center}.uni-scroll-view-refresh-inner{display:flex;align-items:center;justify-content:center;line-height:0;width:40px;height:40px;border-radius:50%;background-color:#fff;box-shadow:0 1px 6px rgba(0,0,0,.118),0 1px 4px rgba(0,0,0,.118)}.uni-scroll-view-refresh__spinner{transform-origin:center center;animation:uni-scroll-view-refresh-rotate 2s linear infinite}.uni-scroll-view-refresh__spinner>circle{stroke:currentColor;stroke-linecap:round;animation:uni-scroll-view-refresh-dash 2s linear infinite}@keyframes uni-scroll-view-refresh-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes uni-scroll-view-refresh-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}uni-slider{margin:10px 18px;padding:0;display:block}uni-slider[hidden]{display:none}uni-slider .uni-slider-wrapper{display:flex;align-items:center;min-height:16px}uni-slider .uni-slider-tap-area{flex:1;padding:8px 0}uni-slider .uni-slider-handle-wrapper{position:relative;height:2px;border-radius:5px;background-color:#e9e9e9;cursor:pointer;transition:background-color .3s ease;-webkit-tap-highlight-color:transparent}uni-slider .uni-slider-track{height:100%;border-radius:6px;background-color:#007aff;transition:background-color .3s ease}uni-slider .uni-slider-handle,uni-slider .uni-slider-thumb{position:absolute;left:50%;top:50%;cursor:pointer;border-radius:50%;transition:border-color .3s ease}uni-slider .uni-slider-handle{width:28px;height:28px;margin-top:-14px;margin-left:-14px;background-color:transparent;z-index:3;cursor:grab}uni-slider .uni-slider-thumb{z-index:2;box-shadow:0 0 4px rgba(0,0,0,.2)}uni-slider .uni-slider-step{position:absolute;width:100%;height:2px;background:transparent;z-index:1}uni-slider .uni-slider-value{width:3ch;color:#888;font-size:14px;margin-left:1em}uni-slider .uni-slider-disabled .uni-slider-track{background-color:#ccc}uni-slider .uni-slider-disabled .uni-slider-thumb{background-color:#fff;border-color:#ccc}uni-swiper{display:block;height:150px}uni-swiper[hidden]{display:none}.uni-swiper-wrapper{overflow:hidden;position:relative;width:100%;height:100%;transform:translateZ(0)}.uni-swiper-slides{position:absolute;left:0;top:0;right:0;bottom:0}.uni-swiper-slide-frame{position:absolute;left:0;top:0;width:100%;height:100%;will-change:transform}.uni-swiper-dots{position:absolute;font-size:0}.uni-swiper-dots-horizontal{left:50%;bottom:10px;text-align:center;white-space:nowrap;transform:translate(-50%)}.uni-swiper-dots-horizontal .uni-swiper-dot{margin-right:8px}.uni-swiper-dots-horizontal .uni-swiper-dot:last-child{margin-right:0}.uni-swiper-dots-vertical{right:10px;top:50%;text-align:right;transform:translateY(-50%)}.uni-swiper-dots-vertical .uni-swiper-dot{display:block;margin-bottom:9px}.uni-swiper-dots-vertical .uni-swiper-dot:last-child{margin-bottom:0}.uni-swiper-dot{display:inline-block;width:8px;height:8px;cursor:pointer;transition-property:background-color;transition-timing-function:ease;background:rgba(0,0,0,.3);border-radius:50%}.uni-swiper-dot-active{background-color:#000}.uni-swiper-navigation{width:26px;height:26px;cursor:pointer;position:absolute;top:50%;margin-top:-13px;display:flex;align-items:center;transition:all .2s;border-radius:50%;opacity:1}.uni-swiper-navigation-disabled{opacity:.35;cursor:not-allowed}.uni-swiper-navigation-hide{opacity:0;cursor:auto;pointer-events:none}.uni-swiper-navigation-prev{left:10px}.uni-swiper-navigation-prev svg{margin-left:-1px;left:10px}.uni-swiper-navigation-prev.uni-swiper-navigation-vertical{top:18px;left:50%;margin-left:-13px}.uni-swiper-navigation-prev.uni-swiper-navigation-vertical svg{transform:rotate(90deg);margin-left:auto;margin-top:-2px}.uni-swiper-navigation-next{right:10px}.uni-swiper-navigation-next svg{transform:rotate(180deg)}.uni-swiper-navigation-next.uni-swiper-navigation-vertical{top:auto;bottom:5px;left:50%;margin-left:-13px}.uni-swiper-navigation-next.uni-swiper-navigation-vertical svg{margin-top:2px;transform:rotate(270deg)}uni-swiper-item{display:block;overflow:hidden;will-change:transform;position:absolute;width:100%;height:100%;cursor:grab}uni-swiper-item[hidden]{display:none}uni-switch{-webkit-tap-highlight-color:transparent;display:inline-block;cursor:pointer}uni-switch[hidden]{display:none}uni-switch[disabled]{cursor:not-allowed}uni-switch[disabled] .uni-switch-input{opacity:.7}.uni-switch-wrapper{display:inline-flex;align-items:center;vertical-align:middle}.uni-switch-input{-webkit-appearance:none;appearance:none;position:relative;width:52px;height:32px;margin-right:5px;border:1px solid #dfdfdf;outline:0;border-radius:16px;box-sizing:border-box;background-color:#dfdfdf;transition:background-color .1s,border .1s}.uni-switch-input:before{content:" ";position:absolute;top:0;left:0;width:50px;height:30px;border-radius:15px;background-color:#fdfdfd;transition:transform .3s}.uni-switch-input:after{content:" ";position:absolute;top:0;left:0;width:30px;height:30px;border-radius:15px;background-color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4);transition:transform .3s}.uni-switch-input.uni-switch-input-checked{border-color:#007aff;background-color:#007aff}.uni-switch-input.uni-switch-input-checked:before{transform:scale(0)}.uni-switch-input.uni-switch-input-checked:after{transform:translate(20px)}uni-switch .uni-checkbox-input{margin-right:5px;-webkit-appearance:none;appearance:none;outline:0;border:1px solid #d1d1d1;background-color:#fff;border-radius:3px;width:22px;height:22px;position:relative;color:#007aff}uni-switch:not([disabled]) .uni-checkbox-input:hover{border-color:#007aff}uni-switch .uni-checkbox-input svg{fill:#007aff;font-size:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%) scale(.73)}.uni-checkbox-input.uni-checkbox-input-disabled{background-color:#e1e1e1}.uni-checkbox-input.uni-checkbox-input-disabled:before{color:#adadad}@media (prefers-color-scheme: dark){uni-switch .uni-switch-input{border-color:#3b3b3f}uni-switch .uni-switch-input,uni-switch .uni-switch-input:before{background-color:#3b3b3f}uni-switch .uni-switch-input:after{background-color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}uni-switch .uni-checkbox-input{background-color:#2c2c2c;border:1px solid #656565}}uni-textarea{width:300px;height:150px;display:block;position:relative;font-size:16px;line-height:normal;white-space:pre-wrap;word-break:break-all}uni-textarea[hidden]{display:none}uni-textarea[auto-height=true]{height:-webkit-fit-content!important;height:fit-content!important}.uni-textarea-wrapper,.uni-textarea-placeholder,.uni-textarea-line,.uni-textarea-compute,.uni-textarea-textarea{outline:none;border:none;padding:0;margin:0;text-decoration:inherit}.uni-textarea-wrapper{display:block;position:relative;width:100%;height:100%;min-height:inherit;overflow-y:hidden}.uni-textarea-placeholder,.uni-textarea-line,.uni-textarea-compute,.uni-textarea-textarea{position:absolute;width:100%;height:100%;left:0;top:0;white-space:inherit;word-break:inherit}.uni-textarea-placeholder{color:gray;overflow:hidden}.uni-textarea-line,.uni-textarea-compute{visibility:hidden;height:auto}.uni-textarea-line{width:1em}.uni-textarea-textarea{resize:none;background:none;color:inherit;opacity:1;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:inherit;text-indent:inherit;text-transform:inherit;text-shadow:inherit}.uni-textarea-textarea-fix-margin{width:auto;right:0;margin:0 -3px}.uni-textarea-textarea:disabled{-webkit-text-fill-color:currentcolor}uni-video{width:300px;height:225px;display:inline-block;line-height:0;overflow:hidden;position:relative}uni-video[hidden]{display:none}.uni-video-container{width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden;background-color:#000}.uni-video-slot{position:absolute;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none}uni-web-view{display:inline-block;position:absolute;left:0;right:0;top:0;bottom:0} +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +/*每个页面公共css */ +body { + background-color: #ffffff; + color: #111; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} - /*每个页面公共css */ +/* 强制所有端白底(防止小程序旧样式残留覆盖) */ +.uni-page-body, uni-page-body { + background-color: #ffffff !important; +} + +/* 小程序节点:强制 wx-view 白底 */ +wx-view { + background-color: #ffffff !important; +} + +/* 例外:需要有主色底的元素,强制还原 */ +.cta, .notice-left, .fab { + background-color: #4C8DFF !important; + border-color: #4C8DFF !important; + color: #ffffff !important; +} +.cta .cta-text { + color: #ffffff !important; + font-weight: 700; +} + +/* 覆盖历史深色背景(统一纯白/浅灰) */ +.home, .report, .order, .me, .page { + background: #ffffff !important; +} +.notice, .hero, .grid-wrap, .panel, .card, .tabs, .seg, .list, .search, .summary, .toolbar, .item { + background: #ffffff !important; +} +.text-secondary { + color: #444; +} +.card { + background-color: #ffffff; + border: 1px solid #e5e7eb; + border-radius: 0.25rem; +} +.primary { + color: #4C8DFF; +} + +/* 底部原生 tabBar(H5/APP端可生效)字体加大 */ +.uni-tabbar__label, .uni-tabbar__text { + font-size: 0.875rem !important; + font-weight: 700 !important; +} + +/* 图表统一透明底(常见容器/画布选择器) */ +uni-canvas, .ec-canvas, .echarts, .charts, .chart, .ucharts-box { + background-color: transparent !important; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/manifest.json b/frontend/unpackage/dist/dev/app-plus/manifest.json index 85bd4b6..98170b4 100644 --- a/frontend/unpackage/dist/dev/app-plus/manifest.json +++ b/frontend/unpackage/dist/dev/app-plus/manifest.json @@ -72,14 +72,14 @@ "statusbar": { "immersed": "supportedDevice", "style": "dark", - "background": "#F8F8F8" + "background": "#FFFFFF" }, "uniStatistics": { "enable": false }, "allowsInlineMediaPlayback": true, "safearea": { - "background": "#ffffff", + "background": "#FFFFFF", "bottom": { "offset": "auto" } @@ -100,8 +100,8 @@ }, "tabBar": { "position": "bottom", - "color": "#8a7535", - "selectedColor": "#B4880F", + "color": "#444444", + "selectedColor": "#4C8DFF", "borderStyle": "rgba(0,0,0,0.4)", "blurEffect": "none", "fontSize": "10px", @@ -112,35 +112,35 @@ { "pagePath": "pages/index/index", "text": "首页", - "iconPath": "/static/logo.png", - "selectedIconPath": "/static/logo.png" + "iconPath": "/static/icons/home.png", + "selectedIconPath": "/static/icons/home.png" }, { "pagePath": "pages/product/list", "text": "货品", - "iconPath": "/static/logo.png", - "selectedIconPath": "/static/logo.png" + "iconPath": "/static/icons/product.png", + "selectedIconPath": "/static/icons/product.png" }, { "pagePath": "pages/order/create", "text": "开单", - "iconPath": "/static/logo.png", - "selectedIconPath": "/static/logo.png" + "iconPath": "/static/icons/icons8-purchase-order-100.png", + "selectedIconPath": "/static/icons/icons8-purchase-order-100.png" }, { "pagePath": "pages/detail/index", "text": "明细", - "iconPath": "/static/logo.png", - "selectedIconPath": "/static/logo.png" + "iconPath": "/static/icons/icons8-more-details-100.png", + "selectedIconPath": "/static/icons/icons8-more-details-100.png" }, { "pagePath": "pages/my/index", "text": "我的", - "iconPath": "/static/logo.png", - "selectedIconPath": "/static/logo.png" + "iconPath": "/static/icons/icons8-account-male-100.png", + "selectedIconPath": "/static/icons/icons8-account-male-100.png" } ], - "backgroundColor": "#ffffff", + "backgroundColor": "#FFFFFF", "selectedIndex": 0, "shown": true, "child": [ @@ -158,7 +158,7 @@ "enable": false }, "safearea": { - "background": "#ffffff", + "background": "#FFFFFF", "bottom": { "offset": "auto" } diff --git a/frontend/unpackage/dist/dev/app-plus/pages/account/form.css b/frontend/unpackage/dist/dev/app-plus/pages/account/form.css index cbe96fa..7b1cfb3 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/account/form.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/account/form.css @@ -1,23 +1,77 @@ - -.page { display:flex; flex-direction: column; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; } -.form { background:#fff; +.form { + background: #ffffff; } -.field { display:flex; align-items:center; justify-content: space-between; padding: 0.5625rem 0.625rem; border-bottom:0.03125rem solid #f3f3f3; +.field { + display: flex; + align-items: center; + justify-content: space-between; + padding: 0.5625rem 0.625rem; + border-bottom: 0.03125rem solid #e5e7eb; } -.label { color:#666; +.label { + color: #444; } -.input { flex:1; text-align: right; color:#333; +.input { + flex: 1; + text-align: right; + color: #111; } -.value { color:#333; +.value { + color: #111; } -.actions { margin-top: 0.625rem; padding: 0 0.625rem; +.actions { + margin-top: 0.625rem; + padding: 0 0.625rem; } -.primary { width: 100%; background: #3c9cff; color:#fff; border-radius: 0.25rem; padding: 0.6875rem 0; +.primary { + width: 100%; + background: #4C8DFF; + color: #fff; + border-radius: 0.25rem; + padding: 0.6875rem 0; } -.sheet { background:#fff; +.sheet { + background: #ffffff; } -.sheet-item { padding: 0.8125rem; text-align:center; border-bottom:0.03125rem solid #f2f2f2; -} -.sheet-cancel { padding: 0.8125rem; text-align:center; color:#666; +.sheet-item { + padding: 0.8125rem; + text-align: center; + border-bottom: 0.03125rem solid #e5e7eb; } +.sheet-cancel { + padding: 0.8125rem; + text-align: center; + color: #444; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/account/ledger.css b/frontend/unpackage/dist/dev/app-plus/pages/account/ledger.css index 6627735..4c9eb58 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/account/ledger.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/account/ledger.css @@ -1,35 +1,107 @@ - -.page { display:flex; flex-direction: column; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; } -.filters { display:flex; gap: 0.5rem; padding: 0.5rem; background:#fff; +.filters { + display: flex; + gap: 0.5rem; + padding: 0.5rem; + background: #ffffff; } -.field { display:flex; justify-content: space-between; align-items:center; padding: 0.5rem; border:0.03125rem solid #eee; border-radius: 0.375rem; min-width: 9.375rem; +.field { + display: flex; + justify-content: space-between; + align-items: center; + padding: 0.5rem; + border: 0.03125rem solid #e5e7eb; + border-radius: 0.375rem; + min-width: 9.375rem; } -.label { color:#666; +.label { + color: #444; } -.value { color:#333; +.value { + color: #111; } -.summary { display:grid; grid-template-columns: repeat(4,1fr); gap: 0.375rem; padding: 0.375rem 0.5rem; background:#fff; border-top:0.03125rem solid #f1f1f1; border-bottom:0.03125rem solid #f1f1f1; +.summary { + display: grid; + grid-template-columns: repeat(4, 1fr); + gap: 0.375rem; + padding: 0.375rem 0.5rem; + background: #ffffff; + border-top: 0.03125rem solid #e5e7eb; + border-bottom: 0.03125rem solid #e5e7eb; } -.sum-item { padding: 0.375rem; text-align:center; +.sum-item { + padding: 0.375rem; + text-align: center; } -.k { display:block; color:#888; font-size: 0.75rem; +.k { + display: block; + color: #444; + font-size: 0.75rem; } -.v { display:block; margin-top:0.1875rem; font-weight:700; color:#333; +.v { + display: block; + margin-top: 0.1875rem; + font-weight: 700; + color: #111; } -.list { flex:1; +.list { + flex: 1; } -.item { padding: 0.5625rem 0.5rem; border-bottom:0.03125rem solid #f4f4f4; background:#fff; +.item { + padding: 0.5625rem 0.5rem; + border-bottom: 0.03125rem solid #e5e7eb; + background: #ffffff; } -.row { display:flex; align-items:center; justify-content: space-between; margin-bottom: 0.1875rem; +.row { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 0.1875rem; } -.title { color:#333; +.title { + color: #111; } -.amount { font-weight:700; +.amount { + font-weight: 700; } -.amount.in { color:#2a9d8f; +.amount.in { + color: #2a9d8f; } -.amount.out { color:#d35b5b; -} -.meta { color:#999; font-size: 0.75rem; +.amount.out { + color: #d35b5b; } +.meta { + color: #444; + font-size: 0.75rem; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/account/select.css b/frontend/unpackage/dist/dev/app-plus/pages/account/select.css index 6b8841b..e045708 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/account/select.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/account/select.css @@ -1,13 +1,63 @@ - -.page { display:flex; flex-direction: column; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; } -.list { flex:1; +.list { + flex: 1; } -.item { padding: 0.625rem 0.75rem; background:#fff; border-bottom: 0.03125rem solid #f1f1f1; +.item { + padding: 0.625rem 0.75rem; + background: #ffffff; + border-bottom: 0.03125rem solid #e5e7eb; } -.name { color:#333; margin-bottom: 0.1875rem; +.name { + color: #111; + margin-bottom: 0.1875rem; } -.meta { color:#888; font-size: 0.75rem; -} -.fab { position: fixed; right: 1rem; bottom: 3.75rem; width: 3.125rem; height: 3.125rem; border-radius: 50%; background:#3c9cff; color:#fff; display:flex; align-items:center; justify-content:center; font-size: 1.625rem; box-shadow: 0 0.3125rem 0.625rem rgba(0,0,0,0.18); +.meta { + color: #444; + font-size: 0.75rem; } +.fab { + position: fixed; + right: 1rem; + bottom: 3.75rem; + width: 3.125rem; + height: 3.125rem; + border-radius: 50%; + background: #4C8DFF; + color: #fff; + display: flex; + align-items: center; + justify-content: center; + font-size: 1.625rem; + box-shadow: 0 0.3125rem 0.625rem rgba(0, 0, 0, 0.18); +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/auth/login.css b/frontend/unpackage/dist/dev/app-plus/pages/auth/login.css new file mode 100644 index 0000000..797c8a0 --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/auth/login.css @@ -0,0 +1,163 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.auth-page { + padding: 1rem; + display: flex; + flex-direction: column; + gap: 0.75rem; + position: relative; + min-height: 100vh; +} +.header { + display: flex; + align-items: center; + justify-content: center; + padding: 0.25rem 0 0; +} +.title { + font-size: 1.0625rem; + font-weight: 800; + color: #111; +} +.login-hero { + display: flex; + justify-content: center; + padding: 0.5rem 0 0; +} +.login-hero-img { + width: 72%; + max-width: 17.5rem; + border-radius: 0.25rem; +} +.panel { + display: flex; + flex-direction: column; + gap: 0.5rem; + background: transparent; + padding: 0; + border-radius: 0; + border: none; +} +.panel.minor { + margin-top: 0.375rem; +} +.input { + background: #ffffff; + border: 0.0625rem solid #e5e7eb; + border-radius: 0.375rem; + padding: 0.6875rem 0.625rem; + font-size: 0.875rem; +} +.row { + display: flex; + gap: 0.375rem; + align-items: center; +} +.flex1 { + flex: 1; +} +.btn { + padding: 0.6875rem 0.625rem; + border-radius: 0.375rem; + font-weight: 800; + text-align: center; +} +.btn.primary { + background: linear-gradient(135deg, #4788ff 0%, #2d6be6 100%); + color: #fff; + border: 0.03125rem solid rgba(45, 107, 230, 0.25); + width: 72%; + margin: 0 auto; + padding: 0.4375rem 0.5rem; +} +.btn.ghost { + background: #eef3ff; + color: #2d6be6; +} +/* 右下角快捷入口:贴着登录功能,无边框、无背景 */ +.quick-inline { + display: flex; + gap: 0.875rem; + justify-content: flex-end; + align-items: center; + margin-top: 0.3125rem; +} +.quick-link { + background: transparent !important; + color: #2d6be6; + border: none !important; + outline: none; + padding: 0; + font-size: 0.8125rem; + font-weight: 700; + box-shadow: none; + line-height: 1.2; +} +.quick-link::after { + border: none !important; +} +/* 注册/重置页:验证码按钮与左侧输入框等高,且更紧凑 */ +.panel.minor .row > .input { + height: 2.375rem; + padding: 0 0.625rem; +} +.panel.minor .row > .btn.ghost { + height: 2.375rem; + padding: 0 0.625rem; + border-radius: 0.375rem; + display: inline-flex; + align-items: center; + justify-content: center; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/auth/register.css b/frontend/unpackage/dist/dev/app-plus/pages/auth/register.css new file mode 100644 index 0000000..19edc44 --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/auth/register.css @@ -0,0 +1,292 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.register-container { + position: relative; + min-height: 100vh; + display: flex; + align-items: center; + justify-content: center; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + padding: 1.25rem 0.625rem; + overflow: hidden; +} +.background-decoration { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 0; +} +.background-decoration .circle { + position: absolute; + border-radius: 50%; + background: rgba(255, 255, 255, 0.1); +} +.background-decoration .circle.circle-1 { + width: 6.875rem; + height: 6.875rem; + top: 8%; + left: 12%; + animation: float 7s ease-in-out infinite; +} +.background-decoration .circle.circle-2 { + width: 5.625rem; + height: 5.625rem; + top: 65%; + right: 10%; + animation: float 9s ease-in-out infinite reverse; +} +.background-decoration .circle.circle-3 { + width: 3.75rem; + height: 3.75rem; + bottom: 15%; + left: 25%; + animation: float 6s ease-in-out infinite; +} +@keyframes float { +0%, 100% { + transform: translateY(0px) rotate(0deg); +} +50% { + transform: translateY(-25px) rotate(5deg); +} +} +.register-card { + position: relative; + z-index: 1; + width: 90%; + max-width: 21.25rem; + background: rgba(255, 255, 255, 0.95); + -webkit-backdrop-filter: blur(0.625rem); + backdrop-filter: blur(0.625rem); + border-radius: 1rem; + padding: 1.5625rem 1.25rem 1.40625rem; + box-shadow: 0 0.78125rem 2.1875rem rgba(0, 0, 0, 0.12); + border: 0.03125rem solid rgba(255, 255, 255, 0.3); +} +.header-section { + text-align: center; + margin-bottom: 1.40625rem; +} +.header-section .logo-container { + display: flex; + align-items: center; + justify-content: center; + gap: 0.5rem; + margin-bottom: 0.625rem; +} +.header-section .logo-container .logo-icon { + width: 1.875rem; + height: 1.875rem; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border-radius: 0.5rem; + display: flex; + align-items: center; + justify-content: center; +} +.header-section .logo-container .logo-icon .icon { + width: 1.125rem; + height: 1.125rem; + fill: white; +} +.header-section .logo-container .app-name { + font-size: 1.125rem; + font-weight: 700; + color: #2d3748; + letter-spacing: 0.03125rem; +} +.header-section .welcome-text { + display: block; + font-size: 1.5rem; + font-weight: 700; + color: #2d3748; + margin-bottom: 0.25rem; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; +} +.header-section .subtitle { + display: block; + font-size: 0.875rem; + color: #718096; + font-weight: 400; +} +.form-section { + margin-bottom: 1.25rem; +} +.form-section .input-group { + margin-bottom: 0.75rem; +} +.form-section .input-group .input-container { + position: relative; + background: #f7fafc; + border: 0.0625rem solid #e2e8f0; + border-radius: 0.5rem; + display: flex; + align-items: center; + transition: all 0.3s ease; +} +.form-section .input-group .input-container.focused { + border-color: #667eea; + background: #ffffff; + box-shadow: 0 0 0 0.1875rem rgba(102, 126, 234, 0.1); + transform: translateY(-0.0625rem); +} +.form-section .input-group .input-container.filled { + background: #ffffff; + border-color: #cbd5e0; +} +.form-section .input-group .input-container .input-icon { + display: flex; + align-items: center; + justify-content: center; + width: 1.5625rem; + margin-left: 0.625rem; +} +.form-section .input-group .input-container .input-icon .icon { + width: 1rem; + height: 1rem; + fill: #a0aec0; + transition: fill 0.3s ease; +} +.form-section .input-group .input-container.focused .input-icon .icon { + fill: #667eea; +} +.form-section .input-group .input-container .input-field { + flex: 1; + background: transparent; + border: none; + padding: 0.75rem 0.625rem 0.75rem 0.375rem; + font-size: 1rem; + color: #2d3748; +} +.form-section .input-group .input-container .input-field::-webkit-input-placeholder { + color: #a0aec0; + font-size: 0.875rem; +} +.form-section .input-group .input-container .input-field::placeholder { + color: #a0aec0; + font-size: 0.875rem; +} +.actions-section { + margin-bottom: 0.9375rem; +} +.actions-section .register-button { + width: 100%; + height: 3rem; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + border: none; + border-radius: 0.5rem; + margin-bottom: 0.625rem; + display: flex; + align-items: center; + justify-content: center; + box-shadow: 0 0.25rem 0.75rem rgba(102, 126, 234, 0.3); + transition: all 0.3s ease; + position: relative; + overflow: hidden; +} +.actions-section .register-button:active { + transform: translateY(0.0625rem); + box-shadow: 0 0.125rem 0.5rem rgba(102, 126, 234, 0.3); +} +.actions-section .register-button::before { + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, transparent 50%); + opacity: 0; + transition: opacity 0.3s ease; +} +.actions-section .register-button:active::before { + opacity: 1; +} +.actions-section .register-button .button-text { + font-size: 1rem; + font-weight: 600; + color: white; + letter-spacing: 0.03125rem; +} +.actions-section .login-button { + width: 100%; + height: 2.6875rem; + background: transparent; + border: 0.0625rem solid #e2e8f0; + border-radius: 0.5rem; + display: flex; + align-items: center; + justify-content: center; + transition: all 0.3s ease; +} +.actions-section .login-button:active { + background: #f7fafc; + border-color: #cbd5e0; + transform: translateY(0.03125rem); +} +.actions-section .login-button .button-text { + font-size: 0.875rem; + font-weight: 500; + color: #718096; +} +.footer-section { + text-align: center; +} +.footer-section .hint-text { + display: block; + font-size: 0.75rem; + color: #a0aec0; + line-height: 1.6; + margin-bottom: 0.375rem; +} +.footer-section .static-hint { + display: block; + font-size: 0.6875rem; + color: #a0aec0; + line-height: 1.5; + background: rgba(160, 174, 192, 0.1); + padding: 0.375rem 0.5rem; + border-radius: 0.3125rem; + border: 0.03125rem solid rgba(160, 174, 192, 0.2); +} +@media (max-width: 750rpx) { +.register-card { + margin: 0.625rem; + padding: 1.25rem 0.9375rem 1.09375rem; +} +.header-section .welcome-text { + font-size: 1.3125rem; +} +.form-section .input-group { + margin-bottom: 0.625rem; +} +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/customer/detail.css b/frontend/unpackage/dist/dev/app-plus/pages/customer/detail.css index b228e48..70eda1b 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/customer/detail.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/customer/detail.css @@ -1,23 +1,88 @@ - -.page { padding-bottom: 4.375rem; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding-bottom: 4.375rem; } -.card { background:#fff; margin: 0.5rem; padding: 0.375rem 0.5rem; border-radius: 0.5rem; +.card { + background: #ffffff; + margin: 0.5rem; + padding: 0.375rem 0.5rem; + border-radius: 0.5rem; } -.row { display:flex; justify-content: space-between; padding: 0.5625rem 0.25rem; border-bottom: 0.03125rem solid #f3f3f3; +.row { + display: flex; + justify-content: space-between; + padding: 0.5625rem 0.25rem; + border-bottom: 0.03125rem solid #e5e7eb; } -.row:last-child { border-bottom: 0; +.row:last-child { + border-bottom: 0; } -.label { color:#666; +.label { + color: #444; } -.value { color:#333; max-width: 60%; text-align: right; +.value { + color: #111; + max-width: 60%; + text-align: right; } -.value-input { color:#333; text-align: right; flex: 1; +.value-input { + color: #111; + text-align: right; + flex: 1; } -.emp { color:#107e9b; font-weight: 700; +.emp { + color: #4C8DFF; + font-weight: 700; } -.bottom { position: fixed; left:0; right:0; bottom:0; background:#fff; padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); box-shadow: 0 -0.125rem 0.375rem rgba(0,0,0,0.06); display:flex; gap: 0.375rem; +.bottom { + position: fixed; + left: 0; + right: 0; + bottom: 0; + background: #ffffff; + padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); + box-shadow: 0 -0.125rem 0.375rem rgba(0, 0, 0, 0.1); + display: flex; + gap: 0.375rem; } -.primary { flex:1; background: linear-gradient(135deg, #A0E4FF 0%, #17A2C4 100%); color:#fff; border-radius: 31.21875rem; padding: 0.625rem 0; -} -.ghost { flex:1; background:#fff; color:#107e9b; border: 0.0625rem solid #A0E4FF; border-radius: 31.21875rem; padding: 0.5625rem 0; +.primary { + flex: 1; + background: #4C8DFF; + color: #fff; + border-radius: 31.21875rem; + padding: 0.625rem 0; } +.ghost { + flex: 1; + background: #ffffff; + color: #4C8DFF; + border: 0.0625rem solid rgba(76, 141, 255, 0.35); + border-radius: 31.21875rem; + padding: 0.5625rem 0; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/customer/form.css b/frontend/unpackage/dist/dev/app-plus/pages/customer/form.css index f7853ec..021df12 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/customer/form.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/customer/form.css @@ -1,15 +1,66 @@ - -.page { padding-bottom: 4.375rem; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding-bottom: 4.375rem; } -.field { display:flex; justify-content: space-between; padding: 0.6875rem 0.75rem; background:#fff; border-bottom:0.03125rem solid #eee; +.field { + display: flex; + justify-content: space-between; + padding: 0.6875rem 0.75rem; + background: #ffffff; + border-bottom: 0.03125rem solid #e5e7eb; } -.label { color:#666; +.label { + color: #444; } -.value { color:#333; text-align: right; flex: 1; +.value { + color: #111; + text-align: right; + flex: 1; } -.textarea { padding: 0.5rem 0.75rem; background:#fff; margin-top: 0.375rem; +.textarea { + padding: 0.5rem 0.75rem; + background: #ffffff; + margin-top: 0.375rem; } -.bottom { position: fixed; left:0; right:0; bottom:0; background:#fff; padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); box-shadow: 0 -0.125rem 0.375rem rgba(0,0,0,0.06); -} -.primary { width: 100%; background: linear-gradient(135deg, #A0E4FF 0%, #17A2C4 100%); color:#fff; border-radius: 31.21875rem; padding: 0.625rem 0; +.bottom { + position: fixed; + left: 0; + right: 0; + bottom: 0; + background: #ffffff; + padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); + box-shadow: 0 -0.125rem 0.375rem rgba(0, 0, 0, 0.1); } +.primary { + width: 100%; + background: #4C8DFF; + color: #fff; + border-radius: 31.21875rem; + padding: 0.625rem 0; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/customer/select.css b/frontend/unpackage/dist/dev/app-plus/pages/customer/select.css index 46b426b..ffc1d66 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/customer/select.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/customer/select.css @@ -1,19 +1,78 @@ - -.page { display:flex; flex-direction: column; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; } -.search { display:flex; gap: 0.375rem; padding: 0.5rem; background:#fff; align-items:center; +.search { + display: flex; + gap: 0.375rem; + padding: 0.5rem; + background: #ffffff; + align-items: center; } -.search uni-input { flex:1; background:#f6f6f6; border-radius: 0.375rem; padding: 0.375rem; +.search uni-input { + flex: 1; + background: #f1f1f1; + border-radius: 0.375rem; + padding: 0.375rem; + color: #111; } -.list { flex:1; +.list { + flex: 1; } -.item { padding: 0.625rem 0.75rem; background:#fff; border-bottom: 0.03125rem solid #f1f1f1; +.item { + padding: 0.625rem 0.75rem; + background: #ffffff; + border-bottom: 0.03125rem solid #e5e7eb; } -.name { color:#333; margin-bottom: 0.1875rem; +.name { + color: #111; + margin-bottom: 0.1875rem; } -.meta { color:#888; font-size: 0.75rem; +.meta { + color: #444; + font-size: 0.75rem; } -.bottom { position: fixed; left:0; right:0; bottom:0; background:#fff; padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); box-shadow: 0 -0.125rem 0.375rem rgba(0,0,0,0.06); -} -.primary { width: 100%; background: linear-gradient(135deg, #A0E4FF 0%, #17A2C4 100%); color:#fff; border-radius: 31.21875rem; padding: 0.625rem 0; +.bottom { + position: fixed; + left: 0; + right: 0; + bottom: 0; + background: #ffffff; + padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); + box-shadow: 0 -0.125rem 0.375rem rgba(0, 0, 0, 0.1); } +.primary { + width: 100%; + background: #4C8DFF; + color: #fff; + border-radius: 31.21875rem; + padding: 0.625rem 0; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/detail/index.css b/frontend/unpackage/dist/dev/app-plus/pages/detail/index.css index 1df1a1f..8d9fbfe 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/detail/index.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/detail/index.css @@ -1,49 +1,220 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; +} -.page { display:flex; flex-direction: column; height: 100vh; +/* 顶部分段(如需保留,可以隐藏或后续扩展) */ +.seg { + display: none; } -.seg { display:flex; background:#fff; +.content { + display: flex; + flex: 1; + min-height: 0; } -.seg-item { flex:1; padding: 0.6875rem 0; text-align:center; color:#666; +.biz-tabs { + width: 4.375rem; + background: #fff; + border-right: 0.0625rem solid #e5e7eb; + display: flex; + flex-direction: column; } -.seg-item.active { color:#18b566; font-weight: 600; +.biz { + flex: 0 0 3.75rem; + display: flex; + align-items: center; + justify-content: center; + color: #4C8DFF; } -.content { display:flex; flex:1; min-height: 0; +.biz.active { + background: rgba(76, 141, 255, 0.1); + color: #4C8DFF; + font-weight: 700; } -.biz-tabs { width: 3.75rem; background:#eef6ff; display:flex; flex-direction: column; +.panel { + flex: 1; + display: flex; + flex-direction: column; + background: #fff; + margin: 0.5rem; + border-radius: 0.5rem; + padding: 0.375rem; } -.biz { flex:0 0 3.75rem; display:flex; align-items:center; justify-content:center; color:#4aa3d6; +.toolbar { + display: flex; + flex-direction: column; + gap: 0.3125rem; + padding: 0.3125rem 0.1875rem 0.1875rem; + border-bottom: 0.0625rem solid #e5e7eb; } -.biz.active { background:#3ac1c9; color:#fff; border-radius: 0 0.5rem 0.5rem 0; +.period-group { + display: flex; + align-items: center; + gap: 0.25rem; + background: #f6f8fb; + border-radius: 0.3125rem; + padding: 0.25rem 0.3125rem; } -.panel { flex:1; display:flex; flex-direction: column; background:#fff; margin: 0.5rem; border-radius: 0.5rem; padding: 0.375rem; +.period-label { + color: #6b778c; } -.toolbar { display:flex; align-items: center; gap: 0.375rem; padding: 0.25rem 0.1875rem; +.date-chip { + padding: 0.25rem 0.375rem; + background: #fff; + border: 0.0625rem solid #e6ebf2; + border-radius: 0.25rem; } -.search { flex:1; +.sep { + color: #99a2b3; + padding: 0 0.1875rem; } -.search-input { width:100%; background:#f6f6f6; border-radius: 0.375rem; padding: 0.375rem; +.search-row { + display: flex; + align-items: center; + gap: 0.5rem; } -.period { color:#999; font-size: 0.75rem; padding: 0 0.1875rem; +.search { + flex: 1; + min-width: 0; + display: flex; } -.total { color:#18b566; font-weight: 700; padding: 0.1875rem 0.1875rem 0.375rem; +.search-input { + flex: 1; + height: 2.25rem; + line-height: 2.25rem; + padding: 0 0.75rem; + box-sizing: border-box; + background: #fff; + border-radius: 0.375rem; + color: #111; + border: 0.0625rem solid #e6ebf2; + font-size: 0.8125rem; } -.list { flex:1; +.btn { + flex-shrink: 0; + display: flex; + align-items: center; + justify-content: center; + height: 2.25rem; + padding: 0 1rem; + margin-left: 0.125rem; + border-radius: 0.375rem; + background: #4C8DFF; + color: #fff; + border: none; + font-size: 0.8125rem; + box-sizing: border-box; } -.item { display:flex; align-items:center; padding: 0.625rem 0.3125rem; border-bottom: 0.03125rem solid #f1f1f1; +.btn::after { + border: none; } -.item-left { flex:1; +.total { + color: #4C8DFF; + font-weight: 700; + padding: 0.3125rem 0.1875rem 0.375rem; + background: #fff; } -.date { color:#999; font-size: 0.75rem; +.list { + flex: 1; } -.name { color:#333; margin: 0.125rem 0; font-weight: 600; +.loading { + text-align: center; + padding: 0.625rem 0; + color: #444; } -.no { color:#bbb; font-size: 0.6875rem; +.finished { + text-align: center; + padding: 0.625rem 0; + color: #444; } -.amount { color:#333; font-weight: 700; +.item { + display: grid; + grid-template-columns: 1fr auto auto; + align-items: center; + gap: 0.25rem; + padding: 0.5625rem 0.375rem; + border-bottom: 0.03125rem solid #e5e7eb; } -.arrow { color:#ccc; font-size: 1.25rem; margin-left: 0.25rem; +.item-left { + display: flex; + flex-direction: column; } -.empty { height: 50vh; display:flex; align-items:center; justify-content:center; color:#999; +.date { + color: #444; + font-size: 0.75rem; } -.fab { position: fixed; right: 0.9375rem; bottom: 3.75rem; width: 3.125rem; height: 3.125rem; background:#18b566; color:#fff; border-radius: 1.5625rem; text-align:center; line-height: 3.125rem; font-size: 1.5rem; box-shadow: 0 0.25rem 0.625rem rgba(0,0,0,0.15); +.name { + color: #111; + margin: 0.125rem 0; + font-weight: 600; } +.no { + color: #99a2b3; + font-size: 0.6875rem; +} +.amount { + color: #111; + font-weight: 700; + text-align: right; +} +.amount.in { + color: #16a34a; +} +.amount.out { + color: #dc2626; +} +.arrow { + color: #8c99b0; + font-size: 1.25rem; + margin-left: 0.25rem; +} +.empty { + height: 50vh; + display: flex; + align-items: center; + justify-content: center; + color: #444; +} +.fab { + position: fixed; + right: 0.9375rem; + bottom: 3.75rem; + width: 3.125rem; + height: 3.125rem; + background: #fff; + color: #4C8DFF; + border: 0.0625rem solid #4C8DFF; + border-radius: 1.5625rem; + text-align: center; + line-height: 3.125rem; + font-size: 1.5rem; + box-shadow: 0 0.25rem 0.625rem rgba(76, 141, 255, 0.18); +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/index/index.css b/frontend/unpackage/dist/dev/app-plus/pages/index/index.css index fa1672b..19a88b5 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/index/index.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/index/index.css @@ -1,185 +1,418 @@ - +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +body { + height: 100%; + overflow: hidden; + background: linear-gradient(180deg, #f8fbff 0%, #ffffff 60%); +} .home { - padding-bottom: 4.375rem; - position: relative; - /* 明亮奢华背景:金属拉丝纹理覆盖层 + 柔和浅色渐变 */ - background: - repeating-linear-gradient(0deg, rgba(180,180,180,0.12) 0, rgba(180,180,180,0.12) 0.0625rem, rgba(255,255,255,0.0) 0.0625rem, rgba(255,255,255,0.0) 0.3125rem), - linear-gradient(180deg, rgba(255, 255, 255, 0.75) 0%, rgba(255, 255, 255, 0.55) 40%, rgba(255, 255, 255, 0.35) 100%); - min-height: 100vh; -} -.home-bg { - position: fixed; - left: 0; top: 0; right: 0; bottom: 0; - width: 100%; height: 100%; - pointer-events: none; - z-index: -1; + height: 100vh; + display: flex; + flex-direction: column; + padding-bottom: calc(env(safe-area-inset-bottom) + 1rem); + position: relative; + /* 渐变背景:顶部淡蓝过渡到白色 */ + background: linear-gradient(180deg, #f8fbff 0%, #ffffff 60%); + overflow: hidden; + box-sizing: border-box; } - /* 公告栏 */ +/* 首页横幅(移除) */ +/* 公告栏 */ .notice { - margin: 0 0.75rem 0.75rem; - padding: 0.625rem 0.6875rem; - border-radius: 0.625rem; - background: rgba(255,255,255,0.78); - -webkit-backdrop-filter: blur(0.375rem); - backdrop-filter: blur(0.375rem); - border: 0.0625rem solid rgba(203, 166, 61, 0.28); - display: flex; - align-items: center; - gap: 0.5rem; + margin: 0 0.75rem 0.75rem; + padding: 0.625rem 0.6875rem; + border-radius: 0.625rem; + background: #ffffff; + border: 0.0625rem solid #e5e7eb; + display: flex; + align-items: center; + gap: 0.5rem; } .notice-left { - flex: 0 0 auto; - display: inline-flex; align-items: center; justify-content: center; - min-width: 3rem; height: 1.375rem; - padding: 0 0.5rem; - border-radius: 31.21875rem; - background: linear-gradient(135deg, #FFE69A, #F4CF62); - color: #3f320f; - font-size: 0.75rem; - font-weight: 800; + flex: 0 0 auto; + display: inline-flex; + align-items: center; + justify-content: center; + min-width: 3.125rem; + height: 1.625rem; + padding: 0 0.5rem; + border-radius: 31.21875rem; + background: #4C8DFF; + color: #fff; + font-size: 0.875rem; + font-weight: 800; } -.notice-swiper { height: 2.25rem; flex: 1; +.notice-swiper { + height: 2.25rem; + flex: 1; } -.notice-item { display: flex; align-items: center; gap: 0.375rem; min-height: 2.25rem; +.notice-item { + display: flex; + align-items: center; + gap: 0.375rem; + min-height: 2.25rem; } -.notice-text { color: #4b3e19; font-size: 0.875rem; line-height: 1.125rem; font-weight: 600; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; +.notice-text { + color: #111; + font-size: 0.875rem; + line-height: 1.125rem; + font-weight: 600; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + overflow: hidden; } -.notice-tag { color: #B4880F; font-size: 0.6875rem; padding: 0.125rem 0.3125rem; border-radius: 31.21875rem; background: rgba(215,167,46,0.18); +.notice-tag { + color: #4C8DFF; + font-size: 0.6875rem; + padding: 0.125rem 0.3125rem; + border-radius: 31.21875rem; + background: rgba(76, 141, 255, 0.18); } - - /* 分割标题 */ -.section-title { display: flex; align-items: center; gap: 0.5rem; padding: 0.3125rem 0.875rem 0; +/* 分割标题 */ +.section-title { + display: flex; + align-items: center; + gap: 0.5rem; + padding: 0.3125rem 0.875rem 0; + flex: 0 0 auto; } -.section-title::before { content: ''; display: block; width: 0.25rem; height: 0.875rem; border-radius: 0.25rem; background: linear-gradient(180deg, #FFE69A, #D7A72E); +.section-title::before { + content: ""; + display: block; + width: 0.25rem; + height: 0.875rem; + border-radius: 0.25rem; + background: #4C8DFF; } -.section-text { color: #6b5a2a; font-size: 0.875rem; font-weight: 700; letter-spacing: 0.03125rem; +.section-text { + color: #111; + font-size: 0.9375rem; + font-weight: 700; + letter-spacing: 0.03125rem; } - /* 顶部英雄区:浅色玻璃卡片,带金色描边与柔和阴影 */ +/* 顶部英雄区:浅色玻璃卡片,带金色描边与柔和阴影 */ .hero { - margin: 0.75rem; - padding: 1rem; - border-radius: 0.875rem; - background: rgba(255, 255, 255, 0.65); - -webkit-backdrop-filter: blur(0.4375rem); - backdrop-filter: blur(0.4375rem); - border: 0.0625rem solid rgba(203, 166, 61, 0.35); - box-shadow: 0 0.375rem 0.875rem rgba(0, 0, 0, 0.10), 0 0 0 0.0625rem rgba(255,255,255,0.60) inset; - color: #473c22; + margin: 0.5rem 0.625rem; + padding: 0.5625rem 0.5625rem 0.375rem; + border-radius: 0.625rem; + background: #ffffff; + border: 0.0625rem solid #e5e7eb; + box-shadow: none; + color: #111; + flex: 0 0 auto; } .hero-top { - display: flex; - justify-content: space-between; - align-items: center; - margin-bottom: 0.625rem; + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 0.625rem; +} +.hero-sub { + display: flex; + gap: 0.375rem; + margin-bottom: 0.6875rem; + flex-wrap: wrap; +} +.chip { + padding: 0.25rem 0.5rem; + border-radius: 31.21875rem; + background: rgba(76, 141, 255, 0.1); + color: #4C8DFF; + font-size: 0.75rem; + font-weight: 700; + border: 0.0625rem solid rgba(76, 141, 255, 0.25); } .brand { - font-size: 1.3125rem; - font-weight: 700; - letter-spacing: 0.0625rem; - color: #B4880F; /* 金色标题 */ + font-size: 1.125rem; + font-weight: 700; + letter-spacing: 0.03125rem; + color: #4C8DFF; } .cta { - padding: 0.3125rem 0.6875rem; - border-radius: 31.21875rem; - background: linear-gradient(135deg, rgba(255, 220, 128, 0.65), rgba(255, 240, 190, 0.65)); - border: 0.0625rem solid rgba(203, 166, 61, 0.45); - box-shadow: 0 0.1875rem 0.4375rem rgba(203, 166, 61, 0.25); + padding: 0.25rem 0.5625rem; + border-radius: 31.21875rem; + background: #4C8DFF; + border: 0.0625rem solid #4C8DFF; + box-shadow: none; } -.cta-text { color: #5a4712; font-size: 0.8125rem; -} -.kpi { display: flex; -} -.kpi-item { flex: 1; -} -.kpi-label { opacity: 0.9; font-size: 0.75rem; color: #6b5a2a; -} -.kpi-value { display: block; margin-top: 0.375rem; font-size: 1.4375rem; font-weight: 800; color: #B4880F; +.cta-text { + color: #fff; + font-size: 0.9375rem; + font-weight: 700; + letter-spacing: 0.03125rem; } - /* 功能容器:整体玻璃面板,增强融入感 */ -.grid-wrap { - margin: 0 0.625rem 1rem; - padding: 0.875rem 0.625rem 0.375rem; - border-radius: 0.75rem; - background: rgba(255,255,255,0.55); - -webkit-backdrop-filter: blur(0.3125rem); - backdrop-filter: blur(0.3125rem); - border: 0.0625rem solid rgba(203,166,61,0.22); - box-shadow: 0 0.25rem 0.5625rem rgba(0,0,0,0.06); +/* 简易弹层样式 */ +.dialog-mask { + position: fixed; + left: 0; + right: 0; + top: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.45); + display: flex; + align-items: center; + justify-content: center; + z-index: 10000; +} +.dialog { + width: 82vw; + background: #fff; + border-radius: 0.5rem; + padding: 0.625rem; + border: 0.0625rem solid #eef2f6; +} +.dialog-title { + font-size: 1rem; + font-weight: 800; + color: #111; + margin-bottom: 0.5rem; +} +.dialog-textarea { + width: 100%; + min-height: 5.625rem; + border: 0.0625rem solid #e8eef8; + border-radius: 0.375rem; + padding: 0.375rem; + box-sizing: border-box; +} +.dialog-actions { + display: flex; + justify-content: flex-end; + gap: 0.5625rem; + margin-top: 0.5rem; +} +.btn { + padding: 0.3125rem 0.6875rem; + border-radius: 31.21875rem; + background: #f3f6fb; + color: #334155; + border: 0.0625rem solid #e2e8f0; + font-weight: 700; +} +.btn.primary { + background: #4C8DFF; + color: #fff; + border-color: #4C8DFF; } - /* 功能九宫格 */ +/* KPI 卡片化布局:横向铺满 */ +.kpi { + display: grid; + grid-template-columns: repeat(4, 1fr); + gap: 0.375rem; +} +.kpi-item { + text-align: center; + background: #ffffff; + border: 0.0625rem solid #e5e7eb; + border-radius: 0.5rem; + padding: 0.5rem 0.25rem; +} + +/* KPI 卡片(更扁平,降低高度) */ +.kpi-grid { + gap: 0.375rem; +} +.kpi-card { + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: center; + gap: 0.25rem; + text-align: left; + padding: 0.375rem 0.4375rem; + border-radius: 0.4375rem; + background: #fff; + border: 0.0625rem solid #eef2f6; + box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.04); + min-height: 3.75rem; +} +.kpi-icon { + width: 1.375rem; + height: 1.375rem; + opacity: 0.9; +} +.kpi-content { + display: flex; + flex-direction: column; +} +.kpi-label { + color: #6b778c; + font-weight: 700; + font-size: 0.75rem; + line-height: 0.9375rem; +} +.kpi-value { + color: #4C8DFF; + font-size: 1.0625rem; + line-height: 1.1875rem; + margin-top: 0; + font-weight: 800; +} + +/* 常用功能:胶囊+阴影卡片样式的图标栅格(旧风格保留以防回退) */ .grid { - display: grid; - grid-template-columns: repeat(3, 1fr); - grid-row-gap: 2rem; - grid-column-gap: 1.125rem; - padding: 1.25rem 0.875rem 0.875rem; + grid-row-gap: 1.125rem; + grid-column-gap: 0.8125rem; + padding: 1rem 0.75rem 0.875rem; } -.grid-item { display: flex; flex-direction: column; align-items: center; text-align: center; -} -.icon { display: flex; align-items: center; justify-content: center; color: #6b5a2a; position: relative; +.grid-item { + position: relative; } .icon-squircle { - width: 4.125rem; height: 4.125rem; - border-radius: 0.875rem; - background: linear-gradient(145deg, rgba(255,255,255,0.92), rgba(255,255,255,0.70)); - -webkit-backdrop-filter: blur(0.375rem); - backdrop-filter: blur(0.375rem); - border: 0.0625rem solid rgba(203,166,61,0.22); - box-shadow: 0 0.3125rem 0.75rem rgba(0,0,0,0.10), 0 0 0 0.0625rem rgba(255,255,255,0.65) inset; - overflow: hidden; + width: 4.375rem; + height: 4.375rem; + border-radius: 0.875rem; + background: #fff; + border: 0.0625rem solid #e5e7eb; + box-shadow: 0 0.3125rem 0.625rem rgba(0, 0, 0, 0.06); } -.icon-squircle::before { content: ''; position: absolute; left: -30%; top: -40%; width: 160%; height: 70%; background: linear-gradient( to bottom, rgba(255,255,255,0.9), rgba(255,255,255,0.0) ); transform: rotate(12deg); -} -.icon-img { width: 3rem; height: 3rem; -} -.icon-emoji { font-size: 1.875rem; line-height: 1; -} -.icon-placeholder { width: 2.625rem; height: 2.625rem; border-radius: 0.5625rem; background: - linear-gradient(135deg, rgba(212,175,55,0.18), rgba(255,255,255,0.0)), - repeating-linear-gradient(90deg, rgba(180,150,60,0.35) 0, rgba(180,150,60,0.35) 0.25rem, transparent 0.25rem, transparent 0.5rem), - repeating-linear-gradient(0deg, rgba(180,150,60,0.20) 0, rgba(180,150,60,0.20) 0.25rem, transparent 0.25rem, transparent 0.5rem); - box-shadow: inset 0 0 0 0.0625rem rgba(203,166,61,0.28); -} -.icon-text { font-size: 1.4375rem; font-weight: 700; -} -.grid-title { display: none; -} -.grid-chip { margin-top: 0.4375rem; padding: 0.1875rem 0.4375rem; border-radius: 31.21875rem; background: rgba(215,167,46,0.16); color: #5a4a1f; font-size: 0.6875rem; +.grid-chip { + margin-top: 0.375rem; + padding: 0.1875rem 0.4375rem; + border-radius: 31.21875rem; + background: rgba(76, 141, 255, 0.12); + color: #4C8DFF; + font-size: 0.8125rem; + font-weight: 700; } - /* 底部操作条:浅色半透明 + 金色主按钮 */ +/* 功能容器:更轻的留白 */ +.grid-wrap { + flex: 1 1 auto; + display: flex; + align-items: stretch; + justify-content: center; + margin: 0.5rem 0.625rem 0.875rem; + padding: 1rem 0.9375rem; + border-radius: 0.8125rem; + background: rgba(255, 255, 255, 0.96); + border: 0.0625rem solid #edf2f9; + box-shadow: 0 0.375rem 0.875rem rgba(32, 75, 143, 0.1); + box-sizing: border-box; +} + +/* 功能卡片宫格:方形竖排,图标在上文字在下(与截图一致) */ +.feature-grid { + flex: 1 1 auto; + width: 100%; + height: 100%; + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + grid-auto-rows: 1fr; + gap: 1rem 0.875rem; + align-content: space-evenly; + justify-items: center; +} +.feature-card { + width: 5.25rem; + height: 5.5rem; + background: #fff; + border: 0.0625rem solid #eef2f6; + border-radius: 0.625rem; + box-shadow: 0 0.3125rem 0.75rem rgba(0, 0, 0, 0.05); + padding: 0.5625rem 0.5rem; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} +.fc-icon { + width: 2.4375rem; + height: 2.4375rem; + border-radius: 0.5625rem; + background: #f7faff; + display: flex; + align-items: center; + justify-content: center; +} +.fc-img { + width: 1.6875rem; + height: 1.6875rem; + opacity: 0.95; +} +.fc-emoji { + font-size: 1.5rem; +} +.fc-placeholder { + width: 1.75rem; + height: 1.75rem; + border-radius: 0.375rem; + background: #f1f1f1; + border: 0.0625rem solid #e8eef8; +} +.fc-title { + margin-top: 0.375rem; + font-size: 0.875rem; + font-weight: 700; + color: #111; + letter-spacing: 0.03125rem; +} + +/* 底部操作条:浅色半透明 + 金色主按钮 */ .bottom-bar { - position: fixed; - left: 0; right: 0; bottom: 0; - display: flex; - align-items: center; - justify-content: space-around; - padding: 0.4375rem 0.5625rem calc(env(safe-area-inset-bottom) + 0.4375rem); - background: rgba(255,255,255,0.85); - box-shadow: 0 -0.1875rem 0.5625rem rgba(0,0,0,0.08); - -webkit-backdrop-filter: blur(0.3125rem); - backdrop-filter: blur(0.3125rem); - z-index: 9999; + position: fixed; + left: 0; + right: 0; + bottom: 0; + display: flex; + align-items: center; + justify-content: space-around; + padding: 0.4375rem 0.5625rem calc(env(safe-area-inset-bottom) + 0.4375rem); + background: rgba(255, 255, 255, 0.85); + box-shadow: 0 -0.1875rem 0.5625rem rgba(0, 0, 0, 0.08); + -webkit-backdrop-filter: blur(0.3125rem); + backdrop-filter: blur(0.3125rem); + z-index: 9999; } -.tab { flex: 1; text-align: center; color: #8a7535; font-size: 0.8125rem; +.tab { + flex: 1; + text-align: center; + color: #8a7535; + font-size: 0.8125rem; } -.tab.active { color: #B4880F; +.tab.active { + color: #B4880F; } .tab.primary { - flex: 0 0 auto; - min-width: 5.625rem; - margin: 0 0.5625rem; - padding: 0.5625rem 1rem; - background: linear-gradient(135deg, #FFE69A 0%, #F4CF62 45%, #D7A72E 100%); - color: #493c1b; - border-radius: 31.21875rem; - font-size: 0.9375rem; - font-weight: 800; - box-shadow: 0 0.3125rem 0.6875rem rgba(215,167,46,0.25), 0 0 0 0.0625rem rgba(255,255,255,0.70) inset; -} + flex: 0 0 auto; + min-width: 5.625rem; + margin: 0 0.5625rem; + padding: 0.5625rem 1rem; + background: linear-gradient(135deg, #FFE69A 0%, #F4CF62 45%, #D7A72E 100%); + color: #493c1b; + border-radius: 31.21875rem; + font-size: 0.9375rem; + font-weight: 800; + box-shadow: 0 0.3125rem 0.6875rem rgba(215, 167, 46, 0.25), 0 0 0 0.0625rem rgba(255, 255, 255, 0.7) inset; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/my/about.css b/frontend/unpackage/dist/dev/app-plus/pages/my/about.css index fd79b13..018b7e0 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/my/about.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/my/about.css @@ -1,21 +1,75 @@ - -.about { padding: 0.75rem; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.about { + padding: 0.75rem; } -.hero { padding: 1rem 0.75rem; display: flex; flex-direction: column; align-items: center; gap: 0.3125rem; +.hero { + padding: 1rem 0.75rem; + display: flex; + flex-direction: column; + align-items: center; + gap: 0.3125rem; } -.logo { width: 5rem; height: 5rem; border-radius: 1rem; +.logo { + width: 5rem; + height: 5rem; + border-radius: 1rem; } -.title { margin-top: 0.25rem; font-size: 1.125rem; font-weight: 800; color: #333; +.title { + margin-top: 0.25rem; + font-size: 1.125rem; + font-weight: 800; + color: #111; } -.subtitle { font-size: 0.8125rem; color: #888; +.subtitle { + font-size: 0.8125rem; + color: #444; } -.card { margin-top: 0.5625rem; background: #fff; border-radius: 0.5rem; overflow: hidden; +.card { + margin-top: 0.5625rem; + background: #ffffff; + border-radius: 0.5rem; + overflow: hidden; } -.row { display: flex; align-items: center; padding: 0.75rem; border-top: 0.03125rem solid #f2f2f2; +.row { + display: flex; + align-items: center; + padding: 0.75rem; + border-top: 0.03125rem solid #e5e7eb; } -.label { color: #666; +.label { + color: #444; } -.value { margin-left: auto; color: #333; -} -.link { margin-left: auto; color: #1aad19; +.value { + margin-left: auto; + color: #111; } +.link { + margin-left: auto; + color: #4C8DFF; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/my/index.css b/frontend/unpackage/dist/dev/app-plus/pages/my/index.css index 7ec77d7..db78557 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/my/index.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/my/index.css @@ -1,27 +1,254 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.me { + padding: 0.75rem; +} +.card.login { + display: flex; + flex-direction: column; + gap: 0.5rem; + padding: 0.6875rem; + background: #ffffff; + border-radius: 0.5rem; + margin-bottom: 0.75rem; +} +.login-title { + font-size: 0.875rem; + font-weight: 700; +} +.login-btn.minor { + background: #f1f1f1; + color: #111; +} +.hint { + font-size: 0.6875rem; + color: #444; +} +.card.user { + display: flex; + gap: 0.5625rem; + padding: 0.6875rem; + background: #ffffff; + border-radius: 0.5rem; + box-shadow: 0 0.1875rem 0.5rem rgba(0, 0, 0, 0.16); + align-items: center; +} +.card.user.guest { + justify-content: space-between; +} +.card.user.guest .meta { + flex: 1; +} +.card.user.guest .login-entry { + padding: 0.375rem 0.9375rem; + border-radius: 31.21875rem; + background: #4C8DFF; + color: #fff; + font-size: 0.875rem; + font-weight: 600; +} +.avatar { + width: 3.75rem; + height: 3.75rem; + border-radius: 1.875rem; + background: #f1f1f1; +} +.meta { + display: flex; + flex-direction: column; + gap: 0.1875rem; +} +.name { + font-size: 1.0625rem; + font-weight: 700; + color: #111; +} +.phone { + font-size: 0.8125rem; + color: #444; +} +.role { + font-size: 0.6875rem; + color: #444; +} -.me { padding: 0.75rem; +/* VIP 卡片样式 */ +.card.vip { + margin-top: 0.75rem; + padding: 0.6875rem; + background: #ffffff; + border-radius: 0.5rem; + box-shadow: 0 0.1875rem 0.5rem rgba(0, 0, 0, 0.12); } -.card.user { display: flex; gap: 0.5625rem; padding: 0.6875rem; background: #fff; border-radius: 0.5rem; box-shadow: 0 0.1875rem 0.5rem rgba(0,0,0,0.06); align-items: center; +.card.vip.active { + border: 0.03125rem solid rgba(255, 208, 0, 0.6); + background-image: radial-gradient(60% 60% at 80% 0%, rgba(255, 214, 0, 0.08), transparent 60%); } -.avatar { width: 3.75rem; height: 3.75rem; border-radius: 1.875rem; background: #f5f5f5; +.vip-row { + display: flex; + align-items: center; + gap: 0.375rem; + margin-bottom: 0.3125rem; } -.meta { display: flex; flex-direction: column; gap: 0.1875rem; +.vip-badge { + background: #f1c40f; + color: #111; + font-weight: 800; + padding: 0.0625rem 0.3125rem; + border-radius: 0.25rem; + font-size: 0.6875rem; } -.name { font-size: 1.0625rem; font-weight: 700; color: #333; +.vip-title { + font-size: 0.875rem; + font-weight: 700; + color: #111; } -.phone { font-size: 0.8125rem; color: #888; +.vip-meta { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 0.25rem 0.5rem; } -.role { font-size: 0.6875rem; color: #999; +.vip-meta .item { + display: flex; + align-items: center; + gap: 0.3125rem; } -.group { margin-top: 0.75rem; background: #fff; border-radius: 0.5rem; overflow: hidden; +.vip-meta .label { + width: 2.5rem; + color: #444; + font-size: 0.75rem; } -.group-title { padding: 0.5625rem 0.6875rem; font-size: 0.8125rem; color: #999; background: #fafafa; +.vip-meta .value { + color: #111; + font-size: 0.8125rem; + word-break: break-all; } -.cell { display: flex; align-items: center; padding: 0.8125rem 0.6875rem; border-top: 0.03125rem solid #f0f0f0; color: #333; +.group { + margin-top: 0.75rem; + background: #ffffff; + border-radius: 0.5rem; + overflow: hidden; } -.cell .desc { margin-left: auto; margin-right: 0.25rem; font-size: 0.6875rem; color: #999; +.group-title { + padding: 0.5625rem 0.6875rem; + font-size: 0.8125rem; + color: #444; + background: #f1f1f1; } -.cell .arrow { margin-left: auto; color: #bbb; +.cell { + display: flex; + align-items: center; + padding: 0.8125rem 0.6875rem; + border-top: 0.03125rem solid #e5e7eb; + color: #111; + gap: 0.5625rem; } -.cell.danger { color: #dd524d; justify-content: center; font-weight: 700; +.cell-left { + display: flex; + align-items: center; + gap: 0.4375rem; } +.vip-tag { + padding: 0.125rem 0.375rem; + border-radius: 31.21875rem; + background: rgba(76, 141, 255, 0.15); + color: #4C8DFF; + font-size: 0.6875rem; +} +.vip-tag.pending { + background: rgba(76, 141, 255, 0.06); + color: #99a2b3; +} +.cell .desc { + margin-left: auto; + margin-right: 0.25rem; + font-size: 0.6875rem; + color: #444; +} +.cell .arrow { + margin-left: auto; + color: #99a2b3; +} +.cell.danger { + color: #dd524d; + justify-content: center; + font-weight: 700; +} + +/* 简易对话框样式 */ +.dialog-mask { + position: fixed; + left: 0; + right: 0; + top: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.45); + display: flex; + align-items: center; + justify-content: center; + z-index: 999; +} +.dialog { + width: 18.75rem; + background: #fff; + border-radius: 0.5rem; + padding: 0.75rem; + box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.2); +} +.dialog-title { + font-size: 0.9375rem; + font-weight: 700; + margin-bottom: 0.5rem; +} +.dialog-input { + width: 100%; + height: 2.25rem; + padding: 0 0.5rem; + border: 0.03125rem solid #e5e7eb; + border-radius: 0.3125rem; + background: #fff; + color: #111; +} +.dialog-actions { + display: flex; + gap: 0.5rem; + margin-top: 0.5625rem; + justify-content: flex-end; +} +.dialog-btn { + padding: 0.5rem 0.6875rem; + border-radius: 0.3125rem; +} +.dialog-btn.cancel { + background: #f1f1f1; + color: #111; +} +.dialog-btn.confirm { + background: #2979ff; + color: #fff; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/my/orders.css b/frontend/unpackage/dist/dev/app-plus/pages/my/orders.css new file mode 100644 index 0000000..585b766 --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/my/orders.css @@ -0,0 +1,73 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.orders { + padding: 0.5rem 0.5rem calc(env(safe-area-inset-bottom) + 0.5rem); +} +.hint { + color: #444; + padding: 0.75rem; + text-align: center; +} +.item { + background: #fff; + border: 0.03125rem solid #e5e7eb; + border-radius: 0.5rem; + padding: 0.5625rem; + margin: 0.375rem 0; +} +.row1 { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 0.1875rem; +} +.price { + color: #111; + font-weight: 800; + font-size: 1.0625rem; +} +.channel { + color: #666; + font-size: 0.75rem; +} +.row2 { + display: flex; + justify-content: space-between; + color: #666; + font-size: 0.75rem; +} +.row3 { + margin-top: 0.1875rem; + color: #4C8DFF; + font-size: 0.75rem; +} +.empty { + text-align: center; + color: #999; + padding: 1.25rem 0; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/my/security.css b/frontend/unpackage/dist/dev/app-plus/pages/my/security.css new file mode 100644 index 0000000..a2703de --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/my/security.css @@ -0,0 +1,99 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.security { + padding: 0.75rem; +} +.card { + background: #ffffff; + border-radius: 0.5rem; + padding: 0.6875rem; + margin-bottom: 0.75rem; + box-shadow: 0 0.1875rem 0.5rem rgba(0, 0, 0, 0.08); +} +.cell { + display: flex; + align-items: center; + gap: 0.5rem; + padding: 0.625rem 0; + border-bottom: 0.03125rem solid #e5e7eb; +} +.cell:last-of-type { + border-bottom: none; +} +.cell-label { + flex: 1; + font-size: 0.875rem; + color: #111; +} +.cell-input { + flex: 2; + height: 2.25rem; + padding: 0 0.5rem; + border: 0.03125rem solid #e5e7eb; + border-radius: 0.3125rem; + background: #fff; + color: #111; +} +.avatar-preview { + width: 3.125rem; + height: 3.125rem; + border-radius: 0.5rem; + background: #f1f1f1; +} +.arrow { + margin-left: 0.375rem; + color: #99a2b3; + font-size: 1rem; +} +.row { + display: flex; + align-items: center; + gap: 0.5rem; + margin-bottom: 0.5rem; +} +.label { + width: 5rem; + color: #111; + font-size: 0.875rem; +} +.input { + flex: 1; + height: 2.25rem; + padding: 0 0.5rem; + border: 0.03125rem solid #e5e7eb; + border-radius: 0.3125rem; + background: #fff; + color: #111; +} +.btn { + margin-top: 0.25rem; +} +.btn.minor { + background: #f1f1f1; + color: #111; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/my/vip.css b/frontend/unpackage/dist/dev/app-plus/pages/my/vip.css new file mode 100644 index 0000000..5c998ab --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/my/vip.css @@ -0,0 +1,289 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +body { + background: linear-gradient(180deg, #f8fbff 0%, #ffffff 60%) !important; +} +.vip-page { + min-height: 100vh; + padding: 1rem 0.75rem 3.75rem; + box-sizing: border-box; + display: flex; + flex-direction: column; + gap: 0.875rem; +} +.vip-hero { + display: flex; + align-items: center; + gap: 0.625rem; + padding: 0.8125rem 0.875rem; + border-radius: 0.75rem; + background: rgba(255, 255, 255, 0.98); + border: 0.0625rem solid #edf2f9; + box-shadow: 0 0.3125rem 0.9375rem rgba(76, 141, 255, 0.12); +} +.hero-icon { + width: 2.75rem; + height: 2.75rem; + border-radius: 0.75rem; + background: #f0f6ff; + padding: 0.375rem; +} +.hero-text { + flex: 1; + display: flex; + flex-direction: column; + gap: 0.25rem; +} +.hero-title { + font-size: 1.125rem; + font-weight: 800; + color: #4C8DFF; + letter-spacing: 0.03125rem; +} +.hero-subtitle { + font-size: 0.8125rem; + color: #5175b5; + line-height: 1.125rem; +} +.status-pill { + flex: 0 0 auto; + padding: 0.375rem 0.625rem; + border-radius: 31.21875rem; + background: #e6edfb; + color: #4463a6; + font-size: 0.75rem; + font-weight: 700; + border: 0.0625rem solid rgba(76, 141, 255, 0.2); +} +.status-pill.active { + background: #4c8dff; + color: #fff; + border-color: #4c8dff; +} + +/* 指定 hero 内激活态徽标文本为黑色 */ +.vip-hero .status-pill.active uni-text { + color: #000 !important; +} +.vip-summary { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.5rem; + background: rgba(255, 255, 255, 0.98); + padding: 0.75rem; + border-radius: 0.75rem; + border: 0.0625rem solid #eef3fb; + box-shadow: 0 0.25rem 0.75rem rgba(99, 132, 191, 0.1); +} +.summary-item { + background: #f6f9ff; + border-radius: 0.5625rem; + padding: 0.6875rem 0.75rem; + display: flex; + flex-direction: column; + gap: 0.375rem; + border: 0.0625rem solid rgba(76, 141, 255, 0.12); +} +.summary-label { + font-size: 0.75rem; + color: #5f7394; +} +.summary-value { + font-size: 0.9375rem; + font-weight: 700; + color: #1f2c3d; +} +.summary-value.success { + color: #1ead91; +} +.summary-value.highlight { + color: #2f58d1; +} +.benefit-section { + background: rgba(255, 255, 255, 0.98); + border-radius: 0.75rem; + padding: 0.875rem; + border: 0.0625rem solid #edf2f9; + box-shadow: 0 0.375rem 0.875rem rgba(32, 75, 143, 0.1); + display: flex; + flex-direction: column; + gap: 0.75rem; +} +.section-header { + display: flex; + flex-direction: column; + gap: 0.25rem; +} +.section-title { + font-size: 1.0625rem; + font-weight: 800; + color: #111; +} +.section-subtitle { + font-size: 0.75rem; + color: #5f7394; + line-height: 1.0625rem; +} +.benefit-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.625rem; +} +.benefit-card { + background: #f7faff; + border-radius: 0.625rem; + padding: 0.75rem 0.625rem; + border: 0.0625rem solid rgba(76, 141, 255, 0.12); + box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.04); + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 0.4375rem; +} +.benefit-icon { + width: 1.5rem; + height: 1.5rem; +} +.benefit-title { + font-size: 0.875rem; + font-weight: 700; + color: #111; +} +.benefit-desc { + font-size: 0.75rem; + line-height: 1.0625rem; + color: #5f7394; +} +.purchase-card { + margin-top: auto; + background: linear-gradient(135deg, rgba(76, 141, 255, 0.14) 0%, rgba(76, 141, 255, 0.06) 100%); + border-radius: 0.875rem; + padding: 0.9375rem 0.875rem; + display: flex; + align-items: center; + gap: 0.75rem; + border: 0.0625rem solid rgba(76, 141, 255, 0.18); + box-shadow: 0 0.3125rem 0.75rem rgba(76, 141, 255, 0.15); +} +.purchase-text { + flex: 1; + display: flex; + flex-direction: column; + gap: 0.3125rem; +} +.purchase-title { + font-size: 1rem; + font-weight: 800; + color: #4C8DFF; +} +.purchase-desc { + font-size: 0.75rem; + color: #4463a6; + line-height: 1.0625rem; +} +.purchase-btn { + flex: 0 0 auto; + padding: 0.625rem 1.125rem; + border-radius: 31.21875rem; + border: none; + background: linear-gradient(135deg, #4788ff 0%, #2d6be6 100%); + color: #fff; + font-size: 0.875rem; + font-weight: 700; + box-shadow: 0 0.3125rem 0.6875rem rgba(45, 107, 230, 0.2); +} +.purchase-btn:active { + opacity: 0.88; +} +.apply-card { + margin-top: 0; + background: linear-gradient(135deg, rgba(30, 173, 145, 0.14) 0%, rgba(30, 173, 145, 0.06) 100%); + border-radius: 0.875rem; + padding: 0.9375rem 0.875rem; + display: flex; + align-items: center; + gap: 0.75rem; + border: 0.0625rem solid rgba(30, 173, 145, 0.18); + box-shadow: 0 0.3125rem 0.75rem rgba(30, 173, 145, 0.15); +} +.apply-text { + flex: 1; + display: flex; + flex-direction: column; + gap: 0.3125rem; +} +.apply-title { + font-size: 1rem; + font-weight: 800; + color: #1ead91; +} +.apply-desc { + font-size: 0.75rem; + color: #247a66; + line-height: 1.0625rem; +} +.apply-btn { + flex: 0 0 auto; + padding: 0.625rem 1.125rem; + border-radius: 31.21875rem; + border: none; + background-color: transparent; + background: linear-gradient(135deg, #1ead91 0%, #159b7e 100%); + color: #fff; + font-size: 0.875rem; + font-weight: 700; + box-shadow: 0 0.3125rem 0.6875rem rgba(21, 155, 126, 0.2); +} +.apply-btn::after { + border: none; +} +.apply-btn:active { + opacity: 0.9; +} +.apply-btn.disabled { + opacity: 0.5; + background: #c7e8df; + color: #fff; + box-shadow: none; + pointer-events: none; +} +@media (max-width: 375px) { +.vip-summary { + grid-template-columns: 1fr; +} +.benefit-grid { + grid-template-columns: 1fr; +} +.purchase-card { + flex-direction: column; + align-items: stretch; +} +.status-pill { + display: none; +} +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/order/create.css b/frontend/unpackage/dist/dev/app-plus/pages/order/create.css index 5481faa..fae52eb 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/order/create.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/order/create.css @@ -1,59 +1,281 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.order { + padding-bottom: 4.375rem; +} +.tabs { + display: flex; + justify-content: space-around; + padding: 0.5rem 0.75rem; +} +.tabs uni-text { + color: #444; +} +.tabs uni-text.active { + color: #111; + font-weight: 700; +} -.order { padding-bottom: 4.375rem; +/* 三段式胶囊切换 */ +.seg3 { + display: flex; + gap: 0; + margin: 0.375rem 0.5rem; + padding: 0.1875rem; + background: #fff; + border-radius: 31.21875rem; + box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.04); } -.tabs { display: flex; justify-content: space-around; padding: 0.5rem 0.75rem; +.seg3-item { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 0.25rem; + padding: 0.375rem 0; + color: #111; + border-radius: 31.21875rem; + transition: box-shadow 0.2s ease, background 0.2s ease; } -.tabs uni-text { color: #666; + +/* 间隔通过内边距处理,避免空选择器 */ +.seg3-item.active { + background: #fff; + color: #4C8DFF; + box-shadow: 0 0.09375rem 0.3125rem rgba(76, 141, 255, 0.16); } -.tabs uni-text.active { color: #333; font-weight: 700; +.seg3-icon { + width: 0.875rem; + height: 0.875rem; + opacity: 0.9; } -.subtabs { display: flex; gap: 0.5rem; padding: 0 0.75rem 0.5rem; +.field { + display: flex; + align-items: center; + justify-content: flex-start; + padding: 0.6875rem 0.75rem; + background: #f8faff; + gap: 0.5rem; } -.subbtn { padding: 0.3125rem 0.625rem; border-radius: 31.21875rem; background: #f4f4f4; color: #666; +.label { + width: 5rem; + color: #444; } -.subbtn.active { background: #ffe69a; color: #3f320f; +.value { + flex: 1; + color: #111; + text-align: right; } -.field { display:flex; justify-content: space-between; padding: 0.6875rem 0.75rem; background: #fff; border-bottom: 0.03125rem solid #eee; + +/* 汇总卡片:白底卡片+主色按钮 */ +.summary { + display: flex; + justify-content: space-between; + align-items: center; + padding: 0.5625rem 0.625rem; + margin: 0.5rem 0.5625rem 0.3125rem; + background: none; + border-radius: 0.5625rem; + color: #111; } -.label { color:#666; + +/* 加号改为图标按钮 */ +.add { + margin: 0.75rem auto 0.5625rem; + width: 3.75rem; + height: 3.75rem; + border-radius: 0.875rem; + background: none; + border: 0; + color: #4C8DFF; + font-size: 2.25rem; + display: flex; + align-items: center; + justify-content: center; + box-shadow: none; } -.value { color:#333; +.empty { + display: flex; + flex-direction: column; + align-items: center; + padding: 1.875rem 0; + color: #444; } -.summary { display:flex; justify-content: space-between; padding: 0.6875rem 0.75rem; color:#333; +.empty-img { + width: 5rem; + margin-bottom: 0.5rem; } -.add { margin: 0.75rem auto; width: 3.75rem; height: 3.75rem; border-radius: 0.625rem; background: #c7eef7; color:#16a1c4; font-size: 2.25rem; display:flex; align-items:center; justify-content:center; +.empty-text { + margin-bottom: 0.25rem; } -.empty { display:flex; flex-direction: column; align-items:center; padding: 1.875rem 0; color:#888; +.list { + background: #fff; + margin: 0 0.5625rem 0.625rem; + border-radius: 0.5625rem; + overflow: hidden; + box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.06); } -.empty-img { width: 6.875rem; margin-bottom: 0.625rem; +.row { + display: grid; + grid-template-columns: 1.5fr 1fr 1fr 1fr; + gap: 0.375rem; + padding: 0.5625rem 0.5rem; + align-items: center; } -.empty-text { margin-bottom: 0.25rem; +.col.name { + padding-left: 0.375rem; } -.list { background:#fff; +.col.amount { + text-align: right; + padding-right: 0.375rem; + color: #111; } -.row { display:grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 0.375rem; padding: 0.5rem 0.375rem; align-items:center; border-bottom: 0.03125rem solid #f3f3f3; +.bottom { + position: fixed; + left: 0; + right: 0; + bottom: 0; + background: #ffffff; + padding: 0.1875rem 0.5625rem calc(env(safe-area-inset-bottom) + 0.0625rem); + box-shadow: 0 -0.125rem 0.375rem rgba(0, 0, 0, 0.16); } -.col.name { padding-left: 0.375rem; +.order .bottom uni-button { + margin: 0; } -.col.amount { text-align:right; padding-right: 0.375rem; color:#333; + +/* 仅限开单页底部按钮样式(缩小高度) */ +.order .bottom .primary { + width: 100%; + background: #4C8DFF; + color: #fff; + border-radius: 31.21875rem; + padding: 0.4375rem 0; + font-weight: 700; + font-size: 0.875rem; } -.bottom { position: fixed; left:0; right:0; bottom:0; background:#fff; padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); box-shadow: 0 -0.125rem 0.375rem rgba(0,0,0,0.06); +.order .bottom .ghost { + background: transparent; + color: #4C8DFF; + border: 0; + border-radius: 31.21875rem; + padding: 0.375rem 0; + font-size: 0.875rem; } -.primary { width: 100%; background: linear-gradient(135deg, #FFE69A 0%, #F4CF62 45%, #D7A72E 100%); color:#493c1b; border-radius: 31.21875rem; padding: 0.625rem 0; font-weight:800; + +/* 收款/付款页样式 */ +.pay-row .pay-input { + text-align: right; + color: #111; } - /* 收款/付款页样式 */ -.pay-row .pay-input { text-align: right; color:#333; +.textarea { + position: relative; + padding: 0.5rem 0.75rem; + background: #f8faff; } -.textarea { position: relative; padding: 0.5rem 0.75rem; background:#fff; border-top: 0.03125rem solid #eee; +.amount-badge { + position: absolute; + right: 0.75rem; + top: -1rem; + background: #4C8DFF; + color: #fff; + padding: 0.3125rem 0.625rem; + border-radius: 0.4375rem; + font-size: 0.75rem; } -.amount-badge { position: absolute; right: 0.75rem; top: -1.125rem; background: #d1f0ff; color:#107e9b; padding: 0.25rem 0.5rem; border-radius: 0.375rem; font-size: 0.75rem; +.date-mini { + position: absolute; + right: 0.75rem; + bottom: 0.625rem; + color: #444; + font-size: 0.75rem; } -.date-mini { position: absolute; right: 0.75rem; bottom: 0.625rem; color:#666; font-size: 0.75rem; + +/* 分类chips样式:选中后文字变红 */ +.chips { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.375rem 0.5rem; + padding: 0.375rem 0.75rem; } - /* 分类chips样式:选中后文字变红 */ -.chips { display:flex; flex-wrap: wrap; gap: 0.375rem; padding: 0.375rem 0.75rem; +.chip { + padding: 0.375rem 0.625rem; + border-radius: 31.21875rem; + background: #f1f1f1; + color: #444; + text-align: center; } -.chip { padding: 0.3125rem 0.625rem; border-radius: 31.21875rem; background: #f4f4f4; color:#666; +.chip.active { + background: rgba(76, 141, 255, 0.15); + color: #4C8DFF; } -.chip.active { color: #e54d42; + +/* 顶部业务 Tabs 显示 */ +/* 快捷操作宫格 */ +/* 信息卡片式表达(更稳重) */ +.info-card { + display: grid; + grid-template-columns: 1fr 1fr auto; + gap: 0.3125rem; + margin: 0.3125rem 0.375rem 0; + background: transparent; + padding: 0; + align-items: center; } +.info-field { + background: #fff; + border: 0; + border-radius: 0.4375rem; + padding: 0.375rem 0.4375rem; + box-shadow: 0 0.1875rem 0.5rem rgba(0, 0, 0, 0.06); +} +.info-label { + color: #444; + font-size: 0.75rem; + margin-right: 0.25rem; +} +.info-value { + color: #111; + font-weight: 700; +} + +/* 缩小“加商品”按钮尺寸,仅在本页卡片内 */ +.order .info-card .info-action { + display: flex; + align-items: center; + gap: 0.1875rem; + background: #4C8DFF; + color: #fff; + border-radius: 0.375rem; + padding: 0.25rem 0.375rem; + box-shadow: 0 0.15625rem 0.375rem rgba(76, 141, 255, 0.18); + font-size: 0.8125rem; +} +.order .info-card .info-icon { + width: 0.75rem; + height: 0.75rem; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/form.css b/frontend/unpackage/dist/dev/app-plus/pages/product/form.css index c8e7c4c..b940d0e 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/product/form.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/form.css @@ -9,25 +9,169 @@ } .thumb[data-v-7bd1ddd2] { width: 100%; height: 100%; } -.remove[data-v-7bd1ddd2] { position: absolute; right: 0.1875rem; top: 0.1875rem; background: rgba(0,0,0,0.45); color: #fff; width: 1.25rem; height: 1.25rem; text-align: center; line-height: 1.25rem; border-radius: 0.625rem; font-size: 0.875rem; +.remove[data-v-7bd1ddd2] { position: absolute; right: 0.1875rem; top: 0.1875rem; width: 1.3125rem; height: 1.3125rem; } .adder[data-v-7bd1ddd2] { width: 6.5625rem; height: 6.5625rem; border: 0.0625rem dashed #ccc; border-radius: 0.375rem; display: flex; align-items: center; justify-content: center; color: #999; position: absolute; left: 0; top: 0; } - -.page { background:#f6f6f6; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + background: #ffffff; + min-height: 100vh; + padding-bottom: 5rem; + box-sizing: border-box; } -.card { background:#fff; margin: 0.5rem; padding: 0.5rem; border-radius: 0.375rem; +.hero.small { + margin: 0.6875rem 0.75rem 0.375rem; + padding: 0 0.125rem 0.5625rem; + color: #111; + border-bottom: 0.0625rem solid rgba(94, 124, 174, 0.12); } -.row { display:flex; gap: 0.375rem; align-items: center; margin-bottom: 0.375rem; +.hero.small .title { + font-size: 1.0625rem; + font-weight: 800; } -.label { width: 5.625rem; color:#666; +.hero.small .sub { + display: block; + margin-top: 0.1875rem; + color: #444; + font-size: 0.75rem; } -.row uni-input { flex:1; background:#f7f7f7; border-radius: 0.3125rem; padding: 0.375rem; +.section { + margin: 0 0.75rem 0.875rem; + padding-bottom: 0.1875rem; + border-bottom: 0.0625rem solid rgba(94, 124, 174, 0.1); } -.picker { padding: 0.25rem 0.375rem; background:#f0f0f0; border-radius: 0.3125rem; color:#666; margin-left: 0.25rem; +.section:last-of-type { + border-bottom: 0; + margin-bottom: 0; } -.prices uni-input { width: 30%; +.section .row:first-child .label { + font-weight: 700; + color: #111; } -.fixed { position: fixed; left: 0; right: 0; bottom: 0; background:#fff; padding: 0.375rem 0.5rem; display:flex; gap: 0.5rem; +.row { + display: flex; + gap: 0.25rem; + align-items: center; + margin-top: 0.5625rem; } +.row .input-long { + flex: 1.2; +} +.row:first-child { + margin-top: 0; +} +.label { + width: 4.6875rem; + color: #444; + font-size: 0.8125rem; +} +.row uni-input { + flex: 1; + background: #f7f9fc; + border-radius: 0.4375rem; + padding: 0.5625rem 0.625rem; + color: #111; + border: 0; + box-shadow: inset 0 0 0 0.0625rem rgba(134, 155, 191, 0.06); +} +.picker-btn { + background: #ffffff; + border: 0.0625rem solid rgba(76, 141, 255, 0.45); + color: #4C8DFF; + padding: 0 0.75rem; + border-radius: 31.21875rem; + font-size: 0.75rem; +} +.picker { + padding: 0.5rem 0.6875rem; + background: #f7f9fc; + border-radius: 0.4375rem; + color: #444; + margin-left: 0.25rem; + border: 0; + box-shadow: inset 0 0 0 0.0625rem rgba(134, 155, 191, 0.06); +} +.prices uni-input { + width: 30%; +} +.section uni-textarea { + width: 100%; + min-height: 5rem; + background: #f7f9fc; + border-radius: 0.4375rem; + padding: 0.625rem 0.6875rem; + box-sizing: border-box; + color: #111; + border: 0; + box-shadow: inset 0 0 0 0.0625rem rgba(134, 155, 191, 0.06); +} +.fixed { + position: fixed; + left: 0; + right: 0; + bottom: env(safe-area-inset-bottom); + background: #ffffff; + padding: 0.5rem 0.5rem calc(0.5rem + constant(safe-area-inset-bottom)) 0.5rem; + display: flex; + gap: 0.5rem; + box-shadow: 0 -0.1875rem 0.5625rem rgba(24, 55, 105, 0.08); + z-index: 999; +} +.fixed .primary { + flex: 1; + background: #4C8DFF; + color: #fff; + border-radius: 31.21875rem; + padding: 0.5625rem 0; + font-weight: 700; +} +.fixed .ghost { + flex: 1; + background: #ffffff; + color: #4C8DFF; + border: 0.0625rem solid rgba(76, 141, 255, 0.45); + border-radius: 31.21875rem; + padding: 0.5625rem 0; +} +.tip { + margin: 0 0.9375rem 0.625rem; + padding: 0.5rem 0.625rem; + border-radius: 0.5rem; + font-size: 0.75rem; +} +.tip.platform { + background: rgba(45, 140, 240, 0.12); + color: #2d8cf0; +} +.tip.custom { + background: rgba(103, 194, 58, 0.12); + color: #67c23a; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/list.css b/frontend/unpackage/dist/dev/app-plus/pages/product/list.css index 150979d..50685e3 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/product/list.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/list.css @@ -1,33 +1,163 @@ - -.page { display:flex; flex-direction: column; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; } -.tabs { display:flex; background:#fff; +.tabs { + display: flex; + background: #ffffff; } -.tab { flex:1; text-align:center; padding: 0.625rem 0; color:#666; +.tab { + flex: 1; + text-align: center; + padding: 0.625rem 0; + color: #444; } -.tab.active { color:#18b566; font-weight: 600; +.tab.active { + color: #4C8DFF; + font-weight: 600; } -.search { display:flex; gap: 0.375rem; padding: 0.5rem; background:#fff; align-items: center; +.tab.extra { + flex: 0 0 5.625rem; + color: #4C8DFF; + font-weight: 600; } -.search uni-input { flex:1; background:#f6f6f6; border-radius: 0.375rem; padding: 0.375rem; +.search { + display: flex; + gap: 0.375rem; + padding: 0.5rem; + background: #ffffff; + align-items: center; } -.picker { padding: 0.25rem 0.375rem; background:#f0f0f0; border-radius: 0.3125rem; color:#666; +.search uni-input { + flex: 1; + background: #f1f1f1; + border-radius: 0.375rem; + padding: 0.375rem; + color: #111; } -.list { flex:1; +.picker { + padding: 0.25rem 0.375rem; + background: #f1f1f1; + border-radius: 0.3125rem; + color: #444; } -.item { display:flex; padding: 0.625rem; background:#fff; border-bottom: 0.03125rem solid #f1f1f1; +.template-mode { + flex-direction: column; + align-items: stretch; + gap: 0.25rem; } -.thumb { width: 3.75rem; height: 3.75rem; border-radius: 0.375rem; margin-right: 0.5rem; background:#fafafa; +.picker-row { + display: flex; + gap: 0.375rem; } -.content { flex:1; +.params-wrap { + margin-top: 0.1875rem; + background: #ffffff; + border-radius: 0.375rem; + padding: 0.25rem 0.25rem; } -.name { color:#333; margin-bottom: 0.1875rem; font-weight: 600; +.list { + flex: 1; } -.meta { color:#888; font-size: 0.75rem; +.item { + display: flex; + padding: 0.625rem; + background: #ffffff; + border-bottom: 0.03125rem solid #e5e7eb; } -.price { margin-left: 0.625rem; color:#f60; +.thumb { + width: 3.75rem; + height: 3.75rem; + border-radius: 0.375rem; + margin-right: 0.5rem; + background: #f1f1f1; } -.empty { height: 60vh; display:flex; align-items:center; justify-content:center; color:#999; +.content { + flex: 1; } -.fab { position: fixed; right: 0.9375rem; bottom: 3.75rem; width: 3.125rem; height: 3.125rem; background:#18b566; color:#fff; border-radius: 1.5625rem; text-align:center; line-height: 3.125rem; font-size: 1.5rem; box-shadow: 0 0.25rem 0.625rem rgba(0,0,0,0.15); +.name { + color: #111; + margin-bottom: 0.1875rem; + font-weight: 600; + display: flex; + align-items: center; + gap: 0.375rem; } +.tag-platform { + font-size: 0.6875rem; + color: #fff; + background: #2d8cf0; + padding: 0.125rem 0.3125rem; + border-radius: 0.25rem; +} +.tag-custom { + font-size: 0.6875rem; + color: #fff; + background: #67c23a; + padding: 0.125rem 0.3125rem; + border-radius: 0.25rem; +} +.tag-deleted { + font-size: 0.6875rem; + color: #fff; + background: #909399; + padding: 0.125rem 0.3125rem; + border-radius: 0.25rem; +} +.meta { + color: #444; + font-size: 0.75rem; +} +.price { + margin-left: 0.625rem; + color: #4C8DFF; +} +.empty { + height: 60vh; + display: flex; + align-items: center; + justify-content: center; + color: #444; +} +.fab { + position: fixed; + right: 0.9375rem; + bottom: 3.75rem; + width: 3.125rem; + height: 3.125rem; + background: #4C8DFF; + color: #fff; + border-radius: 1.5625rem; + text-align: center; + line-height: 3.125rem; + font-size: 1.5rem; + box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.15); +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/product-detail.css b/frontend/unpackage/dist/dev/app-plus/pages/product/product-detail.css new file mode 100644 index 0000000..aa0694d --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/product-detail.css @@ -0,0 +1,124 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding: 0.75rem 0.75rem 5rem; + background: #f6f7fb; +} +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 0.625rem; +} +.model { + font-size: 1.125rem; + font-weight: 700; + color: #2d3a4a; +} +.status.deleted { + font-size: 0.75rem; + padding: 0.1875rem 0.5625rem; + border-radius: 31.21875rem; + background: #c0c4cc; + color: #fff; +} +.section { + background: #fff; + border-radius: 0.5rem; + padding: 0.625rem 0.6875rem; + margin-bottom: 0.75rem; + box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.04); +} +.row { + display: flex; + justify-content: space-between; + padding: 0.375rem 0; + border-bottom: 0.03125rem solid #f1f2f5; +} +.row:last-child { + border-bottom: none; +} +.label { + width: 5rem; + font-size: 0.8125rem; + color: #7a8899; +} +.value { + flex: 1; + text-align: right; + font-size: 0.8125rem; + color: #2d3a4a; + word-break: break-all; +} +.block-title { + font-size: 0.875rem; + font-weight: 600; + color: #2d3a4a; + margin-bottom: 0.375rem; +} +.placeholder { + font-size: 0.8125rem; + color: #7a8899; +} +.params { + display: flex; + flex-direction: column; + gap: 0.375rem; +} +.param { + display: flex; + justify-content: space-between; + font-size: 0.8125rem; + color: #2d3a4a; +} +.param-key { + color: #7a8899; +} +.images { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 0.375rem; +} +.image { + width: 100%; + height: 6.25rem; + border-radius: 0.5rem; + background: #f0f2f5; +} +.footer { + display: flex; + justify-content: flex-end; + gap: 0.625rem; +} +.loading { + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + color: #7a8899; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/select.css b/frontend/unpackage/dist/dev/app-plus/pages/product/select.css index 713bf01..44660d8 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/product/select.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/select.css @@ -1,15 +1,61 @@ - -.page { display:flex; flex-direction: column; height: 100vh; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; } -.search { display:flex; gap: 0.375rem; padding: 0.5rem; background:#fff; +.search { + display: flex; + gap: 0.375rem; + padding: 0.5rem; + background: #ffffff; } -.search uni-input { flex:1; background:#f6f6f6; border-radius: 0.375rem; padding: 0.375rem; +.search uni-input { + flex: 1; + background: #f1f1f1; + border-radius: 0.375rem; + padding: 0.375rem; + color: #111; } -.list { flex:1; +.list { + flex: 1; } -.item { padding: 0.625rem 0.75rem; background:#fff; border-bottom: 0.03125rem solid #f1f1f1; +.item { + padding: 0.625rem 0.75rem; + background: #ffffff; + border-bottom: 0.03125rem solid #e5e7eb; } -.name { color:#333; margin-bottom: 0.1875rem; -} -.meta { color:#888; font-size: 0.75rem; +.name { + color: #111; + margin-bottom: 0.1875rem; } +.meta { + color: #444; + font-size: 0.75rem; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/submission-detail.css b/frontend/unpackage/dist/dev/app-plus/pages/product/submission-detail.css new file mode 100644 index 0000000..419bf1e --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/submission-detail.css @@ -0,0 +1,134 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding: 0.75rem 0.75rem 5rem; + background: #f6f7fb; +} +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 0.625rem; +} +.model { + font-size: 1.125rem; + font-weight: 700; + color: #2d3a4a; +} +.status { + font-size: 0.8125rem; + padding: 0.1875rem 0.5625rem; + border-radius: 31.21875rem; +} +.status.pending { + background: rgba(246, 190, 0, 0.15); + color: #c47f00; +} +.status.approved { + background: rgba(103, 194, 58, 0.15); + color: #409eff; +} +.status.rejected { + background: rgba(255, 87, 115, 0.18); + color: #f56c6c; +} +.section { + background: #fff; + border-radius: 0.5rem; + padding: 0.625rem 0.6875rem; + margin-bottom: 0.75rem; + box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.04); +} +.row { + display: flex; + justify-content: space-between; + padding: 0.375rem 0; + border-bottom: 0.03125rem solid #f1f2f5; +} +.row:last-child { + border-bottom: none; +} +.label { + width: 5rem; + font-size: 0.8125rem; + color: #7a8899; +} +.value { + flex: 1; + text-align: right; + font-size: 0.8125rem; + color: #2d3a4a; + word-break: break-all; +} +.block-title { + font-size: 0.875rem; + font-weight: 600; + color: #2d3a4a; + margin-bottom: 0.375rem; +} +.placeholder { + font-size: 0.8125rem; + color: #7a8899; +} +.params { + display: flex; + flex-direction: column; + gap: 0.375rem; +} +.param { + display: flex; + justify-content: space-between; + font-size: 0.8125rem; + color: #2d3a4a; +} +.param-key { + color: #7a8899; +} +.images { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 0.375rem; +} +.image { + width: 100%; + height: 6.25rem; + border-radius: 0.5rem; + background: #f0f2f5; +} +.footer { + display: flex; + justify-content: flex-end; + gap: 0.625rem; +} +.loading { + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + color: #7a8899; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/submissions.css b/frontend/unpackage/dist/dev/app-plus/pages/product/submissions.css new file mode 100644 index 0000000..639a153 --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/submissions.css @@ -0,0 +1,164 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + display: flex; + flex-direction: column; + height: 100vh; + background: #f6f7fb; + padding-bottom: 4.375rem; +} +.hero { + padding: 0.75rem; + background: #fff; + box-shadow: 0 0.3125rem 0.9375rem rgba(0, 0, 0, 0.04); +} +.title { + font-size: 1.0625rem; + font-weight: 700; + color: #2d3a4a; +} +.desc { + font-size: 0.75rem; + color: #7a8899; + margin-top: 0.25rem; +} +.tabs { + display: flex; + background: #fff; + margin: 0.5rem; + border-radius: 31.21875rem; + overflow: hidden; + box-shadow: inset 0 0 0 0.03125rem rgba(76, 141, 255, 0.1); +} +.tab { + flex: 1; + text-align: center; + padding: 0.625rem 0; + font-size: 0.875rem; + color: #7a8899; +} +.tab.active { + background: linear-gradient(135deg, #4c8dff, #6ab7ff); + color: #fff; + font-weight: 600; +} +.list { + flex: 1; + padding: 0 0.625rem; +} +.cards { + display: flex; + flex-direction: column; + gap: 0.625rem; + padding-bottom: 1.25rem; +} +.card { + background: #fff; + border-radius: 0.5625rem; + padding: 0.6875rem; + box-shadow: 0 0.3125rem 0.9375rem rgba(0, 0, 0, 0.05); +} +.card-header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 0.375rem; +} +.model { + font-size: 0.9375rem; + font-weight: 700; + color: #2d3a4a; +} +.status { + font-size: 0.75rem; + padding: 0.1875rem 0.5625rem; + border-radius: 31.21875rem; +} +.status.pending { + background: rgba(246, 190, 0, 0.15); + color: #c47f00; +} +.status.approved { + background: rgba(103, 194, 58, 0.15); + color: #409eff; +} +.status.rejected { + background: rgba(255, 87, 115, 0.18); + color: #f56c6c; +} +.card-body { + display: flex; + flex-direction: column; + gap: 0.1875rem; + color: #4f5969; + font-size: 0.8125rem; +} +.name { + font-weight: 600; + color: #2d3a4a; +} +.card-footer { + display: flex; + gap: 0.375rem; + margin-top: 0.5rem; +} +.empty { + height: 60vh; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + color: #8894a3; + gap: 0.625rem; +} +.empty .primary { + background: #4c8dff; + color: #fff; + border-radius: 31.21875rem; + padding: 0.375rem 0.9375rem; +} +.loading, .finished { + text-align: center; + padding: 0.625rem 0; + color: #7a8899; +} +.fab { + position: fixed; + right: 0.9375rem; + bottom: 3.75rem; + width: 3.125rem; + height: 3.125rem; + background: linear-gradient(135deg, #4c8dff, #6ab7ff); + color: #fff; + border-radius: 1.5625rem; + display: flex; + align-items: center; + justify-content: center; + font-size: 1.5rem; + box-shadow: 0 0.625rem 1.25rem rgba(0, 0, 0, 0.2); +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/product/submit.css b/frontend/unpackage/dist/dev/app-plus/pages/product/submit.css new file mode 100644 index 0000000..8733427 --- /dev/null +++ b/frontend/unpackage/dist/dev/app-plus/pages/product/submit.css @@ -0,0 +1,142 @@ + +.uploader[data-v-7bd1ddd2] { padding: 0.375rem; background: #fff; +} +.grid[data-v-7bd1ddd2] { position: relative; +} +.area[data-v-7bd1ddd2] { width: 100%; position: relative; +} +.cell[data-v-7bd1ddd2] { position: absolute; border-radius: 0.375rem; overflow: hidden; box-shadow: 0 0 0.03125rem rgba(0,0,0,0.08); +} +.thumb[data-v-7bd1ddd2] { width: 100%; height: 100%; +} +.remove[data-v-7bd1ddd2] { position: absolute; right: 0.1875rem; top: 0.1875rem; width: 1.3125rem; height: 1.3125rem; +} +.adder[data-v-7bd1ddd2] { width: 6.5625rem; height: 6.5625rem; border: 0.0625rem dashed #ccc; border-radius: 0.375rem; display: flex; align-items: center; justify-content: center; color: #999; position: absolute; left: 0; top: 0; +} + +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding: 0.75rem 0.75rem 3.75rem; + background: #f6f7fb; +} +.hero { + padding: 0.75rem; + background: linear-gradient(135deg, #4c8dff, #6ab7ff); + border-radius: 0.625rem; + color: #fff; + margin-bottom: 0.75rem; +} +.title { + font-size: 1.125rem; + font-weight: 700; +} +.desc { + font-size: 0.8125rem; + margin-top: 0.25rem; + opacity: 0.9; +} +.section { + background: #fff; + border-radius: 0.5rem; + padding: 0.625rem 0.6875rem; + margin-bottom: 0.75rem; + box-shadow: 0 0.3125rem 0.9375rem rgba(0, 0, 0, 0.04); +} +.row { + display: flex; + align-items: center; + gap: 0.5rem; + padding: 0.5rem 0; + border-bottom: 0.03125rem solid #f1f2f5; +} +.row:last-child { + border-bottom: none; +} +.row.required .label::after { + content: "*"; + color: #ff5b5b; + margin-left: 0.1875rem; +} +.label { + width: 4.0625rem; + font-size: 0.875rem; + color: #2d3a4a; +} +uni-input { + flex: 1; + background: #f8f9fb; + border-radius: 0.375rem; + padding: 0.5rem 0.5625rem; + font-size: 0.875rem; + color: #222; +} +.textarea { + width: 100%; + min-height: 5rem; + background: #f8f9fb; + border-radius: 0.375rem; + padding: 0.5625rem; + font-size: 0.875rem; + color: #222; +} +.picker { + flex: 1; + background: #f8f9fb; + border-radius: 0.375rem; + padding: 0.5625rem; + font-size: 0.875rem; + color: #222; +} +.picker-btn { + background: #4c8dff; + color: #fff; + border-radius: 31.21875rem; + padding: 0.3125rem 0.6875rem; +} +.triple uni-input { + flex: 1; +} +.fixed { + position: fixed; + left: 0; + right: 0; + bottom: 0; + padding: 0.625rem 0.75rem 1.25rem; + background: rgba(255, 255, 255, 0.96); + box-shadow: 0 -0.1875rem 0.625rem rgba(0, 0, 0, 0.08); +} +.primary { + width: 100%; + height: 2.75rem; + border-radius: 31.21875rem; + background: #4c8dff; + color: #fff; + font-size: 1rem; + font-weight: 600; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/report/index.css b/frontend/unpackage/dist/dev/app-plus/pages/report/index.css index f5470c2..c8783ce 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/report/index.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/report/index.css @@ -1,37 +1,158 @@ - -.report { padding: 0.625rem; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.report { + padding: 0.75rem 0.625rem 1.125rem; + display: flex; + flex-direction: column; + gap: 0.5625rem; } -.modes { display: flex; gap: 0.375rem; margin-bottom: 0.4375rem; +.header { + font-size: 1.0625rem; + font-weight: 700; + color: #1f2a44; + padding-left: 0.25rem; } -.mode-tab { flex: 1; text-align: center; padding: 0.5rem 0; border-radius: 31.21875rem; background: #f4f4f4; color: #666; border: 0.03125rem solid #e9e9e9; +.toolbar { + display: flex; + align-items: center; + justify-content: center; + gap: 0.375rem; + background: #f7f9fc; + border-radius: 0.5rem; + padding: 0.5625rem; } -.mode-tab.active { background: #1aad19; color: #fff; border-color: #1aad19; font-weight: 700; +.date { + min-width: 6.25rem; + padding: 0.375rem 0.5625rem; + border-radius: 0.375rem; + background: #fff; + border: 0.03125rem solid rgba(91, 107, 139, 0.16); + text-align: center; + color: #32445b; } -.toolbar { display: flex; align-items: center; gap: 0.25rem; background: #fff; padding: 0.4375rem 0.5rem; border-radius: 0.375rem; +.tabs { + display: flex; + gap: 0.375rem; + justify-content: center; } -.date { padding: 0.3125rem 0.5rem; border: 0.03125rem solid #eee; border-radius: 0.25rem; +.tab { + padding: 0.3125rem 0.625rem; + border-radius: 31.21875rem; + background: #f0f4ff; + color: #5b6b8b; + transition: all 0.2s ease; } -.tabs { display: flex; gap: 0.5rem; margin-top: 0.4375rem; +.tab.active { + background: rgba(76, 141, 255, 0.18); + color: #3467d6; + box-shadow: inset 0 0 0 0.0625rem rgba(76, 141, 255, 0.45); } -.tab { padding: 0.375rem 0.5625rem; border-radius: 31.21875rem; background: #f4f4f4; color: #666; +.summary { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(7.5rem, 1fr)); + gap: 0.375rem; } -.tab.active { background: #1aad19; color: #fff; +.summary-item { + background: #f7f9fc; + border-radius: 0.5rem; + padding: 0.625rem; + display: flex; + flex-direction: column; + gap: 0.3125rem; } -.summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.25rem; margin-top: 0.4375rem; +.summary-item .label { + font-size: 0.75rem; + color: #6e7a96; } -.summary .item { background: #fff; border-radius: 0.375rem; padding: 0.5rem; +.summary-item .value { + font-size: 1rem; + font-weight: 700; + color: #1f2a44; } -.summary .label { font-size: 0.6875rem; color: #888; +.card { + background: #fff; + border-radius: 0.5625rem; + padding: 0.625rem; + box-shadow: 0 0.25rem 0.625rem rgba(31, 42, 68, 0.08); + display: flex; + flex-direction: column; + gap: 0.4375rem; } -.summary .value { display: block; margin-top: 0.25rem; font-weight: 700; color: #333; +.row-head { + display: flex; + justify-content: space-between; + align-items: flex-start; } -.card { margin-top: 0.5rem; background: #fff; border-radius: 0.375rem; padding: 0.5rem; +.row-title { + display: flex; + flex-direction: column; + gap: 0.1875rem; } -.row-head { display: flex; align-items: center; gap: 0.375rem; +.title { + font-size: 0.9375rem; + font-weight: 700; + color: #1f2a44; } -.thumb { width: 2.25rem; height: 2.25rem; border-radius: 0.25rem; background: #f2f2f2; +.subtitle { + font-size: 0.75rem; + color: #6e7a96; } -.title { font-size: 0.875rem; font-weight: 700; +.row-body { + display: flex; + flex-wrap: wrap; + gap: 0.375rem 0.75rem; } -.row-body { margin-top: 0.3125rem; color: #666; +.metric { + display: flex; + gap: 0.25rem; + align-items: center; + background: #f4f6fb; + border-radius: 0.375rem; + padding: 0.3125rem 0.5rem; } +.metric-label { + font-size: 0.75rem; + color: #6e7a96; +} +.metric-value { + font-size: 0.875rem; + color: #1f2a44; + font-weight: 600; +} +.empty { + text-align: center; + padding: 2.5rem 0; + color: #9aa4be; + font-size: 0.8125rem; +} +.loading { + text-align: center; + padding: 1.25rem 0; + color: #5b6b8b; + font-size: 0.75rem; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/pages/supplier/form.css b/frontend/unpackage/dist/dev/app-plus/pages/supplier/form.css index f7853ec..021df12 100644 --- a/frontend/unpackage/dist/dev/app-plus/pages/supplier/form.css +++ b/frontend/unpackage/dist/dev/app-plus/pages/supplier/form.css @@ -1,15 +1,66 @@ - -.page { padding-bottom: 4.375rem; +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding-bottom: 4.375rem; } -.field { display:flex; justify-content: space-between; padding: 0.6875rem 0.75rem; background:#fff; border-bottom:0.03125rem solid #eee; +.field { + display: flex; + justify-content: space-between; + padding: 0.6875rem 0.75rem; + background: #ffffff; + border-bottom: 0.03125rem solid #e5e7eb; } -.label { color:#666; +.label { + color: #444; } -.value { color:#333; text-align: right; flex: 1; +.value { + color: #111; + text-align: right; + flex: 1; } -.textarea { padding: 0.5rem 0.75rem; background:#fff; margin-top: 0.375rem; +.textarea { + padding: 0.5rem 0.75rem; + background: #ffffff; + margin-top: 0.375rem; } -.bottom { position: fixed; left:0; right:0; bottom:0; background:#fff; padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); box-shadow: 0 -0.125rem 0.375rem rgba(0,0,0,0.06); -} -.primary { width: 100%; background: linear-gradient(135deg, #A0E4FF 0%, #17A2C4 100%); color:#fff; border-radius: 31.21875rem; padding: 0.625rem 0; +.bottom { + position: fixed; + left: 0; + right: 0; + bottom: 0; + background: #ffffff; + padding: 0.5rem 0.75rem calc(env(safe-area-inset-bottom) + 0.5rem); + box-shadow: 0 -0.125rem 0.375rem rgba(0, 0, 0, 0.1); } +.primary { + width: 100%; + background: #4C8DFF; + color: #fff; + border-radius: 31.21875rem; + padding: 0.625rem 0; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/home.png b/frontend/unpackage/dist/dev/app-plus/static/icons/home.png new file mode 100644 index 0000000..fb6f87c Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/home.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-account-male-100.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-account-male-100.png new file mode 100644 index 0000000..f84b581 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-account-male-100.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-close-48.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-close-48.png new file mode 100644 index 0000000..c5fdf22 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-close-48.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-dollar-ethereum-exchange-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-dollar-ethereum-exchange-50.png new file mode 100644 index 0000000..3363ebf Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-dollar-ethereum-exchange-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-expenditure-64.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-expenditure-64.png new file mode 100644 index 0000000..fa3b0f2 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-expenditure-64.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-graph-report-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-graph-report-50.png new file mode 100644 index 0000000..3e7ea3c Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-graph-report-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-login-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-login-50.png new file mode 100644 index 0000000..6c97267 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-login-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-mitt-24.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-mitt-24.png new file mode 100644 index 0000000..441ac35 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-mitt-24.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-more-64.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-more-64.png new file mode 100644 index 0000000..6d33aec Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-more-64.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-more-details-100.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-more-details-100.png new file mode 100644 index 0000000..9f305a7 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-more-details-100.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-profile-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-profile-50.png new file mode 100644 index 0000000..899a1db Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-profile-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-profit-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-profit-50.png new file mode 100644 index 0000000..4aac46f Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-profit-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-purchase-order-100.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-purchase-order-100.png new file mode 100644 index 0000000..a163304 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-purchase-order-100.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-return-purchase-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-return-purchase-50.png new file mode 100644 index 0000000..6c60ada Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-return-purchase-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-shopping-cart-100.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-shopping-cart-100.png new file mode 100644 index 0000000..0235cb0 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-shopping-cart-100.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-supplier-50.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-supplier-50.png new file mode 100644 index 0000000..8c4d072 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-supplier-50.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-vip-48 (1).png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-vip-48 (1).png new file mode 100644 index 0000000..92cb134 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-vip-48 (1).png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-vip-48.png b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-vip-48.png new file mode 100644 index 0000000..2dc28ac Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/icons8-vip-48.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/product.png b/frontend/unpackage/dist/dev/app-plus/static/icons/product.png new file mode 100644 index 0000000..89c2bec Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/product.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/undraw_visual-data_1eya.png b/frontend/unpackage/dist/dev/app-plus/static/icons/undraw_visual-data_1eya.png new file mode 100644 index 0000000..eecc141 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/undraw_visual-data_1eya.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/webwxgetmsgimg.jpg b/frontend/unpackage/dist/dev/app-plus/static/icons/webwxgetmsgimg.jpg new file mode 100644 index 0000000..e522cec Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/webwxgetmsgimg.jpg differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/webwxgetmsgimg.png b/frontend/unpackage/dist/dev/app-plus/static/icons/webwxgetmsgimg.png new file mode 100644 index 0000000..05b03ca Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/webwxgetmsgimg.png differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/配件审核_1758986693151.xlsx b/frontend/unpackage/dist/dev/app-plus/static/icons/配件审核_1758986693151.xlsx new file mode 100644 index 0000000..91d534b Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/配件审核_1758986693151.xlsx differ diff --git a/frontend/unpackage/dist/dev/app-plus/static/icons/配件审核_1758987353730.xlsx b/frontend/unpackage/dist/dev/app-plus/static/icons/配件审核_1758987353730.xlsx new file mode 100644 index 0000000..b421396 Binary files /dev/null and b/frontend/unpackage/dist/dev/app-plus/static/icons/配件审核_1758987353730.xlsx differ diff --git a/frontend/unpackage/dist/dev/cache/.app-plus/tsc/app-android/.tsbuildInfo b/frontend/unpackage/dist/dev/cache/.app-plus/tsc/app-android/.tsbuildInfo index 561dd6e..02d440a 100644 --- a/frontend/unpackage/dist/dev/cache/.app-plus/tsc/app-android/.tsbuildInfo +++ b/frontend/unpackage/dist/dev/cache/.app-plus/tsc/app-android/.tsbuildInfo @@ -1 +1 @@ -{"program":{"fileNames":["../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/boolean.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/console.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/date.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/error.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/json.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/map.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/math.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/number.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/regexp.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/set.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/string.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/timers.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/utsjsonobject.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/arraybuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/float32array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/float64array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/int8array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/int16array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/int32array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint8array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint8clampedarray.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint16array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint32array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/dataview.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/iterable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/common.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/shims.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es5.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.collection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.promise.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.symbol.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.symbol.wellknown.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.iterable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2018.asynciterable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2018.asyncgenerator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2018.promise.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2020.symbol.wellknown.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/hbuilder-x/hbuilderx.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/hbuilder-x/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/shared/dist/shared.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/reactivity/dist/reactivity.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/runtime-core/dist/runtime-core.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/vue.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/shims/common.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/shims/app-android.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/array.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/type.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/typevariable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/object.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/annotation/annotation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/annotatedelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/genericdeclaration.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/serializable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/proxy/type.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketaddress.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/proxy.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/comparable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/uri.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/autocloseable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/closeable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/flushable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/outputstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/inputstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/url.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/package.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/accessibleobject.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/member.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/field.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/parameter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/executable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/constructor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/consumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/iterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/iterable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/assequence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/binarysearchby.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/elementat.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/groupingby.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/iterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/withindex.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/number.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/float.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/sequence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/asiterable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/assequence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/distinct.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/elementat.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/filterindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/filterisinstance.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/filternotnull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/flatmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/flatmapindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/flatten.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/generatesequence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/groupingby.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/ifempty.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/minus.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/oneach.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/oneachindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/requirenonulls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningfold.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningfoldindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningreduce.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningreduceindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/shuffled.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/sorted.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/sortedwith.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/zip.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/zipwithnext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/double.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubleconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/ofprimitive.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/ofdouble.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/ofint.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/oflong.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/todoublefunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/tointfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/tolongfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/function.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/comparator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/iterable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/cloneable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractcollection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/hashset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/map/entry.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/bifunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractmap/simpleentry.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractmap/simpleimmutableentry.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/biconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/hashmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/linkedhashmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function1.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function2.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function0.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/sortedmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/map.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/intstream/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intunaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator/ofdouble.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/long.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator/oflong.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/integer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator/ofint.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/supplier.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/runnable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/doublestream/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublefunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/doublesummarystatistics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubleunaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublebinaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/longstream/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longsupplier.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longbinaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optionallong.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longpredicate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/longsummarystatistics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longtodoublefunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longtointfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/stream/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/unaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/collector/characteristics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/binaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/collector.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/predicate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optional.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/basestream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/stream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longunaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/objlongconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/longstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubletointfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/objdoubleconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubletolongfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublesupplier.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublepredicate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/doublestream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optionaldouble.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intbinaryoperator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/objintconsumer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intsupplier.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optionalint.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intpredicate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/inttodoublefunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/inttolongfunction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/intsummarystatistics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/intstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/charsequence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/appendable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function3.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/collections/grouping.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/random/random/default/serialized.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/internal/defaultconstructormarker.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/random/random/default.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/random/random.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/navigableset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/treeset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/linkedhashset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/set.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/sortedset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/random.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/listiterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractlist.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/randomaccess.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/arraylist.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intrange/companion.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/openendrange/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/openendrange.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intprogression/companion.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/internal/markers/kmappedmarker.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/collections/intiterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intprogression.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/closedrange/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/closedrange.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intrange.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/list.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/invoke/typedescriptor/ofmethod.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/invoke/typedescriptor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/invoke/typedescriptor/offield.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/method.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/recordcomponent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/guard.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/permission.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/domaincombiner.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/accesscontrolcontext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/privilegedaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/privilegedexceptionaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/javax/security/auth/subject.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/principal.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/enumeration.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/classloader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certificate/certificaterep.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/key.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/publickey.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/file/copyrecursively.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/file/readlines.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/byteorder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/buffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/readable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/charbuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/floatbuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/doublebuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/shortbuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/intbuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/longbuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/bytebuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/category.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/filteringmode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/isocountrycode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/languagerange.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/charset/charset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/path/whenmappings.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/path/copytorecursively.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/path/pathwalkoption.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/timeunit.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchservice.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchevent/kind.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchevent/modifier.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchkey.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/linkoption.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/void.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filevisitresult.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/filteroutputstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/printstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/stacktraceelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/throwable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/exception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/ioexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporal.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalamount.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/duration.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalunit.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/resolverstyle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalfield.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/valuerange.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalaccessor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalquery.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/textstyle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zone/zoneoffsettransition.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zone/zonerules.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zoneid.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporaladjuster.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zoneoffset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/month.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/chronofield.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/era.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/attributedcharacteriterator/attribute.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/format/field.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/fieldposition.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/characteriterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/attributedcharacteriterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/stringbuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/parseposition.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/format.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/formatstyle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/decimalstyle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/datetimeformatter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronoperiod.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronolocaldate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronozoneddatetime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronolocaldatetime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/instantsource.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/clock.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronology.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/period.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/isoera.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/abstractchronology.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/isochronology.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/dayofweek.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/localdate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/offsetdatetime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/offsettime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/localtime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/localdatetime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zoneddatetime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/instant.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/filetime.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/basicfileattributes.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filevisitor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/openoption.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/fileattribute.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/completionhandler.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/filechannel/mapmode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/any.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/consumeeach.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/consumes.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/consumesall.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/count.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/distinct.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/distinctby.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/drop.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/dropwhile.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/elementat.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/elementatornull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filterindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filternot.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filternotnull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filternotnullto.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/first.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/firstornull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/flatmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/indexof.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/last.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/lastindexof.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/lastornull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/map.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/mapindexed.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/maxwith.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/minwith.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/none.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/requirenonulls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/sendblocking.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/single.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/singleornull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/take.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/takewhile.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tochannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tocollection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tolist.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tomap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/trysendblocking.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/withindex.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/zip.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/key.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/element/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/element.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/plus.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/continuation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/disposablehandle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/opdescriptor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/atomicop.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/atomicdesc.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/makecondaddop.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/tostring.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/atomic/atomicreferencefieldupdater.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/abstractatomicdesc.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/prepareop.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/selects/selectinstance.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/selects/selectclause1.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel/onreceiveornull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel/receiveornull.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/runtimeexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/illegalstateexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/cancellationexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/channeliterator/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/channeliterator/next0.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/channeliterator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/sendchannel/defaultimpls.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/selects/selectclause2.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/sendchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/readablebytechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/scatteringbytechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/writablebytechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/bytechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/seekablebytechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/interruptiblechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/abstractinterruptiblechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/mappedbytebuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/gatheringbytechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/filechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/filelock.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/asynchronouschannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/future.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/executor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/callable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/executorservice.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/asynchronousfilechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/accessmode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/directorystream/filter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/directorystream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filestore.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/copyoption.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/spi/filesystemprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/pathmatcher.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/userprincipal.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/groupprincipal.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/userprincipallookupservice.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filesystem.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/path.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filetreewalk/walkstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filetreewalk/directorystate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filewalkdirection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filetreewalk.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filepathcomponents.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/file.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/writer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/printwriter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/reader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/dictionary.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/hashtable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/properties.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/provider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certificate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certpath/certpathrep.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certpath.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/date.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/timestamp.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/codesigner.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/codesource.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/permissioncollection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/protectiondomain.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/class.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/activity/screencapturecallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keyevent/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keyevent/dispatcherstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/ibinder/deathrecipient.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/iinterface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/filedescriptor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/ibinder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/sizef.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/basebundle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/persistablebundle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/byte.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/sparsearray.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/size.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/bundle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/arraymap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/sparsebooleanarray.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelable/creator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelable/classloadercreator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputdevice/motionrange.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensormanager/dynamicsensorcallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensorlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/memoryfile.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/hardwarebuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messenger.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/message.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/handler/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messagequeue/idlehandler.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messagequeue/onfiledescriptoreventlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messagequeue.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/thread/state.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/thread/uncaughtexceptionhandler.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/thread.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/printer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/looper.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/handler.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensordirectchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/triggerevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/triggereventlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensorevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensoreventlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensormanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/light.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightstate/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsrequest/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsrequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsmanager/lightssession.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsmanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keycharactermap/keydata.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/androidruntimeexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keycharactermap/unavailableexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keycharactermap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrationeffect/composition.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrationeffect.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/combinedvibration/parallelcombination.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/combinedvibration.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/audioattributes.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrationattributes.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibratormanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/batterystate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputdevice.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keyevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/context/bindserviceflags.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/applicationinfoflags.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/componentenabledsetting.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/componentinfoflags.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/androidexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/namenotfoundexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/onchecksumsreadylistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/packageinfoflags.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/property.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/resolveinfoflags.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/insets.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rect.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageiteminfo/displaynamecomparator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/attributeset.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/xmlresourceparser.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/drawable/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelfiledescriptor/filedescriptordetachedexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelfiledescriptor/oncloselistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/networkinterface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/inetaddress.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketoption.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/selector.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/abstractselector.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/protocolfamily.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/datagrampacket.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/datagramsocket.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/networkchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/membershipkey.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/multicastchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/datagramchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketoptions.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketimpl.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketimplfactory.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/serversocket.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/serversocketchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/pipe/sinkchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/pipe/sourcechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/pipe.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/selectorprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/selectionkey.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/selectablechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/abstractselectablechannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/socketchannel.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socket.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelfiledescriptor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/fileoutputstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/fileinputstream.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/assetfiledescriptor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/assetmanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontvariationaxis.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/typeface/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rectf.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale/availabletype.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale/category.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/localelist.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/fontmetrics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/align.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/cap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/fontmetricsint.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/join.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/style.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/direction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/filltype.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/op.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/whenmappings.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/copytorecursively.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/matrix/scaletofit.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/matrix.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/patheffect.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/shader/tilemode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/shader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorfilter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/maskfilter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/blendmode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/xfermode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/font.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontfamily/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontfamily.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontstyle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/typeface/customfallbackbuilder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/typeface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/resources/notfoundexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/canvas/edgetype.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/canvas/vertexmode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/text/measuredtext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/color.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/mesh.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/region/op.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/region.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmap/compressformat.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmap/config.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/displaymetrics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/picture.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/adaptation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/renderintent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/connector.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/model.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/named.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/rgb/transferparameters.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/rgb.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/gainmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmap.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/ninepatch.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/outline.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/porterduff/mode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/recordingcanvas.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmapshader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/runtimeshader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rendereffect.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rendernode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawfilter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/canvas.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/movie.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/om/overlayidentifier.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/om/overlayinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/loader/assetsprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/loader/resourcesprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/loader/resourcesloader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/typedvalue.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/configuration.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/resources.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/colorstatelist.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/typedarray.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/resources/theme.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/drawable/constantstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmapfactory/options.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/drawable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageiteminfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/permissioninfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/versionedpackage.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intent/shortcuticonresource.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/net/uri/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/net/uri.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textclassifier/entityconfig/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textclassifier/entityconfig.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/request/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/request.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/textlink.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/accessibilityaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/collectioninfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/collectioniteminfo/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/collectioniteminfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/extrarenderinginfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/rangeinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/touchdelegateinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitywindowinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilityrecord.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilityevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/layoutanimationcontroller/animationparameters.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup/layoutparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup/marginlayoutparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup/onhierarchychangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contextmenu/contextmenuinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contextmenu.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/point.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/onbackinvokedcallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/onbackinvokeddispatcher.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewparent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimation/bounds.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsets/side.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsets/type.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displaycutout/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displaycutout.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/roundedcorner.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displayshape.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsets.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimation/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/timeinterpolator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/interpolator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewoverlay.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/layouttransition/transitionlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/animator/animatorlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/animator/animatorpauselistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/animator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/layouttransition.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/pointericon.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/motionevent/pointercoords.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/motionevent/pointerproperties.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/motionevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationspec.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationcapability.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/clipdescription.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/dragevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/animation/description.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/transformation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/animation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/animation/animationlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewstructure/htmlinfo/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewstructure/htmlinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/autofill/autofillvalue.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/autofill/autofillid.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewstructure.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/layoutanimationcontroller.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewmanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/accessibilitydelegate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/abssavedstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/basesavedstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/measurespec.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onapplywindowinsetslistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onattachstatechangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/oncapturedpointerlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onclicklistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/oncontextclicklistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/oncreatecontextmenulistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/ondraglistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onfocuschangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/ongenericmotionlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onhoverlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onkeylistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onlayoutchangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onlongclicklistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onscrollchangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onsystemuivisibilitychangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/ontouchlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onunhandledkeyeventlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/touchdelegate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/property.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/attachedsurfacecontrol/onbuffertransformhintchangedlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/trustedpresentationthresholds.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/transactioncommittedlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/syncfence.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/transaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/attachedsurfacecontrol.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/statelistanimator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/display/hdrcapabilities.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/display/mode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/display/deviceproductinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/display.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetscontroller/oncontrollableinsetschangedlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/cancellationsignal/oncancellistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/cancellationsignal.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimationcontroller.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimationcontrollistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetscontroller.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surface/outofresourcesexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/surfacetexture/onframeavailablelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/surfacetexture/outofresourcesexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/surfacetexture.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/scrollcapturesession.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/scrollcapturecallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/longsparsearray.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilityeventsource.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/onreceivecontentlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowid/focusobserver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowid.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/viewtranslationcallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationresponsevalue/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationresponsevalue.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/viewtranslationresponse/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/viewtranslationresponse.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/inputtype.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/surroundingtext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/editorinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/completioninfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/textsnapshot.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/correctioninfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/extractedtextrequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/handwritinggesture.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/previewablehandwritinggesture.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/extractedtext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/textattribute/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/textattribute.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/inputcontentinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/inputconnection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/locusid.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentcapture/contentcapturecontext/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentcapture/contentcapturecontext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentcapture/contentcapturesession.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displayhash/displayhash.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displayhash/displayhashresultcallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/style/updateappearance.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/textpaint.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/style/characterstyle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/style/clickablespan.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/textlinkspan.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/spannable/factory.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/spanned.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/spannable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/clipdata/item.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/icon/ondrawableloadedlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/icon.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentresolver/mimetypeinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncadaptertype.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncstatusobserver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/chararraybuffer.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/contentobserver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/datasetobserver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/cursor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentproviderresult.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/accounts/account.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentprovider/pipedatawriter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/applicationinfo/displaynamecomparator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/uuid.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/applicationinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/componentinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/patternmatcher.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/pathpermission.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/providerinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/attributionsource.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/componentcallbacks.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/componentcallbacks2.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/short.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/boolean.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentvalues.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentproviderclient.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncrequest/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncrequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentresolver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/clipdata.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/activityinfo/windowlayout.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/activityinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/configurationinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/featureinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/featuregroupinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/instrumentationinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/serviceinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/attribution.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/signature.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/signinginfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentsender/onfinished.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentsender/sendintentexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/userhandle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentsender.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/installsourceinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/permissiongroupinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentfilter/authorityentry.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentfilter/malformedmimetypeexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentfilter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/moduleinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/resolveinfo/displaynamecomparator.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/resolveinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/installconstraints/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/installconstraints.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/installconstraintsresult.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/preapprovaldetails/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/preapprovaldetails.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/session.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/sessioncallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/sessioninfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/sessionparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/changedpackages.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitecursordriver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqliteclosable.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqliteprogram.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitequery.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase/cursorfactory.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/databaseerrorhandler.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase/openparams/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase/openparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitetransactionlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitestatement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/serviceconnection.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/broadcastreceiver/pendingresult.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/broadcastreceiver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/sharedpreferences/editor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/sharedpreferences/onsharedpreferencechangelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/sharedpreferences.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/context.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/componentname.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuitem/onactionexpandlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuitem/onmenuitemclicklistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionprovider/visibilitylistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuitem.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/submenu.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menu.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionmode/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionmode/callback2.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuinflater.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionmode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/scene.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager/badtokenexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager/invaliddisplayexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager/layoutparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmetrics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater/factory.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater/factory2.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pendingintent/canceledexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pendingintent/onfinished.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pendingintent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transition/epicentercallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transition/transitionlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/pathmotion.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transition.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transitionmanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/searchevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contextparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contextwrapper.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contextthemewrapper.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/application/activitylifecyclecallbacks.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/assist/assistcontent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/sharedelementcallback/onsharedelementsreadylistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/sharedelementcallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/application/onprovideassistdatalistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/application.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/framelayout/layoutparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/framelayout.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/splashscreenview.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/splashscreen/onexitanimationlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/splashscreen.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/remoteaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/rational.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pictureinpictureparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/framemetrics.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window/onframemetricsavailablelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window/onrestrictedcaptionareachangedlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder/badsurfacetypeexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder/callback2.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediacontroller/playbackinfo.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/mediadescription/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/mediadescription.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/rating.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/mediametadata.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/playbackstate/customaction/builder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/playbackstate/customaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/playbackstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediacontroller/callback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediasession/token.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/resultreceiver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediacontroller.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater/filter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager/backstackentry.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragment/instantiationexception.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragment/savedstate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/loader/onloadcanceledlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/loader/onloadcompletelistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/loader.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/loadermanager/loadercallbacks.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/loadermanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragment.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager/fragmentlifecyclecallbacks.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager/onbackstackchangedlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmenttransaction.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/draganddroppermissions.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pictureinpictureuistate.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/outcomereceiver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/layoutparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/toolbar/layoutparams.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/toolbar/onmenuitemclicklistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/toolbar.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/onmenuvisibilitylistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/onnavigationlistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/tab.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/tablistener.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/adapter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/spinneradapter.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/taskstackbuilder.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/request.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/prompt.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/abortvoicerequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/commandrequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/completevoicerequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/confirmationrequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/pickoptionrequest/option.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/pickoptionrequest.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/activity.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/utsactivitycallback.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/utsandroid.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/utsandroidhookproxy.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-js/utsjs.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/webviewstyles.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/viewtotempfilepathoptions.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/drawablecontext.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/snapshotoptions.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/cssstyledeclaration.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/domrect.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicallbackwrapper.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/path2d.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/canvasrenderingcontext2d.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unianimationplaybackevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unianimation.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unisafeareainsets.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipage.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iunielement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unievent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipageevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewservicemessageevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicustomevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewmessageevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewloadingevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewloadevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewerrorevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/nodedata.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/pagenode.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unielement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewdownloadevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewcontentheightchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/univideoelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitouchevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextarealinechangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextareafocusevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextareablurevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitabselement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitabtapevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniswipertransitionevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniswiperchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniswiperanimationfinishevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unistopnestedscrollevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unistartnestedscrollevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniscrolltoupperevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniscrolltolowerevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniscrollevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unirichtextitemclickevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniresizeobserver.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniresizeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unirefresherevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniprovider.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipointerevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipagescrollevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unidocument.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/asyncapiresult.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iunierror.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unierror.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/nativeloadfontfaceoptions.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipagebody.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uninativepage.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipagemanager.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uninestedprescrollevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uninativeapp.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputkeyboardheightchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputfocusevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputconfirmevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputblurevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniimageloadevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniimageerrorevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniformcontrol.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniformcontrolelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicustomelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicanvaselement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/sourceerror.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniaggregateerror.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/utsandroidhookproxy.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iuninativeviewelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iuniform.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/inavigationbar.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/checkboxgroupchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/pickerviewchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/progressactiveendevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/radiogroupchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/sliderchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/switchchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/pickerchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/pickercolumnchangeevent.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/uninavigatorelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/uniclouddbelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/uniformelement.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/lifecycle.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/base/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/env/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-actionsheet/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-actionsheet/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-addphonecontact/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-addphonecontact/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-arraybuffertobase64/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-arraybuffertobase64/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-authentication/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-authentication/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-barcode-scanning/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-barcode-scanning/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-base64toarraybuffer/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-base64toarraybuffer/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-chooselocation/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-chooselocation/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-choosemedia/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-choosemedia/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-clipboard/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-clipboard/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createinneraudiocontext/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createinneraudiocontext/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createintersectionobserver/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createintersectionobserver/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createrequestpermissionlistener/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createrequestpermissionlistener/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createselectorquery/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createselectorquery/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createwebviewcontext/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createwebviewcontext/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-dialogpage/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-dialogpage/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-event/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-event/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-exit/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-exit/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-file/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-file/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-filesystemmanager/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-filesystemmanager/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getaccessibilityinfo/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getaccessibilityinfo/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappauthorizesetting/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappauthorizesetting/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappbaseinfo/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappbaseinfo/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getbackgroundaudiomanager/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getbackgroundaudiomanager/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getdeviceinfo/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getdeviceinfo/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getelementbyid/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getelementbyid/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getenteroptionssync/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getenteroptionssync/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlaunchoptionssync/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlaunchoptionssync/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlocation-tencent-uni1/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlocation-tencent-uni1/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getnetworktype/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getnetworktype/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getperformance/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getperformance/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getprovider/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getprovider/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsysteminfo/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsysteminfo/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsystemsetting/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsystemsetting/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-installapk/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-installapk/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-interceptor/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-interceptor/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-keyboard/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-keyboard/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-loadfontface/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-loadfontface/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-system/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-system/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-tencent/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-tencent/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-makephonecall/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-makephonecall/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-media/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-media/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-modal/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-modal/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-navigationbar/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-navigationbar/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-network/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-network/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth-huawei/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth-huawei/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-openappauthorizesetting/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-openappauthorizesetting/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-opendocument/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-opendocument/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pagescrollto/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pagescrollto/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-alipay/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-alipay/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-huawei/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-huawei/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-wxpay/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-wxpay/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-previewimage/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-previewimage/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-privacy/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-privacy/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-prompt/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-prompt/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pulldownrefresh/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pulldownrefresh/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-recorder/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-recorder/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-requestmerchanttransfer/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-requestmerchanttransfer/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-route/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-route/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-rpx2px/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-rpx2px/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-scancode/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-scancode/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share-weixin/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share-weixin/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sharewithsystem/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sharewithsystem/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sse/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sse/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-storage/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-storage/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-tabbar/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-tabbar/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-theme/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-theme/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-virtualpayment/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-virtualpayment/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-websocket/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-websocket/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-ad/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-ad/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-crash/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-crash/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-facialverify/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-facialverify/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-map-tencent/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-map-tencent/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-push/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-push/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-secure-network/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-secure-network/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-verify/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-verify/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-camera/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-camera/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-canvas/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-canvas/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-video/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-video/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-openlocation/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-openlocation/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-compass/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-compass/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-canvas/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-canvas/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-locale/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-locale/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-accelerometer/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-accelerometer/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-getbackgroundaudiomanager/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-getbackgroundaudiomanager/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-localechange/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-localechange/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-memory/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-memory/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-preloadpage/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-preloadpage/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-createmediaqueryobserver/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-createmediaqueryobserver/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-__f__/utssdk/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-__f__/utssdk/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-map-tencent-map.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-map-tencent-global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-camera.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-camera-global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/global.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni-cloud/unicloud-db/index.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni-cloud/interface.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni-cloud/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/common.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/app.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/page.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/process.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vite.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/index.d.ts","../../../../../../../../../../软件/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/app-android.d.ts"],"fileInfos":[{"version":"1b4884e0922d24ad93952038abddda154213ad1637a9cbbca22442cc86a174ed","affectsGlobalScope":true},{"version":"87e0a7f9366dc80be7b72c6d0a6e23c4f68cd2b96c90edd3da8082bfdd237af9","affectsGlobalScope":true},{"version":"2c44751aff2b2161d0450df9812bb5114ba050a522e1d5fa67f66649d678fcb4","affectsGlobalScope":true},{"version":"68566331a40bef8710069a7f5ac951543c5653c1c3fa8cc3a54c95753abbcf7a","affectsGlobalScope":true},{"version":"173b34be3df2099c2da11fb3ceecf87e883bd64f5219c0ee7bc6add9bc812cde","affectsGlobalScope":true},{"version":"9c867cbb4270f3c93a0ffaa8840b3034033a95025cd4f6bf9989ecb7b7c54a4e","affectsGlobalScope":true},{"version":"b0d201829b0da0df7653b76f3e1ea38933081db01bfecdeada115180973ae393","affectsGlobalScope":true},{"version":"7b435c510e94d33c438626dff7d8df57d20d69f6599ba461c46fc87b8c572bce","affectsGlobalScope":true},{"version":"25f08344cf6121c92864c9f22b22ab6574001771eb1d75843006938c11f7d4ab","affectsGlobalScope":true},{"version":"91d246126d32ab82fe146f4db8e0a6800cadb14c781aec7a3ef4f20f53efcf45","affectsGlobalScope":true},{"version":"b15b894ea3a5bcdfd96e2160e10f71ea6db8563804bbaa4cdf3b86a21c7e7da0","affectsGlobalScope":true},{"version":"db491a26fb6bb04dd6c9aecbe3803dd94c1e5d3dd839ffed552ffaf4e419871a","affectsGlobalScope":true},{"version":"463cb70eebbf68046eba623ed570e54c425ea29d46d7476da84134722a6d155b","affectsGlobalScope":true},{"version":"a7cca769cf6ecd24d991ae00ac9715b012cae512f27d569513eb2e47fc8ef952","affectsGlobalScope":true},{"version":"bf3de718b9d34d05ea8b7c0172063257e7a89f1a2e15d66de826814586da7ce4","affectsGlobalScope":true},{"version":"0aca09a3a690438ac20a824d8236bfdb84e4035724e77073c7f144b18339ec65","affectsGlobalScope":true},{"version":"1acbd1d3afb34b522e43e567acf76381af1b858055f47c0ceedd858542426f0f","affectsGlobalScope":true},{"version":"e62d4c55b645f4d9b8627bdb6e04ab641d25abc48b27a68983963296fcee1300","affectsGlobalScope":true},{"version":"a5a65d5d74cac1e1e27de4adc0ab37048332d91be0fd914209ca04ccd63b4141","affectsGlobalScope":true},{"version":"5eb86cedb0d685b8c1d1b51d2892402ecd6e0cff047ba3e683bc7cbc585ebd9b","affectsGlobalScope":true},{"version":"cb4d3f49248d601600b9e5e6268c3a1925a0e3d3a6b13ff7e178924fc7763aa4","affectsGlobalScope":true},{"version":"7ce21134b8a21e2672f56ceda596d33dc08f27a9900ec068a33dd471667a0dd9","affectsGlobalScope":true},{"version":"105e17a5ad5e5fcf937f1a7412b849c67d98e17aa6ac257baf988a56be4d23de","affectsGlobalScope":true},{"version":"471ea135c34237d3fcc6918a297c21e321cd99e20ac29673506590c0e91d10d0","affectsGlobalScope":true},{"version":"6c71e7f5dcdf436e701fee0c76995e197f1b8b44ed64119881c04ad30c432513","affectsGlobalScope":true},{"version":"bfea9c54c2142652e7f2f09b7b395c57f3e7650fb2981d9f183de9eeae8a1487","affectsGlobalScope":true},{"version":"5b4344f074c83584664e93d170e99db772577f7ced22b73deaf3cfb798a76958","affectsGlobalScope":true},"db8eb85d3f5c85cc8b2b051fde29f227ec8fbe50fd53c0dc5fc7a35b0209de4a",{"version":"8b46e06cc0690b9a6bf177133da7a917969cacbd6a58c8b9b1a261abd33cb04d","affectsGlobalScope":true},{"version":"c2e5d9c9ebf7c1dc6e3f4de35ae66c635240fe1f90cccc58c88200a5aa4a227c","affectsGlobalScope":true},{"version":"c5277ad101105fbcb9e32c74cea42b2a3fbebc5b63d26ca5b0c900be136a7584","affectsGlobalScope":true},{"version":"46a47bc3acc0af133029fb44c0c25f102828995c1c633d141ac84240b68cdfad","affectsGlobalScope":true},{"version":"bf7e3cadb46cd342e77f1409a000ea51a26a336be4093ee1791288e990f3dadf","affectsGlobalScope":true},{"version":"3fb65674722f36d0cc143a1eb3f44b3ab9ecd8d5e09febcfbc0393bec72c16b5","affectsGlobalScope":true},{"version":"daf924aae59d404ac5e4b21d9a8b817b2118452e7eb2ec0c2c8494fb25cb4ab3","affectsGlobalScope":true},{"version":"120ddb03b09c36f2e2624563a384123d08f6243018e131e8c97a1bb1f0e73df5","affectsGlobalScope":true},{"version":"0daef79ef17e2d10a96f021096f6c02d51a0648514f39def46c9a8a3018196be","affectsGlobalScope":true},{"version":"571605fec3d26fc2b8fbffb6aa32d2ef810b06aa51c1b0c3c65bbc47bd5b4a5e","affectsGlobalScope":true},{"version":"51536e45c08d8b901d596d8d48db9ab14f2a2fd465ed5e2a18dda1d1bae6fe5a","affectsGlobalScope":true},"897a4b80718f9228e992483fefa164d61e78548e57fbf23c76557f9e9805285e","ab2680cfdaea321773953b64ec757510297477ad349307e93b883f0813e2a744",{"version":"8a931e7299563cecc9c06d5b0b656dca721af7339b37c7b4168e41b63b7cfd04","affectsGlobalScope":true},"7da94064e1304209e28b08779b3e1a9d2e939cf9b736c9c450bc2596521c417f","7cce3fa83b9b8cad28998e2ffa7bb802841bb843f83164ba12342b51bf3ae453","dc44a5ac4c9a05feede6d8acf7e6e768ca266b1ce56030af1a3ab4138234bf45",{"version":"451f4c4dd94dd827770739cc52e3c65ac6c3154ad35ae34ad066de2a664b727a","affectsGlobalScope":true},{"version":"2f2af0034204cd7e4e6fc0c8d7a732152c055e030f1590abea84af9127e0ed46","affectsGlobalScope":true},{"version":"0c26e42734c9bf81c50813761fc91dc16a0682e4faa8944c218f4aaf73d74acf","affectsGlobalScope":true},{"version":"af11b7631baab8e9159d290632eb6d5aa2f44e08c34b5ea5dc3ac45493fffed5","affectsGlobalScope":true},{"version":"9ae2c80b25e85af48286ea185227d52786555ac3b556b304afd2226866a43e2a","affectsGlobalScope":true},{"version":"b2bd4feee4a879f0ec7dfaf3ea564644f708dcfef8ef850a069877bd0dc29bdc","affectsGlobalScope":true},"da82348fbea425ebf7201043e16ab3223a8275507fbddd56d41c2d940b3088e3","6ef32eb62bebf8fcb1c46fb337bf7b71bcb2156c939b1fc8ecc95031fda524ec","90120973d7759d9eb9a3f21f32188e1e11b29f281831b250504b3115c32bb8db","66565de38b3ede65cbb93df52cbd1373ba0af3e0a0cdcf5aa8e8e359a65e6054","26eaf2db7f66e70d2fc327f9ac8693c2806c7b433cb5da5d4b0cd3070b8a8529","4955e566886d9477bff3b32fc373e8cc15f824909069f472d20acd6b0dd75fd3","c342ae063a7c7d37aecb3d8bcc5b4ebf087a67be6c6189985ec96675fdf430e9","550178d99241eb541fc8a25d80d9cb667d96ebe685f1c1c98907f4caab49cfee","471000b5f93ae5077a5a7c45f69fd5a05a53874e156631d18f68c325e17f493d","0ce6f81b6ec2822d2500d5425a17436a3e18e422747a7fed1d6ae85d43912dd3",{"version":"009285985c380cc60693b2e5f13222a3193c0bbe06a5868a66cda52a5bc879f6","affectsGlobalScope":true},"a98d682390a4414a1952de79cd1ff4d454fd1728c0eec0b3882f3c646eb707a7",{"version":"c197d7bb1a50b2b1001a19aea7560b192ea04ca45295538898cea732ad1430ec","affectsGlobalScope":true},"4b1cb3ca7bab4a67110e6b7f6d82186c8cd817de53503610e5ea183f51400d88","471395005d84cdd5cd68955940b5c18da09198326e64bd87b6fd6bf78b1b75ef","37b5295487a3f7e704ab81e5676f17c74f1737d21da3315453bbb3c44b6c7b4f","acc08a2d267c697e34a96d27d8c69e7bf66c9d70fc9e9a3c0710ee6c8b59bf06","c54f1e4b0edff3ef7b5d421ed9d9b12215c23c5707830a15c914a57af3d4d8c4",{"version":"c9b287642c4b156a56b81cd1b2fb17208ac93e1906f64603f9b4f89652c3ac39","affectsGlobalScope":true},"0c34c0d35f33f398a590ca4a6bcc162e32873a942d8c040b394d86321e2db521","0912310adac9d4b59eb8370994b0260035b3e52a64ec8cd27a32c9c5d56f9a37","b20f9fd12d0f20b756c4407195037d0e6df994b18ab7ba117a1645f79dc8146a","097ff4639376fd52ce9f658560ad85ea4dfbcb80e1f0c38baeaf2f9f24edadce","3a077826173de93d4275960a32e5ecbeca73cec6817feeeebbfe32dcdc19f69d","a9499471d2c97e01b4c47cd990a7e59f90371dc6ff5044073063102ef10aa2d7","25952a12ebbf9ee23e92f3d0273c7c8f1b962379d9b9a8f8656c00ab5bbb6b28",{"version":"ae0e01c62ba1a1c649851b7fd53c73ecb34928f08bb61c67b76696242b65e510","affectsGlobalScope":true},"9bdcdd8c1c888de8e99bba6c66ebebe4f9c3b85f3c159dfed4c0a60aabcfb359","a864eeac83c751a0de401747346416c5abb6c2b64e8292f9238786650beee874","bfa98bf77f78e5ff08fdfed7ed3e8d94493794c1d0ae88a083a6c301418f507e","48b2ca9ba65a7dccebd12e4430bec879e68789b1a9f6328772175d4246689513","84cdab2632d7b88822afa1056cba80c8bc6d5706efa0336646dd535c9b859c97","55e92954e07a35ea79589985ed517976140ee5948288f5c0cef89202f748686d","86e75445bc6bf503e718a28b5deefcf5eaedc7d7442569b33e555c54e3120bed",{"version":"6eebe91a65a022376c9d83adc71affbe3a8738a23f88079a61c5cbaa90ffccda","affectsGlobalScope":true},{"version":"d0699ff9dd5c078015624b1bf923aba8ec2c8d5c7dcf866c7af65f328348aea2","affectsGlobalScope":true},"9377424a30a137dd21c7b300c20eb35bc4b18a7e0c68a19dcfb55462572f4ae4","1a45a2fbb039686a96c304fbe704157de2f3b938cc50e9c8c4bcca0ceb0de840","a864eeac83c751a0de401747346416c5abb6c2b64e8292f9238786650beee874","72629fa2f66fc7113a777cb09117e22b611e83e9099b2b814fadfff32305d932","48b2ca9ba65a7dccebd12e4430bec879e68789b1a9f6328772175d4246689513","912a048453180016af2f597f9fd209b2ef96d473c1610f6be3d25f5a2e9588d3","80fb74ae1b5713532effc5bbf01789379563f65591a55eb1ae93a006009945fc","5ca437d9f0411958f2190f19554d3461926615e1e7a5e9fe8a8bff2834b423cb","135ca31f7cd081ce0321f1536461626134be5ae8e34ef5365ed0a60ec4965cf2","e35fb080eb67373cf41a5cd2f80820c6610d9bbbd420516945a2ae9d13cddb99","e30ef09059535d6a4a6c2e972710f17abe1d9ed9ed3353c22f007bc733d24499","7cf25154e3ff5e0c296d1c2e8edd595cbf88674c5c1edee5bd1d395103caa2be","84cdab2632d7b88822afa1056cba80c8bc6d5706efa0336646dd535c9b859c97","01a225ee75e5bb89a103639d825be5f7e7b993625c3503e9ed23ca59faceef0e","b2821ba038982e2234b8b1862a3abd93dab22e5a9ccb96388f4e49c8a60493e0","df4d4e7211100ac276830cd3c93e75eceb6da94c8ed22df9f9c296abf283a9c7","1ff1b7a4d416e891c46924d0b540573fd09c6ce17030968778268ab33c0d7562","a8cbca97e5d078c9a16c8242de1860baafd720dcc541a1201751444b69acac18","52d444c5ab7d9dc6b01f6aee7c97a7e14370fdc2ac482ef6903a044caf58e898","5630a60d7a15f9f4887879fc0ebfa80436a631f7e98b6613149333b0c1928649","c5b7d50d5fd3e45905ae1c2e6f39296e138b7c8b42af696b58091a20fea98de4","35841b91f9336761af471a2b26d414e94c779592a33a4589daa6b3036fb2841e","7691a1558a2e973614d2baf0720451901e656f1f4dad4fc635ffcfab75ace090","f46b92a70beb1f076e300ab20e0e9a9e3f011f2b690211b754c662537e2eb3ae","536b2c25d25ce5003998f0c4e1c6aa088f07deee5a8fc7e3b95e9716097b3a82","f341bd294158b62cec7f2414f9cb899c7cbcc4dc98db97b7f95996b10a2368e1","b122cfde1e19d45ece3c084caabae30eb4be2fa0fe1d8e85a6b6eb498f6bb849",{"version":"a2528540afb60b403e90fa9b6eefc321bf8e33ae0c9fdc61ea0bb4b4b8e95cbf","affectsGlobalScope":true},"8d0d38b9142711f83451581d2a4dd1b9c894d4115d2a3dc66cf37043399b0186","bca4234e52ebd600eb3993b9e909c162492ed1d499bd4b603b8ec09c581b87d0","a9cf7836c8d1a2d00db539bd47553c03691857bd7e7094adf07424553ec7d8d7","f2c35324d08eed12460111bb500959c0b137b2b476de608945b84ddd9434428d","42009ca9c0f6e5b96a977df586ab38ae0efe15d6f21ff715ddc39b46cbea3de5","55aa60487b827d6a3849637c56a803519a6ad533a9bccdc2da2cfc235ba785af","175b9e8d927cb191714027bedb36ecadd66cb661ed7a0eeab10a99d3174feb11","00a81ef0fdbd28a5bd0b59acadf560aaebe88bbc807301ee49f3004966ac41d4","40d3ccdce3ef46b73fb825797d1455e185d389ca0bcd581fe466a01008b454f0","c0dfe8aa401326a3225f821f57caf6175a6a1ca43cb881c957b5376c74cd6f68","d3281f4c15b919ff92d5b54bf06840835c13b26a6408b9312bf4de4db2cd31c8",{"version":"cb05cec6b5af32fe72618bf75f582ec334a05f1830a16c99267d7eb9a68f47ba","affectsGlobalScope":true},{"version":"c53006904ef39d538ad1bb5dca6796a2af28c13e7aee27e0a0829eff9e8981a3","affectsGlobalScope":true},{"version":"dfcfc75aede1c22fca588e7e08f653f244b315ac140208994bb0195bc542bd4f","affectsGlobalScope":true},{"version":"d23808465b4f1757a4e156999c841e50cf2d2cece887fec6620380b7e6f1f3b6","affectsGlobalScope":true},{"version":"90718d3552de669111355e1af51a55915f0ee3cab37ae0b42fb29658e67dc704","affectsGlobalScope":true},{"version":"a889109696b87c4b65231330e0c9c762297468148ed3cee9bd12927630ce1c5d","affectsGlobalScope":true},{"version":"e8584f9c219e7184e57677f85907d286989cf6c0d268764dfd203d82c07067df","affectsGlobalScope":true},"0c976c92379daff60e2dd5a6f0177d4a1cb03eea2fb46cc845301b2fe008cd65","5949dc54449ff89a7d153367aa4e647bb7aaeb1e1859d73fd1832aeef1bf4d03","71e4472487f1226ae8b9f2cd8d833a8a43028d9774c7f631bc36202c5addefcd","d713807b783bed6d32aaa1ebb404e5115c5355fed08b48c9185cc4b15c529d8f",{"version":"d2284f4211cdbc263e4ddc5da6775cb9e3b9c974414daa5c6553b64ed7ac9584","affectsGlobalScope":true},"30f2258b429c538edc5e7f77521eabf1e1801f85493b6917debf034329b7610d",{"version":"70ef0e093e72da577af1c5166c85c170e74037dd6490b0e54538071eaebce218","affectsGlobalScope":true},{"version":"ecdf82037e2f7f79bc6e0ca99db3df8b49859e2963ff0ef57acebc383f5babd9","affectsGlobalScope":true},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"1c679a785ee2011015dba247d59774164d69eff9da62f6231f8d0386a66f75ed","affectsGlobalScope":true},{"version":"24558e1ae6d171b174b099588022e6f8ae5422b2ab6a0aaf7bda4dc1fbf0cf56","affectsGlobalScope":true},"e83987b96aa90096cbc834f30586d735afb007f7f3add5837582083262f729c0","9f6c89c7fe74d403f49242a9fae4e95e4aa0bfda9688ee175c7bf395e365d1be","a347103f1193e083d7eae55d73163f22ec4cfc6f0e19aaf084484542cf4c487d",{"version":"0cf62f8acc6b9613240f98604dcb990e95ec11f5a751aeea68347258fcf58ae7","affectsGlobalScope":true},"76d81c4ab4cb5b483b01947cec4560333ee23c0cea3f475dee16960b6a29c626",{"version":"47c995ab27f4637b68e370286e65950f5c6a766bd614297d4bcef7775271ad6c","affectsGlobalScope":true},{"version":"be20b80c26e821788b73fe9b45538d2cf52166f36c9c00c2434a888279c9a205","affectsGlobalScope":true},"a35f40ec1f82bcba279411c3638b66979f19dc6469339c3e7573b8cd9bb2cde9","7d36ca73a9413c0c6ad90d6b8653fde0aa8a9f776ff34eb95e8cb090082b3adb",{"version":"7b40e9058b51bab447e560ccb8b0b6e82fc29c96230d92e1198c5cf526714969","affectsGlobalScope":true},"e4eebdbfee01ca34d7c9acdd67576def4f44efc02717cacc0a94742125db8f36","93098cef2ba7cf98085f7589abcff9dd31bb6eb376c2ab1c2ae325c501ac37c6",{"version":"0ee6d4f3ea203ad71e6e1f204ea2aefb8a5106c00b655618df1408016457cc29","affectsGlobalScope":true},"3885e78287c92997e90357a8d9da13de0ef02f56c3ecc890825915bfca0e2dc1","16e777cff1467ff5e067423320938328934602207ee28b815fa0f7c3ca3ddf4d","61f418b2995586a9e2e9b6d0610fede51a14c396d94c551d7972dea0970d3d3b","04c348aa829a5136154a8225d2fc41e942f22fe9e9b21f3e5713f716339e892c","e560b8ac75a2ac0a85c928cb4ad68b2bb996a72b1838c16f43e349daf1533be0",{"version":"022419723b65c827db878d09988d37dfee43662a622d8303ae4b2c2ab1195b88","affectsGlobalScope":true},"6adfce0b2d1e55f3724a9b8d80401aa294d36c6c44c6684dcfffe204a28c4c3a",{"version":"f7a1b29f7148b2650a24e1961f79e85086d0f8629411ec2b3755dda39baacdc7","affectsGlobalScope":true},"34ca7f0250eaf790149dbe4022ed10d8f310e9fe2ce5a9377854b9ddefa96647","75b28d992fd27e2475e7ebb79780903f89599babf37047c11a611b726ae3b10a","f58c7dd0dc1cde8855878949f13fda966ad36d547670500dfd1d2975d77e9add","da49d860726ca40170c20dd667d86d5c6220c5b10f68aea54862326c80e816f3","fec001187fdb73a0415bcc5b65d5341aa084d8c6921386b1df13a2db27327eac","8f4cae1a80427212f0d9e38918428932ebb1e2e94f06bccd80bd2ed0ace83e13","8ae116c4b542ce7665c8ada0ee2d8d7f7f84feecead3d2d91936dd9f3d00365e","1001304704bd20ac5c723e8dcda6a3577e8154b85f09d11329a8f62f0338e0f9","66178c7d50696d3bcd84dcf50ef1b607914d8f225db87e6bec3fa499b300b0fa","b198a349485602af3e30b8ce1721af5772cf462a917545b69f49af2fc1399e74",{"version":"f9f7a3c251059daf58f2cb84ee303fd640ffd6f6432bec70fd02b10db49a885b","affectsGlobalScope":true},"ce7a25f45110b733aee55750a2d9526e3e57d87d60ec468085845ee2a3466f38","9d9b8a786a39bd0f64faf720ef50743d9bee9deed9bc493309109c7a69dc847a","9546037b91a1558f46a7bfe90e2a6c58f5dde86b4fc52436fc1ed43b1dff618c","824f8f2073290e557359eafd5dbbd7c8d800589b8c7b27fd0bac77c3e9ec1584","d32f5293ce242eda75ffd87d1d9c88ca7ab9cbbd3adc2e75ed5f5d91d718c812","39315a07038f36a5c39be701a11bb36b5f995ed165ecd1107d1b90d8fa5ee8b9","cabccb604562f055ecd69ddb8f98ce700490313b9719a020c8acb72c838bf3c7","e453a6941b8a60022c3e2722e2decdfc3a30e317593685b25665f10e7399b0a7","268a279b265b88e18233aeee1b446db001f13fa39b87c93af2970d3eca676b75","9cc805dbadb66e241938afe56e3eb8715afc037a8ca0fd7ecd1dbd34e95d55f7","4981a30867a9f5dabd2e36f9d4a4cb0e3da83704c01504c7e2590635ee68d632",{"version":"3ea1c94bb38871a157a1400327fb03d7baa921c877001983ed5d27f95a9628ce","affectsGlobalScope":true},"74cb1a48eae2381ed2ca8cff3ba9eff3edc598a0864b0b60d91d4026698f5f10","0175552d4da3ae3ebacb639e6be5ef1dc92932efb2779a972c0c9f2b8ad61ac1","21784ebe37df62eb842372bd55e9d6feaf5df98ac3498999ce4ea9834e4720d0",{"version":"46f56438c8d80c16ec82701e3e251c131f9c08737a461afce71140e97a0e044d","affectsGlobalScope":true},"d207896ee02f8232c30d952e1d6f5eaf6c2d1884042c72c0ac86340bef96311a","0ec2245cfe10fa400dc1e0c91d6b101452d56c0a4b9eedc781c126dd7ab1b8b1","0ce5f07cd563226f61a710f3238f1762907b79c79dd3bda6e01a660655fc7bdd",{"version":"2b69a342b0d4dd19157a09e487de4b699dbfee34534094b5e29cba70b4a9a5b3","affectsGlobalScope":true},"ae9aa4620f5390abde7e5aabacc29b9e58086bd61ec6146bb09c4c869013aa98",{"version":"fbb211f32062fd3bbfed5402c47fe27d6cf2da6389962befb5e79159048379c1","affectsGlobalScope":true},{"version":"8b3e9ba8a2089619b7b12f30b8bacbfc63d15a9e8156c95948b9a62c98949bef","affectsGlobalScope":true},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"88524de3f2125343de37624fb2f22366906a3f8825446c82c27655b048f5b7e0","affectsGlobalScope":true},"6d66e4cb555573a5c7778c3d6dc15c13ff70a169e792299b84c535ba9fb5f25c","0da20aeb2621b0100b5be15c95ec498759640fee41633e676ed69031776a7958","17fe76234b14785d9e646000aaf44cfe0c55b29136b63e328bfb5886c90c79cc","67664ea51c8faf5fabe34c265b4372fce2efdfa1fed87ac7180b00ad172d7427",{"version":"f7ac217354320f2e8f0b442d84d1fbcfd71dd10e5a339a3eab101e50f46f18cc","affectsGlobalScope":true},{"version":"1fe7e290f6773931107c3317c5b078a690658fc475409a50053bae664e0b10e6","affectsGlobalScope":true},{"version":"933a55ab40a6e8580cc33ab627acb1015b265b667c8937e125d8eef349d08a58","affectsGlobalScope":true},{"version":"73c1f0ce08aec056d63aa0e8746c32640beed9bc6b058a9e69a9b7f7db85500f","affectsGlobalScope":true},{"version":"693a4abc9d5d02250ddb2256e525b8de4acb8b9ea78c3bcc64495acad39ef1ad","affectsGlobalScope":true},{"version":"cc3c5f94d36382152a3ee02d17ce0535b926e23085b26585374097a8e0cd6da2","affectsGlobalScope":true},{"version":"3d83308305d7a70dab616279b7451b14a64c0899c0f90368e20bdcdfbb1dc9f7","affectsGlobalScope":true},{"version":"09a53cd5cafee0bf013d37ac760d0d986d5f07bb87e87b72088616c1cf039ec7","affectsGlobalScope":true},{"version":"aa9dd79da69b3ae334799c5bdb273f317bd8a83116090238e36948c17a5016bb","affectsGlobalScope":true},{"version":"e102353d0a90d791a48b0ffe4b75f84cdbe0003a17f5c37a132944ff8ec504c9","affectsGlobalScope":true},{"version":"0bf0d6a78c12edb7c8152330d45a0dce0655be12d50e2e7c36b409e54671f7d9","affectsGlobalScope":true},"9f7b2656602d7d7e21f098645ed78f653192ec94264479c3a4c3118ca0e624c4","472d6d7882ce8dc9867e6e7189da6a10abd14acbb117fe3a7b141c8a6b004b12",{"version":"a1d8c09fb9ca29aba20a893d80f90355a65b40dcc1a1d4edf6d81fc7146b913d","affectsGlobalScope":true},"8ada05c75004dafa783fc5009b9d7441d0f1f7674c3aa71e9f184f3d9cb2d4a7","939987b4943d33cfb79350cb1abaa935ca0422ce9eac25df4c6666b5dd7aebe8",{"version":"f7a8fcb170adae683199f52ff6222949c21448c30aba9acb9e9145573337cdb4","affectsGlobalScope":true},{"version":"57456bdad9bcb39b755dc1c55bf39145ef916366d71919045744fec6232e4e34","affectsGlobalScope":true},"7d0eae63c838547cc5f9aa5f8b8d38f98797b8839d01d19ca376ea2dace3b184",{"version":"7d8f65f6eb43d8c03dceea51cf070b6a2b4f6eda10359aabd0a6b0b70d311413","affectsGlobalScope":true},{"version":"4532773e0dcd56d7087fc88a74f709b0e8ad2182d09b22efeb3cc9709a92c8e5","affectsGlobalScope":true},{"version":"f2396d6396a6c32c11a74fcba000de70a42f1ff3c49ee7972672f1242f2202c9","affectsGlobalScope":true},{"version":"57664623ed533dbf07a910033d0d18a2dbcce365dd37070054a8b95881d35312","affectsGlobalScope":true},"65d28696eaf13f7133e05646187622152d780d8e873fb9088c857b7f75224521","70dca951c363978db43c827526657358a0f17e455cc6e462fbc1647a73e18027","1f7b8dd60e8bf371b351e4db9c742b06b5761f7905fb192b74f69be7d24de011","878fc82293a01092b46977d23da7de4cd76a6156f0ee5629a64d6e47a2f7340f","1274284761f2ca91661361184aebee1aab8d182e001b9a1cf90d48a299901f59","3e9426560268baf40851dfcedaaee9aa91cf53c3f1fbb5e441c08d66bec71e01","ba4577447b3130f44f47ced751ed73938899f82b33fe38d2683d6465c6726b8e","afe3f4f1a07ebebdf5fcfb018d11821d3f82d4447b149b57d1d094dd6167478d","008f83c3eca1e9d5ed018121b1416318ca7a5892d0108c489e46872215a7b8f0","915ce332ff510c9bbc50b1034b227919bdb2882a491da1111c4a5d4194ddccc1","bb6a9a471540e43ef1034b4ac9b38314e09e702ffd65f7fa313919206b1e1825","655ee5d83a484733e356a09e6dec7e6883bd30650924c24fa63a104b2f1e7cb7","0dfc7a76c2202fe46de58b14d69be16e6564258d634f801fc7f5a07c0769357f",{"version":"bc85a8bd1d0f01e5c486e95c751de49cfd2708e7b4f91469b4d0b03a873824fb","affectsGlobalScope":true},{"version":"c0217fbbd217a04c25dc1ff891f362f3527ac631e3ab5bb53deafdaeb7f05e8f","affectsGlobalScope":true},"a5f5c27f33351bc649f0db4ec5f4fc6a3b3b93632b9079e42b666a4c2a906b10","889a4b116d0a2874becafbc012f29e1743742a2a16bc2a5e32939345b48746ca","938899d9003b29618d528a2ac9be584863f578869abc51afe7395fe83b048288","d428fadfe52305f61068519e0fed36b614fbee27cdd1248420288bbac0eb9981","5314cd7e2327942ec1073748eec91be325fee87c3daf2f2df67c70c8ed1d32cd","af70ad282ae0daa8a878a0943505edd06bac9afe6788cb9914964419bd124a5b","3907833472ec86ad47624f24c54fe45f32f7f5aaebe39f0625ddae09bf165310",{"version":"afe90f86512f9bf9c87b2d96c5e7624e6c89abc052e7f63b438816cf917c5c7a","affectsGlobalScope":true},"f93d4bf9ae90941e2e8f87d983958c1f4904f503558f766e11e016c1798661a0","4163c1368d4b8dac8014648fc6c47b582e36814fa75b6bad10c8a89b312878f0","57ebd4e6ba6f07e2d7871a8e197066e102f5810bbcc51d4af300142c79927619","b320a66c5796a0a185acdfc5b390707bfc6532f6c588f2c667e9c0c506a8108e","8aa27c6c362357245f6a043709c87e1e97432888363226d2d2060f6a6335a641","55bb782d85a4116b8203d5c67ac4f9f265b5d180482a5d5b18868dc747220348","0730c93b722979a30434470baf2601c44dbbf27f590c88339931445121a0f856","c0f4fa18b383ecd58e2946cb2ec648295e974e511edd52211238a5c73870b8f5","ce190b39ec46e0811f4d5a306221b9d07c3d69c28aeb1c189020e5ee1ba6d6e0","aa15ddf5ab076b368c3102787bea4ee30f138d5d08c5119765bdc87d0e1e628a","d3792b49fb4900be5e49c10345e2e69d3e5286fb06dfaad5e8f24ae9cad79a2b","5c41d402dc225b9ed8cbed8d203cb0754b48a393d04d31338baf0f361921ffe3",{"version":"5df47f508bce633d8cbb580b3091bbfa26ecb67998c2f2c4257e5d834868a2db","affectsGlobalScope":true},{"version":"6cd14162d6cd752135a2d5eafa947cd2dbb2f23915e4ac7f4c5f03d28f25ccb2","affectsGlobalScope":true},"344c09199680044b1c1a2f8d7f9af6d253467742031b316a1400dc7160349cf1","08f96cb316059d4aeb3eaa87d1d632c2de37b66ca882fa86fee98d97edb362a6","bafaec4721e829c036143ce0372e994dd9a04b81fd45b163127822499a5be780","12beec0daa7067d5ff7dcce4a5f847d6eacea981d831a6f5e1e3040355a636ab","75a8fa09afe7401553d916c495280e02a7776f7b4394478d1dfd1d5094b226de","fa63b36d31c377f487e74554b86fc9452ab33eab671d2e1a92b266c2d285b3c1","0ca9460437590f155bfda16c72fc6aa85ed69eaed61abfb15e7d17c6481c8c98","5a3cc85260fee55928ea0473c7e2178dfcecec0300a3e2cfd72b321c515b116d","e419ea59e45e901ac47760222309e1d6cbf905d3b0732b1be746f8307fbc5632","8eba116cfa525aceb90e96b226bd35f0aac1a5ba4af626edf79b1932be2ab2f4",{"version":"ed04e5093c78b1038b94fa3fcdfae6e6e6c4c856668f7b58938422292f720170","affectsGlobalScope":true},"4cf3e54b60466892e4782efce2832e67029c219258dbf859713142b8468cccb0","25d19ddfd1625e14587ea2e2d278d303fd843bb0c0a8cac97db65bfe170d74ac","b7bac09cab3b868af839583fd808b970441662ff016c47eebb8cc029cffb1c03",{"version":"2f3339e4be06b5376e846646e02dde0dc580869f77c76b67e8266df1ff0da9bd","affectsGlobalScope":true},{"version":"41544533d451561feba169258c39f7a0914587b5b7a2782e2a361cb4084e7dde","affectsGlobalScope":true},{"version":"d24721a3bdec26eecb5e550cb6ad0be4f682a5402a2e1f3ca0312fa4e2aa6067","affectsGlobalScope":true},"508d0c2a8062f9e65265dee7ce8d5e5df1aaaaa52a1537664c6b515bdd462cd9","9cafb7769467f24254e78435e386b95c85834944b551036e6da5820ed71f3f90","019846416e2c563952d5d56f00e2d95ec02e24111aa34906a871b546db2dd635","14c65748ee544af29c09b77844bb0ab13bb9fcd586366e60565400b8b4b2e575","293d6b22b591bc372f67ee65646d378484febc984475a166cd511b861ebaeadc","4d38c0a76acc8ba18466747f7b6132525c44bd4f1a8d5a7a00dd48153b9ed373","2b822e4179a445ff9a264ccf3f3ddf18b12d0ca1c43fca46b8e83ae9b27f9ce8","752a522b6f9583718c8bc788a3bff461aaf468da14fce1de8350a52a6ec543ea","43254e37c67c155efa2a4185b2f09c6a53f60d375a4f7252e2fd44ce62b9a877","e8de61d2225590862ba665d7bd6a3918c6e0c76c870b72edb96df2a859c844a6","cad8ede726a86b768cfbfebaffc1dc147ca5d887362e4bf6a76a0a6676947abb","9dd293866b16d3e68bb486870ba844bb48e39ab1e8080e499a2e933f41c5b2e8","168ae5cbaf7f4eb23cbbff164a5fc8e13511a28df68e7b981bd2e5a9a5d0d30b","ff81f2cdd12cdbeb9746ce4351b1005ca3f79e0a5297f8aaf60b57ecf1b259a4","c1df74fd014265eff0ab4a94bc18bc701dc459a66396ec095989349f9547e20b","e25dbe91e193d5a371f2b7ee685980dd7d9c7773d73ddfb40062ead9d4d87e06","c0520b526446893d852fcebd86f1dcaf0da9f42d9d953c0f0e9c2c9085ebb9eb","28a314d11a60b789f88b033aaab6f2b3070fafb474333f4e1d77b4cd391a01cd","4054cfe0584c236dfe9f03cbf8bf2fab1af3332adeb0f4e3bed9cd18381cba03","ff7633a4cba69d99ec40403401e0e47d50d69935ef138d36984d74ac70c64609","061bf022b21dccd86838af7cdf6ecee1623ae0d0872f0cf2a54fef0cf24deb98","fd439ae63c59b70c9383d31254044a05b086441a6f55369f7c19f94e388ddf0a","0f433d1f2f1aecb58a59989c8c7f1844e14af21162ec942745af62ce2a0c4730","ff4d4e79496b0a5312af29f164069069160a5d9e97bd300cc7961fcc56c5f706",{"version":"6056a7951b168a286f1b1a42719f91e1bb4ff48687a1e24cce9952d710950e24","affectsGlobalScope":true},"3dd380f1f150de28baf660ff0a30795bb907cdb77208e2ceed4a96e6d7e31e6a","82bc47a1bb6091fc44e8de288f3726fbc923b9baced69bddceabb122f8a9406d","a7e6b329e75a08af5f998cdff8c7177c87a642e335af537521cb3265eea1dd2c","4f62cbe98592811e02271b745d68f3747dc3f2834c24cbc88bf7074e2e58fda4","2267e79ebbd334043401e7baa494b30de66930946e01d2360e775aaf73fb15a2","7301ff04803331d2a62763b8a95d0f4454bd959309ba1acdec0f25e7f814bf59","743890e38a2060e5f97ba232848586096e093d22786c72e643a0b1bbfa186c7e","3951e58dec597f0a7864dbe8f9be12248231b524bc2d56b0f2e11dcf1a8fe7e9","84ae9e5587719c8fdab716e7163718971f7be3ff94eddf87fdf4395cf98e81bb","1685c3aa5a925af7eeb86097bd0fdd9da4f2087022a6a43d40e06bb70caf2d2c","a3c7760e6789b5ae6fb25be9c1a501917ad55791cf44ebb071b19d7d4c15fb09","d7e6c34dbe5984bc38756278335ea4f8c45f52c475c5a1cfda591b7524608ac1","d99703c657c04f452f4349cf7d17767cb046aa1c322f2f475e2d60f44f78941d","b7c2a02d5e6e1170f919c87c06d42c2532fba8533c25a49c35679c0f43655fa8","1a4a7340add98906b51512bf75b337fe2b7bd7d201555736511237824d5f8d7d","820771f85e390e837f0bf3baa303d8a29865a8a920a9217739805f64fc9c592e","993f6d2d9aa48046d1a75e9227dfd386c8f04f717612858ef81c7b2df4d60b09","30de8bb015209ecf6dcb39fe9b247776451c2155295e38321121154390448b01","4dfff491b066d98543a57bcc1e936a962c1a345bd874fb314e768c785036ed2a","05ef0df715bda5f39800cd8fa097f6546d1fd093efab998e9c549c4e83fbf39c","0f5631b6c9aece81d36177183be75e4bbcfdbc2df79db43540fbaea584b6e052","fd5664e951516f7650f445c51ff813622114298dfe2000f506330123b597704b","2fa0c17b437fafc0115a7c4925c5a9a683395e6fe0e41a1d281e190345e64f81","8bb50a0991ef3b274f233fe489515919c98f9f902c12c4a82d93ecc6a8f6cbe6","b06896e4d71694f1fa32a0931133334f0905bd84df6d6f7c97ee7b5eef3e4dc4","bc45da1f9643877f9ec9ee40c24bec9ff04396d2733ea35009ee34c946e2ccf0","85abfe12e182b4e10fae58249c079527d496090d2809f1429c2c8969c7714675","a19a8f35e2e9c0b5d8c7a854760bbd761531853d528b826e6c47a76ace499a92","01ce918f83d21b1fd2a6f912020fcca4961aed06b310044bd4de32f9ef3dba1d","685ffcbfddcdb506972e6123cf3df582408fde89dc62b0cc1b81059f088c93bb","86eee1c56d83b2c730bdbac50fac5735457001f843ac22faf452ed11d1c5179c","9fab9dc02a23fb29aca89d45ff859aa97576d7bb0dc7fd9eefcaedebca469f1e","4460512dadae371455bbc45f62996224fc7a8d9e87da6cec8fcc92f1c6926fac","e631dcb0c43d6668ff9d30a022b48def006761d0dd7e4ced60f53616ac2feef9","ec222cd4c61a0ee9583bcd487b5ad9bd56f3ed2cf21eb2b00829531e2205eaec","8b4c95d080a9bbae5e9625638eff827529597d3bb4c456c2bd118bc467227a7e","72629fa2f66fc7113a777cb09117e22b611e83e9099b2b814fadfff32305d932","eae9569e05a3e8653bf802216097bcc7c61e8ab25638d95a258e4588c01b3f24","fe81e729beec4e44555d9e8c48c00e162ea669638a65510e12a83cb997acbcf1","35cdc38597d33ee2188cfb281a80a5f1b72d1abbc35a6c443243a697f0144119","48b2ca9ba65a7dccebd12e4430bec879e68789b1a9f6328772175d4246689513","aab15d1a7b8fa2350476b46f3a85619c665d32fcb295eb0e70138fdcfbaddd4b","dfcc41a421738ad0b1b00d7638967195197eaefe15c71619b2dd27478c2b4ef5","912a048453180016af2f597f9fd209b2ef96d473c1610f6be3d25f5a2e9588d3","52195d96d12b0013e87994d65c220e2089204160c9d7784a20465b0cdc04c40c","5ca437d9f0411958f2190f19554d3461926615e1e7a5e9fe8a8bff2834b423cb","08592ff23d68090ff3b4c97027cbd77e043631a3ac2eeb265bdaf965fe6e6f18","363a47f946268d493af60c1048985a5876d913ed5b7f02355e3c9dff1c332390","f341f2976f4dc47ff5ae7b682e10d7c58c156808f087cc198e381b4ea6fe7cd0","135ca31f7cd081ce0321f1536461626134be5ae8e34ef5365ed0a60ec4965cf2","0e9c7378b81ffbc45219398fb18427866da10dd7883e431ea9230b11a9a46521","20457eeecbf2ff62b89087aa9a2d1b546448f4be455d9bcbf2f225df7abab3f6","85ee01deaa3b60978c6f1402aa1da57f03136867e2a78cb0870b65efabf1ec4e","2ca77dfc7eab8233418f9c979fb0b948e83b53ae339a97062c4433cf0f61eff4","4d09c54a3030a86d865d7ace361e9d1d64966ef2a26ab229a93bd09bea9a2d98","56fdf522a085e174230c31fe43818dc738c58b334d9b2be52381f1a1933c755c","3986d59c8c244b09b16090dfe95e6fa0984f4f7d52122ff1788f08712a396a2d","c4aeaef1a5ffece49128c326909815106d6175dc5d8090a61c7d3a3372de5e7a","a37f39da73d92d1a9c8494744aaa093254007aa29803be126f05ea6baee1b52b","a8cbca97e5d078c9a16c8242de1860baafd720dcc541a1201751444b69acac18","5f1be2f84383c83ac192b11f03b27c4b3cd27ad7a628615bd0f8ea79a159a2b9","65aa982fe7bb50732cfbf038802b2c083ac3595fe1dae42ad61f86055afe96ec","49d03df10ec1aeb459361cfa2dfc00d6747597f633d45b5fa52b5a9ab4e3f029","5e9be59aaf37fdb412cee4f1febf1497da4700086c5338f6d4acf944fa07703c","86f98a0f7e9da79548f9ae9b44b8801151197a79f8dafee4c5c966aea8d83cb4","cd1f260d2b17cc6ae80f3e71b5011b1cb676c780f673455a2182e76f371e11ce","a185189e03f51b5488afeb6ef407f0d166a8b3d5870a262b7d93fa7768843833","94a16be1fad46258203d586e32492dd8ecad21af7da670f652a7a2715b6330da","f6a769b22de85a46d193fc235a1eb1920e8ab9d77e6476cef948aa83a611418f","17c0308cbd36ca46f862f9c9cb7384ec4a2167b87c615d52150704b98aff2ea0","86e75445bc6bf503e718a28b5deefcf5eaedc7d7442569b33e555c54e3120bed","f341bd294158b62cec7f2414f9cb899c7cbcc4dc98db97b7f95996b10a2368e1","7c5ad63a2222f6881711c0101c30b0fe5587a215e039627c48e1fa50470fe4f8","b6b976fd4ccf129b255a541b86f8e92360cd314be6c9c19d7d200efb1350a293","a15a07e052234577d884c8f1397773153d2559f74432d64645af6bbf7f2fd268","16ac88b6e2411ea7352c688a8927f20427d45f0d7eeb91474ed5603c6fb9954d","a36877da4fbdf323a2d7d9579f52ce3c6394adee7a3c9f662df917d70628e73a","cc77d5904c9399be5f10b78d28ab9b5a8f58d130ed64b6fa2fd4a5a8de2bab31","1ad5aef5a9afaff23d7c914895299650acc79facdc4afce5102beb4bb14fe58c","535bbc2e3edaf99f3e403d836d36a9b7bb72043851d5e0bbe0ff9009ef75d221","332bd6850e05e8376dd7aaae887e29e68b5d6fd6f35590352613b4c043e1565c","1a0f3f69194bd562290d5450b61b6b5faf9dc863f51d74cdbaa4f7ccb5884bec","6469f087e68b71fe2984da04055d4c6b7d00e6d022030bac4c39eb180599e3b8","8d96421a664e47a29d7112faa8950756c0644469a054c32a4cfca454f47d0451","8ab99edb6cc00cb65355d887a301efb4a946e91826a91c75656392e0907a6bb8","45b29a06927685ae092dc2c00e2702030abdff9d31b5c3b79ba5cebf4530bc77","b2b3f0067e54d2ab55ea63fb9e3f6702e416211115e5ff0054d68ed68f50b8cd","cab0c1b90f7e73faf646b033a9ec7e2aa948ff248677c6cf0671238f78cba51c","f2b2b0df1a754fc725704c5aea5a3c5a3804d5bee2244d4d4cd015f6faa31eaf","33c37917cee47bd1b2c7a1c698189e581448397cfb743155ef3faea8e9727b51","8d2aea0d547a2deb1b76851b54f9b31a54982814a1dcacf565caf45329d38078","f78c3364bf104749bd20f007e01a963bf8968813f257e32aff4c2271158f2a35","8e34e4c926ba29d400f9d1d27b994064a6576c9006659cda5cdb287038fdd44d","6d7e5ad77f7a3ac8212278318f1f132f0572312e0c2d0379c52d82272053ce4b",{"version":"00c3bd7d0b81b9641ee3e1c6be10a7438a2f9b13e4a29ad00efdf1b8e90e57fd","affectsGlobalScope":true},{"version":"6b9ab0629916122c75fd6813e28deecdb55980e0962b55163b480537ad20da2d","affectsGlobalScope":true},"d374ba45d857ef1a599ade48ba5795449c0b67fc1a5293a1af2a7f4428f0ea8a","daa4902692d92dd039d7b618bfa972571987a2ea17b69d84eeaedaa271bc4a85","7f006666a78fc908ba961e15aeceb42cf11cf3a9cb829ba20c859f162d96d8e8","c6fe1dc8cd4819f5a4d5ce428ca926e01f0b9af24d736ee0e57b08cbdd29a30d","8d11717eb46f8b6ea9ddc810e31d2e61c992b3cdd69e99b9b08d6da9a564323d","dfca0880eede4bd0a62ddef7a1174c874ca4ddebd93109ae2b4ecbd5ac150e8c","d91ece5c2ded27862b5ff08725a6b98933c7847a17b4679d3e266d1f627fc26e","a9e2075bc20d1e51d6a724df4b27fc150473485b7234873a49cabdf21777cdaa","73d9e27f10f3d6321570013ffff9ea39aa19dd2544ef8ccba287da5d4621a0a0","f1d7f8498a3ea071ef8e8c0fe6950b11912d59ca3e298ca4ad25ae7a70474c4d","2ff73e85f4a525bcdcdbed03a1a0fe9be08f0090a51b77b330ead8552796484d","74a70afe5b9183b8ed54f8b618b6c7b5f87545d08a3f27be87f0c04b12737380","faaa5a2c9f2de293541bc03c0e6c5b418d8f1d22dc86cc97b0aebd204b2eb0b7","a4d77a8f1a164f73c5c871c66f0cf0fc6069e88d254c5a2a3e9c860e04af46a9","2d7fcadb253a1f0e3084a59df37b1a8c7420308a6ad0ded806725d45b9146ff7","d7583cd8878805c9a5c8d7b33352b6f627a5e05a91f31c6e7febda71ae05ad08","69f92747ed87de2bc5b3dce46be6d709301560db92458d187204515a8a0d54f9","b2468d006a1b89c08e211d70b397649862993d7df51cb4f5e7ef9a4ef4ded294","ebd7918bccc99330f0f507517a5150c3212de44ed4b2df6ded63931edd879fb9","f70f956499ef2c168ba60b9166770ce4b552d5d7b0744860a1b8fe223eaf0150","b086789e795ad0865294f2f995bafe829848a88b812168603d4286a08adbc4e1","c104366dcffc50b776bf99222d730d878d38f5d2de69fc359932c60d26fea2c7","533cafa1cd5613b6c76537fc202888dded05c93714d3177b91df3deab953f2e0","91daa1d1fa377ddb70d28370c2fa069a1a68af7da50ca0816ec1deb992d2b9bd","fe283a7c4f85d6263eb4a882ec092e1133c3f7825c07aee85ed6368e49318a9d","89bac0788076639601d1ec623475cf87d05d76e2c97a6455b1ce44fa226443db","c4eafaae3cf912bd6560ff720dde500f139999449eb3af8befe62c019506f763","01f0f1cdff3613cbaa9301ab1a56b22b68395b149119cd66bbf4437f29f6a097","6cf8b1f9f26ec41fe6075b90a15d969fbbf19c125754724f60c17f804dde6d09","15d9e6d0e225cba1cf9e786e3b36dc6586aadc4dc80c20c3cdc4d3927006e4f1","182d1e9b977b1f36ab4814fb8f92d76e50dd43118ef78fd54f6561d9db380cdf","1e0e7d6ac06cf5689cbf34faae5e76dd22f450058ca895ce9ee632ab12fb0773","88f7913106c046053d4695c76ad186a1372982e9d7023bc06e7b12afc53041a3","14381aa050834692adf4d8fa52039c6853583a7057f0b302fc0ce39010b3b084","271e537784948096ab9075c73fe286c8ab9e54652a0785bc57f0c1e0e25e8040","c4bdc8d6eccfd6f701f33caca1baf268118fedcc149416e8b160bbc60e2f7568","5a5f923f9e8670867f2ab9110d8c6f7fef3af5cdfb8e597283f543520969290d","3b40b249c2074096638a0a5bbda23c88de9d64491f49d21905c35702ad3abc23","4cf35c7c8928f8ce8b3974f90b2df6f87802faa20cb01b36b1a3fe604c0e608c","1f30014472031f5949a480a0326f429625cf741d71c1a1631f749ec041f83efc","717bda150f7e1e3f132b275baa927bbb8a8c141fb9f9fc616e789e974259b88d",{"version":"d0d16f81243a3b0a8950755762360a172cfc97dbbd7883ced1bfd9a0547f7293","affectsGlobalScope":true},{"version":"dc93da53c0afa9e2ef87b2b5770901298c1ae89fba1566d524e4470a008cb472","affectsGlobalScope":true},"7d7f6176a7d6584b63eed02da2e22a0e0b56d05f9fc223560510fa85c2494157","7bb8d975284ee7e83caef4a6660e5b6e5b22639990ec6afb9c72240bae38477a","9a2bb86b48da3b36f507b18adf6ea49411219861457007aa698c7114a43ae330","c937af838b35476ce819eb8fcc73eec0b4f3f7e058eb237df7d09849a099a2e6",{"version":"e0a941b34819530fed74b8ff51a0240796d73d4529872811d3fbc86204df25f5","affectsGlobalScope":true},{"version":"bf5ae5c165a79b0c75075661f516e77736baab4ce735277057d8bbad0ce079cb","affectsGlobalScope":true},{"version":"9e2a80556df7c861fbb1700df993105c9eb87c2452b451a4e3f28c06880af96e","affectsGlobalScope":true},"2d39c7530ee926487230366b7150abbe92fa3efc153c2a143b05d597f69d3ba9","314a74180004918f499b14357a21ac0c3470de8a72ede907437ce31f55c8083d","5e4d519bd805e7af474d599460f17992167c21c6ec112f61b841cb69eb495017","2549e869c207e3df89d72771828e2832a4eead9ff128bca9385c7e08483f6a89",{"version":"68933c01f0cb1e837860140b6d55745f8736e11081819949ab788dcd55e50348","affectsGlobalScope":true},"0de8ebb2d6faa3b59fbb011b36090bc8f11cf830414599ac20510e18c54c3760","cab087dee51008a724eeeaa557dc196a96d8565528bb5b2751cdcff50c784c02","2b118de643af6feb7d35677a341dfc5330df4ca6f99f7317126c59a20087f2fe","943245ec0265e73e55a467522923be0ede6340a7aeba02cdfa05250b8fc6432a","6e5a06351ea78f9630f27f14bda8f4d6249d095c007b1650b76ac15fff8849f1",{"version":"5f486f2d2f8bdda5f04a8e632dbe311d17cced9a948165f5561f183c60c6548c","affectsGlobalScope":true},"416d8875a3957c49d9b202d6b29906602c66f5dd2089b9115bf682cc9617721c","37a45a71b36020f795db35d47325aacc8352fee42f89c40d0596ce87e8a14406","39fb7ae1e4029d22df578f6af3e38e28ebab7dd0fc431ff8d8705a3084fb6baa","2894363fbd4e14663c347aaa3af9e587b900f747c5180089617d608ecaba4928","fb155553a26ff986c247d44b210176d036b6c3af68ac121dac4258bf84139c73","065931ba395e7ac2a8bf2a2d25e43e30d12d91472fb66b5ff572944ed0a8599b","12f2e3d88c2fe899b01e761a711cb9ab0855b885ab5047545c80a07587b0322f","a7fb6fe4e891705def0a20c14a03fff842e7f02885fcacb6d8174bef8ac527b7","476f9d38b6c986b0919aeeb55d7460de04547b5408fc6f23462712c74e5319ba","b4d06649929013f22e1a3c19ba03c54b775723e9ce9d9817a9d5c07b7a723487",{"version":"53a10ac4e60b6fe717bb6a7b5e5e15a78ce0974c732bf8fc033b2afb85507311","affectsGlobalScope":true},"37c4e54d98672a014990c5cc5ee2764733524508401f13e96be41158d7a24b71","b4180f6a6bd888934c401f4fa942b15f541a83050a402d284105acc63d841132","ec01e64f267f273509144084264af4fe0c99ea1df0452d3647086b4bc5126f85","a5e0e8727e93389ae507010820522a0347d639b98cc2b8f47c31001f700b46b5","e4fa14ce302faf613cedd78324f1ff9a5240c14da2f739ee9c3e44f7f32cd500","ef8dd99a50f909d00eb48e8f330bd164707d4d73d73ee8da976eaa9a8ad78194","5a9b2994d95efdad1c31d362cc9490931c5ca54c757710bf96fa8ec375f99ba6","da2dad9f4a1375687238924e68618e66d8b44a2f13ef1e19c1ca67af9aa48050","8597db354a1958602be38febe019c41112a1858fcdaa5b31f7f96696b508f1ae","57fdc643ce04e28a3ad2b8698e10e135dccd9573600edc54114553eed7d61de4","26a2b3109b6b4e3f3c6e59f3a9380dfbdf0d2067a3e2c2e4239a7fb19c9cbe16","6d301edace2ce47fd77e3b4a206e62721fb957ec304b393d7a2d76f5bcf7e425","97dfbe76bd64e99aefc31dcad34f620cb964d5311f67b036af0a74e196c4e337","eff62c3bdba713fbfbcabbe6e879c861a3e49d4356501dc0494d7005c6d170fd","ad968161114377051ec921642eefa5aa03918bc86d5b7f489f892cdeca187ba8","9a037c033d765b5b15ee7b24b0faa03be4a234cd3cde7b591244740d1d896d91","f0ac680163b9b69bd10b07e4359430696c7e5bcf4a5ef93f3aaa0dafa1341760","1ef8098ed9417f3deae4708ef473a19bad787f89e26f6e3a26434ffb142230e6","38e52e370b2f1775822244082d37bff0b5601a998b8454f3f60946eb74b6b486","7be3acbe810d148937b1a5393b29b4b87aae3ff780cad0df56569243288f559e","2defa550e94d324c485863b0b413ea5ff65a3826fb2461ec2a30ccde09a8eb76","f8431a49b199abed47b748993ee3e6fb92f2464a9abd1e6437ea2950b6395133","e258ea8dfb76fc89658e7ffdcd39d4a46df8b7a1d00c61e18fc3aff28eb63ccd",{"version":"09f6df45916a5e9ee14e4a2b40f266803a91d7bd2f8c98978eb448ce501ae33c","affectsGlobalScope":true},"f7c73d40cb6b2772726626ecd1ffe6b30079f105217d4563dbea0777a43cb257","0ad188a0c41be3b5327f4855131c589c94b24b122a1233910525aa6433ebcbf4","5404343cc937fb78099f0890a8af9823fd52183a5f1beccab8c5a9149b830fd8","655d837006fb67d4456389d8e11f80f970f06adfc5e05afaa2f69d3096c8310a","dd047d11abdbddcc255977dedeb98fe706f9792ce27a557d6f52198de535e637","4c9bf7c67120a0adec99f7781d725c3c84253b82e877f17818a2b7b56b71b51c","b6a9fd4fc7f44d79aa5154e13fa04467d9aa7076b8243ac2d9f17096ea2c9f88","6104a69f7a5a13b0e25d65c45e6ef2ebd5bbda44f3610e029feeb7697608464c","1898f6e54bb9e727399cf88fc94bc2d56b828b391ce090dc64107783a3f8179a","03abca2694ce6bf8e13e29d912e287e9c8f05d2fcb4fdfd12e2c044ad49be2c1","269a485cc622c70385c9d8bd75a1c6a9829f00791a91ef5c50db138a3f749878","f2dc9835081fd8a062eebecd44dfc266d183c17f3eda6a27a8dc6f400bdfc916","9c133dbef6fa77538d85999fd99e4e95a3c3baefc1b347c4ecc70ba8fa42146e","1351f9917d46893576b31ba8cbe6170ec21dbc0b660ae90c5447460ecc69f331","78867443da55c381ebad91792ecf62e90658e874d42a0b6e56db58f87e1f3bd0","95791d4cf732e9797ed23d1a8e996f1b9b8f6f74ced346989f5189367d717094","caf5b2b247095ec178b2106eb58bf2de3abdf4fb2b8bcec0c07801dd6fc122ec","cddc62f8805397eb7ff97afc508e901da5a5f06f234bffe4bda40d5831492e07","2d7f41a8cc85416e07dc37a689143e90d7b8ff05aa6d796e359e36184bb53bfc","4138741ccc0169616d06cddb6412fa4722991b66cdc7508fdaaa2bdb052c641e","c27591d30abf7c9e49bb841dff23fd0b53a49570d7c06f291982dce93c082298","84044337bb29b3664936e8d2391762fb94e17fbac52bb7f7342c1209a82727b0","3a3af247acd8be98ad1ab0c9415033e777cca0926be96415b2d5726f44669e89","88360381bb09f280154dcf23ca7401203415cbd42ea0269ca29588f047479365",{"version":"c53046ce667f4610dbce0270ef156389eb4774e98a4b380280fbaec42a560004","affectsGlobalScope":true},"9a029036e52c3f3c417db0f96d4aa5cb396ba3369fbf54c18a7f5c8327dc61d3","bd191a65a62fad90de56095e63ee5ce02f418c3ed5bcf31f431ccbd168bcb1ad","5e3692c1e55d9a1731dfd75d9d1c92f937fe5c100f4bb4133740b9be88252d51","eb3ce02a21a9687e4820cd782148efaccf25dcab30cc61fa3f5745fab605b51a","ffa16f8fa2e2e089054db64ecbd68ec231780fe3fe93ae6be6d20bac6ec1d349","0f609e50a3fe7106fbeb7f03f175bd2b5fef80116b5a966003f40ef1f538f778","8637e4e565df51cff7d87eb37c966c6b3d512b9b99837e7a45190e98191badab","383b02728b975436cac2af7c824e870c8ac526284554add3c6c871a15772f224","0530dc90350c688a14d28ceb2b83e1ea171743fd714d50f325f3a9414f638271","cdf2fd79caae15b879620fdcfa4c332f8057fe61f9fed7d287f69183b73596c9","d2cee5300d554a42877553d07147141ced6ea24b62469bf3275aa21dda72e16c","ceb0c6a1be8f82af04c926bd1415f9c7b27a7fcd82ea2d11a399d2bdd34fc991","9962e9856da50be85f51827780dd22e7c50e40d0b10f43feb645d4e288262ce5","ed0cef4ea04010efbdc021718b38d0153332aed1cdc5da08a8250169fe6671d4","e323d87324a2ab6865618e2cb85b179ea0aaf23bcbdfc1e8f75f9d9c4d6e47c7","b035c7b4238e4a66ee92c5a659dc7053b99b6cbd981464f896d05b869b86a4e9","746460fbc7176eaac56aaf2d6c012aa570edb79b6adc270d0823782d5241dee3","8b5f4a170a448eb33afd81d14508cd67c034f2874a26cd3c0e5013f9d3b20e6f","ccf2a9443c7d3d597cc255f049fe6285a92051ee7d77acb15abe9f8b304af5bb","8c41e31895a7f618b9c4ec21dfa76f1618d3544e33113068d734a010a94be3be","745293d338addd1d06ebc34c069e6eafd48b1dd2810f1a7f29426f56dec7c296","a8962cb27310764798659c5c625338334353f433bd593589713899f898a026ef","977064b49adf1163c9dbbf8c6e605b53a6f9f5d60224f9da9d6c41f420ec451b","fd962a6497cd4eb83756ac4b2c05b2e57407bccb9c1541c6fac2b01c21cf7df3","adc332be8f60a31380ed3f36c2f8159658db0fb9842a701beb2445ac741a4a7b","55396fcc7f38f85d796f6ed859cca892b15cfc7a1dfc86eab1cfc12722066f06","744b2ee6f99824b818b3ae3995a6f5ada77b2466d62708342ef1edd4194d5432","221707264ea9e4f5edebb158d253c992de71fd893bb828131b39849325b40096","f6bf383fe5dc5db4c76b419936f6cd75afd911d65c91a0a2e2080b20fcacc4cc","591edd22ca220888d94d9b1390836593fca0413e35df6c8831e29690c45ebc66","2edf042cec5ad67ad011306db9dc55177fe039db534e47107f2a1b1c2a6b5203","58be5c2c6ce611500e90159ff3e89196b375cfc58486f6d1cd3cf6f5fa8b0477","04e4b17250f4544674528bde25fedaa773512f5d414059150bb9585de4f308bb","72fc1934abfd8631032cd45765ce561a709b1a9d2bc052e01cd23ae15ab4779b","c55e0f84841a72781ac06713c1bde2af5df634c9b2a634310f8e81d32ec65aa9","821e25125e30e5db5c4e2297b14417f591d6893a0aed9c60d83aff61929fab5f","0dbf32e20194d17b7e81f263723c3260171041ca94fea76edc03aea2b65ce5d7","8633c326ad88f616ad39146f101ad151e4dec84dd8f855e20ec2a7091c6a861c","8c789c05a5ae32e91e76030f083c7a4f07b358909f2126ae2c5a6965dee585e5","5f69658ce29a40c9da49ecd8c5bc00974b6c13b7c69392f73da8cf063d459042","743add252578c72b91dba3b5b24780bf1d795b37ffa1c4eb0b9afe7ce655758b","7d03876c6751c6cd0085777ab95ea1a6936ea7fa4c55e39ce1acd4cbd8fa414e","ad2c50dcf141f05c8dcf0c3075a2c1fba07ec0989b546cfc1f648b970a1f1ecd","815a3887a8b48983d6e1213605e86af077fe29eb1ce462828aab9b8244f28f0a","9e3d3e9185ec58977654c1080391ecc510384f7a602917e7e3c2585c0eb2fa1b","64370ec477c0d0396d351a90eb1e8fe965df6504c284e3afcc179e35dd7a46cc","adb8be01759dcde2b2c20cb97f5b30923f73eed1a045e4bec80f2efcfc40f057","129c5c2750578601624ebdbcab5b492a378597c58267e41602c6abe4474cf01c","b4f2b05a4cb6f1b60e510749c59a5b2e73d545148b96b9ec44006d2b109f73d9","36a7a029734d8b642c0203c4b4c5a043b7ad3e77a2372f15a1e3b18c4c8e98c2","09a340ce78671c5fe9ae1eb7dd75619c16cfe9313616eb69772722f95bbd1383","269d0d6341a258518ca935220436546fd31674e843b7feb6a559aa33e3f6d969","61ee290b1031985aca3d7813cfbd110265a81e64db1f2687f470d6f5bb86bb37","088f73d46c41477e3994ba19ff7bbc4bec258959fff34502dbb32bb89dbe9d2c","09c874e70a7bea5a7f50dcc809b6dc10a940f3a526eb99e707321fbca54870e7","a1087db82a364995d822ed2e8f0df7ed9083fafbce2fcabf42f706540964ed08","d89f4863796df6d7ec9209ecb20111169f1b858b06f1f372b81ddee612b67673","702eec9fff70f487a3a8126520da6d4272e5f1a06afd1434fab82e0e1c67581c","082667d78d6caa1af550863dc82d3a02ea98d7d13aaffa996dba7118a38e3637","d1c16d1a221e8508cfa07428e40d25cf13ac3e15eb1be56b9983c12f5e4b3b52","ddfcef0d83a8d28dd74fad1ef491aaf96665293c2db2ab0e30fa1246b30bfdaa","ce190b39ec46e0811f4d5a306221b9d07c3d69c28aeb1c189020e5ee1ba6d6e0","26bbe692f03d5fd9b8c7db4771924c884fb824c7e15741ce0ebcd21dc740bfe1","6fa256e84d8c393367953a9e8f831067dd5ff7a17720f56638430d64a53b6a59","b1176cf4139caf3c419158635d8244eff4fb536dc9c3676a4e9832d5e87366f8","b1a3a7a628ae703abeeaf38d438ba8ae1ac81ed6f4c2d6d6bfaa50a6fd59af82","332d661343ba55b976f473bba7e7e1462252a755b217fbc18368cb3b83c3baf2","d8ac5e1d124cbe30f92bdcdbda476b74042b4bc872a69fa0112de80ae54767dc","a0706609903d97e064fd4ff626b656646709f61f222611c894c93cf95f858dda","8f6538929a220c1e97395e01d66fb3425a03e66f44a59111e32f6e0a284aa749","cb14cc9645f50b140368d9920be58b311e7b75f4a4236b7cb67d24faad5f67da","ade2f900f4c2709e765284557d182ce29a1d2ab3f16977b87b4fd20f8d707098","fa7696850063bae59497a1a0e4d3b44ac091d8be5ae520db8bec2e0190efb8ca","344c09199680044b1c1a2f8d7f9af6d253467742031b316a1400dc7160349cf1","08f96cb316059d4aeb3eaa87d1d632c2de37b66ca882fa86fee98d97edb362a6","60ca8ee5c716848a696a09b248b8de95c59d9212bfe0684070f31ad35522f716","1ee6a5a21cc924db75824ac1f67ef52d22bf9a062f60c68ca6bf964c43fbd485","747abcb18fd45b5b9fdb041afe2a627981f4b13094ab6e85d97b6fc341b82481","82f95fc67c9f1ef0e447ace8b6a0aa5f66dd41866b73ecc5750f56e4580b23bb","aace255eafff90c463d8887ebcaf49e91c1550475e8734bf2d314830eae43a13","bb376587e4f5de049168215ede898496a4890a1fa56dbda5f695ddbea65cdfe8","17ad767dffe1f74026f43703d5b6cf2c58b402594789d1b13367ca9ddd1e76cf","401b52860e2affda86f210dc992bbb04b295f5213f66cd7dad5cbade48c6f0df","d6e5fe84f7706e293cb2c9568463c089a9d4cf91cab1d41dad977f3dd817a031","5c34fa4b0a4eab50696597521c3772e85f16971b23a09a83fca5de773331de73","3e009db57fa7b6b911c8c2591192b7b14004141eb69342ebfcf480902e442165","2dd7ecb8f8f96b918e4ed232a6b8658425c02fcddb606893e4474b6ba0babc1e","4ebe2d794da78a4e7349397a4c7917598c6e5474fc34cb9c7d7888833d57e53d","b8e84b8ab2cae56cf718aa4a9e087126580d9dba2300bbdd4e537272a54d3218","a8730eaa0849d53f805650d7ee72dc6430fb51564ff02f6739c4726d3f55e722","2aa21b20f325a0e5a448e224bad102a9ec55946d5aca71f3a2ea3b77117cb4fe","412152b80cee0e2b41df15a064aaa3beb401624722ce4f42d1faa687e425395d","2c8aaa1ad469b02d0ea6ffbc0ae45c5a0b7292da541da4bcb36d2f7c8a74d562","f1f74fd1806f567a1465a13b1349fb39e78a61ab9ab5583e9dd277c23b0c96aa","7c8bcd43cf26003fed5c992433bfafa9f8cb04171e90d1d188fa693a76eaf264","4c051e20a9c70fdfc3a6305814e6bf6d3f883e56af9d5a2620ee0ee97d7c47e9","c79f031b125521f02ff8e57a21e4663cf875c73ed9f7917b0aa19f59be03f86d","678f0778bfab92a24c39d668a3eb9d18ee43808d03c3e008f04d1aa4bd9f9c07","ddf4dc65e27dcffe8488bbff178555b6380366caa74dc376f3cb3f9e6e32059a","11cf055837eb988044327967fe40aa6138ffa546a724ab669eefe4ccb3876ad6","3ec76d02d40f47ffd40422d870726eb11e21f84b93355bcaa7c2ebda47518d55","cfb827fdfa837d2c1a3b9934e01c1e1020f04108fe13ddbb4645091b8a9b7eb4","2196278c32234e18024cbfb9b1cad10fb4c850918261233aa4e53c9b41d5ff57","a3b63358d8feb4f760d42fff0f5602e7d2b9a79f1316126f828447b74513a8bb","83e2e9468aaa2431cd5cc30a7aaeff4766ce6a094c63cf4e3330be4971b55959","6ad35e8ff0760a44cc1ca4e544d53dcec2f96e1119bab4af93f77ed393a06dc7","ec655a72d99e359574b7cdceffdfc973a2aa0bf4864fb5469d1012362dbc9bbc","986e48b630d61a5ea069d5ffd0a7300eac72b537a6a80912e9f9c76d36930c3f","d79c4eadb9ca3c70a7018332d5981dfcd39f12c69e6278d5edbc866ce53a3542","53ef3a0a6f11f41f2f8753cf0742825678d6475a0804fa9a4f802e30b63890a1","799c1ef4436ca2668a0a1366ee77aa00441f928dfeb9e211e4fb5a5b651e3b9c","4d9296c82df8d850d1c92b055d8edd401bf2578a92acbb84978cc8c82f627c39","18f2da2d3f20ab01a79f72fc3cab4821d3e242132d41cfd89ee23b432c520410","6023e2b65e129cef896d2577b8d49b8da99c6f4f92a35bcf57f7a8261a9e5c3d","e1e0d47c18ea9556fe6bb718076dc0a05f24ccd3534c46b903c40fc1a3c4ea86","4df731380bec33bece48e7e73bef837bbcb0a39705f5cc8c4fc128c0bfc9cc15","abab4a99902f64688599b579ce3a2e3c9d9f756832f652e2ac2aca0c211fa612","d2778b1c5a63a8852473957a15bbf9e19dc46c3d18535d044f8c6a9697b854db","ce8193e780b1b6e7aeac6fc5adb2421d4b47c3ac6fe1fb5c7019b6368afcf045","5c728a147dbec80d4bef9f2603eb0574ea905e12897b249d609131bd77e761fd","3beee00c82ac683f7635df13f90003a40dd442dddbef2f12ecd561a58fec5dfe","e8a1e5fcee64c1f4cdeadb11b6ba6eca0a9319f49eb24ad3186efb5bf8c85050","e58d5b76f455469bdb9c00830d63547a11c4b150123d37438b368203c0dbc2b0","0961943e3a9bf8b833aa45a7e0547ccf1af29c646f1234c319478d4e27ba7bfe","d3c43a6caa5b4d37a75bf7716ad0bc76d6419f4d8cb955be95a50e57b78ae133","e691cddd472bd6e35a75a139dd84344271e0cffbd1c66a944dd550a4f2d5dd4a","7a2c67c88ee622ffc18e4e4bb5f28bfcb1d80a5e8f87fae3e988a66214cda825","30ca33e57008650ac6ffad58112d136f98dfdbbc854b01612cda3554d9d2e29e","25f55a6c552f7b7c3d5930b560624e444ad34301efaecb8696e31448d61ed016","db0fcfe9c8f46e4b50cc4bec237dfbc06d06e17577490303f49290c0376218aa","85d910c7fb524e6af2ce3bf19024ad561792b7bee8ebb9f60a78508e3493e1de","614141f565a53aab34ca221fb7f7f48f350a6b8326aed727372b463a3d656907","ffe36a78df6c331c084bda4423d58e3dc82af8b4caf71ab3426b13c0fd615a51","343af1b830264da5aca4b3e66778b28654a21c9f56bb158e7a11cd023f10af9d","93ca2ff8a26ea7d0a0016b54edca86e3b2e315ceada458fb51070786f734276f","f0dd292ad7376cb3f6cac4ec175859cf8f52f936bba242b355811847c945faf1","a66d7a9a45abfec6b8e6ca21270f4d79fb164617438db6f9e8f766c18693b1eb","705782add397d850ef2c43386c3ef303451a596bf0dd6d4e9b0b5aa268ca882f","5d8c75cb2273fe77d02eef4825ef2644b64fd9be42dd566b854caf517236d7b7","7145f05bd45befe493641be2f92a35f2f09c37d2fefeeb8ae81020290bf37af1","f35496848b5fd7f8ba4da23a1e5642bfe208a7b4bffaf568b20e3c32a370ec89","cb1b8359d6dd3d36cc50608767a7268aa8c16ea4e901a289e5e636aa4b434b5f","7d6d719158a4dd7f5d29081b7a042c10c09755b67299319da5aab5bdcbcba997","ecdc08bd88a78a419b1e558f2b36bfe4c59c6751b6b693f7bbe72a7e84856589","d7af6d2ae358f2339a78199f0bc7261b70822a8a412430e1785bdff222397f72","08e344398d2ca604137aeb9151c0a8561c133d565f64020b230417a1096c92af","2dad929037f16ff8f6b6ae2b7fadbf8ecc215edd685747910611f4f4816def08","a944bfeb4cc0c9a84115b97a73b9d8e35d20ab27855f581005a63310b8ea6c4b","9c9fb13d1dc12f656aa4dbb6ebc002d8ded86ed8e6cfb3a372ca75d07bf69834","f1fe7cb78ebce029f3666107dd30760baabe6a96ecfd81091730982325e161a2","90675347e5b537b13557004281d7aee8767191bcff998ab0a29fcb606cdc8e2e","e7d263c3b1f75330bb023216bfea9e5001dff78391bdd6f5cbde657a122cd4e2","c7f9a127648afbfca1330cd5e0048612a1816254ef79f3760b811807be7848a5","956c02246a61ab5bf3324ef11d64c9b79947d7dbb8c0d9ca75917a1b39757eb8","a694a26773a7942ad64e9316f198e8d764750dc9ca02c2489a4deae53f731392","f4237b98241a34e70ebcda021db7d84ed2708a73be69576d6d62abc520cdbbf9","190dde699551989bd2640fae72b63cee03f35723f74616cb45051d527f98f0eb","45f29e5d29a07383eefc470cb97aa649d86bd3a5d097edff727f3f1ca0ecb70c","7db2fcc3af5774098dd8eefddb5794898650c728a51269dbc572de65f06a70fd","a3dc743a8451983ff951261ec138300ae765dacc66784993abc2040c11f91edb","81b0b5762d148af8db8549f093262e092191bdf57001710b5fa22f12caed942b","b18669a0eea99ae24d02b99d35e565e4aa51e38e663697e13de822e556b2119b","8f1338dbc2acf1e4b5d1a1a02395549a7d183ebb8a1c3f0172563134e6c79af5","8c43a8a5d47bdcf6f66c247c199ded68e92b6650f6de1f55917caee845d1d61c","3b0cf7fa9d1cd27c5a187b58de15e0053aacbad2eaa7309341072eac0ffca8cc","e58e9157afd209ac26f56598483be9c3a923b48a66d7ed4ea7470a6428c97ad5","c49ca117a3159ddc4fd476df68bc7398fbf1dc1258ad7e5a73c84bd2b5eea6db","fa4721034015900bec6f6e88324bd2b8c2485b0b8c4dc2e01db4d7dccb992e81","cb86027e0b2ebe1b4b00b5bee470d5b0f0bbcea8bef86082d3fbe4439472ae3f","b519b10c28ef75f97b4fe89cb09eeba0c84b7ad4a588b68021900c9b3e9ed1e2","f787c1b82e0b68c7370b05175ea8f2875589152499b5aa5382d0061101531501","434099b9d122ec3e07316fd44b24155c5c9671a79479bf9e54033edf0d61322a","188f1d7152635ecaed19c16640b82c807ce2cd40cb284627bbe8d1f798d3080f","23620c124cc224b2a9011963bf0071d719953c291abee0f8508a9a4f5b9fd585","d7d7d12f908a1f4c19096df80cab1e70ea000b52a4671c1c4322c208a3a8ed1b","ebe1188fb6d9fd08c976e0118bfecdde9151a29f7937d6b6de9b7b3b058a472f","e05aa3af45093756bea6ca83b2d2a3de6d48e9ccea1bafca85e9123bcc4a2aa7","b4a7e1082338f041784cac7fbff09af0243e6e3f1633785d5588d35d0f3b65f3","ece2dcb5dd42f11d0d126241c2647d18c4694a6bd861e8571f7905942466f132","b663445f403019b4916ad3417b322d283cef4664d40b510bd10c6b7d23aa13f5","04f25e861fc2bef69dca7f8bdfa3c3f7f4c845e3f043101cec4bb8623c90a8b5","19361c1e7dbde76440cf3ee339c8fb4cb25919673e9d68447de1d107d129f858","c91118e0323bc3666ddb99dcde29582307fb5e57c67dd269a390816735bb2a9d","9c296dcf2de6dc7aebb490d44191b7ab319f5fa42ce3990bae61331f88fdf34a","ef601641c988dfe44c62cb92473cc055dedb95b8f19b094c2082387715601505","4f691b2d3d09b55f30d222354bbcd9debdccbe9cc5d5b56f648d91a56e84250b","c20f21a26caf3d44d0ece98eb639020887ca409463713da59c0517bd0f3613f6","e60b8141222612b42838e9454ccbbaacb4c546b08b435b9f42fa0ebcd0b4c50a","0ed82f68db0ea7ff57c68e53278f2fa46d10820fd3e496657060f9f5829968cf","a1d384871a20db7405523716436cd64104241bd3af204b49beac0193f2c6a6a7","b954387f67c7580f25eb8cb667dd87919926f301ae702688534c31a8b9ef33d1","77863145f1b1e2be653edc181a8ac97f6532cc2545c991e16fee3e1ba1947694","050d5cc22e44542116a27c8b38f8c26acc9c89ec288f96e07d7ebf59a3dfbb93","bba0f55793b9e9b995fe5641811221c4f2cbede8dd63100452bf7d890399dddf","81e0761ba89fafa1531f3d65e7694573f91a771b82a62773f8b42156dd7fa7e8","7fa84f8fb7cdf2cac7ffb56aade25b9de8c5622424489df39e5baf4313d61803","792b69b5c9bd1a3974f31e5b7fe927266240b3afca52ad7f11cbe121b24227d7",{"version":"1c7d5c73abb0d80b28a9accbeef613e32f46f61764e57994264aa406f9dd4015","affectsGlobalScope":true},"eb6a61e3e360355c21e5c3f3ffa7949450f339e4ff9d7bd11ee43d81e69655f2","27f494d2c924fbdc7d28c132ed4c2fb06eafe080f4d2ad2500a41b535265a578","98f6b92223429b6ced05baf7a08fe5561ca224ae6b0f2fafda91e0012fd56e88","abea1c36354df260fe0d27c5f8a00fcaa4b5f9cd2694b16dbe8b0bce29e94fca","0f2d602c888bed8c628a23a90ebf5dfdfc80dc8fbbf01af3d97c4dec02130e27","3c3db9f2edbb74e8baed1bc7b976e51c274083d97b7b9c0df99eb0d43ce7492d","f5954727545ab80036cd4ad2058327deb7de2f08b127eef8a23c34da8a717dec","bd34a89094c34484b6e262b9bf583ddc4dfe32285e7865d30bad2bed7db0ac4d","41de2ec2cdc4bcdf0a94e79943fd384d14ae82438dd4cd283d55471af7fba7a5","e06b9db953a58fcfbde3199029e49f76a68c7ff1c81936a7f69e9e1570e6b6cb","7174632e42d416c012b0ee4b712bea972648e3a1c8729fcddb753158ffc26ba2","9b550696d520fd1eda162fe1c7ea332350533d5c5fb34d9961cfa9cf28835f21","0dd3533681d5dc8672bb617667cf9942c7122fade9b581fd2f622a40b98ef50e","9f31681b3a78572c165aee31e2912a22c73b891b70d8e4e11c9d99ce3618ac89","c31da7c7031f18d7a37c7c394cdfa8a45d74f2276b8853759dce612f7f126aa9","ad7661b28c644035590876bf25674b0a66ff68c5ad87e7d5bbaf9fb6658b959d","4d8353150f5710b8ef253885058ff57255eda45b34efa313152093574fa31896","0d7e603f520aa3c6c3f82802bcbd20ccda006f1b8d8517c8af2372b387918822","a831ced03d48b6506c904e1428e593f853d7dc7bcc6580302c3a802e3add7d5b","9d17ded6a8ddabc7f2b4af96b7d63cc7d833fb1432653d7bed6a87b3fd50aef4","732f051920c02b646380bf0e7fc7725b844622ffedee94229f2a0cb56e5b3002","9902a9ddb3289e22ff9eb3d088bbea6159c2849241b293ba9fc62399ba2633ce","ed254541641bdb808757cd2c9556488146e21993189cf1541d5f344c64c9ee21","cdd832bf3559de3d4c78bcefb8fa2700271de43e747830c8b56d6a39977ec0fb","6fdb1f6633ebffeba20ce84fc0ff7c5351fe10292c801b705dd7d094c461793a","84ae86fa5d548727173c18dce4b54d941dc90e56a50a83096ebb13ed1c74f8f3","077409a04723a54a174aa81bd7234ced52784e1993204e39a5ff76e16954b3a0","93a4223fb87f6f08a54d81a9fe9017a166e22201aca2adc92083dbc5f8c82e22","d17bdf16a98cb1d9cb60d2806b9e6243e85bf107691d042f97305d2ccfb3ad5f","afdd5cf3f750c4f170ea46ac629c3f6ddccd7d01916fb3e5cf35575e7e8bbc09","9cd62e28694a6a8180a210e2aa69588402dd5fb0d2f6b2e814e5e48acb9bd3d5","556fe05cfd69aea30fecbaa6a9e763d325e0b5418dec6bdf42c77f2c7001f38f","66e14d1dd2694388b5200597d2203249bd512c0b33e2bb0c8e20e0ccb6ce5c19","8cd7adef4696e91ad2d7f9cb19fe172df9491cdf7d5f74dfb56698c562fff100","16ebec91286d987b7b3574e6743f646c3a38e736b640bf1cf266758a25ba054c","9e141855150a843699a0f9948a5bc3d3b496caeb307f774170b143f8e1355cf7","ea7979a7d3ca3473f574de4524cf3a7dcf2e9166a5d88044491bf32f44db93ca","f5eacf63902f9c644544325308d3f4f095b24664a3d652c0df94d39f73def7fb","ce9acaf05dd94224e2f02c5d2722aa1c1a55b02b0c00ea5483aa580fb5e3ed17","a10e70700657b1a522ffe0e2e19ea006279f5c02724de93e230c45c0d9699038","8e9416b93758ad9def7697b93e819641cd3a6ba0dd98eba30c5ae674b9796e5a","5035bd0f00a11d52f37078a01c8e38ef5049f711e8d8d5d6bd8765dd75eedbe3","3a7c937988194783679bd5604ae1905350bb305dedab606108097b92e7880b40","f26596c9d2a8e7a679c526ec2067b807e0dfaffbbd01d907fad71d1e0f317c2f","032b9aac3ee8faa3a37fb12ad21a0679101a2ec299fe7f5ebc8eecaed3626b35","dbcdea372752a34e3e35ce7298a7bc55cf3d0ba8ded38f0bb702eee9e8fd78a1","a4aec41fa3ae87b326ac2dfe722f7f1ac950fa79e98c2a0cf1681389ffd8000b","6da7cc6a95d8a400b13e3324b80d930e29f33d0ff8478746c0736c4b7b735ad5","53ba0138cc988cc490460b2d63642165acb8dc9295bb0160d3619a7f494a75c6","228058754c307e8a6f463282d7592e00a77ea982ad805f060285acd430a9202c","d683d4c086e9d379b587f1a8d2bcf08fc578965a8b2f629a23fa1a40cbbb02d8","5672b74da3fd8413f8bd1e44c51786318df43c11a5888752f8f7a6ef83b155c5","627fc6289efc69d28b63b2f51d6315df0bfa89c80aaec98a8363f8c2892092ed","0ea593e1f2ed36b3b319999dfd2d1c0eb6630db4166f60ab674437890bf70f05","3a1a55e44ff931dda5109446c1aef61448967a1072bfb68f6a8f58235ca57646","1e3904334ca650e0cd4c1195057a61fc326faad4f183bf0d5b83f8edb9a172d5","cc1a8cd74c898fb100b75e19ae74e527d45f976dd9da0bf17a95bfcde5ee4857","ff44328b18d2e7fc49bba1f655effdac76c43499945f92085d505b9baccec57a","054e9d21bd7c6356b8907d47327a9bea9f74061db9e102757fbf68c531b0b201","644f323a03a4d4b9080876f14a4ca7486cd2b32b1a62912e632d6d6c50f0c7b8","74ccad7875f86853a7299762dccf250d4474dacd208b69510c6fd0ded2956f83","5428e15aa050a3c5a9d6927e3bbac5f4dc0181d60d505aa1bb46f11218ad7750","b02c9e98e1c92e5302e82b082539989f104e66724513cf3d40884520b89276d5","7875b94e7742ff2fbb58b16ef1de2d344ba8e456c55e4b32833fd2f2ff2e2b8a","024a9a6812092cfa7d68c1db13c5347c69af6853171c3938c84af6ae6119dbd8","1398cb78035b8496a6bdb4f9b02efc4423acf2b9dd5bb56a888b9dc54e5f41df","55722abdc8c0f2a35ef8b579740a176c99a523e440289af759a99130896f9a5a","c35d8465f290f7a2b012af4c0f5153d59b0048e6a53917447424f4d0f7e285ec","a6a1e002f336a705e184dd0ed930dc24de6055573cf4f3fb88177258c039ce9b","66119d0902a244abfdc64aa09ddeb45df77a4ed660e09af085332de5612fe3ad","647f9457d6fd45ae3088075887e81f1b3b6fe3aeb3f16c6d058aa3e02564a32d","8bb59adec1d0b331313f9d9a8dde66b93bcf653da2996fcfe9a09901991821a2","ba3d4b235e44723cfd62568e6f710d16c8a315ac94854388c946eae0390ef05c","d3075474f41dda8041511f344cc14d92c5022d3fb7784946a66f1432e367c153","3a26a54e0444a162600d448cfc74c94fe3223b8a9a448fe4cc5287a0b5814240","990d5da3ccc4c7f53ab38bfd5ed1006f2009cd011d7bc9eda8627007096c9342","72687978aeea3c59d2fc8eb7ada86b6fcfd6b2793510f94729e8723b3f898b9a","2ff6232559542b0ac0eae1bc25e0725fbec9d77d07a10729ed8df0e2050b0ede","2892034410fbd3f1fa8964e403e3016bfb28643b217c019c68b72f4506829627","1ff062ef989ccd1fc8c59a56dc263b732602a8750128a3b4bc490d0b4e7b38ba","edac0c31533eb5973134040e6cc055471ab761f0a696063ac8c515a966f8d031","0293007b2f09bb2d169cb1d6f1b0977944e7cf53146ffeca483b44acc667331e","1bba5544f5ea9c9fe8ea3dfbeff82b670c9717fd49a508d467035cc8d4be19db","912c63800c0c6203563dbd7cbe648171e465a0144b49226c030ddd17a799b76c","68766bd7e0ad21c70f514df89300b94923f089e5514f589f78ad69d9fcbafc57","b11dec0c8c49c05d3bcaeba2bd40977871de0842e78d5bc236c3bfd1c9532a4b","a1f3235668ee764c1114ce65b0d6cc1f373ea754a8110d82e77f7102e461dfbe",{"version":"000b16f53426795ece4898152bf39bc6fb110a4b84b8699077fa1c65b1513ce8","affectsGlobalScope":true},"f278558cd1f3e00ba92d5af86c12c3ae5de12641e656fa96e17aa39f21463097","9fae27a9efe2a4ec9653cb17bebb6f82cfd7715da0301933db2b295564e0a621","b877079e0600fd3296d00447dfcb1aa155d33fe820ae0a8c26fa15d2e53fe55b","bf879f9650597b053a5904aa86fc82d86410f8961025e24601334e5f7bffa61f","f690a0c22258aa8994ae970976386f41025a1020a1eb001b2e0f46d475ac0f38","dcb6094ed617189ed8cc93b5a0f7a95e9df9eb22896a1496646b5991ce96b599","d7264a09d37f7ad76f42a177800dc2d09a3eb513fe5157b7cd0508c1edce9ff6","64c4ac585530e596a074a940021259dcac015b00358e3c00455eb218e2c3b108","db009cad7d4fa5e654123add729aab8658f297aa407a30d1145e2646259f82d7","02fe7bda7abc0397487734247e290cd0078e6fe939f7cfd89ca2ce55a25f8b2f","d1f1b64386fba9f6e7cc92aa2952f1f082fad079106af3743bc8d6c9865f8392","93c4e88bd6e911de0d00b1da1a0b755718d6ba9fec907e41df41705332dab633","b12de681912a47ad06dd8f06b362327f049e9610cb75c8b3bcb01dae7aa3f584","dd7efc446b21e0f635d821f002c5ee4cbbe709624cf22695762c597649248b77","ca70b2c7b205715eda31ca675c6dd8dd6aeb0f767e44e5dac5f70fbfb80eb1e1","2c1de79b584d583742366ec5963f820bb51e70c6efe945c153bb5dec9afc9cf3","85eb49cc42a708fbd0421cd8ec241833068108fb876f1719df64b984cdb73828","ca6a2c48267a23f2423358a2c79b2bf954057635634db7d927770c68c6c57ba2","6c424627a938110b1232234d5ae82b2d6e409df1bfcc129c74d654f790a33b12",{"version":"a7a15de1f0a94b36ce0f85a5dbe8be4d7f50bfccc153369be4311edc0f30eb73","affectsGlobalScope":true},{"version":"942c873f6e17cdc4ca0d1640c7857293ce02078a2fff61928db548ad1264d9aa","affectsGlobalScope":true},"09bc4a3da3b3f03e249db6ae02554ee710ddad7855bd860a9d0c142f6f28e075","b6ce4fac77847abe5a71d16aa166f911cc29fdedd0933e8b32b082ad9854c7d7","9341f2cdc9bbbf672dbcd84395fabbc051f08c6f1a78b7b7f76c0a245785f314","ecdc2d85bfdccbfe6bb010adb2edf9a990d578f0d5f08f40fc8b6947e1a0a562",{"version":"46c63d1dff48183edabf7884fffa3b83b25bfbb8e0a8b4052b87dc0ef694f77b","affectsGlobalScope":true},"47fd42ff510df0fe8c3bd069a5352a63ef2bd80f6a446963b4869a7312f194c0",{"version":"f55b6ee76119d458b0a41cd8dc056e0c512c4ce3a5790e73916b66bef8eda100","affectsGlobalScope":true},"18e00b0d331ca31c944720ec257f986fb11416351fbefbf85367e9087e6f74b6","2270b74ca53eedbcd679f239bf865abb7a373645ae2120f1bffe3f8abeb7acb5",{"version":"9f8189808acd0707df9490e439d3e333d688cbafedf50aec73a3760cc6c1e766","affectsGlobalScope":true},"d95c0afcbc047e4a95568b7a75b4fdf7f3da706f779070d637ffd2ac147ab6ca","addb28e20358c99c9b27abbcf65d27008de9290ecfb8895b661559c950da3e7f","de2ca34b110fe7664bac04673980433cd0be925ad5efddad90daed12d5573ccb","0e1062234d1237d80f39bd4832b0c941d4a2985681f8aeb00cdba5e40d664abb","e15b2eac876adc3f3591ca27e73b9231bd2723f0c611cf45aaf0daffd0bd660b",{"version":"890c1b6abd30cb19fd630c375798bbd345b1e50f0151ae69d6f16ebe54bd6aba","affectsGlobalScope":true},{"version":"435444eccfb98da7325964354c703a6f4944fc977125d03e34374ae85932b4d5","affectsGlobalScope":true},{"version":"1fbc7faa8b4d497a585d518b0028aaee4efbb1724e8ae8f3eeaaf167ef096245","affectsGlobalScope":true},{"version":"86fdc88e019f822afb6ffa55bd6740e32d637edc4f487f866fed40fb43000805","affectsGlobalScope":true},{"version":"8959ce0a238cd6c14fc39f61a95cf04a10dea4a217308a50dfcdb12dfed6d707","affectsGlobalScope":true},{"version":"e7318d96b2db5825ea9c771340c672314dbc8de540abe4e0a9bb20f3e6e7932e","affectsGlobalScope":true},{"version":"c954d78e442a43bb433f6eeb9bd9751890ed7d24a26b38dde926ac1d480c48fe","affectsGlobalScope":true},{"version":"d90ae624f69bfe1bfc9acc13b7605b61e529d92b52f0884f534d5d68b706fd0d","affectsGlobalScope":true},"d9923e41557d39d3ac181dc8b8204ad8cb64340b5f143105e6902b6c9d3f11b8",{"version":"0a413fc4229d4ba9ab89ca58f6737fe957766aa30f5dbee7b46b5021f0a201ef","affectsGlobalScope":true},{"version":"3e7416eefc61e1a810cb432251894d92dcd1bb10b8a797fbcedb512819fc5b64","affectsGlobalScope":true},{"version":"decf06ff995b2f3c6a610df1c6ebe1096ec999d3477dd9d4a86cda7ce3be0911","affectsGlobalScope":true},"a0b1b305ae962ebf4bfa4738437f39a6767540e34feff79cc67dcb9891a63a1b","1fe5d324108e4a3ef521585ac925b6cd229daf1333e2f91246568dd88fae583f",{"version":"d0c875fd9cfff920f5da9b5ff52234dbed81bfd247c21876e56762fc9b02baf5","affectsGlobalScope":true},"f64f7ba9359469d348daddc76211b96fadbec4c9bbf51050ef70d7f83c1874f0","8526107f7e19a6c264ce400535416f411edc913477a0a0e06cb065919ae2f19d","73194c24bb01018b88f7f90886f9d87caf6d9f5a03dee4294f20d3282e5f8afe","b529e1a572546c284f3e0b0bde4102709a872c10e7fb86b6c919e4d4fd03c7d9","83ae03444487c8b1b54529c3c4c32f223c5b50f77e50043d137a8ddc26cbe25d","6146070b6c358a4cab2e575826f27fb97fb6b88a4310659ce08f376a8ff0c43a","1ff6baa936c8013cd093057bb33c3382f4ffa1ba2eaaf95a13ffbe6beb3bd9e2","669030d21d5bdddd0b6b69ef3ec734d3cdab0f82fecf43a507cde52fbf294959","e490cc4e0cdf6a3b51329ef8fcfe69ec251eb2e43ffc06a5d55e9c1d6df6c624","e8976fd3d0e5186afe3288b865111b3d67d122f6d0458d62240f87d1540bd679","7a42cdba2feee4fd2b2eda5777ff8772deaf57366b232320d2928f9f81111f81","67e1de571ca9ae9165857a8e2682a9d120aec92c683122f30fe4f6f7f4293902",{"version":"a0b14429e5bcc2f6434cf91ea6a5b557133eccab533189c64828b07cf8106160","affectsGlobalScope":true},"527caa9124063565cd3e7f3b74c573ed8db54d3d67cd59a9577977d7f9c08ffa","0f1123ddf73ff94dfec1b00332a3d345303f53ebd44b98dfc6159dfa1f8b3719","b2af9a7d6b5a2def731667b3dc7f0ae50611ce4c165d59d772241eaab841b714","bba18394ec73302052b253117a8d21785d306519993e44cfdab888f641d20431",{"version":"817197fc90486aef8fecfa5d7d245a72c0d57eb16f09d5d166ce00acf51c0396","affectsGlobalScope":true},"e427b38c53df6980af1db47dd055b39c70dc26c32c8b757646a8e8d825e7f5c5","10efbe5cb3681540b30fc6beacf5441746efc474a4351a8a8ea0761e956e0f30","3a722edf01a953b1b8acbff6840230c9243b08632f2c9f87f23048eb072d7c05","d5acdd0ba08fbb694c9bb52b94eedbc214db3b5534beabd472c521d76bee5b77","5f52470f0cb9eb8ecb15579491fbd6de30f307fdf3ba46867c38694882780006","632dfd6a87f1443c3b82adbe3d5b2e1c1e0c3e1580af22c490874735b6215154","6fde9299b513aeecb51e4573507aae2008cd711c3737cb761262b944efb7c542","8301b85f1968ffbba44f06d59754e4698633f258afce9aca7d071494c13ea97c","1f9121597aa0c28f0fdf3227192975cc8188dee4e96f035c71abcf2be28960ee","f7bdba0b3aafff65a74dc1dda3f932e44f78bd45796742d4ddc2aff838ec51a7","03c61400806e0b8acaeacd47912e0916f66707ef7ced006192ca87378dbe0a07","7088a1ffd663e690d22017fa40174ba75cca9b069330255a7a158d424dc6d3a6","a1fa0260837849b7bb7d6f0c51728bde0bbaa06de04b006236a58ae1352013e0","8c8618a34124345e4a9e72f40b8ba8c83a2d1b0258475cf64132978ea04f2753","1cd24b96aeb692a7d416fea938645fee56b2d89e60028d058c5115e09e758f21","ba27d73b22e20d2dfe2afe32aa8d411293b647c1420cbe17abd635a5bae56a97","e01b329d9e875e1e3d74d35e442f37107233654a7765838a7d40bc06c073391f","2b7d88292907543e91080319a397f5421adfc426fd91c1cb7963738671b271a9","42616f5a1583ef1510ab126461b53edf639a4fbd4c5b924a51f3fc261ca8b675","f6d9b542c85c466bdd162fb24f75c4479ef5c7be42ecc56c6406ee3767cb8d2e","706262980b6ad7159ec0fdbeb93fe77e1a872af585b67a28836c405e700aadc1","eb182333a5a6a7019f18092ee4b5891373d857cf29d3101aa50d3ea5abcdb453","936a89bac4b3692a17021f31283c159d015e61f54aaba1b9090cb71330076b53","771f35f70060e4f3733c08b556b1f6cae278b7f1a2161b84f6b8e0b3869612c2","43cbbc9c8ede72a76d5f47a5c8d3801f1401041c93218e3ceb817ad0ff4172bb","55181c50982b8d1ed7cef464e0a950252d75514f60480e15be18e9e0a07e5656",{"version":"9632cbfc2b1d8c02d8178b37f3d90cb95ab50cc0c25e3c49918240d0b3e973e7","affectsGlobalScope":true},"da8f0510bba7dbced49284eff8c112e5c75361a610cdde84339876fdd833037a",{"version":"71be72855251ff35f793d395f5c92458cdc18ebc83e233a1030ccc6a56d7628e","affectsGlobalScope":true},"6c019d8aa21953ef0ef590267485a24e7842098708d91fc4017891de9bf328c1","6f73879760c5189d2b9e4f78a2138d7daa734fb881bdcbb96e7db55a896dd796",{"version":"418ee5b5d81f1b9281371e032d1463ef1265cdb2c34469bc282e9dc29d2b4f48","affectsGlobalScope":true},{"version":"13a1f29b2b065e893241483ac31310fc07858f1f6f405074992339cd70657592","affectsGlobalScope":true},{"version":"0378da097790cad26ef07ee82fe0fb34f81e3ee4e236b9b9e0771abe79a83d47","affectsGlobalScope":true},"d1c7e2876124c61ced32755985121d68968a7121b6a2efe960426391456df8d2","115a4d6922d7522db660509c245d197e7472c907a564162b9c0ad3e63a6ef687","3f76d6a2eb6fa7bf4618beee1e99c90ae92afe54c3aedc603c616e712311b5d2","245c226dde6efe84be4dc451dc8cc3a240cdfe46c2a9df7a04a554e45e64d1a9","806d787c708b8af00b495ade964651cf04d200890250acd95a3bb67f0cc10918","c0e4779d30b943df8d0b8626faa3e7e37053a46c04d64cc082fe445b8976c8a9","880198647a18eb31c71f1c168aac1011d7d12512eebfe1d7d5fc6b543ec7ba7f","30f1bd18c0a5086deb4ff76763b5c2d50bd8c212a839182504d86ba4d071d013","b3aba11e65d58861e4e1dc6fe533fd4af638c586a17a84754f1ae6ee377c2113","7f9a30a4b7eb59245acf8fd45d9620cf3822c3a404957eeb1eb4e10260e3c66d","7b5b853740a9f5d4ce416fe1da803ddbb076dd03f297ebc012a6d5f690a9de91","6a91e51afd339c24ea5d58885460b1173f771293de26a68b0e858b14a3af0792","0c9640c664d3687bffd99f72ff215e3abeec63c1aa7bf3943a91e7028dc6bd37","ce788dff8a0dd073cdabb6e716df901a4fb5f21de4261d9817780d9a74c67d29","c7286276c5ed2ce51557aa5b6dd50056b2a004c67a38155a4ea44e64920e6d37","54062e292923831ec0a760798fb374290426e6c82dcca20b8976079549f64822","3456f13e2faf8a06a1c91aed0334216670b694ea6ac3ccbd7b59a77c8ff1a1e3","5cb194506116b991a2a3df64af43ffbfd3a889b686903f88a38f6bbb80fd7fd1","34d6da219a9fbdf0cd002fd5c2093190afac3e81f0c855fe69f1b2aed70e890a","217d1a335dbfdbe9906cdca67de04a1648ce112828da764b1fd80ab4838a1fed","495162f178efc3bc7de5e5284582673e2adb2fa5d25b0f8c14387d96fafb9205",{"version":"78f15e75f0f6ed6b81bd179c173b4375c5c1ea43cede418e2704139253a0bfaf","affectsGlobalScope":true},"b2ee72443b3910f592fdac9a98ec5b11bec9b35f53b989e75373b78623d369db","2d27c14828a23d5d27d04a73bc39b9958e3654c79d8ddc462f8d4132a4a84105","1a6e57e0b2a854e4672f9b47be5b898ff88d99079135f82e02f74a1001b2ddaa","bd184839c4efa6e17f7f76c24a260c9d9e5a5e4e432448ea510fe7b138794329","3b5018329292ba22a9f23befe4df14eb6e83c95f0ec4c7a4a5c98df4ed8faeea","38f6b266d6a82ed1c4ec3de2d00cabc294e9c890a4561b5a23b5ad56caeaf7d6","5b07d19cf8bd6282d7f023d572d9df1a98f575753e56bbcb269cb011a7d13c9a",{"version":"794adf4a1102558f5e47acdf06930a06b0eff7d88a6f806c53bad5bbc7e32440","affectsGlobalScope":true},{"version":"789d8848146ba7feb8c33cd5f661ca750558a63942747212be95b4667f0ce225","affectsGlobalScope":true},"42fcf1eb0f8b466ace642e0ecf878719dc09cd0e6536803df0db8baac4048288","46a9eacc5a0dad53f08f3f2733eceeac196066b34bf3d2e0d62120487eceff9a","b13b6219ea0d816040a9294b3ae54e3872f73701eb888b07a5270901adaa79cf","04107a06d9a2c8ccb59dc1dfc8e103dea4bb8a986e47bc0779db95914f27e102",{"version":"254462093d987450eaf33d68d0fb669b9502dac9d5ce536ce22ecf1378b034b2","affectsGlobalScope":true},"ebc6362554b8a9f0faa1f4d57405958f7132febfd50129c601818667d0d4da06",{"version":"b645ffa41329d6b4d13e256591a2c9ab8bb3b6b4390a7f60c73244873c61a2a7","affectsGlobalScope":true},"8b81a2caad259f0dfb97a1cb80374049ce2b88c3cbb690f77bbe2e2bcb150686","7482d3f7fd8281a5bac72cc6aea80366f545c66103e01a796aefeec7918edf7e","db11b28500fcc73ba2a7bb67d76c1bffc203e22fb9c679100df19382a20c3646","d661d4c05c821f11fa810443ccc5a194f48125d964b1b29e0b8d223a2be16eb0","4a8bd9d876202ec16a14b487ecca5acf1eba1197fcbca3920064a798854c7753",{"version":"b9dcc65d3de65e78f03f680359fc09af7da038ea8b9809c566d530862709f5de","affectsGlobalScope":true},"32d4a2e6754681547c8033d34e5e112db9cfff3d5234d034c30f584dd69b46cb",{"version":"8a78b9fdf0283e21f2eafa46d495c6e5b5fb8b0beba66db03b25c513ec9d7b27","affectsGlobalScope":true},"b814a162621c6b26c8e2e16989f1969b1b985dc499597e6ee01bbc283d4ed0af","e101953453255dbdcc7fd4f45474d033a32b73232982185ea2e761a1cb89e26d","b1c610c6a933910c019dd5eab8effb726059b8ecb8123fc6a5035a342d8f23e4","e49d3fc90db8222736d97574a60dd88976a7e0ebff7ef0d6a07f905979ba9239","2c931f65f1bf91696939a1ecff577cdbb7ea014ea46af3092054d4b61d9c6fb4","c4da4f2d139d65061b268bd28a3e0ef31fe4ed18f1a57e1468a60c94fc0e67c1","c047ac006a4ed43f84fa17789484caceb3a0e7104206695837a0696c9835731e","b6f534c2e35077eecce9a9dc17149bfbcfe4c2ae263db5686cf0d6e952bbd9b5","f8529fb8104d111a46555273209885c750639a88a3347409975c44d9da00682a",{"version":"ab7af6a034be6c5f90db7798cf014031fe6e7ae40fe66fdf2c16dd2b956c4c91","affectsGlobalScope":true},{"version":"3a0bc19aa699cd926b0202c901352f607837b0cc56b1541bf8649d022954ac31","affectsGlobalScope":true},{"version":"4b8021711fd14fa5c2cf7e7adc1f17f7032f39874b6857ca4e2ffdd2794f29bb","affectsGlobalScope":true},"3183b7d595da6a04de09a59a9dcc47c8696a103f0057fad7cb6145c97458653d","121e7225a6bf54cf47eea126d58ea3d609f9e448b1d059cc96e82722c2f96689","fef3fb835fd814c98494f9b8973820ed45cc303c1a7188e39168a9594c9a59dc","b1a3ac115441d13a99c33a7ca591a77de19aaa4dd0ef05d560e91f84d0e6e01a","fe6401c76f99702d178981614334afe30f8a4242a75d5c2727ca59613de90787","e14bd2465efe1f9a7f5ca1400f332dde8935c73f7449662f25d8314f6940ab90","d4d5a3de86c36a7e2cd271f36e239d40b4893da4e2371cde78610c20407030dc","f7ea75af440b992d64d4e8a56bacd2d640544f305673ff7461c0e51e2c48f710","eac8451b53e926e31ed988f2b68c31c6f6b5bd721f39b6f4370ca3ce421bf396","84b28eecf83c13787a2466b5d4694f85b257a78af27fd32bf3913906d04e20d6","469672fcb648715c58bade2437b5be8614552908a342e17d0d6a326c31ea057a","22aa912f344d8ffb6c7723612bb0e17f403ea6c4384ed95de8fca445496bb8d4","c11c40eba7a4831b0d2d79af2ad28be4eb8f729b290ee53efaaa25ce0cd333c8","0517ac0428d267d36915f72014260db80b77030b00a95707f1c4b331be26f596","2e01dda3703d21465a64a845b4878b83e37d6ac84cf9a1f25149e193e42b621b",{"version":"6476f1945f1877aa63472962b6d71761b4f3c472eb179d1c14f07443d341562d","affectsGlobalScope":true},"8dfa8b086fe0a7aae2af0bd81ccecdb31b009bec1d804d4c2e9b1c0b8123197d",{"version":"3e08b8f051fda3665b92eace323d306b90d551fb7a7df1f489397d6a7211485e","affectsGlobalScope":true},{"version":"3d648fa39623950df430b9a01b58f63afcb47d60b11a1f29dcbfcaf08734bf3d","affectsGlobalScope":true},"2737e66a840883b195b5705a565e463802c683dec908ba10f31863a03d019e3d","062e3664245b0e453478152fb28941c3dd1db1c154afd032b3fdafb1f12f4921",{"version":"f1ed9dd3d08d2f9189522077d05681de19250c17c35ad71e7f4ae9ca11001f8b","affectsGlobalScope":true},{"version":"ae268e1642add289d4ab2463ef393df6f6e4357e85cc01048691da2e94e8d7ae","affectsGlobalScope":true},"896f8d716296890d8efe2327c12670333cc194156e4dc2a712114c8d774483c4",{"version":"7e536c56a4c2b9a3351fa8c6b5720f82b930b83fffdf973895c7afd973f92fdc","affectsGlobalScope":true},"15ab17fd3e954b3e35c8344a3bd1f3e2f752ebd5f555d6b98c9e3ec478b32987","7b710729e8b6a2e3c6dac224d036158d846790b93037167808cd18ffb874da94","df2d2b018b863230a59906fdc6c010da9cb226469f01844f58b5af560cb9c523","115a4d6922d7522db660509c245d197e7472c907a564162b9c0ad3e63a6ef687","1b581ccfdc5e774ab2e84df568a63e111443fdaf5965d1a5f1fae084cea45213","45f80fa95f85c2635e8268a5d615c69aad8ca86694ed202ac6c4e9ad8e58f8de","43362a0b967de5b0394917018162ebeb697bc098cd7a7600b5d0de3177a14b88","93ee5c4a0da24842d77cfd0689fbf8917799cdae77c3c22995d2dc6a2f79b9e8","ba13d4c56dc07360c1632b9ba7453348e2a2a0992dfe0b7673254b626e3cec4f","0390bafb2e3249b672765ce883a832d4f5308793f52154daf5183a5fb99d43c6","a68c2636a77b6a3fe844d8c7390ea57207ba19e899d46baf9a973d3b5713b870",{"version":"56fd39452b2d579e58e3f1e49f8b791ac2135ac5b6baadebb80aa4d6b0f047e8","affectsGlobalScope":true},{"version":"eb90987a186014ae9cfa8d6ff55b5579c90136fdfa29709c636e52fe5bced4a5","affectsGlobalScope":true},"0b9552b667390077ff6070d5e50cc7d53eeb807cede4678a4b42a907252d64a6","80ae221de1a4755fb8f297832fdad09f591fda17d229067776d5492cee1f326d","3ed92d889548cd59860a9363ca17cfa326c35e30e56aba92dbe3d168e8b75717","4f08f917f1776d9d51ab4b2a5b33b8fed76faf21f3e3f29037b8f16e6e5e9ccc","016c7054836ee23fab7d60b86f962ecbdb6a393414541ae5c83d2bb58a2e6168","a9f63a3949b540953d5496b12f557958920e32912ec60a8243ba4569a3b71351","e46f32e8aa8984a45071e8008f88584b1a62924feb7d0faa5e1c8fb626925155","7b199d24d0137551c8efe8179f527507529faff82c62411fae88e11cb4e5e703",{"version":"363a65daaa6d957efbb49f04c50b1137e68f1c24568221bdca14834bc0103eb8","affectsGlobalScope":true},{"version":"4525f2d827142e5e99885589e3e2af93936f83b8fbde35f6c80051e5ebaaabdb","affectsGlobalScope":true},"25120cc5b77f87056bb13b0c01a05168d6485323d5972feca20cea124a4f618f",{"version":"da0b2cf63dc9052c94cfdb14477e3f5995bb5b403c737fc8ab26a0aad7222db8","affectsGlobalScope":true},{"version":"fd45f5d7408b4ade5b812478e612b59801d371e4b8e467cf1b1aca46acd1564a","affectsGlobalScope":true},{"version":"b9241ecb5024beeaeb98fb558000dbc55e650576e572d194508f52807af6bcba","affectsGlobalScope":true},"e29267438b18703287cd3b9cd05627bec136ac5ea107bf9a5321205e0e46f203","b911176e7778c30f6549f86daae0353c53730eb0ee59b6476f1072cb51ab1af3","f8cc7ac396a3ea99a6959ddbaf883388260e035721216e5971af17db61f11f0b","895bedc6daf4f0da611480f24f65df818ea9e01404e4bf5927043dbf4eeed4d1","ea4facc7918e50e285a4419f7bc7ffdf978385899a3cf19ef7d7b782b896616d","8db893a4613484d4036337ffea6a5b675624518ad34597a8df255379802001ab","5828081db18ff2832ce9c56cc87f192bcc4df6378a03318775a40a775a824623","33b7db19877cf2f9306524371fcfc45dcb6436c8e905472ede7346c9f044bf20","b8eb76852bc6e72782541a2725580b1c3df02a0c96db570b0a7681567aeed598","6a7b38162c0cff2af6d2cbd4a98cfac6c0ea4fb1b5700c42f648de9b8c2e8e1f","19828d5df3be9b94598e5c25d783b936fcccaa226a2820bacee9ea94dc8aff2f","5d45955831c840d09b502ce6726a06435866b4736978e235a7d817ed45990df7","3bdf7ca46ef934ee671b3dd0e3d4cddcaecfe6146811b330743acdfb8e60f36c","8729ee70018ed080e16a420b8a912ff4b4ab3cbdca924b47cef6674715c10b47","efbab75b0f6371a4bf3f9e97863acffe2d76aad2ee5cf5d7666e82b2225fcd49","95f0df8e685a2c5cd1612b83d9a1937676557210d633e4a151e8670650c3b96d","e311e90ded1cd037cbece1bc6649eaa7b65f4346c94ae81ba5441a8f9df93fa3","8eb08fff3569e1b9eddb72e9541a21e9a88b0c069945e8618e9bc75074048249","d596c650714d80a93a2fe15dce31ed9a77c2f2b1b9f4540684eaf271f05e2691","8f9fb9a9d72997c334ca96106095da778555f81ac31f1d2a9534d187b94e8bf6","aea632713de6ee4a86e99873486c807d3104c2bf704acef8d9c2567d0d073301","1adb14a91196aa7104b1f3d108533771182dc7aaea5d636921bc0f812cfee5f5","8d90bb23d4e2a4708dbf507b721c1a63f3abd12d836e22e418011a5f37767665","8cb0d02bb611ea5e97884deb11d6177eb919f52703f0e8060d4f190c97bb3f6c","78880fa8d163b58c156843fda943cc029c80fac5fb769724125db8e884dce32d","7856bc6f351d5439a07d4b23950aa060ea972fd98cbc5add0ad94bfc815f4c4c","ce379fb42f8ba7812c2cb88b5a4d2d94c5c75f31c31e25d10073e38b8758bd62","9d3db8aef76e0766621b93a1144069623346b9cfccf538b67859141a9793d16d","13fb62b7b7affaf711211d4e0c57e9e29d87165561971cc55cda29e7f765c44f","8868c445f34ee81895103fd83307eadbe213cfb53bbc5cd0e7f063e4214c49b0","277990f7c3f5cbbf2abd201df1d68b0001ff6f024d75ca874d55c2c58dd6e179","a31dfa9913def0386f7b538677c519094e4db7ce12db36d4d80a89891ef1a48f","f4c0c7ee2e447f369b8768deed1e4dd40b338f7af33b6cc15c77c44ff68f572d","2f268bd768d2b35871af601db7f640c9e6a7a2364de2fd83177158e0f7b454dc","dd591496573e7e1d5ff32c4633d663c91aef86dad520568ef344ce08bba21218","a004a3b60f23fcfb36d04221b4bef155e11fd57293ba4f1c020a220fadf0fc85","4e145e72e5600a49fa27282d63bb9715b19343d8826f91be0f324af73bc25322","62f734f7517d2ca3bf02abddaf8abf7e3de258667a63e8258373658bbb9153b6","df99236666c99f3e5c22c886fc4dba8156fed038057f7f56c4c39a0c363cc66a","b4bce232891b663cc0768f737f595a83de80b74671db22b137570ef2dc6b86ef","781b566c3eccba1a2cafbb827fb6fc02d5147c89a40e11c7892057481a195270","c9befaf90879c27ee3f7f12afd15b4531fbbea9ec37d145b83807a67d9f55c82","8630f26d1038328e6b9da9c082f6fa911903bc638499baa6cfab002b5a70af96","73474d70a9b4f02771119085c4cd7562be4169e7973544c9541341ca2931aa3d","54da497c3b3b94fae91a66ed222e21411dc595a17f9e6bd229e233d0de732691","803da2f4e024efa2edc55c67d35c5240e7ae599baf9263b453acd02127a582e9","b8b070df71250096699ad55a106d161d403347ed335f72c5ae8485e5d858524d","a9716557f56781aef13d6d3c5dafc61236f64bfd48d462c4848a7eca25f924ff","3d15b5e24065431bf7831b8e84000c0e767d921135af86ef0b0c034f14df5d8f","a563202fc316d8926dc83759cec155d5c028a7828996cbd283470ac7e8c58727","e5c004f39619ebaaa2475b18e949e12e51ff629132f48d56608081e5f0195577","e6b7a14eb53f023f455f4513b6a560f004fa1ebf6cc298b479be796541e322e6","771bf8091a4e40be8f539648b5a0ff7ecba8f46e72fc16acc10466c4c1304524","cb66d1c49ad20e7246b73671f59acaaaac72c58b7e37faae69ae366fd6adf1d3","e5c1c52655dc3f8400a3406fd9da0c4888e6b28c29de33bee51f9eaeda290b4d","1e28ee6d718080b750621e18befe236487df6685b37c17958520aaf777b7aeff","8891345dbe1920b9ed3f446a87de27b5cd6b2053112f6ff3975a661f9a03ec34","a72e21b05b937630b97b1d36bb76b879bb243a021516aef10701775f2da7f872","4debe398f42800c1359d60396fc76aa4fa34a23a96b597672b5c284fd81c0158","a720d8028d38f2b94855967789252c6148957dcd24e280d193b78db00eb3a099","1b0818297187a33e2c24c39145b409e11624523d32364edc22bceaf1f4c86f1b","332e362ba8bd05237c661ba685b2c37e9cde5e0876cb81bf515d15623bdee74c","84648722d2b1f16c55cb68dbfaf18b913a13a78274641f7236eeb4d7088f6db8","f63d313c2673117608b3ed762ac07f618ee873bee3764406b06bcfcb5a713afe","2e2a2a0f7ef2a7587cfe40a96dbca31e8badb15a8a42bf042fe7a63abc9e2f27","2bb32fb3f0fe14c48170dcad3d2a501c1883516d4da9cbd0a2043d90c9789a7b","352532af4d27bdf545d9bb20f0c55758138327404bd86f0934edc7ded76be7e6","64d93f4a24f8a70b64658a7d9b9e96bd46ad498ad5dc9cdb9d52da547e77ff68","8a728de3047a1dadcb69595e74c3d75bc80a2c8165f8cf875ab610042a137fbe","3eafed0be4b194295bcde379e7d083779d0f27f31b715738a3beac49547dc613","7e74740cb7a937af187118ae4582fbe5d4d30b34e9cddec2bd7f7a865e7824ca","8cdf90b59995b9f7c728a28e7af5dc4431f08f3346e6c16af49f548461a3e0aa","1d472b3eedeeaab5418ea6563734fffc68c404feac91900633e7126bee346590","6cf7182d798892394143549a7b27ed27f7bcf1bf058535ec21cc03f39904bfb3","abe524377702be43d1600db4a5a940da5c68949e7ac034c4092851c235c38803","daf4418239ceadb20481bff0111fe102ee0f6f40daaa4ee1fdaca6d582906a26","8a5c5bc61338c6f2476eb98799459fd8c0c7a0fc20cbcd559bb016021da98111","644cf9d778fa319c8044aed7eeb05a3adb81a1a5b8372fdc9980fbdd6a61f78e","d2c6adc44948dbfdece6673941547b0454748e2846bb1bcba900ee06f782b01d","d80b7e2287ee54b23fe6698cb4e09b1dabc8e1a90fb368e301ac6fbc9ad412e2","924a87be1fd1b097c863b31f2cbc3c09eb85ec33044edde88325b028823f03e4",{"version":"7e5b8316e2977e8cc41f030cff4b7d8132c72fd8cce07d57580ab427cb3eb447","affectsGlobalScope":true},"816f825b072afd246eb3905cf51528d65e6fe51c12a1f8fb370c93bb0e031c9b","f6a64974d6fab49d27f8b31578a08662b9a7f607de3b5ec2d7c45b3466d914fd","a8e9d24cd3dc3bd95b34eb6edeac7525b7fdbe23b373554bdc3e91572b8079ee","1d5fd841722ce9aa05b9d602153c15914108bdaa8154bdd24eddadb8a3df586c","14788c10b66324b98feee7a2567eb30d1066e11506e54bf1215b369d70da4932","316785de2c0af9fbd9f2191904670e880bc3836671dd306236675515e481973a","070d805e34c4b9a7ce184aabb7da77dc60f2bdb662349cf7fc23a2a69d17de8d","092deae5b432b6b04f8b4951f1478c08862e832abd4477315dba6ea0c39f1d9e","27d668b912bf3fd0a4ddf3886a8b405eed97505fdc78a9f0b708f38e3e51655d","72654e8bed98873e19827d9a661b419dfd695dbc89fd2bb20f7609e3d16ebd50","66bdb366b92004ba3bf97df0502b68010f244174ee27f8c344d0f62cb2ac8f1e","ae41e04ff8c248ab719fe7958754e8d517add8f1c7abcc8d50214fd67c14194d","558008ff2f788e594beaa626dfcfb8d65db138f0236b2295a6140e80f7abd5d2",{"version":"6573e49f0f35a2fd56fd0bb27e8d949834b98a9298473f45e947553447dd3158","affectsGlobalScope":true},{"version":"e04ea44fae6ce4dc40d15b76c9a96c846425fff7cc11abce7a00b6b7367cbf65","affectsGlobalScope":true},{"version":"7526edb97536a6bba861f8c28f4d3ddd68ddd36b474ee6f4a4d3e7531211c25d","affectsGlobalScope":true},"3c499fc4aad3185e54006bdb0bd853f7dd780c61e805ab4a01a704fa40a3f778",{"version":"13f46aaf5530eb680aeebb990d0efc9b8be6e8de3b0e8e7e0419a4962c01ac55","affectsGlobalScope":true},"17477b7b77632178ce46a2fce7c66f4f0a117aa6ef8f4d4d92d3368c729403c9",{"version":"700d5c16f91eb843726008060aebf1a79902bd89bf6c032173ad8e59504bc7ea","affectsGlobalScope":true},"7a4182e3f8307e61eff58065c5a38eded7d9ec304969f97bef24b3cf92df6fcf",{"version":"b0b314030907c0badf21a107290223e97fe114f11d5e1deceea6f16cabd53745","affectsGlobalScope":true},"bdd74f4d3eb096bacc888670c8fde00697443b53d425ae09e8116cc54aeada91",{"version":"f659d54aa3496515d87ff35cd8205d160ca9d5a6eaf2965e69c4df2fa7270c2c","affectsGlobalScope":true},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"f3e7a4075f7edc952560ec2254b453bfc8496d78e034768052347e088537694b","affectsGlobalScope":true},"8947b7adb40a06017867a5319ff04b550ddd8deea2a698b02c026e1b1c9d673f",{"version":"cc8e57cfe18cd11c3bab5157ec583cfe5d75eefefe4b9682e54b0055bf86159f","affectsGlobalScope":true},"75f6112942f6aba10b3e2de5371ec8d40a9ab9ab05c8eb8f98a7e8e9f220c8a2",{"version":"8a3b75fccc93851209da864abe53d968629fab3125981b6f47008ec63061eb39","affectsGlobalScope":true},"21eca4eb922da0be3e03c91a6095d459e907b96e896e87a4903c8de7fab81e10",{"version":"d6f55de9010fbefe991546d35da3f09ae0e47afae754cb8a4c867fd7e50dcec0","affectsGlobalScope":true},"4c9cc66b2a67160b3c16203bc1d95ebc8552d9e69c8ac33983679901342350e6",{"version":"1ce2f82236ecdd61ff4e476c96d83ce37d9f2a80601a627fe1d3048e8648f43c","affectsGlobalScope":true},"d14c44fdfbd6728a876c82346116f55799ab36fe3416a57c38592873f6ca289f",{"version":"592e99b73ae40c0e64ce44b3e28cea3d7149864f2f3cbc6ccb71f784373ade97","affectsGlobalScope":true},"6752a5cac85e950580080eb26a57d1ab780e276619a6f308d2cd034eb887aa5a",{"version":"8f8ebce0e991de85323524170fad48f0f29e473b6dd0166118e2c2c3ba52f9d6","affectsGlobalScope":true},"c627aec75d8c8b0d67e5d53bfea424c5320adba14f4bce1a3d9019172cb90e0a",{"version":"f877e78f5304ec3e183666aab8d5a1c42c3a617ff616d27e88cc6e0307641beb","affectsGlobalScope":true},"52d20eaf7b71d562ec1bce759fefbc6be2234e964a25f320313bdcd11e4c7a96",{"version":"4fc0006f46461bb20aac98aed6c0263c1836ef5e1bbf1ca268db4258ed6a965e","affectsGlobalScope":true},"bf6faf0053e821110fe22a402fb973121737d47f7a1644f9f6640fb9b2564975",{"version":"867954bf7772a2979c5c722ef216e432d0d8442e995e6018e89a159e08d5d183","affectsGlobalScope":true},"d2c363832b21d368b3339ded5da4dffb32dafd7f035f0114458637ff63336a03",{"version":"544f8c58d5e1b386997f5ae49c6a0453b10bd9c7034c5de51317c8ac8ea82e9a","affectsGlobalScope":true},"b95c6093224ea793f79007fdae1790210972edce3809b8cc5fd6687e5402e872",{"version":"ae9b62dd72bf086ccc808ba2e0d626d7d086281328fc2cf47030fd48b5eb7b16","affectsGlobalScope":true},"b03e600a48c41adfad25cda292a2bcd87963f7fce09f3561978482f9f6530fc4",{"version":"cc1bddca46e3993a368c85e6a3a37f143320b1c13e5bfe198186d7ed21205606","affectsGlobalScope":true},"34cb99d3f4d6e60c5776445e927c460158639eeb8fd480e181943e93685e1166",{"version":"c77843976650a6b19c00ed2ede800f57517b3895b2437d01efc623f576ef1473","affectsGlobalScope":true},"cdbc83f7ffd6ced2a9347d6616c41c5d30326f81902022ba8deb1ae3d4eb35ed",{"version":"5ebba285fdef0037c21fcbef6caad0e6cc9a36550a33b59f55f2d8d5746fc9b2","affectsGlobalScope":true},"85397e8169bdc706449ae59a849719349ecef1e26eef3e651a54bb2cc5ba8d65",{"version":"2b8dc33e6e5b898a5bca6ae330cd29307f718dca241f6a2789785a0ddfaa0895","affectsGlobalScope":true},"0cb3f58c4ad6c2eef5f7b40451a0281ae4cd5ab8cc3e5320fae84690ff500aa7",{"version":"dde8acfb7dd736b0d71c8657f1be28325fea52b48f8bdb7a03c700347a0e3504","affectsGlobalScope":true},"1c67f4f4abcd094bdeb01590394b11fe1b5784beafb7867327151e7ba96bcae4",{"version":"34c9c31b78d5b5ef568a565e11232decf3134f772325e7cd0e2128d0144ff1e5","affectsGlobalScope":true},"cc933b52ffb2b40c2fde19e0b625d2a603268560484401868289b7f278697c20",{"version":"60cc5b4f0a18127b33f8202d0d0fde56bc5699f4da1764b62ed770da2d5d44f1","affectsGlobalScope":true},"52ea53eb829f3974e6df31b647141373a81dcf2984999e8e0bba373959e97d1c",{"version":"d11fa2d42f762954eb4a07a0ab16b0a46aa6faf7b239f6cd1a8f5a38cb08edcd","affectsGlobalScope":true},"6a456f781a651f1448cec63a68f9d80b0be27b3f938809a091499cf4011de574",{"version":"781afd67249e2733eb65511694e19cdcdb3af496e5d8cdee0a80eba63557ff6e","affectsGlobalScope":true},"534f8e119cb864548aa2324c377ad949048598dd30c426f8da8b34e41c510405",{"version":"f3275e1f0e5852b1a50fd3669f6ad8e6e04db94693bcfb97d31851e63f8e301e","affectsGlobalScope":true},"21012c7a9eb67b1ead28ea6f96f615d6aed87408c11d7cbfc160eea4081b38ee",{"version":"8a6ecff784dafbdb121906a61009670121882523b646338196099d4f3b5761d8","affectsGlobalScope":true},"1d5f5827fdeb0d59f76a1ee6caf0804d5d3c260e60e465b0b62baea333199e62",{"version":"256bdff4c082d9f4e2303138f64c152c6bd7b9dbca3be565095b3f3d51e2ab36","affectsGlobalScope":true},"e54b9396195081999aaf2fa151809966fe298087ab8bc81e789931213be7c5ba",{"version":"e214a2a7769955cd4d4c29b74044036e4af6dca4ab9aaa2ed69286fcdf5d23b3","affectsGlobalScope":true},"b7389c085aea3ead2a5de80344332a034ca179cb5947ef59ab8a697f7c29140a",{"version":"25659b24ac2917dbfcbb61577d73077d819bd235e3e7112c76a16de8818c5fd6","affectsGlobalScope":true},"35307f141e8b2db7741387574632f3d7bf0bbb9a27602c1801fc90be4d131fc2",{"version":"7402e6ca4224d9c8cdd742afd0b656470ea6a5efe2229644418198715bb4b557","affectsGlobalScope":true},"2100b1985cd2bb2c4a0837ed6ddbd141783a4c6f01c7c3ac51c81e2235a13ba5",{"version":"242b00f3d86b322df41ed0bbea60ad286c033ac08d643b71989213403abcdf8a","affectsGlobalScope":true},"d35b5bda34cf06bc634ef85f4f7312a0bfaf8f873d59db88ea68cc525878a366",{"version":"4dc6e0aeb511a3538b6d6d13540496f06911941013643d81430075074634a375","affectsGlobalScope":true},"fda81b5f8570324354889e9761e9b00a55a60643ec0c696a8da7d9b51eba3c2e",{"version":"7ed57d9cb47c621d4ef4d4d11791fec970237884ff9ef7e806be86b2662343e8","affectsGlobalScope":true},"6762bc8285db5ec4ca014919eae07c806a6135501ebba342d43673f4ab80f75a",{"version":"5bd49ff5317b8099b386eb154d5f72eca807889a354bcee0dc23bdcd8154d224","affectsGlobalScope":true},"1d5156bc15078b5ae9a798c122c436ce40692d0b29d41b4dc5e6452119a76c0e",{"version":"bd449d8024fc6b067af5eac1e0feb830406f244b4c126f2c17e453091d4b1cb3","affectsGlobalScope":true},"e4e93a3f1680ff0725aab5f3a6ab166bd18006a9a6fbc26376d54f83474233eb",{"version":"dd5eab3bb4d13ecb8e4fdc930a58bc0dfd4825c5df8d4377524d01c7dc1380c5","affectsGlobalScope":true},"f011eacef91387abfde6dc4c363d7ffa3ce8ffc472bcbaeaba51b789f28bd1ef",{"version":"ceae66bbecbf62f0069b9514fae6da818974efb6a2d1c76ba5f1b58117c7e32e","affectsGlobalScope":true},"4101e45f397e911ce02ba7eceb8df6a8bd12bef625831e32df6af6deaf445350",{"version":"07a772cc9e01a1014a626275025b8af79535011420daa48a8b32bfe44588609c","affectsGlobalScope":true},"b5d0ad34c02203be4298ceb0e8b4b9cbc60360c9e61e44bb8e137e1c6acef3b7",{"version":"b5ba8cc21f51aa722217ae9f352104920ada8fc6247742c347ecd9b4ce2ffef1","affectsGlobalScope":true},"455d2321daecfef11d8c8239e174622538381d6cf46c87433d9df40a770535bf",{"version":"4d13cccdda804f10cecab5e99408e4108f5db47c2ad85845c838b8c0d4552e13","affectsGlobalScope":true},"c10947d77f28d0fe34224e8f7e1214a0bba856c9eaf4db1b4830f071fedb4d9a",{"version":"7ced457d6288fcb2fa3b64ddcaba92dbe7c539cc494ad303f64fc0a2ab72157d","affectsGlobalScope":true},"8f9e44dc3ce7b4d808f34db76f28c8d67fa6d7a0579bec6bf09db3537a3588f1",{"version":"e43efe2e9817e572702de60bb11a60c1af4243b7304f0eb767b96a7a0760f7af","affectsGlobalScope":true},"c04859b7e76b1abbc7ecc5c1c16c855b8b526e337a7982c8d13c397804386d4c",{"version":"725128203f84341790bab6555e2c343db6e1108161f69d7650a96b141a3153be","affectsGlobalScope":true},"c7cc27f7342962767a1794e7b6a2194cebeb6821c26d4a9b0b910d33216071f8",{"version":"947bf6ad14731368d6d6c25d87a9858e7437a183a99f1b67a8f1850f41f8cedd","affectsGlobalScope":true},"8eda6e4644c03f941c57061e33cef31cfde1503caadb095d0eb60704f573adee",{"version":"0538a53133eebb69d3007755def262464317adcf2ce95f1648482a0550ffc854","affectsGlobalScope":true},"4f4cac2852bf2884ab3b2a565022db3373d7ef8b81eb3484295707fbd2363e37",{"version":"7a204f04caa4d1dff5d7afbfb3fcbbe4a2eb6b254f4cd1e3bdcfe96bb3399c0b","affectsGlobalScope":true},"4a5259be4d6c85a4cd49745fb1d29d510a4a855e84261ad77d0df8585808292c",{"version":"220f860f55d18691bedf54ba7df667e0f1a7f0eed11485622111478b0ab46517","affectsGlobalScope":true},"3bee701deb7e118ea775daf8355be548d8b87ddf705fe575120a14dcace0468a",{"version":"9c473a989218576ad80b55ea7f75c6a265e20b67872a04acb9fb347a0c48b1a0","affectsGlobalScope":true},"bf7fc4f1fa20f81f3a8467bcbed0b74983d41b2616e6e4ab61587fa842979d28",{"version":"20b41a2f0d37e930d7b52095422bea2090ab08f9b8fcdce269518fd9f8c59a21","affectsGlobalScope":true},"dbac1f0434cde478156c9cbf705a28efca34759c45e618af88eff368dd09721d",{"version":"0f864a43fa6819d8659e94d861cecf2317b43a35af2a344bd552bb3407d7f7ec","affectsGlobalScope":true},"855391e91f3f1d3e5ff0677dbd7354861f33a264dc9bcd6814be9eec3c75dc96",{"version":"ebb2f05e6d17d9c9aa635e2befe083da4be0b8a62e47e7cc7992c20055fac4f0","affectsGlobalScope":true},"aee945b0aace269d555904ab638d1e6c377ce2ad35ab1b6a82f481a26ef84330",{"version":"9fb8ef1b9085ff4d56739d826dc889a75d1fefa08f6081f360bff66ac8dd6c8d","affectsGlobalScope":true},"d9d44786804e9bf2bddcc62adf7384f0a92f27bac091de5098c689e685bbe17e",{"version":"e1425c8355feaaca104f9d816dce78025aa46b81945726fb398b97530eee6b71","affectsGlobalScope":true},"eae663da2201b45295aa8e88a326cab843f490bda1b3b9b12cc91d25f2b62778",{"version":"42c6b2370c371581bfa91568611dae8d640c5d64939a460c99d311a918729332","affectsGlobalScope":true},"590155b280f2902ebb42a991e9f4817ddf6558e5eb197deb3a693f5e0fc79bd9",{"version":"867b000c7a948de02761982c138124ad05344d5f8cb5a7bf087e45f60ff38e7c","affectsGlobalScope":true},"22f681c95782179fcc779ee940f4f810048fb3ce60c089fa3903c13b3e092f95",{"version":"02c22afdab9f51039e120327499536ac95e56803ceb6db68e55ad8751d25f599","affectsGlobalScope":true},"e9e9e16cad091365ef4ac67945713cade5b1fece819f69df074bf8b8623f8b78",{"version":"37129ad43dd9666177894b0f3ce63bba752dc3577a916aa7fe2baa105f863de3","affectsGlobalScope":true},"01364e0e44e63be62244368f1e6f9a340e95c662ebb81f6875e676f969cc52bc",{"version":"31f709dc6793c847f5768128e46c00813c8270f7efdb2a67b19edceb0d11f353","affectsGlobalScope":true},"6c04df817a89fd711e8c84f0fe888706aab8735dbe7f2533e200afbec2ee495f",{"version":"018847821d07559c56b0709a12e6ffaa0d93170e73c60ee9f108211d8a71ec97","affectsGlobalScope":true},"17dd17a89a9fac4f0a0de8f40af8bc9aab9707111e445e52ae05bfe774ac7bd8",{"version":"7832e8fe1841bee70f9a5c04943c5af1b1d4040ac6ff43472aeb1d43c692a957","affectsGlobalScope":true},"e4b23a4b3f0a4929ec2a4cea441e07df881f9bdae6a9fc027eb2e602518f65f1",{"version":"013853836ed002be194bc921b75e49246d15c44f72e9409273d4f78f2053fc8f","affectsGlobalScope":true},"0e9a7364eaf09801cbb8cf0118441d5f7f011fc0060c60191587526c448974c4",{"version":"e08392a815b5a4a729d5f8628e3ed0d2402f83ed76b20c1bf551d454f59d3d16","affectsGlobalScope":true},"047f4e7ce8c15a34e6f5ed72a7c4c675d56e58c0e15220c54b9c9b182a3a888f",{"version":"5768572c8e94e5e604730716ac9ffe4e6abecbc6720930f067f5b799538f7991","affectsGlobalScope":true},"087b18cc2f9aa5a02201a9b47691f4ca91dc7b5f7b26587d05f576435a71df5f",{"version":"a66b1e872740efbfde3bc205646e623b5daebd60c493222614c083c3ffd1aec1","affectsGlobalScope":true},"d0984177c1dc95545541f477fb0df1fb76e7454a943c98ed208dc0da2ff096b2",{"version":"f366ca25885ab7c99fc71a54843420be31df1469f8556c37d24f72e4037cb601","affectsGlobalScope":true},"a05b412a93ba43d2d6e9c81718dea87a42c7e4f9e8b1efbaafee03a94eaf4b7a",{"version":"163cc945edad3584b23de3879dbad7b538d4de3a6c51cc28ae4115caee70ce21","affectsGlobalScope":true},"916e25422aad85365d2d98e9176bfdae7eee59ae8d7036d79610c305fe3322d0",{"version":"d604893d4e88daade0087033797bbafc2916c66a6908da92e37c67f0bad608db","affectsGlobalScope":true},"1756a8d31627b1a7eea08ae74ab348c3b9b311a7b86683583c73a09f30a2bb75",{"version":"dc265f24d2ddad98f081eb76d1a25acfb29e18f569899b75f40b99865a5d9e3b","affectsGlobalScope":true},"26a2700863203c2c0bf1dbab144d182b4608db68c11c38b692110e5dc19de8b0",{"version":"8c139b169259645bc50a1d0fb860837434c7c5933f891fd44266eb6dd35da072","affectsGlobalScope":true},"46faa2ce0d71cf2e0cac1dd1aa277988504715ce9dd89fba0fd5ae1b7036377c",{"version":"41ffc155348dd4993bc58ee901923f5ade9f44bc3b4d5da14012a8ded17c0edd","affectsGlobalScope":true},"a2d9f3ffc5a3fc79e9bb0d5635ce409e830478df392c4233eef1f1b3d85535cd",{"version":"3e8e0655ed5a570a77ea9c46df87eeca341eed30a19d111070cf6b55512694e8","affectsGlobalScope":true},"f04e8e078f6555aa519de47b8f2b51e7b37f63265f99328f450ee0fe74c12b97","9fdb680426991c1c59b101c7f006e4963247c2a91b2750f48e63f9f6278a772c",{"version":"cc4c74d1c56e83aa22e2933bfabd9b0f9222aadc4b939c11f330c1ed6d6a52ca","affectsGlobalScope":true},"b0672e739a3d2875447236285ec9b3693a85f19d2f5017529e3692a3b158803d",{"version":"8a2e0eab2b49688f0a67d4da942f8fd4c208776631ba3f583f1b2de9dfebbe6c","affectsGlobalScope":true},"ed807fdf710a88e953d410b7971cad71aae21c0aff856657960e09ded50b5775",{"version":"f6266ada92f0c4e677eb3fbf88039a8779327370f499690bf9720d6f7ad5f199","affectsGlobalScope":true},"c03bcada0b059d1f0e83cabf6e8ca6ba0bfe3dece1641e9f80b29b8f6c9bcede",{"version":"f2eac49e9caa2240956e525024bf37132eae37ac50e66f6c9f3d6294a54c654c","affectsGlobalScope":true},"ace629691abf97429c0afef8112cc0c070189ff2d12caee88e8913bdd2aaad25",{"version":"99a71914dd3eb5d2f037f80c3e13ba3caff0c3247d89a3f61a7493663c41b7ea","affectsGlobalScope":true},"25a12a35aeee9c92a4d7516c6197037fc98eee0c7f1d4c53ef8180ffc82cb476",{"version":"b4646ac5ca017c2bb22a1120b4506855f1cef649979bf5a25edbead95a8ea866","affectsGlobalScope":true},"54d94aeec7e46e1dab62270c203f7907ca62e4aaa48c6cdcfed81d0cd4da08f3",{"version":"f9585ff1e49e800c03414267219537635369fe9d0886a84b88a905d4bcfff998","affectsGlobalScope":true},"03181d99adbd00cb0b1bab6387829cebf635a0fe3f7461d094310effd54ca7af","f280aeceb876ec38168b19809629cbffb3f7a26ac1ef326b64294a307c57261b",{"version":"1ff9449d1efdebef55b0ba13fe7f04b697c264e73ec05f41f7633dd057468b2d","affectsGlobalScope":true},"275093c8de5268c39e47072f6b4892e11358729eebd3c11f884060a248e30d93",{"version":"7c160037704eee2460c7de4a60f3379da37180db9a196071290137286542b956","affectsGlobalScope":true},"78c8b42462fba315c6537cf728f8d67ad8e1270868e6c0f289dd80677f1fa2e9",{"version":"4681d15a4d7642278bf103db7cd45cc5fe0e8bde5ea0d2be4d5948186a9f4851","affectsGlobalScope":true},"91eb719bcc811a5fb6af041cb0364ac0993591b5bf2f45580b4bb55ddfec41e2","05d7cf6a50e4262ca228218029301e1cdc4770633440293e06a822cb3b0ef923",{"version":"78402a74c2c1fc42b4d1ffbad45f2041327af5929222a264c44be2e23f26b76a","affectsGlobalScope":true},"cc93c43bc9895982441107582b3ecf8ab24a51d624c844a8c7333d2590c929e2",{"version":"c5d44fe7fb9b8f715327414c83fa0d335f703d3fe9f1045a047141bfd113caec","affectsGlobalScope":true},"f8b42b35100812c99430f7b8ce848cb630c33e35cc10db082e85c808c1757554",{"version":"ba28f83668cca1ad073188b0c2d86843f9e34f24c5279f2f7ba182ff051370a4","affectsGlobalScope":true},"349b276c58b9442936b049d5495e087aef7573ad9923d74c4fbb5690c2f42a2e",{"version":"ad8c67f8ddd4c3fcd5f3d90c3612f02b3e9479acafab240b651369292bb2b87a","affectsGlobalScope":true},"1954f24747d14471a5b42bd2ad022c563813a45a7d40ba172fc2e89f465503e2",{"version":"05bbb3d4f0f6ca8774de1a1cc8ba1267fffcc0dd4e9fc3c3478ee2f05824d75d","affectsGlobalScope":true},"52cd63ca2640be169c043b352573f2990b28ba028bae123a88970dd9b8404dc9",{"version":"154145d73e775ab80176a196c8da84bfc3827e177b9f4c74ddfac9c075b5b454","affectsGlobalScope":true},"89d80fcd9316e1cfad0b51c524a01da25f31dfcf669a4a558be0eb4c4d035c34",{"version":"177f63e11e00775d040f45f8847afdb578b1cac7ab3410a29afe9b8be07720f0","affectsGlobalScope":true},"37e69b0edd29cbe19be0685d44b180f7baf0bd74239f9ac42940f8a73f267e36",{"version":"afba2e7ffca47f1d37670963b0481eb35983a6e7d043c321b3cfa2723cab93c9","affectsGlobalScope":true},"bb146d5c2867f91eea113d7c91579da67d7d1e7e03eb48261fdbb0dfb0c04d36",{"version":"90b95d16bd0207bb5f6fedf65e5f6dba5a11910ce5b9ffc3955a902e5a8a8bd5","affectsGlobalScope":true},"3698fee6ae409b528a07581f542d5d69e588892f577e9ccdb32a4101e816e435",{"version":"26fc7c5e17d3bcc56ed060c8fb46c6afde9bc8b9dbf24f1c6bdfecca2228dac8","affectsGlobalScope":true},"46fd8192176411dac41055bdb1fdad11cfe58cdce62ccd68acff09391028d23f",{"version":"22791df15401d21a4d62fc958f3683e5edc9b5b727530c5475b766b363d87452","affectsGlobalScope":true},"b152da720b9df12994b65390bb47bbb1d7682a3b240a30f416b59c8fc6bc4e94","cefffd616954d7b8f99cba34f7b28e832a1712b4e05ac568812345d9ce779540",{"version":"a365952b62dfc98d143e8b12f6dcc848588c4a3a98a0ae5bf17cbd49ceb39791","affectsGlobalScope":true},"af0b1194c18e39526067d571da465fea6db530bca633d7f4b105c3953c7ee807",{"version":"b58e47c6ff296797df7cec7d3f64adef335e969e91d5643a427bf922218ce4ca","affectsGlobalScope":true},"76cbd2a57dc22777438abd25e19005b0c04e4c070adca8bbc54b2e0d038b9e79","4aaf6fd05956c617cc5083b7636da3c559e1062b1cadba1055882e037f57e94c","171ad16fb81daf3fd71d8637a9a1db19b8e97107922e8446d9b37e2fafd3d500",{"version":"d4ce8dfc241ebea15e02f240290653075986daf19cf176c3ce8393911773ac1b","affectsGlobalScope":true},{"version":"52cd0384675a9fa39b785398b899e825b4d8ef0baff718ec2dd331b686e56814","affectsGlobalScope":true},{"version":"2eea0af6c75c00b1e8f9745455888e19302cbeeadde0215b53335ca721110b6a","affectsGlobalScope":true},{"version":"64f9b52124ff239ae01e9bdf31fd8f445603e58015f2712c851ee86edf53de2f","affectsGlobalScope":true},{"version":"769c459185e07f5b15c8d6ebc0e4fec7e7b584fd5c281f81324f79dd7a06e69c","affectsGlobalScope":true},{"version":"c947df743f2fd638bd995252d7883b54bfef0dbad641f085cc0223705dfd190e","affectsGlobalScope":true},"db78f3b8c08924f96c472319f34b5773daa85ff79faa217865dafef15ea57ffb","8ae46c432d6a66b15bce817f02d26231cf6e75d9690ae55e6a85278eb8242d21"],"root":[1328],"options":{"inlineSources":true,"module":99,"noEmitOnError":false,"noImplicitAny":false,"noImplicitThis":true,"outDir":"../../../../.uvue/app-android","rootDir":"../../../../.tsc/app-android","skipLibCheck":true,"sourceMap":true,"strict":true,"target":99,"tsBuildInfoFile":"./.tsbuildInfo","useDefineForClassFields":false},"fileIdsList":[[46,48,50,1322,1323,1324],[1107,1121,1318,1321,1323,1324,1325,1326],[1034,1040],[1106],[1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105],[1029,1030,1031,1032,1033,1035,1037,1039,1041],[1079],[1040,1044],[1081],[1100],[1036],[1041],[1035,1040,1051],[1040,1049],[1029,1030,1031,1032,1033,1037,1040,1041,1049,1050],[1080],[1040],[1049,1050,1051,1096],[1033,1041,1082,1085],[1028,1033,1038,1042,1049,1077,1078,1082,1083],[1038,1040],[1084],[1042],[1032,1040],[1040,1041],[1040,1051],[1040,1049,1050,1051],[1044],[46,48,50,1039,1322,1323],[1320],[1319],[1122,1123,1268,1283,1290,1313,1315,1317],[1316],[1314],[1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229,1231,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267],[1124],[1126],[1128],[1130],[1134],[1136],[1138],[1140],[1142],[1144],[1146],[1148],[1150],[1152],[1154],[1156],[1158],[1160],[1162],[1164],[1166],[1168],[1170],[1172],[1174],[1176],[1178],[1180],[1182],[1184],[1186],[1188],[1190],[1192],[1194],[1196],[1198],[1200],[1202],[1204],[1206],[1208],[1210],[1212],[1214],[1216],[1218],[1220],[1222],[1224],[1226],[1228],[1230],[1232],[1234],[1236],[1238],[1240],[1242],[1244],[1246],[1248],[1250],[1252],[1254],[1256],[1258],[1260],[1262],[1264],[1266],[1270,1272,1274,1276,1278,1280,1282],[1269],[1271],[1273],[1275],[1277],[1279],[1281],[1285,1287,1289],[1284],[640,914],[1286],[1288],[1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312],[1311],[1299],[1295],[1293],[1309],[1301],[1297],[1303],[1305],[1291],[1307],[1044,1051],[1120],[1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119],[1051],[1044,1051,1104],[51,1022,1023,1024,1025],[1021],[914],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],[46,48,50,1323,1324],[44],[44,45,46,48],[41,48,49,50],[42],[41,46,48,1323,1324],[45,46,47,50,1323,1324],[29,30,31,32,33,34,35,36,37,38,39],[33],[36],[33,35],[54,466,483,484,486],[54,130,218,466,709,714,715],[466,716],[230,466,709,713,716,737,818],[466,717,737,818],[54,130,466,716],[466],[200,466,665,818,914,1000,1004,1005,1006,1007,1009],[466,547,691,692,914],[54,200,466,665,818],[466,995,1006],[54,77,156,200,230,428,451,466,467,468,472,476,480,533,547,640,650,658,662,665,671,689,691,694,695,698,721,725,747,776,812,818,837,850,851,863,876,913,914,915,920,922,923,925,926,927,930,932,934,937,942,943,944,947,948,949,951,953,958,961,980,982,983,991,992,996,997,998,999,1003,1010,1011,1020],[466,658,850,851,946,948,952],[466,480,1021],[466,480,483,484,486,671,860,863],[54,200,451,466,472,480,547,658,659,694,695,716,737,747,818,851,863,876,914,920,922,925,941,951,982,985,986,991,1021],[284,466,519],[466,483,485,486],[230,451,466,472,480,984,986,992,993,994,995],[200,466],[466,480,818,914,992,996],[156,200,466,818,992],[451,466,472,480,989,990],[54,466,480,989],[54,466,480,483,484,486,504,863,875,876,914,935,936],[284,466,538],[466,480,863,937],[54,200,230,466,483,484,486,545,959,960],[54,200,451,466,483,484,486,830,937],[146,230,466,486,585,603,818,914,950],[466,480,863,914,915,937,1021],[156,428,466,1012,1013,1014,1015,1016,1017,1019],[466,480,1012,1013],[466,480,1012],[466,480,1012,1013,1018],[200,466,480,483,484,486],[200,466,483,484,486],[466,914,1021],[54,466,483,484,486,914],[466,473,480,863,909,914],[466,480],[200,466,483,484,486,671,724,828,859,863],[200,466,671,827,863,914],[200,466,476,483,484,486],[466,658],[466,850],[54,62,130,466,483,484,486,914],[54,218,451,466,472,480,578,581,658,671,776,837,841,847,848,849,851,854,914],[54,466,480,578,671],[64,218,466,480,578,581,671,776,837,838,854,855],[153,283,466,480,483,484,486,671],[54,67,68,218,229,230,466,479,480,578,581,640,671,776,831,832,833,835,837,838,839,840,854,855,856,858,914],[200,466,830],[54,87,115,150,153,212,466,477,483,484,486,852,853],[54,68,119,200,229,230,245,428,449,466,480,503,504,534,547,579,580,582,640,658,659,660,661,662,665,671,773,844,849,850,859,863,875,876,881,896,901,902,907,908,910,913,915],[466,849],[54,68,119,229,230,245,428,449,466,480,503,504,534,579,580,582,640,658,659,662,665,671,773,844,849,850,859,863,875,876,881,896,901,902,907,908,910,913,914,915,945],[54,58,130,200,212,218,245,466,480,483,484,486,545,547,659,669,671,859,860,862,896,914,915],[466,483,484,486,914],[78,177,212,466,483,484,486,502,671,846,859,863,879,880],[54,466,671],[466,538],[54,466,483,484,486,504,863,873,874,875,914],[466,480,863,876],[54,451,466,472,914,987,988],[466,989],[54,466,989],[54,466,483,484,486,652],[212,466,483,484,486,502,845,861],[200,212,466,483,484,486,502,666,842,843,896,914],[54,127,466,844,896],[466,483,484,486],[230,466,483,484,486],[466,483,666,844],[466,483,484,486,865],[466,483,484,486,871],[466,483,484,486,666],[54,200,466,483,484,486],[466,483,484,486,667,844,848,862,864,865,866,867,868,869,870,871],[77,200,230,428,466,504,640,668,876,886,887,889,890,891,892,893],[54,466,483,484,486,885],[466,886],[200,466,483,484,486,589,640,888],[200,466,589,640,889],[65,67,68,230,428,466,476,540,876,889],[200,466,483,484,486,640,671,863,875],[200,212,466,483,484,486,640,671],[200,466,480,483,546,548,665,896],[54,127,466,666,896],[77,200,212,230,428,466,480,535,536,537,539,540,541,542,543,545,548,658,659,665,667,668,844,848,862,863,865,867,868,872,875,876,877,878,881,882,884,894,895,915],[466,483,484,486,915],[230,466],[466,483,484,846],[200,466,483,484,486,666,896],[466,483,484,486,502,845,846,847],[200,466,483,484,486,502,665,848,862,868,881,883,896],[54,127,466,884,896],[466,483,484,486,502,845],[466,483,484,486,870],[65,466,472,480,483,484,486,578,579,580],[64,68,466,548,581],[466,483,484,486,659,662],[54,62,266,466,483,484,486,590],[466,581],[230,466,655],[64,65,466,578,653,654,914],[54,68,200,466,480,547,548,581,582,618,619,629,651,656,657,658,660,661,665],[284,404,466],[659,661,665],[64,200,466,618,657,659,660,665],[64,466,547],[466,473,915],[146,212,466,911,912],[212,466],[466,913],[466,483,486,839],[466,483,484,486,857],[466,480,839,858],[229,466,504,671],[65,230,466,480,671,834,835,836,859],[466,907],[65,466],[466,837,901],[54,146,172,174,230,266,449,466,776,837,854,898,901,902,904,905,906],[466,837,897,900,907],[466,901,902,903],[466,901,902,904],[466,898],[466,899],[466,578,899],[67,252,466,483,484,486,492,603,612,623,627,628,629,630,638,639,650],[466,628,638,640],[466,606,607,640],[200,466,545,585,603,604,610,612,613,620,621,622,624,625,630,640,641,643,648,649],[54,466],[54,466,631,632,633,634,635,637],[466,632,638],[54,160,466,636,638],[68,156,466,544,545,547,549,608,610,626,642,643,650,657,659,660,662,663,664],[156,466,665],[466,659,662,665],[466,483,484,486,494,504,610,640,643,660,665,671,829,914],[466,665],[54,260,449,466,585,590,591,612],[466,613,614],[466,613,615],[466,483,484,486,640],[54,466,483,484,486,545],[54,451,466,585,602],[252,257,466,585,623],[68,466,612,650],[466,545,585,612,626,640,650],[466,545,604],[200,266,466,545,590,591,592,593,594,595,596,604,605,607,608,609,610,611,618],[200,208,230,267,270,278,336,337,338,443,466,585,597,598,599,600,601,603],[466,650],[200,466,545,585,603,604,610,612,613,621,622,624,630,640,641,643,648,650],[54,466,483,484,486,544],[54,466,483,484,486,545,604,625],[466,545,606,607,608,610,640,646],[466,545,603,612,642,644,647],[466,607,623,645],[466,603,606],[466,504,781,782],[466,783],[284,466],[466,545,594],[54,449,466,582,584,617],[449,466,472,582,583,618],[466,615,616,618],[64,466,483,484,486],[230,466,511,513,516],[64,466,515],[146,230,466,514],[466,511,513,515],[466,483,484,486,512],[466,513],[414,466,488],[466,488],[466,488,508],[230,466,488,489,490,491,492,504,505,507,509],[64,288,466,483,484,486],[466,506],[54,58,62,78,212,229,266,466,586,587,588],[466,589],[54,200,466,480,483,484,486,640,671,970],[200,466,480,640,671,971],[54,200,212,466,483,484,486,640,971,972],[200,230,466,480,504,533,914,937,969,973,976,977,978,979],[200,230,466,480,969,973,976],[466,483,484,486,526],[200,230,466,480,483,484,486,975],[200,466,480,483,484,486,974],[200,466,480,975],[54,62,212,230,449,466,483,484,486,670],[466,671],[54,212,466,476],[54,58,130,200,218,245,466,473,474,475,476,477,478,479,483,484,486],[466,775],[466,484,486,523,524],[466,523,525],[54,156,466,494,495,502,503],[466,494],[466,470,471,472,483],[466,473],[54,266,466,483,484,486,589],[466,498,501,502],[67,68,466],[54,156,466,480,483,484,486,493,504],[466,472,496,497],[466,472],[54,466,473,483,484,486,494,504],[54,283,466],[54,58,126,140,146,176,218,230,245,284,466,471,472,473,474,476,478,479,480,481,482],[466,483,484,485],[245,466,483,484],[54,466,483],[65,449,466,472,483,484,486,504,550,551,559,577],[285,466],[54,67,68,130,466,475,483,484,486],[466,480,483,484,486,504],[466,484,486,522],[466,523],[466,523,526,527],[466,525,527,528],[54,466,824,825],[200,466,826],[54,200,466],[466,820],[466,818,819,820,821],[466,612],[466,547,604,914],[156,466,737,818,914],[54,130,230,466,545,547,709,716,737,818,914,938,939,940],[466,545,941],[466,941],[466,737,927,941],[283,284,466],[283,284,404,466],[54,135,139,146,212,229,466],[54,130,466],[54,62,86,466],[200,466,629],[200,466,483,484,486,688],[466,689],[54,200,230,288,466,480,483,484,486,545,678,679,681,682,683,684,685,818],[466,680],[466,681],[466,479],[146,466,483,484,486,626,686],[230,466,480,686],[200,230,466,486,686,818],[54,200,466,483,484,486,545,590,626,686],[54,200,466,818,922,923,924,925],[466,920,922,926],[466,545,818,923,926],[466,818,914,918,920,921],[130,466,547,710,726,727,729,914],[466,728],[466,709],[466,547,690,710,728,818,914],[466,603],[466,545,626,761,765,767],[54,466,483,484,486,818],[466,480,483,484,486,812,813],[466,480,812,814],[64,200,230,466,544,733,734,814,818],[466,480,483,484,486,671,860],[200,466,665,694,818,922],[54,466,582,658,659,662,914,946],[77,428,466,545,629,638,696,705,770,771,772],[54,230,466,544,545,604,703],[466,544,545,604,704],[466,816],[54,466,483,484,486,604],[54,466,483,484,486,724,860],[230,466,483,484,486,487,510,517,521,528,529,530],[466,484,486,531],[200,212,230,466,480,483,484,486,502,590,798,799],[77,119,200,428,466,480,504,533,585,776,799,801,802,803,804,805,806,807,809,810],[466,483,484,486,671,724],[466,805],[230,466,476,483,484,486,808],[230,466,476,809],[466,799],[54,466,483,484,486,518,520,533],[466,519],[54,466,468,469,483,484,486,518,521,532],[466,533],[54,466,533],[466,547,737,818,914,933,934,981],[466,547,818,914],[466,547,818,914,933],[200,466,533,863,915,921],[466,914,922],[200,466,610,643,660,665,694,818,863,916,917,919,921],[466,920],[466,483,484,486,532,603,719,720],[466,789,818],[54,466,483,484,486,640,659,914],[54,466,483,484,486,696],[77,156,466,545,776,785],[466,545,696,784],[466,531],[200,466,665,818,920,922],[466,483,484,486,545,650,780,783],[404,466],[466,483,484,486,762,763,764,767],[466,765],[65,77,428,466,483,484,486,492,545,626,762,765,766],[466,545,650,784,965,966,968],[466,967],[156,466,966,967],[229,466,483,484,486,673],[229,466,674],[126,200,229,466,480,483,484,486,672,676,677,823,826],[146,466,480,827],[200,332,466,480,483,484,486,590,674,675],[200,332,466,480,590,674,676],[466,480,483,484,486],[466,677,818,822],[466,545,684,721,818],[466,483,484,486,722],[54,200,466,480,483,484,486,794],[200,466,480,795],[54,466,483,484,486,589],[466,818],[54,212,466,483,484,486,733,795,796],[466,733,795,797],[54,77,146,156,200,218,229,230,428,466,468,469,473,478,480,504,533,545,547,549,603,610,612,626,640,643,647,650,658,659,660,661,665,686,687,689,695,696,698,700,707,708,711,718,721,723,725,728,732,733,738,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,768,769,773,779,786,787,788,789,790,792,793,797,800,811,815,817,860,914,923,926],[466,480,686,687,689,737,818],[245,466,483,484,486,739],[466,707,818],[466,721,818],[466,694,695,818],[466,725,818],[466,533,818],[77,146,200,218,229,230,466,480,533,545,547,626,658,686,689,691,692,693,696,698,699,700,707,708,711,712,717,718,721,723,725,729,734,735,736,818,914,923,926],[466,547,690,914],[466,547,691,914],[466,691,818],[466,480,545,689,695,696,698,818,923,926],[200,466,480,590,603,731,732,733],[230,466,730],[466,731],[200,230,466,473,480,504,532,533,658,661,665,671,691,698,721,768,786,818,914,927,941,942,944,963,964,968,980,982],[230,466,533,689,721,818,920,922,923,926,930,943],[466,962,983],[466,545],[54,466,483,484,486,791],[466,792],[54,466,544,545,701,702,704,705,706],[466,700,708,710],[466,544],[230,466,700,707,711],[466,777],[466,710,774,776,778],[466,779],[77,119,428,466,736,773,818,928,929,930,931],[200,466,473,483,484,486,691],[466,545,707],[54,200,466,737,818,836],[200,466,547,737,914,954],[466,737,818,1008],[200,466,547,665,721,737,745,914,922,1001,1002],[466,547,691,692,914,1000],[466,697],[466,957],[466,956],[288,333,466,818,955],[64,466],[54,58,62,63,69,230,249,250,267,443,446,447,448,466],[68,424,449,466,472],[67,424,449,466,472],[67,466],[65,67,466],[65,66,466],[54,65,67,200,201,266,267,280,449,466],[54,67,200,201,266,267,449,450,466],[65,253,254,450,466],[65,66,200,201,466],[54,58,62,466],[199,466],[52,53,54,55,56,57,58,68,69,70,73,76,233,234,235,465],[68,69,244,466],[230,282,283,466],[283,404,466],[54,62,86,200,466],[231,233,466],[232,466],[230,232,233,466],[77,78,128,466],[58,466],[55,56,69,466],[254,466],[55,56,466],[55,466],[52,53,54,55,75,466],[52,53,55,57,71,72,74,466],[52,54,55,71,72,466],[53,56,466],[52,54,55,56,75,466],[52,55,56,234,466],[52,466],[54,58,466],[54,58,62,199,200,201,466],[54,146,156,245,282,283,466,499,500],[283,466,501],[58,281,282,451,466],[60,466,553],[54,60,65,212,466,553,554,558,563],[54,58,466,552],[54,230,244,466,553],[54,59,60,466],[54,60,65,212,466,553,554,566,568,577],[54,61,65,67,68,212,466,553,576],[466,564],[466,565],[54,58,62,69,466],[54,58,61,63,68,466],[54,62,251,252,254,255,256,257,258,259,466],[414,466],[54,212,260,337,338,339,425,426,427,430,443,466],[415,417,466],[54,65,127,146,229,283,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,387,388,400,410,413,466],[54,60,260,416,418,423,466,554,557,559,560,562,575],[212,260,337,338,340,415,416,417,419,421,422,423,425,443,466],[64,414,424,466],[260,417,466],[466,552,553,562],[466,552,553,560,561],[54,60,212,414,466,554],[466,569,570],[417,423,466,575],[415,416,466,575],[260,414,466],[260,415,466],[260,418,466],[54,414,421,466,555,572,573],[54,466,555,574],[65,77,212,466,572],[54,60,466,554,560,567,575,576],[54,60,260,416,418,423,466,554,560,575,577],[414,420,466],[54,466,555,572,573,574],[466,555,572],[414,466,556,557,563,568,571,576],[54,62,199,200,201,251,252,253,466],[54,62,145,212,254,260,266,466],[54,62,251,252,466],[54,334,466],[54,62,271,333,466],[439,466],[243,466],[439,440,466],[65,78,129,433,466],[65,129,212,272,437,438,441,443,466],[54,279,285,335,466],[54,62,63,78,129,200,208,230,267,268,269,270,272,273,274,275,276,277,278,336,337,338,442,449,466],[443,466],[54,63,67,68,146,212,230,277,337,338,419,424,430,431,432,433,434,435,436,442,443,466],[272,273,274,276,466],[230,275,466],[65,271,276,466],[252,260,466],[237,238,465,466],[54,58,246,248,456,466],[54,58,78,230,458,466],[54,58,459,461,466],[58,69,457,462,466],[465,466],[54,58,236,466],[58,237,244,466],[54,242,466],[237,243,245,463,464,466],[54,68,126,135,139,146,212,229,244,452,455,466],[247,466],[54,58,459,460,466],[54,146,212,304,307,466],[54,305,466],[54,58,130,305,306,308,309,310,466],[304,466],[54,146,290,316,321,466],[54,62,127,286,287,289,291,293,294,299,303,314,315,321,330,466],[54,62,127,286,287,289,291,293,294,298,299,300,314,317,321,330,333,466],[54,62,146,212,230,266,290,292,293,295,298,300,302,303,315,316,317,318,320,333,466],[54,230,286,287,289,316,321,466],[54,62,127,286,287,289,291,292,293,294,298,299,300,314,318,321,330,333,466],[266,286,291,292,293,294,295,299,466],[58,146,230,290,292,293,298,300,302,303,315,316,317,318,320,322,323,324,327,331,332,333,466],[54,288,298,319,333,466],[54,58,62,200,230,286,287,289,466],[200,201,212,266,290,291,293,294,298,310,311,312,313,321,466],[54,212,266,466],[54,58,62,200,286,287,289,291,292,293,294,298,299,300,320,328,332,466],[288,298,320,333,466],[54,58,180,200,286,287,289,291,292,293,294,298,299,300,301,303,314,315,316,318,320,321,322,325,326,328,329,330,332,333,466],[54,58,200,286,287,289,291,292,293,294,298,299,300,301,314,316,317,318,320,326,327,328,330,332,333,466],[54,58,62,200,286,287,289,291,292,293,294,298,299,300,314,320,327,329,331,333,466],[54,58,62,127,200,286,287,289,291,292,293,294,298,299,300,301,314,320,326,327,329,330,331,332,333,466],[54,58,62,200,286,287,289,291,292,293,294,298,299,300,314,320,327,328,330,333,466],[54,58,200,230,286,287,289,315,321,325,327,466],[291,292,294,466],[286,466],[230,286,289,466],[146,266,286,289,290,292,293,466],[293,466],[286,288,466],[54,58,291,466],[54,58,62,288,300,331,333,466],[54,58,230,288,296,300,331,333,466],[54,58,200,286,287,289,291,292,293,294,298,299,300,301,314,316,317,318,320,326,327,328,330,331,333,466],[54,58,146,212,266,293,295,297,300,466],[54,58,62,146,286,291,292,293,294,297,298,299,466],[54,78,229,466],[54,78,131,215,229,230,466],[54,136,137,146,212,229,466],[54,58,134,466],[54,131,212,229,466],[54,58,77,78,127,128,130,172,177,215,216,217,229,230,466],[54,62,78,79,80,81,82,83,84,85,87,115,127,128,133,146,153,176,177,180,200,201,203,207,208,212,213,214,218,228,230,466],[54,123,124,125,126,466],[54,172,174,466],[405,466],[156,466],[54,156,229,230,271,427,428,429,466],[271,466],[54,58,62,130,333,466],[54,244,466],[116,466],[78,466],[54,126,466],[127,135,466],[126,466],[54,58,126,130,135,138,139,146,212,229,466],[54,58,78,128,130,132,212,229,466],[54,58,126,130,135,139,146,212,229,244,453,466],[119,466],[77,466],[54,135,139,140,146,212,229,466],[58,128,130,133,212,229,466],[54,78,127,128,172,229,466],[54,78,466],[54,58,130,212,229,230,261,262,263,264,265,466],[266,466],[54,146,230,466],[119,121,466],[54,126,127,129,134,135,139,140,141,145,208,212,229,230,466],[54,127,466],[54,78,213,466],[54,77,126,155,156,177,180,466],[54,116,155,156,187,189,466],[54,119,155,156,193,199,466],[54,121,155,156,163,183,466],[54,78,149,151,154,466],[54,77,115,116,152,466],[54,77,119,152,153,466],[54,77,121,150,152,466],[54,67,68,212,244,281,450,451,452,454,466],[58,183,189,199,466],[54,78,128,129,133,208,210,211,229,466],[54,127,146,212,229,466],[54,127,128,212,466],[77,117,118,120,122,127,466],[54,77,116,117,128,466],[54,77,117,119,128,466],[54,77,117,121,128,466],[54,128,466],[64,78,128,156,466],[126,139,155,173,174,212,466],[78,116,118,128,139,149,155,157,158,159,160,161,179,180,183,184,185,186,187,188,190,199,466],[116,189,466],[78,119,120,128,139,147,148,154,155,176,179,180,183,189,190,191,192,193,194,195,196,197,198,466],[119,199,466],[78,121,122,128,139,151,155,162,163,164,165,166,167,168,169,170,179,180,181,182,189,190,199,466],[121,183,466],[54,77,123,124,125,126,127,135,139,155,171,172,174,175,176,177,178,179,183,189,199,230,466],[54,77,180,466],[54,58,78,127,128,130,132,209,213,229,466],[54,58,212,239,240,241,466],[54,78,153,223,466],[54,387,466],[54,382,383,385,386,466],[387,466],[54,383,384,387,466],[54,383,385,387,466],[54,230,449,466],[78,205,208,444,445,446,449,466],[444,449,466],[449,466],[206,466],[58,204,205,207,466],[62,226,466],[62,227,466],[54,78,129,222,223,224,466],[205,225,466],[54,62,153,219,221,225,227,466],[205,228,466],[62,220,466],[62,221,466],[54,62,78,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,127,129,133,146,200,201,203,207,212,213,229,230,466],[54,388,407,408,466],[54,388,409,466],[54,283,388,400,401,402,403,406,409,466],[54,388,400,410,466],[54,283,388,411,412,466],[54,413,466],[54,391,466],[54,390,466],[54,393,394,395,397,466],[54,391,392,396,398,466],[390,391,396,397],[399,466],[54,399,466],[54,283,388,389,392,398,466]],"referencedMap":[[1323,1],[1327,2],[1035,3],[1107,4],[1106,5],[1040,6],[1080,7],[1103,8],[1082,9],[1101,10],[1037,11],[1036,12],[1099,13],[1044,12],[1078,14],[1051,15],[1081,16],[1041,17],[1097,18],[1095,12],[1094,12],[1093,12],[1092,12],[1091,12],[1090,12],[1089,12],[1088,12],[1087,19],[1084,20],[1086,12],[1039,21],[1042,12],[1085,22],[1077,23],[1076,12],[1074,12],[1073,12],[1072,24],[1071,12],[1070,12],[1069,12],[1068,12],[1067,25],[1066,12],[1065,12],[1064,12],[1063,12],[1061,26],[1062,12],[1059,12],[1058,12],[1057,12],[1060,27],[1056,12],[1055,17],[1054,28],[1053,28],[1052,26],[1048,28],[1047,28],[1046,28],[1045,28],[1043,23],[1324,29],[1321,30],[1320,31],[1318,32],[1317,33],[1315,34],[1268,35],[1125,36],[1127,37],[1129,38],[1131,39],[1135,40],[1137,41],[1139,42],[1141,43],[1143,44],[1145,45],[1147,46],[1149,47],[1151,48],[1153,49],[1155,50],[1157,51],[1159,52],[1161,53],[1163,54],[1165,55],[1167,56],[1169,57],[1171,58],[1173,59],[1175,60],[1177,61],[1179,62],[1181,63],[1183,64],[1185,65],[1187,66],[1189,67],[1191,68],[1193,69],[1195,70],[1197,71],[1199,72],[1201,73],[1203,74],[1205,75],[1207,76],[1209,77],[1211,78],[1213,79],[1215,80],[1217,81],[1219,82],[1221,83],[1223,84],[1225,85],[1227,86],[1229,87],[1231,88],[1233,89],[1235,90],[1237,91],[1239,92],[1241,93],[1243,94],[1245,95],[1247,96],[1249,97],[1251,98],[1253,99],[1255,100],[1257,101],[1259,102],[1261,103],[1263,104],[1265,105],[1267,106],[1283,107],[1270,108],[1272,109],[1274,110],[1276,111],[1278,112],[1280,113],[1282,114],[1290,115],[1285,116],[1284,117],[1287,118],[1289,119],[1313,120],[1312,121],[1300,122],[1296,123],[1294,124],[1310,125],[1302,126],[1298,127],[1304,128],[1306,129],[1292,130],[1308,131],[1108,132],[1121,133],[1120,134],[1114,132],[1115,132],[1109,132],[1110,132],[1111,132],[1112,132],[1113,132],[1117,135],[1118,136],[1116,135],[1026,137],[1022,138],[1023,139],[28,140],[47,141],[45,142],[46,143],[1328,144],[43,145],[50,146],[48,147],[40,148],[35,149],[34,149],[37,150],[36,151],[39,151],[839,152],[716,153],[714,154],[715,154],[717,155],[713,156],[769,157],[709,158],[1010,159],[1000,160],[1004,158],[1005,158],[1006,161],[1007,162],[1021,163],[467,158],[953,164],[948,165],[952,165],[949,166],[992,167],[985,168],[986,169],[996,170],[984,171],[993,172],[994,158],[995,173],[991,174],[990,175],[937,176],[935,177],[936,178],[961,179],[998,152],[959,180],[951,181],[950,158],[1011,182],[1020,183],[1014,184],[1015,185],[1016,184],[1017,184],[1019,186],[1018,187],[1013,188],[1012,189],[849,190],[910,191],[909,192],[860,193],[828,194],[724,195],[850,196],[851,197],[915,198],[855,199],[841,200],[856,201],[838,202],[859,203],[831,204],[854,205],[914,206],[534,158],[945,207],[946,208],[863,209],[669,210],[881,211],[879,212],[880,213],[876,214],[873,215],[874,177],[989,216],[987,217],[988,218],[812,152],[652,152],[653,219],[862,220],[861,158],[844,221],[842,222],[869,223],[895,224],[845,225],[864,223],[866,226],[865,223],[877,227],[867,228],[882,229],[872,230],[894,231],[886,232],[885,233],[887,223],[889,234],[888,235],[890,236],[891,158],[892,237],[893,238],[666,239],[546,240],[896,241],[535,158],[536,242],[537,158],[539,213],[540,243],[541,158],[542,223],[543,158],[847,244],[878,245],[667,245],[848,246],[884,247],[883,248],[868,249],[870,152],[871,250],[668,152],[581,251],[582,252],[660,253],[658,254],[654,255],[656,256],[655,257],[659,258],[619,259],[662,260],[661,261],[548,262],[908,263],[913,264],[911,265],[912,266],[832,152],[840,267],[858,268],[857,269],[833,158],[834,158],[835,270],[837,271],[902,272],[836,158],[898,273],[897,274],[907,275],[901,276],[904,277],[903,278],[899,279],[900,280],[906,281],[905,158],[640,282],[664,283],[645,284],[650,285],[623,286],[608,158],[638,287],[633,288],[637,289],[636,286],[665,290],[549,291],[663,292],[830,293],[829,294],[649,158],[613,295],[615,296],[614,297],[616,286],[583,286],[639,298],[544,299],[609,158],[603,300],[624,301],[651,302],[641,303],[642,304],[612,305],[591,158],[594,286],[604,306],[601,158],[600,158],[605,158],[630,307],[696,152],[644,308],[545,309],[585,299],[626,310],[647,311],[648,312],[646,313],[607,314],[783,315],[781,316],[782,317],[622,318],[618,319],[584,320],[617,321],[611,158],[530,158],[772,152],[492,322],[511,152],[517,323],[516,324],[515,325],[514,326],[513,327],[512,328],[488,158],[505,329],[508,330],[509,331],[490,158],[510,332],[489,330],[766,333],[506,330],[507,334],[589,335],[587,336],[526,152],[971,337],[970,338],[973,339],[972,223],[980,340],[977,341],[969,342],[978,152],[976,343],[975,344],[974,345],[671,346],[670,347],[475,348],[480,349],[776,350],[775,158],[525,351],[524,352],[504,353],[495,354],[473,355],[470,356],[471,356],[590,357],[503,358],[491,359],[494,360],[498,361],[496,158],[497,362],[493,363],[999,364],[483,365],[486,366],[485,367],[484,368],[578,369],[550,370],[551,370],[846,223],[476,371],[979,372],[875,152],[527,152],[523,373],[522,374],[528,375],[529,376],[798,158],[826,377],[824,378],[825,379],[821,380],[822,381],[819,158],[820,382],[940,383],[927,384],[941,385],[938,386],[939,387],[942,388],[538,389],[519,390],[481,391],[547,158],[629,286],[787,392],[502,158],[760,286],[960,393],[479,286],[474,152],[478,392],[482,392],[657,394],[739,223],[689,395],[788,396],[686,397],[678,229],[679,158],[681,398],[680,399],[682,400],[683,158],[684,401],[687,402],[688,403],[685,404],[926,405],[923,406],[924,407],[919,408],[918,158],[728,409],[729,410],[726,158],[710,411],[735,412],[690,158],[727,413],[768,414],[761,158],[733,415],[732,229],[814,416],[813,417],[815,418],[789,419],[695,420],[694,158],[947,421],[773,422],[770,152],[771,152],[704,423],[703,424],[816,223],[817,425],[706,426],[997,223],[725,427],[962,158],[531,428],[487,158],[532,429],[801,188],[803,188],[800,430],[807,188],[804,223],[805,158],[811,431],[810,432],[806,433],[799,188],[809,434],[808,435],[802,436],[521,437],[518,158],[520,438],[533,439],[468,440],[469,441],[982,442],[933,443],[934,444],[981,158],[922,445],[925,446],[920,447],[916,448],[917,448],[721,449],[719,158],[720,286],[790,450],[718,451],[705,452],[786,453],[785,454],[943,455],[921,456],[784,457],[780,458],[765,459],[763,460],[767,461],[764,158],[762,158],[967,462],[965,458],[966,463],[968,464],[674,465],[673,466],[827,467],[672,468],[676,469],[675,470],[677,471],[823,472],[759,473],[723,474],[795,475],[794,476],[722,477],[793,478],[797,479],[796,480],[818,481],[738,482],[740,483],[741,158],[742,484],[743,478],[744,485],[745,478],[746,478],[747,486],[748,487],[749,478],[750,485],[751,485],[752,488],[753,478],[754,478],[755,478],[756,158],[757,485],[758,488],[737,489],[691,490],[692,491],[693,478],[736,492],[712,294],[699,493],[734,494],[731,495],[730,496],[983,497],[944,498],[963,499],[964,500],[792,501],[791,502],[707,503],[701,158],[702,158],[711,504],[700,505],[708,506],[777,505],[778,507],[779,508],[774,509],[932,510],[928,458],[929,458],[930,511],[931,512],[1008,513],[955,514],[954,160],[1009,515],[1003,516],[1001,517],[1002,448],[697,158],[698,518],[958,519],[957,520],[956,521],[65,522],[449,523],[249,158],[250,158],[472,158],[580,524],[579,525],[280,526],[66,158],[68,527],[285,389],[67,528],[281,529],[451,530],[452,531],[58,158],[450,532],[55,286],[201,171],[64,158],[853,533],[477,393],[200,534],[466,535],[245,536],[130,158],[62,286],[115,393],[284,537],[87,393],[405,538],[153,539],[232,540],[233,541],[231,542],[129,543],[150,539],[86,544],[54,286],[70,545],[253,546],[71,547],[56,548],[76,549],[75,550],[73,551],[57,552],[72,158],[234,549],[74,553],[235,554],[52,158],[53,555],[156,158],[404,389],[852,393],[282,556],[309,557],[501,558],[500,559],[283,560],[278,158],[558,561],[559,562],[553,563],[552,564],[557,158],[61,565],[567,566],[577,567],[60,544],[565,568],[566,569],[554,158],[564,286],[63,570],[69,571],[252,286],[260,572],[251,158],[426,573],[431,574],[418,575],[414,576],[341,158],[342,158],[343,158],[344,158],[345,158],[346,158],[347,158],[348,158],[349,158],[350,158],[351,158],[352,158],[353,158],[354,158],[355,158],[356,158],[357,158],[358,158],[359,158],[360,158],[361,158],[362,158],[363,158],[364,158],[365,158],[366,158],[367,158],[368,158],[369,158],[370,158],[371,158],[372,158],[373,158],[374,158],[375,158],[376,158],[377,158],[378,158],[379,158],[380,158],[381,158],[339,364],[563,577],[424,578],[340,158],[425,579],[423,580],[420,573],[561,581],[562,582],[560,583],[571,584],[569,585],[570,586],[415,587],[416,588],[419,589],[574,590],[573,591],[555,592],[568,593],[576,594],[421,595],[575,596],[556,597],[572,598],[417,587],[254,599],[267,600],[256,601],[335,602],[338,158],[334,603],[440,604],[439,605],[441,606],[436,158],[434,607],[433,286],[435,286],[442,608],[336,609],[337,158],[443,610],[269,158],[268,158],[438,611],[437,612],[275,613],[273,158],[274,158],[276,614],[272,615],[255,601],[258,601],[259,601],[422,616],[257,601],[239,617],[457,618],[246,544],[459,619],[458,544],[462,620],[463,621],[238,622],[236,286],[247,544],[237,623],[464,624],[243,625],[240,158],[241,158],[465,626],[456,627],[248,628],[461,629],[308,630],[304,556],[307,392],[306,631],[311,632],[305,633],[310,286],[324,634],[316,635],[318,636],[321,637],[315,638],[317,639],[303,640],[325,641],[320,642],[288,643],[314,644],[313,645],[333,646],[319,647],[327,648],[331,649],[330,650],[328,651],[329,652],[322,653],[286,158],[293,654],[299,655],[287,656],[291,657],[294,658],[289,659],[292,660],[296,661],[297,662],[332,663],[298,664],[300,665],[131,666],[216,667],[138,668],[136,669],[137,669],[132,670],[218,671],[229,672],[80,158],[81,158],[82,158],[83,158],[79,158],[84,158],[85,158],[127,673],[395,674],[429,158],[406,675],[428,676],[430,677],[427,678],[460,679],[453,680],[159,681],[244,682],[139,286],[135,683],[174,684],[77,286],[161,158],[116,158],[158,158],[188,158],[187,158],[184,158],[186,158],[160,158],[126,286],[191,158],[119,158],[176,158],[195,158],[193,158],[196,158],[197,158],[148,158],[164,158],[121,158],[170,158],[166,158],[163,158],[168,158],[169,158],[181,158],[185,286],[192,286],[182,286],[177,286],[155,158],[123,286],[124,286],[125,286],[172,685],[140,686],[133,687],[454,688],[198,689],[78,690],[141,691],[211,692],[230,693],[215,694],[266,695],[261,696],[265,697],[167,698],[146,699],[134,700],[209,701],[178,702],[190,703],[194,704],[165,705],[152,706],[149,707],[154,708],[151,709],[455,710],[214,711],[217,158],[212,712],[145,713],[213,714],[128,715],[118,716],[120,717],[122,718],[117,719],[179,720],[175,721],[189,722],[157,723],[199,724],[147,725],[183,726],[162,727],[180,728],[171,729],[210,730],[843,533],[242,731],[203,694],[224,732],[388,733],[387,734],[382,735],[385,736],[384,737],[383,158],[386,158],[448,738],[447,739],[445,740],[444,741],[205,158],[223,158],[207,742],[206,743],[204,544],[227,744],[226,745],[225,746],[222,747],[228,748],[219,749],[221,750],[220,751],[208,752],[89,158],[90,158],[91,158],[92,158],[93,158],[94,158],[95,158],[96,158],[97,158],[98,158],[99,158],[100,158],[101,158],[102,158],[103,158],[104,158],[105,158],[106,158],[107,158],[108,158],[109,158],[88,158],[110,158],[111,158],[112,158],[113,158],[114,158],[409,753],[407,754],[408,158],[410,755],[401,756],[402,158],[403,158],[413,757],[411,758],[389,158],[392,759],[391,760],[396,761],[397,762],[393,158],[398,763],[394,158],[390,759],[400,764],[412,765],[399,766]],"exportedModulesMap":[[1323,1],[1327,2],[1035,3],[1107,4],[1106,5],[1040,6],[1080,7],[1103,8],[1082,9],[1101,10],[1037,11],[1036,12],[1099,13],[1044,12],[1078,14],[1051,15],[1081,16],[1041,17],[1097,18],[1095,12],[1094,12],[1093,12],[1092,12],[1091,12],[1090,12],[1089,12],[1088,12],[1087,19],[1084,20],[1086,12],[1039,21],[1042,12],[1085,22],[1077,23],[1076,12],[1074,12],[1073,12],[1072,24],[1071,12],[1070,12],[1069,12],[1068,12],[1067,25],[1066,12],[1065,12],[1064,12],[1063,12],[1061,26],[1062,12],[1059,12],[1058,12],[1057,12],[1060,27],[1056,12],[1055,17],[1054,28],[1053,28],[1052,26],[1048,28],[1047,28],[1046,28],[1045,28],[1043,23],[1324,29],[1321,30],[1320,31],[1318,32],[1317,33],[1315,34],[1268,35],[1125,36],[1127,37],[1129,38],[1131,39],[1135,40],[1137,41],[1139,42],[1141,43],[1143,44],[1145,45],[1147,46],[1149,47],[1151,48],[1153,49],[1155,50],[1157,51],[1159,52],[1161,53],[1163,54],[1165,55],[1167,56],[1169,57],[1171,58],[1173,59],[1175,60],[1177,61],[1179,62],[1181,63],[1183,64],[1185,65],[1187,66],[1189,67],[1191,68],[1193,69],[1195,70],[1197,71],[1199,72],[1201,73],[1203,74],[1205,75],[1207,76],[1209,77],[1211,78],[1213,79],[1215,80],[1217,81],[1219,82],[1221,83],[1223,84],[1225,85],[1227,86],[1229,87],[1231,88],[1233,89],[1235,90],[1237,91],[1239,92],[1241,93],[1243,94],[1245,95],[1247,96],[1249,97],[1251,98],[1253,99],[1255,100],[1257,101],[1259,102],[1261,103],[1263,104],[1265,105],[1267,106],[1283,107],[1270,108],[1272,109],[1274,110],[1276,111],[1278,112],[1280,113],[1282,114],[1290,115],[1285,116],[1284,117],[1287,118],[1289,119],[1313,120],[1312,121],[1300,122],[1296,123],[1294,124],[1310,125],[1302,126],[1298,127],[1304,128],[1306,129],[1292,130],[1308,131],[1108,132],[1121,133],[1120,134],[1114,132],[1115,132],[1109,132],[1110,132],[1111,132],[1112,132],[1113,132],[1117,135],[1118,136],[1116,135],[1026,137],[1022,138],[1023,139],[28,140],[47,141],[45,142],[46,143],[1328,144],[43,145],[50,146],[48,147],[40,148],[35,149],[34,149],[37,150],[36,151],[39,151],[839,152],[716,153],[714,154],[715,154],[717,155],[713,156],[769,157],[709,158],[1010,159],[1000,160],[1004,158],[1005,158],[1006,161],[1007,162],[1021,163],[467,158],[953,164],[948,165],[952,165],[949,166],[992,167],[985,168],[986,169],[996,170],[984,171],[993,172],[994,158],[995,173],[991,174],[990,175],[937,176],[935,177],[936,178],[961,179],[998,152],[959,180],[951,181],[950,158],[1011,182],[1020,183],[1014,184],[1015,185],[1016,184],[1017,184],[1019,186],[1018,187],[1013,188],[1012,189],[849,190],[910,191],[909,192],[860,193],[828,194],[724,195],[850,196],[851,197],[915,198],[855,199],[841,200],[856,201],[838,202],[859,203],[831,204],[854,205],[914,206],[534,158],[945,207],[946,208],[863,209],[669,210],[881,211],[879,212],[880,213],[876,214],[873,215],[874,177],[989,216],[987,217],[988,218],[812,152],[652,152],[653,219],[862,220],[861,158],[844,221],[842,222],[869,223],[895,224],[845,225],[864,223],[866,226],[865,223],[877,227],[867,228],[882,229],[872,230],[894,231],[886,232],[885,233],[887,223],[889,234],[888,235],[890,236],[891,158],[892,237],[893,238],[666,239],[546,240],[896,241],[535,158],[536,242],[537,158],[539,213],[540,243],[541,158],[542,223],[543,158],[847,244],[878,245],[667,245],[848,246],[884,247],[883,248],[868,249],[870,152],[871,250],[668,152],[581,251],[582,252],[660,253],[658,254],[654,255],[656,256],[655,257],[659,258],[619,259],[662,260],[661,261],[548,262],[908,263],[913,264],[911,265],[912,266],[832,152],[840,267],[858,268],[857,269],[833,158],[834,158],[835,270],[837,271],[902,272],[836,158],[898,273],[897,274],[907,275],[901,276],[904,277],[903,278],[899,279],[900,280],[906,281],[905,158],[640,282],[664,283],[645,284],[650,285],[623,286],[608,158],[638,287],[633,288],[637,289],[636,286],[665,290],[549,291],[663,292],[830,293],[829,294],[649,158],[613,295],[615,296],[614,297],[616,286],[583,286],[639,298],[544,299],[609,158],[603,300],[624,301],[651,302],[641,303],[642,304],[612,305],[591,158],[594,286],[604,306],[601,158],[600,158],[605,158],[630,307],[696,152],[644,308],[545,309],[585,299],[626,310],[647,311],[648,312],[646,313],[607,314],[783,315],[781,316],[782,317],[622,318],[618,319],[584,320],[617,321],[611,158],[530,158],[772,152],[492,322],[511,152],[517,323],[516,324],[515,325],[514,326],[513,327],[512,328],[488,158],[505,329],[508,330],[509,331],[490,158],[510,332],[489,330],[766,333],[506,330],[507,334],[589,335],[587,336],[526,152],[971,337],[970,338],[973,339],[972,223],[980,340],[977,341],[969,342],[978,152],[976,343],[975,344],[974,345],[671,346],[670,347],[475,348],[480,349],[776,350],[775,158],[525,351],[524,352],[504,353],[495,354],[473,355],[470,356],[471,356],[590,357],[503,358],[491,359],[494,360],[498,361],[496,158],[497,362],[493,363],[999,364],[483,365],[486,366],[485,367],[484,368],[578,369],[550,370],[551,370],[846,223],[476,371],[979,372],[875,152],[527,152],[523,373],[522,374],[528,375],[529,376],[798,158],[826,377],[824,378],[825,379],[821,380],[822,381],[819,158],[820,382],[940,383],[927,384],[941,385],[938,386],[939,387],[942,388],[538,389],[519,390],[481,391],[547,158],[629,286],[787,392],[502,158],[760,286],[960,393],[479,286],[474,152],[478,392],[482,392],[657,394],[739,223],[689,395],[788,396],[686,397],[678,229],[679,158],[681,398],[680,399],[682,400],[683,158],[684,401],[687,402],[688,403],[685,404],[926,405],[923,406],[924,407],[919,408],[918,158],[728,409],[729,410],[726,158],[710,411],[735,412],[690,158],[727,413],[768,414],[761,158],[733,415],[732,229],[814,416],[813,417],[815,418],[789,419],[695,420],[694,158],[947,421],[773,422],[770,152],[771,152],[704,423],[703,424],[816,223],[817,425],[706,426],[997,223],[725,427],[962,158],[531,428],[487,158],[532,429],[801,188],[803,188],[800,430],[807,188],[804,223],[805,158],[811,431],[810,432],[806,433],[799,188],[809,434],[808,435],[802,436],[521,437],[518,158],[520,438],[533,439],[468,440],[469,441],[982,442],[933,443],[934,444],[981,158],[922,445],[925,446],[920,447],[916,448],[917,448],[721,449],[719,158],[720,286],[790,450],[718,451],[705,452],[786,453],[785,454],[943,455],[921,456],[784,457],[780,458],[765,459],[763,460],[767,461],[764,158],[762,158],[967,462],[965,458],[966,463],[968,464],[674,465],[673,466],[827,467],[672,468],[676,469],[675,470],[677,471],[823,472],[759,473],[723,474],[795,475],[794,476],[722,477],[793,478],[797,479],[796,480],[818,481],[738,482],[740,483],[741,158],[742,484],[743,478],[744,485],[745,478],[746,478],[747,486],[748,487],[749,478],[750,485],[751,485],[752,488],[753,478],[754,478],[755,478],[756,158],[757,485],[758,488],[737,489],[691,490],[692,491],[693,478],[736,492],[712,294],[699,493],[734,494],[731,495],[730,496],[983,497],[944,498],[963,499],[964,500],[792,501],[791,502],[707,503],[701,158],[702,158],[711,504],[700,505],[708,506],[777,505],[778,507],[779,508],[774,509],[932,510],[928,458],[929,458],[930,511],[931,512],[1008,513],[955,514],[954,160],[1009,515],[1003,516],[1001,517],[1002,448],[697,158],[698,518],[958,519],[957,520],[956,521],[65,522],[449,523],[249,158],[250,158],[472,158],[580,524],[579,525],[280,526],[66,158],[68,527],[285,389],[67,528],[281,529],[451,530],[452,531],[58,158],[450,532],[55,286],[201,171],[64,158],[853,533],[477,393],[200,534],[466,535],[245,536],[130,158],[62,286],[115,393],[284,537],[87,393],[405,538],[153,539],[232,540],[233,541],[231,542],[129,543],[150,539],[86,544],[54,286],[70,545],[253,546],[71,547],[56,548],[76,549],[75,550],[73,551],[57,552],[72,158],[234,549],[74,553],[235,554],[52,158],[53,555],[156,158],[404,389],[852,393],[282,556],[309,557],[501,558],[500,559],[283,560],[278,158],[558,561],[559,562],[553,563],[552,564],[557,158],[61,565],[567,566],[577,567],[60,544],[565,568],[566,569],[554,158],[564,286],[63,570],[69,571],[252,286],[260,572],[251,158],[426,573],[431,574],[418,575],[414,576],[341,158],[342,158],[343,158],[344,158],[345,158],[346,158],[347,158],[348,158],[349,158],[350,158],[351,158],[352,158],[353,158],[354,158],[355,158],[356,158],[357,158],[358,158],[359,158],[360,158],[361,158],[362,158],[363,158],[364,158],[365,158],[366,158],[367,158],[368,158],[369,158],[370,158],[371,158],[372,158],[373,158],[374,158],[375,158],[376,158],[377,158],[378,158],[379,158],[380,158],[381,158],[339,364],[563,577],[424,578],[340,158],[425,579],[423,580],[420,573],[561,581],[562,582],[560,583],[571,584],[569,585],[570,586],[415,587],[416,588],[419,589],[574,590],[573,591],[555,592],[568,593],[576,594],[421,595],[575,596],[556,597],[572,598],[417,587],[254,599],[267,600],[256,601],[335,602],[338,158],[334,603],[440,604],[439,605],[441,606],[436,158],[434,607],[433,286],[435,286],[442,608],[336,609],[337,158],[443,610],[269,158],[268,158],[438,611],[437,612],[275,613],[273,158],[274,158],[276,614],[272,615],[255,601],[258,601],[259,601],[422,616],[257,601],[239,617],[457,618],[246,544],[459,619],[458,544],[462,620],[463,621],[238,622],[236,286],[247,544],[237,623],[464,624],[243,625],[240,158],[241,158],[465,626],[456,627],[248,628],[461,629],[308,630],[304,556],[307,392],[306,631],[311,632],[305,633],[310,286],[324,634],[316,635],[318,636],[321,637],[315,638],[317,639],[303,640],[325,641],[320,642],[288,643],[314,644],[313,645],[333,646],[319,647],[327,648],[331,649],[330,650],[328,651],[329,652],[322,653],[286,158],[293,654],[299,655],[287,656],[291,657],[294,658],[289,659],[292,660],[296,661],[297,662],[332,663],[298,664],[300,665],[131,666],[216,667],[138,668],[136,669],[137,669],[132,670],[218,671],[229,672],[80,158],[81,158],[82,158],[83,158],[79,158],[84,158],[85,158],[127,673],[395,674],[429,158],[406,675],[428,676],[430,677],[427,678],[460,679],[453,680],[159,681],[244,682],[139,286],[135,683],[174,684],[77,286],[161,158],[116,158],[158,158],[188,158],[187,158],[184,158],[186,158],[160,158],[126,286],[191,158],[119,158],[176,158],[195,158],[193,158],[196,158],[197,158],[148,158],[164,158],[121,158],[170,158],[166,158],[163,158],[168,158],[169,158],[181,158],[185,286],[192,286],[182,286],[177,286],[155,158],[123,286],[124,286],[125,286],[172,685],[140,686],[133,687],[454,688],[198,689],[78,690],[141,691],[211,692],[230,693],[215,694],[266,695],[261,696],[265,697],[167,698],[146,699],[134,700],[209,701],[178,702],[190,703],[194,704],[165,705],[152,706],[149,707],[154,708],[151,709],[455,710],[214,711],[217,158],[212,712],[145,713],[213,714],[128,715],[118,716],[120,717],[122,718],[117,719],[179,720],[175,721],[189,722],[157,723],[199,724],[147,725],[183,726],[162,727],[180,728],[171,729],[210,730],[843,533],[242,731],[203,694],[224,732],[388,733],[387,734],[382,735],[385,736],[384,737],[383,158],[386,158],[448,738],[447,739],[445,740],[444,741],[205,158],[223,158],[207,742],[206,743],[204,544],[227,744],[226,745],[225,746],[222,747],[228,748],[219,749],[221,750],[220,751],[208,752],[89,158],[90,158],[91,158],[92,158],[93,158],[94,158],[95,158],[96,158],[97,158],[98,158],[99,158],[100,158],[101,158],[102,158],[103,158],[104,158],[105,158],[106,158],[107,158],[108,158],[109,158],[88,158],[110,158],[111,158],[112,158],[113,158],[114,158],[409,753],[407,754],[408,158],[410,755],[401,756],[402,158],[403,158],[413,757],[411,758],[389,158],[392,759],[391,760],[396,761],[397,762],[393,158],[398,763],[394,158],[390,759],[400,764],[412,765],[399,766]],"semanticDiagnosticsPerFile":[1323,1322,1327,1079,1035,1031,1032,1029,1107,1105,1106,1040,1080,1104,1103,1082,1049,1050,1034,1030,1100,1101,1037,1036,1033,1099,1098,1044,1078,1051,1081,1041,1096,1097,1095,1094,1093,1092,1091,1090,1089,1088,1087,1084,1086,1039,1083,1042,1085,1077,1076,1075,1074,1073,1072,1071,1038,1070,1069,1068,1067,1066,1065,1064,1063,1061,1062,1059,1058,1057,1060,1056,1055,1054,1053,1052,1048,1047,1046,1045,1043,1102,1028,1027,1324,1325,1321,1320,1319,1122,1123,1318,1317,1316,1315,1314,1268,1125,1124,1127,1126,1129,1128,1131,1130,1133,1132,1135,1134,1137,1136,1139,1138,1141,1140,1143,1142,1145,1144,1147,1146,1149,1148,1151,1150,1153,1152,1155,1154,1157,1156,1159,1158,1161,1160,1163,1162,1165,1164,1167,1166,1169,1168,1171,1170,1173,1172,1175,1174,1177,1176,1179,1178,1181,1180,1183,1182,1185,1184,1187,1186,1189,1188,1191,1190,1193,1192,1195,1194,1197,1196,1199,1198,1201,1200,1203,1202,1205,1204,1207,1206,1209,1208,1211,1210,1213,1212,1215,1214,1217,1216,1219,1218,1221,1220,1223,1222,1225,1224,1227,1226,1229,1228,1231,1230,1233,1232,1235,1234,1237,1236,1239,1238,1241,1240,1243,1242,1245,1244,1247,1246,1249,1248,1251,1250,1253,1252,1255,1254,1257,1256,1259,1258,1261,1260,1263,1262,1265,1264,1267,1266,1283,1270,1269,1272,1271,1274,1273,1276,1275,1278,1277,1280,1279,1282,1281,1290,1285,1284,1287,1286,1289,1288,1313,1312,1311,1300,1299,1296,1295,1294,1293,1310,1309,1302,1301,1298,1297,1304,1303,1306,1305,1292,1291,1308,1307,1326,1108,1121,1120,1119,1114,1115,1109,1110,1111,1112,1113,1117,1118,1116,51,1026,1022,1023,1024,1025,1,16,2,28,3,26,4,5,17,18,6,20,21,19,27,7,8,9,10,11,12,13,14,24,25,22,23,15,47,45,46,44,1328,42,43,50,49,48,41,40,31,35,32,33,34,37,36,38,39,30,29,839,716,714,715,717,713,769,709,1010,1000,1004,1005,1006,1007,1021,467,953,948,952,949,992,985,986,996,984,993,994,995,991,990,937,935,936,961,998,959,951,950,1011,1020,1014,1015,1016,1017,1019,1018,1013,1012,849,910,909,860,828,724,850,851,915,855,841,856,838,859,831,854,914,534,945,946,863,669,881,879,880,876,873,874,989,987,988,812,652,653,862,861,844,842,869,895,845,864,866,865,877,867,882,872,894,886,885,887,889,888,890,891,892,893,666,546,896,535,536,537,539,540,541,542,543,847,878,667,848,884,883,868,870,871,668,581,582,660,658,654,656,655,659,619,662,661,548,908,913,911,912,832,840,858,857,833,834,835,837,902,836,898,897,907,901,904,903,899,900,906,905,640,627,628,664,645,610,650,620,621,623,608,638,631,633,634,635,632,637,636,665,549,663,830,829,649,613,615,614,616,583,639,544,609,603,602,624,651,641,642,612,592,593,591,594,595,596,604,601,597,598,599,600,605,630,696,643,644,545,585,626,625,647,648,646,607,606,783,781,782,622,618,584,617,611,530,772,492,511,517,516,515,514,513,512,488,505,508,509,490,510,489,766,506,507,589,586,587,588,526,971,970,973,972,980,977,969,978,976,975,974,671,670,475,480,776,775,525,524,504,495,473,470,471,590,503,491,494,498,496,497,493,999,483,486,485,484,578,550,551,846,476,979,875,527,523,522,528,529,798,826,824,825,821,822,819,820,940,927,941,938,939,942,538,519,481,547,629,787,502,760,960,479,474,478,482,657,739,689,788,686,678,679,681,680,682,683,684,687,688,685,926,923,924,919,918,728,729,726,710,735,690,727,768,761,733,732,814,813,815,789,695,694,947,773,770,771,704,703,816,817,706,997,725,962,531,487,532,801,803,800,807,804,805,811,810,806,799,809,808,802,521,518,520,533,468,469,982,933,934,981,922,925,920,916,917,721,719,720,790,718,705,786,785,943,921,784,780,765,763,767,764,762,967,965,966,968,674,673,827,672,676,675,677,823,759,723,795,794,722,793,797,796,818,738,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,737,691,692,693,736,712,699,734,731,730,983,944,963,964,792,791,707,701,702,711,700,708,777,778,779,774,932,928,929,930,931,1008,955,954,1009,1003,1001,1002,697,698,958,957,956,65,449,249,250,472,580,579,280,66,68,285,67,281,451,452,58,450,55,201,64,853,477,200,466,245,130,62,115,284,87,405,153,232,233,231,129,150,86,54,70,253,71,56,76,75,73,57,72,234,74,235,52,53,156,404,852,282,309,501,499,500,283,278,558,559,553,552,557,61,59,567,577,60,565,566,554,564,63,69,252,260,251,426,431,418,414,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,339,563,424,340,425,423,420,561,562,560,571,569,570,415,416,419,574,573,555,568,576,421,575,556,572,417,254,267,256,432,335,338,334,440,439,441,436,434,433,435,442,336,279,277,337,443,269,268,438,437,275,273,274,276,272,255,258,259,422,257,239,457,246,459,458,462,463,238,236,247,237,464,243,240,241,465,456,248,461,308,304,307,306,311,305,310,324,316,318,321,315,317,303,325,323,320,326,288,314,313,312,290,295,333,319,327,331,330,301,328,329,322,302,286,293,299,287,291,294,289,292,296,297,332,298,300,131,216,138,136,137,132,218,229,80,81,82,83,79,84,85,127,395,429,406,428,430,427,271,460,453,159,244,139,135,174,77,161,116,158,188,187,184,186,160,126,191,119,176,195,193,196,197,148,164,121,170,166,163,168,169,181,185,192,182,177,155,123,124,125,172,140,133,454,198,78,141,211,230,215,266,261,262,263,264,265,167,146,134,209,178,190,194,165,152,149,154,151,455,214,217,212,145,213,128,118,120,122,117,179,175,173,189,157,199,147,183,162,180,171,210,843,242,203,224,388,387,382,385,384,383,386,448,447,445,444,446,270,144,142,143,202,205,223,207,206,204,227,226,225,222,228,219,221,220,208,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,88,110,111,112,113,114,409,407,408,410,401,402,403,413,411,389,392,391,396,397,393,398,394,390,400,412,399]},"version":"5.2.2"} \ No newline at end of file +{"program":{"fileNames":["../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/boolean.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/console.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/date.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/error.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/json.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/map.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/math.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/number.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/regexp.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/set.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/string.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/timers.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/utsjsonobject.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/arraybuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/float32array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/float64array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/int8array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/int16array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/int32array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint8array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint8clampedarray.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint16array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/uint32array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/dataview.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/iterable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/common/common.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/shims.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es5.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.collection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.promise.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.symbol.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.symbol.wellknown.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2015.iterable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2018.asynciterable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2018.asyncgenerator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2018.promise.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/lib.es2020.symbol.wellknown.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/shims/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uts/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/hbuilder-x/hbuilderx.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/hbuilder-x/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/shared/dist/shared.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/reactivity/dist/reactivity.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/runtime-core/dist/runtime-core.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/@vue/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/vue.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/shims/common.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/shims/app-android.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/array.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/type.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/typevariable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/object.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/annotation/annotation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/annotatedelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/genericdeclaration.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/serializable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/proxy/type.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketaddress.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/proxy.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/comparable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/uri.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/autocloseable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/closeable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/flushable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/outputstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/inputstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/url.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/package.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/accessibleobject.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/member.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/field.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/parameter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/executable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/constructor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/consumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/iterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/iterable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/assequence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/binarysearchby.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/elementat.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/groupingby.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/iterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection/withindex.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/number.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/float.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/sequence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/asiterable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/assequence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/distinct.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/elementat.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/filterindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/filterisinstance.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/filternotnull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/flatmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/flatmapindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/flatten.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/generatesequence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/groupingby.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/ifempty.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/minus.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/oneach.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/oneachindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/requirenonulls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningfold.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningfoldindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningreduce.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/runningreduceindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/shuffled.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/sorted.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/sortedwith.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/zip.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence/zipwithnext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/double.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubleconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/ofprimitive.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/ofdouble.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/ofint.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator/oflong.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/todoublefunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/tointfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/tolongfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/function.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/comparator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/spliterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/iterable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/cloneable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractcollection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/hashset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/map/entry.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/bifunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractmap/simpleentry.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractmap/simpleimmutableentry.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/biconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/hashmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/linkedhashmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function1.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function2.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function0.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/sortedmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/map.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/intstream/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intunaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator/ofdouble.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/long.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator/oflong.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/integer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/primitiveiterator/ofint.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/supplier.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/runnable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/doublestream/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublefunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/doublesummarystatistics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubleunaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublebinaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/longstream/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longsupplier.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longbinaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optionallong.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longpredicate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/longsummarystatistics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longtodoublefunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longtointfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/stream/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/unaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/collector/characteristics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/binaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/collector.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/predicate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optional.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/basestream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/stream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/longunaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/objlongconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/longstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubletointfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/objdoubleconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doubletolongfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublesupplier.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/doublepredicate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/doublestream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optionaldouble.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intbinaryoperator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/objintconsumer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intsupplier.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/optionalint.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/intpredicate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/inttodoublefunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/function/inttolongfunction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/intsummarystatistics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/stream/intstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/charsequence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/appendable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/functions/function3.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/collections/grouping.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/random/random/default/serialized.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/internal/defaultconstructormarker.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/random/random/default.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/random/random.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/sequences/sequence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/navigableset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/treeset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/linkedhashset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/set.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/sortedset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/random.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/listiterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/abstractlist.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/randomaccess.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/arraylist.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intrange/companion.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/openendrange/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/openendrange.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intprogression/companion.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/jvm/internal/markers/kmappedmarker.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/collections/intiterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intprogression.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/closedrange/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/closedrange.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/ranges/intrange.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/collection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/list.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/invoke/typedescriptor/ofmethod.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/invoke/typedescriptor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/invoke/typedescriptor/offield.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/method.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/reflect/recordcomponent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/guard.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/permission.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/domaincombiner.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/accesscontrolcontext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/privilegedaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/privilegedexceptionaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/javax/security/auth/subject.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/principal.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/enumeration.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/classloader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certificate/certificaterep.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/key.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/publickey.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/file/copyrecursively.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/file/readlines.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/byteorder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/buffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/readable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/charbuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/floatbuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/doublebuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/shortbuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/intbuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/longbuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/bytebuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/category.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/filteringmode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/isocountrycode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale/languagerange.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/locale.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/charset/charset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/path/whenmappings.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/path/copytorecursively.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/path/pathwalkoption.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/timeunit.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchservice.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchevent/kind.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchevent/modifier.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/watchkey.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/linkoption.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/void.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filevisitresult.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/filteroutputstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/printstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/stacktraceelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/throwable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/exception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/ioexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporal.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalamount.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/duration.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalunit.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/resolverstyle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalfield.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/valuerange.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalaccessor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporalquery.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/textstyle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zone/zoneoffsettransition.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zone/zonerules.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zoneid.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/temporaladjuster.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zoneoffset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/month.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/temporal/chronofield.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/era.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/attributedcharacteriterator/attribute.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/format/field.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/fieldposition.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/characteriterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/attributedcharacteriterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/stringbuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/parseposition.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/text/format.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/formatstyle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/decimalstyle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/format/datetimeformatter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronoperiod.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronolocaldate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronozoneddatetime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronolocaldatetime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/instantsource.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/clock.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/chronology.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/period.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/isoera.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/abstractchronology.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/chrono/isochronology.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/dayofweek.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/localdate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/offsetdatetime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/offsettime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/localtime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/localdatetime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/zoneddatetime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/time/instant.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/filetime.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/basicfileattributes.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filevisitor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/openoption.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/fileattribute.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/completionhandler.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/filechannel/mapmode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/any.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/consumeeach.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/consumes.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/consumesall.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/count.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/distinct.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/distinctby.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/drop.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/dropwhile.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/elementat.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/elementatornull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filterindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filternot.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filternotnull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/filternotnullto.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/first.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/firstornull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/flatmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/indexof.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/last.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/lastindexof.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/lastornull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/map.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/mapindexed.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/maxwith.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/minwith.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/none.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/requirenonulls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/sendblocking.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/single.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/singleornull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/take.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/takewhile.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tochannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tocollection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tolist.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/tomap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/trysendblocking.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/withindex.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel/zip.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/key.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/element/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/element.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext/plus.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/coroutinecontext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/coroutines/continuation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/disposablehandle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/opdescriptor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/atomicop.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/atomicdesc.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/makecondaddop.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/tostring.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/atomic/atomicreferencefieldupdater.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/abstractatomicdesc.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/internal/lockfreelinkedlistnode/prepareop.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/selects/selectinstance.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/selects/selectclause1.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel/onreceiveornull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel/receiveornull.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/runtimeexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/illegalstateexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/cancellationexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/channeliterator/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/channeliterator/next0.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/channeliterator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/receivechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/sendchannel/defaultimpls.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/selects/selectclause2.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlinx/coroutines/channels/sendchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/channel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/readablebytechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/scatteringbytechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/writablebytechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/bytechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/seekablebytechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/interruptiblechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/abstractinterruptiblechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/mappedbytebuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/gatheringbytechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/filechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/filelock.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/asynchronouschannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/future.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/executor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/callable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/concurrent/executorservice.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/asynchronousfilechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/accessmode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/directorystream/filter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/directorystream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filestore.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/copyoption.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/spi/filesystemprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/pathmatcher.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/userprincipal.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/groupprincipal.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/attribute/userprincipallookupservice.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/filesystem.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/file/path.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filetreewalk/walkstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filetreewalk/directorystate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filewalkdirection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filetreewalk.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/kotlin/io/filepathcomponents.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/file.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/writer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/printwriter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/reader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/dictionary.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/hashtable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/properties.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/provider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certificate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certpath/certpathrep.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/cert/certpath.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/date.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/timestamp.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/codesigner.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/codesource.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/permissioncollection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/security/protectiondomain.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/class.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/activity/screencapturecallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keyevent/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keyevent/dispatcherstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/ibinder/deathrecipient.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/iinterface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/filedescriptor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/ibinder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/sizef.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/basebundle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/persistablebundle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/byte.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/sparsearray.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/size.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/bundle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/arraymap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/sparsebooleanarray.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelable/creator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelable/classloadercreator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputdevice/motionrange.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensormanager/dynamicsensorcallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensorlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/memoryfile.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/hardwarebuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messenger.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/message.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/handler/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messagequeue/idlehandler.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messagequeue/onfiledescriptoreventlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/messagequeue.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/thread/state.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/thread/uncaughtexceptionhandler.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/thread.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/printer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/looper.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/handler.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensordirectchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/triggerevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/triggereventlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensorevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensoreventlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/sensormanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/light.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightstate/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsrequest/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsrequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsmanager/lightssession.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/lights/lightsmanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keycharactermap/keydata.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/androidruntimeexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keycharactermap/unavailableexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keycharactermap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrationeffect/composition.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrationeffect.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/combinedvibration/parallelcombination.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/combinedvibration.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/audioattributes.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrationattributes.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibrator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/vibratormanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/batterystate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputdevice.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/keyevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/context/bindserviceflags.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/applicationinfoflags.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/componentenabledsetting.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/componentinfoflags.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/androidexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/namenotfoundexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/onchecksumsreadylistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/packageinfoflags.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/property.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager/resolveinfoflags.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/insets.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rect.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageiteminfo/displaynamecomparator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/attributeset.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/xmlresourceparser.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/drawable/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelfiledescriptor/filedescriptordetachedexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelfiledescriptor/oncloselistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/networkinterface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/inetaddress.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketoption.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/selector.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/abstractselector.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/protocolfamily.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/datagrampacket.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/datagramsocket.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/networkchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/membershipkey.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/multicastchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/datagramchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketoptions.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketimpl.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socketimplfactory.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/serversocket.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/serversocketchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/pipe/sinkchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/pipe/sourcechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/pipe.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/selectorprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/selectionkey.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/selectablechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/spi/abstractselectablechannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/nio/channels/socketchannel.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/net/socket.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/parcelfiledescriptor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/fileoutputstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/io/fileinputstream.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/assetfiledescriptor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/assetmanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontvariationaxis.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/typeface/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rectf.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale/availabletype.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale/category.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/icu/util/ulocale.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/localelist.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/fontmetrics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/align.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/cap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/fontmetricsint.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/join.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint/style.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/direction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/filltype.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/op.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/whenmappings.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path/copytorecursively.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/matrix/scaletofit.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/matrix.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/path.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/patheffect.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/shader/tilemode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/shader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorfilter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/maskfilter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/blendmode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/xfermode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/paint.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/font.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontfamily/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontfamily.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/fonts/fontstyle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/typeface/customfallbackbuilder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/typeface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/resources/notfoundexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/canvas/edgetype.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/canvas/vertexmode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/text/measuredtext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/color.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/mesh.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/region/op.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/region.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmap/compressformat.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmap/config.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/displaymetrics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/picture.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/adaptation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/renderintent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/connector.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/model.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/named.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/rgb/transferparameters.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace/rgb.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/colorspace.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/gainmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmap.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/ninepatch.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/outline.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/porterduff/mode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/recordingcanvas.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmapshader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/runtimeshader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rendereffect.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/rendernode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawfilter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/canvas.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/movie.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/om/overlayidentifier.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/om/overlayinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/loader/assetsprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/loader/resourcesprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/loader/resourcesloader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/typedvalue.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/configuration.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/resources.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/colorstatelist.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/typedarray.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/res/resources/theme.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/drawable/constantstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/bitmapfactory/options.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/drawable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageiteminfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/permissioninfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/versionedpackage.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intent/shortcuticonresource.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/net/uri/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/net/uri.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textclassifier/entityconfig/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textclassifier/entityconfig.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/request/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/request.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/textlink.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/accessibilityaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/collectioninfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/collectioniteminfo/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/collectioniteminfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/extrarenderinginfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/rangeinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo/touchdelegateinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitywindowinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilitynodeprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilityrecord.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilityevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/layoutanimationcontroller/animationparameters.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup/layoutparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup/marginlayoutparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup/onhierarchychangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contextmenu/contextmenuinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contextmenu.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/point.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/onbackinvokedcallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/onbackinvokeddispatcher.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewparent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimation/bounds.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsets/side.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsets/type.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displaycutout/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displaycutout.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/roundedcorner.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displayshape.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsets.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimation/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/timeinterpolator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/interpolator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewoverlay.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/layouttransition/transitionlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/animator/animatorlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/animator/animatorpauselistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/animator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/layouttransition.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/pointericon.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/motionevent/pointercoords.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/motionevent/pointerproperties.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/motionevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationspec.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationcapability.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/clipdescription.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/dragevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/animation/description.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/transformation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/animation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/animation/animationlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewstructure/htmlinfo/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewstructure/htmlinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/autofill/autofillvalue.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/autofill/autofillid.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewstructure.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/animation/layoutanimationcontroller.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewmanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/viewgroup.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/accessibilitydelegate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/abssavedstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/basesavedstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/measurespec.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onapplywindowinsetslistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onattachstatechangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/oncapturedpointerlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onclicklistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/oncontextclicklistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/oncreatecontextmenulistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/ondraglistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onfocuschangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/ongenericmotionlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onhoverlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onkeylistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onlayoutchangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onlongclicklistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onscrollchangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onsystemuivisibilitychangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/ontouchlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view/onunhandledkeyeventlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/touchdelegate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/property.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/attachedsurfacecontrol/onbuffertransformhintchangedlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/trustedpresentationthresholds.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/transactioncommittedlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/syncfence.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfacecontrol/transaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/attachedsurfacecontrol.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/animation/statelistanimator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/display/hdrcapabilities.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/display/mode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/hardware/display/deviceproductinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/display.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetscontroller/oncontrollableinsetschangedlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/cancellationsignal/oncancellistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/cancellationsignal.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimationcontroller.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetsanimationcontrollistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowinsetscontroller.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surface/outofresourcesexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/surfacetexture/onframeavailablelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/surfacetexture/outofresourcesexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/surfacetexture.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/scrollcapturesession.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/scrollcapturecallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/longsparsearray.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/accessibility/accessibilityeventsource.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/onreceivecontentlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowid/focusobserver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowid.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/viewtranslationcallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationresponsevalue/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/translationresponsevalue.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/viewtranslationresponse/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/translation/viewtranslationresponse.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/inputtype.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/surroundingtext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/editorinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/completioninfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/textsnapshot.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/correctioninfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/extractedtextrequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/handwritinggesture.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/previewablehandwritinggesture.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/extractedtext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/textattribute/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/textattribute.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/inputcontentinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/inputmethod/inputconnection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/locusid.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentcapture/contentcapturecontext/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentcapture/contentcapturecontext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contentcapture/contentcapturesession.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displayhash/displayhash.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/displayhash/displayhashresultcallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/view.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/style/updateappearance.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/textpaint.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/style/characterstyle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/style/clickablespan.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks/textlinkspan.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/spannable/factory.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/spanned.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/text/spannable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/textclassifier/textlinks.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/clipdata/item.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/icon/ondrawableloadedlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/graphics/drawable/icon.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentresolver/mimetypeinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncadaptertype.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncstatusobserver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/chararraybuffer.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/contentobserver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/datasetobserver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/cursor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentproviderresult.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/accounts/account.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentprovider/pipedatawriter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/applicationinfo/displaynamecomparator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/util/uuid.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/applicationinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/componentinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/patternmatcher.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/pathpermission.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/providerinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/attributionsource.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/componentcallbacks.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/componentcallbacks2.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/short.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/java/lang/boolean.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentvalues.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentproviderclient.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncrequest/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/syncrequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contentresolver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/clipdata.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/activityinfo/windowlayout.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/activityinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/configurationinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/featureinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/featuregroupinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/instrumentationinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/serviceinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/attribution.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/signature.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/signinginfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentsender/onfinished.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentsender/sendintentexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/userhandle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentsender.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/installsourceinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/permissiongroupinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentfilter/authorityentry.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentfilter/malformedmimetypeexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/intentfilter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/moduleinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/resolveinfo/displaynamecomparator.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/resolveinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/installconstraints/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/installconstraints.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/installconstraintsresult.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/preapprovaldetails/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/preapprovaldetails.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/session.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/sessioncallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/sessioninfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller/sessionparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packageinstaller.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/changedpackages.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/pm/packagemanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitecursordriver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqliteclosable.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqliteprogram.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitequery.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase/cursorfactory.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/databaseerrorhandler.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase/openparams/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase/openparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitetransactionlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitestatement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/database/sqlite/sqlitedatabase.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/serviceconnection.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/broadcastreceiver/pendingresult.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/broadcastreceiver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/sharedpreferences/editor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/sharedpreferences/onsharedpreferencechangelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/sharedpreferences.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/context.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/componentname.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuitem/onactionexpandlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuitem/onmenuitemclicklistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionprovider/visibilitylistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuitem.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/submenu.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menu.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionmode/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionmode/callback2.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/menuinflater.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/actionmode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/scene.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager/badtokenexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager/invaliddisplayexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager/layoutparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmetrics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/windowmanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater/factory.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater/factory2.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pendingintent/canceledexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pendingintent/onfinished.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pendingintent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transition/epicentercallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transition/transitionlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/pathmotion.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transition.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/transition/transitionmanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/searchevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contextparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/contextwrapper.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/contextthemewrapper.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/application/activitylifecyclecallbacks.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/assist/assistcontent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/sharedelementcallback/onsharedelementsreadylistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/sharedelementcallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/application/onprovideassistdatalistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/application.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/framelayout/layoutparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/framelayout.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/splashscreenview.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/splashscreen/onexitanimationlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/window/splashscreen.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/remoteaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/util/rational.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pictureinpictureparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/framemetrics.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window/onframemetricsavailablelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window/onrestrictedcaptionareachangedlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder/badsurfacetypeexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/surfaceholder/callback2.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediacontroller/playbackinfo.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/mediadescription/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/mediadescription.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/rating.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/mediametadata.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/playbackstate/customaction/builder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/playbackstate/customaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/playbackstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediacontroller/callback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediasession/token.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/resultreceiver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/media/session/mediacontroller.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater/filter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/layoutinflater.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/window.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager/backstackentry.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragment/instantiationexception.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragment/savedstate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/loader/onloadcanceledlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/loader/onloadcompletelistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/content/loader.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/loadermanager/loadercallbacks.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/loadermanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragment.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager/fragmentlifecyclecallbacks.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager/onbackstackchangedlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmenttransaction.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/fragmentmanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/view/draganddroppermissions.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/pictureinpictureuistate.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/os/outcomereceiver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/layoutparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/toolbar/layoutparams.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/toolbar/onmenuitemclicklistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/toolbar.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/onmenuvisibilitylistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/onnavigationlistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/tab.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar/tablistener.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/adapter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/widget/spinneradapter.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/actionbar.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/taskstackbuilder.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/request.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/prompt.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/abortvoicerequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/commandrequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/completevoicerequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/confirmationrequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/pickoptionrequest/option.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor/pickoptionrequest.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/voiceinteractor.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uts-development-android/uts-types/app-android/android/app/activity.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/utsactivitycallback.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/utsandroid.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/utsandroidhookproxy.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-js/utsjs.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uts-types/app-android/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/webviewstyles.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/viewtotempfilepathoptions.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/drawablecontext.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/snapshotoptions.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/cssstyledeclaration.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/domrect.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicallbackwrapper.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/path2d.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/canvasrenderingcontext2d.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unianimationplaybackevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unianimation.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unisafeareainsets.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipage.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iunielement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unievent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipageevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewservicemessageevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicustomevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewmessageevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewloadingevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewloadevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewerrorevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/nodedata.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/pagenode.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unielement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewdownloadevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniwebviewcontentheightchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/univideoelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitouchevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextarealinechangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextareafocusevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextareablurevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitextelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitabselement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unitabtapevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniswipertransitionevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniswiperchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniswiperanimationfinishevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unistopnestedscrollevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unistartnestedscrollevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniscrolltoupperevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniscrolltolowerevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniscrollevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unirichtextitemclickevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniresizeobserver.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniresizeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unirefresherevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniprovider.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipointerevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipagescrollevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unidocument.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/asyncapiresult.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iunierror.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unierror.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/nativeloadfontfaceoptions.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipagebody.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uninativepage.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unipagemanager.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uninestedprescrollevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uninativeapp.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputkeyboardheightchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputfocusevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputconfirmevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniinputblurevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniimageloadevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniimageerrorevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniformcontrol.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniformcontrolelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicustomelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/unicanvaselement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/sourceerror.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/uniaggregateerror.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/utsandroidhookproxy.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iuninativeviewelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/iuniform.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/inavigationbar.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/native/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/checkboxgroupchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/pickerviewchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/progressactiveendevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/radiogroupchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/sliderchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/switchchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/pickerchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/pickercolumnchangeevent.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/uninavigatorelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/uniclouddbelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/uniformelement.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/lifecycle.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vue/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/base/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/env/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-actionsheet/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-actionsheet/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-addphonecontact/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-addphonecontact/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-arraybuffertobase64/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-arraybuffertobase64/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-authentication/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-authentication/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-barcode-scanning/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-barcode-scanning/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-base64toarraybuffer/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-base64toarraybuffer/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-chooselocation/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-chooselocation/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-choosemedia/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-choosemedia/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-clipboard/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-clipboard/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createinneraudiocontext/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createinneraudiocontext/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createintersectionobserver/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createintersectionobserver/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createrequestpermissionlistener/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createrequestpermissionlistener/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createselectorquery/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createselectorquery/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createwebviewcontext/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-createwebviewcontext/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-dialogpage/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-dialogpage/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-event/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-event/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-exit/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-exit/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-file/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-file/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-filesystemmanager/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-filesystemmanager/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getaccessibilityinfo/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getaccessibilityinfo/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappauthorizesetting/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappauthorizesetting/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappbaseinfo/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getappbaseinfo/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getbackgroundaudiomanager/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getbackgroundaudiomanager/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getdeviceinfo/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getdeviceinfo/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getelementbyid/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getelementbyid/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getenteroptionssync/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getenteroptionssync/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlaunchoptionssync/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlaunchoptionssync/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlocation-tencent-uni1/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getlocation-tencent-uni1/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getnetworktype/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getnetworktype/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getperformance/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getperformance/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getprovider/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getprovider/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsysteminfo/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsysteminfo/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsystemsetting/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-getsystemsetting/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-installapk/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-installapk/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-interceptor/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-interceptor/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-keyboard/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-keyboard/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-loadfontface/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-loadfontface/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-system/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-system/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-tencent/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location-tencent/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-location/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-makephonecall/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-makephonecall/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-media/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-media/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-modal/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-modal/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-navigationbar/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-navigationbar/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-network/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-network/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth-huawei/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth-huawei/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-oauth/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-openappauthorizesetting/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-openappauthorizesetting/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-opendocument/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-opendocument/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pagescrollto/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pagescrollto/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-alipay/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-alipay/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-huawei/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-huawei/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-wxpay/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment-wxpay/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-payment/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-previewimage/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-previewimage/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-privacy/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-privacy/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-prompt/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-prompt/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pulldownrefresh/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-pulldownrefresh/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-recorder/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-recorder/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-requestmerchanttransfer/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-requestmerchanttransfer/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-route/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-route/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-rpx2px/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-rpx2px/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-scancode/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-scancode/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share-weixin/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share-weixin/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-share/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sharewithsystem/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sharewithsystem/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sse/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-sse/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-storage/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-storage/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-tabbar/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-tabbar/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-theme/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-theme/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-virtualpayment/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-virtualpayment/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-websocket/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/lib/uni-websocket/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-api/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-ad/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-ad/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-crash/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-crash/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-facialverify/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-facialverify/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-map-tencent/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-map-tencent/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-push/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-push/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-secure-network/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-secure-network/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-verify/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/lib/uni-verify/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-biz/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-camera/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-camera/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-canvas/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-canvas/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-video/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/lib/uni-video/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-component/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-openlocation/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-openlocation/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-compass/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-compass/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-canvas/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-canvas/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-locale/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-locale/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-accelerometer/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-accelerometer/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-getbackgroundaudiomanager/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-getbackgroundaudiomanager/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-localechange/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-localechange/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-memory/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-memory/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-preloadpage/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-preloadpage/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-createmediaqueryobserver/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-createmediaqueryobserver/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-__f__/utssdk/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/lib/uni-__f__/utssdk/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uts-plugin-extend/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-map-tencent-map.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-map-tencent-global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-camera.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/uni-camera-global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni/global.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni-cloud/unicloud-db/index.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni-cloud/interface.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/uni-cloud/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/common.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/app.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/page.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/process.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/vite.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/hbuilderx-language-services/builtin-dts/uniappx/node_modules/@dcloudio/uni-app-x/types/index.d.ts","../../../../../../../../../../../downloads/hbuilderx.4.76.2025082103/hbuilderx/plugins/uniapp-uts-v1/node_modules/@dcloudio/uni-uts-v1/lib/uts/types/uni-x/app-android.d.ts"],"fileInfos":[{"version":"1b4884e0922d24ad93952038abddda154213ad1637a9cbbca22442cc86a174ed","affectsGlobalScope":true},{"version":"87e0a7f9366dc80be7b72c6d0a6e23c4f68cd2b96c90edd3da8082bfdd237af9","affectsGlobalScope":true},{"version":"2c44751aff2b2161d0450df9812bb5114ba050a522e1d5fa67f66649d678fcb4","affectsGlobalScope":true},{"version":"68566331a40bef8710069a7f5ac951543c5653c1c3fa8cc3a54c95753abbcf7a","affectsGlobalScope":true},{"version":"173b34be3df2099c2da11fb3ceecf87e883bd64f5219c0ee7bc6add9bc812cde","affectsGlobalScope":true},{"version":"9c867cbb4270f3c93a0ffaa8840b3034033a95025cd4f6bf9989ecb7b7c54a4e","affectsGlobalScope":true},{"version":"b0d201829b0da0df7653b76f3e1ea38933081db01bfecdeada115180973ae393","affectsGlobalScope":true},{"version":"7b435c510e94d33c438626dff7d8df57d20d69f6599ba461c46fc87b8c572bce","affectsGlobalScope":true},{"version":"25f08344cf6121c92864c9f22b22ab6574001771eb1d75843006938c11f7d4ab","affectsGlobalScope":true},{"version":"91d246126d32ab82fe146f4db8e0a6800cadb14c781aec7a3ef4f20f53efcf45","affectsGlobalScope":true},{"version":"b15b894ea3a5bcdfd96e2160e10f71ea6db8563804bbaa4cdf3b86a21c7e7da0","affectsGlobalScope":true},{"version":"db491a26fb6bb04dd6c9aecbe3803dd94c1e5d3dd839ffed552ffaf4e419871a","affectsGlobalScope":true},{"version":"463cb70eebbf68046eba623ed570e54c425ea29d46d7476da84134722a6d155b","affectsGlobalScope":true},{"version":"a7cca769cf6ecd24d991ae00ac9715b012cae512f27d569513eb2e47fc8ef952","affectsGlobalScope":true},{"version":"bf3de718b9d34d05ea8b7c0172063257e7a89f1a2e15d66de826814586da7ce4","affectsGlobalScope":true},{"version":"0aca09a3a690438ac20a824d8236bfdb84e4035724e77073c7f144b18339ec65","affectsGlobalScope":true},{"version":"1acbd1d3afb34b522e43e567acf76381af1b858055f47c0ceedd858542426f0f","affectsGlobalScope":true},{"version":"e62d4c55b645f4d9b8627bdb6e04ab641d25abc48b27a68983963296fcee1300","affectsGlobalScope":true},{"version":"a5a65d5d74cac1e1e27de4adc0ab37048332d91be0fd914209ca04ccd63b4141","affectsGlobalScope":true},{"version":"5eb86cedb0d685b8c1d1b51d2892402ecd6e0cff047ba3e683bc7cbc585ebd9b","affectsGlobalScope":true},{"version":"cb4d3f49248d601600b9e5e6268c3a1925a0e3d3a6b13ff7e178924fc7763aa4","affectsGlobalScope":true},{"version":"7ce21134b8a21e2672f56ceda596d33dc08f27a9900ec068a33dd471667a0dd9","affectsGlobalScope":true},{"version":"105e17a5ad5e5fcf937f1a7412b849c67d98e17aa6ac257baf988a56be4d23de","affectsGlobalScope":true},{"version":"471ea135c34237d3fcc6918a297c21e321cd99e20ac29673506590c0e91d10d0","affectsGlobalScope":true},{"version":"6c71e7f5dcdf436e701fee0c76995e197f1b8b44ed64119881c04ad30c432513","affectsGlobalScope":true},{"version":"bfea9c54c2142652e7f2f09b7b395c57f3e7650fb2981d9f183de9eeae8a1487","affectsGlobalScope":true},{"version":"5b4344f074c83584664e93d170e99db772577f7ced22b73deaf3cfb798a76958","affectsGlobalScope":true},"db8eb85d3f5c85cc8b2b051fde29f227ec8fbe50fd53c0dc5fc7a35b0209de4a",{"version":"8b46e06cc0690b9a6bf177133da7a917969cacbd6a58c8b9b1a261abd33cb04d","affectsGlobalScope":true},{"version":"c2e5d9c9ebf7c1dc6e3f4de35ae66c635240fe1f90cccc58c88200a5aa4a227c","affectsGlobalScope":true},{"version":"c5277ad101105fbcb9e32c74cea42b2a3fbebc5b63d26ca5b0c900be136a7584","affectsGlobalScope":true},{"version":"46a47bc3acc0af133029fb44c0c25f102828995c1c633d141ac84240b68cdfad","affectsGlobalScope":true},{"version":"bf7e3cadb46cd342e77f1409a000ea51a26a336be4093ee1791288e990f3dadf","affectsGlobalScope":true},{"version":"3fb65674722f36d0cc143a1eb3f44b3ab9ecd8d5e09febcfbc0393bec72c16b5","affectsGlobalScope":true},{"version":"daf924aae59d404ac5e4b21d9a8b817b2118452e7eb2ec0c2c8494fb25cb4ab3","affectsGlobalScope":true},{"version":"120ddb03b09c36f2e2624563a384123d08f6243018e131e8c97a1bb1f0e73df5","affectsGlobalScope":true},{"version":"0daef79ef17e2d10a96f021096f6c02d51a0648514f39def46c9a8a3018196be","affectsGlobalScope":true},{"version":"571605fec3d26fc2b8fbffb6aa32d2ef810b06aa51c1b0c3c65bbc47bd5b4a5e","affectsGlobalScope":true},{"version":"51536e45c08d8b901d596d8d48db9ab14f2a2fd465ed5e2a18dda1d1bae6fe5a","affectsGlobalScope":true},"897a4b80718f9228e992483fefa164d61e78548e57fbf23c76557f9e9805285e","ab2680cfdaea321773953b64ec757510297477ad349307e93b883f0813e2a744",{"version":"8a931e7299563cecc9c06d5b0b656dca721af7339b37c7b4168e41b63b7cfd04","affectsGlobalScope":true},"7da94064e1304209e28b08779b3e1a9d2e939cf9b736c9c450bc2596521c417f","7cce3fa83b9b8cad28998e2ffa7bb802841bb843f83164ba12342b51bf3ae453","dc44a5ac4c9a05feede6d8acf7e6e768ca266b1ce56030af1a3ab4138234bf45",{"version":"451f4c4dd94dd827770739cc52e3c65ac6c3154ad35ae34ad066de2a664b727a","affectsGlobalScope":true},{"version":"2f2af0034204cd7e4e6fc0c8d7a732152c055e030f1590abea84af9127e0ed46","affectsGlobalScope":true},{"version":"0c26e42734c9bf81c50813761fc91dc16a0682e4faa8944c218f4aaf73d74acf","affectsGlobalScope":true},{"version":"af11b7631baab8e9159d290632eb6d5aa2f44e08c34b5ea5dc3ac45493fffed5","affectsGlobalScope":true},{"version":"9ae2c80b25e85af48286ea185227d52786555ac3b556b304afd2226866a43e2a","affectsGlobalScope":true},{"version":"b2bd4feee4a879f0ec7dfaf3ea564644f708dcfef8ef850a069877bd0dc29bdc","affectsGlobalScope":true},"da82348fbea425ebf7201043e16ab3223a8275507fbddd56d41c2d940b3088e3","6ef32eb62bebf8fcb1c46fb337bf7b71bcb2156c939b1fc8ecc95031fda524ec","90120973d7759d9eb9a3f21f32188e1e11b29f281831b250504b3115c32bb8db","66565de38b3ede65cbb93df52cbd1373ba0af3e0a0cdcf5aa8e8e359a65e6054","26eaf2db7f66e70d2fc327f9ac8693c2806c7b433cb5da5d4b0cd3070b8a8529","4955e566886d9477bff3b32fc373e8cc15f824909069f472d20acd6b0dd75fd3","c342ae063a7c7d37aecb3d8bcc5b4ebf087a67be6c6189985ec96675fdf430e9","550178d99241eb541fc8a25d80d9cb667d96ebe685f1c1c98907f4caab49cfee","471000b5f93ae5077a5a7c45f69fd5a05a53874e156631d18f68c325e17f493d","0ce6f81b6ec2822d2500d5425a17436a3e18e422747a7fed1d6ae85d43912dd3",{"version":"009285985c380cc60693b2e5f13222a3193c0bbe06a5868a66cda52a5bc879f6","affectsGlobalScope":true},"a98d682390a4414a1952de79cd1ff4d454fd1728c0eec0b3882f3c646eb707a7",{"version":"c197d7bb1a50b2b1001a19aea7560b192ea04ca45295538898cea732ad1430ec","affectsGlobalScope":true},"4b1cb3ca7bab4a67110e6b7f6d82186c8cd817de53503610e5ea183f51400d88","471395005d84cdd5cd68955940b5c18da09198326e64bd87b6fd6bf78b1b75ef","37b5295487a3f7e704ab81e5676f17c74f1737d21da3315453bbb3c44b6c7b4f","acc08a2d267c697e34a96d27d8c69e7bf66c9d70fc9e9a3c0710ee6c8b59bf06","c54f1e4b0edff3ef7b5d421ed9d9b12215c23c5707830a15c914a57af3d4d8c4",{"version":"c9b287642c4b156a56b81cd1b2fb17208ac93e1906f64603f9b4f89652c3ac39","affectsGlobalScope":true},"0c34c0d35f33f398a590ca4a6bcc162e32873a942d8c040b394d86321e2db521","0912310adac9d4b59eb8370994b0260035b3e52a64ec8cd27a32c9c5d56f9a37","b20f9fd12d0f20b756c4407195037d0e6df994b18ab7ba117a1645f79dc8146a","097ff4639376fd52ce9f658560ad85ea4dfbcb80e1f0c38baeaf2f9f24edadce","3a077826173de93d4275960a32e5ecbeca73cec6817feeeebbfe32dcdc19f69d","a9499471d2c97e01b4c47cd990a7e59f90371dc6ff5044073063102ef10aa2d7","25952a12ebbf9ee23e92f3d0273c7c8f1b962379d9b9a8f8656c00ab5bbb6b28",{"version":"ae0e01c62ba1a1c649851b7fd53c73ecb34928f08bb61c67b76696242b65e510","affectsGlobalScope":true},"9bdcdd8c1c888de8e99bba6c66ebebe4f9c3b85f3c159dfed4c0a60aabcfb359","a864eeac83c751a0de401747346416c5abb6c2b64e8292f9238786650beee874","bfa98bf77f78e5ff08fdfed7ed3e8d94493794c1d0ae88a083a6c301418f507e","48b2ca9ba65a7dccebd12e4430bec879e68789b1a9f6328772175d4246689513","84cdab2632d7b88822afa1056cba80c8bc6d5706efa0336646dd535c9b859c97","55e92954e07a35ea79589985ed517976140ee5948288f5c0cef89202f748686d","86e75445bc6bf503e718a28b5deefcf5eaedc7d7442569b33e555c54e3120bed",{"version":"6eebe91a65a022376c9d83adc71affbe3a8738a23f88079a61c5cbaa90ffccda","affectsGlobalScope":true},{"version":"d0699ff9dd5c078015624b1bf923aba8ec2c8d5c7dcf866c7af65f328348aea2","affectsGlobalScope":true},"9377424a30a137dd21c7b300c20eb35bc4b18a7e0c68a19dcfb55462572f4ae4","1a45a2fbb039686a96c304fbe704157de2f3b938cc50e9c8c4bcca0ceb0de840","a864eeac83c751a0de401747346416c5abb6c2b64e8292f9238786650beee874","72629fa2f66fc7113a777cb09117e22b611e83e9099b2b814fadfff32305d932","48b2ca9ba65a7dccebd12e4430bec879e68789b1a9f6328772175d4246689513","912a048453180016af2f597f9fd209b2ef96d473c1610f6be3d25f5a2e9588d3","80fb74ae1b5713532effc5bbf01789379563f65591a55eb1ae93a006009945fc","5ca437d9f0411958f2190f19554d3461926615e1e7a5e9fe8a8bff2834b423cb","135ca31f7cd081ce0321f1536461626134be5ae8e34ef5365ed0a60ec4965cf2","e35fb080eb67373cf41a5cd2f80820c6610d9bbbd420516945a2ae9d13cddb99","e30ef09059535d6a4a6c2e972710f17abe1d9ed9ed3353c22f007bc733d24499","7cf25154e3ff5e0c296d1c2e8edd595cbf88674c5c1edee5bd1d395103caa2be","84cdab2632d7b88822afa1056cba80c8bc6d5706efa0336646dd535c9b859c97","01a225ee75e5bb89a103639d825be5f7e7b993625c3503e9ed23ca59faceef0e","b2821ba038982e2234b8b1862a3abd93dab22e5a9ccb96388f4e49c8a60493e0","df4d4e7211100ac276830cd3c93e75eceb6da94c8ed22df9f9c296abf283a9c7","1ff1b7a4d416e891c46924d0b540573fd09c6ce17030968778268ab33c0d7562","a8cbca97e5d078c9a16c8242de1860baafd720dcc541a1201751444b69acac18","52d444c5ab7d9dc6b01f6aee7c97a7e14370fdc2ac482ef6903a044caf58e898","5630a60d7a15f9f4887879fc0ebfa80436a631f7e98b6613149333b0c1928649","c5b7d50d5fd3e45905ae1c2e6f39296e138b7c8b42af696b58091a20fea98de4","35841b91f9336761af471a2b26d414e94c779592a33a4589daa6b3036fb2841e","7691a1558a2e973614d2baf0720451901e656f1f4dad4fc635ffcfab75ace090","f46b92a70beb1f076e300ab20e0e9a9e3f011f2b690211b754c662537e2eb3ae","536b2c25d25ce5003998f0c4e1c6aa088f07deee5a8fc7e3b95e9716097b3a82","f341bd294158b62cec7f2414f9cb899c7cbcc4dc98db97b7f95996b10a2368e1","b122cfde1e19d45ece3c084caabae30eb4be2fa0fe1d8e85a6b6eb498f6bb849",{"version":"a2528540afb60b403e90fa9b6eefc321bf8e33ae0c9fdc61ea0bb4b4b8e95cbf","affectsGlobalScope":true},"8d0d38b9142711f83451581d2a4dd1b9c894d4115d2a3dc66cf37043399b0186","bca4234e52ebd600eb3993b9e909c162492ed1d499bd4b603b8ec09c581b87d0","a9cf7836c8d1a2d00db539bd47553c03691857bd7e7094adf07424553ec7d8d7","f2c35324d08eed12460111bb500959c0b137b2b476de608945b84ddd9434428d","42009ca9c0f6e5b96a977df586ab38ae0efe15d6f21ff715ddc39b46cbea3de5","55aa60487b827d6a3849637c56a803519a6ad533a9bccdc2da2cfc235ba785af","175b9e8d927cb191714027bedb36ecadd66cb661ed7a0eeab10a99d3174feb11","00a81ef0fdbd28a5bd0b59acadf560aaebe88bbc807301ee49f3004966ac41d4","40d3ccdce3ef46b73fb825797d1455e185d389ca0bcd581fe466a01008b454f0","c0dfe8aa401326a3225f821f57caf6175a6a1ca43cb881c957b5376c74cd6f68","d3281f4c15b919ff92d5b54bf06840835c13b26a6408b9312bf4de4db2cd31c8",{"version":"cb05cec6b5af32fe72618bf75f582ec334a05f1830a16c99267d7eb9a68f47ba","affectsGlobalScope":true},{"version":"c53006904ef39d538ad1bb5dca6796a2af28c13e7aee27e0a0829eff9e8981a3","affectsGlobalScope":true},{"version":"dfcfc75aede1c22fca588e7e08f653f244b315ac140208994bb0195bc542bd4f","affectsGlobalScope":true},{"version":"d23808465b4f1757a4e156999c841e50cf2d2cece887fec6620380b7e6f1f3b6","affectsGlobalScope":true},{"version":"90718d3552de669111355e1af51a55915f0ee3cab37ae0b42fb29658e67dc704","affectsGlobalScope":true},{"version":"a889109696b87c4b65231330e0c9c762297468148ed3cee9bd12927630ce1c5d","affectsGlobalScope":true},{"version":"e8584f9c219e7184e57677f85907d286989cf6c0d268764dfd203d82c07067df","affectsGlobalScope":true},"0c976c92379daff60e2dd5a6f0177d4a1cb03eea2fb46cc845301b2fe008cd65","5949dc54449ff89a7d153367aa4e647bb7aaeb1e1859d73fd1832aeef1bf4d03","71e4472487f1226ae8b9f2cd8d833a8a43028d9774c7f631bc36202c5addefcd","d713807b783bed6d32aaa1ebb404e5115c5355fed08b48c9185cc4b15c529d8f",{"version":"d2284f4211cdbc263e4ddc5da6775cb9e3b9c974414daa5c6553b64ed7ac9584","affectsGlobalScope":true},"30f2258b429c538edc5e7f77521eabf1e1801f85493b6917debf034329b7610d",{"version":"70ef0e093e72da577af1c5166c85c170e74037dd6490b0e54538071eaebce218","affectsGlobalScope":true},{"version":"ecdf82037e2f7f79bc6e0ca99db3df8b49859e2963ff0ef57acebc383f5babd9","affectsGlobalScope":true},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"1c679a785ee2011015dba247d59774164d69eff9da62f6231f8d0386a66f75ed","affectsGlobalScope":true},{"version":"24558e1ae6d171b174b099588022e6f8ae5422b2ab6a0aaf7bda4dc1fbf0cf56","affectsGlobalScope":true},"e83987b96aa90096cbc834f30586d735afb007f7f3add5837582083262f729c0","9f6c89c7fe74d403f49242a9fae4e95e4aa0bfda9688ee175c7bf395e365d1be","a347103f1193e083d7eae55d73163f22ec4cfc6f0e19aaf084484542cf4c487d",{"version":"0cf62f8acc6b9613240f98604dcb990e95ec11f5a751aeea68347258fcf58ae7","affectsGlobalScope":true},"76d81c4ab4cb5b483b01947cec4560333ee23c0cea3f475dee16960b6a29c626",{"version":"47c995ab27f4637b68e370286e65950f5c6a766bd614297d4bcef7775271ad6c","affectsGlobalScope":true},{"version":"be20b80c26e821788b73fe9b45538d2cf52166f36c9c00c2434a888279c9a205","affectsGlobalScope":true},"a35f40ec1f82bcba279411c3638b66979f19dc6469339c3e7573b8cd9bb2cde9","7d36ca73a9413c0c6ad90d6b8653fde0aa8a9f776ff34eb95e8cb090082b3adb",{"version":"7b40e9058b51bab447e560ccb8b0b6e82fc29c96230d92e1198c5cf526714969","affectsGlobalScope":true},"e4eebdbfee01ca34d7c9acdd67576def4f44efc02717cacc0a94742125db8f36","93098cef2ba7cf98085f7589abcff9dd31bb6eb376c2ab1c2ae325c501ac37c6",{"version":"0ee6d4f3ea203ad71e6e1f204ea2aefb8a5106c00b655618df1408016457cc29","affectsGlobalScope":true},"3885e78287c92997e90357a8d9da13de0ef02f56c3ecc890825915bfca0e2dc1","16e777cff1467ff5e067423320938328934602207ee28b815fa0f7c3ca3ddf4d","61f418b2995586a9e2e9b6d0610fede51a14c396d94c551d7972dea0970d3d3b","04c348aa829a5136154a8225d2fc41e942f22fe9e9b21f3e5713f716339e892c","e560b8ac75a2ac0a85c928cb4ad68b2bb996a72b1838c16f43e349daf1533be0",{"version":"022419723b65c827db878d09988d37dfee43662a622d8303ae4b2c2ab1195b88","affectsGlobalScope":true},"6adfce0b2d1e55f3724a9b8d80401aa294d36c6c44c6684dcfffe204a28c4c3a",{"version":"f7a1b29f7148b2650a24e1961f79e85086d0f8629411ec2b3755dda39baacdc7","affectsGlobalScope":true},"34ca7f0250eaf790149dbe4022ed10d8f310e9fe2ce5a9377854b9ddefa96647","75b28d992fd27e2475e7ebb79780903f89599babf37047c11a611b726ae3b10a","f58c7dd0dc1cde8855878949f13fda966ad36d547670500dfd1d2975d77e9add","da49d860726ca40170c20dd667d86d5c6220c5b10f68aea54862326c80e816f3","fec001187fdb73a0415bcc5b65d5341aa084d8c6921386b1df13a2db27327eac","8f4cae1a80427212f0d9e38918428932ebb1e2e94f06bccd80bd2ed0ace83e13","8ae116c4b542ce7665c8ada0ee2d8d7f7f84feecead3d2d91936dd9f3d00365e","1001304704bd20ac5c723e8dcda6a3577e8154b85f09d11329a8f62f0338e0f9","66178c7d50696d3bcd84dcf50ef1b607914d8f225db87e6bec3fa499b300b0fa","b198a349485602af3e30b8ce1721af5772cf462a917545b69f49af2fc1399e74",{"version":"f9f7a3c251059daf58f2cb84ee303fd640ffd6f6432bec70fd02b10db49a885b","affectsGlobalScope":true},"ce7a25f45110b733aee55750a2d9526e3e57d87d60ec468085845ee2a3466f38","9d9b8a786a39bd0f64faf720ef50743d9bee9deed9bc493309109c7a69dc847a","9546037b91a1558f46a7bfe90e2a6c58f5dde86b4fc52436fc1ed43b1dff618c","824f8f2073290e557359eafd5dbbd7c8d800589b8c7b27fd0bac77c3e9ec1584","d32f5293ce242eda75ffd87d1d9c88ca7ab9cbbd3adc2e75ed5f5d91d718c812","39315a07038f36a5c39be701a11bb36b5f995ed165ecd1107d1b90d8fa5ee8b9","cabccb604562f055ecd69ddb8f98ce700490313b9719a020c8acb72c838bf3c7","e453a6941b8a60022c3e2722e2decdfc3a30e317593685b25665f10e7399b0a7","268a279b265b88e18233aeee1b446db001f13fa39b87c93af2970d3eca676b75","9cc805dbadb66e241938afe56e3eb8715afc037a8ca0fd7ecd1dbd34e95d55f7","4981a30867a9f5dabd2e36f9d4a4cb0e3da83704c01504c7e2590635ee68d632",{"version":"3ea1c94bb38871a157a1400327fb03d7baa921c877001983ed5d27f95a9628ce","affectsGlobalScope":true},"74cb1a48eae2381ed2ca8cff3ba9eff3edc598a0864b0b60d91d4026698f5f10","0175552d4da3ae3ebacb639e6be5ef1dc92932efb2779a972c0c9f2b8ad61ac1","21784ebe37df62eb842372bd55e9d6feaf5df98ac3498999ce4ea9834e4720d0",{"version":"46f56438c8d80c16ec82701e3e251c131f9c08737a461afce71140e97a0e044d","affectsGlobalScope":true},"d207896ee02f8232c30d952e1d6f5eaf6c2d1884042c72c0ac86340bef96311a","0ec2245cfe10fa400dc1e0c91d6b101452d56c0a4b9eedc781c126dd7ab1b8b1","0ce5f07cd563226f61a710f3238f1762907b79c79dd3bda6e01a660655fc7bdd",{"version":"2b69a342b0d4dd19157a09e487de4b699dbfee34534094b5e29cba70b4a9a5b3","affectsGlobalScope":true},"ae9aa4620f5390abde7e5aabacc29b9e58086bd61ec6146bb09c4c869013aa98",{"version":"fbb211f32062fd3bbfed5402c47fe27d6cf2da6389962befb5e79159048379c1","affectsGlobalScope":true},{"version":"8b3e9ba8a2089619b7b12f30b8bacbfc63d15a9e8156c95948b9a62c98949bef","affectsGlobalScope":true},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"88524de3f2125343de37624fb2f22366906a3f8825446c82c27655b048f5b7e0","affectsGlobalScope":true},"6d66e4cb555573a5c7778c3d6dc15c13ff70a169e792299b84c535ba9fb5f25c","0da20aeb2621b0100b5be15c95ec498759640fee41633e676ed69031776a7958","17fe76234b14785d9e646000aaf44cfe0c55b29136b63e328bfb5886c90c79cc","67664ea51c8faf5fabe34c265b4372fce2efdfa1fed87ac7180b00ad172d7427",{"version":"f7ac217354320f2e8f0b442d84d1fbcfd71dd10e5a339a3eab101e50f46f18cc","affectsGlobalScope":true},{"version":"1fe7e290f6773931107c3317c5b078a690658fc475409a50053bae664e0b10e6","affectsGlobalScope":true},{"version":"933a55ab40a6e8580cc33ab627acb1015b265b667c8937e125d8eef349d08a58","affectsGlobalScope":true},{"version":"73c1f0ce08aec056d63aa0e8746c32640beed9bc6b058a9e69a9b7f7db85500f","affectsGlobalScope":true},{"version":"693a4abc9d5d02250ddb2256e525b8de4acb8b9ea78c3bcc64495acad39ef1ad","affectsGlobalScope":true},{"version":"cc3c5f94d36382152a3ee02d17ce0535b926e23085b26585374097a8e0cd6da2","affectsGlobalScope":true},{"version":"3d83308305d7a70dab616279b7451b14a64c0899c0f90368e20bdcdfbb1dc9f7","affectsGlobalScope":true},{"version":"09a53cd5cafee0bf013d37ac760d0d986d5f07bb87e87b72088616c1cf039ec7","affectsGlobalScope":true},{"version":"aa9dd79da69b3ae334799c5bdb273f317bd8a83116090238e36948c17a5016bb","affectsGlobalScope":true},{"version":"e102353d0a90d791a48b0ffe4b75f84cdbe0003a17f5c37a132944ff8ec504c9","affectsGlobalScope":true},{"version":"0bf0d6a78c12edb7c8152330d45a0dce0655be12d50e2e7c36b409e54671f7d9","affectsGlobalScope":true},"9f7b2656602d7d7e21f098645ed78f653192ec94264479c3a4c3118ca0e624c4","472d6d7882ce8dc9867e6e7189da6a10abd14acbb117fe3a7b141c8a6b004b12",{"version":"a1d8c09fb9ca29aba20a893d80f90355a65b40dcc1a1d4edf6d81fc7146b913d","affectsGlobalScope":true},"8ada05c75004dafa783fc5009b9d7441d0f1f7674c3aa71e9f184f3d9cb2d4a7","939987b4943d33cfb79350cb1abaa935ca0422ce9eac25df4c6666b5dd7aebe8",{"version":"f7a8fcb170adae683199f52ff6222949c21448c30aba9acb9e9145573337cdb4","affectsGlobalScope":true},{"version":"57456bdad9bcb39b755dc1c55bf39145ef916366d71919045744fec6232e4e34","affectsGlobalScope":true},"7d0eae63c838547cc5f9aa5f8b8d38f98797b8839d01d19ca376ea2dace3b184",{"version":"7d8f65f6eb43d8c03dceea51cf070b6a2b4f6eda10359aabd0a6b0b70d311413","affectsGlobalScope":true},{"version":"4532773e0dcd56d7087fc88a74f709b0e8ad2182d09b22efeb3cc9709a92c8e5","affectsGlobalScope":true},{"version":"f2396d6396a6c32c11a74fcba000de70a42f1ff3c49ee7972672f1242f2202c9","affectsGlobalScope":true},{"version":"57664623ed533dbf07a910033d0d18a2dbcce365dd37070054a8b95881d35312","affectsGlobalScope":true},"65d28696eaf13f7133e05646187622152d780d8e873fb9088c857b7f75224521","70dca951c363978db43c827526657358a0f17e455cc6e462fbc1647a73e18027","1f7b8dd60e8bf371b351e4db9c742b06b5761f7905fb192b74f69be7d24de011","878fc82293a01092b46977d23da7de4cd76a6156f0ee5629a64d6e47a2f7340f","1274284761f2ca91661361184aebee1aab8d182e001b9a1cf90d48a299901f59","3e9426560268baf40851dfcedaaee9aa91cf53c3f1fbb5e441c08d66bec71e01","ba4577447b3130f44f47ced751ed73938899f82b33fe38d2683d6465c6726b8e","afe3f4f1a07ebebdf5fcfb018d11821d3f82d4447b149b57d1d094dd6167478d","008f83c3eca1e9d5ed018121b1416318ca7a5892d0108c489e46872215a7b8f0","915ce332ff510c9bbc50b1034b227919bdb2882a491da1111c4a5d4194ddccc1","bb6a9a471540e43ef1034b4ac9b38314e09e702ffd65f7fa313919206b1e1825","655ee5d83a484733e356a09e6dec7e6883bd30650924c24fa63a104b2f1e7cb7","0dfc7a76c2202fe46de58b14d69be16e6564258d634f801fc7f5a07c0769357f",{"version":"bc85a8bd1d0f01e5c486e95c751de49cfd2708e7b4f91469b4d0b03a873824fb","affectsGlobalScope":true},{"version":"c0217fbbd217a04c25dc1ff891f362f3527ac631e3ab5bb53deafdaeb7f05e8f","affectsGlobalScope":true},"a5f5c27f33351bc649f0db4ec5f4fc6a3b3b93632b9079e42b666a4c2a906b10","889a4b116d0a2874becafbc012f29e1743742a2a16bc2a5e32939345b48746ca","938899d9003b29618d528a2ac9be584863f578869abc51afe7395fe83b048288","d428fadfe52305f61068519e0fed36b614fbee27cdd1248420288bbac0eb9981","5314cd7e2327942ec1073748eec91be325fee87c3daf2f2df67c70c8ed1d32cd","af70ad282ae0daa8a878a0943505edd06bac9afe6788cb9914964419bd124a5b","3907833472ec86ad47624f24c54fe45f32f7f5aaebe39f0625ddae09bf165310",{"version":"afe90f86512f9bf9c87b2d96c5e7624e6c89abc052e7f63b438816cf917c5c7a","affectsGlobalScope":true},"f93d4bf9ae90941e2e8f87d983958c1f4904f503558f766e11e016c1798661a0","4163c1368d4b8dac8014648fc6c47b582e36814fa75b6bad10c8a89b312878f0","57ebd4e6ba6f07e2d7871a8e197066e102f5810bbcc51d4af300142c79927619","b320a66c5796a0a185acdfc5b390707bfc6532f6c588f2c667e9c0c506a8108e","8aa27c6c362357245f6a043709c87e1e97432888363226d2d2060f6a6335a641","55bb782d85a4116b8203d5c67ac4f9f265b5d180482a5d5b18868dc747220348","0730c93b722979a30434470baf2601c44dbbf27f590c88339931445121a0f856","c0f4fa18b383ecd58e2946cb2ec648295e974e511edd52211238a5c73870b8f5","ce190b39ec46e0811f4d5a306221b9d07c3d69c28aeb1c189020e5ee1ba6d6e0","aa15ddf5ab076b368c3102787bea4ee30f138d5d08c5119765bdc87d0e1e628a","d3792b49fb4900be5e49c10345e2e69d3e5286fb06dfaad5e8f24ae9cad79a2b","5c41d402dc225b9ed8cbed8d203cb0754b48a393d04d31338baf0f361921ffe3",{"version":"5df47f508bce633d8cbb580b3091bbfa26ecb67998c2f2c4257e5d834868a2db","affectsGlobalScope":true},{"version":"6cd14162d6cd752135a2d5eafa947cd2dbb2f23915e4ac7f4c5f03d28f25ccb2","affectsGlobalScope":true},"344c09199680044b1c1a2f8d7f9af6d253467742031b316a1400dc7160349cf1","08f96cb316059d4aeb3eaa87d1d632c2de37b66ca882fa86fee98d97edb362a6","bafaec4721e829c036143ce0372e994dd9a04b81fd45b163127822499a5be780","12beec0daa7067d5ff7dcce4a5f847d6eacea981d831a6f5e1e3040355a636ab","75a8fa09afe7401553d916c495280e02a7776f7b4394478d1dfd1d5094b226de","fa63b36d31c377f487e74554b86fc9452ab33eab671d2e1a92b266c2d285b3c1","0ca9460437590f155bfda16c72fc6aa85ed69eaed61abfb15e7d17c6481c8c98","5a3cc85260fee55928ea0473c7e2178dfcecec0300a3e2cfd72b321c515b116d","e419ea59e45e901ac47760222309e1d6cbf905d3b0732b1be746f8307fbc5632","8eba116cfa525aceb90e96b226bd35f0aac1a5ba4af626edf79b1932be2ab2f4",{"version":"ed04e5093c78b1038b94fa3fcdfae6e6e6c4c856668f7b58938422292f720170","affectsGlobalScope":true},"4cf3e54b60466892e4782efce2832e67029c219258dbf859713142b8468cccb0","25d19ddfd1625e14587ea2e2d278d303fd843bb0c0a8cac97db65bfe170d74ac","b7bac09cab3b868af839583fd808b970441662ff016c47eebb8cc029cffb1c03",{"version":"2f3339e4be06b5376e846646e02dde0dc580869f77c76b67e8266df1ff0da9bd","affectsGlobalScope":true},{"version":"41544533d451561feba169258c39f7a0914587b5b7a2782e2a361cb4084e7dde","affectsGlobalScope":true},{"version":"d24721a3bdec26eecb5e550cb6ad0be4f682a5402a2e1f3ca0312fa4e2aa6067","affectsGlobalScope":true},"508d0c2a8062f9e65265dee7ce8d5e5df1aaaaa52a1537664c6b515bdd462cd9","9cafb7769467f24254e78435e386b95c85834944b551036e6da5820ed71f3f90","019846416e2c563952d5d56f00e2d95ec02e24111aa34906a871b546db2dd635","14c65748ee544af29c09b77844bb0ab13bb9fcd586366e60565400b8b4b2e575","293d6b22b591bc372f67ee65646d378484febc984475a166cd511b861ebaeadc","4d38c0a76acc8ba18466747f7b6132525c44bd4f1a8d5a7a00dd48153b9ed373","2b822e4179a445ff9a264ccf3f3ddf18b12d0ca1c43fca46b8e83ae9b27f9ce8","752a522b6f9583718c8bc788a3bff461aaf468da14fce1de8350a52a6ec543ea","43254e37c67c155efa2a4185b2f09c6a53f60d375a4f7252e2fd44ce62b9a877","e8de61d2225590862ba665d7bd6a3918c6e0c76c870b72edb96df2a859c844a6","cad8ede726a86b768cfbfebaffc1dc147ca5d887362e4bf6a76a0a6676947abb","9dd293866b16d3e68bb486870ba844bb48e39ab1e8080e499a2e933f41c5b2e8","168ae5cbaf7f4eb23cbbff164a5fc8e13511a28df68e7b981bd2e5a9a5d0d30b","ff81f2cdd12cdbeb9746ce4351b1005ca3f79e0a5297f8aaf60b57ecf1b259a4","c1df74fd014265eff0ab4a94bc18bc701dc459a66396ec095989349f9547e20b","e25dbe91e193d5a371f2b7ee685980dd7d9c7773d73ddfb40062ead9d4d87e06","c0520b526446893d852fcebd86f1dcaf0da9f42d9d953c0f0e9c2c9085ebb9eb","28a314d11a60b789f88b033aaab6f2b3070fafb474333f4e1d77b4cd391a01cd","4054cfe0584c236dfe9f03cbf8bf2fab1af3332adeb0f4e3bed9cd18381cba03","ff7633a4cba69d99ec40403401e0e47d50d69935ef138d36984d74ac70c64609","061bf022b21dccd86838af7cdf6ecee1623ae0d0872f0cf2a54fef0cf24deb98","fd439ae63c59b70c9383d31254044a05b086441a6f55369f7c19f94e388ddf0a","0f433d1f2f1aecb58a59989c8c7f1844e14af21162ec942745af62ce2a0c4730","ff4d4e79496b0a5312af29f164069069160a5d9e97bd300cc7961fcc56c5f706",{"version":"6056a7951b168a286f1b1a42719f91e1bb4ff48687a1e24cce9952d710950e24","affectsGlobalScope":true},"3dd380f1f150de28baf660ff0a30795bb907cdb77208e2ceed4a96e6d7e31e6a","82bc47a1bb6091fc44e8de288f3726fbc923b9baced69bddceabb122f8a9406d","a7e6b329e75a08af5f998cdff8c7177c87a642e335af537521cb3265eea1dd2c","4f62cbe98592811e02271b745d68f3747dc3f2834c24cbc88bf7074e2e58fda4","2267e79ebbd334043401e7baa494b30de66930946e01d2360e775aaf73fb15a2","7301ff04803331d2a62763b8a95d0f4454bd959309ba1acdec0f25e7f814bf59","743890e38a2060e5f97ba232848586096e093d22786c72e643a0b1bbfa186c7e","3951e58dec597f0a7864dbe8f9be12248231b524bc2d56b0f2e11dcf1a8fe7e9","84ae9e5587719c8fdab716e7163718971f7be3ff94eddf87fdf4395cf98e81bb","1685c3aa5a925af7eeb86097bd0fdd9da4f2087022a6a43d40e06bb70caf2d2c","a3c7760e6789b5ae6fb25be9c1a501917ad55791cf44ebb071b19d7d4c15fb09","d7e6c34dbe5984bc38756278335ea4f8c45f52c475c5a1cfda591b7524608ac1","d99703c657c04f452f4349cf7d17767cb046aa1c322f2f475e2d60f44f78941d","b7c2a02d5e6e1170f919c87c06d42c2532fba8533c25a49c35679c0f43655fa8","1a4a7340add98906b51512bf75b337fe2b7bd7d201555736511237824d5f8d7d","820771f85e390e837f0bf3baa303d8a29865a8a920a9217739805f64fc9c592e","993f6d2d9aa48046d1a75e9227dfd386c8f04f717612858ef81c7b2df4d60b09","30de8bb015209ecf6dcb39fe9b247776451c2155295e38321121154390448b01","4dfff491b066d98543a57bcc1e936a962c1a345bd874fb314e768c785036ed2a","05ef0df715bda5f39800cd8fa097f6546d1fd093efab998e9c549c4e83fbf39c","0f5631b6c9aece81d36177183be75e4bbcfdbc2df79db43540fbaea584b6e052","fd5664e951516f7650f445c51ff813622114298dfe2000f506330123b597704b","2fa0c17b437fafc0115a7c4925c5a9a683395e6fe0e41a1d281e190345e64f81","8bb50a0991ef3b274f233fe489515919c98f9f902c12c4a82d93ecc6a8f6cbe6","b06896e4d71694f1fa32a0931133334f0905bd84df6d6f7c97ee7b5eef3e4dc4","bc45da1f9643877f9ec9ee40c24bec9ff04396d2733ea35009ee34c946e2ccf0","85abfe12e182b4e10fae58249c079527d496090d2809f1429c2c8969c7714675","a19a8f35e2e9c0b5d8c7a854760bbd761531853d528b826e6c47a76ace499a92","01ce918f83d21b1fd2a6f912020fcca4961aed06b310044bd4de32f9ef3dba1d","685ffcbfddcdb506972e6123cf3df582408fde89dc62b0cc1b81059f088c93bb","86eee1c56d83b2c730bdbac50fac5735457001f843ac22faf452ed11d1c5179c","9fab9dc02a23fb29aca89d45ff859aa97576d7bb0dc7fd9eefcaedebca469f1e","4460512dadae371455bbc45f62996224fc7a8d9e87da6cec8fcc92f1c6926fac","e631dcb0c43d6668ff9d30a022b48def006761d0dd7e4ced60f53616ac2feef9","ec222cd4c61a0ee9583bcd487b5ad9bd56f3ed2cf21eb2b00829531e2205eaec","8b4c95d080a9bbae5e9625638eff827529597d3bb4c456c2bd118bc467227a7e","72629fa2f66fc7113a777cb09117e22b611e83e9099b2b814fadfff32305d932","eae9569e05a3e8653bf802216097bcc7c61e8ab25638d95a258e4588c01b3f24","fe81e729beec4e44555d9e8c48c00e162ea669638a65510e12a83cb997acbcf1","35cdc38597d33ee2188cfb281a80a5f1b72d1abbc35a6c443243a697f0144119","48b2ca9ba65a7dccebd12e4430bec879e68789b1a9f6328772175d4246689513","aab15d1a7b8fa2350476b46f3a85619c665d32fcb295eb0e70138fdcfbaddd4b","dfcc41a421738ad0b1b00d7638967195197eaefe15c71619b2dd27478c2b4ef5","912a048453180016af2f597f9fd209b2ef96d473c1610f6be3d25f5a2e9588d3","52195d96d12b0013e87994d65c220e2089204160c9d7784a20465b0cdc04c40c","5ca437d9f0411958f2190f19554d3461926615e1e7a5e9fe8a8bff2834b423cb","08592ff23d68090ff3b4c97027cbd77e043631a3ac2eeb265bdaf965fe6e6f18","363a47f946268d493af60c1048985a5876d913ed5b7f02355e3c9dff1c332390","f341f2976f4dc47ff5ae7b682e10d7c58c156808f087cc198e381b4ea6fe7cd0","135ca31f7cd081ce0321f1536461626134be5ae8e34ef5365ed0a60ec4965cf2","0e9c7378b81ffbc45219398fb18427866da10dd7883e431ea9230b11a9a46521","20457eeecbf2ff62b89087aa9a2d1b546448f4be455d9bcbf2f225df7abab3f6","85ee01deaa3b60978c6f1402aa1da57f03136867e2a78cb0870b65efabf1ec4e","2ca77dfc7eab8233418f9c979fb0b948e83b53ae339a97062c4433cf0f61eff4","4d09c54a3030a86d865d7ace361e9d1d64966ef2a26ab229a93bd09bea9a2d98","56fdf522a085e174230c31fe43818dc738c58b334d9b2be52381f1a1933c755c","3986d59c8c244b09b16090dfe95e6fa0984f4f7d52122ff1788f08712a396a2d","c4aeaef1a5ffece49128c326909815106d6175dc5d8090a61c7d3a3372de5e7a","a37f39da73d92d1a9c8494744aaa093254007aa29803be126f05ea6baee1b52b","a8cbca97e5d078c9a16c8242de1860baafd720dcc541a1201751444b69acac18","5f1be2f84383c83ac192b11f03b27c4b3cd27ad7a628615bd0f8ea79a159a2b9","65aa982fe7bb50732cfbf038802b2c083ac3595fe1dae42ad61f86055afe96ec","49d03df10ec1aeb459361cfa2dfc00d6747597f633d45b5fa52b5a9ab4e3f029","5e9be59aaf37fdb412cee4f1febf1497da4700086c5338f6d4acf944fa07703c","86f98a0f7e9da79548f9ae9b44b8801151197a79f8dafee4c5c966aea8d83cb4","cd1f260d2b17cc6ae80f3e71b5011b1cb676c780f673455a2182e76f371e11ce","a185189e03f51b5488afeb6ef407f0d166a8b3d5870a262b7d93fa7768843833","94a16be1fad46258203d586e32492dd8ecad21af7da670f652a7a2715b6330da","f6a769b22de85a46d193fc235a1eb1920e8ab9d77e6476cef948aa83a611418f","17c0308cbd36ca46f862f9c9cb7384ec4a2167b87c615d52150704b98aff2ea0","86e75445bc6bf503e718a28b5deefcf5eaedc7d7442569b33e555c54e3120bed","f341bd294158b62cec7f2414f9cb899c7cbcc4dc98db97b7f95996b10a2368e1","7c5ad63a2222f6881711c0101c30b0fe5587a215e039627c48e1fa50470fe4f8","b6b976fd4ccf129b255a541b86f8e92360cd314be6c9c19d7d200efb1350a293","a15a07e052234577d884c8f1397773153d2559f74432d64645af6bbf7f2fd268","16ac88b6e2411ea7352c688a8927f20427d45f0d7eeb91474ed5603c6fb9954d","a36877da4fbdf323a2d7d9579f52ce3c6394adee7a3c9f662df917d70628e73a","cc77d5904c9399be5f10b78d28ab9b5a8f58d130ed64b6fa2fd4a5a8de2bab31","1ad5aef5a9afaff23d7c914895299650acc79facdc4afce5102beb4bb14fe58c","535bbc2e3edaf99f3e403d836d36a9b7bb72043851d5e0bbe0ff9009ef75d221","332bd6850e05e8376dd7aaae887e29e68b5d6fd6f35590352613b4c043e1565c","1a0f3f69194bd562290d5450b61b6b5faf9dc863f51d74cdbaa4f7ccb5884bec","6469f087e68b71fe2984da04055d4c6b7d00e6d022030bac4c39eb180599e3b8","8d96421a664e47a29d7112faa8950756c0644469a054c32a4cfca454f47d0451","8ab99edb6cc00cb65355d887a301efb4a946e91826a91c75656392e0907a6bb8","45b29a06927685ae092dc2c00e2702030abdff9d31b5c3b79ba5cebf4530bc77","b2b3f0067e54d2ab55ea63fb9e3f6702e416211115e5ff0054d68ed68f50b8cd","cab0c1b90f7e73faf646b033a9ec7e2aa948ff248677c6cf0671238f78cba51c","f2b2b0df1a754fc725704c5aea5a3c5a3804d5bee2244d4d4cd015f6faa31eaf","33c37917cee47bd1b2c7a1c698189e581448397cfb743155ef3faea8e9727b51","8d2aea0d547a2deb1b76851b54f9b31a54982814a1dcacf565caf45329d38078","f78c3364bf104749bd20f007e01a963bf8968813f257e32aff4c2271158f2a35","8e34e4c926ba29d400f9d1d27b994064a6576c9006659cda5cdb287038fdd44d","6d7e5ad77f7a3ac8212278318f1f132f0572312e0c2d0379c52d82272053ce4b",{"version":"00c3bd7d0b81b9641ee3e1c6be10a7438a2f9b13e4a29ad00efdf1b8e90e57fd","affectsGlobalScope":true},{"version":"6b9ab0629916122c75fd6813e28deecdb55980e0962b55163b480537ad20da2d","affectsGlobalScope":true},"d374ba45d857ef1a599ade48ba5795449c0b67fc1a5293a1af2a7f4428f0ea8a","daa4902692d92dd039d7b618bfa972571987a2ea17b69d84eeaedaa271bc4a85","7f006666a78fc908ba961e15aeceb42cf11cf3a9cb829ba20c859f162d96d8e8","c6fe1dc8cd4819f5a4d5ce428ca926e01f0b9af24d736ee0e57b08cbdd29a30d","8d11717eb46f8b6ea9ddc810e31d2e61c992b3cdd69e99b9b08d6da9a564323d","dfca0880eede4bd0a62ddef7a1174c874ca4ddebd93109ae2b4ecbd5ac150e8c","d91ece5c2ded27862b5ff08725a6b98933c7847a17b4679d3e266d1f627fc26e","a9e2075bc20d1e51d6a724df4b27fc150473485b7234873a49cabdf21777cdaa","73d9e27f10f3d6321570013ffff9ea39aa19dd2544ef8ccba287da5d4621a0a0","f1d7f8498a3ea071ef8e8c0fe6950b11912d59ca3e298ca4ad25ae7a70474c4d","2ff73e85f4a525bcdcdbed03a1a0fe9be08f0090a51b77b330ead8552796484d","74a70afe5b9183b8ed54f8b618b6c7b5f87545d08a3f27be87f0c04b12737380","faaa5a2c9f2de293541bc03c0e6c5b418d8f1d22dc86cc97b0aebd204b2eb0b7","a4d77a8f1a164f73c5c871c66f0cf0fc6069e88d254c5a2a3e9c860e04af46a9","2d7fcadb253a1f0e3084a59df37b1a8c7420308a6ad0ded806725d45b9146ff7","d7583cd8878805c9a5c8d7b33352b6f627a5e05a91f31c6e7febda71ae05ad08","69f92747ed87de2bc5b3dce46be6d709301560db92458d187204515a8a0d54f9","b2468d006a1b89c08e211d70b397649862993d7df51cb4f5e7ef9a4ef4ded294","ebd7918bccc99330f0f507517a5150c3212de44ed4b2df6ded63931edd879fb9","f70f956499ef2c168ba60b9166770ce4b552d5d7b0744860a1b8fe223eaf0150","b086789e795ad0865294f2f995bafe829848a88b812168603d4286a08adbc4e1","c104366dcffc50b776bf99222d730d878d38f5d2de69fc359932c60d26fea2c7","533cafa1cd5613b6c76537fc202888dded05c93714d3177b91df3deab953f2e0","91daa1d1fa377ddb70d28370c2fa069a1a68af7da50ca0816ec1deb992d2b9bd","fe283a7c4f85d6263eb4a882ec092e1133c3f7825c07aee85ed6368e49318a9d","89bac0788076639601d1ec623475cf87d05d76e2c97a6455b1ce44fa226443db","c4eafaae3cf912bd6560ff720dde500f139999449eb3af8befe62c019506f763","01f0f1cdff3613cbaa9301ab1a56b22b68395b149119cd66bbf4437f29f6a097","6cf8b1f9f26ec41fe6075b90a15d969fbbf19c125754724f60c17f804dde6d09","15d9e6d0e225cba1cf9e786e3b36dc6586aadc4dc80c20c3cdc4d3927006e4f1","182d1e9b977b1f36ab4814fb8f92d76e50dd43118ef78fd54f6561d9db380cdf","1e0e7d6ac06cf5689cbf34faae5e76dd22f450058ca895ce9ee632ab12fb0773","88f7913106c046053d4695c76ad186a1372982e9d7023bc06e7b12afc53041a3","14381aa050834692adf4d8fa52039c6853583a7057f0b302fc0ce39010b3b084","271e537784948096ab9075c73fe286c8ab9e54652a0785bc57f0c1e0e25e8040","c4bdc8d6eccfd6f701f33caca1baf268118fedcc149416e8b160bbc60e2f7568","5a5f923f9e8670867f2ab9110d8c6f7fef3af5cdfb8e597283f543520969290d","3b40b249c2074096638a0a5bbda23c88de9d64491f49d21905c35702ad3abc23","4cf35c7c8928f8ce8b3974f90b2df6f87802faa20cb01b36b1a3fe604c0e608c","1f30014472031f5949a480a0326f429625cf741d71c1a1631f749ec041f83efc","717bda150f7e1e3f132b275baa927bbb8a8c141fb9f9fc616e789e974259b88d",{"version":"d0d16f81243a3b0a8950755762360a172cfc97dbbd7883ced1bfd9a0547f7293","affectsGlobalScope":true},{"version":"dc93da53c0afa9e2ef87b2b5770901298c1ae89fba1566d524e4470a008cb472","affectsGlobalScope":true},"7d7f6176a7d6584b63eed02da2e22a0e0b56d05f9fc223560510fa85c2494157","7bb8d975284ee7e83caef4a6660e5b6e5b22639990ec6afb9c72240bae38477a","9a2bb86b48da3b36f507b18adf6ea49411219861457007aa698c7114a43ae330","c937af838b35476ce819eb8fcc73eec0b4f3f7e058eb237df7d09849a099a2e6",{"version":"e0a941b34819530fed74b8ff51a0240796d73d4529872811d3fbc86204df25f5","affectsGlobalScope":true},{"version":"bf5ae5c165a79b0c75075661f516e77736baab4ce735277057d8bbad0ce079cb","affectsGlobalScope":true},{"version":"9e2a80556df7c861fbb1700df993105c9eb87c2452b451a4e3f28c06880af96e","affectsGlobalScope":true},"2d39c7530ee926487230366b7150abbe92fa3efc153c2a143b05d597f69d3ba9","314a74180004918f499b14357a21ac0c3470de8a72ede907437ce31f55c8083d","5e4d519bd805e7af474d599460f17992167c21c6ec112f61b841cb69eb495017","2549e869c207e3df89d72771828e2832a4eead9ff128bca9385c7e08483f6a89",{"version":"68933c01f0cb1e837860140b6d55745f8736e11081819949ab788dcd55e50348","affectsGlobalScope":true},"0de8ebb2d6faa3b59fbb011b36090bc8f11cf830414599ac20510e18c54c3760","cab087dee51008a724eeeaa557dc196a96d8565528bb5b2751cdcff50c784c02","2b118de643af6feb7d35677a341dfc5330df4ca6f99f7317126c59a20087f2fe","943245ec0265e73e55a467522923be0ede6340a7aeba02cdfa05250b8fc6432a","6e5a06351ea78f9630f27f14bda8f4d6249d095c007b1650b76ac15fff8849f1",{"version":"5f486f2d2f8bdda5f04a8e632dbe311d17cced9a948165f5561f183c60c6548c","affectsGlobalScope":true},"416d8875a3957c49d9b202d6b29906602c66f5dd2089b9115bf682cc9617721c","37a45a71b36020f795db35d47325aacc8352fee42f89c40d0596ce87e8a14406","39fb7ae1e4029d22df578f6af3e38e28ebab7dd0fc431ff8d8705a3084fb6baa","2894363fbd4e14663c347aaa3af9e587b900f747c5180089617d608ecaba4928","fb155553a26ff986c247d44b210176d036b6c3af68ac121dac4258bf84139c73","065931ba395e7ac2a8bf2a2d25e43e30d12d91472fb66b5ff572944ed0a8599b","12f2e3d88c2fe899b01e761a711cb9ab0855b885ab5047545c80a07587b0322f","a7fb6fe4e891705def0a20c14a03fff842e7f02885fcacb6d8174bef8ac527b7","476f9d38b6c986b0919aeeb55d7460de04547b5408fc6f23462712c74e5319ba","b4d06649929013f22e1a3c19ba03c54b775723e9ce9d9817a9d5c07b7a723487",{"version":"53a10ac4e60b6fe717bb6a7b5e5e15a78ce0974c732bf8fc033b2afb85507311","affectsGlobalScope":true},"37c4e54d98672a014990c5cc5ee2764733524508401f13e96be41158d7a24b71","b4180f6a6bd888934c401f4fa942b15f541a83050a402d284105acc63d841132","ec01e64f267f273509144084264af4fe0c99ea1df0452d3647086b4bc5126f85","a5e0e8727e93389ae507010820522a0347d639b98cc2b8f47c31001f700b46b5","e4fa14ce302faf613cedd78324f1ff9a5240c14da2f739ee9c3e44f7f32cd500","ef8dd99a50f909d00eb48e8f330bd164707d4d73d73ee8da976eaa9a8ad78194","5a9b2994d95efdad1c31d362cc9490931c5ca54c757710bf96fa8ec375f99ba6","da2dad9f4a1375687238924e68618e66d8b44a2f13ef1e19c1ca67af9aa48050","8597db354a1958602be38febe019c41112a1858fcdaa5b31f7f96696b508f1ae","57fdc643ce04e28a3ad2b8698e10e135dccd9573600edc54114553eed7d61de4","26a2b3109b6b4e3f3c6e59f3a9380dfbdf0d2067a3e2c2e4239a7fb19c9cbe16","6d301edace2ce47fd77e3b4a206e62721fb957ec304b393d7a2d76f5bcf7e425","97dfbe76bd64e99aefc31dcad34f620cb964d5311f67b036af0a74e196c4e337","eff62c3bdba713fbfbcabbe6e879c861a3e49d4356501dc0494d7005c6d170fd","ad968161114377051ec921642eefa5aa03918bc86d5b7f489f892cdeca187ba8","9a037c033d765b5b15ee7b24b0faa03be4a234cd3cde7b591244740d1d896d91","f0ac680163b9b69bd10b07e4359430696c7e5bcf4a5ef93f3aaa0dafa1341760","1ef8098ed9417f3deae4708ef473a19bad787f89e26f6e3a26434ffb142230e6","38e52e370b2f1775822244082d37bff0b5601a998b8454f3f60946eb74b6b486","7be3acbe810d148937b1a5393b29b4b87aae3ff780cad0df56569243288f559e","2defa550e94d324c485863b0b413ea5ff65a3826fb2461ec2a30ccde09a8eb76","f8431a49b199abed47b748993ee3e6fb92f2464a9abd1e6437ea2950b6395133","e258ea8dfb76fc89658e7ffdcd39d4a46df8b7a1d00c61e18fc3aff28eb63ccd",{"version":"09f6df45916a5e9ee14e4a2b40f266803a91d7bd2f8c98978eb448ce501ae33c","affectsGlobalScope":true},"f7c73d40cb6b2772726626ecd1ffe6b30079f105217d4563dbea0777a43cb257","0ad188a0c41be3b5327f4855131c589c94b24b122a1233910525aa6433ebcbf4","5404343cc937fb78099f0890a8af9823fd52183a5f1beccab8c5a9149b830fd8","655d837006fb67d4456389d8e11f80f970f06adfc5e05afaa2f69d3096c8310a","dd047d11abdbddcc255977dedeb98fe706f9792ce27a557d6f52198de535e637","4c9bf7c67120a0adec99f7781d725c3c84253b82e877f17818a2b7b56b71b51c","b6a9fd4fc7f44d79aa5154e13fa04467d9aa7076b8243ac2d9f17096ea2c9f88","6104a69f7a5a13b0e25d65c45e6ef2ebd5bbda44f3610e029feeb7697608464c","1898f6e54bb9e727399cf88fc94bc2d56b828b391ce090dc64107783a3f8179a","03abca2694ce6bf8e13e29d912e287e9c8f05d2fcb4fdfd12e2c044ad49be2c1","269a485cc622c70385c9d8bd75a1c6a9829f00791a91ef5c50db138a3f749878","f2dc9835081fd8a062eebecd44dfc266d183c17f3eda6a27a8dc6f400bdfc916","9c133dbef6fa77538d85999fd99e4e95a3c3baefc1b347c4ecc70ba8fa42146e","1351f9917d46893576b31ba8cbe6170ec21dbc0b660ae90c5447460ecc69f331","78867443da55c381ebad91792ecf62e90658e874d42a0b6e56db58f87e1f3bd0","95791d4cf732e9797ed23d1a8e996f1b9b8f6f74ced346989f5189367d717094","caf5b2b247095ec178b2106eb58bf2de3abdf4fb2b8bcec0c07801dd6fc122ec","cddc62f8805397eb7ff97afc508e901da5a5f06f234bffe4bda40d5831492e07","2d7f41a8cc85416e07dc37a689143e90d7b8ff05aa6d796e359e36184bb53bfc","4138741ccc0169616d06cddb6412fa4722991b66cdc7508fdaaa2bdb052c641e","c27591d30abf7c9e49bb841dff23fd0b53a49570d7c06f291982dce93c082298","84044337bb29b3664936e8d2391762fb94e17fbac52bb7f7342c1209a82727b0","3a3af247acd8be98ad1ab0c9415033e777cca0926be96415b2d5726f44669e89","88360381bb09f280154dcf23ca7401203415cbd42ea0269ca29588f047479365",{"version":"c53046ce667f4610dbce0270ef156389eb4774e98a4b380280fbaec42a560004","affectsGlobalScope":true},"9a029036e52c3f3c417db0f96d4aa5cb396ba3369fbf54c18a7f5c8327dc61d3","bd191a65a62fad90de56095e63ee5ce02f418c3ed5bcf31f431ccbd168bcb1ad","5e3692c1e55d9a1731dfd75d9d1c92f937fe5c100f4bb4133740b9be88252d51","eb3ce02a21a9687e4820cd782148efaccf25dcab30cc61fa3f5745fab605b51a","ffa16f8fa2e2e089054db64ecbd68ec231780fe3fe93ae6be6d20bac6ec1d349","0f609e50a3fe7106fbeb7f03f175bd2b5fef80116b5a966003f40ef1f538f778","8637e4e565df51cff7d87eb37c966c6b3d512b9b99837e7a45190e98191badab","383b02728b975436cac2af7c824e870c8ac526284554add3c6c871a15772f224","0530dc90350c688a14d28ceb2b83e1ea171743fd714d50f325f3a9414f638271","cdf2fd79caae15b879620fdcfa4c332f8057fe61f9fed7d287f69183b73596c9","d2cee5300d554a42877553d07147141ced6ea24b62469bf3275aa21dda72e16c","ceb0c6a1be8f82af04c926bd1415f9c7b27a7fcd82ea2d11a399d2bdd34fc991","9962e9856da50be85f51827780dd22e7c50e40d0b10f43feb645d4e288262ce5","ed0cef4ea04010efbdc021718b38d0153332aed1cdc5da08a8250169fe6671d4","e323d87324a2ab6865618e2cb85b179ea0aaf23bcbdfc1e8f75f9d9c4d6e47c7","b035c7b4238e4a66ee92c5a659dc7053b99b6cbd981464f896d05b869b86a4e9","746460fbc7176eaac56aaf2d6c012aa570edb79b6adc270d0823782d5241dee3","8b5f4a170a448eb33afd81d14508cd67c034f2874a26cd3c0e5013f9d3b20e6f","ccf2a9443c7d3d597cc255f049fe6285a92051ee7d77acb15abe9f8b304af5bb","8c41e31895a7f618b9c4ec21dfa76f1618d3544e33113068d734a010a94be3be","745293d338addd1d06ebc34c069e6eafd48b1dd2810f1a7f29426f56dec7c296","a8962cb27310764798659c5c625338334353f433bd593589713899f898a026ef","977064b49adf1163c9dbbf8c6e605b53a6f9f5d60224f9da9d6c41f420ec451b","fd962a6497cd4eb83756ac4b2c05b2e57407bccb9c1541c6fac2b01c21cf7df3","adc332be8f60a31380ed3f36c2f8159658db0fb9842a701beb2445ac741a4a7b","55396fcc7f38f85d796f6ed859cca892b15cfc7a1dfc86eab1cfc12722066f06","744b2ee6f99824b818b3ae3995a6f5ada77b2466d62708342ef1edd4194d5432","221707264ea9e4f5edebb158d253c992de71fd893bb828131b39849325b40096","f6bf383fe5dc5db4c76b419936f6cd75afd911d65c91a0a2e2080b20fcacc4cc","591edd22ca220888d94d9b1390836593fca0413e35df6c8831e29690c45ebc66","2edf042cec5ad67ad011306db9dc55177fe039db534e47107f2a1b1c2a6b5203","58be5c2c6ce611500e90159ff3e89196b375cfc58486f6d1cd3cf6f5fa8b0477","04e4b17250f4544674528bde25fedaa773512f5d414059150bb9585de4f308bb","72fc1934abfd8631032cd45765ce561a709b1a9d2bc052e01cd23ae15ab4779b","c55e0f84841a72781ac06713c1bde2af5df634c9b2a634310f8e81d32ec65aa9","821e25125e30e5db5c4e2297b14417f591d6893a0aed9c60d83aff61929fab5f","0dbf32e20194d17b7e81f263723c3260171041ca94fea76edc03aea2b65ce5d7","8633c326ad88f616ad39146f101ad151e4dec84dd8f855e20ec2a7091c6a861c","8c789c05a5ae32e91e76030f083c7a4f07b358909f2126ae2c5a6965dee585e5","5f69658ce29a40c9da49ecd8c5bc00974b6c13b7c69392f73da8cf063d459042","743add252578c72b91dba3b5b24780bf1d795b37ffa1c4eb0b9afe7ce655758b","7d03876c6751c6cd0085777ab95ea1a6936ea7fa4c55e39ce1acd4cbd8fa414e","ad2c50dcf141f05c8dcf0c3075a2c1fba07ec0989b546cfc1f648b970a1f1ecd","815a3887a8b48983d6e1213605e86af077fe29eb1ce462828aab9b8244f28f0a","9e3d3e9185ec58977654c1080391ecc510384f7a602917e7e3c2585c0eb2fa1b","64370ec477c0d0396d351a90eb1e8fe965df6504c284e3afcc179e35dd7a46cc","adb8be01759dcde2b2c20cb97f5b30923f73eed1a045e4bec80f2efcfc40f057","129c5c2750578601624ebdbcab5b492a378597c58267e41602c6abe4474cf01c","b4f2b05a4cb6f1b60e510749c59a5b2e73d545148b96b9ec44006d2b109f73d9","36a7a029734d8b642c0203c4b4c5a043b7ad3e77a2372f15a1e3b18c4c8e98c2","09a340ce78671c5fe9ae1eb7dd75619c16cfe9313616eb69772722f95bbd1383","269d0d6341a258518ca935220436546fd31674e843b7feb6a559aa33e3f6d969","61ee290b1031985aca3d7813cfbd110265a81e64db1f2687f470d6f5bb86bb37","088f73d46c41477e3994ba19ff7bbc4bec258959fff34502dbb32bb89dbe9d2c","09c874e70a7bea5a7f50dcc809b6dc10a940f3a526eb99e707321fbca54870e7","a1087db82a364995d822ed2e8f0df7ed9083fafbce2fcabf42f706540964ed08","d89f4863796df6d7ec9209ecb20111169f1b858b06f1f372b81ddee612b67673","702eec9fff70f487a3a8126520da6d4272e5f1a06afd1434fab82e0e1c67581c","082667d78d6caa1af550863dc82d3a02ea98d7d13aaffa996dba7118a38e3637","d1c16d1a221e8508cfa07428e40d25cf13ac3e15eb1be56b9983c12f5e4b3b52","ddfcef0d83a8d28dd74fad1ef491aaf96665293c2db2ab0e30fa1246b30bfdaa","ce190b39ec46e0811f4d5a306221b9d07c3d69c28aeb1c189020e5ee1ba6d6e0","26bbe692f03d5fd9b8c7db4771924c884fb824c7e15741ce0ebcd21dc740bfe1","6fa256e84d8c393367953a9e8f831067dd5ff7a17720f56638430d64a53b6a59","b1176cf4139caf3c419158635d8244eff4fb536dc9c3676a4e9832d5e87366f8","b1a3a7a628ae703abeeaf38d438ba8ae1ac81ed6f4c2d6d6bfaa50a6fd59af82","332d661343ba55b976f473bba7e7e1462252a755b217fbc18368cb3b83c3baf2","d8ac5e1d124cbe30f92bdcdbda476b74042b4bc872a69fa0112de80ae54767dc","a0706609903d97e064fd4ff626b656646709f61f222611c894c93cf95f858dda","8f6538929a220c1e97395e01d66fb3425a03e66f44a59111e32f6e0a284aa749","cb14cc9645f50b140368d9920be58b311e7b75f4a4236b7cb67d24faad5f67da","ade2f900f4c2709e765284557d182ce29a1d2ab3f16977b87b4fd20f8d707098","fa7696850063bae59497a1a0e4d3b44ac091d8be5ae520db8bec2e0190efb8ca","344c09199680044b1c1a2f8d7f9af6d253467742031b316a1400dc7160349cf1","08f96cb316059d4aeb3eaa87d1d632c2de37b66ca882fa86fee98d97edb362a6","60ca8ee5c716848a696a09b248b8de95c59d9212bfe0684070f31ad35522f716","1ee6a5a21cc924db75824ac1f67ef52d22bf9a062f60c68ca6bf964c43fbd485","747abcb18fd45b5b9fdb041afe2a627981f4b13094ab6e85d97b6fc341b82481","82f95fc67c9f1ef0e447ace8b6a0aa5f66dd41866b73ecc5750f56e4580b23bb","aace255eafff90c463d8887ebcaf49e91c1550475e8734bf2d314830eae43a13","bb376587e4f5de049168215ede898496a4890a1fa56dbda5f695ddbea65cdfe8","17ad767dffe1f74026f43703d5b6cf2c58b402594789d1b13367ca9ddd1e76cf","401b52860e2affda86f210dc992bbb04b295f5213f66cd7dad5cbade48c6f0df","d6e5fe84f7706e293cb2c9568463c089a9d4cf91cab1d41dad977f3dd817a031","5c34fa4b0a4eab50696597521c3772e85f16971b23a09a83fca5de773331de73","3e009db57fa7b6b911c8c2591192b7b14004141eb69342ebfcf480902e442165","2dd7ecb8f8f96b918e4ed232a6b8658425c02fcddb606893e4474b6ba0babc1e","4ebe2d794da78a4e7349397a4c7917598c6e5474fc34cb9c7d7888833d57e53d","b8e84b8ab2cae56cf718aa4a9e087126580d9dba2300bbdd4e537272a54d3218","a8730eaa0849d53f805650d7ee72dc6430fb51564ff02f6739c4726d3f55e722","2aa21b20f325a0e5a448e224bad102a9ec55946d5aca71f3a2ea3b77117cb4fe","412152b80cee0e2b41df15a064aaa3beb401624722ce4f42d1faa687e425395d","2c8aaa1ad469b02d0ea6ffbc0ae45c5a0b7292da541da4bcb36d2f7c8a74d562","f1f74fd1806f567a1465a13b1349fb39e78a61ab9ab5583e9dd277c23b0c96aa","7c8bcd43cf26003fed5c992433bfafa9f8cb04171e90d1d188fa693a76eaf264","4c051e20a9c70fdfc3a6305814e6bf6d3f883e56af9d5a2620ee0ee97d7c47e9","c79f031b125521f02ff8e57a21e4663cf875c73ed9f7917b0aa19f59be03f86d","678f0778bfab92a24c39d668a3eb9d18ee43808d03c3e008f04d1aa4bd9f9c07","ddf4dc65e27dcffe8488bbff178555b6380366caa74dc376f3cb3f9e6e32059a","11cf055837eb988044327967fe40aa6138ffa546a724ab669eefe4ccb3876ad6","3ec76d02d40f47ffd40422d870726eb11e21f84b93355bcaa7c2ebda47518d55","cfb827fdfa837d2c1a3b9934e01c1e1020f04108fe13ddbb4645091b8a9b7eb4","2196278c32234e18024cbfb9b1cad10fb4c850918261233aa4e53c9b41d5ff57","a3b63358d8feb4f760d42fff0f5602e7d2b9a79f1316126f828447b74513a8bb","83e2e9468aaa2431cd5cc30a7aaeff4766ce6a094c63cf4e3330be4971b55959","6ad35e8ff0760a44cc1ca4e544d53dcec2f96e1119bab4af93f77ed393a06dc7","ec655a72d99e359574b7cdceffdfc973a2aa0bf4864fb5469d1012362dbc9bbc","986e48b630d61a5ea069d5ffd0a7300eac72b537a6a80912e9f9c76d36930c3f","d79c4eadb9ca3c70a7018332d5981dfcd39f12c69e6278d5edbc866ce53a3542","53ef3a0a6f11f41f2f8753cf0742825678d6475a0804fa9a4f802e30b63890a1","799c1ef4436ca2668a0a1366ee77aa00441f928dfeb9e211e4fb5a5b651e3b9c","4d9296c82df8d850d1c92b055d8edd401bf2578a92acbb84978cc8c82f627c39","18f2da2d3f20ab01a79f72fc3cab4821d3e242132d41cfd89ee23b432c520410","6023e2b65e129cef896d2577b8d49b8da99c6f4f92a35bcf57f7a8261a9e5c3d","e1e0d47c18ea9556fe6bb718076dc0a05f24ccd3534c46b903c40fc1a3c4ea86","4df731380bec33bece48e7e73bef837bbcb0a39705f5cc8c4fc128c0bfc9cc15","abab4a99902f64688599b579ce3a2e3c9d9f756832f652e2ac2aca0c211fa612","d2778b1c5a63a8852473957a15bbf9e19dc46c3d18535d044f8c6a9697b854db","ce8193e780b1b6e7aeac6fc5adb2421d4b47c3ac6fe1fb5c7019b6368afcf045","5c728a147dbec80d4bef9f2603eb0574ea905e12897b249d609131bd77e761fd","3beee00c82ac683f7635df13f90003a40dd442dddbef2f12ecd561a58fec5dfe","e8a1e5fcee64c1f4cdeadb11b6ba6eca0a9319f49eb24ad3186efb5bf8c85050","e58d5b76f455469bdb9c00830d63547a11c4b150123d37438b368203c0dbc2b0","0961943e3a9bf8b833aa45a7e0547ccf1af29c646f1234c319478d4e27ba7bfe","d3c43a6caa5b4d37a75bf7716ad0bc76d6419f4d8cb955be95a50e57b78ae133","e691cddd472bd6e35a75a139dd84344271e0cffbd1c66a944dd550a4f2d5dd4a","7a2c67c88ee622ffc18e4e4bb5f28bfcb1d80a5e8f87fae3e988a66214cda825","30ca33e57008650ac6ffad58112d136f98dfdbbc854b01612cda3554d9d2e29e","25f55a6c552f7b7c3d5930b560624e444ad34301efaecb8696e31448d61ed016","db0fcfe9c8f46e4b50cc4bec237dfbc06d06e17577490303f49290c0376218aa","85d910c7fb524e6af2ce3bf19024ad561792b7bee8ebb9f60a78508e3493e1de","614141f565a53aab34ca221fb7f7f48f350a6b8326aed727372b463a3d656907","ffe36a78df6c331c084bda4423d58e3dc82af8b4caf71ab3426b13c0fd615a51","343af1b830264da5aca4b3e66778b28654a21c9f56bb158e7a11cd023f10af9d","93ca2ff8a26ea7d0a0016b54edca86e3b2e315ceada458fb51070786f734276f","f0dd292ad7376cb3f6cac4ec175859cf8f52f936bba242b355811847c945faf1","a66d7a9a45abfec6b8e6ca21270f4d79fb164617438db6f9e8f766c18693b1eb","705782add397d850ef2c43386c3ef303451a596bf0dd6d4e9b0b5aa268ca882f","5d8c75cb2273fe77d02eef4825ef2644b64fd9be42dd566b854caf517236d7b7","7145f05bd45befe493641be2f92a35f2f09c37d2fefeeb8ae81020290bf37af1","f35496848b5fd7f8ba4da23a1e5642bfe208a7b4bffaf568b20e3c32a370ec89","cb1b8359d6dd3d36cc50608767a7268aa8c16ea4e901a289e5e636aa4b434b5f","7d6d719158a4dd7f5d29081b7a042c10c09755b67299319da5aab5bdcbcba997","ecdc08bd88a78a419b1e558f2b36bfe4c59c6751b6b693f7bbe72a7e84856589","d7af6d2ae358f2339a78199f0bc7261b70822a8a412430e1785bdff222397f72","08e344398d2ca604137aeb9151c0a8561c133d565f64020b230417a1096c92af","2dad929037f16ff8f6b6ae2b7fadbf8ecc215edd685747910611f4f4816def08","a944bfeb4cc0c9a84115b97a73b9d8e35d20ab27855f581005a63310b8ea6c4b","9c9fb13d1dc12f656aa4dbb6ebc002d8ded86ed8e6cfb3a372ca75d07bf69834","f1fe7cb78ebce029f3666107dd30760baabe6a96ecfd81091730982325e161a2","90675347e5b537b13557004281d7aee8767191bcff998ab0a29fcb606cdc8e2e","e7d263c3b1f75330bb023216bfea9e5001dff78391bdd6f5cbde657a122cd4e2","c7f9a127648afbfca1330cd5e0048612a1816254ef79f3760b811807be7848a5","956c02246a61ab5bf3324ef11d64c9b79947d7dbb8c0d9ca75917a1b39757eb8","a694a26773a7942ad64e9316f198e8d764750dc9ca02c2489a4deae53f731392","f4237b98241a34e70ebcda021db7d84ed2708a73be69576d6d62abc520cdbbf9","190dde699551989bd2640fae72b63cee03f35723f74616cb45051d527f98f0eb","45f29e5d29a07383eefc470cb97aa649d86bd3a5d097edff727f3f1ca0ecb70c","7db2fcc3af5774098dd8eefddb5794898650c728a51269dbc572de65f06a70fd","a3dc743a8451983ff951261ec138300ae765dacc66784993abc2040c11f91edb","81b0b5762d148af8db8549f093262e092191bdf57001710b5fa22f12caed942b","b18669a0eea99ae24d02b99d35e565e4aa51e38e663697e13de822e556b2119b","8f1338dbc2acf1e4b5d1a1a02395549a7d183ebb8a1c3f0172563134e6c79af5","8c43a8a5d47bdcf6f66c247c199ded68e92b6650f6de1f55917caee845d1d61c","3b0cf7fa9d1cd27c5a187b58de15e0053aacbad2eaa7309341072eac0ffca8cc","e58e9157afd209ac26f56598483be9c3a923b48a66d7ed4ea7470a6428c97ad5","c49ca117a3159ddc4fd476df68bc7398fbf1dc1258ad7e5a73c84bd2b5eea6db","fa4721034015900bec6f6e88324bd2b8c2485b0b8c4dc2e01db4d7dccb992e81","cb86027e0b2ebe1b4b00b5bee470d5b0f0bbcea8bef86082d3fbe4439472ae3f","b519b10c28ef75f97b4fe89cb09eeba0c84b7ad4a588b68021900c9b3e9ed1e2","f787c1b82e0b68c7370b05175ea8f2875589152499b5aa5382d0061101531501","434099b9d122ec3e07316fd44b24155c5c9671a79479bf9e54033edf0d61322a","188f1d7152635ecaed19c16640b82c807ce2cd40cb284627bbe8d1f798d3080f","23620c124cc224b2a9011963bf0071d719953c291abee0f8508a9a4f5b9fd585","d7d7d12f908a1f4c19096df80cab1e70ea000b52a4671c1c4322c208a3a8ed1b","ebe1188fb6d9fd08c976e0118bfecdde9151a29f7937d6b6de9b7b3b058a472f","e05aa3af45093756bea6ca83b2d2a3de6d48e9ccea1bafca85e9123bcc4a2aa7","b4a7e1082338f041784cac7fbff09af0243e6e3f1633785d5588d35d0f3b65f3","ece2dcb5dd42f11d0d126241c2647d18c4694a6bd861e8571f7905942466f132","b663445f403019b4916ad3417b322d283cef4664d40b510bd10c6b7d23aa13f5","04f25e861fc2bef69dca7f8bdfa3c3f7f4c845e3f043101cec4bb8623c90a8b5","19361c1e7dbde76440cf3ee339c8fb4cb25919673e9d68447de1d107d129f858","c91118e0323bc3666ddb99dcde29582307fb5e57c67dd269a390816735bb2a9d","9c296dcf2de6dc7aebb490d44191b7ab319f5fa42ce3990bae61331f88fdf34a","ef601641c988dfe44c62cb92473cc055dedb95b8f19b094c2082387715601505","4f691b2d3d09b55f30d222354bbcd9debdccbe9cc5d5b56f648d91a56e84250b","c20f21a26caf3d44d0ece98eb639020887ca409463713da59c0517bd0f3613f6","e60b8141222612b42838e9454ccbbaacb4c546b08b435b9f42fa0ebcd0b4c50a","0ed82f68db0ea7ff57c68e53278f2fa46d10820fd3e496657060f9f5829968cf","a1d384871a20db7405523716436cd64104241bd3af204b49beac0193f2c6a6a7","b954387f67c7580f25eb8cb667dd87919926f301ae702688534c31a8b9ef33d1","77863145f1b1e2be653edc181a8ac97f6532cc2545c991e16fee3e1ba1947694","050d5cc22e44542116a27c8b38f8c26acc9c89ec288f96e07d7ebf59a3dfbb93","bba0f55793b9e9b995fe5641811221c4f2cbede8dd63100452bf7d890399dddf","81e0761ba89fafa1531f3d65e7694573f91a771b82a62773f8b42156dd7fa7e8","7fa84f8fb7cdf2cac7ffb56aade25b9de8c5622424489df39e5baf4313d61803","792b69b5c9bd1a3974f31e5b7fe927266240b3afca52ad7f11cbe121b24227d7",{"version":"1c7d5c73abb0d80b28a9accbeef613e32f46f61764e57994264aa406f9dd4015","affectsGlobalScope":true},"eb6a61e3e360355c21e5c3f3ffa7949450f339e4ff9d7bd11ee43d81e69655f2","27f494d2c924fbdc7d28c132ed4c2fb06eafe080f4d2ad2500a41b535265a578","98f6b92223429b6ced05baf7a08fe5561ca224ae6b0f2fafda91e0012fd56e88","abea1c36354df260fe0d27c5f8a00fcaa4b5f9cd2694b16dbe8b0bce29e94fca","0f2d602c888bed8c628a23a90ebf5dfdfc80dc8fbbf01af3d97c4dec02130e27","3c3db9f2edbb74e8baed1bc7b976e51c274083d97b7b9c0df99eb0d43ce7492d","f5954727545ab80036cd4ad2058327deb7de2f08b127eef8a23c34da8a717dec","bd34a89094c34484b6e262b9bf583ddc4dfe32285e7865d30bad2bed7db0ac4d","41de2ec2cdc4bcdf0a94e79943fd384d14ae82438dd4cd283d55471af7fba7a5","e06b9db953a58fcfbde3199029e49f76a68c7ff1c81936a7f69e9e1570e6b6cb","7174632e42d416c012b0ee4b712bea972648e3a1c8729fcddb753158ffc26ba2","9b550696d520fd1eda162fe1c7ea332350533d5c5fb34d9961cfa9cf28835f21","0dd3533681d5dc8672bb617667cf9942c7122fade9b581fd2f622a40b98ef50e","9f31681b3a78572c165aee31e2912a22c73b891b70d8e4e11c9d99ce3618ac89","c31da7c7031f18d7a37c7c394cdfa8a45d74f2276b8853759dce612f7f126aa9","ad7661b28c644035590876bf25674b0a66ff68c5ad87e7d5bbaf9fb6658b959d","4d8353150f5710b8ef253885058ff57255eda45b34efa313152093574fa31896","0d7e603f520aa3c6c3f82802bcbd20ccda006f1b8d8517c8af2372b387918822","a831ced03d48b6506c904e1428e593f853d7dc7bcc6580302c3a802e3add7d5b","9d17ded6a8ddabc7f2b4af96b7d63cc7d833fb1432653d7bed6a87b3fd50aef4","732f051920c02b646380bf0e7fc7725b844622ffedee94229f2a0cb56e5b3002","9902a9ddb3289e22ff9eb3d088bbea6159c2849241b293ba9fc62399ba2633ce","ed254541641bdb808757cd2c9556488146e21993189cf1541d5f344c64c9ee21","cdd832bf3559de3d4c78bcefb8fa2700271de43e747830c8b56d6a39977ec0fb","6fdb1f6633ebffeba20ce84fc0ff7c5351fe10292c801b705dd7d094c461793a","84ae86fa5d548727173c18dce4b54d941dc90e56a50a83096ebb13ed1c74f8f3","077409a04723a54a174aa81bd7234ced52784e1993204e39a5ff76e16954b3a0","93a4223fb87f6f08a54d81a9fe9017a166e22201aca2adc92083dbc5f8c82e22","d17bdf16a98cb1d9cb60d2806b9e6243e85bf107691d042f97305d2ccfb3ad5f","afdd5cf3f750c4f170ea46ac629c3f6ddccd7d01916fb3e5cf35575e7e8bbc09","9cd62e28694a6a8180a210e2aa69588402dd5fb0d2f6b2e814e5e48acb9bd3d5","556fe05cfd69aea30fecbaa6a9e763d325e0b5418dec6bdf42c77f2c7001f38f","66e14d1dd2694388b5200597d2203249bd512c0b33e2bb0c8e20e0ccb6ce5c19","8cd7adef4696e91ad2d7f9cb19fe172df9491cdf7d5f74dfb56698c562fff100","16ebec91286d987b7b3574e6743f646c3a38e736b640bf1cf266758a25ba054c","9e141855150a843699a0f9948a5bc3d3b496caeb307f774170b143f8e1355cf7","ea7979a7d3ca3473f574de4524cf3a7dcf2e9166a5d88044491bf32f44db93ca","f5eacf63902f9c644544325308d3f4f095b24664a3d652c0df94d39f73def7fb","ce9acaf05dd94224e2f02c5d2722aa1c1a55b02b0c00ea5483aa580fb5e3ed17","a10e70700657b1a522ffe0e2e19ea006279f5c02724de93e230c45c0d9699038","8e9416b93758ad9def7697b93e819641cd3a6ba0dd98eba30c5ae674b9796e5a","5035bd0f00a11d52f37078a01c8e38ef5049f711e8d8d5d6bd8765dd75eedbe3","3a7c937988194783679bd5604ae1905350bb305dedab606108097b92e7880b40","f26596c9d2a8e7a679c526ec2067b807e0dfaffbbd01d907fad71d1e0f317c2f","032b9aac3ee8faa3a37fb12ad21a0679101a2ec299fe7f5ebc8eecaed3626b35","dbcdea372752a34e3e35ce7298a7bc55cf3d0ba8ded38f0bb702eee9e8fd78a1","a4aec41fa3ae87b326ac2dfe722f7f1ac950fa79e98c2a0cf1681389ffd8000b","6da7cc6a95d8a400b13e3324b80d930e29f33d0ff8478746c0736c4b7b735ad5","53ba0138cc988cc490460b2d63642165acb8dc9295bb0160d3619a7f494a75c6","228058754c307e8a6f463282d7592e00a77ea982ad805f060285acd430a9202c","d683d4c086e9d379b587f1a8d2bcf08fc578965a8b2f629a23fa1a40cbbb02d8","5672b74da3fd8413f8bd1e44c51786318df43c11a5888752f8f7a6ef83b155c5","627fc6289efc69d28b63b2f51d6315df0bfa89c80aaec98a8363f8c2892092ed","0ea593e1f2ed36b3b319999dfd2d1c0eb6630db4166f60ab674437890bf70f05","3a1a55e44ff931dda5109446c1aef61448967a1072bfb68f6a8f58235ca57646","1e3904334ca650e0cd4c1195057a61fc326faad4f183bf0d5b83f8edb9a172d5","cc1a8cd74c898fb100b75e19ae74e527d45f976dd9da0bf17a95bfcde5ee4857","ff44328b18d2e7fc49bba1f655effdac76c43499945f92085d505b9baccec57a","054e9d21bd7c6356b8907d47327a9bea9f74061db9e102757fbf68c531b0b201","644f323a03a4d4b9080876f14a4ca7486cd2b32b1a62912e632d6d6c50f0c7b8","74ccad7875f86853a7299762dccf250d4474dacd208b69510c6fd0ded2956f83","5428e15aa050a3c5a9d6927e3bbac5f4dc0181d60d505aa1bb46f11218ad7750","b02c9e98e1c92e5302e82b082539989f104e66724513cf3d40884520b89276d5","7875b94e7742ff2fbb58b16ef1de2d344ba8e456c55e4b32833fd2f2ff2e2b8a","024a9a6812092cfa7d68c1db13c5347c69af6853171c3938c84af6ae6119dbd8","1398cb78035b8496a6bdb4f9b02efc4423acf2b9dd5bb56a888b9dc54e5f41df","55722abdc8c0f2a35ef8b579740a176c99a523e440289af759a99130896f9a5a","c35d8465f290f7a2b012af4c0f5153d59b0048e6a53917447424f4d0f7e285ec","a6a1e002f336a705e184dd0ed930dc24de6055573cf4f3fb88177258c039ce9b","66119d0902a244abfdc64aa09ddeb45df77a4ed660e09af085332de5612fe3ad","647f9457d6fd45ae3088075887e81f1b3b6fe3aeb3f16c6d058aa3e02564a32d","8bb59adec1d0b331313f9d9a8dde66b93bcf653da2996fcfe9a09901991821a2","ba3d4b235e44723cfd62568e6f710d16c8a315ac94854388c946eae0390ef05c","d3075474f41dda8041511f344cc14d92c5022d3fb7784946a66f1432e367c153","3a26a54e0444a162600d448cfc74c94fe3223b8a9a448fe4cc5287a0b5814240","990d5da3ccc4c7f53ab38bfd5ed1006f2009cd011d7bc9eda8627007096c9342","72687978aeea3c59d2fc8eb7ada86b6fcfd6b2793510f94729e8723b3f898b9a","2ff6232559542b0ac0eae1bc25e0725fbec9d77d07a10729ed8df0e2050b0ede","2892034410fbd3f1fa8964e403e3016bfb28643b217c019c68b72f4506829627","1ff062ef989ccd1fc8c59a56dc263b732602a8750128a3b4bc490d0b4e7b38ba","edac0c31533eb5973134040e6cc055471ab761f0a696063ac8c515a966f8d031","0293007b2f09bb2d169cb1d6f1b0977944e7cf53146ffeca483b44acc667331e","1bba5544f5ea9c9fe8ea3dfbeff82b670c9717fd49a508d467035cc8d4be19db","912c63800c0c6203563dbd7cbe648171e465a0144b49226c030ddd17a799b76c","68766bd7e0ad21c70f514df89300b94923f089e5514f589f78ad69d9fcbafc57","b11dec0c8c49c05d3bcaeba2bd40977871de0842e78d5bc236c3bfd1c9532a4b","a1f3235668ee764c1114ce65b0d6cc1f373ea754a8110d82e77f7102e461dfbe",{"version":"000b16f53426795ece4898152bf39bc6fb110a4b84b8699077fa1c65b1513ce8","affectsGlobalScope":true},"f278558cd1f3e00ba92d5af86c12c3ae5de12641e656fa96e17aa39f21463097","9fae27a9efe2a4ec9653cb17bebb6f82cfd7715da0301933db2b295564e0a621","b877079e0600fd3296d00447dfcb1aa155d33fe820ae0a8c26fa15d2e53fe55b","bf879f9650597b053a5904aa86fc82d86410f8961025e24601334e5f7bffa61f","f690a0c22258aa8994ae970976386f41025a1020a1eb001b2e0f46d475ac0f38","dcb6094ed617189ed8cc93b5a0f7a95e9df9eb22896a1496646b5991ce96b599","d7264a09d37f7ad76f42a177800dc2d09a3eb513fe5157b7cd0508c1edce9ff6","64c4ac585530e596a074a940021259dcac015b00358e3c00455eb218e2c3b108","db009cad7d4fa5e654123add729aab8658f297aa407a30d1145e2646259f82d7","02fe7bda7abc0397487734247e290cd0078e6fe939f7cfd89ca2ce55a25f8b2f","d1f1b64386fba9f6e7cc92aa2952f1f082fad079106af3743bc8d6c9865f8392","93c4e88bd6e911de0d00b1da1a0b755718d6ba9fec907e41df41705332dab633","b12de681912a47ad06dd8f06b362327f049e9610cb75c8b3bcb01dae7aa3f584","dd7efc446b21e0f635d821f002c5ee4cbbe709624cf22695762c597649248b77","ca70b2c7b205715eda31ca675c6dd8dd6aeb0f767e44e5dac5f70fbfb80eb1e1","2c1de79b584d583742366ec5963f820bb51e70c6efe945c153bb5dec9afc9cf3","85eb49cc42a708fbd0421cd8ec241833068108fb876f1719df64b984cdb73828","ca6a2c48267a23f2423358a2c79b2bf954057635634db7d927770c68c6c57ba2","6c424627a938110b1232234d5ae82b2d6e409df1bfcc129c74d654f790a33b12",{"version":"a7a15de1f0a94b36ce0f85a5dbe8be4d7f50bfccc153369be4311edc0f30eb73","affectsGlobalScope":true},{"version":"942c873f6e17cdc4ca0d1640c7857293ce02078a2fff61928db548ad1264d9aa","affectsGlobalScope":true},"09bc4a3da3b3f03e249db6ae02554ee710ddad7855bd860a9d0c142f6f28e075","b6ce4fac77847abe5a71d16aa166f911cc29fdedd0933e8b32b082ad9854c7d7","9341f2cdc9bbbf672dbcd84395fabbc051f08c6f1a78b7b7f76c0a245785f314","ecdc2d85bfdccbfe6bb010adb2edf9a990d578f0d5f08f40fc8b6947e1a0a562",{"version":"46c63d1dff48183edabf7884fffa3b83b25bfbb8e0a8b4052b87dc0ef694f77b","affectsGlobalScope":true},"47fd42ff510df0fe8c3bd069a5352a63ef2bd80f6a446963b4869a7312f194c0",{"version":"f55b6ee76119d458b0a41cd8dc056e0c512c4ce3a5790e73916b66bef8eda100","affectsGlobalScope":true},"18e00b0d331ca31c944720ec257f986fb11416351fbefbf85367e9087e6f74b6","2270b74ca53eedbcd679f239bf865abb7a373645ae2120f1bffe3f8abeb7acb5",{"version":"9f8189808acd0707df9490e439d3e333d688cbafedf50aec73a3760cc6c1e766","affectsGlobalScope":true},"d95c0afcbc047e4a95568b7a75b4fdf7f3da706f779070d637ffd2ac147ab6ca","addb28e20358c99c9b27abbcf65d27008de9290ecfb8895b661559c950da3e7f","de2ca34b110fe7664bac04673980433cd0be925ad5efddad90daed12d5573ccb","0e1062234d1237d80f39bd4832b0c941d4a2985681f8aeb00cdba5e40d664abb","e15b2eac876adc3f3591ca27e73b9231bd2723f0c611cf45aaf0daffd0bd660b",{"version":"890c1b6abd30cb19fd630c375798bbd345b1e50f0151ae69d6f16ebe54bd6aba","affectsGlobalScope":true},{"version":"435444eccfb98da7325964354c703a6f4944fc977125d03e34374ae85932b4d5","affectsGlobalScope":true},{"version":"1fbc7faa8b4d497a585d518b0028aaee4efbb1724e8ae8f3eeaaf167ef096245","affectsGlobalScope":true},{"version":"86fdc88e019f822afb6ffa55bd6740e32d637edc4f487f866fed40fb43000805","affectsGlobalScope":true},{"version":"8959ce0a238cd6c14fc39f61a95cf04a10dea4a217308a50dfcdb12dfed6d707","affectsGlobalScope":true},{"version":"e7318d96b2db5825ea9c771340c672314dbc8de540abe4e0a9bb20f3e6e7932e","affectsGlobalScope":true},{"version":"c954d78e442a43bb433f6eeb9bd9751890ed7d24a26b38dde926ac1d480c48fe","affectsGlobalScope":true},{"version":"d90ae624f69bfe1bfc9acc13b7605b61e529d92b52f0884f534d5d68b706fd0d","affectsGlobalScope":true},"d9923e41557d39d3ac181dc8b8204ad8cb64340b5f143105e6902b6c9d3f11b8",{"version":"0a413fc4229d4ba9ab89ca58f6737fe957766aa30f5dbee7b46b5021f0a201ef","affectsGlobalScope":true},{"version":"3e7416eefc61e1a810cb432251894d92dcd1bb10b8a797fbcedb512819fc5b64","affectsGlobalScope":true},{"version":"decf06ff995b2f3c6a610df1c6ebe1096ec999d3477dd9d4a86cda7ce3be0911","affectsGlobalScope":true},"a0b1b305ae962ebf4bfa4738437f39a6767540e34feff79cc67dcb9891a63a1b","1fe5d324108e4a3ef521585ac925b6cd229daf1333e2f91246568dd88fae583f",{"version":"d0c875fd9cfff920f5da9b5ff52234dbed81bfd247c21876e56762fc9b02baf5","affectsGlobalScope":true},"f64f7ba9359469d348daddc76211b96fadbec4c9bbf51050ef70d7f83c1874f0","8526107f7e19a6c264ce400535416f411edc913477a0a0e06cb065919ae2f19d","73194c24bb01018b88f7f90886f9d87caf6d9f5a03dee4294f20d3282e5f8afe","b529e1a572546c284f3e0b0bde4102709a872c10e7fb86b6c919e4d4fd03c7d9","83ae03444487c8b1b54529c3c4c32f223c5b50f77e50043d137a8ddc26cbe25d","6146070b6c358a4cab2e575826f27fb97fb6b88a4310659ce08f376a8ff0c43a","1ff6baa936c8013cd093057bb33c3382f4ffa1ba2eaaf95a13ffbe6beb3bd9e2","669030d21d5bdddd0b6b69ef3ec734d3cdab0f82fecf43a507cde52fbf294959","e490cc4e0cdf6a3b51329ef8fcfe69ec251eb2e43ffc06a5d55e9c1d6df6c624","e8976fd3d0e5186afe3288b865111b3d67d122f6d0458d62240f87d1540bd679","7a42cdba2feee4fd2b2eda5777ff8772deaf57366b232320d2928f9f81111f81","67e1de571ca9ae9165857a8e2682a9d120aec92c683122f30fe4f6f7f4293902",{"version":"a0b14429e5bcc2f6434cf91ea6a5b557133eccab533189c64828b07cf8106160","affectsGlobalScope":true},"527caa9124063565cd3e7f3b74c573ed8db54d3d67cd59a9577977d7f9c08ffa","0f1123ddf73ff94dfec1b00332a3d345303f53ebd44b98dfc6159dfa1f8b3719","b2af9a7d6b5a2def731667b3dc7f0ae50611ce4c165d59d772241eaab841b714","bba18394ec73302052b253117a8d21785d306519993e44cfdab888f641d20431",{"version":"817197fc90486aef8fecfa5d7d245a72c0d57eb16f09d5d166ce00acf51c0396","affectsGlobalScope":true},"e427b38c53df6980af1db47dd055b39c70dc26c32c8b757646a8e8d825e7f5c5","10efbe5cb3681540b30fc6beacf5441746efc474a4351a8a8ea0761e956e0f30","3a722edf01a953b1b8acbff6840230c9243b08632f2c9f87f23048eb072d7c05","d5acdd0ba08fbb694c9bb52b94eedbc214db3b5534beabd472c521d76bee5b77","5f52470f0cb9eb8ecb15579491fbd6de30f307fdf3ba46867c38694882780006","632dfd6a87f1443c3b82adbe3d5b2e1c1e0c3e1580af22c490874735b6215154","6fde9299b513aeecb51e4573507aae2008cd711c3737cb761262b944efb7c542","8301b85f1968ffbba44f06d59754e4698633f258afce9aca7d071494c13ea97c","1f9121597aa0c28f0fdf3227192975cc8188dee4e96f035c71abcf2be28960ee","f7bdba0b3aafff65a74dc1dda3f932e44f78bd45796742d4ddc2aff838ec51a7","03c61400806e0b8acaeacd47912e0916f66707ef7ced006192ca87378dbe0a07","7088a1ffd663e690d22017fa40174ba75cca9b069330255a7a158d424dc6d3a6","a1fa0260837849b7bb7d6f0c51728bde0bbaa06de04b006236a58ae1352013e0","8c8618a34124345e4a9e72f40b8ba8c83a2d1b0258475cf64132978ea04f2753","1cd24b96aeb692a7d416fea938645fee56b2d89e60028d058c5115e09e758f21","ba27d73b22e20d2dfe2afe32aa8d411293b647c1420cbe17abd635a5bae56a97","e01b329d9e875e1e3d74d35e442f37107233654a7765838a7d40bc06c073391f","2b7d88292907543e91080319a397f5421adfc426fd91c1cb7963738671b271a9","42616f5a1583ef1510ab126461b53edf639a4fbd4c5b924a51f3fc261ca8b675","f6d9b542c85c466bdd162fb24f75c4479ef5c7be42ecc56c6406ee3767cb8d2e","706262980b6ad7159ec0fdbeb93fe77e1a872af585b67a28836c405e700aadc1","eb182333a5a6a7019f18092ee4b5891373d857cf29d3101aa50d3ea5abcdb453","936a89bac4b3692a17021f31283c159d015e61f54aaba1b9090cb71330076b53","771f35f70060e4f3733c08b556b1f6cae278b7f1a2161b84f6b8e0b3869612c2","43cbbc9c8ede72a76d5f47a5c8d3801f1401041c93218e3ceb817ad0ff4172bb","55181c50982b8d1ed7cef464e0a950252d75514f60480e15be18e9e0a07e5656",{"version":"9632cbfc2b1d8c02d8178b37f3d90cb95ab50cc0c25e3c49918240d0b3e973e7","affectsGlobalScope":true},"da8f0510bba7dbced49284eff8c112e5c75361a610cdde84339876fdd833037a",{"version":"71be72855251ff35f793d395f5c92458cdc18ebc83e233a1030ccc6a56d7628e","affectsGlobalScope":true},"6c019d8aa21953ef0ef590267485a24e7842098708d91fc4017891de9bf328c1","6f73879760c5189d2b9e4f78a2138d7daa734fb881bdcbb96e7db55a896dd796",{"version":"418ee5b5d81f1b9281371e032d1463ef1265cdb2c34469bc282e9dc29d2b4f48","affectsGlobalScope":true},{"version":"13a1f29b2b065e893241483ac31310fc07858f1f6f405074992339cd70657592","affectsGlobalScope":true},{"version":"0378da097790cad26ef07ee82fe0fb34f81e3ee4e236b9b9e0771abe79a83d47","affectsGlobalScope":true},"d1c7e2876124c61ced32755985121d68968a7121b6a2efe960426391456df8d2","115a4d6922d7522db660509c245d197e7472c907a564162b9c0ad3e63a6ef687","3f76d6a2eb6fa7bf4618beee1e99c90ae92afe54c3aedc603c616e712311b5d2","245c226dde6efe84be4dc451dc8cc3a240cdfe46c2a9df7a04a554e45e64d1a9","806d787c708b8af00b495ade964651cf04d200890250acd95a3bb67f0cc10918","c0e4779d30b943df8d0b8626faa3e7e37053a46c04d64cc082fe445b8976c8a9","880198647a18eb31c71f1c168aac1011d7d12512eebfe1d7d5fc6b543ec7ba7f","30f1bd18c0a5086deb4ff76763b5c2d50bd8c212a839182504d86ba4d071d013","b3aba11e65d58861e4e1dc6fe533fd4af638c586a17a84754f1ae6ee377c2113","7f9a30a4b7eb59245acf8fd45d9620cf3822c3a404957eeb1eb4e10260e3c66d","7b5b853740a9f5d4ce416fe1da803ddbb076dd03f297ebc012a6d5f690a9de91","6a91e51afd339c24ea5d58885460b1173f771293de26a68b0e858b14a3af0792","0c9640c664d3687bffd99f72ff215e3abeec63c1aa7bf3943a91e7028dc6bd37","ce788dff8a0dd073cdabb6e716df901a4fb5f21de4261d9817780d9a74c67d29","c7286276c5ed2ce51557aa5b6dd50056b2a004c67a38155a4ea44e64920e6d37","54062e292923831ec0a760798fb374290426e6c82dcca20b8976079549f64822","3456f13e2faf8a06a1c91aed0334216670b694ea6ac3ccbd7b59a77c8ff1a1e3","5cb194506116b991a2a3df64af43ffbfd3a889b686903f88a38f6bbb80fd7fd1","34d6da219a9fbdf0cd002fd5c2093190afac3e81f0c855fe69f1b2aed70e890a","217d1a335dbfdbe9906cdca67de04a1648ce112828da764b1fd80ab4838a1fed","495162f178efc3bc7de5e5284582673e2adb2fa5d25b0f8c14387d96fafb9205",{"version":"78f15e75f0f6ed6b81bd179c173b4375c5c1ea43cede418e2704139253a0bfaf","affectsGlobalScope":true},"b2ee72443b3910f592fdac9a98ec5b11bec9b35f53b989e75373b78623d369db","2d27c14828a23d5d27d04a73bc39b9958e3654c79d8ddc462f8d4132a4a84105","1a6e57e0b2a854e4672f9b47be5b898ff88d99079135f82e02f74a1001b2ddaa","bd184839c4efa6e17f7f76c24a260c9d9e5a5e4e432448ea510fe7b138794329","3b5018329292ba22a9f23befe4df14eb6e83c95f0ec4c7a4a5c98df4ed8faeea","38f6b266d6a82ed1c4ec3de2d00cabc294e9c890a4561b5a23b5ad56caeaf7d6","5b07d19cf8bd6282d7f023d572d9df1a98f575753e56bbcb269cb011a7d13c9a",{"version":"794adf4a1102558f5e47acdf06930a06b0eff7d88a6f806c53bad5bbc7e32440","affectsGlobalScope":true},{"version":"789d8848146ba7feb8c33cd5f661ca750558a63942747212be95b4667f0ce225","affectsGlobalScope":true},"42fcf1eb0f8b466ace642e0ecf878719dc09cd0e6536803df0db8baac4048288","46a9eacc5a0dad53f08f3f2733eceeac196066b34bf3d2e0d62120487eceff9a","b13b6219ea0d816040a9294b3ae54e3872f73701eb888b07a5270901adaa79cf","04107a06d9a2c8ccb59dc1dfc8e103dea4bb8a986e47bc0779db95914f27e102",{"version":"254462093d987450eaf33d68d0fb669b9502dac9d5ce536ce22ecf1378b034b2","affectsGlobalScope":true},"ebc6362554b8a9f0faa1f4d57405958f7132febfd50129c601818667d0d4da06",{"version":"b645ffa41329d6b4d13e256591a2c9ab8bb3b6b4390a7f60c73244873c61a2a7","affectsGlobalScope":true},"8b81a2caad259f0dfb97a1cb80374049ce2b88c3cbb690f77bbe2e2bcb150686","7482d3f7fd8281a5bac72cc6aea80366f545c66103e01a796aefeec7918edf7e","db11b28500fcc73ba2a7bb67d76c1bffc203e22fb9c679100df19382a20c3646","d661d4c05c821f11fa810443ccc5a194f48125d964b1b29e0b8d223a2be16eb0","4a8bd9d876202ec16a14b487ecca5acf1eba1197fcbca3920064a798854c7753",{"version":"b9dcc65d3de65e78f03f680359fc09af7da038ea8b9809c566d530862709f5de","affectsGlobalScope":true},"32d4a2e6754681547c8033d34e5e112db9cfff3d5234d034c30f584dd69b46cb",{"version":"8a78b9fdf0283e21f2eafa46d495c6e5b5fb8b0beba66db03b25c513ec9d7b27","affectsGlobalScope":true},"b814a162621c6b26c8e2e16989f1969b1b985dc499597e6ee01bbc283d4ed0af","e101953453255dbdcc7fd4f45474d033a32b73232982185ea2e761a1cb89e26d","b1c610c6a933910c019dd5eab8effb726059b8ecb8123fc6a5035a342d8f23e4","e49d3fc90db8222736d97574a60dd88976a7e0ebff7ef0d6a07f905979ba9239","2c931f65f1bf91696939a1ecff577cdbb7ea014ea46af3092054d4b61d9c6fb4","c4da4f2d139d65061b268bd28a3e0ef31fe4ed18f1a57e1468a60c94fc0e67c1","c047ac006a4ed43f84fa17789484caceb3a0e7104206695837a0696c9835731e","b6f534c2e35077eecce9a9dc17149bfbcfe4c2ae263db5686cf0d6e952bbd9b5","f8529fb8104d111a46555273209885c750639a88a3347409975c44d9da00682a",{"version":"ab7af6a034be6c5f90db7798cf014031fe6e7ae40fe66fdf2c16dd2b956c4c91","affectsGlobalScope":true},{"version":"3a0bc19aa699cd926b0202c901352f607837b0cc56b1541bf8649d022954ac31","affectsGlobalScope":true},{"version":"4b8021711fd14fa5c2cf7e7adc1f17f7032f39874b6857ca4e2ffdd2794f29bb","affectsGlobalScope":true},"3183b7d595da6a04de09a59a9dcc47c8696a103f0057fad7cb6145c97458653d","121e7225a6bf54cf47eea126d58ea3d609f9e448b1d059cc96e82722c2f96689","fef3fb835fd814c98494f9b8973820ed45cc303c1a7188e39168a9594c9a59dc","b1a3ac115441d13a99c33a7ca591a77de19aaa4dd0ef05d560e91f84d0e6e01a","fe6401c76f99702d178981614334afe30f8a4242a75d5c2727ca59613de90787","e14bd2465efe1f9a7f5ca1400f332dde8935c73f7449662f25d8314f6940ab90","d4d5a3de86c36a7e2cd271f36e239d40b4893da4e2371cde78610c20407030dc","f7ea75af440b992d64d4e8a56bacd2d640544f305673ff7461c0e51e2c48f710","eac8451b53e926e31ed988f2b68c31c6f6b5bd721f39b6f4370ca3ce421bf396","84b28eecf83c13787a2466b5d4694f85b257a78af27fd32bf3913906d04e20d6","469672fcb648715c58bade2437b5be8614552908a342e17d0d6a326c31ea057a","22aa912f344d8ffb6c7723612bb0e17f403ea6c4384ed95de8fca445496bb8d4","c11c40eba7a4831b0d2d79af2ad28be4eb8f729b290ee53efaaa25ce0cd333c8","0517ac0428d267d36915f72014260db80b77030b00a95707f1c4b331be26f596","2e01dda3703d21465a64a845b4878b83e37d6ac84cf9a1f25149e193e42b621b",{"version":"6476f1945f1877aa63472962b6d71761b4f3c472eb179d1c14f07443d341562d","affectsGlobalScope":true},"8dfa8b086fe0a7aae2af0bd81ccecdb31b009bec1d804d4c2e9b1c0b8123197d",{"version":"3e08b8f051fda3665b92eace323d306b90d551fb7a7df1f489397d6a7211485e","affectsGlobalScope":true},{"version":"3d648fa39623950df430b9a01b58f63afcb47d60b11a1f29dcbfcaf08734bf3d","affectsGlobalScope":true},"2737e66a840883b195b5705a565e463802c683dec908ba10f31863a03d019e3d","062e3664245b0e453478152fb28941c3dd1db1c154afd032b3fdafb1f12f4921",{"version":"f1ed9dd3d08d2f9189522077d05681de19250c17c35ad71e7f4ae9ca11001f8b","affectsGlobalScope":true},{"version":"ae268e1642add289d4ab2463ef393df6f6e4357e85cc01048691da2e94e8d7ae","affectsGlobalScope":true},"896f8d716296890d8efe2327c12670333cc194156e4dc2a712114c8d774483c4",{"version":"7e536c56a4c2b9a3351fa8c6b5720f82b930b83fffdf973895c7afd973f92fdc","affectsGlobalScope":true},"15ab17fd3e954b3e35c8344a3bd1f3e2f752ebd5f555d6b98c9e3ec478b32987","7b710729e8b6a2e3c6dac224d036158d846790b93037167808cd18ffb874da94","df2d2b018b863230a59906fdc6c010da9cb226469f01844f58b5af560cb9c523","115a4d6922d7522db660509c245d197e7472c907a564162b9c0ad3e63a6ef687","1b581ccfdc5e774ab2e84df568a63e111443fdaf5965d1a5f1fae084cea45213","45f80fa95f85c2635e8268a5d615c69aad8ca86694ed202ac6c4e9ad8e58f8de","43362a0b967de5b0394917018162ebeb697bc098cd7a7600b5d0de3177a14b88","93ee5c4a0da24842d77cfd0689fbf8917799cdae77c3c22995d2dc6a2f79b9e8","ba13d4c56dc07360c1632b9ba7453348e2a2a0992dfe0b7673254b626e3cec4f","0390bafb2e3249b672765ce883a832d4f5308793f52154daf5183a5fb99d43c6","a68c2636a77b6a3fe844d8c7390ea57207ba19e899d46baf9a973d3b5713b870",{"version":"56fd39452b2d579e58e3f1e49f8b791ac2135ac5b6baadebb80aa4d6b0f047e8","affectsGlobalScope":true},{"version":"eb90987a186014ae9cfa8d6ff55b5579c90136fdfa29709c636e52fe5bced4a5","affectsGlobalScope":true},"0b9552b667390077ff6070d5e50cc7d53eeb807cede4678a4b42a907252d64a6","80ae221de1a4755fb8f297832fdad09f591fda17d229067776d5492cee1f326d","3ed92d889548cd59860a9363ca17cfa326c35e30e56aba92dbe3d168e8b75717","4f08f917f1776d9d51ab4b2a5b33b8fed76faf21f3e3f29037b8f16e6e5e9ccc","016c7054836ee23fab7d60b86f962ecbdb6a393414541ae5c83d2bb58a2e6168","a9f63a3949b540953d5496b12f557958920e32912ec60a8243ba4569a3b71351","e46f32e8aa8984a45071e8008f88584b1a62924feb7d0faa5e1c8fb626925155","7b199d24d0137551c8efe8179f527507529faff82c62411fae88e11cb4e5e703",{"version":"363a65daaa6d957efbb49f04c50b1137e68f1c24568221bdca14834bc0103eb8","affectsGlobalScope":true},{"version":"4525f2d827142e5e99885589e3e2af93936f83b8fbde35f6c80051e5ebaaabdb","affectsGlobalScope":true},"25120cc5b77f87056bb13b0c01a05168d6485323d5972feca20cea124a4f618f",{"version":"da0b2cf63dc9052c94cfdb14477e3f5995bb5b403c737fc8ab26a0aad7222db8","affectsGlobalScope":true},{"version":"fd45f5d7408b4ade5b812478e612b59801d371e4b8e467cf1b1aca46acd1564a","affectsGlobalScope":true},{"version":"b9241ecb5024beeaeb98fb558000dbc55e650576e572d194508f52807af6bcba","affectsGlobalScope":true},"e29267438b18703287cd3b9cd05627bec136ac5ea107bf9a5321205e0e46f203","b911176e7778c30f6549f86daae0353c53730eb0ee59b6476f1072cb51ab1af3","f8cc7ac396a3ea99a6959ddbaf883388260e035721216e5971af17db61f11f0b","895bedc6daf4f0da611480f24f65df818ea9e01404e4bf5927043dbf4eeed4d1","ea4facc7918e50e285a4419f7bc7ffdf978385899a3cf19ef7d7b782b896616d","8db893a4613484d4036337ffea6a5b675624518ad34597a8df255379802001ab","5828081db18ff2832ce9c56cc87f192bcc4df6378a03318775a40a775a824623","33b7db19877cf2f9306524371fcfc45dcb6436c8e905472ede7346c9f044bf20","b8eb76852bc6e72782541a2725580b1c3df02a0c96db570b0a7681567aeed598","6a7b38162c0cff2af6d2cbd4a98cfac6c0ea4fb1b5700c42f648de9b8c2e8e1f","19828d5df3be9b94598e5c25d783b936fcccaa226a2820bacee9ea94dc8aff2f","5d45955831c840d09b502ce6726a06435866b4736978e235a7d817ed45990df7","3bdf7ca46ef934ee671b3dd0e3d4cddcaecfe6146811b330743acdfb8e60f36c","8729ee70018ed080e16a420b8a912ff4b4ab3cbdca924b47cef6674715c10b47","efbab75b0f6371a4bf3f9e97863acffe2d76aad2ee5cf5d7666e82b2225fcd49","95f0df8e685a2c5cd1612b83d9a1937676557210d633e4a151e8670650c3b96d","e311e90ded1cd037cbece1bc6649eaa7b65f4346c94ae81ba5441a8f9df93fa3","8eb08fff3569e1b9eddb72e9541a21e9a88b0c069945e8618e9bc75074048249","d596c650714d80a93a2fe15dce31ed9a77c2f2b1b9f4540684eaf271f05e2691","8f9fb9a9d72997c334ca96106095da778555f81ac31f1d2a9534d187b94e8bf6","aea632713de6ee4a86e99873486c807d3104c2bf704acef8d9c2567d0d073301","1adb14a91196aa7104b1f3d108533771182dc7aaea5d636921bc0f812cfee5f5","8d90bb23d4e2a4708dbf507b721c1a63f3abd12d836e22e418011a5f37767665","8cb0d02bb611ea5e97884deb11d6177eb919f52703f0e8060d4f190c97bb3f6c","78880fa8d163b58c156843fda943cc029c80fac5fb769724125db8e884dce32d","7856bc6f351d5439a07d4b23950aa060ea972fd98cbc5add0ad94bfc815f4c4c","ce379fb42f8ba7812c2cb88b5a4d2d94c5c75f31c31e25d10073e38b8758bd62","9d3db8aef76e0766621b93a1144069623346b9cfccf538b67859141a9793d16d","13fb62b7b7affaf711211d4e0c57e9e29d87165561971cc55cda29e7f765c44f","8868c445f34ee81895103fd83307eadbe213cfb53bbc5cd0e7f063e4214c49b0","277990f7c3f5cbbf2abd201df1d68b0001ff6f024d75ca874d55c2c58dd6e179","a31dfa9913def0386f7b538677c519094e4db7ce12db36d4d80a89891ef1a48f","f4c0c7ee2e447f369b8768deed1e4dd40b338f7af33b6cc15c77c44ff68f572d","2f268bd768d2b35871af601db7f640c9e6a7a2364de2fd83177158e0f7b454dc","dd591496573e7e1d5ff32c4633d663c91aef86dad520568ef344ce08bba21218","a004a3b60f23fcfb36d04221b4bef155e11fd57293ba4f1c020a220fadf0fc85","4e145e72e5600a49fa27282d63bb9715b19343d8826f91be0f324af73bc25322","62f734f7517d2ca3bf02abddaf8abf7e3de258667a63e8258373658bbb9153b6","df99236666c99f3e5c22c886fc4dba8156fed038057f7f56c4c39a0c363cc66a","b4bce232891b663cc0768f737f595a83de80b74671db22b137570ef2dc6b86ef","781b566c3eccba1a2cafbb827fb6fc02d5147c89a40e11c7892057481a195270","c9befaf90879c27ee3f7f12afd15b4531fbbea9ec37d145b83807a67d9f55c82","8630f26d1038328e6b9da9c082f6fa911903bc638499baa6cfab002b5a70af96","73474d70a9b4f02771119085c4cd7562be4169e7973544c9541341ca2931aa3d","54da497c3b3b94fae91a66ed222e21411dc595a17f9e6bd229e233d0de732691","803da2f4e024efa2edc55c67d35c5240e7ae599baf9263b453acd02127a582e9","b8b070df71250096699ad55a106d161d403347ed335f72c5ae8485e5d858524d","a9716557f56781aef13d6d3c5dafc61236f64bfd48d462c4848a7eca25f924ff","3d15b5e24065431bf7831b8e84000c0e767d921135af86ef0b0c034f14df5d8f","a563202fc316d8926dc83759cec155d5c028a7828996cbd283470ac7e8c58727","e5c004f39619ebaaa2475b18e949e12e51ff629132f48d56608081e5f0195577","e6b7a14eb53f023f455f4513b6a560f004fa1ebf6cc298b479be796541e322e6","771bf8091a4e40be8f539648b5a0ff7ecba8f46e72fc16acc10466c4c1304524","cb66d1c49ad20e7246b73671f59acaaaac72c58b7e37faae69ae366fd6adf1d3","e5c1c52655dc3f8400a3406fd9da0c4888e6b28c29de33bee51f9eaeda290b4d","1e28ee6d718080b750621e18befe236487df6685b37c17958520aaf777b7aeff","8891345dbe1920b9ed3f446a87de27b5cd6b2053112f6ff3975a661f9a03ec34","a72e21b05b937630b97b1d36bb76b879bb243a021516aef10701775f2da7f872","4debe398f42800c1359d60396fc76aa4fa34a23a96b597672b5c284fd81c0158","a720d8028d38f2b94855967789252c6148957dcd24e280d193b78db00eb3a099","1b0818297187a33e2c24c39145b409e11624523d32364edc22bceaf1f4c86f1b","332e362ba8bd05237c661ba685b2c37e9cde5e0876cb81bf515d15623bdee74c","84648722d2b1f16c55cb68dbfaf18b913a13a78274641f7236eeb4d7088f6db8","f63d313c2673117608b3ed762ac07f618ee873bee3764406b06bcfcb5a713afe","2e2a2a0f7ef2a7587cfe40a96dbca31e8badb15a8a42bf042fe7a63abc9e2f27","2bb32fb3f0fe14c48170dcad3d2a501c1883516d4da9cbd0a2043d90c9789a7b","352532af4d27bdf545d9bb20f0c55758138327404bd86f0934edc7ded76be7e6","64d93f4a24f8a70b64658a7d9b9e96bd46ad498ad5dc9cdb9d52da547e77ff68","8a728de3047a1dadcb69595e74c3d75bc80a2c8165f8cf875ab610042a137fbe","3eafed0be4b194295bcde379e7d083779d0f27f31b715738a3beac49547dc613","7e74740cb7a937af187118ae4582fbe5d4d30b34e9cddec2bd7f7a865e7824ca","8cdf90b59995b9f7c728a28e7af5dc4431f08f3346e6c16af49f548461a3e0aa","1d472b3eedeeaab5418ea6563734fffc68c404feac91900633e7126bee346590","6cf7182d798892394143549a7b27ed27f7bcf1bf058535ec21cc03f39904bfb3","abe524377702be43d1600db4a5a940da5c68949e7ac034c4092851c235c38803","daf4418239ceadb20481bff0111fe102ee0f6f40daaa4ee1fdaca6d582906a26","8a5c5bc61338c6f2476eb98799459fd8c0c7a0fc20cbcd559bb016021da98111","644cf9d778fa319c8044aed7eeb05a3adb81a1a5b8372fdc9980fbdd6a61f78e","d2c6adc44948dbfdece6673941547b0454748e2846bb1bcba900ee06f782b01d","d80b7e2287ee54b23fe6698cb4e09b1dabc8e1a90fb368e301ac6fbc9ad412e2","924a87be1fd1b097c863b31f2cbc3c09eb85ec33044edde88325b028823f03e4",{"version":"7e5b8316e2977e8cc41f030cff4b7d8132c72fd8cce07d57580ab427cb3eb447","affectsGlobalScope":true},"816f825b072afd246eb3905cf51528d65e6fe51c12a1f8fb370c93bb0e031c9b","f6a64974d6fab49d27f8b31578a08662b9a7f607de3b5ec2d7c45b3466d914fd","a8e9d24cd3dc3bd95b34eb6edeac7525b7fdbe23b373554bdc3e91572b8079ee","1d5fd841722ce9aa05b9d602153c15914108bdaa8154bdd24eddadb8a3df586c","14788c10b66324b98feee7a2567eb30d1066e11506e54bf1215b369d70da4932","316785de2c0af9fbd9f2191904670e880bc3836671dd306236675515e481973a","070d805e34c4b9a7ce184aabb7da77dc60f2bdb662349cf7fc23a2a69d17de8d","092deae5b432b6b04f8b4951f1478c08862e832abd4477315dba6ea0c39f1d9e","27d668b912bf3fd0a4ddf3886a8b405eed97505fdc78a9f0b708f38e3e51655d","72654e8bed98873e19827d9a661b419dfd695dbc89fd2bb20f7609e3d16ebd50","66bdb366b92004ba3bf97df0502b68010f244174ee27f8c344d0f62cb2ac8f1e","ae41e04ff8c248ab719fe7958754e8d517add8f1c7abcc8d50214fd67c14194d","558008ff2f788e594beaa626dfcfb8d65db138f0236b2295a6140e80f7abd5d2",{"version":"6573e49f0f35a2fd56fd0bb27e8d949834b98a9298473f45e947553447dd3158","affectsGlobalScope":true},{"version":"e04ea44fae6ce4dc40d15b76c9a96c846425fff7cc11abce7a00b6b7367cbf65","affectsGlobalScope":true},{"version":"7526edb97536a6bba861f8c28f4d3ddd68ddd36b474ee6f4a4d3e7531211c25d","affectsGlobalScope":true},"3c499fc4aad3185e54006bdb0bd853f7dd780c61e805ab4a01a704fa40a3f778",{"version":"13f46aaf5530eb680aeebb990d0efc9b8be6e8de3b0e8e7e0419a4962c01ac55","affectsGlobalScope":true},"17477b7b77632178ce46a2fce7c66f4f0a117aa6ef8f4d4d92d3368c729403c9",{"version":"700d5c16f91eb843726008060aebf1a79902bd89bf6c032173ad8e59504bc7ea","affectsGlobalScope":true},"7a4182e3f8307e61eff58065c5a38eded7d9ec304969f97bef24b3cf92df6fcf",{"version":"b0b314030907c0badf21a107290223e97fe114f11d5e1deceea6f16cabd53745","affectsGlobalScope":true},"bdd74f4d3eb096bacc888670c8fde00697443b53d425ae09e8116cc54aeada91",{"version":"f659d54aa3496515d87ff35cd8205d160ca9d5a6eaf2965e69c4df2fa7270c2c","affectsGlobalScope":true},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"f3e7a4075f7edc952560ec2254b453bfc8496d78e034768052347e088537694b","affectsGlobalScope":true},"8947b7adb40a06017867a5319ff04b550ddd8deea2a698b02c026e1b1c9d673f",{"version":"cc8e57cfe18cd11c3bab5157ec583cfe5d75eefefe4b9682e54b0055bf86159f","affectsGlobalScope":true},"75f6112942f6aba10b3e2de5371ec8d40a9ab9ab05c8eb8f98a7e8e9f220c8a2",{"version":"8a3b75fccc93851209da864abe53d968629fab3125981b6f47008ec63061eb39","affectsGlobalScope":true},"21eca4eb922da0be3e03c91a6095d459e907b96e896e87a4903c8de7fab81e10",{"version":"d6f55de9010fbefe991546d35da3f09ae0e47afae754cb8a4c867fd7e50dcec0","affectsGlobalScope":true},"4c9cc66b2a67160b3c16203bc1d95ebc8552d9e69c8ac33983679901342350e6",{"version":"1ce2f82236ecdd61ff4e476c96d83ce37d9f2a80601a627fe1d3048e8648f43c","affectsGlobalScope":true},"d14c44fdfbd6728a876c82346116f55799ab36fe3416a57c38592873f6ca289f",{"version":"592e99b73ae40c0e64ce44b3e28cea3d7149864f2f3cbc6ccb71f784373ade97","affectsGlobalScope":true},"6752a5cac85e950580080eb26a57d1ab780e276619a6f308d2cd034eb887aa5a",{"version":"8f8ebce0e991de85323524170fad48f0f29e473b6dd0166118e2c2c3ba52f9d6","affectsGlobalScope":true},"c627aec75d8c8b0d67e5d53bfea424c5320adba14f4bce1a3d9019172cb90e0a",{"version":"f877e78f5304ec3e183666aab8d5a1c42c3a617ff616d27e88cc6e0307641beb","affectsGlobalScope":true},"52d20eaf7b71d562ec1bce759fefbc6be2234e964a25f320313bdcd11e4c7a96",{"version":"4fc0006f46461bb20aac98aed6c0263c1836ef5e1bbf1ca268db4258ed6a965e","affectsGlobalScope":true},"bf6faf0053e821110fe22a402fb973121737d47f7a1644f9f6640fb9b2564975",{"version":"867954bf7772a2979c5c722ef216e432d0d8442e995e6018e89a159e08d5d183","affectsGlobalScope":true},"d2c363832b21d368b3339ded5da4dffb32dafd7f035f0114458637ff63336a03",{"version":"544f8c58d5e1b386997f5ae49c6a0453b10bd9c7034c5de51317c8ac8ea82e9a","affectsGlobalScope":true},"b95c6093224ea793f79007fdae1790210972edce3809b8cc5fd6687e5402e872",{"version":"ae9b62dd72bf086ccc808ba2e0d626d7d086281328fc2cf47030fd48b5eb7b16","affectsGlobalScope":true},"b03e600a48c41adfad25cda292a2bcd87963f7fce09f3561978482f9f6530fc4",{"version":"cc1bddca46e3993a368c85e6a3a37f143320b1c13e5bfe198186d7ed21205606","affectsGlobalScope":true},"34cb99d3f4d6e60c5776445e927c460158639eeb8fd480e181943e93685e1166",{"version":"c77843976650a6b19c00ed2ede800f57517b3895b2437d01efc623f576ef1473","affectsGlobalScope":true},"cdbc83f7ffd6ced2a9347d6616c41c5d30326f81902022ba8deb1ae3d4eb35ed",{"version":"5ebba285fdef0037c21fcbef6caad0e6cc9a36550a33b59f55f2d8d5746fc9b2","affectsGlobalScope":true},"85397e8169bdc706449ae59a849719349ecef1e26eef3e651a54bb2cc5ba8d65",{"version":"2b8dc33e6e5b898a5bca6ae330cd29307f718dca241f6a2789785a0ddfaa0895","affectsGlobalScope":true},"0cb3f58c4ad6c2eef5f7b40451a0281ae4cd5ab8cc3e5320fae84690ff500aa7",{"version":"dde8acfb7dd736b0d71c8657f1be28325fea52b48f8bdb7a03c700347a0e3504","affectsGlobalScope":true},"1c67f4f4abcd094bdeb01590394b11fe1b5784beafb7867327151e7ba96bcae4",{"version":"34c9c31b78d5b5ef568a565e11232decf3134f772325e7cd0e2128d0144ff1e5","affectsGlobalScope":true},"cc933b52ffb2b40c2fde19e0b625d2a603268560484401868289b7f278697c20",{"version":"60cc5b4f0a18127b33f8202d0d0fde56bc5699f4da1764b62ed770da2d5d44f1","affectsGlobalScope":true},"52ea53eb829f3974e6df31b647141373a81dcf2984999e8e0bba373959e97d1c",{"version":"d11fa2d42f762954eb4a07a0ab16b0a46aa6faf7b239f6cd1a8f5a38cb08edcd","affectsGlobalScope":true},"6a456f781a651f1448cec63a68f9d80b0be27b3f938809a091499cf4011de574",{"version":"781afd67249e2733eb65511694e19cdcdb3af496e5d8cdee0a80eba63557ff6e","affectsGlobalScope":true},"534f8e119cb864548aa2324c377ad949048598dd30c426f8da8b34e41c510405",{"version":"f3275e1f0e5852b1a50fd3669f6ad8e6e04db94693bcfb97d31851e63f8e301e","affectsGlobalScope":true},"21012c7a9eb67b1ead28ea6f96f615d6aed87408c11d7cbfc160eea4081b38ee",{"version":"8a6ecff784dafbdb121906a61009670121882523b646338196099d4f3b5761d8","affectsGlobalScope":true},"1d5f5827fdeb0d59f76a1ee6caf0804d5d3c260e60e465b0b62baea333199e62",{"version":"256bdff4c082d9f4e2303138f64c152c6bd7b9dbca3be565095b3f3d51e2ab36","affectsGlobalScope":true},"e54b9396195081999aaf2fa151809966fe298087ab8bc81e789931213be7c5ba",{"version":"e214a2a7769955cd4d4c29b74044036e4af6dca4ab9aaa2ed69286fcdf5d23b3","affectsGlobalScope":true},"b7389c085aea3ead2a5de80344332a034ca179cb5947ef59ab8a697f7c29140a",{"version":"25659b24ac2917dbfcbb61577d73077d819bd235e3e7112c76a16de8818c5fd6","affectsGlobalScope":true},"35307f141e8b2db7741387574632f3d7bf0bbb9a27602c1801fc90be4d131fc2",{"version":"7402e6ca4224d9c8cdd742afd0b656470ea6a5efe2229644418198715bb4b557","affectsGlobalScope":true},"2100b1985cd2bb2c4a0837ed6ddbd141783a4c6f01c7c3ac51c81e2235a13ba5",{"version":"242b00f3d86b322df41ed0bbea60ad286c033ac08d643b71989213403abcdf8a","affectsGlobalScope":true},"d35b5bda34cf06bc634ef85f4f7312a0bfaf8f873d59db88ea68cc525878a366",{"version":"4dc6e0aeb511a3538b6d6d13540496f06911941013643d81430075074634a375","affectsGlobalScope":true},"fda81b5f8570324354889e9761e9b00a55a60643ec0c696a8da7d9b51eba3c2e",{"version":"7ed57d9cb47c621d4ef4d4d11791fec970237884ff9ef7e806be86b2662343e8","affectsGlobalScope":true},"6762bc8285db5ec4ca014919eae07c806a6135501ebba342d43673f4ab80f75a",{"version":"5bd49ff5317b8099b386eb154d5f72eca807889a354bcee0dc23bdcd8154d224","affectsGlobalScope":true},"1d5156bc15078b5ae9a798c122c436ce40692d0b29d41b4dc5e6452119a76c0e",{"version":"bd449d8024fc6b067af5eac1e0feb830406f244b4c126f2c17e453091d4b1cb3","affectsGlobalScope":true},"e4e93a3f1680ff0725aab5f3a6ab166bd18006a9a6fbc26376d54f83474233eb",{"version":"dd5eab3bb4d13ecb8e4fdc930a58bc0dfd4825c5df8d4377524d01c7dc1380c5","affectsGlobalScope":true},"f011eacef91387abfde6dc4c363d7ffa3ce8ffc472bcbaeaba51b789f28bd1ef",{"version":"ceae66bbecbf62f0069b9514fae6da818974efb6a2d1c76ba5f1b58117c7e32e","affectsGlobalScope":true},"4101e45f397e911ce02ba7eceb8df6a8bd12bef625831e32df6af6deaf445350",{"version":"07a772cc9e01a1014a626275025b8af79535011420daa48a8b32bfe44588609c","affectsGlobalScope":true},"b5d0ad34c02203be4298ceb0e8b4b9cbc60360c9e61e44bb8e137e1c6acef3b7",{"version":"b5ba8cc21f51aa722217ae9f352104920ada8fc6247742c347ecd9b4ce2ffef1","affectsGlobalScope":true},"455d2321daecfef11d8c8239e174622538381d6cf46c87433d9df40a770535bf",{"version":"4d13cccdda804f10cecab5e99408e4108f5db47c2ad85845c838b8c0d4552e13","affectsGlobalScope":true},"c10947d77f28d0fe34224e8f7e1214a0bba856c9eaf4db1b4830f071fedb4d9a",{"version":"7ced457d6288fcb2fa3b64ddcaba92dbe7c539cc494ad303f64fc0a2ab72157d","affectsGlobalScope":true},"8f9e44dc3ce7b4d808f34db76f28c8d67fa6d7a0579bec6bf09db3537a3588f1",{"version":"e43efe2e9817e572702de60bb11a60c1af4243b7304f0eb767b96a7a0760f7af","affectsGlobalScope":true},"c04859b7e76b1abbc7ecc5c1c16c855b8b526e337a7982c8d13c397804386d4c",{"version":"725128203f84341790bab6555e2c343db6e1108161f69d7650a96b141a3153be","affectsGlobalScope":true},"c7cc27f7342962767a1794e7b6a2194cebeb6821c26d4a9b0b910d33216071f8",{"version":"947bf6ad14731368d6d6c25d87a9858e7437a183a99f1b67a8f1850f41f8cedd","affectsGlobalScope":true},"8eda6e4644c03f941c57061e33cef31cfde1503caadb095d0eb60704f573adee",{"version":"0538a53133eebb69d3007755def262464317adcf2ce95f1648482a0550ffc854","affectsGlobalScope":true},"4f4cac2852bf2884ab3b2a565022db3373d7ef8b81eb3484295707fbd2363e37",{"version":"7a204f04caa4d1dff5d7afbfb3fcbbe4a2eb6b254f4cd1e3bdcfe96bb3399c0b","affectsGlobalScope":true},"4a5259be4d6c85a4cd49745fb1d29d510a4a855e84261ad77d0df8585808292c",{"version":"220f860f55d18691bedf54ba7df667e0f1a7f0eed11485622111478b0ab46517","affectsGlobalScope":true},"3bee701deb7e118ea775daf8355be548d8b87ddf705fe575120a14dcace0468a",{"version":"9c473a989218576ad80b55ea7f75c6a265e20b67872a04acb9fb347a0c48b1a0","affectsGlobalScope":true},"bf7fc4f1fa20f81f3a8467bcbed0b74983d41b2616e6e4ab61587fa842979d28",{"version":"20b41a2f0d37e930d7b52095422bea2090ab08f9b8fcdce269518fd9f8c59a21","affectsGlobalScope":true},"dbac1f0434cde478156c9cbf705a28efca34759c45e618af88eff368dd09721d",{"version":"0f864a43fa6819d8659e94d861cecf2317b43a35af2a344bd552bb3407d7f7ec","affectsGlobalScope":true},"855391e91f3f1d3e5ff0677dbd7354861f33a264dc9bcd6814be9eec3c75dc96",{"version":"ebb2f05e6d17d9c9aa635e2befe083da4be0b8a62e47e7cc7992c20055fac4f0","affectsGlobalScope":true},"aee945b0aace269d555904ab638d1e6c377ce2ad35ab1b6a82f481a26ef84330",{"version":"9fb8ef1b9085ff4d56739d826dc889a75d1fefa08f6081f360bff66ac8dd6c8d","affectsGlobalScope":true},"d9d44786804e9bf2bddcc62adf7384f0a92f27bac091de5098c689e685bbe17e",{"version":"e1425c8355feaaca104f9d816dce78025aa46b81945726fb398b97530eee6b71","affectsGlobalScope":true},"eae663da2201b45295aa8e88a326cab843f490bda1b3b9b12cc91d25f2b62778",{"version":"42c6b2370c371581bfa91568611dae8d640c5d64939a460c99d311a918729332","affectsGlobalScope":true},"590155b280f2902ebb42a991e9f4817ddf6558e5eb197deb3a693f5e0fc79bd9",{"version":"867b000c7a948de02761982c138124ad05344d5f8cb5a7bf087e45f60ff38e7c","affectsGlobalScope":true},"22f681c95782179fcc779ee940f4f810048fb3ce60c089fa3903c13b3e092f95",{"version":"02c22afdab9f51039e120327499536ac95e56803ceb6db68e55ad8751d25f599","affectsGlobalScope":true},"e9e9e16cad091365ef4ac67945713cade5b1fece819f69df074bf8b8623f8b78",{"version":"37129ad43dd9666177894b0f3ce63bba752dc3577a916aa7fe2baa105f863de3","affectsGlobalScope":true},"01364e0e44e63be62244368f1e6f9a340e95c662ebb81f6875e676f969cc52bc",{"version":"31f709dc6793c847f5768128e46c00813c8270f7efdb2a67b19edceb0d11f353","affectsGlobalScope":true},"6c04df817a89fd711e8c84f0fe888706aab8735dbe7f2533e200afbec2ee495f",{"version":"018847821d07559c56b0709a12e6ffaa0d93170e73c60ee9f108211d8a71ec97","affectsGlobalScope":true},"17dd17a89a9fac4f0a0de8f40af8bc9aab9707111e445e52ae05bfe774ac7bd8",{"version":"7832e8fe1841bee70f9a5c04943c5af1b1d4040ac6ff43472aeb1d43c692a957","affectsGlobalScope":true},"e4b23a4b3f0a4929ec2a4cea441e07df881f9bdae6a9fc027eb2e602518f65f1",{"version":"013853836ed002be194bc921b75e49246d15c44f72e9409273d4f78f2053fc8f","affectsGlobalScope":true},"0e9a7364eaf09801cbb8cf0118441d5f7f011fc0060c60191587526c448974c4",{"version":"e08392a815b5a4a729d5f8628e3ed0d2402f83ed76b20c1bf551d454f59d3d16","affectsGlobalScope":true},"047f4e7ce8c15a34e6f5ed72a7c4c675d56e58c0e15220c54b9c9b182a3a888f",{"version":"5768572c8e94e5e604730716ac9ffe4e6abecbc6720930f067f5b799538f7991","affectsGlobalScope":true},"087b18cc2f9aa5a02201a9b47691f4ca91dc7b5f7b26587d05f576435a71df5f",{"version":"a66b1e872740efbfde3bc205646e623b5daebd60c493222614c083c3ffd1aec1","affectsGlobalScope":true},"d0984177c1dc95545541f477fb0df1fb76e7454a943c98ed208dc0da2ff096b2",{"version":"f366ca25885ab7c99fc71a54843420be31df1469f8556c37d24f72e4037cb601","affectsGlobalScope":true},"a05b412a93ba43d2d6e9c81718dea87a42c7e4f9e8b1efbaafee03a94eaf4b7a",{"version":"163cc945edad3584b23de3879dbad7b538d4de3a6c51cc28ae4115caee70ce21","affectsGlobalScope":true},"916e25422aad85365d2d98e9176bfdae7eee59ae8d7036d79610c305fe3322d0",{"version":"d604893d4e88daade0087033797bbafc2916c66a6908da92e37c67f0bad608db","affectsGlobalScope":true},"1756a8d31627b1a7eea08ae74ab348c3b9b311a7b86683583c73a09f30a2bb75",{"version":"dc265f24d2ddad98f081eb76d1a25acfb29e18f569899b75f40b99865a5d9e3b","affectsGlobalScope":true},"26a2700863203c2c0bf1dbab144d182b4608db68c11c38b692110e5dc19de8b0",{"version":"8c139b169259645bc50a1d0fb860837434c7c5933f891fd44266eb6dd35da072","affectsGlobalScope":true},"46faa2ce0d71cf2e0cac1dd1aa277988504715ce9dd89fba0fd5ae1b7036377c",{"version":"41ffc155348dd4993bc58ee901923f5ade9f44bc3b4d5da14012a8ded17c0edd","affectsGlobalScope":true},"a2d9f3ffc5a3fc79e9bb0d5635ce409e830478df392c4233eef1f1b3d85535cd",{"version":"3e8e0655ed5a570a77ea9c46df87eeca341eed30a19d111070cf6b55512694e8","affectsGlobalScope":true},"f04e8e078f6555aa519de47b8f2b51e7b37f63265f99328f450ee0fe74c12b97","9fdb680426991c1c59b101c7f006e4963247c2a91b2750f48e63f9f6278a772c",{"version":"cc4c74d1c56e83aa22e2933bfabd9b0f9222aadc4b939c11f330c1ed6d6a52ca","affectsGlobalScope":true},"b0672e739a3d2875447236285ec9b3693a85f19d2f5017529e3692a3b158803d",{"version":"8a2e0eab2b49688f0a67d4da942f8fd4c208776631ba3f583f1b2de9dfebbe6c","affectsGlobalScope":true},"ed807fdf710a88e953d410b7971cad71aae21c0aff856657960e09ded50b5775",{"version":"f6266ada92f0c4e677eb3fbf88039a8779327370f499690bf9720d6f7ad5f199","affectsGlobalScope":true},"c03bcada0b059d1f0e83cabf6e8ca6ba0bfe3dece1641e9f80b29b8f6c9bcede",{"version":"f2eac49e9caa2240956e525024bf37132eae37ac50e66f6c9f3d6294a54c654c","affectsGlobalScope":true},"ace629691abf97429c0afef8112cc0c070189ff2d12caee88e8913bdd2aaad25",{"version":"99a71914dd3eb5d2f037f80c3e13ba3caff0c3247d89a3f61a7493663c41b7ea","affectsGlobalScope":true},"25a12a35aeee9c92a4d7516c6197037fc98eee0c7f1d4c53ef8180ffc82cb476",{"version":"b4646ac5ca017c2bb22a1120b4506855f1cef649979bf5a25edbead95a8ea866","affectsGlobalScope":true},"54d94aeec7e46e1dab62270c203f7907ca62e4aaa48c6cdcfed81d0cd4da08f3",{"version":"f9585ff1e49e800c03414267219537635369fe9d0886a84b88a905d4bcfff998","affectsGlobalScope":true},"03181d99adbd00cb0b1bab6387829cebf635a0fe3f7461d094310effd54ca7af","f280aeceb876ec38168b19809629cbffb3f7a26ac1ef326b64294a307c57261b",{"version":"1ff9449d1efdebef55b0ba13fe7f04b697c264e73ec05f41f7633dd057468b2d","affectsGlobalScope":true},"275093c8de5268c39e47072f6b4892e11358729eebd3c11f884060a248e30d93",{"version":"7c160037704eee2460c7de4a60f3379da37180db9a196071290137286542b956","affectsGlobalScope":true},"78c8b42462fba315c6537cf728f8d67ad8e1270868e6c0f289dd80677f1fa2e9",{"version":"4681d15a4d7642278bf103db7cd45cc5fe0e8bde5ea0d2be4d5948186a9f4851","affectsGlobalScope":true},"91eb719bcc811a5fb6af041cb0364ac0993591b5bf2f45580b4bb55ddfec41e2","05d7cf6a50e4262ca228218029301e1cdc4770633440293e06a822cb3b0ef923",{"version":"78402a74c2c1fc42b4d1ffbad45f2041327af5929222a264c44be2e23f26b76a","affectsGlobalScope":true},"cc93c43bc9895982441107582b3ecf8ab24a51d624c844a8c7333d2590c929e2",{"version":"c5d44fe7fb9b8f715327414c83fa0d335f703d3fe9f1045a047141bfd113caec","affectsGlobalScope":true},"f8b42b35100812c99430f7b8ce848cb630c33e35cc10db082e85c808c1757554",{"version":"ba28f83668cca1ad073188b0c2d86843f9e34f24c5279f2f7ba182ff051370a4","affectsGlobalScope":true},"349b276c58b9442936b049d5495e087aef7573ad9923d74c4fbb5690c2f42a2e",{"version":"ad8c67f8ddd4c3fcd5f3d90c3612f02b3e9479acafab240b651369292bb2b87a","affectsGlobalScope":true},"1954f24747d14471a5b42bd2ad022c563813a45a7d40ba172fc2e89f465503e2",{"version":"05bbb3d4f0f6ca8774de1a1cc8ba1267fffcc0dd4e9fc3c3478ee2f05824d75d","affectsGlobalScope":true},"52cd63ca2640be169c043b352573f2990b28ba028bae123a88970dd9b8404dc9",{"version":"154145d73e775ab80176a196c8da84bfc3827e177b9f4c74ddfac9c075b5b454","affectsGlobalScope":true},"89d80fcd9316e1cfad0b51c524a01da25f31dfcf669a4a558be0eb4c4d035c34",{"version":"177f63e11e00775d040f45f8847afdb578b1cac7ab3410a29afe9b8be07720f0","affectsGlobalScope":true},"37e69b0edd29cbe19be0685d44b180f7baf0bd74239f9ac42940f8a73f267e36",{"version":"afba2e7ffca47f1d37670963b0481eb35983a6e7d043c321b3cfa2723cab93c9","affectsGlobalScope":true},"bb146d5c2867f91eea113d7c91579da67d7d1e7e03eb48261fdbb0dfb0c04d36",{"version":"90b95d16bd0207bb5f6fedf65e5f6dba5a11910ce5b9ffc3955a902e5a8a8bd5","affectsGlobalScope":true},"3698fee6ae409b528a07581f542d5d69e588892f577e9ccdb32a4101e816e435",{"version":"26fc7c5e17d3bcc56ed060c8fb46c6afde9bc8b9dbf24f1c6bdfecca2228dac8","affectsGlobalScope":true},"46fd8192176411dac41055bdb1fdad11cfe58cdce62ccd68acff09391028d23f",{"version":"22791df15401d21a4d62fc958f3683e5edc9b5b727530c5475b766b363d87452","affectsGlobalScope":true},"b152da720b9df12994b65390bb47bbb1d7682a3b240a30f416b59c8fc6bc4e94","cefffd616954d7b8f99cba34f7b28e832a1712b4e05ac568812345d9ce779540",{"version":"a365952b62dfc98d143e8b12f6dcc848588c4a3a98a0ae5bf17cbd49ceb39791","affectsGlobalScope":true},"af0b1194c18e39526067d571da465fea6db530bca633d7f4b105c3953c7ee807",{"version":"b58e47c6ff296797df7cec7d3f64adef335e969e91d5643a427bf922218ce4ca","affectsGlobalScope":true},"76cbd2a57dc22777438abd25e19005b0c04e4c070adca8bbc54b2e0d038b9e79","4aaf6fd05956c617cc5083b7636da3c559e1062b1cadba1055882e037f57e94c","171ad16fb81daf3fd71d8637a9a1db19b8e97107922e8446d9b37e2fafd3d500",{"version":"d4ce8dfc241ebea15e02f240290653075986daf19cf176c3ce8393911773ac1b","affectsGlobalScope":true},{"version":"52cd0384675a9fa39b785398b899e825b4d8ef0baff718ec2dd331b686e56814","affectsGlobalScope":true},{"version":"2eea0af6c75c00b1e8f9745455888e19302cbeeadde0215b53335ca721110b6a","affectsGlobalScope":true},{"version":"64f9b52124ff239ae01e9bdf31fd8f445603e58015f2712c851ee86edf53de2f","affectsGlobalScope":true},{"version":"769c459185e07f5b15c8d6ebc0e4fec7e7b584fd5c281f81324f79dd7a06e69c","affectsGlobalScope":true},{"version":"c947df743f2fd638bd995252d7883b54bfef0dbad641f085cc0223705dfd190e","affectsGlobalScope":true},"db78f3b8c08924f96c472319f34b5773daa85ff79faa217865dafef15ea57ffb","8ae46c432d6a66b15bce817f02d26231cf6e75d9690ae55e6a85278eb8242d21"],"root":[1328],"options":{"inlineSources":true,"module":99,"noEmitOnError":false,"noImplicitAny":false,"noImplicitThis":true,"outDir":"../../../../.uvue/app-android","rootDir":"../../../../.tsc/app-android","skipLibCheck":true,"sourceMap":true,"strict":true,"target":99,"tsBuildInfoFile":"./.tsbuildInfo","useDefineForClassFields":false},"fileIdsList":[[46,48,50,1322,1323,1324],[1107,1121,1318,1321,1323,1324,1325,1326],[1034,1040],[1106],[1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105],[1029,1030,1031,1032,1033,1035,1037,1039,1041],[1079],[1040,1044],[1081],[1100],[1036],[1041],[1035,1040,1051],[1040,1049],[1029,1030,1031,1032,1033,1037,1040,1041,1049,1050],[1080],[1040],[1049,1050,1051,1096],[1033,1041,1082,1085],[1028,1033,1038,1042,1049,1077,1078,1082,1083],[1038,1040],[1084],[1042],[1032,1040],[1040,1041],[1040,1051],[1040,1049,1050,1051],[1044],[46,48,50,1039,1322,1323],[1320],[1319],[1122,1123,1268,1283,1290,1313,1315,1317],[1316],[1314],[1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229,1231,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267],[1124],[1126],[1128],[1130],[1134],[1136],[1138],[1140],[1142],[1144],[1146],[1148],[1150],[1152],[1154],[1156],[1158],[1160],[1162],[1164],[1166],[1168],[1170],[1172],[1174],[1176],[1178],[1180],[1182],[1184],[1186],[1188],[1190],[1192],[1194],[1196],[1198],[1200],[1202],[1204],[1206],[1208],[1210],[1212],[1214],[1216],[1218],[1220],[1222],[1224],[1226],[1228],[1230],[1232],[1234],[1236],[1238],[1240],[1242],[1244],[1246],[1248],[1250],[1252],[1254],[1256],[1258],[1260],[1262],[1264],[1266],[1270,1272,1274,1276,1278,1280,1282],[1269],[1271],[1273],[1275],[1277],[1279],[1281],[1285,1287,1289],[1284],[640,914],[1286],[1288],[1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312],[1311],[1299],[1295],[1293],[1309],[1301],[1297],[1303],[1305],[1291],[1307],[1044,1051],[1120],[1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119],[1051],[1044,1051,1104],[51,1022,1023,1024,1025],[1021],[914],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],[46,48,50,1323,1324],[44],[44,45,46,48],[41,48,49,50],[42],[41,46,48,1323,1324],[45,46,47,50,1323,1324],[29,30,31,32,33,34,35,36,37,38,39],[33],[36],[33,35],[54,466,483,484,486],[54,130,218,466,709,714,715],[466,716],[230,466,709,713,716,737,818],[466,717,737,818],[54,130,466,716],[466],[200,466,665,818,914,1000,1004,1005,1006,1007,1009],[466,547,691,692,914],[54,200,466,665,818],[466,995,1006],[54,77,156,200,230,428,451,466,467,468,472,476,480,533,547,640,650,658,662,665,671,689,691,694,695,698,721,725,747,776,812,818,837,850,851,863,876,913,914,915,920,922,923,925,926,927,930,932,934,937,942,943,944,947,948,949,951,953,958,961,980,982,983,991,992,996,997,998,999,1003,1010,1011,1020],[466,658,850,851,946,948,952],[466,480,1021],[466,480,483,484,486,671,860,863],[54,200,451,466,472,480,547,658,659,694,695,716,737,747,818,851,863,876,914,920,922,925,941,951,982,985,986,991,1021],[284,466,519],[466,483,485,486],[230,451,466,472,480,984,986,992,993,994,995],[200,466],[466,480,818,914,992,996],[156,200,466,818,992],[451,466,472,480,989,990],[54,466,480,989],[54,466,480,483,484,486,504,863,875,876,914,935,936],[284,466,538],[466,480,863,937],[54,200,230,466,483,484,486,545,959,960],[54,200,451,466,483,484,486,830,937],[146,230,466,486,585,603,818,914,950],[466,480,863,914,915,937,1021],[156,428,466,1012,1013,1014,1015,1016,1017,1019],[466,480,1012,1013],[466,480,1012],[466,480,1012,1013,1018],[200,466,480,483,484,486],[200,466,483,484,486],[466,914,1021],[54,466,483,484,486,914],[466,473,480,863,909,914],[466,480],[200,466,483,484,486,671,724,828,859,863],[200,466,671,827,863,914],[200,466,476,483,484,486],[466,658],[466,850],[54,62,130,466,483,484,486,914],[54,218,451,466,472,480,578,581,658,671,776,837,841,847,848,849,851,854,914],[54,466,480,578,671],[64,218,466,480,578,581,671,776,837,838,854,855],[153,283,466,480,483,484,486,671],[54,67,68,218,229,230,466,479,480,578,581,640,671,776,831,832,833,835,837,838,839,840,854,855,856,858,914],[200,466,830],[54,87,115,150,153,212,466,477,483,484,486,852,853],[54,68,119,200,229,230,245,428,449,466,480,503,504,534,547,579,580,582,640,658,659,660,661,662,665,671,773,844,849,850,859,863,875,876,881,896,901,902,907,908,910,913,915],[466,849],[54,68,119,229,230,245,428,449,466,480,503,504,534,579,580,582,640,658,659,662,665,671,773,844,849,850,859,863,875,876,881,896,901,902,907,908,910,913,914,915,945],[54,58,130,200,212,218,245,466,480,483,484,486,545,547,659,669,671,859,860,862,896,914,915],[466,483,484,486,914],[78,177,212,466,483,484,486,502,671,846,859,863,879,880],[54,466,671],[466,538],[54,466,483,484,486,504,863,873,874,875,914],[466,480,863,876],[54,451,466,472,914,987,988],[466,989],[54,466,989],[54,466,483,484,486,652],[212,466,483,484,486,502,845,861],[200,212,466,483,484,486,502,666,842,843,896,914],[54,127,466,844,896],[466,483,484,486],[230,466,483,484,486],[466,483,666,844],[466,483,484,486,865],[466,483,484,486,871],[466,483,484,486,666],[54,200,466,483,484,486],[466,483,484,486,667,844,848,862,864,865,866,867,868,869,870,871],[77,200,230,428,466,504,640,668,876,886,887,889,890,891,892,893],[54,466,483,484,486,885],[466,886],[200,466,483,484,486,589,640,888],[200,466,589,640,889],[65,67,68,230,428,466,476,540,876,889],[200,466,483,484,486,640,671,863,875],[200,212,466,483,484,486,640,671],[200,466,480,483,546,548,665,896],[54,127,466,666,896],[77,200,212,230,428,466,480,535,536,537,539,540,541,542,543,545,548,658,659,665,667,668,844,848,862,863,865,867,868,872,875,876,877,878,881,882,884,894,895,915],[466,483,484,486,915],[230,466],[466,483,484,846],[200,466,483,484,486,666,896],[466,483,484,486,502,845,846,847],[200,466,483,484,486,502,665,848,862,868,881,883,896],[54,127,466,884,896],[466,483,484,486,502,845],[466,483,484,486,870],[65,466,472,480,483,484,486,578,579,580],[64,68,466,548,581],[466,483,484,486,659,662],[54,62,266,466,483,484,486,590],[466,581],[230,466,655],[64,65,466,578,653,654,914],[54,68,200,466,480,547,548,581,582,618,619,629,651,656,657,658,660,661,665],[284,404,466],[659,661,665],[64,200,466,618,657,659,660,665],[64,466,547],[466,473,915],[146,212,466,911,912],[212,466],[466,913],[466,483,486,839],[466,483,484,486,857],[466,480,839,858],[229,466,504,671],[65,230,466,480,671,834,835,836,859],[466,907],[65,466],[466,837,901],[54,146,172,174,230,266,449,466,776,837,854,898,901,902,904,905,906],[466,837,897,900,907],[466,901,902,903],[466,901,902,904],[466,898],[466,899],[466,578,899],[67,252,466,483,484,486,492,603,612,623,627,628,629,630,638,639,650],[466,628,638,640],[466,606,607,640],[200,466,545,585,603,604,610,612,613,620,621,622,624,625,630,640,641,643,648,649],[54,466],[54,466,631,632,633,634,635,637],[466,632,638],[54,160,466,636,638],[68,156,466,544,545,547,549,608,610,626,642,643,650,657,659,660,662,663,664],[156,466,665],[466,659,662,665],[466,483,484,486,494,504,610,640,643,660,665,671,829,914],[466,665],[54,260,449,466,585,590,591,612],[466,613,614],[466,613,615],[466,483,484,486,640],[54,466,483,484,486,545],[54,451,466,585,602],[252,257,466,585,623],[68,466,612,650],[466,545,585,612,626,640,650],[466,545,604],[200,266,466,545,590,591,592,593,594,595,596,604,605,607,608,609,610,611,618],[200,208,230,267,270,278,336,337,338,443,466,585,597,598,599,600,601,603],[466,650],[200,466,545,585,603,604,610,612,613,621,622,624,630,640,641,643,648,650],[54,466,483,484,486,544],[54,466,483,484,486,545,604,625],[466,545,606,607,608,610,640,646],[466,545,603,612,642,644,647],[466,607,623,645],[466,603,606],[466,504,781,782],[466,783],[284,466],[466,545,594],[54,449,466,582,584,617],[449,466,472,582,583,618],[466,615,616,618],[64,466,483,484,486],[230,466,511,513,516],[64,466,515],[146,230,466,514],[466,511,513,515],[466,483,484,486,512],[466,513],[414,466,488],[466,488],[466,488,508],[230,466,488,489,490,491,492,504,505,507,509],[64,288,466,483,484,486],[466,506],[54,58,62,78,212,229,266,466,586,587,588],[466,589],[54,200,466,480,483,484,486,640,671,970],[200,466,480,640,671,971],[54,200,212,466,483,484,486,640,971,972],[200,230,466,480,504,533,914,937,969,973,976,977,978,979],[200,230,466,480,969,973,976],[466,483,484,486,526],[200,230,466,480,483,484,486,975],[200,466,480,483,484,486,974],[200,466,480,975],[54,62,212,230,449,466,483,484,486,670],[466,671],[54,212,466,476],[54,58,130,200,218,245,466,473,474,475,476,477,478,479,483,484,486],[466,775],[466,484,486,523,524],[466,523,525],[54,156,466,494,495,502,503],[466,494],[466,470,471,472,483],[466,473],[54,266,466,483,484,486,589],[466,498,501,502],[67,68,466],[54,156,466,480,483,484,486,493,504],[466,472,496,497],[466,472],[54,466,473,483,484,486,494,504],[54,283,466],[54,58,126,140,146,176,218,230,245,284,466,471,472,473,474,476,478,479,480,481,482],[466,483,484,485],[245,466,483,484],[54,466,483],[65,449,466,472,483,484,486,504,550,551,559,577],[285,466],[54,67,68,130,466,475,483,484,486],[466,480,483,484,486,504],[466,484,486,522],[466,523],[466,523,526,527],[466,525,527,528],[54,466,824,825],[200,466,826],[54,200,466],[466,820],[466,818,819,820,821],[466,612],[466,547,604,914],[156,466,737,818,914],[54,130,230,466,545,547,709,716,737,818,914,938,939,940],[466,545,941],[466,941],[466,737,927,941],[283,284,466],[283,284,404,466],[54,135,139,146,212,229,466],[54,130,466],[54,62,86,466],[200,466,629],[200,466,483,484,486,688],[466,689],[54,200,230,288,466,480,483,484,486,545,678,679,681,682,683,684,685,818],[466,680],[466,681],[466,479],[146,466,483,484,486,626,686],[230,466,480,686],[200,230,466,486,686,818],[54,200,466,483,484,486,545,590,626,686],[54,200,466,818,922,923,924,925],[466,920,922,926],[466,545,818,923,926],[466,818,914,918,920,921],[130,466,547,710,726,727,729,914],[466,728],[466,709],[466,547,690,710,728,818,914],[466,603],[466,545,626,761,765,767],[54,466,483,484,486,818],[466,480,483,484,486,812,813],[466,480,812,814],[64,200,230,466,544,733,734,814,818],[466,480,483,484,486,671,860],[200,466,665,694,818,922],[54,466,582,658,659,662,914,946],[77,428,466,545,629,638,696,705,770,771,772],[54,230,466,544,545,604,703],[466,544,545,604,704],[466,816],[54,466,483,484,486,604],[54,466,483,484,486,724,860],[230,466,483,484,486,487,510,517,521,528,529,530],[466,484,486,531],[200,212,230,466,480,483,484,486,502,590,798,799],[77,119,200,428,466,480,504,533,585,776,799,801,802,803,804,805,806,807,809,810],[466,483,484,486,671,724],[466,805],[230,466,476,483,484,486,808],[230,466,476,809],[466,799],[54,466,483,484,486,518,520,533],[466,519],[54,466,468,469,483,484,486,518,521,532],[466,533],[54,466,533],[466,547,737,818,914,933,934,981],[466,547,818,914],[466,547,818,914,933],[200,466,533,863,915,921],[466,914,922],[200,466,610,643,660,665,694,818,863,916,917,919,921],[466,920],[466,483,484,486,532,603,719,720],[466,789,818],[54,466,483,484,486,640,659,914],[54,466,483,484,486,696],[77,156,466,545,776,785],[466,545,696,784],[466,531],[200,466,665,818,920,922],[466,483,484,486,545,650,780,783],[404,466],[466,483,484,486,762,763,764,767],[466,765],[65,77,428,466,483,484,486,492,545,626,762,765,766],[466,545,650,784,965,966,968],[466,967],[156,466,966,967],[229,466,483,484,486,673],[229,466,674],[126,200,229,466,480,483,484,486,672,676,677,823,826],[146,466,480,827],[200,332,466,480,483,484,486,590,674,675],[200,332,466,480,590,674,676],[466,480,483,484,486],[466,677,818,822],[466,545,684,721,818],[466,483,484,486,722],[54,200,466,480,483,484,486,794],[200,466,480,795],[54,466,483,484,486,589],[466,818],[54,212,466,483,484,486,733,795,796],[466,733,795,797],[54,77,146,156,200,218,229,230,428,466,468,469,473,478,480,504,533,545,547,549,603,610,612,626,640,643,647,650,658,659,660,661,665,686,687,689,695,696,698,700,707,708,711,718,721,723,725,728,732,733,738,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,768,769,773,779,786,787,788,789,790,792,793,797,800,811,815,817,860,914,923,926],[466,480,686,687,689,737,818],[245,466,483,484,486,739],[466,707,818],[466,721,818],[466,694,695,818],[466,725,818],[466,533,818],[77,146,200,218,229,230,466,480,533,545,547,626,658,686,689,691,692,693,696,698,699,700,707,708,711,712,717,718,721,723,725,729,734,735,736,818,914,923,926],[466,547,690,914],[466,547,691,914],[466,691,818],[466,480,545,689,695,696,698,818,923,926],[200,466,480,590,603,731,732,733],[230,466,730],[466,731],[200,230,466,473,480,504,532,533,658,661,665,671,691,698,721,768,786,818,914,927,941,942,944,963,964,968,980,982],[230,466,533,689,721,818,920,922,923,926,930,943],[466,962,983],[466,545],[54,466,483,484,486,791],[466,792],[54,466,544,545,701,702,704,705,706],[466,700,708,710],[466,544],[230,466,700,707,711],[466,777],[466,710,774,776,778],[466,779],[77,119,428,466,736,773,818,928,929,930,931],[200,466,473,483,484,486,691],[466,545,707],[54,200,466,737,818,836],[200,466,547,737,914,954],[466,737,818,1008],[200,466,547,665,721,737,745,914,922,1001,1002],[466,547,691,692,914,1000],[466,697],[466,957],[466,956],[288,333,466,818,955],[64,466],[54,58,62,63,69,230,249,250,267,443,446,447,448,466],[68,424,449,466,472],[67,424,449,466,472],[67,466],[65,67,466],[65,66,466],[54,65,67,200,201,266,267,280,449,466],[54,67,200,201,266,267,449,450,466],[65,253,254,450,466],[65,66,200,201,466],[54,58,62,466],[199,466],[52,53,54,55,56,57,58,68,69,70,73,76,233,234,235,465],[68,69,244,466],[230,282,283,466],[283,404,466],[54,62,86,200,466],[231,233,466],[232,466],[230,232,233,466],[77,78,128,466],[58,466],[55,56,69,466],[254,466],[55,56,466],[55,466],[52,53,54,55,75,466],[52,53,55,57,71,72,74,466],[52,54,55,71,72,466],[53,56,466],[52,54,55,56,75,466],[52,55,56,234,466],[52,466],[54,58,466],[54,58,62,199,200,201,466],[54,146,156,245,282,283,466,499,500],[283,466,501],[58,281,282,451,466],[60,466,553],[54,60,65,212,466,553,554,558,563],[54,58,466,552],[54,230,244,466,553],[54,59,60,466],[54,60,65,212,466,553,554,566,568,577],[54,61,65,67,68,212,466,553,576],[466,564],[466,565],[54,58,62,69,466],[54,58,61,63,68,466],[54,62,251,252,254,255,256,257,258,259,466],[414,466],[54,212,260,337,338,339,425,426,427,430,443,466],[415,417,466],[54,65,127,146,229,283,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,387,388,400,410,413,466],[54,60,260,416,418,423,466,554,557,559,560,562,575],[212,260,337,338,340,415,416,417,419,421,422,423,425,443,466],[64,414,424,466],[260,417,466],[466,552,553,562],[466,552,553,560,561],[54,60,212,414,466,554],[466,569,570],[417,423,466,575],[415,416,466,575],[260,414,466],[260,415,466],[260,418,466],[54,414,421,466,555,572,573],[54,466,555,574],[65,77,212,466,572],[54,60,466,554,560,567,575,576],[54,60,260,416,418,423,466,554,560,575,577],[414,420,466],[54,466,555,572,573,574],[466,555,572],[414,466,556,557,563,568,571,576],[54,62,199,200,201,251,252,253,466],[54,62,145,212,254,260,266,466],[54,62,251,252,466],[54,334,466],[54,62,271,333,466],[439,466],[243,466],[439,440,466],[65,78,129,433,466],[65,129,212,272,437,438,441,443,466],[54,279,285,335,466],[54,62,63,78,129,200,208,230,267,268,269,270,272,273,274,275,276,277,278,336,337,338,442,449,466],[443,466],[54,63,67,68,146,212,230,277,337,338,419,424,430,431,432,433,434,435,436,442,443,466],[272,273,274,276,466],[230,275,466],[65,271,276,466],[252,260,466],[237,238,465,466],[54,58,246,248,456,466],[54,58,78,230,458,466],[54,58,459,461,466],[58,69,457,462,466],[465,466],[54,58,236,466],[58,237,244,466],[54,242,466],[237,243,245,463,464,466],[54,68,126,135,139,146,212,229,244,452,455,466],[247,466],[54,58,459,460,466],[54,146,212,304,307,466],[54,305,466],[54,58,130,305,306,308,309,310,466],[304,466],[54,146,290,316,321,466],[54,62,127,286,287,289,291,293,294,299,303,314,315,321,330,466],[54,62,127,286,287,289,291,293,294,298,299,300,314,317,321,330,333,466],[54,62,146,212,230,266,290,292,293,295,298,300,302,303,315,316,317,318,320,333,466],[54,230,286,287,289,316,321,466],[54,62,127,286,287,289,291,292,293,294,298,299,300,314,318,321,330,333,466],[266,286,291,292,293,294,295,299,466],[58,146,230,290,292,293,298,300,302,303,315,316,317,318,320,322,323,324,327,331,332,333,466],[54,288,298,319,333,466],[54,58,62,200,230,286,287,289,466],[200,201,212,266,290,291,293,294,298,310,311,312,313,321,466],[54,212,266,466],[54,58,62,200,286,287,289,291,292,293,294,298,299,300,320,328,332,466],[288,298,320,333,466],[54,58,180,200,286,287,289,291,292,293,294,298,299,300,301,303,314,315,316,318,320,321,322,325,326,328,329,330,332,333,466],[54,58,200,286,287,289,291,292,293,294,298,299,300,301,314,316,317,318,320,326,327,328,330,332,333,466],[54,58,62,200,286,287,289,291,292,293,294,298,299,300,314,320,327,329,331,333,466],[54,58,62,127,200,286,287,289,291,292,293,294,298,299,300,301,314,320,326,327,329,330,331,332,333,466],[54,58,62,200,286,287,289,291,292,293,294,298,299,300,314,320,327,328,330,333,466],[54,58,200,230,286,287,289,315,321,325,327,466],[291,292,294,466],[286,466],[230,286,289,466],[146,266,286,289,290,292,293,466],[293,466],[286,288,466],[54,58,291,466],[54,58,62,288,300,331,333,466],[54,58,230,288,296,300,331,333,466],[54,58,200,286,287,289,291,292,293,294,298,299,300,301,314,316,317,318,320,326,327,328,330,331,333,466],[54,58,146,212,266,293,295,297,300,466],[54,58,62,146,286,291,292,293,294,297,298,299,466],[54,78,229,466],[54,78,131,215,229,230,466],[54,136,137,146,212,229,466],[54,58,134,466],[54,131,212,229,466],[54,58,77,78,127,128,130,172,177,215,216,217,229,230,466],[54,62,78,79,80,81,82,83,84,85,87,115,127,128,133,146,153,176,177,180,200,201,203,207,208,212,213,214,218,228,230,466],[54,123,124,125,126,466],[54,172,174,466],[405,466],[156,466],[54,156,229,230,271,427,428,429,466],[271,466],[54,58,62,130,333,466],[54,244,466],[116,466],[78,466],[54,126,466],[127,135,466],[126,466],[54,58,126,130,135,138,139,146,212,229,466],[54,58,78,128,130,132,212,229,466],[54,58,126,130,135,139,146,212,229,244,453,466],[119,466],[77,466],[54,135,139,140,146,212,229,466],[58,128,130,133,212,229,466],[54,78,127,128,172,229,466],[54,78,466],[54,58,130,212,229,230,261,262,263,264,265,466],[266,466],[54,146,230,466],[119,121,466],[54,126,127,129,134,135,139,140,141,145,208,212,229,230,466],[54,127,466],[54,78,213,466],[54,77,126,155,156,177,180,466],[54,116,155,156,187,189,466],[54,119,155,156,193,199,466],[54,121,155,156,163,183,466],[54,78,149,151,154,466],[54,77,115,116,152,466],[54,77,119,152,153,466],[54,77,121,150,152,466],[54,67,68,212,244,281,450,451,452,454,466],[58,183,189,199,466],[54,78,128,129,133,208,210,211,229,466],[54,127,146,212,229,466],[54,127,128,212,466],[77,117,118,120,122,127,466],[54,77,116,117,128,466],[54,77,117,119,128,466],[54,77,117,121,128,466],[54,128,466],[64,78,128,156,466],[126,139,155,173,174,212,466],[78,116,118,128,139,149,155,157,158,159,160,161,179,180,183,184,185,186,187,188,190,199,466],[116,189,466],[78,119,120,128,139,147,148,154,155,176,179,180,183,189,190,191,192,193,194,195,196,197,198,466],[119,199,466],[78,121,122,128,139,151,155,162,163,164,165,166,167,168,169,170,179,180,181,182,189,190,199,466],[121,183,466],[54,77,123,124,125,126,127,135,139,155,171,172,174,175,176,177,178,179,183,189,199,230,466],[54,77,180,466],[54,58,78,127,128,130,132,209,213,229,466],[54,58,212,239,240,241,466],[54,78,153,223,466],[54,387,466],[54,382,383,385,386,466],[387,466],[54,383,384,387,466],[54,383,385,387,466],[54,230,449,466],[78,205,208,444,445,446,449,466],[444,449,466],[449,466],[206,466],[58,204,205,207,466],[62,226,466],[62,227,466],[54,78,129,222,223,224,466],[205,225,466],[54,62,153,219,221,225,227,466],[205,228,466],[62,220,466],[62,221,466],[54,62,78,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,127,129,133,146,200,201,203,207,212,213,229,230,466],[54,388,407,408,466],[54,388,409,466],[54,283,388,400,401,402,403,406,409,466],[54,388,400,410,466],[54,283,388,411,412,466],[54,413,466],[54,391,466],[54,390,466],[54,393,394,395,397,466],[54,391,392,396,398,466],[390,391,396,397],[399,466],[54,399,466],[54,283,388,389,392,398,466]],"referencedMap":[[1323,1],[1327,2],[1035,3],[1107,4],[1106,5],[1040,6],[1080,7],[1103,8],[1082,9],[1101,10],[1037,11],[1036,12],[1099,13],[1044,12],[1078,14],[1051,15],[1081,16],[1041,17],[1097,18],[1095,12],[1094,12],[1093,12],[1092,12],[1091,12],[1090,12],[1089,12],[1088,12],[1087,19],[1084,20],[1086,12],[1039,21],[1042,12],[1085,22],[1077,23],[1076,12],[1074,12],[1073,12],[1072,24],[1071,12],[1070,12],[1069,12],[1068,12],[1067,25],[1066,12],[1065,12],[1064,12],[1063,12],[1061,26],[1062,12],[1059,12],[1058,12],[1057,12],[1060,27],[1056,12],[1055,17],[1054,28],[1053,28],[1052,26],[1048,28],[1047,28],[1046,28],[1045,28],[1043,23],[1324,29],[1321,30],[1320,31],[1318,32],[1317,33],[1315,34],[1268,35],[1125,36],[1127,37],[1129,38],[1131,39],[1135,40],[1137,41],[1139,42],[1141,43],[1143,44],[1145,45],[1147,46],[1149,47],[1151,48],[1153,49],[1155,50],[1157,51],[1159,52],[1161,53],[1163,54],[1165,55],[1167,56],[1169,57],[1171,58],[1173,59],[1175,60],[1177,61],[1179,62],[1181,63],[1183,64],[1185,65],[1187,66],[1189,67],[1191,68],[1193,69],[1195,70],[1197,71],[1199,72],[1201,73],[1203,74],[1205,75],[1207,76],[1209,77],[1211,78],[1213,79],[1215,80],[1217,81],[1219,82],[1221,83],[1223,84],[1225,85],[1227,86],[1229,87],[1231,88],[1233,89],[1235,90],[1237,91],[1239,92],[1241,93],[1243,94],[1245,95],[1247,96],[1249,97],[1251,98],[1253,99],[1255,100],[1257,101],[1259,102],[1261,103],[1263,104],[1265,105],[1267,106],[1283,107],[1270,108],[1272,109],[1274,110],[1276,111],[1278,112],[1280,113],[1282,114],[1290,115],[1285,116],[1284,117],[1287,118],[1289,119],[1313,120],[1312,121],[1300,122],[1296,123],[1294,124],[1310,125],[1302,126],[1298,127],[1304,128],[1306,129],[1292,130],[1308,131],[1108,132],[1121,133],[1120,134],[1114,132],[1115,132],[1109,132],[1110,132],[1111,132],[1112,132],[1113,132],[1117,135],[1118,136],[1116,135],[1026,137],[1022,138],[1023,139],[28,140],[47,141],[45,142],[46,143],[1328,144],[43,145],[50,146],[48,147],[40,148],[35,149],[34,149],[37,150],[36,151],[39,151],[839,152],[716,153],[714,154],[715,154],[717,155],[713,156],[769,157],[709,158],[1010,159],[1000,160],[1004,158],[1005,158],[1006,161],[1007,162],[1021,163],[467,158],[953,164],[948,165],[952,165],[949,166],[992,167],[985,168],[986,169],[996,170],[984,171],[993,172],[994,158],[995,173],[991,174],[990,175],[937,176],[935,177],[936,178],[961,179],[998,152],[959,180],[951,181],[950,158],[1011,182],[1020,183],[1014,184],[1015,185],[1016,184],[1017,184],[1019,186],[1018,187],[1013,188],[1012,189],[849,190],[910,191],[909,192],[860,193],[828,194],[724,195],[850,196],[851,197],[915,198],[855,199],[841,200],[856,201],[838,202],[859,203],[831,204],[854,205],[914,206],[534,158],[945,207],[946,208],[863,209],[669,210],[881,211],[879,212],[880,213],[876,214],[873,215],[874,177],[989,216],[987,217],[988,218],[812,152],[652,152],[653,219],[862,220],[861,158],[844,221],[842,222],[869,223],[895,224],[845,225],[864,223],[866,226],[865,223],[877,227],[867,228],[882,229],[872,230],[894,231],[886,232],[885,233],[887,223],[889,234],[888,235],[890,236],[891,158],[892,237],[893,238],[666,239],[546,240],[896,241],[535,158],[536,242],[537,158],[539,213],[540,243],[541,158],[542,223],[543,158],[847,244],[878,245],[667,245],[848,246],[884,247],[883,248],[868,249],[870,152],[871,250],[668,152],[581,251],[582,252],[660,253],[658,254],[654,255],[656,256],[655,257],[659,258],[619,259],[662,260],[661,261],[548,262],[908,263],[913,264],[911,265],[912,266],[832,152],[840,267],[858,268],[857,269],[833,158],[834,158],[835,270],[837,271],[902,272],[836,158],[898,273],[897,274],[907,275],[901,276],[904,277],[903,278],[899,279],[900,280],[906,281],[905,158],[640,282],[664,283],[645,284],[650,285],[623,286],[608,158],[638,287],[633,288],[637,289],[636,286],[665,290],[549,291],[663,292],[830,293],[829,294],[649,158],[613,295],[615,296],[614,297],[616,286],[583,286],[639,298],[544,299],[609,158],[603,300],[624,301],[651,302],[641,303],[642,304],[612,305],[591,158],[594,286],[604,306],[601,158],[600,158],[605,158],[630,307],[696,152],[644,308],[545,309],[585,299],[626,310],[647,311],[648,312],[646,313],[607,314],[783,315],[781,316],[782,317],[622,318],[618,319],[584,320],[617,321],[611,158],[530,158],[772,152],[492,322],[511,152],[517,323],[516,324],[515,325],[514,326],[513,327],[512,328],[488,158],[505,329],[508,330],[509,331],[490,158],[510,332],[489,330],[766,333],[506,330],[507,334],[589,335],[587,336],[526,152],[971,337],[970,338],[973,339],[972,223],[980,340],[977,341],[969,342],[978,152],[976,343],[975,344],[974,345],[671,346],[670,347],[475,348],[480,349],[776,350],[775,158],[525,351],[524,352],[504,353],[495,354],[473,355],[470,356],[471,356],[590,357],[503,358],[491,359],[494,360],[498,361],[496,158],[497,362],[493,363],[999,364],[483,365],[486,366],[485,367],[484,368],[578,369],[550,370],[551,370],[846,223],[476,371],[979,372],[875,152],[527,152],[523,373],[522,374],[528,375],[529,376],[798,158],[826,377],[824,378],[825,379],[821,380],[822,381],[819,158],[820,382],[940,383],[927,384],[941,385],[938,386],[939,387],[942,388],[538,389],[519,390],[481,391],[547,158],[629,286],[787,392],[502,158],[760,286],[960,393],[479,286],[474,152],[478,392],[482,392],[657,394],[739,223],[689,395],[788,396],[686,397],[678,229],[679,158],[681,398],[680,399],[682,400],[683,158],[684,401],[687,402],[688,403],[685,404],[926,405],[923,406],[924,407],[919,408],[918,158],[728,409],[729,410],[726,158],[710,411],[735,412],[690,158],[727,413],[768,414],[761,158],[733,415],[732,229],[814,416],[813,417],[815,418],[789,419],[695,420],[694,158],[947,421],[773,422],[770,152],[771,152],[704,423],[703,424],[816,223],[817,425],[706,426],[997,223],[725,427],[962,158],[531,428],[487,158],[532,429],[801,188],[803,188],[800,430],[807,188],[804,223],[805,158],[811,431],[810,432],[806,433],[799,188],[809,434],[808,435],[802,436],[521,437],[518,158],[520,438],[533,439],[468,440],[469,441],[982,442],[933,443],[934,444],[981,158],[922,445],[925,446],[920,447],[916,448],[917,448],[721,449],[719,158],[720,286],[790,450],[718,451],[705,452],[786,453],[785,454],[943,455],[921,456],[784,457],[780,458],[765,459],[763,460],[767,461],[764,158],[762,158],[967,462],[965,458],[966,463],[968,464],[674,465],[673,466],[827,467],[672,468],[676,469],[675,470],[677,471],[823,472],[759,473],[723,474],[795,475],[794,476],[722,477],[793,478],[797,479],[796,480],[818,481],[738,482],[740,483],[741,158],[742,484],[743,478],[744,485],[745,478],[746,478],[747,486],[748,487],[749,478],[750,485],[751,485],[752,488],[753,478],[754,478],[755,478],[756,158],[757,485],[758,488],[737,489],[691,490],[692,491],[693,478],[736,492],[712,294],[699,493],[734,494],[731,495],[730,496],[983,497],[944,498],[963,499],[964,500],[792,501],[791,502],[707,503],[701,158],[702,158],[711,504],[700,505],[708,506],[777,505],[778,507],[779,508],[774,509],[932,510],[928,458],[929,458],[930,511],[931,512],[1008,513],[955,514],[954,160],[1009,515],[1003,516],[1001,517],[1002,448],[697,158],[698,518],[958,519],[957,520],[956,521],[65,522],[449,523],[249,158],[250,158],[472,158],[580,524],[579,525],[280,526],[66,158],[68,527],[285,389],[67,528],[281,529],[451,530],[452,531],[58,158],[450,532],[55,286],[201,171],[64,158],[853,533],[477,393],[200,534],[466,535],[245,536],[130,158],[62,286],[115,393],[284,537],[87,393],[405,538],[153,539],[232,540],[233,541],[231,542],[129,543],[150,539],[86,544],[54,286],[70,545],[253,546],[71,547],[56,548],[76,549],[75,550],[73,551],[57,552],[72,158],[234,549],[74,553],[235,554],[52,158],[53,555],[156,158],[404,389],[852,393],[282,556],[309,557],[501,558],[500,559],[283,560],[278,158],[558,561],[559,562],[553,563],[552,564],[557,158],[61,565],[567,566],[577,567],[60,544],[565,568],[566,569],[554,158],[564,286],[63,570],[69,571],[252,286],[260,572],[251,158],[426,573],[431,574],[418,575],[414,576],[341,158],[342,158],[343,158],[344,158],[345,158],[346,158],[347,158],[348,158],[349,158],[350,158],[351,158],[352,158],[353,158],[354,158],[355,158],[356,158],[357,158],[358,158],[359,158],[360,158],[361,158],[362,158],[363,158],[364,158],[365,158],[366,158],[367,158],[368,158],[369,158],[370,158],[371,158],[372,158],[373,158],[374,158],[375,158],[376,158],[377,158],[378,158],[379,158],[380,158],[381,158],[339,364],[563,577],[424,578],[340,158],[425,579],[423,580],[420,573],[561,581],[562,582],[560,583],[571,584],[569,585],[570,586],[415,587],[416,588],[419,589],[574,590],[573,591],[555,592],[568,593],[576,594],[421,595],[575,596],[556,597],[572,598],[417,587],[254,599],[267,600],[256,601],[335,602],[338,158],[334,603],[440,604],[439,605],[441,606],[436,158],[434,607],[433,286],[435,286],[442,608],[336,609],[337,158],[443,610],[269,158],[268,158],[438,611],[437,612],[275,613],[273,158],[274,158],[276,614],[272,615],[255,601],[258,601],[259,601],[422,616],[257,601],[239,617],[457,618],[246,544],[459,619],[458,544],[462,620],[463,621],[238,622],[236,286],[247,544],[237,623],[464,624],[243,625],[240,158],[241,158],[465,626],[456,627],[248,628],[461,629],[308,630],[304,556],[307,392],[306,631],[311,632],[305,633],[310,286],[324,634],[316,635],[318,636],[321,637],[315,638],[317,639],[303,640],[325,641],[320,642],[288,643],[314,644],[313,645],[333,646],[319,647],[327,648],[331,649],[330,650],[328,651],[329,652],[322,653],[286,158],[293,654],[299,655],[287,656],[291,657],[294,658],[289,659],[292,660],[296,661],[297,662],[332,663],[298,664],[300,665],[131,666],[216,667],[138,668],[136,669],[137,669],[132,670],[218,671],[229,672],[80,158],[81,158],[82,158],[83,158],[79,158],[84,158],[85,158],[127,673],[395,674],[429,158],[406,675],[428,676],[430,677],[427,678],[460,679],[453,680],[159,681],[244,682],[139,286],[135,683],[174,684],[77,286],[161,158],[116,158],[158,158],[188,158],[187,158],[184,158],[186,158],[160,158],[126,286],[191,158],[119,158],[176,158],[195,158],[193,158],[196,158],[197,158],[148,158],[164,158],[121,158],[170,158],[166,158],[163,158],[168,158],[169,158],[181,158],[185,286],[192,286],[182,286],[177,286],[155,158],[123,286],[124,286],[125,286],[172,685],[140,686],[133,687],[454,688],[198,689],[78,690],[141,691],[211,692],[230,693],[215,694],[266,695],[261,696],[265,697],[167,698],[146,699],[134,700],[209,701],[178,702],[190,703],[194,704],[165,705],[152,706],[149,707],[154,708],[151,709],[455,710],[214,711],[217,158],[212,712],[145,713],[213,714],[128,715],[118,716],[120,717],[122,718],[117,719],[179,720],[175,721],[189,722],[157,723],[199,724],[147,725],[183,726],[162,727],[180,728],[171,729],[210,730],[843,533],[242,731],[203,694],[224,732],[388,733],[387,734],[382,735],[385,736],[384,737],[383,158],[386,158],[448,738],[447,739],[445,740],[444,741],[205,158],[223,158],[207,742],[206,743],[204,544],[227,744],[226,745],[225,746],[222,747],[228,748],[219,749],[221,750],[220,751],[208,752],[89,158],[90,158],[91,158],[92,158],[93,158],[94,158],[95,158],[96,158],[97,158],[98,158],[99,158],[100,158],[101,158],[102,158],[103,158],[104,158],[105,158],[106,158],[107,158],[108,158],[109,158],[88,158],[110,158],[111,158],[112,158],[113,158],[114,158],[409,753],[407,754],[408,158],[410,755],[401,756],[402,158],[403,158],[413,757],[411,758],[389,158],[392,759],[391,760],[396,761],[397,762],[393,158],[398,763],[394,158],[390,759],[400,764],[412,765],[399,766]],"exportedModulesMap":[[1323,1],[1327,2],[1035,3],[1107,4],[1106,5],[1040,6],[1080,7],[1103,8],[1082,9],[1101,10],[1037,11],[1036,12],[1099,13],[1044,12],[1078,14],[1051,15],[1081,16],[1041,17],[1097,18],[1095,12],[1094,12],[1093,12],[1092,12],[1091,12],[1090,12],[1089,12],[1088,12],[1087,19],[1084,20],[1086,12],[1039,21],[1042,12],[1085,22],[1077,23],[1076,12],[1074,12],[1073,12],[1072,24],[1071,12],[1070,12],[1069,12],[1068,12],[1067,25],[1066,12],[1065,12],[1064,12],[1063,12],[1061,26],[1062,12],[1059,12],[1058,12],[1057,12],[1060,27],[1056,12],[1055,17],[1054,28],[1053,28],[1052,26],[1048,28],[1047,28],[1046,28],[1045,28],[1043,23],[1324,29],[1321,30],[1320,31],[1318,32],[1317,33],[1315,34],[1268,35],[1125,36],[1127,37],[1129,38],[1131,39],[1135,40],[1137,41],[1139,42],[1141,43],[1143,44],[1145,45],[1147,46],[1149,47],[1151,48],[1153,49],[1155,50],[1157,51],[1159,52],[1161,53],[1163,54],[1165,55],[1167,56],[1169,57],[1171,58],[1173,59],[1175,60],[1177,61],[1179,62],[1181,63],[1183,64],[1185,65],[1187,66],[1189,67],[1191,68],[1193,69],[1195,70],[1197,71],[1199,72],[1201,73],[1203,74],[1205,75],[1207,76],[1209,77],[1211,78],[1213,79],[1215,80],[1217,81],[1219,82],[1221,83],[1223,84],[1225,85],[1227,86],[1229,87],[1231,88],[1233,89],[1235,90],[1237,91],[1239,92],[1241,93],[1243,94],[1245,95],[1247,96],[1249,97],[1251,98],[1253,99],[1255,100],[1257,101],[1259,102],[1261,103],[1263,104],[1265,105],[1267,106],[1283,107],[1270,108],[1272,109],[1274,110],[1276,111],[1278,112],[1280,113],[1282,114],[1290,115],[1285,116],[1284,117],[1287,118],[1289,119],[1313,120],[1312,121],[1300,122],[1296,123],[1294,124],[1310,125],[1302,126],[1298,127],[1304,128],[1306,129],[1292,130],[1308,131],[1108,132],[1121,133],[1120,134],[1114,132],[1115,132],[1109,132],[1110,132],[1111,132],[1112,132],[1113,132],[1117,135],[1118,136],[1116,135],[1026,137],[1022,138],[1023,139],[28,140],[47,141],[45,142],[46,143],[1328,144],[43,145],[50,146],[48,147],[40,148],[35,149],[34,149],[37,150],[36,151],[39,151],[839,152],[716,153],[714,154],[715,154],[717,155],[713,156],[769,157],[709,158],[1010,159],[1000,160],[1004,158],[1005,158],[1006,161],[1007,162],[1021,163],[467,158],[953,164],[948,165],[952,165],[949,166],[992,167],[985,168],[986,169],[996,170],[984,171],[993,172],[994,158],[995,173],[991,174],[990,175],[937,176],[935,177],[936,178],[961,179],[998,152],[959,180],[951,181],[950,158],[1011,182],[1020,183],[1014,184],[1015,185],[1016,184],[1017,184],[1019,186],[1018,187],[1013,188],[1012,189],[849,190],[910,191],[909,192],[860,193],[828,194],[724,195],[850,196],[851,197],[915,198],[855,199],[841,200],[856,201],[838,202],[859,203],[831,204],[854,205],[914,206],[534,158],[945,207],[946,208],[863,209],[669,210],[881,211],[879,212],[880,213],[876,214],[873,215],[874,177],[989,216],[987,217],[988,218],[812,152],[652,152],[653,219],[862,220],[861,158],[844,221],[842,222],[869,223],[895,224],[845,225],[864,223],[866,226],[865,223],[877,227],[867,228],[882,229],[872,230],[894,231],[886,232],[885,233],[887,223],[889,234],[888,235],[890,236],[891,158],[892,237],[893,238],[666,239],[546,240],[896,241],[535,158],[536,242],[537,158],[539,213],[540,243],[541,158],[542,223],[543,158],[847,244],[878,245],[667,245],[848,246],[884,247],[883,248],[868,249],[870,152],[871,250],[668,152],[581,251],[582,252],[660,253],[658,254],[654,255],[656,256],[655,257],[659,258],[619,259],[662,260],[661,261],[548,262],[908,263],[913,264],[911,265],[912,266],[832,152],[840,267],[858,268],[857,269],[833,158],[834,158],[835,270],[837,271],[902,272],[836,158],[898,273],[897,274],[907,275],[901,276],[904,277],[903,278],[899,279],[900,280],[906,281],[905,158],[640,282],[664,283],[645,284],[650,285],[623,286],[608,158],[638,287],[633,288],[637,289],[636,286],[665,290],[549,291],[663,292],[830,293],[829,294],[649,158],[613,295],[615,296],[614,297],[616,286],[583,286],[639,298],[544,299],[609,158],[603,300],[624,301],[651,302],[641,303],[642,304],[612,305],[591,158],[594,286],[604,306],[601,158],[600,158],[605,158],[630,307],[696,152],[644,308],[545,309],[585,299],[626,310],[647,311],[648,312],[646,313],[607,314],[783,315],[781,316],[782,317],[622,318],[618,319],[584,320],[617,321],[611,158],[530,158],[772,152],[492,322],[511,152],[517,323],[516,324],[515,325],[514,326],[513,327],[512,328],[488,158],[505,329],[508,330],[509,331],[490,158],[510,332],[489,330],[766,333],[506,330],[507,334],[589,335],[587,336],[526,152],[971,337],[970,338],[973,339],[972,223],[980,340],[977,341],[969,342],[978,152],[976,343],[975,344],[974,345],[671,346],[670,347],[475,348],[480,349],[776,350],[775,158],[525,351],[524,352],[504,353],[495,354],[473,355],[470,356],[471,356],[590,357],[503,358],[491,359],[494,360],[498,361],[496,158],[497,362],[493,363],[999,364],[483,365],[486,366],[485,367],[484,368],[578,369],[550,370],[551,370],[846,223],[476,371],[979,372],[875,152],[527,152],[523,373],[522,374],[528,375],[529,376],[798,158],[826,377],[824,378],[825,379],[821,380],[822,381],[819,158],[820,382],[940,383],[927,384],[941,385],[938,386],[939,387],[942,388],[538,389],[519,390],[481,391],[547,158],[629,286],[787,392],[502,158],[760,286],[960,393],[479,286],[474,152],[478,392],[482,392],[657,394],[739,223],[689,395],[788,396],[686,397],[678,229],[679,158],[681,398],[680,399],[682,400],[683,158],[684,401],[687,402],[688,403],[685,404],[926,405],[923,406],[924,407],[919,408],[918,158],[728,409],[729,410],[726,158],[710,411],[735,412],[690,158],[727,413],[768,414],[761,158],[733,415],[732,229],[814,416],[813,417],[815,418],[789,419],[695,420],[694,158],[947,421],[773,422],[770,152],[771,152],[704,423],[703,424],[816,223],[817,425],[706,426],[997,223],[725,427],[962,158],[531,428],[487,158],[532,429],[801,188],[803,188],[800,430],[807,188],[804,223],[805,158],[811,431],[810,432],[806,433],[799,188],[809,434],[808,435],[802,436],[521,437],[518,158],[520,438],[533,439],[468,440],[469,441],[982,442],[933,443],[934,444],[981,158],[922,445],[925,446],[920,447],[916,448],[917,448],[721,449],[719,158],[720,286],[790,450],[718,451],[705,452],[786,453],[785,454],[943,455],[921,456],[784,457],[780,458],[765,459],[763,460],[767,461],[764,158],[762,158],[967,462],[965,458],[966,463],[968,464],[674,465],[673,466],[827,467],[672,468],[676,469],[675,470],[677,471],[823,472],[759,473],[723,474],[795,475],[794,476],[722,477],[793,478],[797,479],[796,480],[818,481],[738,482],[740,483],[741,158],[742,484],[743,478],[744,485],[745,478],[746,478],[747,486],[748,487],[749,478],[750,485],[751,485],[752,488],[753,478],[754,478],[755,478],[756,158],[757,485],[758,488],[737,489],[691,490],[692,491],[693,478],[736,492],[712,294],[699,493],[734,494],[731,495],[730,496],[983,497],[944,498],[963,499],[964,500],[792,501],[791,502],[707,503],[701,158],[702,158],[711,504],[700,505],[708,506],[777,505],[778,507],[779,508],[774,509],[932,510],[928,458],[929,458],[930,511],[931,512],[1008,513],[955,514],[954,160],[1009,515],[1003,516],[1001,517],[1002,448],[697,158],[698,518],[958,519],[957,520],[956,521],[65,522],[449,523],[249,158],[250,158],[472,158],[580,524],[579,525],[280,526],[66,158],[68,527],[285,389],[67,528],[281,529],[451,530],[452,531],[58,158],[450,532],[55,286],[201,171],[64,158],[853,533],[477,393],[200,534],[466,535],[245,536],[130,158],[62,286],[115,393],[284,537],[87,393],[405,538],[153,539],[232,540],[233,541],[231,542],[129,543],[150,539],[86,544],[54,286],[70,545],[253,546],[71,547],[56,548],[76,549],[75,550],[73,551],[57,552],[72,158],[234,549],[74,553],[235,554],[52,158],[53,555],[156,158],[404,389],[852,393],[282,556],[309,557],[501,558],[500,559],[283,560],[278,158],[558,561],[559,562],[553,563],[552,564],[557,158],[61,565],[567,566],[577,567],[60,544],[565,568],[566,569],[554,158],[564,286],[63,570],[69,571],[252,286],[260,572],[251,158],[426,573],[431,574],[418,575],[414,576],[341,158],[342,158],[343,158],[344,158],[345,158],[346,158],[347,158],[348,158],[349,158],[350,158],[351,158],[352,158],[353,158],[354,158],[355,158],[356,158],[357,158],[358,158],[359,158],[360,158],[361,158],[362,158],[363,158],[364,158],[365,158],[366,158],[367,158],[368,158],[369,158],[370,158],[371,158],[372,158],[373,158],[374,158],[375,158],[376,158],[377,158],[378,158],[379,158],[380,158],[381,158],[339,364],[563,577],[424,578],[340,158],[425,579],[423,580],[420,573],[561,581],[562,582],[560,583],[571,584],[569,585],[570,586],[415,587],[416,588],[419,589],[574,590],[573,591],[555,592],[568,593],[576,594],[421,595],[575,596],[556,597],[572,598],[417,587],[254,599],[267,600],[256,601],[335,602],[338,158],[334,603],[440,604],[439,605],[441,606],[436,158],[434,607],[433,286],[435,286],[442,608],[336,609],[337,158],[443,610],[269,158],[268,158],[438,611],[437,612],[275,613],[273,158],[274,158],[276,614],[272,615],[255,601],[258,601],[259,601],[422,616],[257,601],[239,617],[457,618],[246,544],[459,619],[458,544],[462,620],[463,621],[238,622],[236,286],[247,544],[237,623],[464,624],[243,625],[240,158],[241,158],[465,626],[456,627],[248,628],[461,629],[308,630],[304,556],[307,392],[306,631],[311,632],[305,633],[310,286],[324,634],[316,635],[318,636],[321,637],[315,638],[317,639],[303,640],[325,641],[320,642],[288,643],[314,644],[313,645],[333,646],[319,647],[327,648],[331,649],[330,650],[328,651],[329,652],[322,653],[286,158],[293,654],[299,655],[287,656],[291,657],[294,658],[289,659],[292,660],[296,661],[297,662],[332,663],[298,664],[300,665],[131,666],[216,667],[138,668],[136,669],[137,669],[132,670],[218,671],[229,672],[80,158],[81,158],[82,158],[83,158],[79,158],[84,158],[85,158],[127,673],[395,674],[429,158],[406,675],[428,676],[430,677],[427,678],[460,679],[453,680],[159,681],[244,682],[139,286],[135,683],[174,684],[77,286],[161,158],[116,158],[158,158],[188,158],[187,158],[184,158],[186,158],[160,158],[126,286],[191,158],[119,158],[176,158],[195,158],[193,158],[196,158],[197,158],[148,158],[164,158],[121,158],[170,158],[166,158],[163,158],[168,158],[169,158],[181,158],[185,286],[192,286],[182,286],[177,286],[155,158],[123,286],[124,286],[125,286],[172,685],[140,686],[133,687],[454,688],[198,689],[78,690],[141,691],[211,692],[230,693],[215,694],[266,695],[261,696],[265,697],[167,698],[146,699],[134,700],[209,701],[178,702],[190,703],[194,704],[165,705],[152,706],[149,707],[154,708],[151,709],[455,710],[214,711],[217,158],[212,712],[145,713],[213,714],[128,715],[118,716],[120,717],[122,718],[117,719],[179,720],[175,721],[189,722],[157,723],[199,724],[147,725],[183,726],[162,727],[180,728],[171,729],[210,730],[843,533],[242,731],[203,694],[224,732],[388,733],[387,734],[382,735],[385,736],[384,737],[383,158],[386,158],[448,738],[447,739],[445,740],[444,741],[205,158],[223,158],[207,742],[206,743],[204,544],[227,744],[226,745],[225,746],[222,747],[228,748],[219,749],[221,750],[220,751],[208,752],[89,158],[90,158],[91,158],[92,158],[93,158],[94,158],[95,158],[96,158],[97,158],[98,158],[99,158],[100,158],[101,158],[102,158],[103,158],[104,158],[105,158],[106,158],[107,158],[108,158],[109,158],[88,158],[110,158],[111,158],[112,158],[113,158],[114,158],[409,753],[407,754],[408,158],[410,755],[401,756],[402,158],[403,158],[413,757],[411,758],[389,158],[392,759],[391,760],[396,761],[397,762],[393,158],[398,763],[394,158],[390,759],[400,764],[412,765],[399,766]],"semanticDiagnosticsPerFile":[1323,1322,1327,1079,1035,1031,1032,1029,1107,1105,1106,1040,1080,1104,1103,1082,1049,1050,1034,1030,1100,1101,1037,1036,1033,1099,1098,1044,1078,1051,1081,1041,1096,1097,1095,1094,1093,1092,1091,1090,1089,1088,1087,1084,1086,1039,1083,1042,1085,1077,1076,1075,1074,1073,1072,1071,1038,1070,1069,1068,1067,1066,1065,1064,1063,1061,1062,1059,1058,1057,1060,1056,1055,1054,1053,1052,1048,1047,1046,1045,1043,1102,1028,1027,1324,1325,1321,1320,1319,1122,1123,1318,1317,1316,1315,1314,1268,1125,1124,1127,1126,1129,1128,1131,1130,1133,1132,1135,1134,1137,1136,1139,1138,1141,1140,1143,1142,1145,1144,1147,1146,1149,1148,1151,1150,1153,1152,1155,1154,1157,1156,1159,1158,1161,1160,1163,1162,1165,1164,1167,1166,1169,1168,1171,1170,1173,1172,1175,1174,1177,1176,1179,1178,1181,1180,1183,1182,1185,1184,1187,1186,1189,1188,1191,1190,1193,1192,1195,1194,1197,1196,1199,1198,1201,1200,1203,1202,1205,1204,1207,1206,1209,1208,1211,1210,1213,1212,1215,1214,1217,1216,1219,1218,1221,1220,1223,1222,1225,1224,1227,1226,1229,1228,1231,1230,1233,1232,1235,1234,1237,1236,1239,1238,1241,1240,1243,1242,1245,1244,1247,1246,1249,1248,1251,1250,1253,1252,1255,1254,1257,1256,1259,1258,1261,1260,1263,1262,1265,1264,1267,1266,1283,1270,1269,1272,1271,1274,1273,1276,1275,1278,1277,1280,1279,1282,1281,1290,1285,1284,1287,1286,1289,1288,1313,1312,1311,1300,1299,1296,1295,1294,1293,1310,1309,1302,1301,1298,1297,1304,1303,1306,1305,1292,1291,1308,1307,1326,1108,1121,1120,1119,1114,1115,1109,1110,1111,1112,1113,1117,1118,1116,51,1026,1022,1023,1024,1025,1,16,2,28,3,26,4,5,17,18,6,20,21,19,27,7,8,9,10,11,12,13,14,24,25,22,23,15,47,45,46,44,1328,42,43,50,49,48,41,40,31,35,32,33,34,37,36,38,39,30,29,839,716,714,715,717,713,769,709,1010,1000,1004,1005,1006,1007,1021,467,953,948,952,949,992,985,986,996,984,993,994,995,991,990,937,935,936,961,998,959,951,950,1011,1020,1014,1015,1016,1017,1019,1018,1013,1012,849,910,909,860,828,724,850,851,915,855,841,856,838,859,831,854,914,534,945,946,863,669,881,879,880,876,873,874,989,987,988,812,652,653,862,861,844,842,869,895,845,864,866,865,877,867,882,872,894,886,885,887,889,888,890,891,892,893,666,546,896,535,536,537,539,540,541,542,543,847,878,667,848,884,883,868,870,871,668,581,582,660,658,654,656,655,659,619,662,661,548,908,913,911,912,832,840,858,857,833,834,835,837,902,836,898,897,907,901,904,903,899,900,906,905,640,627,628,664,645,610,650,620,621,623,608,638,631,633,634,635,632,637,636,665,549,663,830,829,649,613,615,614,616,583,639,544,609,603,602,624,651,641,642,612,592,593,591,594,595,596,604,601,597,598,599,600,605,630,696,643,644,545,585,626,625,647,648,646,607,606,783,781,782,622,618,584,617,611,530,772,492,511,517,516,515,514,513,512,488,505,508,509,490,510,489,766,506,507,589,586,587,588,526,971,970,973,972,980,977,969,978,976,975,974,671,670,475,480,776,775,525,524,504,495,473,470,471,590,503,491,494,498,496,497,493,999,483,486,485,484,578,550,551,846,476,979,875,527,523,522,528,529,798,826,824,825,821,822,819,820,940,927,941,938,939,942,538,519,481,547,629,787,502,760,960,479,474,478,482,657,739,689,788,686,678,679,681,680,682,683,684,687,688,685,926,923,924,919,918,728,729,726,710,735,690,727,768,761,733,732,814,813,815,789,695,694,947,773,770,771,704,703,816,817,706,997,725,962,531,487,532,801,803,800,807,804,805,811,810,806,799,809,808,802,521,518,520,533,468,469,982,933,934,981,922,925,920,916,917,721,719,720,790,718,705,786,785,943,921,784,780,765,763,767,764,762,967,965,966,968,674,673,827,672,676,675,677,823,759,723,795,794,722,793,797,796,818,738,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,737,691,692,693,736,712,699,734,731,730,983,944,963,964,792,791,707,701,702,711,700,708,777,778,779,774,932,928,929,930,931,1008,955,954,1009,1003,1001,1002,697,698,958,957,956,65,449,249,250,472,580,579,280,66,68,285,67,281,451,452,58,450,55,201,64,853,477,200,466,245,130,62,115,284,87,405,153,232,233,231,129,150,86,54,70,253,71,56,76,75,73,57,72,234,74,235,52,53,156,404,852,282,309,501,499,500,283,278,558,559,553,552,557,61,59,567,577,60,565,566,554,564,63,69,252,260,251,426,431,418,414,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,339,563,424,340,425,423,420,561,562,560,571,569,570,415,416,419,574,573,555,568,576,421,575,556,572,417,254,267,256,432,335,338,334,440,439,441,436,434,433,435,442,336,279,277,337,443,269,268,438,437,275,273,274,276,272,255,258,259,422,257,239,457,246,459,458,462,463,238,236,247,237,464,243,240,241,465,456,248,461,308,304,307,306,311,305,310,324,316,318,321,315,317,303,325,323,320,326,288,314,313,312,290,295,333,319,327,331,330,301,328,329,322,302,286,293,299,287,291,294,289,292,296,297,332,298,300,131,216,138,136,137,132,218,229,80,81,82,83,79,84,85,127,395,429,406,428,430,427,271,460,453,159,244,139,135,174,77,161,116,158,188,187,184,186,160,126,191,119,176,195,193,196,197,148,164,121,170,166,163,168,169,181,185,192,182,177,155,123,124,125,172,140,133,454,198,78,141,211,230,215,266,261,262,263,264,265,167,146,134,209,178,190,194,165,152,149,154,151,455,214,217,212,145,213,128,118,120,122,117,179,175,173,189,157,199,147,183,162,180,171,210,843,242,203,224,388,387,382,385,384,383,386,448,447,445,444,446,270,144,142,143,202,205,223,207,206,204,227,226,225,222,228,219,221,220,208,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,88,110,111,112,113,114,409,407,408,410,401,402,403,413,411,389,392,391,396,397,393,398,394,390,400,412,399]},"version":"5.2.2"} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/app.js b/frontend/unpackage/dist/dev/mp-weixin/app.js index 477d714..988dfed 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/app.js +++ b/frontend/unpackage/dist/dev/mp-weixin/app.js @@ -8,7 +8,9 @@ if (!Math) { "./pages/product/list.js"; "./pages/product/submit.js"; "./pages/product/submissions.js"; + "./pages/product/submission-detail.js"; "./pages/product/form.js"; + "./pages/product/product-detail.js"; "./pages/product/categories.js"; "./pages/product/units.js"; "./pages/product/settings.js"; diff --git a/frontend/unpackage/dist/dev/mp-weixin/app.json b/frontend/unpackage/dist/dev/mp-weixin/app.json index d7f635f..56aac5f 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/app.json +++ b/frontend/unpackage/dist/dev/mp-weixin/app.json @@ -6,7 +6,9 @@ "pages/product/list", "pages/product/submit", "pages/product/submissions", + "pages/product/submission-detail", "pages/product/form", + "pages/product/product-detail", "pages/product/categories", "pages/product/units", "pages/product/settings", diff --git a/frontend/unpackage/dist/dev/mp-weixin/app.wxss b/frontend/unpackage/dist/dev/mp-weixin/app.wxss index 06cf346..0d1a927 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/app.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/app.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ /*每个页面公共css */ page { background-color: #ffffff; diff --git a/frontend/unpackage/dist/dev/mp-weixin/common/config.js b/frontend/unpackage/dist/dev/mp-weixin/common/config.js index cc3b27f..10c6f72 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/common/config.js +++ b/frontend/unpackage/dist/dev/mp-weixin/common/config.js @@ -25,8 +25,12 @@ const KPI_ICONS = { monthProfit: "/static/icons/icons8-profit-50.png", stockCount: "/static/icons/product.png" }; +const envAuthLoginImg = typeof process !== "undefined" && process.env && (process.env.VITE_APP_AUTH_LOGIN_TOP_IMAGE || process.env.AUTH_LOGIN_TOP_IMAGE) || ""; +const storageAuthLoginImg = typeof common_vendor.index !== "undefined" ? common_vendor.index.getStorageSync("AUTH_LOGIN_TOP_IMAGE") || "" : ""; +const AUTH_LOGIN_TOP_IMAGE = String(envAuthLoginImg || storageAuthLoginImg || "/static/icons/undraw_visual-data_1eya.png"); exports.API_BASE_URL = API_BASE_URL; exports.API_BASE_URL_CANDIDATES = API_BASE_URL_CANDIDATES; +exports.AUTH_LOGIN_TOP_IMAGE = AUTH_LOGIN_TOP_IMAGE; exports.DEFAULT_USER_ID = DEFAULT_USER_ID; exports.ENABLE_DEFAULT_USER = ENABLE_DEFAULT_USER; exports.KPI_ICONS = KPI_ICONS; diff --git a/frontend/unpackage/dist/dev/mp-weixin/common/constants.js b/frontend/unpackage/dist/dev/mp-weixin/common/constants.js index 8f02f81..255b4ef 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/common/constants.js +++ b/frontend/unpackage/dist/dev/mp-weixin/common/constants.js @@ -29,7 +29,14 @@ const ROUTES = { supplierSelect: "/pages/supplier/select", accountSelect: "/pages/account/select" }; +const KPI_LABELS = { + todaySales: "今日销售额", + monthSales: "本月销售额", + monthProfit: "本月利润", + stockCount: "库存量" +}; exports.EXPENSE_CATEGORIES = EXPENSE_CATEGORIES; exports.INCOME_CATEGORIES = INCOME_CATEGORIES; +exports.KPI_LABELS = KPI_LABELS; exports.ROUTES = ROUTES; //# sourceMappingURL=../../.sourcemap/mp-weixin/common/constants.js.map diff --git a/frontend/unpackage/dist/dev/mp-weixin/common/vendor.js b/frontend/unpackage/dist/dev/mp-weixin/common/vendor.js index df6e7f7..374036c 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/common/vendor.js +++ b/frontend/unpackage/dist/dev/mp-weixin/common/vendor.js @@ -7074,7 +7074,7 @@ function isConsoleWritable() { function initRuntimeSocketService() { const hosts = "198.18.0.1,192.168.31.192,127.0.0.1"; const port = "8090"; - const id = "mp-weixin_t4IBTG"; + const id = "mp-weixin_kiZSAl"; const lazy = typeof swan !== "undefined"; let restoreError = lazy ? () => { } : initOnError(); diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/account/form.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/account/form.wxss index cf855c3..d468640 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/account/form.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/account/form.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/account/ledger.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/account/ledger.wxss index 5ef299d..bb8bfb1 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/account/ledger.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/account/ledger.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/account/select.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/account/select.wxss index 0962f81..be291bc 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/account/select.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/account/select.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.js b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.js index fb549f4..06ed6ca 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.js @@ -1,11 +1,13 @@ "use strict"; const common_vendor = require("../../common/vendor.js"); const common_http = require("../../common/http.js"); +const common_config = require("../../common/config.js"); const _sfc_main = { data() { return { loading: false, tab: "login", + authLoginTopImage: common_config.AUTH_LOGIN_TOP_IMAGE, loginForm: { email: "", password: "" }, regForm: { name: "", email: "", code: "", password: "", password2: "" }, resetForm: { email: "", code: "", password: "", password2: "" }, @@ -18,6 +20,12 @@ const _sfc_main = { this._timers.forEach((t) => clearInterval(t)); }, methods: { + gotoRegister() { + this.tab = "register"; + }, + gotoReset() { + this.tab = "reset"; + }, toast(msg) { try { common_vendor.index.showToast({ title: String(msg || "操作失败"), icon: "none" }); @@ -154,65 +162,64 @@ const _sfc_main = { }; function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { return common_vendor.e({ - a: common_vendor.n($data.tab === "login" ? "active" : ""), - b: common_vendor.o(($event) => $data.tab = "login"), - c: common_vendor.n($data.tab === "register" ? "active" : ""), - d: common_vendor.o(($event) => $data.tab = "register"), - e: common_vendor.n($data.tab === "reset" ? "active" : ""), - f: common_vendor.o(($event) => $data.tab = "reset"), - g: $data.tab === "login" + a: $data.authLoginTopImage, + b: $data.tab === "login" }, $data.tab === "login" ? { - h: $data.loginForm.email, - i: common_vendor.o(common_vendor.m(($event) => $data.loginForm.email = $event.detail.value, { + c: $data.loginForm.email, + d: common_vendor.o(common_vendor.m(($event) => $data.loginForm.email = $event.detail.value, { trim: true })), - j: $data.loginForm.password, - k: common_vendor.o(($event) => $data.loginForm.password = $event.detail.value), - l: $data.loading, - m: common_vendor.o((...args) => $options.onLogin && $options.onLogin(...args)) - } : $data.tab === "register" ? { - o: $data.regForm.name, - p: common_vendor.o(common_vendor.m(($event) => $data.regForm.name = $event.detail.value, { + e: $data.loginForm.password, + f: common_vendor.o(($event) => $data.loginForm.password = $event.detail.value), + g: $data.loading, + h: common_vendor.o((...args) => $options.onLogin && $options.onLogin(...args)), + i: common_vendor.o((...args) => $options.gotoRegister && $options.gotoRegister(...args)), + j: common_vendor.o((...args) => $options.gotoReset && $options.gotoReset(...args)) + } : {}, { + k: $data.tab === "register" + }, $data.tab === "register" ? { + l: $data.regForm.name, + m: common_vendor.o(common_vendor.m(($event) => $data.regForm.name = $event.detail.value, { trim: true })), - q: $data.regForm.email, - r: common_vendor.o(common_vendor.m(($event) => $data.regForm.email = $event.detail.value, { + n: $data.regForm.email, + o: common_vendor.o(common_vendor.m(($event) => $data.regForm.email = $event.detail.value, { trim: true })), - s: $data.regForm.code, - t: common_vendor.o(common_vendor.m(($event) => $data.regForm.code = $event.detail.value, { + p: $data.regForm.code, + q: common_vendor.o(common_vendor.m(($event) => $data.regForm.code = $event.detail.value, { trim: true })), - v: common_vendor.t($data.regCountdown > 0 ? $data.regCountdown + "s" : "获取验证码"), - w: $data.regCountdown > 0 || $data.loading, - x: common_vendor.o((...args) => $options.sendRegCode && $options.sendRegCode(...args)), - y: $data.regForm.password, - z: common_vendor.o(($event) => $data.regForm.password = $event.detail.value), - A: $data.regForm.password2, - B: common_vendor.o(($event) => $data.regForm.password2 = $event.detail.value), - C: $data.loading, - D: common_vendor.o((...args) => $options.onRegister && $options.onRegister(...args)) - } : { - E: $data.resetForm.email, - F: common_vendor.o(common_vendor.m(($event) => $data.resetForm.email = $event.detail.value, { + r: common_vendor.t($data.regCountdown > 0 ? $data.regCountdown + "s" : "获取验证码"), + s: $data.regCountdown > 0 || $data.loading, + t: common_vendor.o((...args) => $options.sendRegCode && $options.sendRegCode(...args)), + v: $data.regForm.password, + w: common_vendor.o(($event) => $data.regForm.password = $event.detail.value), + x: $data.regForm.password2, + y: common_vendor.o(($event) => $data.regForm.password2 = $event.detail.value), + z: $data.loading, + A: common_vendor.o((...args) => $options.onRegister && $options.onRegister(...args)) + } : {}, { + B: $data.tab === "reset" + }, $data.tab === "reset" ? { + C: $data.resetForm.email, + D: common_vendor.o(common_vendor.m(($event) => $data.resetForm.email = $event.detail.value, { trim: true })), - G: $data.resetForm.code, - H: common_vendor.o(common_vendor.m(($event) => $data.resetForm.code = $event.detail.value, { + E: $data.resetForm.code, + F: common_vendor.o(common_vendor.m(($event) => $data.resetForm.code = $event.detail.value, { trim: true })), - I: common_vendor.t($data.resetCountdown > 0 ? $data.resetCountdown + "s" : "获取验证码"), - J: $data.resetCountdown > 0 || $data.loading, - K: common_vendor.o((...args) => $options.sendResetCode && $options.sendResetCode(...args)), - L: $data.resetForm.password, - M: common_vendor.o(($event) => $data.resetForm.password = $event.detail.value), - N: $data.resetForm.password2, - O: common_vendor.o(($event) => $data.resetForm.password2 = $event.detail.value), - P: $data.loading, - Q: common_vendor.o((...args) => $options.onReset && $options.onReset(...args)) - }, { - n: $data.tab === "register" - }); + G: common_vendor.t($data.resetCountdown > 0 ? $data.resetCountdown + "s" : "获取验证码"), + H: $data.resetCountdown > 0 || $data.loading, + I: common_vendor.o((...args) => $options.sendResetCode && $options.sendResetCode(...args)), + J: $data.resetForm.password, + K: common_vendor.o(($event) => $data.resetForm.password = $event.detail.value), + L: $data.resetForm.password2, + M: common_vendor.o(($event) => $data.resetForm.password2 = $event.detail.value), + N: $data.loading, + O: common_vendor.o((...args) => $options.onReset && $options.onReset(...args)) + } : {}); } const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); wx.createPage(MiniProgramPage); diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxml index d499785..68bd214 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxml +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxml @@ -1 +1 @@ -登录注册忘记密码登录{{v}}注册新用户{{I}}重置密码 \ No newline at end of file +邮箱密码登录登录注册忘记密码{{r}}注册新用户{{G}}重置密码 \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxss index 82a53ff..7facc0b 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/login.wxss @@ -24,39 +24,78 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .auth-page { padding: 32rpx; display: flex; flex-direction: column; gap: 24rpx; + position: relative; + min-height: 100vh; } -.tabs { +.header { display: flex; - gap: 24rpx; + align-items: center; + justify-content: center; + padding: 8rpx 0 0; } -.tab { - padding: 12rpx 20rpx; - border-radius: 999rpx; - background: #f2f4f8; - color: #5b6b80; - font-weight: 700; +.title { + font-size: 34rpx; + font-weight: 800; + color: #111; } -.tab.active { - background: #2d6be6; - color: #fff; +.login-hero { + display: flex; + justify-content: center; + padding: 16rpx 0 0; +} +.login-hero-img { + width: 72%; + max-width: 560rpx; + border-radius: 8rpx; } .panel { display: flex; flex-direction: column; gap: 16rpx; - background: #fff; - padding: 24rpx; - border-radius: 16rpx; - border: 2rpx solid #eef2f9; + background: transparent; + padding: 0; + border-radius: 0; + border: none; +} +.panel.minor { + margin-top: 12rpx; } .input { - background: #f7f9ff; - border: 2rpx solid rgba(45, 107, 230, 0.12); + background: #ffffff; + border: 2rpx solid #e5e7eb; border-radius: 12rpx; padding: 22rpx 20rpx; font-size: 28rpx; @@ -78,8 +117,47 @@ .btn.primary { background: linear-gradient(135deg, #4788ff 0%, #2d6be6 100%); color: #fff; + border: 1rpx solid rgba(45, 107, 230, 0.25); + width: 72%; + margin: 0 auto; + padding: 14rpx 16rpx; } .btn.ghost { background: #eef3ff; color: #2d6be6; +} +/* 右下角快捷入口:贴着登录功能,无边框、无背景 */ +.quick-inline { + display: flex; + gap: 28rpx; + justify-content: flex-end; + align-items: center; + margin-top: 10rpx; +} +.quick-link { + background: transparent !important; + color: #2d6be6; + border: none !important; + outline: none; + padding: 0; + font-size: 26rpx; + font-weight: 700; + box-shadow: none; + line-height: 1.2; +} +.quick-link::after { + border: none !important; +} +/* 注册/重置页:验证码按钮与左侧输入框等高,且更紧凑 */ +.panel.minor .row > .input { + height: 76rpx; + padding: 0 20rpx; +} +.panel.minor .row > .btn.ghost { + height: 76rpx; + padding: 0 20rpx; + border-radius: 12rpx; + display: inline-flex; + align-items: center; + justify-content: center; } \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/register.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/register.wxss index b885cc5..cbc5f31 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/auth/register.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/auth/register.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .register-container { position: relative; min-height: 100vh; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/customer/detail.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/customer/detail.wxss index 6df6e4e..7281482 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/customer/detail.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/customer/detail.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { padding-bottom: 140rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/customer/form.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/customer/form.wxss index 3eb2c97..0b444f2 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/customer/form.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/customer/form.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { padding-bottom: 140rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/customer/select.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/customer/select.wxss index 882632b..0924e3d 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/customer/select.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/customer/select.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/detail/index.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/detail/index.wxss index 2e2f42a..f03c3ca 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/detail/index.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/detail/index.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.js b/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.js index 67d0096..201c401 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.js @@ -7,6 +7,7 @@ const _sfc_main = { data() { return { KPI_ICONS: common_config.KPI_ICONS, + KPI_LABELS: common_constants.KPI_LABELS, kpi: { todaySales: "0.00", monthSales: "0.00", monthProfit: "0.00", stockCount: "0" }, activeTab: "home", notices: [], @@ -166,6 +167,10 @@ const _sfc_main = { common_vendor.index.navigateTo({ url: common_constants.ROUTES.report }); return; } + if (item.key === "vip") { + common_vendor.index.navigateTo({ url: "/pages/my/vip" }); + return; + } if (item.key === "otherPay") { try { common_vendor.index.setStorageSync("ORDER_DEFAULT_PARAMS", { biz: "expense" }); @@ -184,7 +189,7 @@ const _sfc_main = { }, goDetail() { try { - common_vendor.index.__f__("log", "at pages/index/index.vue:253", "[index] goDetail → /pages/detail/index"); + common_vendor.index.__f__("log", "at pages/index/index.vue:259", "[index] goDetail → /pages/detail/index"); } catch (e) { } common_vendor.index.switchTab({ url: "/pages/detail/index" }); @@ -209,29 +214,33 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { a: common_vendor.t($data.consultLabel), b: common_vendor.o((...args) => $options.onConsultTap && $options.onConsultTap(...args)), c: $data.KPI_ICONS.todaySales, - d: common_vendor.t($data.kpi.todaySales), - e: $data.KPI_ICONS.monthSales, - f: common_vendor.t($data.kpi.monthSales), - g: $data.KPI_ICONS.monthProfit, - h: common_vendor.t($data.kpi.monthProfit), - i: $data.KPI_ICONS.stockCount, - j: common_vendor.t($data.kpi.stockCount), - k: $data.consultDialogVisible + d: common_vendor.t($data.KPI_LABELS.todaySales), + e: common_vendor.t($data.kpi.todaySales), + f: $data.KPI_ICONS.monthSales, + g: common_vendor.t($data.KPI_LABELS.monthSales), + h: common_vendor.t($data.kpi.monthSales), + i: $data.KPI_ICONS.monthProfit, + j: common_vendor.t($data.KPI_LABELS.monthProfit), + k: common_vendor.t($data.kpi.monthProfit), + l: $data.KPI_ICONS.stockCount, + m: common_vendor.t($data.KPI_LABELS.stockCount), + n: common_vendor.t($data.kpi.stockCount), + o: $data.consultDialogVisible }, $data.consultDialogVisible ? { - l: $data.consultMessage, - m: common_vendor.o(($event) => $data.consultMessage = $event.detail.value), - n: common_vendor.o((...args) => $options.closeConsultDialog && $options.closeConsultDialog(...args)), - o: common_vendor.o((...args) => $options.submitConsult && $options.submitConsult(...args)), - p: common_vendor.o(() => { + p: $data.consultMessage, + q: common_vendor.o(($event) => $data.consultMessage = $event.detail.value), + r: common_vendor.o((...args) => $options.closeConsultDialog && $options.closeConsultDialog(...args)), + s: common_vendor.o((...args) => $options.submitConsult && $options.submitConsult(...args)), + t: common_vendor.o(() => { }), - q: common_vendor.o(() => { + v: common_vendor.o(() => { }) } : {}, { - r: $data.loadingNotices + w: $data.loadingNotices }, $data.loadingNotices ? {} : $data.noticeError ? { - t: common_vendor.t($data.noticeError) + y: common_vendor.t($data.noticeError) } : !$data.notices.length ? {} : { - w: common_vendor.f($data.notices, (n, idx, i0) => { + A: common_vendor.f($data.notices, (n, idx, i0) => { return common_vendor.e({ a: common_vendor.t(n.text), b: n.tag @@ -243,9 +252,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { }); }) }, { - s: $data.noticeError, - v: !$data.notices.length, - x: common_vendor.f($data.features, (item, k0, i0) => { + x: $data.noticeError, + z: !$data.notices.length, + B: common_vendor.f($data.features, (item, k0, i0) => { return common_vendor.e({ a: item.img }, item.img ? { diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxml index 9c1a1ed..959307f 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxml +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxml @@ -1 +1 @@ -五金配件管家{{a}}今日销售额{{d}}本月销售额{{f}}本月利润{{h}}库存商品数量{{j}}咨询取消提交公告加载中...{{t}}暂无公告{{n.a}}{{n.c}}常用功能{{item.e}}{{item.f}} \ No newline at end of file +五金配件管家{{a}}{{d}}{{e}}{{g}}{{h}}{{j}}{{k}}{{m}}{{n}}咨询取消提交公告加载中...{{y}}暂无公告{{n.a}}{{n.c}}常用功能{{item.e}}{{item.f}} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxss index 98e5fb7..e0547af 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/index/index.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ page { height: 100%; overflow: hidden; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/about.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/my/about.wxss index 15aa71e..e91b3e1 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/about.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/about.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .about { padding: 24rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.js b/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.js index 92dfcac..1498669 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.js @@ -182,9 +182,16 @@ const _sfc_main = { if (!value) return "-"; const s = String(value); - const m = s.match(/^(\d{4}-\d{2}-\d{2})([ T](\d{2}:\d{2}))/); + const m = s.match(/^(\d{4}-\d{2}-\d{2})/); if (m) - return `${m[1]} ${m[3]}`; + return m[1]; + const d = new Date(s); + if (!isNaN(d.getTime())) { + const y = d.getFullYear(); + const mo = String(d.getMonth() + 1).padStart(2, "0"); + const da = String(d.getDate()).padStart(2, "0"); + return `${y}-${mo}-${da}`; + } return s; }, startLogin() { diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.wxss index c247908..dc2ff1d 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/index.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .me { padding: 24rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/orders.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/my/orders.wxss index 2beddde..4a6d1a3 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/orders.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/orders.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .orders { padding: 16rpx 16rpx calc(env(safe-area-inset-bottom) + 16rpx); } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/security.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/my/security.wxss index c5cf83a..cc8a5ae 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/security.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/security.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .security { padding: 24rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.js b/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.js index 3b4bc28..3b31e07 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.js @@ -8,21 +8,67 @@ const _sfc_main = { isVip: false, expire: "", price: 0, - benefits: [] + benefits: [], + normalAdmin: { isNormalAdmin: false, applicationStatus: "none" } }; }, onShow() { this.loadVip(); + this.loadNormalAdminStatus(); this.composeBenefits(); }, computed: { expireDisplay() { - const s = String(this.expire || ""); - return s || "11年11月11日"; + const v = this.expire; + if (v === null || v === void 0) + return ""; + if (typeof v === "number") { + const d = new Date(v); + if (!isNaN(d.getTime())) { + const y = d.getFullYear(); + const m2 = String(d.getMonth() + 1).padStart(2, "0"); + const dd = String(d.getDate()).padStart(2, "0"); + return `${y}-${m2}-${dd}`; + } + return ""; + } + const s = String(v); + const m = s.match(/^(\d{4}-\d{2}-\d{2})/); + if (m) + return m[1]; + const idx = s.search(/[ T]/); + if (idx > 0) { + const head = s.slice(0, idx); + if (head) + return head; + } + const d2 = new Date(s); + if (!isNaN(d2.getTime())) { + const y = d2.getFullYear(); + const m2 = String(d2.getMonth() + 1).padStart(2, "0"); + const dd2 = String(d2.getDate()).padStart(2, "0"); + return `${y}-${m2}-${dd2}`; + } + return s; }, priceDisplay() { const n = Number(this.price); return Number.isFinite(n) && n > 0 ? n.toFixed(2) : "0.00"; + }, + applyDisabled() { + var _a, _b; + const s = String(((_a = this.normalAdmin) == null ? void 0 : _a.applicationStatus) || "none"); + return !!(((_b = this.normalAdmin) == null ? void 0 : _b.isNormalAdmin) || s === "approved" || s === "pending"); + }, + applyBtnText() { + var _a, _b, _c; + if (((_a = this.normalAdmin) == null ? void 0 : _a.isNormalAdmin) || ((_b = this.normalAdmin) == null ? void 0 : _b.applicationStatus) === "approved") + return "已通过"; + if (((_c = this.normalAdmin) == null ? void 0 : _c.applicationStatus) === "pending") + return "审核中"; + if (!this.isVip) + return "仅限VIP"; + return "提交申请"; } }, methods: { @@ -44,6 +90,17 @@ const _sfc_main = { this.isVip = false; } }, + async loadNormalAdminStatus() { + try { + const data = await common_http.get("/api/normal-admin/application/status"); + this.normalAdmin = { + isNormalAdmin: !!(data == null ? void 0 : data.isNormalAdmin), + applicationStatus: String((data == null ? void 0 : data.applicationStatus) || "none") + }; + } catch (e) { + this.normalAdmin = { isNormalAdmin: false, applicationStatus: "none" }; + } + }, async onPay() { try { await common_http.post("/api/vip/pay", {}); @@ -52,6 +109,20 @@ const _sfc_main = { } catch (e) { common_vendor.index.showToast({ title: String(e.message || "开通失败"), icon: "none" }); } + }, + async onApplyNormalAdmin() { + var _a, _b, _c; + if (this.applyDisabled) { + const msg = ((_a = this.normalAdmin) == null ? void 0 : _a.isNormalAdmin) || ((_b = this.normalAdmin) == null ? void 0 : _b.applicationStatus) === "approved" ? "已通过,无需重复申请" : ((_c = this.normalAdmin) == null ? void 0 : _c.applicationStatus) === "pending" ? "审核中,请耐心等待" : "不可申请"; + return common_vendor.index.showToast({ title: msg, icon: "none" }); + } + try { + await common_http.post("/api/normal-admin/apply", { remark: "从我的-会员发起申请" }); + common_vendor.index.showToast({ title: "申请已提交", icon: "success" }); + await this.loadNormalAdminStatus(); + } catch (e) { + common_vendor.index.showToast({ title: String(e.message || "申请失败"), icon: "none" }); + } } } }; @@ -79,9 +150,17 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { e: item.key }); }), - j: !$data.isVip + j: $data.isVip + }, $data.isVip ? { + k: common_vendor.t($options.applyBtnText), + l: common_vendor.n({ + disabled: $options.applyDisabled + }), + m: common_vendor.o((...args) => $options.onApplyNormalAdmin && $options.onApplyNormalAdmin(...args)) + } : {}, { + n: !$data.isVip }, !$data.isVip ? { - k: common_vendor.o((...args) => $options.onPay && $options.onPay(...args)) + o: common_vendor.o((...args) => $options.onPay && $options.onPay(...args)) } : {}); } const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxml index d7e4f09..79b492c 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxml +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxml @@ -1 +1 @@ -{{b}}{{c}}{{d}}会员状态已激活有效期至{{g}}当前身份普通用户会员价格¥{{h}}/月会员特权聚焦数据留存与专业形象,让经营更有底气{{item.c}}{{item.d}}立即升级 VIP不限历史数据、专属标识,助您高效管账立即开通 \ No newline at end of file +{{b}}{{c}}{{d}}会员状态已激活有效期至{{g}}当前身份普通用户会员价格¥{{h}}/月会员特权聚焦数据留存与专业形象,让经营更有底气{{item.c}}{{item.d}}申请成为普通管理员在普通管理端参与配件审核{{k}}立即升级 VIP不限历史数据、专属标识,助您高效管账立即开通 \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxss index 8a663f2..b2af491 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/my/vip.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ page { background: linear-gradient(180deg, #f8fbff 0%, #ffffff 60%) !important; } @@ -84,6 +85,11 @@ page { color: #fff; border-color: #4c8dff; } + +/* 指定 hero 内激活态徽标文本为黑色 */ +.vip-hero .status-pill.active text { + color: #000 !important; +} .vip-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); @@ -214,6 +220,58 @@ page { .purchase-btn:active { opacity: 0.88; } +.apply-card { + margin-top: 0; + background: linear-gradient(135deg, rgba(30, 173, 145, 0.14) 0%, rgba(30, 173, 145, 0.06) 100%); + border-radius: 28rpx; + padding: 30rpx 28rpx; + display: flex; + align-items: center; + gap: 24rpx; + border: 2rpx solid rgba(30, 173, 145, 0.18); + box-shadow: 0 10rpx 24rpx rgba(30, 173, 145, 0.15); +} +.apply-text { + flex: 1; + display: flex; + flex-direction: column; + gap: 10rpx; +} +.apply-title { + font-size: 32rpx; + font-weight: 800; + color: #1ead91; +} +.apply-desc { + font-size: 24rpx; + color: #247a66; + line-height: 34rpx; +} +.apply-btn { + flex: 0 0 auto; + padding: 20rpx 36rpx; + border-radius: 999rpx; + border: none; + background-color: transparent; + background: linear-gradient(135deg, #1ead91 0%, #159b7e 100%); + color: #fff; + font-size: 28rpx; + font-weight: 700; + box-shadow: 0 10rpx 22rpx rgba(21, 155, 126, 0.2); +} +.apply-btn::after { + border: none; +} +.apply-btn:active { + opacity: 0.9; +} +.apply-btn.disabled { + opacity: 0.5; + background: #c7e8df; + color: #fff; + box-shadow: none; + pointer-events: none; +} @media (max-width: 375px) { .vip-summary { grid-template-columns: 1fr; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/order/create.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/order/create.wxss index 8d4c795..14343a1 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/order/create.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/order/create.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .order { padding-bottom: 140rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.js b/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.js index 5d82c28..5487486 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.js @@ -13,22 +13,12 @@ const _sfc_main = { brand: "", model: "", spec: "", - origin: "", categoryId: "", - unitId: "", - stock: null, - safeMin: null, - safeMax: null, - purchasePrice: null, - retailPrice: null, - wholesalePrice: null, - bigClientPrice: null, images: [], remark: "", platformStatus: "", sourceSubmissionId: "" }, - units: [], categories: [], keyboardHeight: 0 }; @@ -42,16 +32,9 @@ const _sfc_main = { this.disposeKeyboardListener(); }, computed: { - unitNames() { - return this.units.map((u) => u.name); - }, categoryNames() { return this.categories.map((c) => c.name); }, - unitLabel() { - const u = this.units.find((x) => String(x.id) === String(this.form.unitId)); - return u ? u.name : "选择单位"; - }, categoryLabel() { const c = this.categories.find((x) => String(x.id) === String(this.form.categoryId)); return c ? c.name : "选择类别"; @@ -59,7 +42,7 @@ const _sfc_main = { }, methods: { async bootstrap() { - await Promise.all([this.fetchUnits(), this.fetchCategories()]); + await Promise.all([this.fetchCategories()]); if (this.id) this.loadDetail(); }, @@ -81,13 +64,6 @@ const _sfc_main = { } catch (_) { } }, - async fetchUnits() { - try { - const res = await common_http.get("/api/product-units"); - this.units = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; - } catch (_) { - } - }, async fetchCategories() { try { const res = await common_http.get("/api/product-categories"); @@ -95,11 +71,6 @@ const _sfc_main = { } catch (_) { } }, - onPickUnit(e) { - const idx = Number(e.detail.value); - const u = this.units[idx]; - this.form.unitId = u ? u.id : ""; - }, onPickCategory(e) { const idx = Number(e.detail.value); const c = this.categories[idx]; @@ -136,16 +107,7 @@ const _sfc_main = { brand: data.brand, model: data.model, spec: data.spec, - origin: data.origin, categoryId: data.categoryId, - unitId: data.unitId, - stock: data.stock, - safeMin: data.safeMin, - safeMax: data.safeMax, - purchasePrice: data.purchasePrice, - retailPrice: data.retailPrice, - wholesalePrice: data.wholesalePrice, - bigClientPrice: data.bigClientPrice, images: (data.images || []).map((i) => i.url || i), remark: data.remark || "", platformStatus: data.platformStatus || "", @@ -159,10 +121,6 @@ const _sfc_main = { common_vendor.index.showToast({ title: "请填写名称", icon: "none" }); return false; } - if (this.form.safeMin != null && this.form.safeMax != null && Number(this.form.safeMin) > Number(this.form.safeMax)) { - common_vendor.index.showToast({ title: "安全库存区间不合法", icon: "none" }); - return false; - } return true; }, buildPayload() { @@ -173,18 +131,7 @@ const _sfc_main = { brand: f.brand, model: f.model, spec: f.spec, - origin: f.origin, categoryId: f.categoryId || null, - unitId: f.unitId, - safeMin: f.safeMin, - safeMax: f.safeMax, - prices: { - purchasePrice: f.purchasePrice, - retailPrice: f.retailPrice, - wholesalePrice: f.wholesalePrice, - bigClientPrice: f.bigClientPrice - }, - stock: f.stock, images: f.images, remark: f.remark }; @@ -204,7 +151,7 @@ const _sfc_main = { await common_http.post("/api/products", payload); common_vendor.index.showToast({ title: "保存成功", icon: "success", mask: false }); if (goOn && !this.id) { - this.form = { name: "", barcode: "", brand: "", model: "", spec: "", origin: "", categoryId: "", unitId: "", stock: null, safeMin: null, safeMax: null, purchasePrice: null, retailPrice: null, wholesalePrice: null, bigClientPrice: null, images: [], remark: "", platformStatus: "", sourceSubmissionId: "" }; + this.form = { name: "", barcode: "", brand: "", model: "", spec: "", categoryId: "", images: [], remark: "", platformStatus: "", sourceSubmissionId: "" }; } else { setTimeout(() => common_vendor.index.navigateBack(), 400); } @@ -244,58 +191,23 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { m: common_vendor.o(common_vendor.m(($event) => $data.form.spec = $event.detail.value, { trim: true })), - n: $data.form.origin, - o: common_vendor.o(common_vendor.m(($event) => $data.form.origin = $event.detail.value, { - trim: true - })), - p: common_vendor.t($options.unitLabel), - q: $options.unitNames, - r: common_vendor.o((...args) => $options.onPickUnit && $options.onPickUnit(...args)), - s: common_vendor.t($options.categoryLabel), - t: $options.categoryNames, - v: common_vendor.o((...args) => $options.onPickCategory && $options.onPickCategory(...args)), - w: $data.form.stock, - x: common_vendor.o(common_vendor.m(($event) => $data.form.stock = $event.detail.value, { - number: true - })), - y: $data.form.safeMin, - z: common_vendor.o(common_vendor.m(($event) => $data.form.safeMin = $event.detail.value, { - number: true - })), - A: $data.form.safeMax, - B: common_vendor.o(common_vendor.m(($event) => $data.form.safeMax = $event.detail.value, { - number: true - })), - C: $data.form.purchasePrice, - D: common_vendor.o(common_vendor.m(($event) => $data.form.purchasePrice = $event.detail.value, { - number: true - })), - E: $data.form.retailPrice, - F: common_vendor.o(common_vendor.m(($event) => $data.form.retailPrice = $event.detail.value, { - number: true - })), - G: $data.form.wholesalePrice, - H: common_vendor.o(common_vendor.m(($event) => $data.form.wholesalePrice = $event.detail.value, { - number: true - })), - I: $data.form.bigClientPrice, - J: common_vendor.o(common_vendor.m(($event) => $data.form.bigClientPrice = $event.detail.value, { - number: true - })), - K: common_vendor.o(($event) => $data.form.images = $event), - L: common_vendor.p({ + n: common_vendor.t($options.categoryLabel), + o: $options.categoryNames, + p: common_vendor.o((...args) => $options.onPickCategory && $options.onPickCategory(...args)), + q: common_vendor.o(($event) => $data.form.images = $event), + r: common_vendor.p({ formData: { ownerType: "product" }, modelValue: $data.form.images }), - M: $data.form.remark, - N: common_vendor.o(common_vendor.m(($event) => $data.form.remark = $event.detail.value, { + s: $data.form.remark, + t: common_vendor.o(common_vendor.m(($event) => $data.form.remark = $event.detail.value, { trim: true })), - O: common_vendor.o(($event) => $options.save(false)), - P: common_vendor.o(($event) => $options.save(true)), - Q: ($data.keyboardHeight || 0) + "px" + v: common_vendor.o(($event) => $options.save(false)), + w: common_vendor.o(($event) => $options.save(true)), + x: ($data.keyboardHeight || 0) + "px" }); } const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxml index 8dbdb28..3cea084 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxml +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxml @@ -1 +1 @@ -编辑货品完善基础信息与价格平台推荐货品,建议谨慎修改核心字段此货品源于我的提交,审核通过后已入库商品名称条形码图片识码主单位:{{p}}类别:{{s}}库存与安全库存价格(进价/零售/批发/大单)图片备注保存保存并继续 \ No newline at end of file +编辑货品完善基础信息与价格平台推荐货品,建议谨慎修改核心字段此货品源于我的提交,审核通过后已入库商品名称条形码图片识码类别:{{n}}图片备注保存保存并继续 \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxss index ea6ab22..87e3077 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/form.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { background: #ffffff; min-height: 100vh; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.js b/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.js index d2f6737..d9f2a08 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.js @@ -5,11 +5,13 @@ const _sfc_main = { data() { return { items: [], - query: { kw: "", page: 1, size: 20, categoryId: "" }, + query: { kw: "", page: 1, size: 20, categoryId: "", mode: "direct", templateId: "", params: {} }, finished: false, loading: false, tab: "all", - categories: [] + categories: [], + templates: [], + paramValues: {} }; }, onLoad() { @@ -48,19 +50,57 @@ const _sfc_main = { categoryLabel() { const c = this.categories.find((x) => String(x.id) === String(this.query.categoryId)); return c ? "类别:" + c.name : "选择类别"; + }, + modeLabel() { + const map = { direct: "直接查询", nameLike: "名称模糊查询", template: "按模板参数查询" }; + return map[this.query.mode] || "直接查询"; + }, + templateNames() { + return this.templates.map((t) => t.name); + }, + templateLabel() { + const t = this.templates.find((x) => String(x.id) === String(this.query.templateId)); + return t ? "模板:" + t.name : "选择模板"; + }, + selectedTemplate() { + return this.templates.find((t) => String(t.id) === String(this.query.templateId)) || null; + }, + selectedTemplateParams() { + return this.selectedTemplate && Array.isArray(this.selectedTemplate.params) ? this.selectedTemplate.params : []; } }, methods: { switchTab(t) { this.tab = t; this.query.categoryId = ""; + this.query.templateId = ""; + this.paramValues = {}; this.reload(); }, onPickCategory(e) { const idx = Number(e.detail.value); const c = this.categories[idx]; this.query.categoryId = c ? c.id : ""; - this.reload(); + this.fetchTemplates(); + }, + onPickTemplate(e) { + const idx = Number(e.detail.value); + const t = this.templates[idx]; + this.query.templateId = t ? t.id : ""; + this.paramValues = {}; + }, + onPickParamEnumWrapper(p, e) { + const idx = Number(e.detail.value); + const arr = p.enumOptions || []; + this.paramValues[p.fieldKey] = arr[idx]; + }, + onParamBoolChange(p, e) { + var _a; + this.paramValues[p.fieldKey] = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) ? true : false; + }, + onParamDateChange(p, e) { + var _a; + this.paramValues[p.fieldKey] = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) || ""; }, async fetchCategories() { try { @@ -69,6 +109,15 @@ const _sfc_main = { } catch (_) { } }, + async fetchTemplates() { + try { + const res = await common_http.get("/api/product-templates", this.query.categoryId ? { categoryId: this.query.categoryId } : {}); + const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; + this.templates = list; + } catch (_) { + this.templates = []; + } + }, reload() { this.items = []; this.query.page = 1; @@ -81,8 +130,19 @@ const _sfc_main = { this.loading = true; try { const params = { kw: this.query.kw, page: this.query.page, size: this.query.size }; - if (this.tab === "category" && this.query.categoryId) - params.categoryId = this.query.categoryId; + if (this.tab === "search") { + if (this.query.categoryId) + params.categoryId = this.query.categoryId; + if (this.query.templateId) + params.templateId = this.query.templateId; + if (this.paramValues && Object.keys(this.paramValues).length) { + for (const k of Object.keys(this.paramValues)) { + const v = this.paramValues[k]; + if (v !== void 0 && v !== null && v !== "") + params["param_" + k] = v; + } + } + } const res = await common_http.get("/api/products", params); const list = Array.isArray(res == null ? void 0 : res.list) ? res.list : Array.isArray(res) ? res : []; this.items = this.items.concat(list); @@ -95,12 +155,26 @@ const _sfc_main = { this.loading = false; } }, - openForm(id) { - const url = "/pages/product/form" + (id ? "?id=" + id : ""); - common_vendor.index.navigateTo({ url }); + openDetail(id) { + common_vendor.index.navigateTo({ url: "/pages/product/product-detail?id=" + id }); }, goMySubmissions() { common_vendor.index.navigateTo({ url: "/pages/product/submissions" }); + }, + async remove(it) { + try { + const r = await new Promise((resolve) => { + common_vendor.index.showModal({ content: "确认删除该货品?删除后可在后台恢复", success: resolve }); + }); + if (!r || !r.confirm) + return; + const { del } = require("../../common/http.js"); + await del("/api/products/" + it.id); + common_vendor.index.showToast({ title: "已删除", icon: "success" }); + this.reload(); + } catch (e) { + common_vendor.index.showToast({ title: "删除失败", icon: "none" }); + } } } }; @@ -108,44 +182,96 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { return common_vendor.e({ a: $data.tab === "all" ? 1 : "", b: common_vendor.o(($event) => $options.switchTab("all")), - c: $data.tab === "category" ? 1 : "", - d: common_vendor.o(($event) => $options.switchTab("category")), + c: $data.tab === "search" ? 1 : "", + d: common_vendor.o(($event) => $options.switchTab("search")), e: common_vendor.o((...args) => $options.goMySubmissions && $options.goMySubmissions(...args)), - f: common_vendor.o((...args) => $options.reload && $options.reload(...args)), - g: $data.query.kw, - h: common_vendor.o(common_vendor.m(($event) => $data.query.kw = $event.detail.value, { + f: $data.tab === "search" + }, $data.tab === "search" ? common_vendor.e({ + g: common_vendor.t($options.modeLabel), + h: ["直接查询", "名称模糊查询", "按模板参数查询"], + i: common_vendor.o((e) => $data.query.mode = ["direct", "nameLike", "template"][Number(e.detail.value)] || "direct"), + j: $data.query.mode === "direct" || $data.query.mode === "nameLike" + }, $data.query.mode === "direct" || $data.query.mode === "nameLike" ? { + k: common_vendor.o((...args) => $options.reload && $options.reload(...args)), + l: $data.query.kw, + m: common_vendor.o(common_vendor.m(($event) => $data.query.kw = $event.detail.value, { trim: true - })), - i: $data.tab === "category" - }, $data.tab === "category" ? { - j: common_vendor.t($options.categoryLabel), - k: $options.categoryNames, - l: common_vendor.o((...args) => $options.onPickCategory && $options.onPickCategory(...args)) + })) } : {}, { - m: common_vendor.o((...args) => $options.reload && $options.reload(...args)), - n: $data.items.length + n: $data.query.mode === "template" + }, $data.query.mode === "template" ? { + o: common_vendor.t($options.categoryLabel), + p: $options.categoryNames, + q: common_vendor.o((...args) => $options.onPickCategory && $options.onPickCategory(...args)), + r: common_vendor.t($options.templateLabel), + s: $options.templateNames, + t: common_vendor.o((...args) => $options.onPickTemplate && $options.onPickTemplate(...args)), + v: common_vendor.f($options.selectedTemplateParams, (p, idx, i0) => { + return common_vendor.e({ + a: p.type === "string" + }, p.type === "string" ? { + b: "输入" + p.fieldLabel, + c: $data.paramValues[p.fieldKey], + d: common_vendor.o(common_vendor.m(($event) => $data.paramValues[p.fieldKey] = $event.detail.value, { + trim: true + }), p.fieldKey) + } : p.type === "number" ? { + f: "输入" + p.fieldLabel, + g: $data.paramValues[p.fieldKey], + h: common_vendor.o(common_vendor.m(($event) => $data.paramValues[p.fieldKey] = $event.detail.value, { + number: true + }), p.fieldKey) + } : p.type === "boolean" ? { + j: !!$data.paramValues[p.fieldKey], + k: common_vendor.o(($event) => $options.onParamBoolChange(p, $event), p.fieldKey) + } : p.type === "enum" ? { + m: common_vendor.t(_ctx.displayParamEnum(p)), + n: p.enumOptions || [], + o: common_vendor.o(($event) => $options.onPickParamEnumWrapper(p, $event), p.fieldKey) + } : p.type === "date" ? { + q: common_vendor.t($data.paramValues[p.fieldKey] || "选择" + p.fieldLabel), + r: common_vendor.o(($event) => $options.onParamDateChange(p, $event), p.fieldKey) + } : { + s: "输入" + p.fieldLabel, + t: $data.paramValues[p.fieldKey], + v: common_vendor.o(common_vendor.m(($event) => $data.paramValues[p.fieldKey] = $event.detail.value, { + trim: true + }), p.fieldKey) + }, { + e: p.type === "number", + i: p.type === "boolean", + l: p.type === "enum", + p: p.type === "date", + w: p.fieldKey + }); + }) + } : {}, { + w: common_vendor.o((...args) => $options.reload && $options.reload(...args)), + x: $data.query.mode === "template" ? 1 : "" + }) : {}, { + y: $data.items.length }, $data.items.length ? { - o: common_vendor.f($data.items, (it, k0, i0) => { + z: common_vendor.f($data.items, (it, k0, i0) => { return common_vendor.e({ a: it.cover }, it.cover ? { b: it.cover } : {}, { c: common_vendor.t(it.name), - d: it.platformStatus === "platform" + d: it.deleted + }, it.deleted ? {} : {}, { + e: it.platformStatus === "platform" }, it.platformStatus === "platform" ? {} : it.sourceSubmissionId ? {} : {}, { - e: it.sourceSubmissionId, - f: common_vendor.t(it.brand || "-"), - g: common_vendor.t(it.model || ""), - h: common_vendor.t(it.spec || ""), - i: common_vendor.t(it.stock ?? 0), - j: common_vendor.t((it.retailPrice ?? it.price ?? 0).toFixed(2)), - k: it.id, - l: common_vendor.o(($event) => $options.openForm(it.id), it.id) + f: it.sourceSubmissionId, + g: common_vendor.t(it.brand || "-"), + h: common_vendor.t(it.model || ""), + i: common_vendor.t(it.spec || ""), + j: it.id, + k: common_vendor.o(($event) => $options.openDetail(it.id), it.id) }); }) } : {}, { - p: common_vendor.o((...args) => $options.loadMore && $options.loadMore(...args)) + A: common_vendor.o((...args) => $options.loadMore && $options.loadMore(...args)) }); } const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxml index 2048503..ae52855 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxml +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxml @@ -1 +1 @@ -全部按类别我的提交{{j}}查询{{it.c}}平台推荐我的提交{{it.f}} {{it.g}} {{it.h}}库存:{{it.i}} 零售价:¥{{it.j}}暂无数据,点击右上角“+”新增 \ No newline at end of file +全部查询我的提交{{g}}{{o}}{{r}}{{p.m}}{{p.q}}查询{{it.c}}已删除平台推荐我的提交{{it.g}} {{it.h}} {{it.i}}暂无数据,点击右上角“+”新增 \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxss index c68efbe..1ea6df2 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/list.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; @@ -68,6 +69,21 @@ border-radius: 10rpx; color: #444; } +.template-mode { + flex-direction: column; + align-items: stretch; + gap: 8rpx; +} +.picker-row { + display: flex; + gap: 12rpx; +} +.params-wrap { + margin-top: 6rpx; + background: #ffffff; + border-radius: 12rpx; + padding: 8rpx 8rpx; +} .list { flex: 1; } @@ -109,6 +125,13 @@ padding: 4rpx 10rpx; border-radius: 8rpx; } +.tag-deleted { + font-size: 22rpx; + color: #fff; + background: #909399; + padding: 4rpx 10rpx; + border-radius: 8rpx; +} .meta { color: #444; font-size: 24rpx; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.js b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.js new file mode 100644 index 0000000..06afdcc --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.js @@ -0,0 +1,170 @@ +"use strict"; +const common_vendor = require("../../common/vendor.js"); +const common_http = require("../../common/http.js"); +const _sfc_main = { + data() { + return { id: "", detail: null, categoryName: "-", templateName: "-" }; + }, + async onLoad(query) { + this.id = (query == null ? void 0 : query.id) || ""; + if (!this.id) { + common_vendor.index.showToast({ title: "参数缺失", icon: "none" }); + return; + } + await this.preloadDictionaries(); + await this.loadDetail(); + }, + methods: { + async preloadDictionaries() { + try { + const needCats = !Array.isArray(common_vendor.index.getStorageSync("CACHE_CATEGORIES")); + const needTpls = !Array.isArray(common_vendor.index.getStorageSync("CACHE_TEMPLATES")); + if (!needCats && !needTpls) + return; + const reqs = []; + if (needCats) + reqs.push(common_http.get("/api/product-categories")); + if (needTpls) + reqs.push(common_http.get("/api/product-templates")); + const res = await Promise.all(reqs); + let idx = 0; + if (needCats) { + const r = res[idx++]; + const list = Array.isArray(r == null ? void 0 : r.list) ? r.list : Array.isArray(r) ? r : []; + common_vendor.index.setStorageSync("CACHE_CATEGORIES", list); + } + if (needTpls) { + const r = res[idx++]; + const list = Array.isArray(r == null ? void 0 : r.list) ? r.list : Array.isArray(r) ? r : []; + common_vendor.index.setStorageSync("CACHE_TEMPLATES", list); + } + } catch (_) { + } + }, + async loadDetail() { + try { + const data = await common_http.get("/api/products/" + this.id); + this.detail = data; + this.categoryName = this.categoryLookup(data.categoryId); + this.templateName = this.templateLookup(data.templateId); + } catch (e) { + common_vendor.index.showToast({ title: (e == null ? void 0 : e.message) || "加载失败", icon: "none" }); + } + }, + preview(idx) { + var _a; + try { + const list = (((_a = this.detail) == null ? void 0 : _a.images) || []).map((i) => i.url || i); + common_vendor.index.previewImage({ urls: list, current: idx }); + } catch (_) { + } + }, + categoryLookup(id) { + try { + const list = common_vendor.index.getStorageSync("CACHE_CATEGORIES") || []; + const f = list.find((x) => String(x.id) === String(id)); + return f ? f.name : "-"; + } catch (_) { + return "-"; + } + }, + templateLookup(id) { + try { + const list = common_vendor.index.getStorageSync("CACHE_TEMPLATES") || []; + const f = list.find((x) => String(x.id) === String(id)); + return f ? f.name : "-"; + } catch (_) { + return "-"; + } + }, + async remove() { + try { + const r = await new Promise((resolve) => { + common_vendor.index.showModal({ content: "确认删除该货品?删除后可在后台恢复", success: resolve }); + }); + if (!r || !r.confirm) + return; + await common_http.del("/api/products/" + this.id); + common_vendor.index.showToast({ title: "已删除", icon: "success" }); + setTimeout(() => common_vendor.index.navigateBack(), 400); + } catch (e) { + common_vendor.index.showToast({ title: "删除失败", icon: "none" }); + } + }, + back() { + common_vendor.index.navigateBack({ delta: 1 }); + } + }, + computed: { + labeledPairs() { + var _a; + const params = (_a = this.detail) == null ? void 0 : _a.parameters; + if (!params || typeof params !== "object") + return []; + let labelMap = {}, unitMap = {}; + try { + const templates = common_vendor.index.getStorageSync("CACHE_TEMPLATES") || []; + const tpl = templates.find((t) => { + var _a2; + return String(t.id) === String((_a2 = this.detail) == null ? void 0 : _a2.templateId); + }); + if (tpl && Array.isArray(tpl.params)) + for (const p of tpl.params) { + labelMap[p.fieldKey] = p.fieldLabel; + unitMap[p.fieldKey] = p.unit; + } + } catch (_) { + } + return Object.keys(params).map((k) => ({ key: k, label: labelMap[k] || k, unit: unitMap[k] || "", value: params[k] })); + } + } +}; +function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { + return common_vendor.e({ + a: $data.detail + }, $data.detail ? common_vendor.e({ + b: common_vendor.t($data.detail.model), + c: $data.detail.deleted + }, $data.detail.deleted ? {} : {}, { + d: common_vendor.t($data.detail.name || "-"), + e: common_vendor.t($data.detail.brand || "-"), + f: common_vendor.t($data.detail.model || "-"), + g: common_vendor.t($data.detail.barcode || "-"), + h: common_vendor.t($data.categoryName), + i: common_vendor.t($data.templateName), + j: $data.detail.externalCode + }, $data.detail.externalCode ? { + k: common_vendor.t($data.detail.externalCode) + } : {}, { + l: $options.labeledPairs.length + }, $options.labeledPairs.length ? { + m: common_vendor.f($options.labeledPairs, (item, k0, i0) => { + return common_vendor.e({ + a: common_vendor.t(item.label), + b: item.unit + }, item.unit ? { + c: common_vendor.t(item.unit) + } : {}, { + d: common_vendor.t(item.value), + e: item.key + }); + }) + } : {}, { + n: $data.detail.images && $data.detail.images.length + }, $data.detail.images && $data.detail.images.length ? { + o: common_vendor.f($data.detail.images, (img, idx, i0) => { + return { + a: idx, + b: img.url || img, + c: common_vendor.o(($event) => $options.preview(idx), idx) + }; + }) + } : {}, { + p: common_vendor.t($data.detail.remark || "无"), + q: common_vendor.o((...args) => $options.back && $options.back(...args)), + r: common_vendor.o((...args) => $options.remove && $options.remove(...args)) + }) : {}); +} +const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); +wx.createPage(MiniProgramPage); +//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/product/product-detail.js.map diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.json b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.json new file mode 100644 index 0000000..8868ea7 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.json @@ -0,0 +1,4 @@ +{ + "navigationBarTitleText": "货品详情", + "usingComponents": {} +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.wxml new file mode 100644 index 0000000..21ed326 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.wxml @@ -0,0 +1 @@ +{{b}}已删除名称{{d}}品牌{{e}}型号{{f}}条码{{g}}类别{{h}}模板{{i}}编号{{k}}参数{{item.a}}({{item.c}}){{item.d}}未填写参数图片未上传图片备注{{p}}返回删除加载中... \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.wxss new file mode 100644 index 0000000..1e2be43 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/product-detail.wxss @@ -0,0 +1,124 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding: 24rpx 24rpx 160rpx; + background: #f6f7fb; +} +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 20rpx; +} +.model { + font-size: 36rpx; + font-weight: 700; + color: #2d3a4a; +} +.status.deleted { + font-size: 24rpx; + padding: 6rpx 18rpx; + border-radius: 999rpx; + background: #c0c4cc; + color: #fff; +} +.section { + background: #fff; + border-radius: 16rpx; + padding: 20rpx 22rpx; + margin-bottom: 24rpx; + box-shadow: 0 8rpx 24rpx rgba(0, 0, 0, 0.04); +} +.row { + display: flex; + justify-content: space-between; + padding: 12rpx 0; + border-bottom: 1rpx solid #f1f2f5; +} +.row:last-child { + border-bottom: none; +} +.label { + width: 160rpx; + font-size: 26rpx; + color: #7a8899; +} +.value { + flex: 1; + text-align: right; + font-size: 26rpx; + color: #2d3a4a; + word-break: break-all; +} +.block-title { + font-size: 28rpx; + font-weight: 600; + color: #2d3a4a; + margin-bottom: 12rpx; +} +.placeholder { + font-size: 26rpx; + color: #7a8899; +} +.params { + display: flex; + flex-direction: column; + gap: 12rpx; +} +.param { + display: flex; + justify-content: space-between; + font-size: 26rpx; + color: #2d3a4a; +} +.param-key { + color: #7a8899; +} +.images { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 12rpx; +} +.image { + width: 100%; + height: 200rpx; + border-radius: 16rpx; + background: #f0f2f5; +} +.footer { + display: flex; + justify-content: flex-end; + gap: 20rpx; +} +.loading { + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + color: #7a8899; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/select.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/select.wxss index c2d84b1..cacaae2 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/select.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/select.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.js b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.js new file mode 100644 index 0000000..a9606c2 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.js @@ -0,0 +1,201 @@ +"use strict"; +const common_vendor = require("../../common/vendor.js"); +const common_http = require("../../common/http.js"); +const _sfc_main = { + data() { + return { + id: "", + detail: null, + unitName: "-", + categoryName: "-", + templateName: "-" + }; + }, + async onLoad(query) { + this.id = (query == null ? void 0 : query.id) || ""; + if (!this.id) { + common_vendor.index.showToast({ title: "参数缺失", icon: "none" }); + return; + } + await this.loadDetail(); + }, + methods: { + async loadDetail() { + try { + const data = await common_http.get(`/api/products/submissions/${this.id}`); + this.detail = data; + this.categoryName = this.categoryLookup(data.categoryId); + this.templateName = this.templateLookup(data.templateId); + } catch (e) { + const msg = (e == null ? void 0 : e.message) || "加载失败"; + common_vendor.index.showToast({ title: msg, icon: "none" }); + } + }, + statusLabel(s) { + if (s === "approved") + return "已通过"; + if (s === "rejected") + return "已驳回"; + return "待审核"; + }, + statusClass(s) { + if (s === "approved") + return "approved"; + if (s === "rejected") + return "rejected"; + return "pending"; + }, + preview(idx) { + var _a; + if (!((_a = this.detail) == null ? void 0 : _a.images) || !this.detail.images.length) + return; + common_vendor.index.previewImage({ urls: this.detail.images, current: idx }); + }, + formatTime(value) { + if (!value) + return "-"; + try { + const d = new Date(value); + if (!Number.isFinite(d.getTime())) + return value; + const y = d.getFullYear(); + const m = String(d.getMonth() + 1).padStart(2, "0"); + const day = String(d.getDate()).padStart(2, "0"); + const hh = String(d.getHours()).padStart(2, "0"); + const mm = String(d.getMinutes()).padStart(2, "0"); + return `${y}-${m}-${day} ${hh}:${mm}`; + } catch (_) { + return value; + } + }, + unitLookup(id) { + try { + const list = []; + const found = list.find((x) => String(x.id) === String(id)); + return found ? found.name : "-"; + } catch (_) { + return "-"; + } + }, + categoryLookup(id) { + try { + const list = common_vendor.index.getStorageSync("CACHE_CATEGORIES") || []; + const found = list.find((x) => String(x.id) === String(id)); + return found ? found.name : "-"; + } catch (_) { + return "-"; + } + }, + templateLookup(id) { + try { + const list = common_vendor.index.getStorageSync("CACHE_TEMPLATES") || []; + const found = list.find((x) => String(x.id) === String(id)); + return found ? found.name : "-"; + } catch (_) { + return "-"; + } + }, + back() { + common_vendor.index.navigateBack({ delta: 1 }); + }, + resubmit() { + const payload = { + model: this.detail.model, + name: this.detail.name, + brand: this.detail.brand, + spec: this.detail.spec, + origin: this.detail.origin, + unitId: this.detail.unitId, + categoryId: this.detail.categoryId, + remark: this.detail.remark, + barcode: this.detail.barcode, + parameters: this.detail.parameters + }; + const query = encodeURIComponent(JSON.stringify(payload)); + common_vendor.index.navigateTo({ url: `/pages/product/submit?prefill=${query}` }); + } + }, + computed: { + stockRange() { + var _a, _b; + const min = (_a = this.detail) == null ? void 0 : _a.safeMin; + const max = (_b = this.detail) == null ? void 0 : _b.safeMax; + if (min == null && max == null) + return "-"; + if (min != null && max != null) + return `${min} ~ ${max}`; + if (min != null) + return `≥ ${min}`; + return `≤ ${max}`; + }, + labeledPairs() { + var _a; + const params = (_a = this.detail) == null ? void 0 : _a.parameters; + if (!params || typeof params !== "object") + return []; + let labelMap = {}; + try { + const templates = common_vendor.index.getStorageSync("CACHE_TEMPLATES") || []; + const tpl = templates.find((t) => { + var _a2; + return String(t.id) === String((_a2 = this.detail) == null ? void 0 : _a2.templateId); + }); + if (tpl && Array.isArray(tpl.params)) { + for (const p of tpl.params) + labelMap[p.fieldKey] = p.fieldLabel; + } + } catch (_) { + } + return Object.keys(params).map((k) => ({ key: k, label: labelMap[k] || k, value: params[k] })); + } + } +}; +function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { + return common_vendor.e({ + a: $data.detail + }, $data.detail ? common_vendor.e({ + b: common_vendor.t($data.detail.model), + c: common_vendor.t($options.statusLabel($data.detail.status)), + d: common_vendor.n($options.statusClass($data.detail.status)), + e: common_vendor.t($data.detail.name || "-"), + f: common_vendor.t($data.detail.brand || "-"), + g: common_vendor.t($data.detail.spec || "-"), + h: common_vendor.t($data.detail.barcode || "-"), + i: common_vendor.t($data.categoryName), + j: common_vendor.t($data.templateName), + k: $options.labeledPairs.length + }, $options.labeledPairs.length ? { + l: common_vendor.f($options.labeledPairs, (item, k0, i0) => { + return { + a: common_vendor.t(item.label), + b: common_vendor.t(item.value), + c: item.key + }; + }) + } : {}, { + m: $data.detail.images && $data.detail.images.length + }, $data.detail.images && $data.detail.images.length ? { + n: common_vendor.f($data.detail.images, (img, idx, i0) => { + return { + a: idx, + b: img, + c: common_vendor.o(($event) => $options.preview(idx), idx) + }; + }) + } : {}, { + o: common_vendor.t($data.detail.remark || "无"), + p: common_vendor.t($options.formatTime($data.detail.createdAt)), + q: common_vendor.t($options.formatTime($data.detail.reviewedAt)), + r: $data.detail.reviewRemark + }, $data.detail.reviewRemark ? { + s: common_vendor.t($data.detail.reviewRemark) + } : {}, { + t: common_vendor.o((...args) => $options.back && $options.back(...args)), + v: $data.detail.status === "rejected" + }, $data.detail.status === "rejected" ? { + w: common_vendor.o((...args) => $options.resubmit && $options.resubmit(...args)) + } : {}) : {}); +} +const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); +wx.createPage(MiniProgramPage); +//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/product/submission-detail.js.map diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.json b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.json new file mode 100644 index 0000000..43e2d35 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.json @@ -0,0 +1,4 @@ +{ + "navigationBarTitleText": "提交详情", + "usingComponents": {} +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.wxml new file mode 100644 index 0000000..2604174 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.wxml @@ -0,0 +1 @@ +{{b}}{{c}}名称{{e}}品牌{{f}}规格{{g}}条码{{h}}类别{{i}}模板{{j}}参数{{item.a}}{{item.b}}未填写参数图片未上传图片备注{{o}}提交时间{{p}}审核时间{{q}}审核说明{{s}}返回重新提交加载中... \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.wxss new file mode 100644 index 0000000..89500d1 --- /dev/null +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submission-detail.wxss @@ -0,0 +1,134 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ +/* 颜色变量 */ +/* 行为相关颜色 */ +/* 藏青系主色(高亮) */ +/* 文字基本颜色 */ +/* 背景颜色 */ +/* 边框颜色 */ +/* 尺寸变量 */ +/* 文字尺寸 */ +/* 图片尺寸 */ +/* Border Radius */ +/* 水平间距 */ +/* 垂直间距 */ +/* 透明度 */ +/* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ +.page { + padding: 24rpx 24rpx 160rpx; + background: #f6f7fb; +} +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 20rpx; +} +.model { + font-size: 36rpx; + font-weight: 700; + color: #2d3a4a; +} +.status { + font-size: 26rpx; + padding: 6rpx 18rpx; + border-radius: 999rpx; +} +.status.pending { + background: rgba(246, 190, 0, 0.15); + color: #c47f00; +} +.status.approved { + background: rgba(103, 194, 58, 0.15); + color: #409eff; +} +.status.rejected { + background: rgba(255, 87, 115, 0.18); + color: #f56c6c; +} +.section { + background: #fff; + border-radius: 16rpx; + padding: 20rpx 22rpx; + margin-bottom: 24rpx; + box-shadow: 0 8rpx 24rpx rgba(0, 0, 0, 0.04); +} +.row { + display: flex; + justify-content: space-between; + padding: 12rpx 0; + border-bottom: 1rpx solid #f1f2f5; +} +.row:last-child { + border-bottom: none; +} +.label { + width: 160rpx; + font-size: 26rpx; + color: #7a8899; +} +.value { + flex: 1; + text-align: right; + font-size: 26rpx; + color: #2d3a4a; + word-break: break-all; +} +.block-title { + font-size: 28rpx; + font-weight: 600; + color: #2d3a4a; + margin-bottom: 12rpx; +} +.placeholder { + font-size: 26rpx; + color: #7a8899; +} +.params { + display: flex; + flex-direction: column; + gap: 12rpx; +} +.param { + display: flex; + justify-content: space-between; + font-size: 26rpx; + color: #2d3a4a; +} +.param-key { + color: #7a8899; +} +.images { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 12rpx; +} +.image { + width: 100%; + height: 200rpx; + border-radius: 16rpx; + background: #f0f2f5; +} +.footer { + display: flex; + justify-content: flex-end; + gap: 20rpx; +} +.loading { + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + color: #7a8899; +} \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.js b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.js index b4522c7..6275308 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.js @@ -22,9 +22,10 @@ const _sfc_main = { methods: { async preloadDictionaries() { try { - const [units, categories] = await Promise.all([ + const [units, categories, templates] = await Promise.all([ this.cacheUnitsLoaded ? Promise.resolve(null) : common_http.get("/api/product-units"), - this.cacheCategoriesLoaded ? Promise.resolve(null) : common_http.get("/api/product-categories") + this.cacheCategoriesLoaded ? Promise.resolve(null) : common_http.get("/api/product-categories"), + common_http.get("/api/product-templates") ]); if (units) { const list = Array.isArray(units == null ? void 0 : units.list) ? units.list : Array.isArray(units) ? units : []; @@ -36,6 +37,10 @@ const _sfc_main = { common_vendor.index.setStorageSync("CACHE_CATEGORIES", list); this.cacheCategoriesLoaded = true; } + if (templates) { + const list = Array.isArray(templates == null ? void 0 : templates.list) ? templates.list : Array.isArray(templates) ? templates : []; + common_vendor.index.setStorageSync("CACHE_TEMPLATES", list); + } } catch (_) { } }, @@ -67,7 +72,7 @@ const _sfc_main = { this.finished = true; this.page += 1; } catch (e) { - common_vendor.index.__f__("warn", "at pages/product/submissions.vue:113", "加载提交记录失败", e); + common_vendor.index.__f__("warn", "at pages/product/submissions.vue:118", "加载提交记录失败", e); const msg = (e == null ? void 0 : e.message) || "加载失败"; common_vendor.index.showToast({ title: msg, icon: "none" }); } finally { diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.wxss index f9b4cb7..1912251 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submissions.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { display: flex; flex-direction: column; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.js b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.js index eac6bc9..a21e1b5 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.js +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.js @@ -12,6 +12,7 @@ const _sfc_main = { barcode: "", categoryId: "", templateId: "", + externalCode: "", parameters: {}, images: [], remark: "", @@ -99,11 +100,19 @@ const _sfc_main = { this.form.templateId = t ? t.id : ""; this.paramValues = {}; }, + onPickDate(p, e) { + var _a; + this.paramValues[p.fieldKey] = ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.value) || ""; + }, onPickEnum(p, e) { const idx = Number(e.detail.value); const arr = p.enumOptions || []; this.paramValues[p.fieldKey] = arr[idx]; }, + displayEnum(p) { + const v = this.paramValues[p.fieldKey]; + return v === void 0 || v === null || v === "" ? "选择" + p.fieldLabel : String(v); + }, async scanBarcode() { var _a; try { @@ -184,6 +193,7 @@ const _sfc_main = { model: this.form.model, brand: this.form.brand, barcode: this.form.barcode, + externalCode: this.form.externalCode || null, categoryId: this.form.categoryId || null, templateId: this.form.templateId || null, parameters: paramsForSubmit, @@ -213,7 +223,7 @@ if (!Array) { _component_ImageUploader(); } function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { - return { + return common_vendor.e({ a: $data.form.model, b: common_vendor.o(common_vendor.m(($event) => $data.form.model = $event.detail.value, { trim: true @@ -230,34 +240,87 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { h: common_vendor.t($options.categoryLabel), i: $options.categoryNames, j: common_vendor.o((...args) => $options.onPickCategory && $options.onPickCategory(...args)), - k: common_vendor.t($options.templateLabel), - l: $options.templateNames, - m: common_vendor.o((...args) => $options.onPickTemplate && $options.onPickTemplate(...args)), - n: common_vendor.o(($event) => $data.form.images = $event), - o: common_vendor.p({ + k: $data.form.externalCode, + l: common_vendor.o(common_vendor.m(($event) => $data.form.externalCode = $event.detail.value, { + trim: true + })), + m: common_vendor.t($options.templateLabel), + n: $options.templateNames, + o: common_vendor.o((...args) => $options.onPickTemplate && $options.onPickTemplate(...args)), + p: $options.selectedTemplate + }, $options.selectedTemplate ? { + q: common_vendor.f($options.selectedTemplate.params || [], (p, idx, i0) => { + return common_vendor.e({ + a: common_vendor.t(p.fieldLabel), + b: p.unit + }, p.unit ? { + c: common_vendor.t(p.unit) + } : {}, { + d: p.required + }, p.required ? {} : {}, { + e: p.type === "string" + }, p.type === "string" ? { + f: "请输入" + p.fieldLabel, + g: $data.paramValues[p.fieldKey], + h: common_vendor.o(common_vendor.m(($event) => $data.paramValues[p.fieldKey] = $event.detail.value, { + trim: true + }), p.fieldKey) + } : p.type === "number" ? { + j: "请输入" + p.fieldLabel, + k: $data.paramValues[p.fieldKey], + l: common_vendor.o(common_vendor.m(($event) => $data.paramValues[p.fieldKey] = $event.detail.value, { + number: true + }), p.fieldKey) + } : p.type === "boolean" ? { + n: !!$data.paramValues[p.fieldKey], + o: common_vendor.o((e) => $data.paramValues[p.fieldKey] = e.detail.value, p.fieldKey) + } : p.type === "enum" ? { + q: common_vendor.t($options.displayEnum(p)), + r: p.enumOptions || [], + s: common_vendor.o(($event) => $options.onPickEnum(p, $event), p.fieldKey) + } : p.type === "date" ? { + v: common_vendor.t($data.paramValues[p.fieldKey] || "选择" + p.fieldLabel), + w: common_vendor.o(($event) => $options.onPickDate(p, $event), p.fieldKey) + } : { + x: "请输入" + p.fieldLabel, + y: $data.paramValues[p.fieldKey], + z: common_vendor.o(common_vendor.m(($event) => $data.paramValues[p.fieldKey] = $event.detail.value, { + trim: true + }), p.fieldKey) + }, { + i: p.type === "number", + m: p.type === "boolean", + p: p.type === "enum", + t: p.type === "date", + A: p.fieldKey + }); + }) + } : {}, { + r: common_vendor.o(($event) => $data.form.images = $event), + s: common_vendor.p({ max: 9, formData: { ownerType: "submission" }, modelValue: $data.form.images }), - p: $data.form.remark, - q: common_vendor.o(common_vendor.m(($event) => $data.form.remark = $event.detail.value, { + t: $data.form.remark, + v: common_vendor.o(common_vendor.m(($event) => $data.form.remark = $event.detail.value, { trim: true })), - r: $data.form.safeMin, - s: common_vendor.o(common_vendor.m(($event) => $data.form.safeMin = $event.detail.value, { + w: $data.form.safeMin, + x: common_vendor.o(common_vendor.m(($event) => $data.form.safeMin = $event.detail.value, { number: true })), - t: $data.form.safeMax, - v: common_vendor.o(common_vendor.m(($event) => $data.form.safeMax = $event.detail.value, { + y: $data.form.safeMax, + z: common_vendor.o(common_vendor.m(($event) => $data.form.safeMax = $event.detail.value, { number: true })), - w: $data.submitting, - x: common_vendor.o((...args) => $options.submit && $options.submit(...args)), - y: $data.checking, - z: common_vendor.o((...args) => $options.checkModel && $options.checkModel(...args)) - }; + A: $data.submitting, + B: common_vendor.o((...args) => $options.submit && $options.submit(...args)), + C: $data.checking, + D: common_vendor.o((...args) => $options.checkModel && $options.checkModel(...args)) + }); } const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]); wx.createPage(MiniProgramPage); diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxml b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxml index 2c40e89..47abe00 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxml +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxml @@ -1 +1 @@ -提交配件填写型号、名称、参数与图片,提交后进入待审核状态型号品牌条码识码类别{{h}}模板{{k}}图片备注安全库存提交审核查重 \ No newline at end of file +提交配件填写型号、名称、参数与图片,提交后进入待审核状态型号品牌条码识码类别{{h}}编号模板{{m}}参数{{p.a}}({{p.c}})*{{p.q}}{{p.v}}图片备注安全库存提交审核查重 \ No newline at end of file diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxss index d5ef0da..ea6cd0b 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/product/submit.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { padding: 24rpx 24rpx 120rpx; background: #f6f7fb; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/report/index.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/report/index.wxss index 55ddbe5..44d66b8 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/report/index.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/report/index.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .report { padding: 24rpx 20rpx 36rpx; display: flex; diff --git a/frontend/unpackage/dist/dev/mp-weixin/pages/supplier/form.wxss b/frontend/unpackage/dist/dev/mp-weixin/pages/supplier/form.wxss index 3eb2c97..0b444f2 100644 --- a/frontend/unpackage/dist/dev/mp-weixin/pages/supplier/form.wxss +++ b/frontend/unpackage/dist/dev/mp-weixin/pages/supplier/form.wxss @@ -24,6 +24,7 @@ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ +/* 表单控件尺寸(统一配置,避免页面内硬编码) */ .page { padding-bottom: 140rpx; } diff --git a/frontend/unpackage/dist/dev/mp-weixin/static/icons/undraw_visual-data_1eya.png b/frontend/unpackage/dist/dev/mp-weixin/static/icons/undraw_visual-data_1eya.png new file mode 100644 index 0000000..eecc141 Binary files /dev/null and b/frontend/unpackage/dist/dev/mp-weixin/static/icons/undraw_visual-data_1eya.png differ diff --git a/frontend/unpackage/dist/dev/mp-weixin/static/icons/配件审核_1758986693151.xlsx b/frontend/unpackage/dist/dev/mp-weixin/static/icons/配件审核_1758986693151.xlsx new file mode 100644 index 0000000..91d534b Binary files /dev/null and b/frontend/unpackage/dist/dev/mp-weixin/static/icons/配件审核_1758986693151.xlsx differ diff --git a/frontend/unpackage/dist/dev/mp-weixin/static/icons/配件审核_1758987353730.xlsx b/frontend/unpackage/dist/dev/mp-weixin/static/icons/配件审核_1758987353730.xlsx new file mode 100644 index 0000000..b421396 Binary files /dev/null and b/frontend/unpackage/dist/dev/mp-weixin/static/icons/配件审核_1758987353730.xlsx differ diff --git a/normal-admin/src/api/http.ts b/normal-admin/src/api/http.ts index 466ef4b..b8b2e4f 100644 --- a/normal-admin/src/api/http.ts +++ b/normal-admin/src/api/http.ts @@ -4,13 +4,32 @@ const storageBase = (() => { try { return localStorage.getItem('API_BASE_URL') | const API_BASE_URL = (storageBase || import.meta.env.VITE_APP_API_BASE_URL || 'http://127.0.0.1:8080').replace(/\/$/, '') export const http = axios.create({ baseURL: API_BASE_URL, timeout: 15000 }) -const SHOP_ID = (() => { try { const v = localStorage.getItem('SHOP_ID'); if (v) return Number(v) } catch {} return Number(import.meta.env.VITE_APP_SHOP_ID || '1') })() -const USER_ID = (() => { try { const v = localStorage.getItem('USER_ID'); if (v) return Number(v) } catch {} return Number(import.meta.env.VITE_APP_USER_ID || '') })() +function readNumber(key: string): number { try { const v = localStorage.getItem(key); if (v) return Number(v) } catch {} return NaN } +const SHOP_ID = Number.isFinite(readNumber('SHOP_ID')) ? readNumber('SHOP_ID') : Number(import.meta.env.VITE_APP_SHOP_ID || '1') +const USER_ID = Number.isFinite(readNumber('USER_ID')) ? readNumber('USER_ID') : Number(import.meta.env.VITE_APP_USER_ID || '') + +function parseJwtClaims(token: string): any { + try { + const parts = String(token || '').split('.') + if (parts.length < 2) return {} + const payload = JSON.parse(decodeURIComponent(escape(atob(parts[1].replace(/-/g, '+').replace(/_/g, '/'))))) + return payload || {} + } catch { return {} } +} http.interceptors.request.use(cfg => { cfg.headers = cfg.headers || {} if (!cfg.headers['X-Shop-Id']) cfg.headers['X-Shop-Id'] = String(SHOP_ID) - if (USER_ID) cfg.headers['X-User-Id'] = String(USER_ID) + const token = ((): string => { try { return localStorage.getItem('TOKEN') || '' } catch { return '' } })() + if (token && !cfg.headers['Authorization']) cfg.headers['Authorization'] = `Bearer ${token}` + // 从 Token 自动解析 userId/shopId 作为兜底 + if (token) { + const claims = parseJwtClaims(token) + if (claims && claims.userId && !cfg.headers['X-User-Id']) cfg.headers['X-User-Id'] = String(claims.userId) + if (claims && claims.shopId && (!cfg.headers['X-Shop-Id'] || cfg.headers['X-Shop-Id'] === 'NaN')) cfg.headers['X-Shop-Id'] = String(claims.shopId) + } + // 最后再使用本地 USER_ID 覆盖(如已明确设置) + if (USER_ID && !cfg.headers['X-User-Id']) cfg.headers['X-User-Id'] = String(USER_ID) cfg.headers['Accept'] = cfg.headers['Accept'] || 'application/json' return cfg }) diff --git a/normal-admin/src/router/index.ts b/normal-admin/src/router/index.ts index c5dbeac..bea9410 100644 --- a/normal-admin/src/router/index.ts +++ b/normal-admin/src/router/index.ts @@ -2,11 +2,18 @@ import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router' const routes: RouteRecordRaw[] = [ { path: '/', redirect: '/parts/submissions' }, + { path: '/login', component: () => import('../views/Login.vue') }, { path: '/parts/submissions', component: () => import('../views/parts/Submissions.vue') }, { path: '/my', component: () => import('../views/My.vue') } ] const router = createRouter({ history: createWebHistory(), routes }) + +router.beforeEach((to, _from, next) => { + const token = ((): string => { try { return localStorage.getItem('TOKEN') || '' } catch { return '' } })() + if (!token && to.path !== '/login') return next('/login') + next() +}) export default router diff --git a/normal-admin/src/views/Login.vue b/normal-admin/src/views/Login.vue new file mode 100644 index 0000000..66d7b2c --- /dev/null +++ b/normal-admin/src/views/Login.vue @@ -0,0 +1,58 @@ + + + + 普通管理端登录 + + + + + + + + + 登录 + + + 说明:登录成功后将把 USER_ID/SHOP_ID/ROLE/TOKEN 写入本地。 + + + + + + + + +