k2-im 0.2.7 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1755,6 +1755,7 @@ interface ImDirectoryItem<TKind extends ImDirectoryKind = ImDirectoryKind> {
1755
1755
  displayName: string;
1756
1756
  cardDisplayName: string;
1757
1757
  avatarUrl?: string;
1758
+ /** 面向用户展示的账号;HTTP 目录优先映射 mid(金刚号),与内部 id 分开。 */
1758
1759
  username?: string;
1759
1760
  }
1760
1761
  /** HTTP adapter 返回的页;页码只在 port 内可见,不进入产品 API。 */
@@ -1752,6 +1752,7 @@ interface ImDirectoryItem<TKind extends ImDirectoryKind = ImDirectoryKind> {
1752
1752
  displayName: string;
1753
1753
  cardDisplayName: string;
1754
1754
  avatarUrl?: string;
1755
+ /** 面向用户展示的账号;HTTP 目录优先映射 mid(金刚号),与内部 id 分开。 */
1755
1756
  username?: string;
1756
1757
  }
1757
1758
  /** HTTP adapter 返回的页;页码只在 port 内可见,不进入产品 API。 */
package/dist/index.d.ts CHANGED
@@ -1793,6 +1793,7 @@ interface ImDirectoryItem<TKind extends ImDirectoryKind = ImDirectoryKind> {
1793
1793
  displayName: string;
1794
1794
  cardDisplayName: string;
1795
1795
  avatarUrl?: string;
1796
+ /** 面向用户展示的账号;HTTP 目录优先映射 mid(金刚号),与内部 id 分开。 */
1796
1797
  username?: string;
1797
1798
  }
1798
1799
  /** HTTP adapter 返回的页;页码只在 port 内可见,不进入产品 API。 */
