@tarojs/taro-h5 4.0.0-alpha.0 → 4.0.0-alpha.2

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.
Files changed (65) hide show
  1. package/dist/api/base/index.d.ts +1 -1
  2. package/dist/api/base/index.js +1 -1
  3. package/dist/api/base/index.js.map +1 -1
  4. package/dist/api/base/system.js +7 -7
  5. package/dist/api/base/system.js.map +1 -1
  6. package/dist/api/canvas/CanvasContext.js +5 -2
  7. package/dist/api/canvas/CanvasContext.js.map +1 -1
  8. package/dist/api/device/battery.js +1 -1
  9. package/dist/api/device/clipboard.js +7 -1
  10. package/dist/api/device/clipboard.js.map +1 -1
  11. package/dist/api/device/network.js +1 -1
  12. package/dist/api/device/network.js.map +1 -1
  13. package/dist/api/index.js +3 -1
  14. package/dist/api/index.js.map +1 -1
  15. package/dist/api/location/chooseLocation.js +3 -3
  16. package/dist/api/location/chooseLocation.js.map +1 -1
  17. package/dist/api/location/style.scss.js +2 -2
  18. package/dist/api/media/image/chooseImage.js +1 -1
  19. package/dist/api/media/image/previewImage.js +1 -1
  20. package/dist/api/media/video/chooseMedia.js +3 -4
  21. package/dist/api/media/video/chooseMedia.js.map +1 -1
  22. package/dist/api/media/video/getVideoInfo.js +1 -1
  23. package/dist/api/network/request/index.js +31 -6
  24. package/dist/api/network/request/index.js.map +1 -1
  25. package/dist/api/network/websocket/index.d.ts +2 -1
  26. package/dist/api/network/websocket/index.js +1 -1
  27. package/dist/api/network/websocket/index.js.map +1 -1
  28. package/dist/api/qq/index.d.ts +9 -1
  29. package/dist/api/qq/index.js +9 -1
  30. package/dist/api/qq/index.js.map +1 -1
  31. package/dist/api/ui/animation/index.js +68 -38
  32. package/dist/api/ui/animation/index.js.map +1 -1
  33. package/dist/api/ui/fonts.js +1 -1
  34. package/dist/api/ui/interaction/actionSheet.d.ts +12 -0
  35. package/dist/api/ui/interaction/actionSheet.js +34 -12
  36. package/dist/api/ui/interaction/actionSheet.js.map +1 -1
  37. package/dist/api/ui/interaction/index.js +3 -2
  38. package/dist/api/ui/interaction/index.js.map +1 -1
  39. package/dist/api/ui/interaction/modal.d.ts +2 -0
  40. package/dist/api/ui/interaction/modal.js +3 -1
  41. package/dist/api/ui/interaction/modal.js.map +1 -1
  42. package/dist/api/ui/navigation-bar/index.js +3 -2
  43. package/dist/api/ui/navigation-bar/index.js.map +1 -1
  44. package/dist/api/wxml/IntersectionObserver.js +2 -2
  45. package/dist/api/wxml/IntersectionObserver.js.map +1 -1
  46. package/dist/api/wxml/index.d.ts +2 -1
  47. package/dist/api/wxml/index.js +1 -0
  48. package/dist/api/wxml/index.js.map +1 -1
  49. package/dist/api/wxml/nodesRef.js +5 -2
  50. package/dist/api/wxml/nodesRef.js.map +1 -1
  51. package/dist/index.cjs.d.ts +67 -2
  52. package/dist/index.cjs.js +2193 -2374
  53. package/dist/index.cjs.js.map +1 -1
  54. package/dist/index.esm.d.ts +67 -2
  55. package/dist/index.esm.js +2169 -2360
  56. package/dist/index.esm.js.map +1 -1
  57. package/dist/index.js +3 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/utils/handler.js +4 -0
  60. package/dist/utils/handler.js.map +1 -1
  61. package/dist/utils/index.js +1 -2
  62. package/dist/utils/index.js.map +1 -1
  63. package/package.json +18 -13
  64. package/dist/node_modules/.pnpm/registry.npmjs.org_tslib@2.5.0/node_modules/tslib/tslib.es6.js +0 -296
  65. package/dist/node_modules/.pnpm/registry.npmjs.org_tslib@2.5.0/node_modules/tslib/tslib.es6.js.map +0 -1
@@ -1,10 +1,11 @@
1
- import { __rest } from '../../../node_modules/.pnpm/registry.npmjs.org_tslib@2.5.0/node_modules/tslib/tslib.es6.js';
1
+ import { __rest } from 'tslib';
2
2
  import 'whatwg-fetch';
3
3
  import 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only';
4
4
  import Taro from '@tarojs/api';
5
5
  import { isFunction } from '@tarojs/shared';
6
6
  import jsonpRetry from 'jsonp-retry';
7
7
  import { serializeParams } from '../../../utils/index.js';
8
+ import { NETWORK_TIMEOUT } from '../utils.js';
8
9
 
9
10
  // @ts-ignore
10
11
  const { Link } = Taro;
@@ -20,7 +21,10 @@ function _request(options = {}) {
20
21
  const { success, complete, fail } = options;
21
22
  const params = {};
22
23
  const res = {};
23
- let { cache = 'default', credentials, data, dataType, header = {}, jsonp, method = 'GET', mode, responseType, signal, timeout = 60000, url = '' } = options, opts = __rest(options, ["cache", "credentials", "data", "dataType", "header", "jsonp", "method", "mode", "responseType", "signal", "timeout", "url"]);
24
+ let { cache = 'default', credentials, data, dataType, header = {}, jsonp, method = 'GET', mode, responseType, signal, timeout, url = '' } = options, opts = __rest(options, ["cache", "credentials", "data", "dataType", "header", "jsonp", "method", "mode", "responseType", "signal", "timeout", "url"]);
25
+ if (typeof timeout !== 'number') {
26
+ timeout = NETWORK_TIMEOUT;
27
+ }
24
28
  Object.assign(params, opts);
25
29
  if (jsonp) {
26
30
  // @ts-ignore
@@ -79,23 +83,28 @@ function _request(options = {}) {
79
83
  params.mode = mode;
80
84
  }
81
85
  let timeoutTimer = null;
86
+ let controller = null;
82
87
  if (signal) {
83
88
  params.signal = signal;
84
89
  }
85
- else if (typeof timeout === 'number') {
86
- const controller = new window.AbortController();
90
+ else {
91
+ controller = new window.AbortController();
87
92
  params.signal = controller.signal;
88
93
  timeoutTimer = setTimeout(function () {
89
- controller.abort();
94
+ if (controller)
95
+ controller.abort();
90
96
  }, timeout);
91
97
  }
92
98
  params.credentials = credentials;
93
- return fetch(url, params)
99
+ const p = fetch(url, params)
94
100
  .then(response => {
95
101
  if (timeoutTimer) {
96
102
  clearTimeout(timeoutTimer);
97
103
  timeoutTimer = null;
98
104
  }
105
+ if (controller) {
106
+ controller = null;
107
+ }
99
108
  if (!response) {
100
109
  const errorResponse = { ok: false };
101
110
  throw errorResponse;
@@ -131,12 +140,28 @@ function _request(options = {}) {
131
140
  clearTimeout(timeoutTimer);
132
141
  timeoutTimer = null;
133
142
  }
143
+ if (controller) {
144
+ controller = null;
145
+ }
134
146
  isFunction(fail) && fail(err);
135
147
  isFunction(complete) && complete(res);
136
148
  err.statusCode = res.statusCode;
137
149
  err.errMsg = err.message;
138
150
  return Promise.reject(err);
139
151
  });
152
+ if (!p.abort && controller) {
153
+ p.abort = cb => {
154
+ if (controller) {
155
+ cb && cb();
156
+ controller.abort();
157
+ if (timeoutTimer) {
158
+ clearTimeout(timeoutTimer);
159
+ timeoutTimer = null;
160
+ }
161
+ }
162
+ };
163
+ }
164
+ return p;
140
165
  }
141
166
  function taroInterceptor(chain) {
142
167
  return _request(chain.requestParams);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/api/network/request/index.ts"],"sourcesContent":["import 'whatwg-fetch'\nimport 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'\n\nimport Taro from '@tarojs/api'\nimport { isFunction } from '@tarojs/shared'\nimport jsonpRetry from 'jsonp-retry'\n\nimport { serializeParams } from '../../../utils'\n\n// @ts-ignore\nconst { Link } = Taro\n\nfunction generateRequestUrlWithParams (url = '', params?: unknown) {\n params = typeof params === 'string' ? params : serializeParams(params)\n if (params) {\n url += (~url.indexOf('?') ? '&' : '?') + params\n }\n url = url.replace('?&', '?')\n return url\n}\n\nfunction _request (options: Partial<Taro.request.Option> = {}) {\n const { success, complete, fail } = options\n const params: RequestInit = {}\n const res: any = {}\n let {\n cache = 'default',\n credentials,\n data, dataType,\n header = {},\n jsonp,\n method = 'GET',\n mode,\n responseType,\n signal,\n timeout = 60000,\n url = '',\n ...opts\n } = options\n Object.assign(params, opts)\n if (jsonp) {\n // @ts-ignore\n params.params = data\n params.cache = opts.jsonpCache\n // @ts-ignore\n params.timeout = timeout\n if (typeof jsonp === 'string') {\n // @ts-ignore\n params.name = jsonp\n }\n // Note: https://github.com/luckyadam/jsonp-retry\n return jsonpRetry(url, params)\n .then(data => {\n res.statusCode = 200\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n return Promise.reject(err)\n })\n }\n params.method = method\n const methodUpper = params.method.toUpperCase()\n params.cache = cache\n if (methodUpper === 'GET' || methodUpper === 'HEAD') {\n url = generateRequestUrlWithParams(url, data)\n } else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(data)) >= 0) {\n const keyOfContentType = Object.keys(header).find(item => item.toLowerCase() === 'content-type')\n if (!keyOfContentType) {\n header['Content-Type'] = 'application/json'\n }\n const contentType = header[keyOfContentType || 'Content-Type']\n\n if (contentType.indexOf('application/json') >= 0) {\n params.body = JSON.stringify(data)\n } else if (contentType.indexOf('application/x-www-form-urlencoded') >= 0) {\n params.body = serializeParams(data)\n } else {\n params.body = data\n }\n } else {\n params.body = data\n }\n if (header) {\n params.headers = header\n }\n if (mode) {\n params.mode = mode\n }\n let timeoutTimer: ReturnType<typeof setTimeout> | null = null\n if (signal) {\n params.signal = signal\n } else if (typeof timeout === 'number') {\n const controller = new window.AbortController()\n params.signal = controller.signal\n timeoutTimer = setTimeout(function () {\n controller.abort()\n }, timeout)\n }\n params.credentials = credentials\n return fetch(url, params)\n .then(response => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n if (!response) {\n const errorResponse = { ok: false }\n throw errorResponse\n }\n res.statusCode = response.status\n res.header = {}\n for (const key of response.headers.keys()) {\n res.header[key] = response.headers.get(key)\n }\n if (responseType === 'arraybuffer') {\n return response.arrayBuffer()\n }\n if (res.statusCode !== 204) {\n if (dataType === 'json' || typeof dataType === 'undefined') {\n return response.json().catch(() => {\n return null\n })\n }\n }\n if (responseType === 'text' || dataType === 'text') {\n return response.text()\n }\n return Promise.resolve(null)\n })\n .then(data => {\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n err.statusCode = res.statusCode\n err.errMsg = err.message\n return Promise.reject(err)\n })\n}\n\nfunction taroInterceptor (chain) {\n return _request(chain.requestParams)\n}\n\nconst link = new Link(taroInterceptor)\n\nexport const request = (<T extends Partial<Taro.request.Option> = TaroGeneral.IAnyObject>(...args: [string | T, T]) => {\n const [url = '', options = {} as T] = args\n if (typeof url === 'string') {\n options.url = url\n } else {\n Object.assign(options, url)\n }\n return link.request(options)\n}) as typeof Taro.request\nexport const addInterceptor = link.addInterceptor.bind(link)\nexport const cleanInterceptors = link.cleanInterceptors.bind(link)\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/api/network/request/index.ts"],"sourcesContent":["import 'whatwg-fetch'\nimport 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'\n\nimport Taro from '@tarojs/api'\nimport { isFunction } from '@tarojs/shared'\nimport jsonpRetry from 'jsonp-retry'\n\nimport { serializeParams } from '../../../utils'\nimport { NETWORK_TIMEOUT } from '../utils'\n\ninterface RequestTask<T> extends Promise<T> {\n abort?: (cb?: any) => void\n}\n\n// @ts-ignore\nconst { Link } = Taro\n\nfunction generateRequestUrlWithParams (url = '', params?: unknown) {\n params = typeof params === 'string' ? params : serializeParams(params)\n if (params) {\n url += (~url.indexOf('?') ? '&' : '?') + params\n }\n url = url.replace('?&', '?')\n return url\n}\n\nfunction _request (options: Partial<Taro.request.Option> = {}) {\n const { success, complete, fail } = options\n const params: RequestInit = {}\n const res: any = {}\n let {\n cache = 'default',\n credentials,\n data, dataType,\n header = {},\n jsonp,\n method = 'GET',\n mode,\n responseType,\n signal,\n timeout,\n url = '',\n ...opts\n } = options\n if (typeof timeout !== 'number') {\n timeout = NETWORK_TIMEOUT\n }\n Object.assign(params, opts)\n if (jsonp) {\n // @ts-ignore\n params.params = data\n params.cache = opts.jsonpCache\n // @ts-ignore\n params.timeout = timeout\n if (typeof jsonp === 'string') {\n // @ts-ignore\n params.name = jsonp\n }\n // Note: https://github.com/luckyadam/jsonp-retry\n return jsonpRetry(url, params)\n .then(data => {\n res.statusCode = 200\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n return Promise.reject(err)\n })\n }\n params.method = method\n const methodUpper = params.method.toUpperCase()\n params.cache = cache\n if (methodUpper === 'GET' || methodUpper === 'HEAD') {\n url = generateRequestUrlWithParams(url, data)\n } else if (['[object Array]', '[object Object]'].indexOf(Object.prototype.toString.call(data)) >= 0) {\n const keyOfContentType = Object.keys(header).find(item => item.toLowerCase() === 'content-type')\n if (!keyOfContentType) {\n header['Content-Type'] = 'application/json'\n }\n const contentType = header[keyOfContentType || 'Content-Type']\n\n if (contentType.indexOf('application/json') >= 0) {\n params.body = JSON.stringify(data)\n } else if (contentType.indexOf('application/x-www-form-urlencoded') >= 0) {\n params.body = serializeParams(data)\n } else {\n params.body = data\n }\n } else {\n params.body = data\n }\n if (header) {\n params.headers = header\n }\n if (mode) {\n params.mode = mode\n }\n let timeoutTimer: ReturnType<typeof setTimeout> | null = null\n let controller: AbortController | null = null\n if (signal) {\n params.signal = signal\n } else {\n controller = new window.AbortController()\n params.signal = controller.signal\n timeoutTimer = setTimeout(function () {\n if (controller) controller.abort()\n }, timeout)\n }\n params.credentials = credentials\n const p: RequestTask<any> = fetch(url, params)\n .then(response => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n if (controller) {\n controller = null\n }\n if (!response) {\n const errorResponse = { ok: false }\n throw errorResponse\n }\n res.statusCode = response.status\n res.header = {}\n for (const key of response.headers.keys()) {\n res.header[key] = response.headers.get(key)\n }\n if (responseType === 'arraybuffer') {\n return response.arrayBuffer()\n }\n if (res.statusCode !== 204) {\n if (dataType === 'json' || typeof dataType === 'undefined') {\n return response.json().catch(() => {\n return null\n })\n }\n }\n if (responseType === 'text' || dataType === 'text') {\n return response.text()\n }\n return Promise.resolve(null)\n })\n .then(data => {\n res.data = data\n isFunction(success) && success(res)\n isFunction(complete) && complete(res)\n return res\n })\n .catch(err => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n if (controller) {\n controller = null\n }\n isFunction(fail) && fail(err)\n isFunction(complete) && complete(res)\n err.statusCode = res.statusCode\n err.errMsg = err.message\n return Promise.reject(err)\n })\n if (!p.abort && controller) {\n p.abort = cb => {\n if (controller) {\n cb && cb()\n controller.abort()\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n timeoutTimer = null\n }\n }\n }\n }\n return p\n}\n\nfunction taroInterceptor (chain) {\n return _request(chain.requestParams)\n}\n\nconst link = new Link(taroInterceptor)\n\nexport const request = (<T extends Partial<Taro.request.Option> = TaroGeneral.IAnyObject>(...args: [string | T, T]) => {\n const [url = '', options = {} as T] = args\n if (typeof url === 'string') {\n options.url = url\n } else {\n Object.assign(options, url)\n }\n return link.request(options)\n}) as typeof Taro.request\nexport const addInterceptor = link.addInterceptor.bind(link)\nexport const cleanInterceptors = link.cleanInterceptors.bind(link)\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { SocketTask } from "./socketTask.js";
1
2
  declare function sendSocketMessage(): void;
2
3
  declare function onSocketOpen(): void;
3
4
  declare function onSocketMessage(): void;
@@ -5,4 +6,4 @@ declare function onSocketError(): void;
5
6
  declare function onSocketClose(): void;
6
7
  declare function connectSocket(options?: Taro.connectSocket.Option): Promise<unknown>;
7
8
  declare function closeSocket(): void;
8
- export { sendSocketMessage, onSocketOpen, onSocketMessage, onSocketError, onSocketClose, connectSocket, closeSocket };
9
+ export { sendSocketMessage, onSocketOpen, onSocketMessage, onSocketError, onSocketClose, connectSocket, closeSocket, SocketTask };
@@ -70,5 +70,5 @@ function closeSocket() {
70
70
  console.warn('Deprecated.Please use socketTask.close instead.');
71
71
  }
72
72
 
73
- export { closeSocket, connectSocket, onSocketClose, onSocketError, onSocketMessage, onSocketOpen, sendSocketMessage };
73
+ export { SocketTask, closeSocket, connectSocket, onSocketClose, onSocketError, onSocketMessage, onSocketOpen, sendSocketMessage };
74
74
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/api/network/websocket/index.ts"],"sourcesContent":["import { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\nimport { SocketTask } from './socketTask'\n\nlet socketTasks: SocketTask[] = []\nlet socketsCounter = 1\n\nexport function sendSocketMessage () {\n console.warn('Deprecated.Please use socketTask.send instead.')\n}\n\nexport function onSocketOpen () {\n console.warn('Deprecated.Please use socketTask.onOpen instead.')\n}\n\nexport function onSocketMessage () {\n console.warn('Deprecated.Please use socketTask.onMessage instead.')\n}\n\nexport function onSocketError () {\n console.warn('Deprecated.Please use socketTask.onError instead.')\n}\n\nexport function onSocketClose () {\n console.warn('Deprecated.Please use socketTask.onClose instead.')\n}\n\nexport function connectSocket (options?: Taro.connectSocket.Option) {\n const name = 'connectSocket'\n\n return new Promise((resolve, reject) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${name}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return reject(res)\n }\n const { url, protocols, success, fail, complete } = options as Exclude<typeof options, undefined>\n const handle = new MethodHandler<{\n socketTaskId?: number\n }>({ name, success, fail, complete })\n\n // options.url must be String\n if (typeof url !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'url',\n correct: 'String',\n wrong: url\n })\n }, { resolve, reject })\n }\n\n // options.url must be invalid\n if (!url.startsWith('ws://') && !url.startsWith('wss://')) {\n return handle.fail({\n errMsg: `request:fail invalid url \"${url}\"`\n }, { resolve, reject })\n }\n\n // protocols must be array\n const _protocols = Array.isArray(protocols) ? protocols : null\n\n // 2 connection at most\n if (socketTasks.length >= 5) {\n return handle.fail({\n errMsg: '同时最多发起 5 个 socket 请求,更多请参考文档。'\n }, { resolve, reject })\n }\n\n const task = new SocketTask(url, _protocols)\n task._destroyWhenClose = function () {\n socketTasks = socketTasks.filter(socketTask => socketTask !== this)\n }\n socketTasks.push(task)\n\n handle.success({\n socketTaskId: socketsCounter++\n })\n\n return resolve(task)\n })\n}\n\nexport function closeSocket () {\n console.warn('Deprecated.Please use socketTask.close instead.')\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/api/network/websocket/index.ts"],"sourcesContent":["import { getParameterError, shouldBeObject } from '../../../utils'\nimport { MethodHandler } from '../../../utils/handler'\nimport { SocketTask } from './socketTask'\n\nlet socketTasks: SocketTask[] = []\nlet socketsCounter = 1\n\nexport function sendSocketMessage () {\n console.warn('Deprecated.Please use socketTask.send instead.')\n}\n\nexport function onSocketOpen () {\n console.warn('Deprecated.Please use socketTask.onOpen instead.')\n}\n\nexport function onSocketMessage () {\n console.warn('Deprecated.Please use socketTask.onMessage instead.')\n}\n\nexport function onSocketError () {\n console.warn('Deprecated.Please use socketTask.onError instead.')\n}\n\nexport function onSocketClose () {\n console.warn('Deprecated.Please use socketTask.onClose instead.')\n}\n\nexport function connectSocket (options?: Taro.connectSocket.Option) {\n const name = 'connectSocket'\n\n return new Promise((resolve, reject) => {\n // options must be an Object\n const isObject = shouldBeObject(options)\n if (!isObject.flag) {\n const res = { errMsg: `${name}:fail ${isObject.msg}` }\n console.error(res.errMsg)\n return reject(res)\n }\n const { url, protocols, success, fail, complete } = options as Exclude<typeof options, undefined>\n const handle = new MethodHandler<{\n socketTaskId?: number\n }>({ name, success, fail, complete })\n\n // options.url must be String\n if (typeof url !== 'string') {\n return handle.fail({\n errMsg: getParameterError({\n para: 'url',\n correct: 'String',\n wrong: url\n })\n }, { resolve, reject })\n }\n\n // options.url must be invalid\n if (!url.startsWith('ws://') && !url.startsWith('wss://')) {\n return handle.fail({\n errMsg: `request:fail invalid url \"${url}\"`\n }, { resolve, reject })\n }\n\n // protocols must be array\n const _protocols = Array.isArray(protocols) ? protocols : null\n\n // 2 connection at most\n if (socketTasks.length >= 5) {\n return handle.fail({\n errMsg: '同时最多发起 5 个 socket 请求,更多请参考文档。'\n }, { resolve, reject })\n }\n\n const task = new SocketTask(url, _protocols)\n task._destroyWhenClose = function () {\n socketTasks = socketTasks.filter(socketTask => socketTask !== this)\n }\n socketTasks.push(task)\n\n handle.success({\n socketTaskId: socketsCounter++\n })\n\n return resolve(task)\n })\n}\n\nexport function closeSocket () {\n console.warn('Deprecated.Please use socketTask.close instead.')\n}\n\nexport { SocketTask }\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,10 @@
1
1
  declare const openQzonePublish: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
2
- export { openQzonePublish };
2
+ declare const getQQRunData: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
3
+ declare const setOfficialDress: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
4
+ declare const setCustomDress: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
5
+ declare const updateQQApp: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
6
+ declare const addRecentColorSign: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
7
+ declare const getGuildInfo: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
8
+ declare const applyAddToMyApps: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
9
+ declare const isAddedToMyApps: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
10
+ export { openQzonePublish, getQQRunData, setOfficialDress, setCustomDress, updateQQApp, addRecentColorSign, getGuildInfo, applyAddToMyApps, isAddedToMyApps };
@@ -2,6 +2,14 @@ import { temporarilyNotSupport } from '../../utils/index.js';
2
2
 
3
3
  // 打开手Q说说发表界面
4
4
  const openQzonePublish = /* @__PURE__ */ temporarilyNotSupport('openQzonePublish');
5
+ const getQQRunData = /* @__PURE__ */ temporarilyNotSupport('getQQRunData');
6
+ const setOfficialDress = /* @__PURE__ */ temporarilyNotSupport('setOfficialDress');
7
+ const setCustomDress = /* @__PURE__ */ temporarilyNotSupport('setCustomDress');
8
+ const updateQQApp = /* @__PURE__ */ temporarilyNotSupport('updateQQApp');
9
+ const addRecentColorSign = /* @__PURE__ */ temporarilyNotSupport('addRecentColorSign');
10
+ const getGuildInfo = /* @__PURE__ */ temporarilyNotSupport('getGuildInfo');
11
+ const applyAddToMyApps = /* @__PURE__ */ temporarilyNotSupport('applyAddToMyApps');
12
+ const isAddedToMyApps = /* @__PURE__ */ temporarilyNotSupport('isAddedToMyApps');
5
13
 
6
- export { openQzonePublish };
14
+ export { addRecentColorSign, applyAddToMyApps, getGuildInfo, getQQRunData, isAddedToMyApps, openQzonePublish, setCustomDress, setOfficialDress, updateQQApp };
7
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/api/qq/index.ts"],"sourcesContent":["import { temporarilyNotSupport } from '../../utils'\n\n// 打开手Q说说发表界面\nexport const openQzonePublish = /* @__PURE__ */ temporarilyNotSupport('openQzonePublish')\n"],"names":[],"mappings":";;AAEA;AACa,MAAA,gBAAgB,mBAAmB,qBAAqB,CAAC,kBAAkB;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/api/qq/index.ts"],"sourcesContent":["import { temporarilyNotSupport } from '../../utils'\n\n// 打开手Q说说发表界面\nexport const openQzonePublish = /* @__PURE__ */ temporarilyNotSupport('openQzonePublish')\nexport const getQQRunData = /* @__PURE__ */ temporarilyNotSupport('getQQRunData')\nexport const setOfficialDress = /* @__PURE__ */ temporarilyNotSupport('setOfficialDress')\nexport const setCustomDress = /* @__PURE__ */ temporarilyNotSupport('setCustomDress')\nexport const updateQQApp = /* @__PURE__ */ temporarilyNotSupport('updateQQApp')\nexport const addRecentColorSign = /* @__PURE__ */ temporarilyNotSupport('addRecentColorSign')\nexport const getGuildInfo = /* @__PURE__ */ temporarilyNotSupport('getGuildInfo')\nexport const applyAddToMyApps = /* @__PURE__ */ temporarilyNotSupport('applyAddToMyApps')\nexport const isAddedToMyApps = /* @__PURE__ */ temporarilyNotSupport('isAddedToMyApps')\n"],"names":[],"mappings":";;AAEA;AACa,MAAA,gBAAgB,mBAAmB,qBAAqB,CAAC,kBAAkB,EAAC;AAC5E,MAAA,YAAY,mBAAmB,qBAAqB,CAAC,cAAc,EAAC;AACpE,MAAA,gBAAgB,mBAAmB,qBAAqB,CAAC,kBAAkB,EAAC;AAC5E,MAAA,cAAc,mBAAmB,qBAAqB,CAAC,gBAAgB,EAAC;AACxE,MAAA,WAAW,mBAAmB,qBAAqB,CAAC,aAAa,EAAC;AAClE,MAAA,kBAAkB,mBAAmB,qBAAqB,CAAC,oBAAoB,EAAC;AAChF,MAAA,YAAY,mBAAmB,qBAAqB,CAAC,cAAc,EAAC;AACpE,MAAA,gBAAgB,mBAAmB,qBAAqB,CAAC,kBAAkB,EAAC;AAC5E,MAAA,eAAe,mBAAmB,qBAAqB,CAAC,iBAAiB;;;;"}
@@ -62,13 +62,17 @@ class Animation {
62
62
  // 属性组合
63
63
  this.rules = [];
64
64
  // transform 对象
65
- this.transform = [`${TRANSFORM}:`];
65
+ this.transform = [];
66
66
  // 组合动画
67
67
  this.steps = [];
68
68
  // 动画 map ----- 永久保留
69
69
  this.animationMap = {};
70
70
  // animationMap 的长度
71
71
  this.animationMapCount = 0;
72
+ // 历史动画
73
+ this.historyAnimations = [];
74
+ // 历史规则
75
+ this.historyRules = [];
72
76
  // 默认值
73
77
  this.setDefault(duration, delay, timingFunction, transformOrigin);
74
78
  this.unit = unit;
@@ -96,9 +100,9 @@ class Animation {
96
100
  if (stepIndex < animStepsMaxIndex) {
97
101
  // 播放下一个关键帧(因为 nerv 和 react 有差异所以 animation & data-animation 都需要写)
98
102
  target.setAttribute(animAttr, `${animName}__${animIndex}--${stepIndex + 1}`);
99
- if (animAttr === 'animation') {
103
+ if (animAttr === 'data-animation') {
100
104
  // Nerv 环境,animation & data-animation 双重保险
101
- target.setAttribute('data-animation', `${animName}__${animIndex}--${stepIndex + 1}`);
105
+ target.setAttribute('animation', `${animName}__${animIndex}--${stepIndex + 1}`);
102
106
  }
103
107
  }
104
108
  }
@@ -116,149 +120,175 @@ class Animation {
116
120
  this.DEFAULT = { duration, delay, timingFunction, transformOrigin };
117
121
  }
118
122
  matrix(a, b, c, d, tx, ty) {
119
- this.transform.push(`matrix(${a}, ${b}, ${c}, ${d}, ${tx}, ${ty})`);
123
+ this.transform.push({ key: 'matrix', transform: `matrix(${a}, ${b}, ${c}, ${d}, ${tx}, ${ty})` });
120
124
  return this;
121
125
  }
122
126
  matrix3d(a1, b1, c1, d1, a2, b2, c2, d2, a3, b3, c3, d3, a4, b4, c4, d4) {
123
- this.transform.push(`matrix3d(${a1}, ${b1}, ${c1}, ${d1}, ${a2}, ${b2}, ${c2}, ${d2}, ${a3}, ${b3}, ${c3}, ${d3}, ${a4}, ${b4}, ${c4}, ${d4})`);
127
+ this.transform.push({
128
+ key: 'matrix3d',
129
+ transform: `matrix3d(${a1}, ${b1}, ${c1}, ${d1}, ${a2}, ${b2}, ${c2}, ${d2}, ${a3}, ${b3}, ${c3}, ${d3}, ${a4}, ${b4}, ${c4}, ${d4})`,
130
+ });
124
131
  return this;
125
132
  }
126
133
  rotate(angle) {
127
- this.transform.push(`rotate(${angle}deg)`);
134
+ this.transform.push({ key: 'rotate', transform: `rotate(${angle}deg)` });
128
135
  return this;
129
136
  }
130
137
  rotate3d(x, y, z, angle) {
131
138
  if (typeof y !== 'number') {
132
- this.transform.push(`rotate3d(${x})`);
139
+ this.transform.push({ key: 'rotate3d', transform: `rotate3d(${x})` });
133
140
  }
134
141
  else {
135
- this.transform.push(`rotate3d(${x}, ${y || 0}, ${z || 0}, ${angle || 0}deg)`);
142
+ this.transform.push({ key: 'rotate3d', transform: `rotate3d(${x}, ${y || 0}, ${z || 0}, ${angle || 0}deg)` });
136
143
  }
137
144
  return this;
138
145
  }
139
146
  rotateX(angle) {
140
- this.transform.push(`rotateX(${angle}deg)`);
147
+ this.transform.push({ key: 'rotateX', transform: `rotateX(${angle}deg)` });
141
148
  return this;
142
149
  }
143
150
  rotateY(angle) {
144
- this.transform.push(`rotateY(${angle}deg)`);
151
+ this.transform.push({ key: 'rotateY', transform: `rotateY(${angle}deg)` });
145
152
  return this;
146
153
  }
147
154
  rotateZ(angle) {
148
- this.transform.push(`rotateZ(${angle}deg)`);
155
+ this.transform.push({ key: 'rotateZ', transform: `rotateZ(${angle}deg)` });
149
156
  return this;
150
157
  }
151
158
  scale(x, y) {
152
- this.transform.push(`scale(${x}, ${y})`);
159
+ const scaleY = (typeof y !== 'undefined' && y !== null) ? y : x;
160
+ this.transform.push({ key: 'scale', transform: `scale(${x}, ${scaleY})` });
153
161
  return this;
154
162
  }
155
163
  scale3d(x, y, z) {
156
- this.transform.push(`scale3d(${x}, ${y}, ${z})`);
164
+ this.transform.push({ key: 'scale3d', transform: `scale3d(${x}, ${y}, ${z})` });
157
165
  return this;
158
166
  }
159
167
  scaleX(scale) {
160
- this.transform.push(`scaleX(${scale})`);
168
+ this.transform.push({ key: 'scaleX', transform: `scaleX(${scale})` });
161
169
  return this;
162
170
  }
163
171
  scaleY(scale) {
164
- this.transform.push(`scaleY(${scale})`);
172
+ this.transform.push({ key: 'scaleY', transform: `scaleY(${scale})` });
165
173
  return this;
166
174
  }
167
175
  scaleZ(scale) {
168
- this.transform.push(`scaleZ(${scale})`);
176
+ this.transform.push({ key: 'scaleZ', transform: `scaleZ(${scale})` });
169
177
  return this;
170
178
  }
171
179
  skew(x, y) {
172
- this.transform.push(`skew(${x}, ${y})`);
180
+ this.transform.push({ key: 'skew', transform: `skew(${x}deg, ${y}deg)` });
173
181
  return this;
174
182
  }
175
183
  skewX(angle) {
176
- this.transform.push(`skewX(${angle})`);
184
+ this.transform.push({ key: 'skewX', transform: `skewX(${angle}deg)` });
177
185
  return this;
178
186
  }
179
187
  skewY(angle) {
180
- this.transform.push(`skewY(${angle})`);
188
+ this.transform.push({ key: 'skewY', transform: `skewY(${angle}deg)` });
181
189
  return this;
182
190
  }
183
191
  translate(x, y) {
184
192
  [x, y] = this.transformUnit(x, y);
185
- this.transform.push(`translate(${x}, ${y})`);
193
+ this.transform.push({ key: 'translate', transform: `translate(${x}, ${y})` });
186
194
  return this;
187
195
  }
188
196
  translate3d(x, y, z) {
189
197
  [x, y, z] = this.transformUnit(x, y, z);
190
- this.transform.push(`translate3d(${x}, ${y}, ${z})`);
198
+ this.transform.push({ key: 'translate3d', transform: `translate3d(${x}, ${y}, ${z})` });
191
199
  return this;
192
200
  }
193
201
  translateX(translate) {
194
202
  [translate] = this.transformUnit(translate);
195
- this.transform.push(`translateX(${translate})`);
203
+ this.transform.push({ key: 'translateX', transform: `translateX(${translate})` });
196
204
  return this;
197
205
  }
198
206
  translateY(translate) {
199
207
  [translate] = this.transformUnit(translate);
200
- this.transform.push(`translateY(${translate})`);
208
+ this.transform.push({ key: 'translateY', transform: `translateY(${translate})` });
201
209
  return this;
202
210
  }
203
211
  translateZ(translate) {
204
212
  [translate] = this.transformUnit(translate);
205
- this.transform.push(`translateZ(${translate})`);
213
+ this.transform.push({ key: 'translateZ', transform: `translateZ(${translate})` });
206
214
  return this;
207
215
  }
208
216
  opacity(value) {
209
- this.rules.push(`opacity: ${value}`);
217
+ this.rules.push({ key: 'opacity', rule: `opacity: ${value}` });
210
218
  return this;
211
219
  }
212
220
  backgroundColor(value) {
213
- this.rules.push(`background-color: ${value}`);
221
+ this.rules.push({ key: 'backgroundColor', rule: `background-color: ${value}` });
214
222
  return this;
215
223
  }
216
224
  width(value) {
217
225
  [value] = this.transformUnit(value);
218
- this.rules.push(`width: ${value}`);
226
+ this.rules.push({ key: 'width', rule: `width: ${value}` });
219
227
  return this;
220
228
  }
221
229
  height(value) {
222
230
  [value] = this.transformUnit(value);
223
- this.rules.push(`height: ${value}`);
231
+ this.rules.push({ key: 'height', rule: `height: ${value}` });
224
232
  return this;
225
233
  }
226
234
  top(value) {
227
235
  [value] = this.transformUnit(value);
228
- this.rules.push(`top: ${value}`);
236
+ this.rules.push({ key: 'top', rule: `top: ${value}` });
229
237
  return this;
230
238
  }
231
239
  right(value) {
232
240
  [value] = this.transformUnit(value);
233
- this.rules.push(`right: ${value}`);
241
+ this.rules.push({ key: 'right', rule: `right: ${value}` });
234
242
  return this;
235
243
  }
236
244
  bottom(value) {
237
245
  [value] = this.transformUnit(value);
238
- this.rules.push(`bottom: ${value}`);
246
+ this.rules.push({ key: 'bottom', rule: `bottom: ${value}` });
239
247
  return this;
240
248
  }
241
249
  left(value) {
242
250
  [value] = this.transformUnit(value);
243
- this.rules.push(`left: ${value}`);
251
+ this.rules.push({ key: 'left', rule: `left: ${value}` });
244
252
  return this;
245
253
  }
246
254
  // 关键帧载入
247
255
  step(arg = {}) {
248
256
  const { DEFAULT } = this;
249
- const { duration = DEFAULT.duration, delay = DEFAULT.delay, timingFunction = DEFAULT.timingFunction, transformOrigin = DEFAULT.transformOrigin } = arg;
257
+ const { duration = DEFAULT.duration, delay = DEFAULT.delay, timingFunction = DEFAULT.timingFunction, transformOrigin = DEFAULT.transformOrigin, } = arg;
250
258
  // 生成一条 transition 动画
259
+ this.transform.map((t0) => {
260
+ const index = this.historyAnimations.findIndex((t1) => t1.key === t0.key);
261
+ if (index === -1) {
262
+ this.historyAnimations.push(t0);
263
+ }
264
+ else {
265
+ this.historyAnimations[index] = t0;
266
+ }
267
+ });
268
+ const transforms = this.historyAnimations.map((t) => t.transform);
269
+ const transformSequence = transforms.length > 0 ? `${TRANSFORM}:${transforms.join(' ')}!important` : '';
270
+ this.rules.map((r0) => {
271
+ const index = this.historyRules.findIndex((r1) => r1.key === r0.key);
272
+ if (index === -1) {
273
+ this.historyRules.push(r0);
274
+ }
275
+ else {
276
+ this.historyRules[index] = r0;
277
+ }
278
+ });
279
+ const rules = this.historyRules.map((t) => t.rule);
280
+ const ruleSequence = rules.length > 0 ? rules.map((rule) => `${rule}!important`).join(';') : '';
251
281
  this.steps.push([
252
- this.rules.map(rule => `${rule}!important`).join(';'),
253
- `${this.transform.join(' ')}!important`,
282
+ ruleSequence,
283
+ transformSequence,
254
284
  `${TRANSFORM}-origin: ${transformOrigin}`,
255
- `transition: all ${duration}ms ${timingFunction} ${delay}ms`
285
+ `transition: all ${duration}ms ${timingFunction} ${delay}ms`,
256
286
  ]
257
- .filter(item => item !== '' && item !== `${TRANSFORM}:`)
287
+ .filter((item) => item !== '')
258
288
  .join(';'));
259
289
  // 清空 rules 和 transform
260
290
  this.rules = [];
261
- this.transform = [`${TRANSFORM}:`];
291
+ this.transform = [];
262
292
  return this;
263
293
  }
264
294
  // 创建底层数据
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/api/ui/animation/index.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\n/**\n * H5 下的 styleSheet 操作\n * @author leeenx\n */\nclass StyleSheet {\n constructor () {\n this.$style = document.createElement('style')\n }\n\n $style?: HTMLStyleElement | null = null\n sheet?: CSSStyleSheet | null = null\n\n appendStyleSheet = () => {\n if (this.$style) {\n const head = document.getElementsByTagName('head')[0]\n this.$style.setAttribute('type', 'text/css')\n this.$style.setAttribute('data-type', 'Taro')\n head.appendChild(this.$style)\n this.sheet = this.$style.sheet\n }\n if (this.sheet && !('insertRule' in this.sheet)) {\n console.warn('当前浏览器不支持 stylesheet.insertRule 接口')\n }\n }\n\n // 添加样式命令\n add = (cssText, index = 0) => {\n if (this.sheet === null) {\n // $style 未插入到 DOM\n this.appendStyleSheet()\n }\n this.sheet?.insertRule(cssText, index)\n }\n}\n\nconst styleSheet = new StyleSheet()\n\n// 监听事件\nlet TRANSITION_END = 'transitionend'\nlet TRANSFORM = 'transform'\n\nconst $detect = document.createElement('div')\n$detect.style.cssText = '-webkit-animation-name:webkit;-moz-animation-name:moz;-ms-animation-name:ms;animation-name:standard;'\nif ($detect.style['animation-name'] === 'standard') {\n // 支持标准写法\n TRANSITION_END = 'transitionend'\n TRANSFORM = 'transform'\n} else if ($detect.style['-webkit-animation-name'] === 'webkit') {\n // webkit 前缀\n TRANSITION_END = 'webkitTransitionEnd'\n TRANSFORM = '-webkit-transform'\n} else if ($detect.style['-moz-animation-name'] === 'moz') {\n // moz 前缀\n TRANSITION_END = 'mozTransitionEnd'\n TRANSFORM = '-moz-transform'\n} else if ($detect.style['-ms-animation-name'] === 'ms') {\n // ms 前缀\n TRANSITION_END = 'msTransitionEnd'\n TRANSFORM = '-ms-transform'\n}\n\nlet animId = 0\n\ninterface IAnimationAttr {\n duration: number\n delay: number\n timingFunction: string\n transformOrigin: string\n}\n\nclass Animation implements Taro.Animation {\n unit: string\n id: number\n DEFAULT: IAnimationAttr\n\n constructor (\n {\n duration = 400,\n delay = 0,\n timingFunction = 'linear',\n transformOrigin = '50% 50% 0',\n unit = 'px'\n }: Taro.createAnimation.Option = {}\n ) {\n // 默认值\n this.setDefault(duration, delay, timingFunction, transformOrigin)\n this.unit = unit\n // atom 环境下,animation 属性不会显示,所以要改成 data-animation\n let animAttr = 'animation'\n // 动画 id\n this.id = ++animId\n // 监听事件\n document.body.addEventListener(TRANSITION_END, (e: TransitionEvent) => {\n const target = e.target as HTMLElement\n if (target.getAttribute(animAttr) === null) {\n animAttr = 'data-animation'\n }\n const animData = target.getAttribute(animAttr)\n // 没有动画存在\n if (animData === null) return\n const [animName, animPath] = animData.split('__')\n if (animName === `taro-h5-poly-fill/${this.id}/create-animation`) {\n const [animIndex, __stepIndex = 0] = animPath.split('--')\n const stepIndex = Number(__stepIndex)\n // 动画总的关键帧\n const animStepsCount = this.animationMap[`${animName}__${animIndex}`]\n const animStepsMaxIndex = animStepsCount - 1\n if (stepIndex < animStepsMaxIndex) {\n // 播放下一个关键帧(因为 nerv 和 react 有差异所以 animation & data-animation 都需要写)\n target.setAttribute(animAttr, `${animName}__${animIndex}--${stepIndex + 1}`)\n if (animAttr === 'animation') {\n // Nerv 环境,animation & data-animation 双重保险\n target.setAttribute('data-animation', `${animName}__${animIndex}--${stepIndex + 1}`)\n }\n }\n }\n })\n }\n\n transformUnit (...args) {\n const ret: string[] = []\n args.forEach(each => {\n ret.push(isNaN(each) ? each : `${each}${this.unit}`)\n })\n return ret\n }\n\n // 设置默认值\n setDefault (duration, delay, timingFunction, transformOrigin) {\n this.DEFAULT = { duration, delay, timingFunction, transformOrigin }\n }\n\n // 属性组合\n rules: string[] = []\n // transform 对象\n transform = [`${TRANSFORM}:`]\n // 组合动画\n steps: string[] = []\n // 动画 map ----- 永久保留\n animationMap = {}\n // animationMap 的长度\n animationMapCount = 0\n\n matrix (a: number, b: number, c: number, d: number, tx: number, ty: number) {\n this.transform.push(`matrix(${a}, ${b}, ${c}, ${d}, ${tx}, ${ty})`)\n return this\n }\n\n matrix3d (a1: number, b1: number, c1: number, d1: number, a2: number, b2: number, c2: number, d2: number, a3: number, b3: number, c3: number, d3: number, a4: number, b4: number, c4: number, d4: number) {\n this.transform.push(`matrix3d(${a1}, ${b1}, ${c1}, ${d1}, ${a2}, ${b2}, ${c2}, ${d2}, ${a3}, ${b3}, ${c3}, ${d3}, ${a4}, ${b4}, ${c4}, ${d4})`)\n return this\n }\n\n rotate (angle: number) {\n this.transform.push(`rotate(${angle}deg)`)\n return this\n }\n\n rotate3d (x: number, y?: number, z?: number, angle?: number) {\n if (typeof y !== 'number') {\n this.transform.push(`rotate3d(${x})`)\n } else {\n this.transform.push(`rotate3d(${x}, ${y || 0}, ${z || 0}, ${angle || 0}deg)`)\n }\n return this\n }\n\n rotateX (angle) {\n this.transform.push(`rotateX(${angle}deg)`)\n return this\n }\n\n rotateY (angle) {\n this.transform.push(`rotateY(${angle}deg)`)\n return this\n }\n\n rotateZ (angle) {\n this.transform.push(`rotateZ(${angle}deg)`)\n return this\n }\n\n scale (x, y) {\n this.transform.push(`scale(${x}, ${y})`)\n return this\n }\n\n scale3d (x, y, z) {\n this.transform.push(`scale3d(${x}, ${y}, ${z})`)\n return this\n }\n\n scaleX (scale) {\n this.transform.push(`scaleX(${scale})`)\n return this\n }\n\n scaleY (scale) {\n this.transform.push(`scaleY(${scale})`)\n return this\n }\n\n scaleZ (scale) {\n this.transform.push(`scaleZ(${scale})`)\n return this\n }\n\n skew (x, y) {\n this.transform.push(`skew(${x}, ${y})`)\n return this\n }\n\n skewX (angle) {\n this.transform.push(`skewX(${angle})`)\n return this\n }\n\n skewY (angle) {\n this.transform.push(`skewY(${angle})`)\n return this\n }\n\n translate (x, y) {\n [x, y] = this.transformUnit(x, y)\n this.transform.push(`translate(${x}, ${y})`)\n return this\n }\n\n translate3d (x, y, z) {\n [x, y, z] = this.transformUnit(x, y, z)\n this.transform.push(\n `translate3d(${x}, ${y}, ${z})`\n )\n return this\n }\n\n translateX (translate) {\n [translate] = this.transformUnit(translate)\n this.transform.push(`translateX(${translate})`)\n return this\n }\n\n translateY (translate) {\n [translate] = this.transformUnit(translate)\n this.transform.push(`translateY(${translate})`)\n return this\n }\n\n translateZ (translate) {\n [translate] = this.transformUnit(translate)\n this.transform.push(`translateZ(${translate})`)\n return this\n }\n\n opacity (value) {\n this.rules.push(`opacity: ${value}`)\n return this\n }\n\n backgroundColor (value) {\n this.rules.push(`background-color: ${value}`)\n return this\n }\n\n width (value) {\n [value] = this.transformUnit(value)\n this.rules.push(`width: ${value}`)\n return this\n }\n\n height (value) {\n [value] = this.transformUnit(value)\n this.rules.push(`height: ${value}`)\n return this\n }\n\n top (value) {\n [value] = this.transformUnit(value)\n this.rules.push(`top: ${value}`)\n return this\n }\n\n right (value) {\n [value] = this.transformUnit(value)\n this.rules.push(`right: ${value}`)\n return this\n }\n\n bottom (value) {\n [value] = this.transformUnit(value)\n this.rules.push(`bottom: ${value}`)\n return this\n }\n\n left (value) {\n [value] = this.transformUnit(value)\n this.rules.push(`left: ${value}`)\n return this\n }\n\n // 关键帧载入\n step (arg: Partial<IAnimationAttr> = {}) {\n const { DEFAULT } = this\n const {\n duration = DEFAULT.duration,\n delay = DEFAULT.delay,\n timingFunction = DEFAULT.timingFunction,\n transformOrigin = DEFAULT.transformOrigin\n } = arg\n // 生成一条 transition 动画\n this.steps.push(\n [\n this.rules.map(rule => `${rule}!important`).join(';'),\n `${this.transform.join(' ')}!important`,\n `${TRANSFORM}-origin: ${transformOrigin}`,\n `transition: all ${duration}ms ${timingFunction} ${delay}ms`\n ]\n .filter(item => item !== '' && item !== `${TRANSFORM}:`)\n .join(';')\n )\n // 清空 rules 和 transform\n this.rules = []\n this.transform = [`${TRANSFORM}:`]\n return this as Taro.Animation\n }\n\n // 创建底层数据\n createAnimationData () {\n const animIndex = `taro-h5-poly-fill/${this.id}/create-animation__${this.animationMapCount++}`\n // 记录动画分几个 step\n this.animationMap[animIndex] = this.steps.length\n // 吐出 step\n this.steps.forEach((step, index) => {\n const selector = index === 0\n ? `[animation=\"${animIndex}\"], [data-animation=\"${animIndex}\"]`\n : `[animation=\"${animIndex}--${index}\"], [data-animation=\"${animIndex}--${index}\"]`\n styleSheet.add(`${selector} { ${step} }`)\n })\n\n // 清空 steps\n this.steps = []\n return animIndex\n }\n\n // 动画数据产出\n export () {\n return this.createAnimationData() as unknown as ReturnType<Taro.Animation['export']>\n }\n}\n\n// h5 的 createAnimation\nexport const createAnimation: typeof Taro.createAnimation = (option) => {\n return new Animation(option)\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/api/ui/animation/index.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\n/**\n * H5 下的 styleSheet 操作\n * @author leeenx\n */\nclass StyleSheet {\n constructor () {\n this.$style = document.createElement('style')\n }\n\n $style?: HTMLStyleElement | null = null\n sheet?: CSSStyleSheet | null = null\n\n appendStyleSheet = () => {\n if (this.$style) {\n const head = document.getElementsByTagName('head')[0]\n this.$style.setAttribute('type', 'text/css')\n this.$style.setAttribute('data-type', 'Taro')\n head.appendChild(this.$style)\n this.sheet = this.$style.sheet\n }\n if (this.sheet && !('insertRule' in this.sheet)) {\n console.warn('当前浏览器不支持 stylesheet.insertRule 接口')\n }\n }\n\n // 添加样式命令\n add = (cssText, index = 0) => {\n if (this.sheet === null) {\n // $style 未插入到 DOM\n this.appendStyleSheet()\n }\n this.sheet?.insertRule(cssText, index)\n }\n}\n\nconst styleSheet = new StyleSheet()\n\n// 监听事件\nlet TRANSITION_END = 'transitionend'\nlet TRANSFORM = 'transform'\n\nconst $detect = document.createElement('div')\n$detect.style.cssText = '-webkit-animation-name:webkit;-moz-animation-name:moz;-ms-animation-name:ms;animation-name:standard;'\nif ($detect.style['animation-name'] === 'standard') {\n // 支持标准写法\n TRANSITION_END = 'transitionend'\n TRANSFORM = 'transform'\n} else if ($detect.style['-webkit-animation-name'] === 'webkit') {\n // webkit 前缀\n TRANSITION_END = 'webkitTransitionEnd'\n TRANSFORM = '-webkit-transform'\n} else if ($detect.style['-moz-animation-name'] === 'moz') {\n // moz 前缀\n TRANSITION_END = 'mozTransitionEnd'\n TRANSFORM = '-moz-transform'\n} else if ($detect.style['-ms-animation-name'] === 'ms') {\n // ms 前缀\n TRANSITION_END = 'msTransitionEnd'\n TRANSFORM = '-ms-transform'\n}\n\nlet animId = 0\n\ninterface IAnimationAttr {\n duration: number\n delay: number\n timingFunction: string\n transformOrigin: string\n}\n\ninterface IRule {\n key: string\n rule: string\n}\n\ninterface ITransform {\n key: string\n transform: string\n}\n\nclass Animation implements Taro.Animation {\n unit: string\n id: number\n DEFAULT: IAnimationAttr\n\n constructor (\n {\n duration = 400,\n delay = 0,\n timingFunction = 'linear',\n transformOrigin = '50% 50% 0',\n unit = 'px'\n }: Taro.createAnimation.Option = {}\n ) {\n // 默认值\n this.setDefault(duration, delay, timingFunction, transformOrigin)\n this.unit = unit\n // atom 环境下,animation 属性不会显示,所以要改成 data-animation\n let animAttr = 'animation'\n // 动画 id\n this.id = ++animId\n // 监听事件\n document.body.addEventListener(TRANSITION_END, (e: TransitionEvent) => {\n const target = e.target as HTMLElement\n if (target.getAttribute(animAttr) === null) {\n animAttr = 'data-animation'\n }\n const animData = target.getAttribute(animAttr)\n // 没有动画存在\n if (animData === null) return\n const [animName, animPath] = animData.split('__')\n if (animName === `taro-h5-poly-fill/${this.id}/create-animation`) {\n const [animIndex, __stepIndex = 0] = animPath.split('--')\n const stepIndex = Number(__stepIndex)\n // 动画总的关键帧\n const animStepsCount = this.animationMap[`${animName}__${animIndex}`]\n const animStepsMaxIndex = animStepsCount - 1\n if (stepIndex < animStepsMaxIndex) {\n // 播放下一个关键帧(因为 nerv 和 react 有差异所以 animation & data-animation 都需要写)\n target.setAttribute(animAttr, `${animName}__${animIndex}--${stepIndex + 1}`)\n if (animAttr === 'data-animation') {\n // Nerv 环境,animation & data-animation 双重保险\n target.setAttribute('animation', `${animName}__${animIndex}--${stepIndex + 1}`)\n }\n }\n }\n })\n }\n\n transformUnit (...args) {\n const ret: string[] = []\n args.forEach(each => {\n ret.push(isNaN(each) ? each : `${each}${this.unit}`)\n })\n return ret\n }\n\n // 设置默认值\n setDefault (duration, delay, timingFunction, transformOrigin) {\n this.DEFAULT = { duration, delay, timingFunction, transformOrigin }\n }\n\n // 属性组合\n rules: IRule[] = []\n // transform 对象\n transform: ITransform[] = []\n // 组合动画\n steps: string[] = []\n // 动画 map ----- 永久保留\n animationMap = {}\n // animationMap 的长度\n animationMapCount = 0\n // 历史动画\n historyAnimations: ITransform[] = []\n // 历史规则\n historyRules: IRule[] = []\n\n matrix (a: number, b: number, c: number, d: number, tx: number, ty: number) {\n this.transform.push({ key: 'matrix', transform: `matrix(${a}, ${b}, ${c}, ${d}, ${tx}, ${ty})` })\n return this\n }\n\n matrix3d (a1: number, b1: number, c1: number, d1: number, a2: number, b2: number, c2: number, d2: number, a3: number, b3: number, c3: number, d3: number, a4: number, b4: number, c4: number, d4: number) {\n this.transform.push({\n key: 'matrix3d',\n transform: `matrix3d(${a1}, ${b1}, ${c1}, ${d1}, ${a2}, ${b2}, ${c2}, ${d2}, ${a3}, ${b3}, ${c3}, ${d3}, ${a4}, ${b4}, ${c4}, ${d4})`,\n })\n return this\n }\n\n rotate (angle: number) {\n this.transform.push({ key: 'rotate', transform: `rotate(${angle}deg)` })\n return this\n }\n\n rotate3d (x: number, y?: number, z?: number, angle?: number) {\n if (typeof y !== 'number') {\n this.transform.push({ key: 'rotate3d', transform: `rotate3d(${x})` })\n } else {\n this.transform.push({ key: 'rotate3d', transform: `rotate3d(${x}, ${y || 0}, ${z || 0}, ${angle || 0}deg)` })\n }\n return this\n }\n\n rotateX (angle) {\n this.transform.push({ key: 'rotateX', transform: `rotateX(${angle}deg)` })\n return this\n }\n\n rotateY (angle) {\n this.transform.push({ key: 'rotateY', transform: `rotateY(${angle}deg)` })\n return this\n }\n\n rotateZ (angle) {\n this.transform.push({ key: 'rotateZ', transform: `rotateZ(${angle}deg)` })\n return this\n }\n\n scale (x: number, y?: number) {\n const scaleY = (typeof y !== 'undefined' && y !== null) ? y : x\n this.transform.push({ key: 'scale', transform: `scale(${x}, ${scaleY})` })\n return this\n }\n\n scale3d (x, y, z) {\n this.transform.push({ key: 'scale3d', transform: `scale3d(${x}, ${y}, ${z})` })\n return this\n }\n\n scaleX (scale) {\n this.transform.push({ key: 'scaleX', transform: `scaleX(${scale})` })\n return this\n }\n\n scaleY (scale) {\n this.transform.push({ key: 'scaleY', transform: `scaleY(${scale})` })\n return this\n }\n\n scaleZ (scale) {\n this.transform.push({ key: 'scaleZ', transform: `scaleZ(${scale})` })\n return this\n }\n\n skew (x, y) {\n this.transform.push({ key: 'skew', transform: `skew(${x}deg, ${y}deg)` })\n return this\n }\n\n skewX (angle) {\n this.transform.push({ key: 'skewX', transform: `skewX(${angle}deg)` })\n return this\n }\n\n skewY (angle) {\n this.transform.push({ key: 'skewY', transform: `skewY(${angle}deg)` })\n return this\n }\n\n translate (x, y) {\n [x, y] = this.transformUnit(x, y)\n this.transform.push({ key: 'translate', transform: `translate(${x}, ${y})` })\n return this\n }\n\n translate3d (x, y, z) {\n [x, y, z] = this.transformUnit(x, y, z)\n this.transform.push({ key: 'translate3d', transform: `translate3d(${x}, ${y}, ${z})` })\n return this\n }\n\n translateX (translate) {\n [translate] = this.transformUnit(translate)\n this.transform.push({ key: 'translateX', transform: `translateX(${translate})` })\n return this\n }\n\n translateY (translate) {\n [translate] = this.transformUnit(translate)\n this.transform.push({ key: 'translateY', transform: `translateY(${translate})` })\n return this\n }\n\n translateZ (translate) {\n [translate] = this.transformUnit(translate)\n this.transform.push({ key: 'translateZ', transform: `translateZ(${translate})` })\n return this\n }\n\n opacity (value) {\n this.rules.push({ key: 'opacity', rule: `opacity: ${value}` })\n return this\n }\n\n backgroundColor (value) {\n this.rules.push({ key: 'backgroundColor', rule: `background-color: ${value}` })\n return this\n }\n\n width (value) {\n [value] = this.transformUnit(value)\n this.rules.push({ key: 'width', rule: `width: ${value}` })\n return this\n }\n\n height (value) {\n [value] = this.transformUnit(value)\n this.rules.push({ key: 'height', rule: `height: ${value}` })\n return this\n }\n\n top (value) {\n [value] = this.transformUnit(value)\n this.rules.push({ key: 'top', rule: `top: ${value}` })\n return this\n }\n\n right (value) {\n [value] = this.transformUnit(value)\n this.rules.push({ key: 'right', rule: `right: ${value}` })\n return this\n }\n\n bottom (value) {\n [value] = this.transformUnit(value)\n this.rules.push({ key: 'bottom', rule: `bottom: ${value}` })\n return this\n }\n\n left (value) {\n [value] = this.transformUnit(value)\n this.rules.push({ key: 'left', rule: `left: ${value}` })\n return this\n }\n\n // 关键帧载入\n step (arg: Partial<IAnimationAttr> = {}) {\n const { DEFAULT } = this\n const {\n duration = DEFAULT.duration,\n delay = DEFAULT.delay,\n timingFunction = DEFAULT.timingFunction,\n transformOrigin = DEFAULT.transformOrigin,\n } = arg\n // 生成一条 transition 动画\n\n this.transform.map((t0) => {\n const index = this.historyAnimations.findIndex((t1) => t1.key === t0.key)\n if (index === -1) {\n this.historyAnimations.push(t0)\n } else {\n this.historyAnimations[index] = t0\n }\n })\n const transforms = this.historyAnimations.map((t) => t.transform)\n const transformSequence = transforms.length > 0 ? `${TRANSFORM}:${transforms.join(' ')}!important` : ''\n\n this.rules.map((r0) => {\n const index = this.historyRules.findIndex((r1) => r1.key === r0.key)\n if (index === -1) {\n this.historyRules.push(r0)\n } else {\n this.historyRules[index] = r0\n }\n })\n const rules = this.historyRules.map((t) => t.rule)\n const ruleSequence = rules.length > 0 ? rules.map((rule) => `${rule}!important`).join(';') : ''\n\n this.steps.push(\n [\n ruleSequence,\n transformSequence,\n `${TRANSFORM}-origin: ${transformOrigin}`,\n `transition: all ${duration}ms ${timingFunction} ${delay}ms`,\n ]\n .filter((item) => item !== '')\n .join(';')\n )\n // 清空 rules 和 transform\n this.rules = []\n this.transform = []\n return this as Taro.Animation\n }\n\n // 创建底层数据\n createAnimationData () {\n const animIndex = `taro-h5-poly-fill/${this.id}/create-animation__${this.animationMapCount++}`\n // 记录动画分几个 step\n this.animationMap[animIndex] = this.steps.length\n // 吐出 step\n this.steps.forEach((step, index) => {\n const selector =\n index === 0\n ? `[animation=\"${animIndex}\"], [data-animation=\"${animIndex}\"]`\n : `[animation=\"${animIndex}--${index}\"], [data-animation=\"${animIndex}--${index}\"]`\n styleSheet.add(`${selector} { ${step} }`)\n })\n\n // 清空 steps\n this.steps = []\n return animIndex\n }\n\n // 动画数据产出\n export () {\n return this.createAnimationData() as unknown as ReturnType<Taro.Animation['export']>\n }\n}\n\n// h5 的 createAnimation\nexport const createAnimation: typeof Taro.createAnimation = (option) => {\n return new Animation(option)\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { __awaiter } from '../../node_modules/.pnpm/registry.npmjs.org_tslib@2.5.0/node_modules/tslib/tslib.es6.js';
1
+ import { __awaiter } from 'tslib';
2
2
  import { MethodHandler } from '../../utils/handler.js';
3
3
 
4
4
  // 字体