@@ -1 +1 @@
1
- import{requestCoreJson as e}from"./requests/core-json-request.js";class i extends Error{constructor(e){super(e),this.name="DirectoryMappingError"}}function r(e,r){if(null===e||"object"!=typeof e||Array.isArray(e))throw new i(`${r} 必须是对象`);return e}function n(e){return"string"==typeof e||"number"==typeof e?String(e).trim():""}function t(e){const i=n(e);return""===i?void 0:i}function a(e){const a=r(e,"联系人目录项"),o=void 0===a.user_info?a:r(a.user_info,"联系人 user_info"),d=n(o.user_id??a.friend_user_id??a.user_id);if(""===d)throw new i("联系人目录项缺少稳定 user_id");const s=n(a.remark_name)||n(a.contact_name)||n(o.nick_name)||n(o.username)||n(o.mid)||d,u=n(o.nick_name)||n(o.username)||n(o.mid)||d,c=t(o.head_img_url),p=t(o.username)??t(o.mid);return{id:d,kind:"individual",displayName:s,cardDisplayName:u,...void 0===c?{}:{avatarUrl:c},...void 0===p?{}:{username:p}}}function o(e){const a=r(e,"群组目录项"),o=n(a.group_id);if(""===o)throw new i("群组目录项缺少稳定 group_id");const d=t(a.head_img_url),s=n(a.name)||o;return{id:o,kind:"group",displayName:s,cardDisplayName:s,...void 0===d?{}:{avatarUrl:d}}}function d(e){const a=r(e,"社群目录项"),o=n(a.radio_id??a.id);if(""===o)throw new i("社群目录项缺少稳定 radio_id/id");const d=t(a.head_img_url),s=n(a.name)||o;return{id:o,kind:"channel",displayName:s,cardDisplayName:s,...void 0===d?{}:{avatarUrl:d}}}function s(r){return{async list(n){!function(e,r){if(!Number.isSafeInteger(e)||e<1)throw new i("目录 page 必须是正整数");if(!Number.isSafeInteger(r)||r<1||r>100)throw new i("目录 pageSize 必须是 1-100 的整数")}(n.page,n.pageSize);const t="individual"===n.kind?"/friend/list":"group"===n.kind?"/user_group/list":"/user_radio/list",s="channel"===n.kind&&void 0!==r.getUserId?String(await r.getUserId()).trim():"",u=(await e(r.client,t,{...""===s?{}:{user_id:s},update_version:0,page:n.page,page_size:n.pageSize},{responseMode:"strict",method:"GET",...void 0===r.clientType?{}:{headers:{"Client-type":String(r.clientType)}}})).data??[];if(!Array.isArray(u))throw new i(`${n.kind} 目录 data 必须是数组`);const c="individual"===n.kind?a:"group"===n.kind?o:d,p=/* @__PURE__ */new Map;for(const e of u){const i=c(e);p.set(i.id,i)}const m=u.length<n.pageSize;return{items:[...p.values()],...m?{}:{nextPage:n.page+1},exhausted:m}}}}export{i as DirectoryMappingError,s as createDirectoryHttpAdapter};
1
+ import{requestCoreJson as e}from"./requests/core-json-request.js";class i extends Error{constructor(e){super(e),this.name="DirectoryMappingError"}}function r(e,r){if(null===e||"object"!=typeof e||Array.isArray(e))throw new i(`${r} 必须是对象`);return e}function n(e){return"string"==typeof e||"number"==typeof e?String(e).trim():""}function t(e){const i=n(e);return""===i?void 0:i}function a(e){const a=r(e,"联系人目录项"),o=void 0===a.user_info?a:r(a.user_info,"联系人 user_info"),d=n(o.user_id??a.friend_user_id??a.user_id);if(""===d)throw new i("联系人目录项缺少稳定 user_id");const s=n(a.remark_name)||n(a.contact_name)||n(o.nick_name)||n(o.username)||n(o.mid)||d,u=n(o.nick_name)||n(o.username)||n(o.mid)||d,c=t(o.head_img_url),p=t(o.mid)??t(o.username);return{id:d,kind:"individual",displayName:s,cardDisplayName:u,...void 0===c?{}:{avatarUrl:c},...void 0===p?{}:{username:p}}}function o(e){const a=r(e,"群组目录项"),o=n(a.group_id);if(""===o)throw new i("群组目录项缺少稳定 group_id");const d=t(a.head_img_url),s=n(a.name)||o;return{id:o,kind:"group",displayName:s,cardDisplayName:s,...void 0===d?{}:{avatarUrl:d}}}function d(e){const a=r(e,"社群目录项"),o=n(a.radio_id??a.id);if(""===o)throw new i("社群目录项缺少稳定 radio_id/id");const d=t(a.head_img_url),s=n(a.name)||o;return{id:o,kind:"channel",displayName:s,cardDisplayName:s,...void 0===d?{}:{avatarUrl:d}}}function s(r){return{async list(n){!function(e,r){if(!Number.isSafeInteger(e)||e<1)throw new i("目录 page 必须是正整数");if(!Number.isSafeInteger(r)||r<1||r>100)throw new i("目录 pageSize 必须是 1-100 的整数")}(n.page,n.pageSize);const t="individual"===n.kind?"/friend/list":"group"===n.kind?"/user_group/list":"/user_radio/list",s="channel"===n.kind&&void 0!==r.getUserId?String(await r.getUserId()).trim():"",u=(await e(r.client,t,{...""===s?{}:{user_id:s},update_version:0,page:n.page,page_size:n.pageSize},{responseMode:"strict",method:"GET",...void 0===r.clientType?{}:{headers:{"Client-type":String(r.clientType)}}})).data??[];if(!Array.isArray(u))throw new i(`${n.kind} 目录 data 必须是数组`);const c="individual"===n.kind?a:"group"===n.kind?o:d,p=/* @__PURE__ */new Map;for(const e of u){const i=c(e);p.set(i.id,i)}const m=u.length<n.pageSize;return{items:[...p.values()],...m?{}:{nextPage:n.page+1},exhausted:m}}}}export{i as DirectoryMappingError,s as createDirectoryHttpAdapter};
package/dist/sdk.d.ts CHANGED
@@ -1597,6 +1597,7 @@ interface ImDirectoryItem<TKind extends ImDirectoryKind = ImDirectoryKind> {
1597
1597
  displayName: string;
1598
1598
  cardDisplayName: string;
1599
1599
  avatarUrl?: string;
1600
+ /** 面向用户展示的账号;HTTP 目录优先映射 mid(金刚号),与内部 id 分开。 */
1600
1601
  username?: string;
1601
1602
  }
1602
1603
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "k2-im",
3
3
  "type": "module",
4
- "version": "0.2.7",
4
+ "version": "0.2.8",
5
5
  "private": false,
6
6
  "license": "MIT",
7
7
  "publishConfig": {