@cloudbase/js-sdk 3.4.6 → 3.4.7-beta.0
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.
- package/ai/dist/index.esm.js +2 -3
- package/ai/dist/index.esm.js.map +1 -0
- package/ai/dist/index.js +2 -21
- package/ai/dist/index.js.map +1 -0
- package/apis/dist/index.esm.js +2 -3
- package/apis/dist/index.esm.js.map +1 -0
- package/apis/dist/index.js +2 -21
- package/apis/dist/index.js.map +1 -0
- package/app/dist/index.esm.js +2 -11
- package/app/dist/index.esm.js.map +1 -0
- package/app/dist/index.js +2 -18
- package/app/dist/index.js.map +1 -0
- package/auth/dist/index.esm.js +3 -8
- package/auth/dist/index.esm.js.LICENSE.txt +12 -0
- package/auth/dist/index.esm.js.map +1 -0
- package/auth/dist/index.js +3 -13
- package/auth/dist/index.js.LICENSE.txt +12 -0
- package/auth/dist/index.js.map +1 -0
- package/cloudrun/dist/index.esm.js +2 -3
- package/cloudrun/dist/index.esm.js.map +1 -0
- package/cloudrun/dist/index.js +2 -21
- package/cloudrun/dist/index.js.map +1 -0
- package/container/dist/index.esm.js +2 -8
- package/container/dist/index.esm.js.map +1 -0
- package/container/dist/index.js +2 -13
- package/container/dist/index.js.map +1 -0
- package/database/package.json +34 -4
- package/dist/index.cjs.js +3 -38
- package/dist/index.cjs.js.LICENSE.txt +12 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.esm.js +3 -33
- package/dist/index.esm.js.LICENSE.txt +12 -0
- package/dist/index.esm.js.map +1 -0
- package/functions/dist/index.esm.js +2 -8
- package/functions/dist/index.esm.js.map +1 -0
- package/functions/dist/index.js +2 -13
- package/functions/dist/index.js.map +1 -0
- package/miniprogram_dist/ai.js +1 -1
- package/miniprogram_dist/apis.js +1 -1
- package/miniprogram_dist/app.js +1 -1
- package/miniprogram_dist/auth.js +1 -1
- package/miniprogram_dist/cloudrun.js +1 -1
- package/miniprogram_dist/container.js +1 -1
- package/miniprogram_dist/database.js +1 -1
- package/miniprogram_dist/functions.js +1 -1
- package/miniprogram_dist/index.js +1 -1
- package/miniprogram_dist/model.js +1 -1
- package/miniprogram_dist/mysql.js +1 -1
- package/miniprogram_dist/oauth.js +2 -1
- package/miniprogram_dist/realtime.js +1 -1
- package/miniprogram_dist/storage.js +1 -1
- package/model/dist/index.esm.js +2 -3
- package/model/dist/index.esm.js.map +1 -0
- package/model/dist/index.js +2 -21
- package/model/dist/index.js.map +1 -0
- package/mysql/dist/index.esm.js +2 -3
- package/mysql/dist/index.esm.js.map +1 -0
- package/mysql/dist/index.js +2 -21
- package/mysql/dist/index.js.map +1 -0
- package/oauth/dist/index.esm.js +3 -3
- package/oauth/dist/index.esm.js.LICENSE.txt +12 -0
- package/oauth/dist/index.esm.js.map +1 -0
- package/oauth/dist/index.js +3 -21
- package/oauth/dist/index.js.LICENSE.txt +12 -0
- package/oauth/dist/index.js.map +1 -0
- package/package.json +29 -47
- package/realtime/dist/index.esm.js +2 -8
- package/realtime/dist/index.esm.js.map +1 -0
- package/realtime/dist/index.js +2 -13
- package/realtime/dist/index.js.map +1 -0
- package/storage/dist/index.esm.js +2 -4
- package/storage/dist/index.esm.js.map +1 -0
- package/storage/dist/index.js +2 -9
- package/storage/dist/index.js.map +1 -0
- package/types/analytics.d.ts +51 -0
- package/types/container.d.ts +93 -0
- package/{node_modules/@cloudbase/types → types}/package.json +1 -1
- package/{node_modules/@cloudbase/utilities → utilities}/package.json +2 -2
- package/ai/src/index.d.ts +0 -1
- package/ai/src/index.ts +0 -1
- package/apis/src/index.d.ts +0 -1
- package/apis/src/index.ts +0 -1
- package/app/src/index.ts +0 -17
- package/auth/src/index.d.ts +0 -2
- package/auth/src/index.ts +0 -8
- package/cloudrun/src/index.d.ts +0 -1
- package/cloudrun/src/index.ts +0 -1
- package/container/src/index.d.ts +0 -2
- package/container/src/index.ts +0 -8
- package/database/dist/index.d.ts +0 -3
- package/database/dist/index.esm.js +0 -503
- package/database/dist/index.js +0 -509
- package/database/src/index.d.ts +0 -3
- package/database/src/index.ts +0 -486
- package/functions/src/index.d.ts +0 -2
- package/functions/src/index.ts +0 -8
- package/model/src/index.d.ts +0 -1
- package/model/src/index.ts +0 -1
- package/mysql/src/index.d.ts +0 -1
- package/mysql/src/index.ts +0 -1
- package/node_modules/@cloudbase/ai/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/ai/dist/cjs/AI.d.ts +0 -27
- package/node_modules/@cloudbase/ai/dist/cjs/AI.js +0 -224
- package/node_modules/@cloudbase/ai/dist/cjs/bot/index.d.ts +0 -41
- package/node_modules/@cloudbase/ai/dist/cjs/bot/index.js +0 -376
- package/node_modules/@cloudbase/ai/dist/cjs/bot/types.d.ts +0 -144
- package/node_modules/@cloudbase/ai/dist/cjs/bot/types.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/index.d.ts +0 -2
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/index.js +0 -6
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/parse.d.ts +0 -2
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/parse.js +0 -126
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/stream.d.ts +0 -5
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/stream.js +0 -40
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/types.d.ts +0 -16
- package/node_modules/@cloudbase/ai/dist/cjs/eventsource_parser/types.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/index.d.ts +0 -40
- package/node_modules/@cloudbase/ai/dist/cjs/index.js +0 -187
- package/node_modules/@cloudbase/ai/dist/cjs/models/Ark/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/Ark/index.js +0 -130
- package/node_modules/@cloudbase/ai/dist/cjs/models/Ark/type.d.ts +0 -71
- package/node_modules/@cloudbase/ai/dist/cjs/models/Ark/type.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/models/DashScope/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/DashScope/index.js +0 -130
- package/node_modules/@cloudbase/ai/dist/cjs/models/DashScope/type.d.ts +0 -74
- package/node_modules/@cloudbase/ai/dist/cjs/models/DashScope/type.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/models/DeepSeek/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/DeepSeek/index.js +0 -126
- package/node_modules/@cloudbase/ai/dist/cjs/models/Default/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/Default/index.js +0 -122
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuan/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuan/index.js +0 -135
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuan/type.d.ts +0 -74
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuan/type.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuan/util.d.ts +0 -4
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuan/util.js +0 -56
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuanBeta/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuanBeta/index.js +0 -127
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuanExp/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuanExp/index.js +0 -125
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuanOpen/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/HunYuanOpen/index.js +0 -127
- package/node_modules/@cloudbase/ai/dist/cjs/models/Moonshot/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/Moonshot/index.js +0 -130
- package/node_modules/@cloudbase/ai/dist/cjs/models/Moonshot/type.d.ts +0 -85
- package/node_modules/@cloudbase/ai/dist/cjs/models/Moonshot/type.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/models/Yi/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/Yi/index.js +0 -133
- package/node_modules/@cloudbase/ai/dist/cjs/models/Yi/type.d.ts +0 -75
- package/node_modules/@cloudbase/ai/dist/cjs/models/Yi/type.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/models/ZhiPu/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/models/ZhiPu/index.js +0 -139
- package/node_modules/@cloudbase/ai/dist/cjs/models/ZhiPu/type.d.ts +0 -71
- package/node_modules/@cloudbase/ai/dist/cjs/models/ZhiPu/type.js +0 -3
- package/node_modules/@cloudbase/ai/dist/cjs/models/image-model.d.ts +0 -18
- package/node_modules/@cloudbase/ai/dist/cjs/models/image-model.js +0 -85
- package/node_modules/@cloudbase/ai/dist/cjs/models/index.d.ts +0 -26
- package/node_modules/@cloudbase/ai/dist/cjs/models/index.js +0 -42
- package/node_modules/@cloudbase/ai/dist/cjs/models/model.d.ts +0 -40
- package/node_modules/@cloudbase/ai/dist/cjs/models/model.js +0 -481
- package/node_modules/@cloudbase/ai/dist/cjs/type.d.ts +0 -190
- package/node_modules/@cloudbase/ai/dist/cjs/type.js +0 -10
- package/node_modules/@cloudbase/ai/dist/cjs/utils.d.ts +0 -38
- package/node_modules/@cloudbase/ai/dist/cjs/utils.js +0 -263
- package/node_modules/@cloudbase/ai/dist/esm/AI.d.ts +0 -27
- package/node_modules/@cloudbase/ai/dist/esm/AI.js +0 -198
- package/node_modules/@cloudbase/ai/dist/esm/bot/index.d.ts +0 -41
- package/node_modules/@cloudbase/ai/dist/esm/bot/index.js +0 -373
- package/node_modules/@cloudbase/ai/dist/esm/bot/types.d.ts +0 -144
- package/node_modules/@cloudbase/ai/dist/esm/bot/types.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/index.d.ts +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/index.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/parse.d.ts +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/parse.js +0 -122
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/stream.d.ts +0 -5
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/stream.js +0 -37
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/types.d.ts +0 -16
- package/node_modules/@cloudbase/ai/dist/esm/eventsource_parser/types.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/index.d.ts +0 -40
- package/node_modules/@cloudbase/ai/dist/esm/index.js +0 -152
- package/node_modules/@cloudbase/ai/dist/esm/models/Ark/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/Ark/index.js +0 -127
- package/node_modules/@cloudbase/ai/dist/esm/models/Ark/type.d.ts +0 -71
- package/node_modules/@cloudbase/ai/dist/esm/models/Ark/type.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/models/DashScope/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/DashScope/index.js +0 -127
- package/node_modules/@cloudbase/ai/dist/esm/models/DashScope/type.d.ts +0 -74
- package/node_modules/@cloudbase/ai/dist/esm/models/DashScope/type.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/models/DeepSeek/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/DeepSeek/index.js +0 -123
- package/node_modules/@cloudbase/ai/dist/esm/models/Default/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/Default/index.js +0 -119
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuan/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuan/index.js +0 -132
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuan/type.d.ts +0 -74
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuan/type.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuan/util.d.ts +0 -4
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuan/util.js +0 -51
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuanBeta/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuanBeta/index.js +0 -124
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuanExp/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuanExp/index.js +0 -122
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuanOpen/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/HunYuanOpen/index.js +0 -124
- package/node_modules/@cloudbase/ai/dist/esm/models/Moonshot/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/Moonshot/index.js +0 -127
- package/node_modules/@cloudbase/ai/dist/esm/models/Moonshot/type.d.ts +0 -85
- package/node_modules/@cloudbase/ai/dist/esm/models/Moonshot/type.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/models/Yi/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/Yi/index.js +0 -130
- package/node_modules/@cloudbase/ai/dist/esm/models/Yi/type.d.ts +0 -75
- package/node_modules/@cloudbase/ai/dist/esm/models/Yi/type.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/models/ZhiPu/index.d.ts +0 -10
- package/node_modules/@cloudbase/ai/dist/esm/models/ZhiPu/index.js +0 -136
- package/node_modules/@cloudbase/ai/dist/esm/models/ZhiPu/type.d.ts +0 -71
- package/node_modules/@cloudbase/ai/dist/esm/models/ZhiPu/type.js +0 -2
- package/node_modules/@cloudbase/ai/dist/esm/models/image-model.d.ts +0 -18
- package/node_modules/@cloudbase/ai/dist/esm/models/image-model.js +0 -82
- package/node_modules/@cloudbase/ai/dist/esm/models/index.d.ts +0 -26
- package/node_modules/@cloudbase/ai/dist/esm/models/index.js +0 -27
- package/node_modules/@cloudbase/ai/dist/esm/models/model.d.ts +0 -40
- package/node_modules/@cloudbase/ai/dist/esm/models/model.js +0 -478
- package/node_modules/@cloudbase/ai/dist/esm/type.d.ts +0 -190
- package/node_modules/@cloudbase/ai/dist/esm/type.js +0 -7
- package/node_modules/@cloudbase/ai/dist/esm/utils.d.ts +0 -38
- package/node_modules/@cloudbase/ai/dist/esm/utils.js +0 -252
- package/node_modules/@cloudbase/ai/dist/miniprogram/index.js +0 -2
- package/node_modules/@cloudbase/ai/dist/miniprogram/index.js.LICENSE.txt +0 -22
- package/node_modules/@cloudbase/ai/package.json +0 -32
- package/node_modules/@cloudbase/apis/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/apis/dist/cjs/callApis.d.ts +0 -20
- package/node_modules/@cloudbase/apis/dist/cjs/callApis.js +0 -154
- package/node_modules/@cloudbase/apis/dist/cjs/index.d.ts +0 -5
- package/node_modules/@cloudbase/apis/dist/cjs/index.js +0 -53
- package/node_modules/@cloudbase/apis/dist/cjs/type.d.ts +0 -14
- package/node_modules/@cloudbase/apis/dist/cjs/type.js +0 -3
- package/node_modules/@cloudbase/apis/dist/esm/callApis.d.ts +0 -20
- package/node_modules/@cloudbase/apis/dist/esm/callApis.js +0 -148
- package/node_modules/@cloudbase/apis/dist/esm/index.d.ts +0 -5
- package/node_modules/@cloudbase/apis/dist/esm/index.js +0 -35
- package/node_modules/@cloudbase/apis/dist/esm/type.d.ts +0 -14
- package/node_modules/@cloudbase/apis/dist/esm/type.js +0 -2
- package/node_modules/@cloudbase/apis/dist/miniprogram/index.js +0 -1
- package/node_modules/@cloudbase/apis/package.json +0 -28
- package/node_modules/@cloudbase/app/.eslintrc.js +0 -12
- package/node_modules/@cloudbase/app/dist/cjs/constants/common.d.ts +0 -38
- package/node_modules/@cloudbase/app/dist/cjs/constants/common.js +0 -103
- package/node_modules/@cloudbase/app/dist/cjs/index.d.ts +0 -65
- package/node_modules/@cloudbase/app/dist/cjs/index.js +0 -340
- package/node_modules/@cloudbase/app/dist/cjs/index.node.d.ts +0 -6
- package/node_modules/@cloudbase/app/dist/cjs/index.node.js +0 -27
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/constants.d.ts +0 -33
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/constants.js +0 -38
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/context.d.ts +0 -17
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/context.js +0 -189
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/index.d.ts +0 -25
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/index.js +0 -150
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/metadata.d.ts +0 -14
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/metadata.js +0 -130
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/request.d.ts +0 -41
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/request.js +0 -521
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/tool.d.ts +0 -2
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/tool.js +0 -354
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/types.d.ts +0 -102
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/types.js +0 -3
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/utils.d.ts +0 -37
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/utils.js +0 -286
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/wx.d.ts +0 -39
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter-node/wx.js +0 -272
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter.d.ts +0 -3
- package/node_modules/@cloudbase/app/dist/cjs/libs/adapter.js +0 -163
- package/node_modules/@cloudbase/app/dist/cjs/libs/cache.d.ts +0 -6
- package/node_modules/@cloudbase/app/dist/cjs/libs/cache.js +0 -38
- package/node_modules/@cloudbase/app/dist/cjs/libs/component.d.ts +0 -3
- package/node_modules/@cloudbase/app/dist/cjs/libs/component.js +0 -126
- package/node_modules/@cloudbase/app/dist/cjs/libs/lang.d.ts +0 -23
- package/node_modules/@cloudbase/app/dist/cjs/libs/lang.js +0 -59
- package/node_modules/@cloudbase/app/dist/cjs/libs/request.d.ts +0 -62
- package/node_modules/@cloudbase/app/dist/cjs/libs/request.js +0 -480
- package/node_modules/@cloudbase/app/dist/esm/constants/common.d.ts +0 -38
- package/node_modules/@cloudbase/app/dist/esm/constants/common.js +0 -91
- package/node_modules/@cloudbase/app/dist/esm/index.d.ts +0 -65
- package/node_modules/@cloudbase/app/dist/esm/index.js +0 -335
- package/node_modules/@cloudbase/app/dist/esm/index.node.d.ts +0 -6
- package/node_modules/@cloudbase/app/dist/esm/index.node.js +0 -19
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/constants.d.ts +0 -33
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/constants.js +0 -35
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/context.d.ts +0 -17
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/context.js +0 -181
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/index.d.ts +0 -25
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/index.js +0 -120
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/metadata.d.ts +0 -14
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/metadata.js +0 -123
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/request.d.ts +0 -41
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/request.js +0 -495
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/tool.d.ts +0 -2
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/tool.js +0 -350
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/types.d.ts +0 -102
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/types.js +0 -2
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/utils.d.ts +0 -37
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/utils.js +0 -264
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/wx.d.ts +0 -39
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter-node/wx.js +0 -237
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter.d.ts +0 -3
- package/node_modules/@cloudbase/app/dist/esm/libs/adapter.js +0 -136
- package/node_modules/@cloudbase/app/dist/esm/libs/cache.d.ts +0 -6
- package/node_modules/@cloudbase/app/dist/esm/libs/cache.js +0 -32
- package/node_modules/@cloudbase/app/dist/esm/libs/component.d.ts +0 -3
- package/node_modules/@cloudbase/app/dist/esm/libs/component.js +0 -121
- package/node_modules/@cloudbase/app/dist/esm/libs/lang.d.ts +0 -23
- package/node_modules/@cloudbase/app/dist/esm/libs/lang.js +0 -54
- package/node_modules/@cloudbase/app/dist/esm/libs/request.d.ts +0 -62
- package/node_modules/@cloudbase/app/dist/esm/libs/request.js +0 -475
- package/node_modules/@cloudbase/app/dist/miniprogram/index.js +0 -2
- package/node_modules/@cloudbase/app/dist/miniprogram/index.js.LICENSE.txt +0 -7
- package/node_modules/@cloudbase/app/package.json +0 -59
- package/node_modules/@cloudbase/auth/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/auth/dist/cjs/adapter.d.ts +0 -2
- package/node_modules/@cloudbase/auth/dist/cjs/adapter.js +0 -272
- package/node_modules/@cloudbase/auth/dist/cjs/index.d.ts +0 -283
- package/node_modules/@cloudbase/auth/dist/cjs/index.js +0 -3018
- package/node_modules/@cloudbase/auth/dist/cjs/type.d.ts +0 -258
- package/node_modules/@cloudbase/auth/dist/cjs/type.js +0 -6
- package/node_modules/@cloudbase/auth/dist/cjs/utilities.d.ts +0 -7
- package/node_modules/@cloudbase/auth/dist/cjs/utilities.js +0 -23
- package/node_modules/@cloudbase/auth/dist/cjs/utils.d.ts +0 -5
- package/node_modules/@cloudbase/auth/dist/cjs/utils.js +0 -60
- package/node_modules/@cloudbase/auth/dist/cjs/v1-compat.d.ts +0 -77
- package/node_modules/@cloudbase/auth/dist/cjs/v1-compat.js +0 -423
- package/node_modules/@cloudbase/auth/dist/esm/adapter.d.ts +0 -2
- package/node_modules/@cloudbase/auth/dist/esm/adapter.js +0 -268
- package/node_modules/@cloudbase/auth/dist/esm/index.d.ts +0 -283
- package/node_modules/@cloudbase/auth/dist/esm/index.js +0 -3008
- package/node_modules/@cloudbase/auth/dist/esm/type.d.ts +0 -258
- package/node_modules/@cloudbase/auth/dist/esm/type.js +0 -3
- package/node_modules/@cloudbase/auth/dist/esm/utilities.d.ts +0 -7
- package/node_modules/@cloudbase/auth/dist/esm/utilities.js +0 -8
- package/node_modules/@cloudbase/auth/dist/esm/utils.d.ts +0 -5
- package/node_modules/@cloudbase/auth/dist/esm/utils.js +0 -52
- package/node_modules/@cloudbase/auth/dist/esm/v1-compat.d.ts +0 -77
- package/node_modules/@cloudbase/auth/dist/esm/v1-compat.js +0 -419
- package/node_modules/@cloudbase/auth/dist/miniprogram/index.js +0 -1
- package/node_modules/@cloudbase/auth/package.json +0 -31
- package/node_modules/@cloudbase/cloudrun/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/cloudrun/dist/cjs/index.d.ts +0 -4
- package/node_modules/@cloudbase/cloudrun/dist/cjs/index.js +0 -154
- package/node_modules/@cloudbase/cloudrun/dist/esm/index.d.ts +0 -4
- package/node_modules/@cloudbase/cloudrun/dist/esm/index.js +0 -149
- package/node_modules/@cloudbase/cloudrun/package.json +0 -30
- package/node_modules/@cloudbase/container/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/container/.prettierrc.js +0 -41
- package/node_modules/@cloudbase/container/dist/cjs/constants/index.d.ts +0 -1
- package/node_modules/@cloudbase/container/dist/cjs/constants/index.js +0 -5
- package/node_modules/@cloudbase/container/dist/cjs/go_wams_exec.d.ts +0 -2
- package/node_modules/@cloudbase/container/dist/cjs/go_wams_exec.js +0 -538
- package/node_modules/@cloudbase/container/dist/cjs/index.d.ts +0 -13
- package/node_modules/@cloudbase/container/dist/cjs/index.js +0 -343
- package/node_modules/@cloudbase/container/dist/cjs/utils/index.d.ts +0 -3
- package/node_modules/@cloudbase/container/dist/cjs/utils/index.js +0 -83
- package/node_modules/@cloudbase/container/dist/cjs/utils/loader.d.ts +0 -8
- package/node_modules/@cloudbase/container/dist/cjs/utils/loader.js +0 -186
- package/node_modules/@cloudbase/container/dist/cjs/utils/request.d.ts +0 -12
- package/node_modules/@cloudbase/container/dist/cjs/utils/request.js +0 -106
- package/node_modules/@cloudbase/container/dist/esm/constants/index.d.ts +0 -1
- package/node_modules/@cloudbase/container/dist/esm/constants/index.js +0 -2
- package/node_modules/@cloudbase/container/dist/esm/go_wams_exec.d.ts +0 -2
- package/node_modules/@cloudbase/container/dist/esm/go_wams_exec.js +0 -536
- package/node_modules/@cloudbase/container/dist/esm/index.d.ts +0 -13
- package/node_modules/@cloudbase/container/dist/esm/index.js +0 -338
- package/node_modules/@cloudbase/container/dist/esm/utils/index.d.ts +0 -3
- package/node_modules/@cloudbase/container/dist/esm/utils/index.js +0 -77
- package/node_modules/@cloudbase/container/dist/esm/utils/loader.d.ts +0 -8
- package/node_modules/@cloudbase/container/dist/esm/utils/loader.js +0 -178
- package/node_modules/@cloudbase/container/dist/esm/utils/request.d.ts +0 -12
- package/node_modules/@cloudbase/container/dist/esm/utils/request.js +0 -102
- package/node_modules/@cloudbase/container/package.json +0 -30
- package/node_modules/@cloudbase/database/README.md +0 -119
- package/node_modules/@cloudbase/database/package.json +0 -36
- package/node_modules/@cloudbase/database/tsconfig.test.json +0 -15
- package/node_modules/@cloudbase/functions/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/functions/dist/cjs/index.d.ts +0 -2
- package/node_modules/@cloudbase/functions/dist/cjs/index.js +0 -223
- package/node_modules/@cloudbase/functions/dist/esm/index.d.ts +0 -2
- package/node_modules/@cloudbase/functions/dist/esm/index.js +0 -219
- package/node_modules/@cloudbase/functions/package.json +0 -32
- package/node_modules/@cloudbase/model/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/model/dist/cjs/index.d.ts +0 -5
- package/node_modules/@cloudbase/model/dist/cjs/index.js +0 -144
- package/node_modules/@cloudbase/model/dist/esm/index.d.ts +0 -5
- package/node_modules/@cloudbase/model/dist/esm/index.js +0 -125
- package/node_modules/@cloudbase/model/package.json +0 -29
- package/node_modules/@cloudbase/mysql/.eslintrc.js +0 -6
- package/node_modules/@cloudbase/mysql/dist/cjs/index.d.ts +0 -4
- package/node_modules/@cloudbase/mysql/dist/cjs/index.d.ts.map +0 -1
- package/node_modules/@cloudbase/mysql/dist/cjs/index.js +0 -173
- package/node_modules/@cloudbase/mysql/dist/esm/index.d.ts +0 -3
- package/node_modules/@cloudbase/mysql/dist/esm/index.js +0 -155
- package/node_modules/@cloudbase/mysql/package.json +0 -30
- package/node_modules/@cloudbase/oauth/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/apis.d.ts +0 -142
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/apis.js +0 -1280
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/auth-error.d.ts +0 -22
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/auth-error.js +0 -278
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/consts.d.ts +0 -139
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/consts.js +0 -147
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/models.d.ts +0 -557
- package/node_modules/@cloudbase/oauth/dist/cjs/auth/models.js +0 -3
- package/node_modules/@cloudbase/oauth/dist/cjs/captcha/captcha-dom.d.ts +0 -3
- package/node_modules/@cloudbase/oauth/dist/cjs/captcha/captcha-dom.js +0 -223
- package/node_modules/@cloudbase/oauth/dist/cjs/captcha/captcha.d.ts +0 -42
- package/node_modules/@cloudbase/oauth/dist/cjs/captcha/captcha.js +0 -205
- package/node_modules/@cloudbase/oauth/dist/cjs/index.d.ts +0 -22
- package/node_modules/@cloudbase/oauth/dist/cjs/index.js +0 -107
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/consts.d.ts +0 -20
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/consts.js +0 -26
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/interface.d.ts +0 -15
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/interface.js +0 -10
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/models.d.ts +0 -74
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/models.js +0 -3
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/oauth2client.d.ts +0 -129
- package/node_modules/@cloudbase/oauth/dist/cjs/oauth2client/oauth2client.js +0 -1174
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/base64.d.ts +0 -9
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/base64.js +0 -112
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/encrypt.d.ts +0 -4
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/encrypt.js +0 -26
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/encryptlong/index.d.ts +0 -546
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/encryptlong/index.js +0 -2982
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/function/single-promise.d.ts +0 -6
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/function/single-promise.js +0 -94
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/index.d.ts +0 -2
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/index.js +0 -56
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/mp.d.ts +0 -2
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/mp.js +0 -66
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/urlSearchParams.d.ts +0 -13
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/urlSearchParams.js +0 -66
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/uuid.d.ts +0 -1
- package/node_modules/@cloudbase/oauth/dist/cjs/utils/uuid.js +0 -12
- package/node_modules/@cloudbase/oauth/dist/esm/auth/apis.d.ts +0 -142
- package/node_modules/@cloudbase/oauth/dist/esm/auth/apis.js +0 -768
- package/node_modules/@cloudbase/oauth/dist/esm/auth/auth-error.d.ts +0 -22
- package/node_modules/@cloudbase/oauth/dist/esm/auth/auth-error.js +0 -255
- package/node_modules/@cloudbase/oauth/dist/esm/auth/consts.d.ts +0 -139
- package/node_modules/@cloudbase/oauth/dist/esm/auth/consts.js +0 -144
- package/node_modules/@cloudbase/oauth/dist/esm/auth/models.d.ts +0 -557
- package/node_modules/@cloudbase/oauth/dist/esm/auth/models.js +0 -2
- package/node_modules/@cloudbase/oauth/dist/esm/captcha/captcha-dom.d.ts +0 -3
- package/node_modules/@cloudbase/oauth/dist/esm/captcha/captcha-dom.js +0 -130
- package/node_modules/@cloudbase/oauth/dist/esm/captcha/captcha.d.ts +0 -42
- package/node_modules/@cloudbase/oauth/dist/esm/captcha/captcha.js +0 -104
- package/node_modules/@cloudbase/oauth/dist/esm/index.d.ts +0 -22
- package/node_modules/@cloudbase/oauth/dist/esm/index.js +0 -64
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/consts.d.ts +0 -20
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/consts.js +0 -22
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/interface.d.ts +0 -15
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/interface.js +0 -3
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/models.d.ts +0 -74
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/models.js +0 -2
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/oauth2client.d.ts +0 -129
- package/node_modules/@cloudbase/oauth/dist/esm/oauth2client/oauth2client.js +0 -711
- package/node_modules/@cloudbase/oauth/dist/esm/utils/base64.d.ts +0 -9
- package/node_modules/@cloudbase/oauth/dist/esm/utils/base64.js +0 -104
- package/node_modules/@cloudbase/oauth/dist/esm/utils/encrypt.d.ts +0 -4
- package/node_modules/@cloudbase/oauth/dist/esm/utils/encrypt.js +0 -18
- package/node_modules/@cloudbase/oauth/dist/esm/utils/encryptlong/index.d.ts +0 -546
- package/node_modules/@cloudbase/oauth/dist/esm/utils/encryptlong/index.js +0 -2953
- package/node_modules/@cloudbase/oauth/dist/esm/utils/function/single-promise.d.ts +0 -6
- package/node_modules/@cloudbase/oauth/dist/esm/utils/function/single-promise.js +0 -34
- package/node_modules/@cloudbase/oauth/dist/esm/utils/index.d.ts +0 -2
- package/node_modules/@cloudbase/oauth/dist/esm/utils/index.js +0 -51
- package/node_modules/@cloudbase/oauth/dist/esm/utils/mp.d.ts +0 -2
- package/node_modules/@cloudbase/oauth/dist/esm/utils/mp.js +0 -61
- package/node_modules/@cloudbase/oauth/dist/esm/utils/urlSearchParams.d.ts +0 -13
- package/node_modules/@cloudbase/oauth/dist/esm/utils/urlSearchParams.js +0 -58
- package/node_modules/@cloudbase/oauth/dist/esm/utils/uuid.d.ts +0 -1
- package/node_modules/@cloudbase/oauth/dist/esm/utils/uuid.js +0 -8
- package/node_modules/@cloudbase/oauth/dist/miniprogram/index.js +0 -1
- package/node_modules/@cloudbase/oauth/package.json +0 -20
- package/node_modules/@cloudbase/realtime/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/realtime/dist/cjs/common.d.ts +0 -4
- package/node_modules/@cloudbase/realtime/dist/cjs/common.js +0 -22
- package/node_modules/@cloudbase/realtime/dist/cjs/error.d.ts +0 -36
- package/node_modules/@cloudbase/realtime/dist/cjs/error.js +0 -106
- package/node_modules/@cloudbase/realtime/dist/cjs/index.d.ts +0 -2
- package/node_modules/@cloudbase/realtime/dist/cjs/index.js +0 -36
- package/node_modules/@cloudbase/realtime/dist/cjs/listener.d.ts +0 -14
- package/node_modules/@cloudbase/realtime/dist/cjs/listener.js +0 -18
- package/node_modules/@cloudbase/realtime/dist/cjs/message.d.ts +0 -3
- package/node_modules/@cloudbase/realtime/dist/cjs/message.js +0 -13
- package/node_modules/@cloudbase/realtime/dist/cjs/snapshot.d.ts +0 -17
- package/node_modules/@cloudbase/realtime/dist/cjs/snapshot.js +0 -45
- package/node_modules/@cloudbase/realtime/dist/cjs/utils.d.ts +0 -1
- package/node_modules/@cloudbase/realtime/dist/cjs/utils.js +0 -9
- package/node_modules/@cloudbase/realtime/dist/cjs/virtual-websocket-client.d.ts +0 -62
- package/node_modules/@cloudbase/realtime/dist/cjs/virtual-websocket-client.js +0 -960
- package/node_modules/@cloudbase/realtime/dist/cjs/websocket-client.d.ts +0 -78
- package/node_modules/@cloudbase/realtime/dist/cjs/websocket-client.js +0 -750
- package/node_modules/@cloudbase/realtime/dist/cjs/ws-event.d.ts +0 -126
- package/node_modules/@cloudbase/realtime/dist/cjs/ws-event.js +0 -141
- package/node_modules/@cloudbase/realtime/dist/esm/common.d.ts +0 -4
- package/node_modules/@cloudbase/realtime/dist/esm/common.js +0 -15
- package/node_modules/@cloudbase/realtime/dist/esm/error.d.ts +0 -36
- package/node_modules/@cloudbase/realtime/dist/esm/error.js +0 -100
- package/node_modules/@cloudbase/realtime/dist/esm/index.d.ts +0 -2
- package/node_modules/@cloudbase/realtime/dist/esm/index.js +0 -32
- package/node_modules/@cloudbase/realtime/dist/esm/listener.d.ts +0 -14
- package/node_modules/@cloudbase/realtime/dist/esm/listener.js +0 -15
- package/node_modules/@cloudbase/realtime/dist/esm/message.d.ts +0 -3
- package/node_modules/@cloudbase/realtime/dist/esm/message.js +0 -8
- package/node_modules/@cloudbase/realtime/dist/esm/snapshot.d.ts +0 -17
- package/node_modules/@cloudbase/realtime/dist/esm/snapshot.js +0 -42
- package/node_modules/@cloudbase/realtime/dist/esm/utils.d.ts +0 -1
- package/node_modules/@cloudbase/realtime/dist/esm/utils.js +0 -5
- package/node_modules/@cloudbase/realtime/dist/esm/virtual-websocket-client.d.ts +0 -62
- package/node_modules/@cloudbase/realtime/dist/esm/virtual-websocket-client.js +0 -954
- package/node_modules/@cloudbase/realtime/dist/esm/websocket-client.d.ts +0 -78
- package/node_modules/@cloudbase/realtime/dist/esm/websocket-client.js +0 -747
- package/node_modules/@cloudbase/realtime/dist/esm/ws-event.d.ts +0 -126
- package/node_modules/@cloudbase/realtime/dist/esm/ws-event.js +0 -137
- package/node_modules/@cloudbase/realtime/package.json +0 -29
- package/node_modules/@cloudbase/storage/.eslintrc.js +0 -15
- package/node_modules/@cloudbase/storage/dist/cjs/index.d.ts +0 -195
- package/node_modules/@cloudbase/storage/dist/cjs/index.js +0 -1426
- package/node_modules/@cloudbase/storage/dist/cjs/supabase/errors.d.ts +0 -20
- package/node_modules/@cloudbase/storage/dist/cjs/supabase/errors.js +0 -65
- package/node_modules/@cloudbase/storage/dist/cjs/supabase/types.d.ts +0 -64
- package/node_modules/@cloudbase/storage/dist/cjs/supabase/types.js +0 -3
- package/node_modules/@cloudbase/storage/dist/esm/index.d.ts +0 -195
- package/node_modules/@cloudbase/storage/dist/esm/index.js +0 -1422
- package/node_modules/@cloudbase/storage/dist/esm/supabase/errors.d.ts +0 -20
- package/node_modules/@cloudbase/storage/dist/esm/supabase/errors.js +0 -61
- package/node_modules/@cloudbase/storage/dist/esm/supabase/types.d.ts +0 -64
- package/node_modules/@cloudbase/storage/dist/esm/supabase/types.js +0 -2
- package/node_modules/@cloudbase/storage/package.json +0 -28
- package/node_modules/@cloudbase/types/index.js +0 -1
- package/node_modules/@cloudbase/utilities/.eslintrc.js +0 -15
- package/oauth/src/index.d.ts +0 -1
- package/oauth/src/index.ts +0 -1
- package/realtime/src/index.d.ts +0 -2
- package/realtime/src/index.ts +0 -8
- package/storage/src/index.d.ts +0 -2
- package/storage/src/index.js +0 -5
- package/storage/src/index.ts +0 -4
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/aggregate.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/aggregate.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/collection.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/collection.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/command.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/command.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/commands/logic.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/commands/logic.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/commands/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/commands/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/commands/update.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/commands/update.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/config/app.config.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/config/app.config.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/config/error.config.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/config/error.config.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/const/code.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/const/code.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/constant.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/constant.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/document.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/document.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/interface.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/interface.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/lineString.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/lineString.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/multiLineString.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/multiLineString.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/multiPoint.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/multiPoint.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/multiPolygon.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/multiPolygon.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/point.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/point.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/polygon.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/geo/polygon.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/helper/symbol.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/helper/symbol.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/lib/util.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/lib/util.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/operator-map.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/operator-map.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/regexp/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/regexp/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/common.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/common.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/datatype.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/datatype.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/update.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serializer/update.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serverDate/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/serverDate/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/collection.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/collection.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/document.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/document.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/transaction/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/typings/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/typings/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/typings/realtime.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/typings/realtime.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/util.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/util.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/error.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/error.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/msg.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/msg.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/symbol.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/symbol.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/type.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/type.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/utils.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/utils/utils.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/validate.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/commonjs/validate.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/aggregate.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/aggregate.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/collection.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/collection.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/command.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/command.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/commands/logic.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/commands/logic.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/commands/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/commands/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/commands/update.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/commands/update.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/config/app.config.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/config/app.config.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/config/error.config.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/config/error.config.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/const/code.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/const/code.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/constant.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/constant.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/document.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/document.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/interface.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/interface.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/lineString.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/lineString.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/multiLineString.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/multiLineString.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/multiPoint.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/multiPoint.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/multiPolygon.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/multiPolygon.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/point.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/point.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/polygon.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/geo/polygon.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/helper/symbol.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/helper/symbol.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/lib/util.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/lib/util.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/operator-map.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/operator-map.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/regexp/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/regexp/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/common.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/common.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/datatype.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/datatype.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/update.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serializer/update.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serverDate/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/serverDate/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/collection.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/collection.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/document.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/document.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/query.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/transaction/query.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/typings/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/typings/index.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/typings/realtime.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/typings/realtime.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/util.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/util.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/error.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/error.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/msg.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/msg.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/symbol.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/symbol.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/type.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/type.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/utils.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/utils/utils.js +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/validate.d.ts +0 -0
- /package/{node_modules/@cloudbase/database → database}/dist/esm/validate.js +0 -0
- /package/{app/src → dist}/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/auth.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/cache.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/cloudrun.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/component.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/database.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/events.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/functions.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/realtime.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/request.d.ts +0 -0
- /package/{node_modules/@cloudbase/types → types}/storage.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/adapters/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/adapters/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/adapters/platforms/web.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/adapters/platforms/web.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/constants/common.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/constants/common.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/constants/errors.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/constants/errors.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/constants/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/constants/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/helpers/decorators.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/helpers/decorators.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/helpers/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/helpers/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/abortController.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/abortController.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/cache.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/cache.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/events.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/events.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/langEvent.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/langEvent.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/util.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/cjs/libs/util.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/adapters/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/adapters/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/adapters/platforms/web.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/adapters/platforms/web.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/constants/common.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/constants/common.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/constants/errors.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/constants/errors.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/constants/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/constants/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/helpers/decorators.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/helpers/decorators.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/helpers/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/helpers/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/index.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/index.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/abortController.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/abortController.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/cache.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/cache.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/events.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/events.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/langEvent.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/langEvent.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/util.d.ts +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/esm/libs/util.js +0 -0
- /package/{node_modules/@cloudbase/utilities → utilities}/dist/miniprogram/index.js +0 -0
package/storage/dist/index.js
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
exports.registerStorage = void 0;
|
|
4
|
-
var storage_1 = require("@cloudbase/storage");
|
|
5
|
-
exports.registerStorage = storage_1.registerStorage;
|
|
6
|
-
|
|
7
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUE4RTtBQUdqRSxRQUFBLGVBQWUsR0FBRyx5QkFBa0QsQ0FBQyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlZ2lzdGVyU3RvcmFnZSBhcyByZWdpc3RlclN0b3JhZ2VPcmlnaW4gfSBmcm9tICdAY2xvdWRiYXNlL3N0b3JhZ2UnO1xuaW1wb3J0IHsgSUNsb3VkYmFzZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgcmVnaXN0ZXJTdG9yYWdlID0gcmVnaXN0ZXJTdG9yYWdlT3JpZ2luIGFzIChhcHA6IElDbG91ZGJhc2UpID0+IHZvaWQ7Il19
|
|
8
|
-
|
|
9
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUE4RTtBQUdqRSxRQUFBLGVBQWUsR0FBRyx5QkFBa0QsQ0FBQyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlZ2lzdGVyU3RvcmFnZSBhcyByZWdpc3RlclN0b3JhZ2VPcmlnaW4gfSBmcm9tICdAY2xvdWRiYXNlL3N0b3JhZ2UnO1xuaW1wb3J0IHsgSUNsb3VkYmFzZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgcmVnaXN0ZXJTdG9yYWdlID0gcmVnaXN0ZXJTdG9yYWdlT3JpZ2luIGFzIChhcHA6IElDbG91ZGJhc2UpID0+IHZvaWQ7Il19
|
|
1
|
+
!function(){var t={456:function(t,e,r){"use strict";var n,o=this&&this.__extends||(n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},n(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__assign||function(){return i=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},i.apply(this,arguments)},a=this&&this.__decorate||function(t,e,r,n){var o,i=arguments.length,a=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,r,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(i<3?o(a):i>3?o(e,r,a):o(e,r))||a);return i>3&&a&&Object.defineProperty(e,r,a),a},s=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},c=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(o,i){function a(t){try{c(n.next(t))}catch(t){i(t)}}function s(t){try{c(n.throw(t))}catch(t){i(t)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,s)}c((n=n.apply(t,e||[])).next())}))},u=this&&this.__generator||function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=e.call(t,a)}catch(t){s=[6,t],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(e,"__esModule",{value:!0}),e.registerStorage=e.SupabaseFileAPILikeStorage=e.CloudbaseStorage=e.COMPONENT_NAME=void 0;var l,d=r(957),f=r(877),p=r(388);!function(t){t.put="put",t.post="post"}(l||(l={}));var h=f.constants.getSdkName,m=f.constants.ERRORS,g=f.constants.COMMUNITY_SITE_URL,y=f.utils.isArray,v=f.utils.isString,b=f.utils.isPalinObject,w=f.utils.execCallback,_=f.helpers.catchErrorsDecorator;e.COMPONENT_NAME="storage";var O=function(t,e,r){return c(void 0,void 0,void 0,(function(){var n,o,a;return u(this,(function(s){switch(s.label){case 0:return[4,t.gateWay({path:"storages",name:"get-objects-upload-info",data:[i({objectId:e.path},e.headers?{signedHeader:Object.keys(e.headers).reduce((function(t,r){var n;return i(i({},t),((n={})[r]=[e.headers[r]],n))}),{})}:{})]},r)];case 1:return n=s.sent(),o=(null===(a=n.data)||void 0===a?void 0:a[0])||{},[2,n=i(i({},n),{data:i(i({},o.code?i({},o):{}),{authorization:o.authorization,token:o.token,url:o.uploadUrl,fileId:o.cloudObjectId,cosFileId:o.cloudObjectMeta,download_url:o.downloadUrl})})]}}))}))},S=function(t,e,r){return c(void 0,void 0,void 0,(function(){var n,o;return u(this,(function(a){switch(a.label){case 0:return[4,t.gateWay({path:"storages",name:"get-objects-download-info",data:e.convertedFileList.map((function(t){return{cloudObjectId:t.fileid}}))},r)];case 1:return n=a.sent(),[2,n=i(i({},n),{data:{download_list:null===(o=n.data)||void 0===o?void 0:o.map((function(t){return{code:t.code||"SUCCESS",message:t.message,fileid:t.cloudObjectId,download_url:t.downloadUrl,fileID:t.cloudObjectId,tempFileURL:t.downloadUrl}}))}})]}}))}))},E=function(t,e,r){return c(void 0,void 0,void 0,(function(){var n,o;return u(this,(function(a){switch(a.label){case 0:return[4,t.gateWay({path:"storages",name:"delete-objects",data:e.fileList.map((function(t){return{cloudObjectId:t}}))},r)];case 1:return n=a.sent(),[2,n=i(i({},n),{data:{delete_list:null===(o=n.data)||void 0===o?void 0:o.map((function(t){return{code:t.code||"SUCCESS",fileID:t.cloudObjectId,message:t.message}}))}})]}}))}))},I=function(t,e,r){return c(void 0,void 0,void 0,(function(){var n,o;return u(this,(function(a){switch(a.label){case 0:return[4,t.gateWay({path:"storages",name:"copy-objects",data:e.convertedFileList.map((function(t){return{srcPath:t.src_path,dstPath:t.dst_path,overwrite:t.overwrite,removeOriginal:t.remove_original}}))},r)];case 1:return n=a.sent(),[2,n=i(i({},n),{data:{copy_list:null===(o=n.data)||void 0===o?void 0:o.map((function(t){return{code:t.code||"SUCCESS",fileID:t.cloudObjectId,message:t.message}}))}})]}}))}))},P=e.CloudbaseStorage=function(){function t(){}var r,n,o,d,f,P,N,R,C,A,j,L,F,M,U,x;return t.prototype.isGateWay=function(){return"GATEWAY"===(this.config.endPointMode||"CLOUD_API")},t.prototype.uploadFile=function(t,r){return c(this,void 0,Promise,(function(){var n,o,a,s,c,d,f,p,g,y,b,_,O,S,E,I,P,N,R,C,A,j,L,F;return u(this,(function(u){switch(u.label){case 0:if(n=t.cloudPath,o=t.filePath,a=t.onUploadProgress,j=t.method,s=void 0===j?"put":j,L=t.headers,c=void 0===L?{}:L,d=t.fileContent,!v(n)||!o&&!d)throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".uploadFile] invalid params")}));return f={put:l.put,post:l.post}[s.toLocaleLowerCase()]||l.put,[4,this.getUploadMetadata({cloudPath:n,method:f,headers:f===l.put?c:void 0,customReqOpts:t.customReqOpts})];case 1:return p=u.sent(),g=p.data,y=p.requestId,b=g.url,_=g.authorization,O=g.token,S=g.fileId,E=g.cosFileId,I=g.download_url,N=i(i({},P={url:b,file:o,name:n,onUploadProgress:a,fileContent:d,fileId:S,requestId:y}),{method:l.put,headers:i(i({},c),{authorization:_,"x-cos-meta-fileid":E,"x-cos-security-token":O})}),R=i(i({},P),{method:l.post,data:{key:n,signature:_,"x-cos-meta-fileid":E,success_action_status:"201","x-cos-security-token":O}}),(F={})[l.put]={params:N,isSuccess:function(t){return t>=200&&t<300}},F[l.post]={params:R,isSuccess:function(t){return 201===t}},C=F,[4,this.request.upload(C[f].params)];case 2:return A=u.sent(),C[f].isSuccess(A.statusCode)?[2,w(r,null,{fileID:S,download_url:I,requestId:y})]:[2,w(r,new Error("[".concat(h(),"][").concat(m.OPERATION_FAIL,"][").concat(e.COMPONENT_NAME,"]:").concat(A.data)))]}}))}))},t.prototype.getUploadMetadata=function(t,r){return c(this,void 0,Promise,(function(){var n,o,i,a,s,c,d,f;return u(this,(function(u){switch(u.label){case 0:if(n=t.cloudPath,o=t.method,i=t.headers,!v(n))throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".getUploadMetadata] invalid cloudPath")}));a=this.request,s="storage.getUploadMetadata",u.label=1;case 1:return u.trys.push([1,6,,7]),c=void 0,d={path:n},o&&(d.method=o),o===l.put&&i&&(d.headers=i),this.isGateWay()?[4,O(a,d,t.customReqOpts)]:[3,3];case 2:return c=u.sent(),[3,5];case 3:return[4,a.send(s,d,t.customReqOpts)];case 4:c=u.sent(),u.label=5;case 5:return[2,w(r,null,c)];case 6:return f=u.sent(),[2,w(r,f)];case 7:return[2]}}))}))},t.prototype.deleteFile=function(t,r){return c(this,void 0,Promise,(function(){var n,o,i,a,s,c,l,d;return u(this,(function(u){switch(u.label){case 0:if(!(n=t.fileList)||!y(n)||0===n.length)throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".deleteFile] fileList must not be empty")}));for(o=0,i=n;o<i.length;o++)if(!(a=i[o])||!v(a))throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".deleteFile] fileID must be string")}));return s="storage.batchDeleteFile",c=this.request,l={},this.isGateWay()?[4,E(c,{fileList:n},t.customReqOpts)]:[3,2];case 1:return l=u.sent(),[3,4];case 2:return[4,c.send(s,{fileid_list:n},t.customReqOpts)];case 3:l=u.sent(),u.label=4;case 4:return l.code?[2,w(r,null,l)]:(d={fileList:l.data.delete_list,requestId:l.requestId},[2,w(r,null,d)])}}))}))},t.prototype.getTempFileURL=function(t,r){return c(this,void 0,Promise,(function(){var n,o,i,a,s,c,l,d;return u(this,(function(u){switch(u.label){case 0:if(!(n=t.fileList)||!y(n)||0===n.length)throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".getTempFileURL] fileList must not be empty")}));for(o=[],i=0,a=n;i<a.length;i++)if(s=a[i],b(s)){if(!Object.prototype.hasOwnProperty.call(s,"fileID"))throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".getTempFileURL] file info must include fileID")}));o.push({fileid:s.fileID,max_age:s.maxAge||7200})}else{if(!v(s))throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".getTempFileURL] invalid fileList")}));o.push({fileid:s})}return c="storage.batchGetDownloadUrl",l=this.request,d={},this.isGateWay()?[4,S(l,{convertedFileList:o},t.customReqOpts)]:[3,2];case 1:return d=u.sent(),[3,4];case 2:return[4,l.send(c,{file_list:o},t.customReqOpts)];case 3:d=u.sent(),u.label=4;case 4:return d.code?[2,w(r,null,d)]:[2,w(r,null,{fileList:d.data.download_list,requestId:d.requestId})]}}))}))},t.prototype.downloadFile=function(t,r){return c(this,void 0,Promise,(function(){var n,o,i,a,s,c;return u(this,(function(u){switch(u.label){case 0:if(n=t.fileID,!v(n))throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".getTempFileURL] fileID must be string")}));return[4,this.getTempFileURL.call(this,{fileList:[{fileID:n,maxAge:600}],customReqOpts:t.customReqOpts})];case 1:return o=u.sent(),"SUCCESS"!==(i=o.fileList[0]).code?[2,w(r,i)]:(a=this.request,s=encodeURI(i.download_url),[4,a.download({url:s,tempFilePath:t.tempFilePath})]);case 2:return c=u.sent(),[2,w(r,null,c)]}}))}))},t.prototype.copyFile=function(t,r){return c(this,void 0,Promise,(function(){var n,o,i,a,s,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:if(!(n=t.fileList)||!y(n)||0===n.length)throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".copyFile] fileList must not be empty")}));for(o=[],i=0,a=n;i<a.length;i++){if(s=a[i],c=s.srcPath,l=s.dstPath,!c||!l||"string"!=typeof c||"string"!=typeof l)throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".copyFile] srcPath and dstPath may not be empty")}));if(c===l)throw new Error(JSON.stringify({code:m.INVALID_PARAMS,msg:"[".concat(e.COMPONENT_NAME,".copyFile] srcPath and dstPath can not be the same")}));o.push({src_path:c,dst_path:l,overwrite:s.overwrite,remove_original:s.removeOriginal})}return d=this.request,f={},this.isGateWay()?[4,I(d,{convertedFileList:o},t.customReqOpts)]:[3,2];case 1:return f=u.sent(),[3,4];case 2:return[4,d.send("storage.batchCopyFile",{file_list:o},t.customReqOpts)];case 3:f=u.sent(),u.label=4;case 4:return f.code?[2,w(r,null,f)]:[2,w(r,null,{fileList:f.data.copy_list,requestId:f.requestId})]}}))}))},t.prototype.getFileInfo=function(t){var e;return c(this,void 0,Promise,(function(){var r,n=this;return u(this,(function(o){switch(o.label){case 0:return[4,this.getTempFileURL(t)];case 1:return(null==(r=o.sent())?void 0:r.fileList)&&(null===(e=null==r?void 0:r.fileList)||void 0===e?void 0:e.length)>0?[4,Promise.all(r.fileList.map((function(t){return c(n,void 0,void 0,(function(){var e,r,n,o,i;return u(this,(function(a){switch(a.label){case 0:if("SUCCESS"!==t.code)return[2,{code:t.code,fileID:t.fileID,tempFileURL:t.tempFileURL,message:t.message}];a.label=1;case 1:return a.trys.push([1,3,,4]),[4,this.request.fetch({url:t.tempFileURL,method:"HEAD"})];case 2:return e=a.sent(),r=e.header,Headers&&r instanceof Headers&&(r=Object.fromEntries(e.header.entries())),n=parseInt(r["content-length"])||0,o=r["content-type"]||"",[400,404].includes(Number(e.statusCode))?[2,{code:"FILE_NOT_FOUND",fileID:t.fileID,tempFileURL:t.tempFileURL,message:"file not found"}]:[2,{code:t.code,fileID:t.fileID,tempFileURL:t.tempFileURL,cloudId:t.fileID,fileName:t.fileID.split("/").pop(),contentType:o,mime:o.split(";")[0].trim(),size:n,etag:r.etag||"",lastModified:r["last-modified"]||"",cacheControl:r["cache-control"]||""}];case 3:return i=a.sent(),[2,{code:"FETCH_FILE_INFO_ERROR",fileID:t.fileID,tempFileURL:t.tempFileURL,message:i.message}];case 4:return[2]}}))}))})))]:[3,3];case 2:return[2,{fileList:o.sent(),requestId:r.requestId}];case 3:return[2,{fileList:[],requestId:r.requestId}]}}))}))},a([_({customInfo:{className:"Cloudbase",methodName:"uploadFile"},title:"上传文件失败",messages:["请确认以下各项:"," 1 - 调用 uploadFile() 的语法或参数是否正确"," 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety"," 3 - 云存储安全规则是否限制了当前登录状态访问","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat(g)]}),s("design:type",Function),s("design:paramtypes",[Object,"function"==typeof(r="undefined"!=typeof Function&&Function)?r:Object]),s("design:returntype","function"==typeof(n="undefined"!=typeof Promise&&Promise)?n:Object)],t.prototype,"uploadFile",null),a([_({customInfo:{className:"Cloudbase",methodName:"getUploadMetadata"},title:"获取上传元信息失败",messages:["请确认以下各项:"," 1 - 调用 getUploadMetadata() 的语法或参数是否正确"," 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety"," 3 - 云存储安全规则是否限制了当前登录状态访问","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat(g)]}),s("design:type",Function),s("design:paramtypes",[Object,"function"==typeof(o="undefined"!=typeof Function&&Function)?o:Object]),s("design:returntype","function"==typeof(d="undefined"!=typeof Promise&&Promise)?d:Object)],t.prototype,"getUploadMetadata",null),a([_({customInfo:{className:"Cloudbase",methodName:"deleteFile"},title:"删除文件失败",messages:["请确认以下各项:"," 1 - 调用 deleteFile() 的语法或参数是否正确"," 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety"," 3 - 云存储安全规则是否限制了当前登录状态访问","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat(g)]}),s("design:type",Function),s("design:paramtypes",["function"==typeof(f=void 0!==p.ICloudbaseDeleteFileParams&&p.ICloudbaseDeleteFileParams)?f:Object,"function"==typeof(P="undefined"!=typeof Function&&Function)?P:Object]),s("design:returntype","function"==typeof(N="undefined"!=typeof Promise&&Promise)?N:Object)],t.prototype,"deleteFile",null),a([_({customInfo:{className:"Cloudbase",methodName:"getTempFileURL"},title:"获取文件下载链接",messages:["请确认以下各项:"," 1 - 调用 getTempFileURL() 的语法或参数是否正确"," 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety"," 3 - 云存储安全规则是否限制了当前登录状态访问","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat(g)]}),s("design:type",Function),s("design:paramtypes",["function"==typeof(R=void 0!==p.ICloudbaseGetTempFileURLParams&&p.ICloudbaseGetTempFileURLParams)?R:Object,"function"==typeof(C="undefined"!=typeof Function&&Function)?C:Object]),s("design:returntype","function"==typeof(A="undefined"!=typeof Promise&&Promise)?A:Object)],t.prototype,"getTempFileURL",null),a([_({customInfo:{className:"Cloudbase",methodName:"downloadFile"},title:"下载文件失败",messages:["请确认以下各项:"," 1 - 调用 downloadFile() 的语法或参数是否正确"," 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety"," 3 - 云存储安全规则是否限制了当前登录状态访问","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat(g)]}),s("design:type",Function),s("design:paramtypes",["function"==typeof(j=void 0!==p.ICloudbaseDownloadFileParams&&p.ICloudbaseDownloadFileParams)?j:Object,"function"==typeof(L="undefined"!=typeof Function&&Function)?L:Object]),s("design:returntype","function"==typeof(F="undefined"!=typeof Promise&&Promise)?F:Object)],t.prototype,"downloadFile",null),a([_({customInfo:{className:"Cloudbase",methodName:"copyFile"},title:"批量复制文件",messages:["请确认以下各项:"," 1 - 调用 copyFile() 的语法或参数是否正确"," 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety"," 3 - 云存储安全规则是否限制了当前登录状态访问","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat(g)]}),s("design:type",Function),s("design:paramtypes",["function"==typeof(M=void 0!==p.ICloudbaseCopyFileParams&&p.ICloudbaseCopyFileParams)?M:Object,"function"==typeof(U="undefined"!=typeof Function&&Function)?U:Object]),s("design:returntype","function"==typeof(x="undefined"!=typeof Promise&&Promise)?x:Object)],t.prototype,"copyFile",null),t}(),N=new P,R={name:e.COMPONENT_NAME,entity:{uploadFile:N.uploadFile,deleteFile:N.deleteFile,getTempFileURL:N.getTempFileURL,downloadFile:N.downloadFile,getUploadMetadata:N.getUploadMetadata,copyFile:N.copyFile,getFileInfo:N.getFileInfo,isGateWay:N.isGateWay}},C=function(t){function r(e){var r=t.call(this)||this;return r.shouldThrowOnError=!1,r.bucketId="",r.context=e,r}return o(r,t),Object.defineProperty(r.prototype,"config",{get:function(){var t;return null===(t=this.context)||void 0===t?void 0:t.config},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"request",{get:function(){var t;return null===(t=this.context)||void 0===t?void 0:t.request},enumerable:!1,configurable:!0}),r.prototype.throwOnError=function(){return this.shouldThrowOnError=!0,this},r.prototype.from=function(t){return this.bucketId=t||"",this},r.prototype.upload=function(t,r,n){return c(this,void 0,Promise,(function(){var o,a,s,c,l,f,p,h,g;return u(this,(function(u){switch(u.label){case 0:o=i({upsert:!0},n),a=o.cacheControl,s=o.contentType,c=o.metadata,u.label=1;case 1:return u.trys.push([1,3,,4]),l=this._getCloudPath(t),f={cloudPath:l,filePath:r},(a||s||c)&&(p={},a&&(p["cache-control"]=a),s&&(p["content-type"]=s),c&&(p["x-cos-metadata-metadata"]=this.toBase64(JSON.stringify(c))),f.headers=p),[4,this.uploadFile(f)];case 2:if(!(h=u.sent()).fileID)throw new Error(JSON.stringify({code:m.OPERATION_FAIL,msg:"[".concat(e.COMPONENT_NAME,".update] no fileID returned")}));return[2,{data:{id:h.fileID,path:t,fullPath:t},error:null}];case 3:if(g=u.sent(),this.shouldThrowOnError)throw g;if((0,d.isStorageError)(g))return[2,{data:null,error:g}];throw g;case 4:return[2]}}))}))},r.prototype.uploadToSignedUrl=function(t,e,r,n){return c(this,void 0,Promise,(function(){return u(this,(function(e){return[2,this.upload(t,r,n)]}))}))},r.prototype.createSignedUploadUrl=function(t){return c(this,void 0,Promise,(function(){var e,r,n;return u(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),e=this._getCloudPath(t),[4,this.getUploadMetadata({cloudPath:e})];case 1:return[2,{data:{signedUrl:(r=o.sent().data).url,token:r.token,path:t,authorization:r.authorization,id:r.fileId,cosFileId:r.cosFileId,downloadUrl:r.download_url},error:null}];case 2:if(n=o.sent(),this.shouldThrowOnError)throw n;return[2,{data:null,error:n instanceof d.StorageError?n:new d.StorageError(n.message)}];case 3:return[2]}}))}))},r.prototype.update=function(t,e,r){return c(this,void 0,Promise,(function(){return u(this,(function(n){return[2,this.upload(t,e,i(i({},r),{upsert:!0}))]}))}))},r.prototype.move=function(t,e){return c(this,void 0,Promise,(function(){var r,n;return u(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),[4,this.copyFile({fileList:[{srcPath:this._getCloudPath(t),dstPath:this._getCloudPath(e),overwrite:!0,removeOriginal:!0}]})];case 1:if((r=o.sent()).fileList[0].code&&"SUCCESS"!==r.fileList[0].code)throw new d.StorageError(r.fileList[0].message||"Move failed");return[2,{data:{message:"File moved from ".concat(t," to ").concat(e)},error:null}];case 2:if(n=o.sent(),this.shouldThrowOnError)throw n;if((0,d.isStorageError)(n))return[2,{data:null,error:n}];throw n;case 3:return[2]}}))}))},r.prototype.copy=function(t,e){return c(this,void 0,Promise,(function(){var r,n;return u(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),[4,this.copyFile({fileList:[{srcPath:this._getCloudPath(t),dstPath:this._getCloudPath(e),overwrite:!0,removeOriginal:!1}]})];case 1:if((r=o.sent()).fileList[0].code&&"SUCCESS"!==r.fileList[0].code)throw new d.StorageError(r.fileList[0].message||"Copy failed");return[2,{data:{path:this._getCloudPath(e)},error:null}];case 2:if(n=o.sent(),this.shouldThrowOnError)throw n;if((0,d.isStorageError)(n))return[2,{data:null,error:n}];throw n;case 3:return[2]}}))}))},r.prototype.createSignedUrl=function(t,e,r){return c(this,void 0,Promise,(function(){var n,o,i,a,s,c,l;return u(this,(function(u){switch(u.label){case 0:return u.trys.push([0,2,,3]),n=this._normalizeCloudId(t),[4,this.getTempFileURL({fileList:[{fileID:n,maxAge:e}]})];case 1:if("SUCCESS"!==(o=u.sent()).fileList[0].code)throw new d.StorageError("Failed to create signed URL: [".concat(o.fileList[0].code,"] ").concat(o.fileList[0].fileID));return i=o.fileList[0].download_url,a=[],void 0!==(null==r?void 0:r.download)&&("string"==typeof r.download?a.push("download=".concat(encodeURIComponent(r.download))):!0===r.download&&a.push("download=true")),(null==r?void 0:r.transform)&&(s=this._transformOptsToQueryString(r.transform))&&a.push(s),a.length>0&&(c=i.includes("?")?"&":"?",i="".concat(i).concat(c).concat(a.join("&"))),[2,{data:{signedUrl:i},error:null}];case 2:if(l=u.sent(),this.shouldThrowOnError)throw l;if((0,d.isStorageError)(l))return[2,{data:null,error:l}];throw l;case 3:return[2]}}))}))},r.prototype.createSignedUrls=function(t,e){return c(this,void 0,Promise,(function(){var r,n,o=this;return u(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),r=t.map((function(t){return{fileID:o._normalizeCloudId(t),maxAge:e}})),[4,this.getTempFileURL({fileList:r})];case 1:return[2,{data:i.sent().fileList.map((function(e,r){return{path:t[r],signedUrl:e.tempFileURL||"",error:"SUCCESS"===e.code?null:e.message}})),error:null}];case 2:if(n=i.sent(),this.shouldThrowOnError)throw n;if((0,d.isStorageError)(n))return[2,{data:null,error:n}];throw n;case 3:return[2]}}))}))},r.prototype.download=function(t,e){return c(this,void 0,Promise,(function(){var r,n,o=this;return u(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),n={},[4,c(o,void 0,void 0,(function(){var r,n,o,i;return u(this,(function(a){switch(a.label){case 0:return[4,this.createSignedUrl(t,600,{transform:e})];case 1:if((r=a.sent()).error)throw r.error;return n=encodeURI(null===(i=r.data)||void 0===i?void 0:i.signedUrl),[4,this.request.reqClass.get({url:n,headers:{},responseType:"blob"})];case 2:if(!(o=a.sent().data))throw new d.StorageError("Download failed: no file content");return[2,new Blob([o])]}}))}))];case 1:return[2,(n.data=i.sent(),n.error=null,n)];case 2:if(r=i.sent(),this.shouldThrowOnError)throw r;if((0,d.isStorageError)(r))return[2,{data:null,error:r}];throw r;case 3:return[2]}}))}))},r.prototype.info=function(t){return c(this,void 0,Promise,(function(){var e,r,n,o,i,a,s,c;return u(this,(function(u){switch(u.label){case 0:return u.trys.push([0,2,,3]),e=t.startsWith("cloud://"),r=e?this._extractPathFromFileId(t):t,n=e?this._extractBucketFromFileId(t):this.bucketId,[4,this.getFileInfo({fileList:[this._normalizeCloudId(t)]})];case 1:if(o=u.sent(),"SUCCESS"!==(i=o.fileList[0]).code)throw new d.StorageError(i.message);return a=(new Date).toISOString(),s=(i.lastModified?new Date(i.lastModified):new Date).toISOString(),[2,{data:{id:i.fileID,version:"1",name:r,bucketId:n,updatedAt:s,createdAt:s,lastAccessedAt:a,size:i.size,cacheControl:i.cacheControl,contentType:i.contentType,etag:i.etag,lastModified:s,metadata:{}},error:null}];case 2:if(c=u.sent(),this.shouldThrowOnError)throw c;return[2,{data:null,error:c instanceof d.StorageError?c:new d.StorageError(c.message)}];case 3:return[2]}}))}))},r.prototype.exists=function(t){return c(this,void 0,Promise,(function(){var e,r,n;return u(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),[4,this.getFileInfo({fileList:[this._normalizeCloudId(t)]})];case 1:if(e=o.sent(),"FILE_NOT_FOUND"===(r=e.fileList[0]).code)return[2,{data:!1,error:null}];if("SUCCESS"!==r.code)throw new d.StorageError(r.message);return[2,{data:!0,error:null}];case 2:if(n=o.sent(),this.shouldThrowOnError)throw n;if((0,d.isStorageError)(n))return[2,{data:null,error:n}];throw n;case 3:return[2]}}))}))},r.prototype.getPublicUrl=function(t,e){return c(this,void 0,Promise,(function(){var r;return u(this,(function(n){switch(n.label){case 0:return[4,this.createSignedUrl(t,600,e)];case 1:return(r=n.sent()).data?[2,{data:{publicUrl:r.data.signedUrl}}]:[2,{data:null,error:r.error}]}}))}))},r.prototype.remove=function(t){return c(this,void 0,Promise,(function(){var e,r,n,o,i,a,s,c,l,f,p=this;return u(this,(function(u){switch(u.label){case 0:for(u.trys.push([0,3,,4]),e=10,r=[],n=0;n<t.length;n+=e)r.push(t.slice(n,n+e));return[4,Promise.all(r.map((function(t){return Promise.all(t.map((function(t){return p.info(t)})))})))];case 1:return o=u.sent(),i=new Map,o.flat().forEach((function(r,n){r.data&&i.set(t[Math.floor(n/e)*e+n%e],r.data)})),a=t.map((function(t){return p._normalizeCloudId(t)})),[4,this.deleteFile({fileList:a})];case 2:if(s=u.sent(),(c=s.fileList.filter((function(t){return"SUCCESS"!==t.code}))).length>0)throw new d.StorageError("Delete failed for ".concat(c.length," file(s)"));return l=(new Date).toISOString(),[2,{data:t.map((function(t){var e=i.get(t);return{name:null==e?void 0:e.name,id:null==e?void 0:e.id,bucket_id:null==e?void 0:e.bucketId,owner:void 0,updated_at:(null==e?void 0:e.updatedAt)||l,created_at:null==e?void 0:e.createdAt,last_accessed_at:(null==e?void 0:e.lastAccessedAt)||l,metadata:(null==e?void 0:e.metadata)||{},buckets:{id:null==e?void 0:e.bucketId,name:null==e?void 0:e.bucketId,owner:void 0,public:!1,created_at:"",updated_at:l}}})),error:null}];case 3:if(f=u.sent(),this.shouldThrowOnError)throw f;if((0,d.isStorageError)(f))return[2,{data:null,error:f}];throw f;case 4:return[2]}}))}))},r.prototype.list=function(){return c(this,void 0,void 0,(function(){return u(this,(function(t){throw new d.StorageError("Not implemented")}))}))},r.prototype._getCloudPath=function(t){return t.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")},r.prototype._normalizeCloudId=function(t){var e;if(/^cloud:\/\//.test(t))return t;var r=this._getCloudPath(t);if(!this.bucketId)throw new d.StorageError("bucketId is not set");var n=(null===(e=this.config)||void 0===e?void 0:e.env)||"";return n?"cloud://".concat(n,".").concat(this.bucketId,"/").concat(r):void 0},r.prototype.toBase64=function(t){return"undefined"!=typeof Buffer?Buffer.from(t).toString("base64"):btoa(t)},r.prototype._transformOptsToQueryString=function(t){var e=["imageMogr2"];if(t.width||t.height){var r=t.width||"",n=t.height||"";"fill"===t.resize?e.push("thumbnail/".concat(r,"x").concat(n,"!")):"contain"===t.resize?e.push("thumbnail/".concat(r,"x").concat(n)):e.push("thumbnail/".concat(r,"x").concat(n,"^"))}if(t.format&&"origin"!==t.format&&e.push("format/".concat(t.format)),void 0!==t.quality){var o=Math.max(1,Math.min(100,t.quality));e.push("quality/".concat(o))}return e.join("/")},r.prototype._extractPathFromFileId=function(t){var e=t.replace(/^cloud:\/\//,"").split("/");return e.length<2?t:e.slice(1).join("/")},r.prototype._extractBucketFromFileId=function(t){var e=t.replace(/^cloud:\/\//,"").split("/");if(e.length<1)return"";var r=e[0],n=r.indexOf(".");return-1===n?r:r.substring(n+1)},r}(P);e.SupabaseFileAPILikeStorage=C;var A={name:"".concat(e.COMPONENT_NAME,"/supabase"),IIFE:!0,entity:function(){var t=new WeakMap;Object.defineProperty(this.prototype,"storage",{get:function(){if(t.has(this))return t.get(this);var e=this,r=new Proxy({},{get:function(t,r){return"config"===r?e.config:"request"===r?e.request:void 0}}),n=new C(r);return t.set(this,n),n},configurable:!0,enumerable:!0})}};try{cloudbase.registerComponent(R),cloudbase.registerComponent(A)}catch(t){}function j(t){try{t.registerComponent(R),t.registerComponent(A)}catch(t){console.warn(t)}}e.registerStorage=j;try{window.registerStorage=j}catch(t){}},957:function(t,e){"use strict";var r,n=this&&this.__extends||(r=function(t,e){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},r(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0}),e.StorageUnknownError=e.StorageApiError=e.isStorageError=e.StorageError=void 0;var o=function(t){function e(e){var r=t.call(this,e)||this;return r.__isStorageError=!0,r.name="StorageError",r}return n(e,t),e}(Error);e.StorageError=o,e.isStorageError=function(t){return"object"==typeof t&&null!==t&&"__isStorageError"in t};var i=function(t){function e(e,r,n){var o=t.call(this,e)||this;return o.name="StorageApiError",o.status=r,o.statusCode=n,o}return n(e,t),e.prototype.toJSON=function(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}},e}(o);e.StorageApiError=i;var a=function(t){function e(e,r){var n=t.call(this,e)||this;return n.name="StorageUnknownError",n.originalError=r,n}return n(e,t),e}(o);e.StorageUnknownError=a},563:function(t,e,r){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.apply(this,arguments)},o=this&&this.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);o&&!("get"in o?!e.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),i=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),a=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.prototype.hasOwnProperty.call(t,r)&&o(e,t,r);return i(e,t),e};Object.defineProperty(e,"__esModule",{value:!0}),e.useDefaultAdapter=e.useAdapters=e.RUNTIME=void 0;var s,c=a(r(92)),u=r(962);!function(t){t.WEB="web",t.WX_MP="wx_mp"}(s=e.RUNTIME||(e.RUNTIME={})),e.useAdapters=function(t,e){for(var r=0,o=(0,u.isArray)(t)?t:[t];r<o.length;r++){var i=o[r],a=i.isMatch,s=i.genAdapter,c=i.runtime;if(a())return{adapter:n({isMatch:a},s(e)),runtime:c}}},e.useDefaultAdapter=function(){return{adapter:n({},c.genAdapter()),runtime:s.WEB}}},92:function(t,e,r){"use strict";var n,o=this&&this.__extends||(n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},n(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__assign||function(){return i=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},i.apply(this,arguments)},a=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(o,i){function a(t){try{c(n.next(t))}catch(t){i(t)}}function s(t){try{c(n.throw(t))}catch(t){i(t)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,s)}c((n=n.apply(t,e||[])).next())}))},s=this&&this.__generator||function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=e.call(t,a)}catch(t){s=[6,t],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(e,"__esModule",{value:!0}),e.WebRequest=e.genAdapter=void 0;var c=r(764),u=r(962),l=r(464),d=function(t){function e(e){var r=t.call(this)||this,n=e.timeout,o=e.timeoutMsg,i=e.restrictedMethods;return r.timeout=n||0,r.timeoutMsg=o||"请求超时",r.restrictedMethods=i||["get","post","upload","download"],r}return o(e,t),e.prototype.get=function(t){return this.request(i(i({},t),{method:"get"}),this.restrictedMethods.includes("get"))},e.prototype.post=function(t){return this.request(i(i({},t),{method:"post"}),this.restrictedMethods.includes("post"))},e.prototype.put=function(t){return this.request(i(i({},t),{method:"put"}))},e.prototype.upload=function(t){var e=t.data,r=t.file,n=t.name,o=t.method,a=t.headers,s=void 0===a?{}:a,c={post:"post",put:"put"}[null==o?void 0:o.toLowerCase()]||"put",u=new FormData;return"post"===c?(Object.keys(e).forEach((function(t){u.append(t,e[t])})),u.append("key",n),u.append("file",r),this.request(i(i({},t),{data:u,method:c}),this.restrictedMethods.includes("upload"))):this.request(i(i({},t),{method:"put",headers:s,body:r}),this.restrictedMethods.includes("upload"))},e.prototype.download=function(t){return a(this,void 0,Promise,(function(){var e,r,n,o;return s(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,,3]),[4,this.get(i(i({},t),{headers:{},responseType:"blob"}))];case 1:return e=a.sent().data,r=window.URL.createObjectURL(new Blob([e])),n=decodeURIComponent(new URL(t.url).pathname.split("/").pop()||""),(o=document.createElement("a")).href=r,o.setAttribute("download",n),o.style.display="none",document.body.appendChild(o),o.click(),window.URL.revokeObjectURL(r),document.body.removeChild(o),[3,3];case 2:return a.sent(),[3,3];case 3:return[2,new Promise((function(e){e({statusCode:200,tempFilePath:t.url})}))]}}))}))},e.prototype.fetch=function(t){var e;return a(this,void 0,Promise,(function(){var r,n,o,c,u,l,d,f,p,h,m,g,y,v=this;return s(this,(function(b){switch(b.label){case 0:return r=new AbortController,n=t.url,o=t.enableAbort,c=void 0!==o&&o,u=t.stream,l=void 0!==u&&u,d=t.signal,f=t.timeout,p=t.shouldThrowOnError,h=void 0===p||p,m=null!=f?f:this.timeout,d&&(d.aborted&&r.abort(),d.addEventListener("abort",(function(){return r.abort()}))),g=null,c&&m&&(g=setTimeout((function(){console.warn(v.timeoutMsg),r.abort(new Error(v.timeoutMsg))}),m)),[4,fetch(n,i(i({},t),{signal:r.signal})).then((function(t){return a(v,void 0,void 0,(function(){var e,r,n;return s(this,(function(o){switch(o.label){case 0:return clearTimeout(g),h?t.ok?(e=t,[3,3]):[3,1]:[3,4];case 1:return n=(r=Promise).reject,[4,t.json()];case 2:e=n.apply(r,[o.sent()]),o.label=3;case 3:return[2,e];case 4:return[2,t]}}))}))})).catch((function(t){if(clearTimeout(g),h)return Promise.reject(t)}))];case 1:return y=b.sent(),[2,{data:l?y.body:(null===(e=y.headers.get("content-type"))||void 0===e?void 0:e.includes("application/json"))?y.json():y.text(),statusCode:y.status,header:y.headers}]}}))}))},e.prototype.request=function(t,e){var r=this;void 0===e&&(e=!1);var n=String(t.method).toLowerCase()||"get";return new Promise((function(o){var i,a,s=t.url,c=t.headers,d=void 0===c?{}:c,f=t.data,p=t.responseType,h=t.withCredentials,m=t.body,g=t.onUploadProgress,y=(0,u.formatUrl)((0,l.getProtocol)(),s,"get"===n?f:{}),v=new XMLHttpRequest;v.open(n,y),p&&(v.responseType=p),Object.keys(d).forEach((function(t){v.setRequestHeader(t,d[t])})),g&&v.upload.addEventListener("progress",g),v.onreadystatechange=function(){var t={};if(4===v.readyState){var e=v.getAllResponseHeaders().trim().split(/[\r\n]+/),r={};e.forEach((function(t){var e=t.split(": "),n=e.shift().toLowerCase(),o=e.join(": ");r[n]=o})),t.header=r,t.statusCode=v.status;try{t.data="blob"===p?v.response:JSON.parse(v.responseText)}catch(e){t.data="blob"===p?v.response:v.responseText}clearTimeout(i),o(t)}},e&&r.timeout&&(i=setTimeout((function(){console.warn(r.timeoutMsg),v.abort()}),r.timeout)),a=(0,u.isFormData)(f)?f:"application/x-www-form-urlencoded"===d["content-type"]?(0,u.toQueryString)(f):m||(f?JSON.stringify(f):void 0),h&&(v.withCredentials=!0),v.send(a)}))},e}(c.AbstractSDKRequest);e.WebRequest=d,e.genAdapter=function(){return{type:"default",root:window,reqClass:d,wsClass:WebSocket,localStorage:localStorage}}},464:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.COMMUNITY_SITE_URL=e.IS_DEBUG_MODE=e.getProtocol=e.setProtocol=e.getSdkName=e.setSdkName=void 0;var r="@cloudbase/js-sdk";e.setSdkName=function(t){r=t},e.getSdkName=function(){return r};var n="https:";e.setProtocol=function(t){n=t},e.getProtocol=function(){return n},e.IS_DEBUG_MODE=!1,e.COMMUNITY_SITE_URL="https://support.qq.com/products/148793"},519:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ERRORS=void 0,e.ERRORS={INVALID_PARAMS:"INVALID_PARAMS",INVALID_SYNTAX:"INVALID_SYNTAX",INVALID_OPERATION:"INVALID_OPERATION",OPERATION_FAIL:"OPERATION_FAIL",NETWORK_ERROR:"NETWORK_ERROR",UNKOWN_ERROR:"UNKOWN_ERROR"}},778:function(t,e,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);o&&!("get"in o?!e.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),o=this&&this.__exportStar||function(t,e){for(var r in t)"default"===r||Object.prototype.hasOwnProperty.call(e,r)||n(e,t,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.OATUH_LOGINTYPE=void 0,o(r(464),e),o(r(519),e),e.OATUH_LOGINTYPE="constants"},517:function(t,e,r){"use strict";var n=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(o,i){function a(t){try{c(n.next(t))}catch(t){i(t)}}function s(t){try{c(n.throw(t))}catch(t){i(t)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,s)}c((n=n.apply(t,e||[])).next())}))},o=this&&this.__generator||function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=e.call(t,a)}catch(t){s=[6,t],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(e,"__esModule",{value:!0}),e.catchErrorsDecorator=void 0;var i=r(962),a=r(778),s=!1;"undefined"!=typeof navigator&&navigator.userAgent&&(s=-1!==navigator.userAgent.indexOf("Firefox"));var c=s?/(\.js\/)?__decorate(\$\d+)?<@.*\d$/:/(\/\w+\.js\.)?__decorate(\$\d+)?\s*\(.*\)$/,u=/https?:\/\/.+:\d*\/.*\.js:\d+:\d+/;function l(t){var e=t.err,r=t.className,n=t.methodName,o=t.sourceLink;if(!o)return null;var i,a=e.stack.split("\n"),c=s?/^catchErrorsDecorator\/<\/descriptor.value@.*\d$/:new RegExp("".concat(r,"\\.descriptor.value\\s*\\[as\\s").concat(n,"\\]\\s*\\(.*\\)$")),l=s?/^catchErrorsDecorator\/<\/descriptor.value/:new RegExp("".concat(r,"\\.descriptor.value\\s*\\[as\\s").concat(n,"\\]")),d=a.findIndex((function(t){return c.test(t)}));if(-1!==d){var f=a.filter((function(t,e){return e>d}));f.unshift(a[d].replace(l,"".concat(r,".").concat(n)).replace(u,o)),(i=new Error).stack="".concat(s?"@debugger":"Error","\n").concat(f.join("\n"))}return i}e.catchErrorsDecorator=function(t){var e=t.mode,r=void 0===e?"async":e,s=t.customInfo,d=void 0===s?{}:s,f=t.title,p=t.messages,h=void 0===p?[]:p;return function(t,e,s){if(a.IS_DEBUG_MODE){var p=d.className||t.constructor.name,m=d.methodName||e,g=s.value,y=function(){var t="",e=(new Error).stack.split("\n"),r=e.findIndex((function(t){return c.test(t)}));if(-1!==r){var n=u.exec(e[r+1]||"");t=n?n[0]:""}return t}();s.value="sync"===r?function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=l({err:new Error,className:p,methodName:m,sourceLink:y});try{return g.apply(this,t)}catch(t){var n=t,o=t.message,a=t.error,s=t.error_description,c={title:f||"".concat(p,".").concat(m," failed"),content:[{type:"error",body:t}]};if(o&&/^\{.*\}$/.test(o)){var u=JSON.parse(o);c.subtitle=o,u.code&&(r?(r.code=u.code,r.msg=u.msg):(t.code=u.code,t.message=u.msg),n=r||t,c.content=h.map((function(t){return{type:"info",body:t}})))}throw a&&s&&(c.subtitle=s,r?(r.code=a,r.msg=s):(t.code=a,t.message=s),n=r||t,c.content=h.map((function(t){return{type:"info",body:t}}))),(0,i.printGroupLog)(c),n}}:function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return n(this,void 0,void 0,(function(){var e,r,n,a,s,c,u,d;return o(this,(function(o){switch(o.label){case 0:e=l({err:new Error,className:p,methodName:m,sourceLink:y}),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,g.apply(this,t)];case 2:return[2,o.sent()];case 3:throw r=o.sent(),n=r,a=r.message,s=r.error,c=r.error_description,u={title:f||"".concat(p,".").concat(m," failed"),content:[{type:"error",body:r}]},a&&/^\{.*\}$/.test(a)&&(d=JSON.parse(a),u.subtitle=d,d.code&&(e?(e.code=d.code,e.message=d.msg):(r.code=d.code,r.message=d.msg),n=e||r,u.content=h.map((function(t){return{type:"info",body:t}})))),s&&c&&(u.subtitle=c,e?(e.code=s,e.msg=c):(r.code=s,r.message=c),n=e||r,u.content=h.map((function(t){return{type:"info",body:t}}))),(0,i.printGroupLog)(u),n;case 4:return[2]}}))}))}}}}},260:function(t,e,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);o&&!("get"in o?!e.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),o=this&&this.__exportStar||function(t,e){for(var r in t)"default"===r||Object.prototype.hasOwnProperty.call(e,r)||n(e,t,r)};Object.defineProperty(e,"__esModule",{value:!0}),o(r(517),e)},877:function(t,e,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);o&&!("get"in o?!e.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),i=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.prototype.hasOwnProperty.call(t,r)&&n(e,t,r);return o(e,t),e},a=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.langEvent=e.AbortController=e.jwt=e.helpers=e.utils=e.events=e.cache=e.adapters=e.constants=void 0;var s=i(r(778));e.constants=s;var c=i(r(563));e.adapters=c;var u=i(r(865));e.cache=u;var l=i(r(940));e.events=l;var d=i(r(991));e.langEvent=d;var f=i(r(962));e.utils=f;var p=i(r(260));e.helpers=p;var h=a(r(829));e.AbortController=h.default;var m={decode:a(r(107)).default};e.jwt=m},829:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){var t=this;this.listeners=[],this.signal={aborted:!1,addEventListener:function(e,r){"abort"===e&&t.listeners.push(r)}}}return t.prototype.abort=function(){this.signal.aborted||(this.signal.aborted=!0,this.listeners.forEach((function(t){return t()})))},t}();e.default=r},865:function(t,e,r){"use strict";var n,o=this&&this.__extends||(n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},n(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(o,i){function a(t){try{c(n.next(t))}catch(t){i(t)}}function s(t){try{c(n.throw(t))}catch(t){i(t)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,s)}c((n=n.apply(t,e||[])).next())}))},a=this&&this.__generator||function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=e.call(t,a)}catch(t){s=[6,t],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(e,"__esModule",{value:!0}),e.CloudbaseCache=void 0;var s=r(764),c=r(962),u=r(778),l=function(t){function e(e){var r=t.call(this)||this;return r.root=e,e.tcbCacheObject||(e.tcbCacheObject={}),r}return o(e,t),e.prototype.setItem=function(t,e){this.root.tcbCacheObject[t]=e},e.prototype.getItem=function(t){return this.root.tcbCacheObject[t]},e.prototype.removeItem=function(t){delete this.root.tcbCacheObject[t]},e.prototype.clear=function(){delete this.root.tcbCacheObject},e}(s.AbstractStorage),d=function(){function t(t){this.keys={};var e=t.persistence,r=t.platformInfo,n=void 0===r?{}:r,o=t.keys,i=void 0===o?{}:o;this.platformInfo=n,this.storage||(this.persistenceTag=this.platformInfo.adapter.primaryStorage||e,this.storage=function(t,e){switch(t){case"local":default:return e.localStorage?e.localStorage:((0,c.printWarn)(u.ERRORS.INVALID_PARAMS,"localStorage is not supported on current platform"),new l(e.root));case"none":return new l(e.root)}}(this.persistenceTag,this.platformInfo.adapter),this.keys=i)}return Object.defineProperty(t.prototype,"mode",{get:function(){return this.storage.mode||"sync"},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"persistence",{get:function(){return this.persistenceTag},enumerable:!1,configurable:!0}),t.prototype.setStore=function(t,e,r){if("async"!==this.mode){if(this.storage)try{var n={version:r||"localCachev1",content:e};this.storage.setItem(t,JSON.stringify(n))}catch(t){throw new Error(JSON.stringify({code:u.ERRORS.OPERATION_FAIL,msg:"[".concat((0,u.getSdkName)(),"][").concat(u.ERRORS.OPERATION_FAIL,"]setStore failed"),info:t}))}}else(0,c.printWarn)(u.ERRORS.INVALID_OPERATION,"current platform's storage is asynchronous, please use setStoreAsync insteed")},t.prototype.setStoreAsync=function(t,e,r){return i(this,void 0,void 0,(function(){var n;return a(this,(function(o){switch(o.label){case 0:if(!this.storage)return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),n={version:r||"localCachev1",content:e},[4,this.storage.setItem(t,JSON.stringify(n))];case 2:return o.sent(),[3,4];case 3:return o.sent(),[2];case 4:return[2]}}))}))},t.prototype.getStore=function(t,e){var r;if("async"!==this.mode){try{if("undefined"!=typeof process&&(null===(r={IS_MP_BUILD:!1,IS_BROWSER_BUILD:!0})||void 0===r?void 0:r.tcb_token))return{IS_MP_BUILD:!1,IS_BROWSER_BUILD:!0}.tcb_token;if(!this.storage)return""}catch(t){return""}e=e||"localCachev1";var n=this.storage.getItem(t);return n&&n.indexOf(e)>=0?JSON.parse(n).content:""}(0,c.printWarn)(u.ERRORS.INVALID_OPERATION,"current platform's storage is asynchronous, please use getStoreAsync insteed")},t.prototype.getStoreAsync=function(t,e){var r;return i(this,void 0,void 0,(function(){var n;return a(this,(function(o){switch(o.label){case 0:try{if("undefined"!=typeof process&&(null===(r={IS_MP_BUILD:!1,IS_BROWSER_BUILD:!0})||void 0===r?void 0:r.tcb_token))return[2,{IS_MP_BUILD:!1,IS_BROWSER_BUILD:!0}.tcb_token];if(!this.storage)return[2,""]}catch(t){return[2,""]}return e=e||"localCachev1",[4,this.storage.getItem(t)];case 1:return(n=o.sent())&&n.indexOf(e)>=0?[2,JSON.parse(n).content]:[2,""]}}))}))},t.prototype.removeStore=function(t){"async"!==this.mode?this.storage.removeItem(t):(0,c.printWarn)(u.ERRORS.INVALID_OPERATION,"current platform's storage is asynchronous, please use removeStoreAsync insteed")},t.prototype.removeStoreAsync=function(t){return i(this,void 0,void 0,(function(){return a(this,(function(e){switch(e.label){case 0:return[4,this.storage.removeItem(t)];case 1:return e.sent(),[2]}}))}))},t}();e.CloudbaseCache=d},940:function(t,e,r){"use strict";var n,o=this&&this.__extends||(n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},n(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__spreadArray||function(t,e,r){if(r||2===arguments.length)for(var n,o=0,i=e.length;o<i;o++)!n&&o in e||(n||(n=Array.prototype.slice.call(e,0,o)),n[o]=e[o]);return t.concat(n||Array.prototype.slice.call(e))};Object.defineProperty(e,"__esModule",{value:!0}),e.removeEventListener=e.activateEvent=e.addEventListener=e.CloudbaseEventEmitter=e.IErrorEvent=e.CloudbaseEvent=void 0;var a=r(962),s=function(t,e){this.data=e||null,this.name=t};e.CloudbaseEvent=s;var c=function(t){function e(e,r){var n=t.call(this,"error",{error:e,data:r})||this;return n.error=e,n}return o(e,t),e}(s);e.IErrorEvent=c;var u=function(){function t(){this.listeners={}}return t.prototype.on=function(t,e){return function(t,e,r){r[t]=r[t]||[],r[t].push(e)}(t,e,this.listeners),this},t.prototype.off=function(t,e){return function(t,e,r){if(null==r?void 0:r[t]){var n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1)}}(t,e,this.listeners),this},t.prototype.fire=function(t,e){if((0,a.isInstanceOf)(t,c))return console.error(t.error),this;var r=(0,a.isString)(t)?new s(t,e||{}):t,n=r.name;if(this.listens(n)){r.target=this;for(var o=0,u=this.listeners[n]?i([],this.listeners[n],!0):[];o<u.length;o++)u[o].call(this,r)}return this},t.prototype.listens=function(t){return this.listeners[t]&&this.listeners[t].length>0},t}();e.CloudbaseEventEmitter=u;var l=new u;e.addEventListener=function(t,e){l.on(t,e)},e.activateEvent=function(t,e){void 0===e&&(e={}),l.fire(t,e)},e.removeEventListener=function(t,e){l.off(t,e)}},991:function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.LANG_CHANGE_EVENT=e.bus=void 0;var n=r(940);e.bus=new n.CloudbaseEventEmitter,e.LANG_CHANGE_EVENT="lang_change"},962:function(t,e,r){"use strict";var n=this&&this.__rest||function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(r[n[o]]=t[n[o]])}return r};Object.defineProperty(e,"__esModule",{value:!0}),e.parseCaptcha=e.parseQueryString=e.transformPhone=e.sleep=e.printGroupLog=e.throwError=e.printInfo=e.printError=e.printWarn=e.execCallback=e.createPromiseCallback=e.removeParam=e.getHash=e.getQuery=e.toQueryString=e.formatUrl=e.generateRequestId=e.genSeqId=e.isFormData=e.isInstanceOf=e.isNull=e.isPalinObject=e.isUndefined=e.isString=e.isArray=void 0;var o=r(778);e.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)},e.isString=function(t){return"string"==typeof t},e.isUndefined=function(t){return void 0===t},e.isPalinObject=function(t){return"[object Object]"===Object.prototype.toString.call(t)},e.isNull=function(t){return"[object Null]"===Object.prototype.toString.call(t)},e.isInstanceOf=function(t,e){return t instanceof e},e.isFormData=function(t){return"[object FormData]"===Object.prototype.toString.call(t)},e.genSeqId=function(){return Math.random().toString(16).slice(2)},e.generateRequestId=function(){var t=(new Date).getTime(),e=(null===Date||void 0===Date?void 0:Date.now)&&1e3*Date.now()||0;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(r){var n=16*Math.random();return t>0?(n=(t+n)%16|0,t=Math.floor(t/16)):(n=(e+n)%16|0,e=Math.floor(e/16)),("x"===r?n:7&n|8).toString(16)}))},e.formatUrl=function(t,e,r){void 0===r&&(r={});var n=/\?/.test(e),o="";return Object.keys(r).forEach((function(t){""===o?!n&&(e+="?"):o+="&",o+="".concat(t,"=").concat(encodeURIComponent(r[t]))})),/^http(s)?:\/\//.test(e+=o)?e:"".concat(t).concat(e)},e.toQueryString=function(t){void 0===t&&(t={});var e=[];return Object.keys(t).forEach((function(r){e.push("".concat(r,"=").concat(encodeURIComponent(t[r])))})),e.join("&")},e.getQuery=function(t,e){if("undefined"==typeof window)return!1;var r=e||decodeURIComponent(window.location.search),n=new RegExp("(^|&)".concat(t,"=([^&]*)(&|$)")),o=r.substr(r.indexOf("?")+1).match(n);return null!=o?o[2]:""},e.getHash=function(t){if("undefined"==typeof window)return"";var e=window.location.hash.match(new RegExp("[#?&/]".concat(t,"=([^&#]*)")));return e?e[1]:""},e.removeParam=function(t,e){var r=e.split("?")[0],n=[],o=-1!==e.indexOf("?")?e.split("?")[1]:"";if(""!==o){for(var i=(n=o.split("&")).length-1;i>=0;i-=1)n[i].split("=")[0]===t&&n.splice(i,1);r="".concat(r,"?").concat(n.join("&"))}return r},e.createPromiseCallback=function(){var t={};if(!Promise){(t=function(){}).promise={};var e=function(){throw new Error('Your Node runtime does support ES6 Promises. Set "global.Promise" to your preferred implementation of promises.')};return Object.defineProperty(t.promise,"then",{get:e}),Object.defineProperty(t.promise,"catch",{get:e}),t}var r=new Promise((function(e,r){t=function(t,n){return t?r(t):e(n)}}));return t.promise=r,t},e.execCallback=function(t,e,r){if(void 0===r&&(r=null),t&&"function"==typeof t)return t(e,r);if(e)throw e;return r},e.printWarn=function(t,e){console.warn("[".concat((0,o.getSdkName)(),"][").concat(t,"]:").concat(e))},e.printError=function(t,e){console.error({code:t,msg:"[".concat((0,o.getSdkName)(),"][").concat(t,"]:").concat(e)})},e.printInfo=function(t,e){console.log("[".concat((0,o.getSdkName)(),"][").concat(t,"]:").concat(e))},e.throwError=function(t,e){throw new Error(JSON.stringify({code:t,msg:"[".concat((0,o.getSdkName)(),"][").concat(t,"]:").concat(e)}))},e.printGroupLog=function(t){var e,r=t.title,n=t.subtitle,o=void 0===n?"":n,i=t.content,a=void 0===i?[]:i,s=t.printTrace,c=void 0!==s&&s,u=t.collapsed;void 0!==u&&u?(console.groupCollapsed||console.error)(r,o):(console.group||console.error)(r,o);for(var l=0,d=a;l<d.length;l++){var f=d[l],p=f.type,h=f.body;switch(p){case"info":console.log(h);break;case"warn":console.warn(h);break;case"error":console.error(h)}}c&&(console.trace||console.log)("stack trace:"),null===(e=console.groupEnd)||void 0===e||e.call(console)},e.sleep=function(t){return void 0===t&&(t=0),new Promise((function(e){return setTimeout(e,t)}))},e.transformPhone=function(t){return"+86".concat(t)},e.parseQueryString=function(t){t=t.replace(/^\?/,"");var e={};return t.split("&").forEach((function(t){var r=t.split("="),n=r[0],o=r[1];n=decodeURIComponent(n),o=decodeURIComponent(o),n&&(e[n]?Array.isArray(e[n])?e[n].push(o):e[n]=[e[n],o]:e[n]=o)})),e},e.parseCaptcha=function(t){var r={},o=t.match(/^(data:.*?)(\?[^#\s]*)?$/);if(o){t=o[1];var i=o[2];i&&(r=(0,e.parseQueryString)(i))}var a=r.token,s=n(r,["token"]);return/^data:/.test(t)&&!a?{error:"invalid_argument",error_description:"invalid captcha data: ".concat(t)}:a?{state:s.state,token:a,captchaData:t}:{error:"unimplemented",error_description:"need to impl captcha data"}}},388:function(t){t.exports={}},764:function(t){"use strict";t.exports=require("@cloudbase/adapter-interface")},107:function(t){"use strict";t.exports=require("jwt-decode")}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={exports:{}};return t[n].call(i.exports,i,i.exports,r),i.exports}var n={};!function(){"use strict";var t=n;Object.defineProperty(t,"__esModule",{value:!0}),t.registerStorage=void 0;var e=r(456);t.registerStorage=e.registerStorage}(),module.exports=n}();
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://@cloudbase/js-sdk/index.ts","webpack://@cloudbase/js-sdk/errors.ts","webpack://@cloudbase/js-sdk/web.ts","webpack://@cloudbase/js-sdk/common.ts","webpack://@cloudbase/js-sdk/decorators.ts","webpack://@cloudbase/js-sdk/abortController.ts","webpack://@cloudbase/js-sdk/cache.ts","webpack://@cloudbase/js-sdk/events.ts","webpack://@cloudbase/js-sdk/langEvent.ts","webpack://@cloudbase/js-sdk/util.ts","webpack://@cloudbase/js-sdk/./empty-module.js","webpack://@cloudbase/js-sdk/external commonjs2 {\"commonjs\":\"@cloudbase/adapter-interface\",\"commonjs2\":\"@cloudbase/adapter-interface\",\"amd\":\"@cloudbase/adapter-interface\",\"root\":\"@cloudbase/adapter-interface\"}","webpack://@cloudbase/js-sdk/external commonjs2 {\"commonjs\":\"jwt-decode\",\"commonjs2\":\"jwt-decode\",\"amd\":\"jwt-decode\",\"root\":\"jwt-decode\"}","webpack://@cloudbase/js-sdk/webpack/bootstrap"],"sourcesContent":["import { ICloudbase } from '@cloudbase/types'\nimport { ICloudbaseComponent } from '@cloudbase/types/component'\nimport { Camelize, FileBody, FileObject, FileObjectV2, FileOptions, TransformOptions } from './supabase/types'\nimport { isStorageError, StorageError } from './supabase/errors'\nimport { constants, utils, helpers } from '@cloudbase/utilities'\nimport {\n ICloudbaseFileMetaDataRes,\n ICloudbaseFileInfo,\n ICloudbaseUploadFileParams,\n ICloudbaseUploadFileResult,\n ICloudbaseGetUploadMetadataParams,\n ICloudbaseDeleteFileParams,\n ICloudbaseDeleteFileResult,\n ICloudbaseGetTempFileURLResult,\n ICloudbaseGetTempFileURLParams,\n ICloudbaseDownloadFileResult,\n ICloudbaseDownloadFileParams,\n ICloudbaseCopyFileParams,\n ICloudbaseCopyFileResult,\n} from '@cloudbase/types/storage'\n\nenum EUploadMethod {\n put = 'put',\n post = 'post',\n}\n\ninterface IUploadMetadata {\n url: string\n token: string\n authorization: string\n fileId: string\n cosFileId: string\n download_url?: string\n}\n\nconst { getSdkName, ERRORS, COMMUNITY_SITE_URL } = constants\nconst { isArray, isString, isPalinObject, execCallback } = utils\n/** catchErrorsDecorator 装饰器要放在index入口文件,意面有的编译找不到其sourcemap,例如HBuilderX */\nconst { catchErrorsDecorator } = helpers\n\nexport const COMPONENT_NAME = 'storage'\n\nconst storageGateWay = {\n getUploadInfo: async (\n request,\n params: { path: string; headers?: Record<string, string> },\n customReqOpts: ICloudbaseUploadFileParams['customReqOpts'],\n ) => {\n let res = await request.gateWay(\n {\n path: 'storages',\n name: 'get-objects-upload-info',\n data: [\n {\n objectId: params.path,\n ...(params.headers ? { signedHeader: Object.keys(params.headers).reduce((res, v) => ({ ...res, [v]: [params.headers[v]] }), {}) } : {}),\n },\n ],\n },\n customReqOpts,\n )\n const data = res.data?.[0] || {}\n\n res = {\n ...res,\n data: {\n ...(data.code ? { ...data } : {}),\n authorization: data.authorization,\n token: data.token,\n url: data.uploadUrl,\n fileId: data.cloudObjectId,\n cosFileId: data.cloudObjectMeta,\n download_url: data.downloadUrl,\n },\n }\n\n return res\n },\n getDownLoadInfo: async (\n request,\n params: { convertedFileList: Array<{ fileid: string }> },\n customReqOpts: ICloudbaseUploadFileParams['customReqOpts'],\n ) => {\n let res = await request.gateWay(\n {\n path: 'storages',\n name: 'get-objects-download-info',\n data: params.convertedFileList.map((v: any) => ({ cloudObjectId: v.fileid })),\n },\n customReqOpts,\n )\n res = {\n ...res,\n data: {\n download_list: res.data?.map(v => ({\n code: v.code || 'SUCCESS',\n message: v.message,\n fileid: v.cloudObjectId,\n download_url: v.downloadUrl,\n fileID: v.cloudObjectId,\n tempFileURL: v.downloadUrl,\n })),\n },\n }\n\n return res\n },\n delete: async (\n request,\n params: { fileList: Array<string> },\n customReqOpts: ICloudbaseUploadFileParams['customReqOpts'],\n ) => {\n let res = await request.gateWay(\n {\n path: 'storages',\n name: 'delete-objects',\n data: params.fileList.map(v => ({ cloudObjectId: v })),\n },\n customReqOpts,\n )\n res = {\n ...res,\n data: {\n delete_list: res.data?.map(v => ({\n code: v.code || 'SUCCESS',\n fileID: v.cloudObjectId,\n message: v.message,\n })),\n },\n }\n\n return res\n },\n copyFile: async (\n request,\n params: {\n convertedFileList: Array<{ src_path: string; dst_path: string; overwrite: boolean; remove_original: boolean }>\n },\n customReqOpts: ICloudbaseUploadFileParams['customReqOpts'],\n ) => {\n let res = await request.gateWay(\n {\n path: 'storages',\n name: 'copy-objects',\n data: params.convertedFileList.map((v: any) => ({\n srcPath: v.src_path,\n dstPath: v.dst_path,\n overwrite: v.overwrite,\n removeOriginal: v.remove_original,\n })),\n },\n customReqOpts,\n )\n res = {\n ...res,\n data: {\n copy_list: res.data?.map(v => ({\n code: v.code || 'SUCCESS',\n fileID: v.cloudObjectId,\n message: v.message,\n })),\n },\n }\n\n return res\n },\n}\n\nexport interface ICloudbaseContext {\n config: any\n request: any\n}\n\nexport class CloudbaseStorage {\n public isGateWay() {\n // @ts-ignore\n const { config } = this\n const endPointMode = config.endPointMode || 'CLOUD_API'\n\n return endPointMode === 'GATEWAY'\n }\n\n @catchErrorsDecorator({\n customInfo: {\n className: 'Cloudbase',\n methodName: 'uploadFile',\n },\n title: '上传文件失败',\n messages: [\n '请确认以下各项:',\n ' 1 - 调用 uploadFile() 的语法或参数是否正确',\n ' 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety',\n ' 3 - 云存储安全规则是否限制了当前登录状态访问',\n `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,\n ],\n })\n public async uploadFile(\n params: Omit<ICloudbaseUploadFileParams, 'filePath'> & { filePath?: string },\n callback?: Function,\n ): Promise<ICloudbaseUploadFileResult> {\n const { cloudPath, filePath, onUploadProgress, method = 'put', headers = {}, fileContent } = params\n if (!isString(cloudPath) || (!filePath && !fileContent)) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.uploadFile] invalid params`,\n }),)\n }\n const uploadMethod = { put: EUploadMethod.put, post: EUploadMethod.post }[method.toLocaleLowerCase()] || EUploadMethod.put\n\n // 调用 getUploadMetadata 获取上传元数据\n const metadataResult = await this.getUploadMetadata({\n cloudPath,\n method: uploadMethod,\n headers: uploadMethod === EUploadMethod.put ? headers : undefined,\n customReqOpts: params.customReqOpts,\n })\n\n const { data: metadata, requestId } = metadataResult\n const { url, authorization, token, fileId, cosFileId, download_url: downloadUrl } = metadata\n\n const commonParams = {\n url,\n file: filePath,\n name: cloudPath,\n onUploadProgress,\n fileContent,\n fileId,\n requestId,\n }\n\n const putParams = {\n ...commonParams,\n method: EUploadMethod.put,\n headers: {\n ...headers,\n authorization,\n 'x-cos-meta-fileid': cosFileId,\n 'x-cos-security-token': token,\n },\n }\n\n const postParams = {\n ...commonParams,\n method: EUploadMethod.post,\n data: {\n key: cloudPath,\n signature: authorization,\n 'x-cos-meta-fileid': cosFileId,\n success_action_status: '201',\n 'x-cos-security-token': token,\n },\n }\n\n const uploadConfig = {\n [EUploadMethod.put]: {\n params: putParams,\n isSuccess: (code: number) => code >= 200 && code < 300,\n },\n [EUploadMethod.post]: {\n params: postParams,\n isSuccess: (code: number) => code === 201,\n },\n }\n\n // @ts-ignore\n const res = await this.request.upload(uploadConfig[uploadMethod].params)\n\n if (uploadConfig[uploadMethod].isSuccess(res.statusCode)) {\n return execCallback(callback, null, {\n fileID: fileId,\n download_url: downloadUrl,\n requestId,\n })\n }\n return execCallback(\n callback,\n new Error(`[${getSdkName()}][${ERRORS.OPERATION_FAIL}][${COMPONENT_NAME}]:${res.data}`),\n )\n }\n @catchErrorsDecorator({\n customInfo: {\n className: 'Cloudbase',\n methodName: 'getUploadMetadata',\n },\n title: '获取上传元信息失败',\n messages: [\n '请确认以下各项:',\n ' 1 - 调用 getUploadMetadata() 的语法或参数是否正确',\n ' 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety',\n ' 3 - 云存储安全规则是否限制了当前登录状态访问',\n `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,\n ],\n })\n public async getUploadMetadata(\n params: ICloudbaseGetUploadMetadataParams & {\n method?: EUploadMethod\n headers?: Record<string, string>\n },\n callback?: Function,\n ): Promise<{ data: IUploadMetadata; requestId: string }> {\n const { cloudPath, method, headers } = params\n if (!isString(cloudPath)) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.getUploadMetadata] invalid cloudPath`,\n }),)\n }\n // @ts-ignore\n const { request } = this\n const action = 'storage.getUploadMetadata'\n\n try {\n let metaData: ICloudbaseFileMetaDataRes\n\n const metaDataParam: {\n path: string\n method?: EUploadMethod\n headers?: Record<string, string>\n } = { path: cloudPath }\n\n if (method) {\n metaDataParam.method = method\n }\n if (method === EUploadMethod.put && headers) {\n metaDataParam.headers = headers\n }\n\n if (this.isGateWay()) {\n metaData = await storageGateWay.getUploadInfo(request, metaDataParam, params.customReqOpts)\n } else {\n metaData = await request.send(action, metaDataParam, params.customReqOpts)\n }\n return execCallback(callback, null, metaData)\n } catch (err) {\n return execCallback(callback, err)\n }\n }\n @catchErrorsDecorator({\n customInfo: {\n className: 'Cloudbase',\n methodName: 'deleteFile',\n },\n title: '删除文件失败',\n messages: [\n '请确认以下各项:',\n ' 1 - 调用 deleteFile() 的语法或参数是否正确',\n ' 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety',\n ' 3 - 云存储安全规则是否限制了当前登录状态访问',\n `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,\n ],\n })\n public async deleteFile(\n params: ICloudbaseDeleteFileParams,\n callback?: Function,\n ): Promise<ICloudbaseDeleteFileResult> {\n const { fileList } = params\n\n if (!fileList || !isArray(fileList) || fileList.length === 0) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.deleteFile] fileList must not be empty`,\n }),)\n }\n\n for (const fileId of fileList) {\n if (!fileId || !isString(fileId)) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.deleteFile] fileID must be string`,\n }),)\n }\n }\n\n const action = 'storage.batchDeleteFile'\n // @ts-ignore\n const { request } = this\n let res: any = {}\n\n if (this.isGateWay()) {\n res = await storageGateWay.delete(request, { fileList }, params.customReqOpts)\n } else {\n res = await request.send(\n action,\n {\n fileid_list: fileList,\n },\n params.customReqOpts,\n )\n }\n\n if (res.code) {\n return execCallback(callback, null, res)\n }\n const data = {\n fileList: res.data.delete_list,\n requestId: res.requestId,\n }\n return execCallback(callback, null, data)\n }\n @catchErrorsDecorator({\n customInfo: {\n className: 'Cloudbase',\n methodName: 'getTempFileURL',\n },\n title: '获取文件下载链接',\n messages: [\n '请确认以下各项:',\n ' 1 - 调用 getTempFileURL() 的语法或参数是否正确',\n ' 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety',\n ' 3 - 云存储安全规则是否限制了当前登录状态访问',\n `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,\n ],\n })\n public async getTempFileURL(\n params: ICloudbaseGetTempFileURLParams,\n callback?: Function,\n ): Promise<ICloudbaseGetTempFileURLResult> {\n const { fileList } = params\n\n if (!fileList || !isArray(fileList) || fileList.length === 0) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.getTempFileURL] fileList must not be empty`,\n }),)\n }\n\n const convertedFileList = []\n for (const file of fileList) {\n if (isPalinObject(file)) {\n if (!Object.prototype.hasOwnProperty.call(file, 'fileID')) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.getTempFileURL] file info must include fileID`,\n }),)\n }\n\n convertedFileList.push({\n fileid: (file as ICloudbaseFileInfo).fileID,\n max_age: (file as ICloudbaseFileInfo).maxAge || 7200,\n })\n } else if (isString(file)) {\n convertedFileList.push({\n fileid: file,\n })\n } else {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.getTempFileURL] invalid fileList`,\n }),)\n }\n }\n\n const action = 'storage.batchGetDownloadUrl'\n // @ts-ignore\n const { request } = this\n let res: any = {}\n\n if (this.isGateWay()) {\n res = await storageGateWay.getDownLoadInfo(request, { convertedFileList }, params.customReqOpts)\n } else {\n res = await request.send(action, { file_list: convertedFileList }, params.customReqOpts)\n }\n\n if (res.code) {\n return execCallback(callback, null, res)\n }\n\n return execCallback(callback, null, {\n fileList: res.data.download_list,\n requestId: res.requestId,\n })\n }\n @catchErrorsDecorator({\n customInfo: {\n className: 'Cloudbase',\n methodName: 'downloadFile',\n },\n title: '下载文件失败',\n messages: [\n '请确认以下各项:',\n ' 1 - 调用 downloadFile() 的语法或参数是否正确',\n ' 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety',\n ' 3 - 云存储安全规则是否限制了当前登录状态访问',\n `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,\n ],\n })\n public async downloadFile(\n params: ICloudbaseDownloadFileParams,\n callback?: Function,\n ): Promise<ICloudbaseDownloadFileResult> {\n const { fileID } = params\n if (!isString(fileID)) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.getTempFileURL] fileID must be string`,\n }),)\n }\n\n const tmpUrlRes = await this.getTempFileURL.call(this, {\n fileList: [\n {\n fileID,\n maxAge: 600,\n },\n ],\n customReqOpts: params.customReqOpts,\n })\n\n const res = tmpUrlRes.fileList[0]\n\n if (res.code !== 'SUCCESS') {\n return execCallback(callback, res)\n }\n // @ts-ignore\n const { request } = this\n\n const tmpUrl = encodeURI(res.download_url)\n\n const result = await request.download({ url: tmpUrl, tempFilePath: params.tempFilePath })\n return execCallback(callback, null, result)\n }\n @catchErrorsDecorator({\n customInfo: {\n className: 'Cloudbase',\n methodName: 'copyFile',\n },\n title: '批量复制文件',\n messages: [\n '请确认以下各项:',\n ' 1 - 调用 copyFile() 的语法或参数是否正确',\n ' 2 - 当前域名是否在安全域名列表中:https://console.cloud.tencent.com/tcb/env/safety',\n ' 3 - 云存储安全规则是否限制了当前登录状态访问',\n `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,\n ],\n })\n public async copyFile(params: ICloudbaseCopyFileParams, callback?: Function): Promise<ICloudbaseCopyFileResult> {\n const { fileList } = params\n\n if (!fileList || !isArray(fileList) || fileList.length === 0) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.copyFile] fileList must not be empty`,\n }),)\n }\n\n const convertedFileList = []\n\n for (const file of fileList) {\n const { srcPath, dstPath } = file\n if (!srcPath || !dstPath || typeof srcPath !== 'string' || typeof dstPath !== 'string') {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.copyFile] srcPath and dstPath may not be empty`,\n }),)\n }\n if (srcPath === dstPath) {\n throw new Error(JSON.stringify({\n code: ERRORS.INVALID_PARAMS,\n msg: `[${COMPONENT_NAME}.copyFile] srcPath and dstPath can not be the same`,\n }),)\n }\n // if (basename(srcPath) !== basename(dstPath)) {\n // throw new Error(JSON.stringify({\n // code: ERRORS.INVALID_PARAMS,\n // msg: `[${COMPONENT_NAME}.copyFile] srcPath and dstPath file name must be the same`,\n // }),)\n // }\n convertedFileList.push({\n src_path: srcPath,\n dst_path: dstPath,\n overwrite: file.overwrite,\n remove_original: file.removeOriginal,\n })\n }\n\n // @ts-ignore\n const { request } = this\n let res: any = {}\n\n if (this.isGateWay()) {\n res = await storageGateWay.copyFile(request, { convertedFileList }, params.customReqOpts)\n } else {\n const action = 'storage.batchCopyFile'\n res = await request.send(action, { file_list: convertedFileList }, params.customReqOpts)\n }\n\n if (res.code) {\n return execCallback(callback, null, res)\n }\n\n return execCallback(callback, null, {\n fileList: res.data.copy_list,\n requestId: res.requestId,\n })\n }\n\n public async getFileInfo(params: ICloudbaseGetTempFileURLParams): Promise<{\n fileList: (Pick<ICloudbaseGetTempFileURLResult['fileList'][0], 'code' | 'fileID' | 'tempFileURL' | 'message'> & {\n fileName?: string\n cloudId?: ICloudbaseGetTempFileURLResult['fileList'][0]['fileID']\n contentType?: string\n mime?: string\n size?: number\n cacheControl?: string\n lastModified?: string\n etag?: string\n })[]\n requestId: string\n }> {\n const fileInfo = await this.getTempFileURL(params)\n\n if (fileInfo?.fileList && fileInfo?.fileList?.length > 0) {\n const fileList = await Promise.all(fileInfo.fileList.map(async (item: ICloudbaseGetTempFileURLResult['fileList'][0]) => {\n if (item.code !== 'SUCCESS') {\n return {\n code: item.code,\n fileID: item.fileID,\n tempFileURL: item.tempFileURL,\n message: item.message,\n }\n }\n\n try {\n // @ts-ignore\n const { request } = this\n const res = await request.fetch({ url: item.tempFileURL, method: 'HEAD' })\n let { header } = res\n\n if (Headers && header instanceof Headers) {\n header = Object.fromEntries(res.header.entries())\n }\n // eslint-disable-next-line radix\n const fileSize = parseInt(header['content-length']) || 0\n const contentType = header['content-type'] || ''\n\n if ([400, 404].includes(Number(res.statusCode))) {\n return {\n code: 'FILE_NOT_FOUND',\n fileID: item.fileID,\n tempFileURL: item.tempFileURL,\n message: 'file not found',\n }\n }\n\n const fileInfo = {\n code: item.code,\n fileID: item.fileID,\n tempFileURL: item.tempFileURL,\n cloudId: item.fileID,\n fileName: item.fileID.split('/').pop(),\n contentType,\n mime: contentType.split(';')[0].trim(),\n size: fileSize,\n etag: header.etag || '',\n lastModified: header['last-modified'] || '',\n cacheControl: header['cache-control'] || '',\n }\n\n return fileInfo\n } catch (e) {\n return {\n code: 'FETCH_FILE_INFO_ERROR',\n fileID: item.fileID,\n tempFileURL: item.tempFileURL,\n message: e.message,\n }\n }\n }),)\n\n return {\n fileList,\n requestId: fileInfo.requestId,\n }\n }\n\n return {\n fileList: [],\n requestId: fileInfo.requestId,\n }\n }\n}\n\n\ndeclare const cloudbase: ICloudbase\n\nconst storage = new CloudbaseStorage()\nconst component: ICloudbaseComponent = {\n name: COMPONENT_NAME,\n entity: {\n uploadFile: storage.uploadFile,\n deleteFile: storage.deleteFile,\n getTempFileURL: storage.getTempFileURL,\n downloadFile: storage.downloadFile,\n getUploadMetadata: storage.getUploadMetadata,\n copyFile: storage.copyFile,\n getFileInfo: storage.getFileInfo,\n isGateWay: storage.isGateWay,\n },\n}\n\nexport class SupabaseFileAPILikeStorage extends CloudbaseStorage {\n private shouldThrowOnError = false\n private bucketId = ''\n private context: ICloudbaseContext\n\n constructor(context?: ICloudbaseContext) {\n super()\n this.context = context\n }\n\n get config() {\n // @ts-ignore\n return this.context?.config\n }\n\n get request() {\n // @ts-ignore\n return this.context?.request\n }\n\n throwOnError(): this {\n this.shouldThrowOnError = true\n return this\n }\n\n from(bucket?: string) {\n this.bucketId = bucket || ''\n return this\n }\n\n async upload(\n path: string,\n fileBody: FileBody,\n fileOptions?: FileOptions,\n ): Promise<\n { data: { id: string; path: string; fullPath: string }; error: null } | { data: null; error: StorageError }\n > {\n const options = { upsert: true, ...fileOptions }\n const { cacheControl, contentType, metadata } = options\n try {\n const cloudPath = this._getCloudPath(path)\n const uploadFileParams: Parameters<CloudbaseStorage['uploadFile']>[0] = {\n cloudPath,\n filePath: fileBody as any,\n }\n\n if (cacheControl || contentType || metadata) {\n const headers = {}\n if (cacheControl) {\n headers['cache-control'] = cacheControl\n }\n if (contentType) {\n headers['content-type'] = contentType\n }\n\n if (metadata) {\n headers['x-cos-metadata-metadata'] = this.toBase64(JSON.stringify(metadata))\n }\n\n uploadFileParams.headers = headers\n }\n\n const result = await this.uploadFile(uploadFileParams)\n\n // IUploadFileRes 没有 code 字段,如果没有 fileID 则表示失败\n if (!result.fileID) {\n throw new Error(JSON.stringify({\n code: ERRORS.OPERATION_FAIL,\n msg: `[${COMPONENT_NAME}.update] no fileID returned`,\n }),)\n }\n\n return {\n data: {\n id: result.fileID,\n path,\n fullPath: path,\n },\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n async uploadToSignedUrl(\n path: string,\n _token: string,\n fileBody: FileBody,\n fileOptions?: FileOptions,\n ): Promise<\n { data: { id: string; path: string; fullPath: string }; error: null } | { data: null; error: StorageError }\n > {\n return this.upload(path, fileBody, fileOptions)\n }\n\n async createSignedUploadUrl(path: string): Promise<\n | {\n data: {\n signedUrl: string\n token: string\n path: string\n // CloudBase 额外的元数据字段\n authorization?: string\n id?: string\n cosFileId?: string\n downloadUrl?: string\n }\n error: null\n }\n | { data: null; error: StorageError }\n > {\n try {\n const cloudPath = this._getCloudPath(path)\n\n const { data: metadata } = await this.getUploadMetadata({ cloudPath })\n\n return {\n data: {\n signedUrl: metadata.url,\n token: metadata.token,\n path,\n // 返回 CloudBase 的额外元数据,供 uploadToSignedUrl 使用\n authorization: metadata.authorization,\n id: metadata.fileId,\n cosFileId: metadata.cosFileId,\n downloadUrl: metadata.download_url,\n },\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n return {\n data: null,\n error: error instanceof StorageError ? error : new StorageError(error.message),\n }\n }\n }\n\n async update(\n path: string,\n fileBody: FileBody,\n fileOptions?: FileOptions,\n ): Promise<\n { data: { id: string; path: string; fullPath: string }; error: null } | { data: null; error: StorageError }\n > {\n return this.upload(path, fileBody, { ...fileOptions, upsert: true })\n }\n\n async move(\n fromPath: string,\n toPath: string,\n // options?: DestinationOptions,\n ): Promise<{ data: { message: string }; error: null } | { data: null; error: StorageError }> {\n try {\n const result = await this.copyFile({\n fileList: [\n {\n srcPath: this._getCloudPath(fromPath),\n dstPath: this._getCloudPath(toPath),\n overwrite: true,\n removeOriginal: true,\n },\n ],\n })\n\n if (result.fileList[0].code && result.fileList[0].code !== 'SUCCESS') {\n throw new StorageError(result.fileList[0].message || 'Move failed')\n }\n\n return {\n data: { message: `File moved from ${fromPath} to ${toPath}` },\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n async copy(\n fromPath: string,\n toPath: string,\n // options?: DestinationOptions,\n ): Promise<{ data: { path: string }; error: null } | { data: null; error: StorageError }> {\n try {\n const result = await this.copyFile({\n fileList: [\n {\n srcPath: this._getCloudPath(fromPath),\n dstPath: this._getCloudPath(toPath),\n overwrite: true,\n removeOriginal: false,\n },\n ],\n })\n\n if (result.fileList[0].code && result.fileList[0].code !== 'SUCCESS') {\n throw new StorageError(result.fileList[0].message || 'Copy failed')\n }\n\n return {\n data: { path: this._getCloudPath(toPath) },\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return { data: null, error }\n }\n throw error\n }\n }\n\n async createSignedUrl(\n path: string,\n expiresIn: number,\n options?: {\n download?: string | boolean\n transform?: TransformOptions\n },\n ): Promise<{ data: { signedUrl: string }; error: null } | { data: null; error: StorageError }> {\n try {\n const cloudPath = this._normalizeCloudId(path)\n const result = await this.getTempFileURL({\n fileList: [\n {\n fileID: cloudPath,\n maxAge: expiresIn,\n },\n ],\n })\n\n // IGetFileUrlItem 有 code 字段但没有 message 字段\n if (result.fileList[0].code !== 'SUCCESS') {\n throw new StorageError(`Failed to create signed URL: [${result.fileList[0].code}] ${result.fileList[0].fileID}`)\n }\n\n let signedUrl = result.fileList[0].download_url\n\n // 构建查询参数\n const queryParams: string[] = []\n\n // 如果有 download 参数,添加到 URL 中\n if (options?.download !== undefined) {\n if (typeof options.download === 'string') {\n // download 是文件名\n queryParams.push(`download=${encodeURIComponent(options.download)}`)\n } else if (options.download === true) {\n // download 是 true,使用原文件名或默认值\n queryParams.push('download=true')\n }\n }\n\n // 如果有图片转换参数,添加到 URL 中\n if (options?.transform) {\n const transformQuery = this._transformOptsToQueryString(options.transform)\n if (transformQuery) {\n queryParams.push(transformQuery)\n }\n }\n\n // 拼接所有查询参数\n if (queryParams.length > 0) {\n const separator = signedUrl.includes('?') ? '&' : '?'\n signedUrl = `${signedUrl}${separator}${queryParams.join('&')}`\n }\n\n return {\n data: { signedUrl },\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n async createSignedUrls(\n paths: string[],\n expiresIn: number,\n // options?: {\n // download?: string | boolean\n // },\n ): Promise<\n | { data: Array<{ path: string; signedUrl: string; error: string | null }>; error: null }\n | { data: null; error: StorageError }\n > {\n try {\n const fileList = paths.map(p => ({\n fileID: this._normalizeCloudId(p),\n maxAge: expiresIn,\n }))\n\n const result = await this.getTempFileURL({ fileList })\n\n return {\n data: result.fileList.map((item: any, index: number) => ({\n path: paths[index],\n signedUrl: item.tempFileURL || '',\n error: item.code === 'SUCCESS' ? null : item.message,\n })),\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n async download(\n path: string,\n options?: TransformOptions,\n ): Promise<{\n data: Blob\n error: StorageError | null\n }> {\n try {\n return {\n data: await (async () => {\n const signedUrlResult = await this.createSignedUrl(path, 600, { transform: options })\n if (signedUrlResult.error) {\n throw signedUrlResult.error\n }\n const tmpUrl = encodeURI(signedUrlResult.data?.signedUrl)\n\n const { data } = await (this as any).request.reqClass.get({\n url: tmpUrl,\n headers: {}, // 下载资源请求不经过service,header清空\n responseType: 'blob',\n })\n\n if (!data) {\n throw new StorageError('Download failed: no file content')\n }\n\n // 将 Buffer 转换为 Uint8Array 以兼容 Blob\n return new Blob([data])\n })(),\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n /**\n * 获取文件信息\n *\n * @param pathOrFileId - 相对路径(如 'images/photo.jpg')或 CloudBase fileID(以 'cloud://' 开头)\n * @returns 文件信息对象\n *\n * @example\n * ```typescript\n * // 使用相对路径\n * const { data } = await bucket.info('images/photo.jpg')\n *\n * // 使用 CloudBase fileID\n * const { data } = await bucket.info('cloud://env-id.xxxx-xxxx/images/photo.jpg')\n * ```\n */\n async info(pathOrFileId: string,): Promise<{ data: Camelize<FileObjectV2>; error: null } | { data: null; error: StorageError }> {\n try {\n // 判断是 fileID 还是相对路径\n const isFileId = pathOrFileId.startsWith('cloud://')\n const displayName = isFileId ? this._extractPathFromFileId(pathOrFileId) : pathOrFileId\n const bucketId = isFileId ? this._extractBucketFromFileId(pathOrFileId) : this.bucketId\n\n const fileInfo = await this.getFileInfo({\n fileList: [this._normalizeCloudId(pathOrFileId)],\n })\n\n const item = fileInfo.fileList[0]\n\n if (item.code !== 'SUCCESS') {\n throw new StorageError(item.message)\n }\n\n const now = new Date().toISOString()\n const lastModified = (item.lastModified ? new Date(item.lastModified) : new Date()).toISOString()\n return {\n data: {\n id: item.fileID,\n version: '1',\n name: displayName,\n bucketId,\n updatedAt: lastModified,\n createdAt: lastModified,\n lastAccessedAt: now,\n size: item.size,\n cacheControl: item.cacheControl,\n contentType: item.contentType,\n etag: item.etag,\n lastModified,\n metadata: {},\n },\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n return {\n data: null,\n error: error instanceof StorageError ? error : new StorageError(error.message),\n }\n }\n }\n\n async exists(pathOrFileId: string): Promise<{ data: boolean; error: null } | { data: null; error: StorageError }> {\n try {\n // 判断是 fileID 还是相对路径\n const fileInfo = await this.getFileInfo({\n fileList: [this._normalizeCloudId(pathOrFileId)],\n })\n\n const item = fileInfo.fileList[0]\n\n if (item.code === 'FILE_NOT_FOUND') {\n return {\n data: false,\n error: null,\n }\n }\n\n if (item.code !== 'SUCCESS') {\n throw new StorageError(item.message)\n }\n\n return { data: true, error: null }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n async getPublicUrl(\n path: string,\n options?: {\n download?: string | boolean\n transform?: TransformOptions\n },\n ): Promise<\n | {\n data: { publicUrl: string }\n }\n | { data: null; error: StorageError }\n > {\n const res = await this.createSignedUrl(path, 600, options)\n\n if (res.data) {\n return {\n data: { publicUrl: res.data.signedUrl },\n }\n }\n\n return { data: null, error: res.error as StorageError }\n }\n\n async remove(paths: string[]): Promise<{ data: FileObject[]; error: null } | { data: null; error: StorageError }> {\n try {\n // 分组获取文件信息,每组最多10个\n const chunkSize = 10\n const pathChunks: string[][] = []\n for (let i = 0; i < paths.length; i += chunkSize) {\n pathChunks.push(paths.slice(i, i + chunkSize))\n }\n\n // 并行获取所有分组的文件信息\n const fileInfoResults = await Promise.all(pathChunks.map(chunk => Promise.all(chunk.map(path => this.info(path)))),)\n\n // 合并所有文件信息并构建映射表(path -> fileInfo)\n const fileInfoMap = new Map<string, Camelize<FileObjectV2>>()\n fileInfoResults.flat().forEach((result, index) => {\n if (result.data) {\n fileInfoMap.set(paths[Math.floor(index / chunkSize) * chunkSize + (index % chunkSize)], result.data)\n }\n })\n\n // 执行删除操作\n const fileList = paths.map(p => this._normalizeCloudId(p))\n const result = await this.deleteFile({ fileList })\n\n // IDeleteFileRes 的 fileList 数组中每个项有 code 字段\n const failedFiles = result.fileList.filter(item => item.code !== 'SUCCESS')\n if (failedFiles.length > 0) {\n throw new StorageError(`Delete failed for ${failedFiles.length} file(s)`)\n }\n\n const now = new Date().toISOString()\n\n // 使用获取到的文件信息构建返回数据\n return {\n data: paths.map((p) => {\n const info = fileInfoMap.get(p)\n\n return {\n name: info?.name,\n id: info?.id,\n bucket_id: info?.bucketId,\n owner: undefined, // 无法计算owner\n updated_at: info?.updatedAt || now,\n created_at: info?.createdAt,\n last_accessed_at: info?.lastAccessedAt || now,\n metadata: info?.metadata || {},\n /**\n * TODO: 获取补全 Bucket 信息\n */\n buckets: {\n id: info?.bucketId,\n name: info?.bucketId,\n owner: undefined, // 无法计算owner\n public: false, // 未知\n created_at: '', // 未知\n updated_at: now, // 未知\n },\n }\n }),\n error: null,\n }\n } catch (error: any) {\n if (this.shouldThrowOnError) throw error\n if (isStorageError(error)) {\n return {\n data: null,\n error,\n }\n }\n throw error\n }\n }\n\n async list() {\n throw new StorageError('Not implemented')\n }\n\n private _getCloudPath(path: string): string {\n // 清理路径:移除首尾斜杠,合并多个斜杠\n const cleanPath = path.replace(/^\\/|\\/$/g, '').replace(/\\/+/g, '/')\n\n // 否则返回清理后的相对路径\n return cleanPath\n }\n\n private _normalizeCloudId(path: string) {\n // 如果已经是 cloud:// 格式,直接返回\n if (/^cloud:\\/\\//.test(path)) {\n return path\n }\n const cleanPath = this._getCloudPath(path)\n\n // 如果设置了 bucketId,构建完整的 cloud:// 路径\n if (this.bucketId) {\n // 获取环境 ID\n const envId = this.config?.env || ''\n if (envId) {\n return `cloud://${envId}.${this.bucketId}/${cleanPath}`\n }\n } else {\n throw new StorageError('bucketId is not set')\n }\n }\n\n private toBase64(data: string) {\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(data).toString('base64')\n }\n return btoa(data)\n }\n\n /**\n * 将 TransformOptions 转换为腾讯云数据万象的 imageMogr2 查询字符串\n *\n * 腾讯云数据万象使用 imageMogr2 接口进行图片处理,支持以下参数:\n * - /thumbnail/<Width>x<Height> - 缩放\n * - /format/<Format> - 格式转换\n * - /quality/<Quality> - 质量调整\n * - /rquality/<Quality> - 相对质量\n *\n * @param transform - Supabase TransformOptions\n * @returns 腾讯云数据万象的查询字符串\n *\n * @example\n * ```typescript\n * _transformOptsToQueryString({ width: 300, height: 200, quality: 80, format: 'origin' })\n * // 返回: 'imageMogr2/thumbnail/300x200/quality/80'\n * ```\n */\n private _transformOptsToQueryString(transform: TransformOptions): string {\n const params: string[] = ['imageMogr2']\n\n // 处理缩放参数\n if (transform.width || transform.height) {\n const width = transform.width || ''\n const height = transform.height || ''\n\n // 根据 resize 模式选择不同的缩放方式\n if (transform.resize === 'fill') {\n // fill: 强制缩放到指定尺寸,可能变形\n params.push(`thumbnail/${width}x${height}!`)\n } else if (transform.resize === 'contain') {\n // contain: 等比缩放,完整显示在指定尺寸内\n params.push(`thumbnail/${width}x${height}`)\n } else {\n // cover (默认): 等比缩放,填充指定尺寸,可能裁剪\n // 使用 /thumbnail/<Width>x<Height>^ 表示填充模式\n params.push(`thumbnail/${width}x${height}^`)\n }\n }\n\n // 处理格式转换\n // format: 'origin' 表示保持原格式,不传此参数\n if (transform.format && transform.format !== 'origin') {\n params.push(`format/${transform.format}`)\n }\n\n // 处理质量参数\n if (transform.quality !== undefined) {\n // 腾讯云数据万象的 quality 参数范围是 1-100\n const quality = Math.max(1, Math.min(100, transform.quality))\n params.push(`quality/${quality}`)\n }\n\n return params.join('/')\n }\n\n /**\n * 从 CloudBase fileID 中提取文件路径\n *\n * @param fileId - CloudBase fileID (格式: cloud://env-id.bucket/path/to/file.jpg)\n * @returns 提取的文件路径\n *\n * @example\n * ```typescript\n * _extractPathFromFileId('cloud://test-env.test-bucket/images/photo.jpg')\n * // 返回: 'images/photo.jpg'\n *\n * _extractPathFromFileId('cloud://test-env.test-bucket/file.txt')\n * // 返回: 'file.txt'\n * ```\n */\n private _extractPathFromFileId(fileId: string): string {\n // fileID 格式: cloud://env-id.bucket/path/to/file.jpg\n // 需要提取第一个 / 后面的所有内容(包括 bucket 和路径)\n // 然后再提取 bucket 后面的路径部分\n\n // 移除 cloud:// 前缀\n const withoutProtocol = fileId.replace(/^cloud:\\/\\//, '')\n\n // 分割为 [env-id.bucket, path, to, file.jpg]\n const parts = withoutProtocol.split('/')\n\n if (parts.length < 2) {\n // 如果无法解析,返回完整的 fileID\n return fileId\n }\n\n // 移除第一部分(env-id.bucket),返回剩余路径\n return parts.slice(1).join('/')\n }\n\n /**\n * 从 CloudBase fileID 中提取 bucket 名称\n *\n * @param fileId - CloudBase fileID (格式: cloud://env-id.bucket/path/to/file.jpg)\n * @returns 提取的 bucket 名称\n *\n * @example\n * ```typescript\n * _extractBucketFromFileId('cloud://test-env.test-bucket/images/photo.jpg')\n * // 返回: 'test-bucket'\n *\n * _extractBucketFromFileId('cloud://prod-env.my-bucket/file.txt')\n * // 返回: 'my-bucket'\n * ```\n */\n private _extractBucketFromFileId(fileId: string): string {\n // fileID 格式: cloud://env-id.bucket/path/to/file.jpg\n // 需要提取 env-id.bucket 中的 bucket 部分\n\n // 移除 cloud:// 前缀\n const withoutProtocol = fileId.replace(/^cloud:\\/\\//, '')\n\n // 分割为 [env-id.bucket, path, to, file.jpg]\n const parts = withoutProtocol.split('/')\n\n if (parts.length < 1) {\n // 如果无法解析,返回默认 bucket\n return ''\n }\n\n // 第一部分是 env-id.bucket,提取 bucket 部分\n // 格式: env-id.bucket 或 env-id.bucket-name\n const envAndBucket = parts[0]\n\n // 查找第一个点的位置\n const dotIndex = envAndBucket.indexOf('.')\n\n if (dotIndex === -1) {\n // 如果没有点,返回整个字符串\n return envAndBucket\n }\n\n // 返回点后面的部分(bucket 名称)\n return envAndBucket.substring(dotIndex + 1)\n }\n}\n\nconst supabaseComponent: ICloudbaseComponent = {\n name: `${COMPONENT_NAME}/supabase`,\n IIFE: true,\n entity() {\n // 在 IIFE 中,this 是 Cloudbase 类(构造函数),不是实例\n // 所以我们需要使用 getter 来延迟获取实例的 config 和 request\n\n // 使用 WeakMap 缓存每个实例的 storage 对象\n const storageCache = new WeakMap<any, SupabaseFileAPILikeStorage>()\n\n // 定义 storage 属性的 getter,每个实例只创建一次\n Object.defineProperty(this.prototype, 'storage', {\n get() {\n // 这里的 this 是 cloudbase 实例\n\n // 如果已经创建过,直接返回缓存的实例\n if (storageCache.has(this)) {\n return storageCache.get(this)\n }\n\n // 创建动态 context,从当前实例获取 config 和 request\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instance = this\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n const context = new Proxy<ICloudbaseContext>({} as ICloudbaseContext, {\n get: (_target, prop) => {\n if (prop === 'config') {\n return instance.config\n }\n if (prop === 'request') {\n return instance.request\n }\n return undefined\n },\n })\n\n // 创建新的 storage 实例并缓存\n const storage = new SupabaseFileAPILikeStorage(context)\n storageCache.set(this, storage)\n return storage\n },\n configurable: true,\n enumerable: true,\n })\n },\n}\n\ntry {\n cloudbase.registerComponent(component)\n cloudbase.registerComponent(supabaseComponent)\n} catch (e) {}\n\nexport function registerStorage(app: Pick<ICloudbase, 'registerComponent'>) {\n try {\n app.registerComponent(component)\n app.registerComponent(supabaseComponent)\n } catch (e) {\n console.warn(e)\n }\n}\n\ntry {\n (window as any).registerStorage = registerStorage\n} catch (e) {}\n","export class StorageError extends Error {\n protected __isStorageError = true\n\n constructor(message: string) {\n super(message)\n this.name = 'StorageError'\n }\n}\n\nexport function isStorageError(error: unknown): error is StorageError {\n return typeof error === 'object' && error !== null && '__isStorageError' in error\n}\n\nexport class StorageApiError extends StorageError {\n status: number\n statusCode: string\n\n constructor(message: string, status: number, statusCode: string) {\n super(message)\n this.name = 'StorageApiError'\n this.status = status\n this.statusCode = statusCode\n }\n\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n status: this.status,\n statusCode: this.statusCode,\n }\n }\n}\n\nexport class StorageUnknownError extends StorageError {\n originalError: unknown\n\n constructor(message: string, originalError: unknown) {\n super(message)\n this.name = 'StorageUnknownError'\n this.originalError = originalError\n }\n}\n","import {\n SDKAdapterInterface,\n AbstractSDKRequest,\n IRequestOptions,\n ResponseObject,\n IUploadRequestOptions,\n IRequestConfig,\n IRequestMethod,\n IFetchOptions,\n} from '@cloudbase/adapter-interface'\nimport { isFormData, formatUrl, toQueryString } from '../../libs/util'\nimport { getProtocol } from '../../constants/common'\n\n/**\n * @class WebRequest\n */\nclass WebRequest extends AbstractSDKRequest {\n // 默认不限超时\n private readonly timeout: number\n // 超时提示文案\n private readonly timeoutMsg: string\n // 超时受限请求类型,默认所有请求均受限\n private readonly restrictedMethods: Array<IRequestMethod>\n constructor(config: IRequestConfig) {\n super()\n const { timeout, timeoutMsg, restrictedMethods } = config\n this.timeout = timeout || 0\n this.timeoutMsg = timeoutMsg || '请求超时'\n this.restrictedMethods = restrictedMethods || ['get', 'post', 'upload', 'download']\n }\n public get(options: IRequestOptions): Promise<ResponseObject> {\n return this.request(\n {\n ...options,\n method: 'get',\n },\n this.restrictedMethods.includes('get'),\n )\n }\n public post(options: IRequestOptions): Promise<ResponseObject> {\n return this.request(\n {\n ...options,\n method: 'post',\n },\n this.restrictedMethods.includes('post'),\n )\n }\n public put(options: IRequestOptions): Promise<ResponseObject> {\n return this.request({\n ...options,\n method: 'put',\n })\n }\n public upload(options: IUploadRequestOptions): Promise<ResponseObject> {\n const { data, file, name, method, headers = {} } = options\n const reqMethod = { post: 'post', put: 'put' }[method?.toLowerCase()] || 'put'\n // 上传方式为post时,需转换为FormData\n const formData = new FormData()\n if (reqMethod === 'post') {\n Object.keys(data).forEach((key) => {\n formData.append(key, data[key])\n })\n formData.append('key', name)\n formData.append('file', file)\n return this.request(\n {\n ...options,\n data: formData,\n method: reqMethod,\n },\n this.restrictedMethods.includes('upload'),\n )\n }\n return this.request(\n {\n ...options,\n method: 'put',\n headers,\n body: file,\n },\n this.restrictedMethods.includes('upload'),\n )\n }\n public async download(options: IRequestOptions): Promise<any> {\n try {\n const { data } = await this.get({\n ...options,\n headers: {}, // 下载资源请求不经过service,header清空\n responseType: 'blob',\n })\n const url = window.URL.createObjectURL(new Blob([data]))\n const fileName = decodeURIComponent(new URL(options.url).pathname.split('/').pop() || '')\n const link = document.createElement('a')\n\n link.href = url\n link.setAttribute('download', fileName)\n link.style.display = 'none'\n\n document.body.appendChild(link)\n link.click()\n // 回收内存\n window.URL.revokeObjectURL(url)\n document.body.removeChild(link)\n } catch (e) {}\n return new Promise((resolve) => {\n resolve({\n statusCode: 200,\n tempFilePath: options.url,\n })\n })\n }\n async fetch(options: IFetchOptions & { shouldThrowOnError?: boolean }): Promise<ResponseObject> {\n const abortController = new AbortController()\n const { url, enableAbort = false, stream = false, signal, timeout: _timeout, shouldThrowOnError = true } = options\n\n const timeout = _timeout ?? this.timeout\n\n if (signal) {\n if (signal.aborted) abortController.abort()\n signal.addEventListener('abort', () => abortController.abort())\n }\n\n let timer = null\n if (enableAbort && timeout) {\n timer = setTimeout(() => {\n console.warn(this.timeoutMsg)\n abortController.abort(new Error(this.timeoutMsg))\n }, timeout)\n }\n\n const res = await fetch(url, {\n ...options,\n signal: abortController.signal,\n })\n .then(async (response) => {\n clearTimeout(timer)\n if (shouldThrowOnError) {\n // 404 等等也会进 resolve,所以要再通过 ok 判断\n return response.ok ? response : Promise.reject(await response.json())\n }\n return response\n })\n .catch((x) => {\n clearTimeout(timer)\n if (shouldThrowOnError) {\n return Promise.reject(x)\n }\n })\n\n return {\n // eslint-disable-next-line no-nested-ternary\n data: stream ? res.body : res.headers.get('content-type')?.includes('application/json') ? res.json() : res.text(),\n statusCode: res.status,\n header: res.headers,\n }\n }\n /**\n * @param {IRequestOptions} options\n * @param {boolean} enableAbort 是否超时中断请求\n */\n protected request(options: IRequestOptions, enableAbort = false): Promise<ResponseObject> {\n const method = String(options.method).toLowerCase() || 'get'\n return new Promise((resolve) => {\n const { url, headers = {}, data, responseType, withCredentials, body, onUploadProgress } = options\n const realUrl = formatUrl(getProtocol(), url, method === 'get' ? data : {})\n const ajax = new XMLHttpRequest()\n ajax.open(method, realUrl)\n responseType && (ajax.responseType = responseType)\n Object.keys(headers).forEach((key) => {\n ajax.setRequestHeader(key, headers[key])\n })\n let timer\n if (onUploadProgress) {\n ajax.upload.addEventListener('progress', onUploadProgress)\n }\n ajax.onreadystatechange = () => {\n const result: ResponseObject = {}\n if (ajax.readyState === 4) {\n const headers = ajax.getAllResponseHeaders()\n const arr = headers.trim().split(/[\\r\\n]+/)\n // Create a map of header names to values\n const headerMap = {}\n arr.forEach((line) => {\n const parts = line.split(': ')\n const header = parts.shift().toLowerCase()\n const value = parts.join(': ')\n headerMap[header] = value\n })\n result.header = headerMap\n result.statusCode = ajax.status\n try {\n // 上传post请求返回数据格式为xml,此处容错\n result.data = responseType === 'blob' ? ajax.response : JSON.parse(ajax.responseText)\n } catch (e) {\n result.data = responseType === 'blob' ? ajax.response : ajax.responseText\n }\n clearTimeout(timer)\n resolve(result)\n }\n }\n if (enableAbort && this.timeout) {\n timer = setTimeout(() => {\n console.warn(this.timeoutMsg)\n ajax.abort()\n }, this.timeout)\n }\n // 处理 payload\n let payload\n if (isFormData(data)) {\n // FormData,不处理\n payload = data\n } else if (headers['content-type'] === 'application/x-www-form-urlencoded') {\n payload = toQueryString(data)\n } else if (body) {\n payload = body\n } else {\n // 其它情况\n payload = data ? JSON.stringify(data) : undefined\n }\n\n if (withCredentials) {\n ajax.withCredentials = true\n }\n ajax.send(payload)\n })\n }\n}\n\nfunction genAdapter() {\n const adapter: SDKAdapterInterface & { type?: 'default' | '' } = {\n type: 'default',\n root: window,\n reqClass: WebRequest,\n wsClass: WebSocket,\n localStorage,\n }\n return adapter\n}\n\nexport { genAdapter, WebRequest }\n","let sdkName = '@cloudbase/js-sdk'\nexport function setSdkName(name: string) {\n sdkName = name\n}\nexport function getSdkName() {\n return sdkName\n}\n\nlet PROTOCOL = 'https:'\n\nexport function setProtocol(protocol: 'http:' | 'https:') {\n PROTOCOL = protocol\n}\n\nexport function getProtocol() {\n return PROTOCOL\n}\n// 是否为开发模式\nexport const IS_DEBUG_MODE = typeof process === 'undefined' || typeof process.env === 'undefined' ? false : process.env.NODE_ENV === 'development'\n// 问答社区链接\nexport const COMMUNITY_SITE_URL = 'https://support.qq.com/products/148793'\n","import { printGroupLog } from '../libs/util'\nimport { IS_DEBUG_MODE } from '../constants'\n\ninterface ICatchErrorsDecoratorOptions {\n mode?: 'sync' | 'async';\n customInfo?: {\n className?: string;\n methodName?: string;\n };\n title?: string;\n messages?: string[];\n}\n// firefox的stack格式与chrome不同\nlet isFirefox = false\nif (typeof navigator !== 'undefined' && navigator.userAgent) {\n isFirefox = navigator.userAgent.indexOf('Firefox') !== -1\n}\n/**\n * decorate在stack中一般都特定的规范\n */\nconst REG_STACK_DECORATE = isFirefox\n ? /(\\.js\\/)?__decorate(\\$\\d+)?<@.*\\d$/\n : /(\\/\\w+\\.js\\.)?__decorate(\\$\\d+)?\\s*\\(.*\\)$/\nconst REG_STACK_LINK = /https?:\\/\\/.+:\\d*\\/.*\\.js:\\d+:\\d+/\n/**\n * debug模式强化日志信息\n * @param options\n */\nexport function catchErrorsDecorator(options: ICatchErrorsDecoratorOptions) {\n const { mode = 'async', customInfo = {}, title, messages = [] } = options\n\n return function (\n target: any,\n methodName: string,\n descriptor: TypedPropertyDescriptor<Function>\n ) {\n // 生产环境禁用\n if (!IS_DEBUG_MODE) {\n return\n }\n const className = customInfo.className || target.constructor.name\n const fnName = customInfo.methodName || methodName\n const fn = descriptor.value\n\n // 被decorator装饰的源码link\n // 在descriptor.value外部此处创建的stack层次可触达源码\n // 而descriptor.value内部有可能由于stack太深无法触达\n const sourceLink = getSourceLink(new Error())\n\n if (mode === 'sync') {\n descriptor.value = function (...args: any[]) {\n // 此处的stack作用主要是为了获取被decorator装饰的源码class和method名称\n const innerErr: any = getRewritedError({\n err: new Error(),\n className,\n methodName: fnName,\n sourceLink,\n })\n try {\n return fn.apply(this, args)\n } catch (err) {\n let failErr = err\n const { message: errMsg, error, error_description: errorDescription } = err\n const logs: any = {\n title: title || `${className}.${fnName} failed`,\n content: [{\n type: 'error',\n body: err,\n }],\n }\n // 只特殊处理SDK业务逻辑抛出的错误-JSON string\n if (errMsg && /^\\{.*\\}$/.test(errMsg)) {\n const msg = JSON.parse(errMsg)\n logs.subtitle = errMsg\n if (msg.code) {\n if (innerErr) {\n innerErr.code = msg.code\n innerErr.msg = msg.msg\n } else {\n err.code = msg.code\n err.message = msg.msg\n }\n failErr = innerErr || err\n logs.content = messages.map(msg => ({\n type: 'info',\n body: msg,\n }))\n }\n }\n\n // oauth 错误特殊处理\n if (error && errorDescription) {\n logs.subtitle = errorDescription\n if (innerErr) {\n innerErr.code = error\n innerErr.msg = errorDescription\n } else {\n err.code = error\n err.message = errorDescription\n }\n failErr = innerErr || err\n logs.content = messages.map(msg => ({\n type: 'info',\n body: msg,\n }))\n }\n printGroupLog(logs)\n throw failErr\n }\n }\n } else {\n descriptor.value = async function (...args: any[]) {\n const innerErr: any = getRewritedError({\n err: new Error(),\n className,\n methodName: fnName,\n sourceLink,\n })\n\n try {\n return await fn.apply(this, args)\n } catch (err) {\n let failErr = err\n const { message: errMsg, error, error_description: errorDescription } = err\n const logs: any = {\n title: title || `${className}.${fnName} failed`,\n content: [{\n type: 'error',\n body: err,\n }],\n }\n // 只特殊处理SDK业务逻辑抛出的错误-JSON string\n if (errMsg && /^\\{.*\\}$/.test(errMsg)) {\n const msg = JSON.parse(errMsg)\n logs.subtitle = msg\n if (msg.code) {\n if (innerErr) {\n innerErr.code = msg.code\n innerErr.message = msg.msg\n } else {\n err.code = msg.code\n err.message = msg.msg\n }\n failErr = innerErr || err\n logs.content = messages.map(msg => ({\n type: 'info',\n body: msg,\n }))\n }\n }\n\n // oauth 错误特殊处理\n if (error && errorDescription) {\n logs.subtitle = errorDescription\n if (innerErr) {\n innerErr.code = error\n innerErr.msg = errorDescription\n } else {\n err.code = error\n err.message = errorDescription\n }\n failErr = innerErr || err\n logs.content = messages.map(msg => ({\n type: 'info',\n body: msg,\n }))\n }\n printGroupLog(logs)\n throw failErr\n }\n }\n }\n }\n}\n\n/**\n * 在原始堆栈中查找装饰器条目并返回源码链接link\n * @param err\n */\nfunction getSourceLink(err: Error) {\n let sourceLink = ''\n const outterErrStacks = err.stack.split('\\n')\n const indexOfDecorator = outterErrStacks.findIndex(str => REG_STACK_DECORATE.test(str))\n\n if (indexOfDecorator !== -1) {\n const match = REG_STACK_LINK.exec(outterErrStacks[indexOfDecorator + 1] || '')\n\n sourceLink = match ? match[0] : ''\n }\n return sourceLink\n}\n\n/**\n * 在原始堆栈中查找装饰器条目,剔除其后的无用堆栈,并将链接替换为源码link\n * @param options\n */\nfunction getRewritedError(options: {\n err: Error;\n className: string;\n methodName: string;\n sourceLink: string;\n}) {\n const { err, className, methodName, sourceLink } = options\n // 找不到源码link返回null,后续逻辑将打印原堆栈信息\n if (!sourceLink) {\n return null\n }\n\n const innerErrStack = err.stack.split('\\n')\n const REG_STACK_INNER_METHOD = isFirefox\n ? /^catchErrorsDecorator\\/<\\/descriptor.value@.*\\d$/\n : new RegExp(`${className}\\\\.descriptor.value\\\\s*\\\\[as\\\\s${methodName}\\\\]\\\\s*\\\\(.*\\\\)$`)\n const REG_STACK_INNER_METHOD_WITHOUT_LINK = isFirefox\n ? /^catchErrorsDecorator\\/<\\/descriptor.value/\n : new RegExp(`${className}\\\\.descriptor.value\\\\s*\\\\[as\\\\s${methodName}\\\\]`)\n const indexOfSource = innerErrStack.findIndex(str => REG_STACK_INNER_METHOD.test(str))\n let innerErr: Error\n if (indexOfSource !== -1) {\n // @ts-ignore\n const realErrStack = innerErrStack.filter((v, i) => i > indexOfSource)\n realErrStack.unshift(innerErrStack[indexOfSource]\n .replace(REG_STACK_INNER_METHOD_WITHOUT_LINK, `${className}.${methodName}`)\n .replace(REG_STACK_LINK, sourceLink))\n innerErr = new Error()\n innerErr.stack = `${isFirefox ? '@debugger' : 'Error'}\\n${realErrStack.join('\\n')}`\n }\n return innerErr\n}\n","export default class AbortController {\n listeners: Array<CallableFunction> = []\n signal = {\n aborted: false,\n addEventListener: (e: string, f: CallableFunction) => {\n if (e === 'abort') {\n this.listeners.push(f)\n }\n },\n }\n // eslint-disable-next-line @typescript-eslint/no-useless-constructor\n constructor() {}\n\n abort() {\n if (this.signal.aborted) return\n\n this.signal.aborted = true\n this.listeners.forEach(f => f())\n }\n}\n","import { StorageInterface, AbstractStorage, SDKAdapterInterface } from '@cloudbase/adapter-interface'\nimport { ICloudbaseCache, ICacheConfig } from '@cloudbase/types/cache'\nimport { KV, Persistence, ICloudbasePlatformInfo } from '@cloudbase/types'\nimport { printWarn } from './util'\nimport { ERRORS, getSdkName } from '../constants'\n\n/**\n * persitence=none时登录态保存在内存中\n */\nclass TcbCacheObject extends AbstractStorage {\n private readonly root: any\n constructor(root: any) {\n super()\n this.root = root\n if (!root.tcbCacheObject) {\n root.tcbCacheObject = {}\n }\n }\n public setItem(key: string, value: any) {\n this.root.tcbCacheObject[key] = value\n }\n public getItem(key: string) {\n return this.root.tcbCacheObject[key]\n }\n public removeItem(key: string) {\n delete this.root.tcbCacheObject[key]\n }\n public clear() {\n delete this.root.tcbCacheObject\n }\n}\n/**\n * 工厂函数\n */\nfunction createStorage(persistence: Persistence, adapter: SDKAdapterInterface): StorageInterface {\n switch (persistence) {\n case 'local':\n if (!adapter.localStorage) {\n printWarn(ERRORS.INVALID_PARAMS, 'localStorage is not supported on current platform')\n // 不支持localstorage的平台降级为none\n return new TcbCacheObject(adapter.root)\n }\n return adapter.localStorage\n case 'none':\n return new TcbCacheObject(adapter.root)\n default:\n if (!adapter.localStorage) {\n printWarn(ERRORS.INVALID_PARAMS, 'localStorage is not supported on current platform')\n // 不支持localstorage的平台降级为none\n return new TcbCacheObject(adapter.root)\n }\n return adapter.localStorage\n }\n}\n\nexport class CloudbaseCache implements ICloudbaseCache {\n public keys: KV<string> = {}\n\n private persistenceTag: Persistence\n private platformInfo: ICloudbasePlatformInfo\n private storage: StorageInterface\n\n constructor(config: ICacheConfig) {\n const { persistence, platformInfo = {}, keys = {} } = config\n this.platformInfo = platformInfo\n if (!this.storage) {\n this.persistenceTag = this.platformInfo.adapter.primaryStorage || persistence\n this.storage = createStorage(this.persistenceTag, this.platformInfo.adapter)\n this.keys = keys\n }\n }\n /**\n * @getter storage模式-同步/异步\n */\n get mode() {\n return this.storage.mode || 'sync'\n }\n get persistence(): Persistence {\n return this.persistenceTag\n }\n\n public setStore(key: string, value: any, version?: any) {\n if (this.mode === 'async') {\n printWarn(ERRORS.INVALID_OPERATION, 'current platform\\'s storage is asynchronous, please use setStoreAsync insteed')\n return\n }\n if (!this.storage) {\n return\n }\n\n try {\n const val = {\n version: version || 'localCachev1',\n content: value,\n }\n this.storage.setItem(key, JSON.stringify(val))\n } catch (e) {\n throw new Error(JSON.stringify({\n code: ERRORS.OPERATION_FAIL,\n msg: `[${getSdkName()}][${ERRORS.OPERATION_FAIL}]setStore failed`,\n info: e,\n }))\n }\n\n return\n }\n public async setStoreAsync(key: string, value: any, version?: any) {\n if (!this.storage) {\n return\n }\n\n try {\n const val = {\n version: version || 'localCachev1',\n content: value,\n }\n await this.storage.setItem(key, JSON.stringify(val))\n } catch (e) {\n return\n }\n\n return\n }\n public getStore(key: string, version?: string) {\n if (this.mode === 'async') {\n printWarn(ERRORS.INVALID_OPERATION, 'current platform\\'s storage is asynchronous, please use getStoreAsync insteed')\n return\n }\n try {\n // 测试用例使用\n if (typeof process !== 'undefined' && process.env?.tcb_token) {\n return process.env.tcb_token\n }\n\n if (!this.storage) {\n return ''\n }\n } catch (e) {\n return ''\n }\n\n version = version || 'localCachev1'\n\n const content = this.storage.getItem(key)\n if (!content) {\n return ''\n }\n\n if (content.indexOf(version) >= 0) {\n const d = JSON.parse(content)\n return d.content\n }\n return ''\n }\n public async getStoreAsync(key: string, version?: string) {\n try {\n // 测试用例使用\n if (typeof process !== 'undefined' && process.env?.tcb_token) {\n return process.env.tcb_token\n }\n\n if (!this.storage) {\n return ''\n }\n } catch (e) {\n return ''\n }\n\n version = version || 'localCachev1'\n\n const content = await this.storage.getItem(key)\n if (!content) {\n return ''\n }\n\n if (content.indexOf(version) >= 0) {\n const d = JSON.parse(content)\n return d.content\n }\n return ''\n }\n public removeStore(key: string) {\n if (this.mode === 'async') {\n printWarn(ERRORS.INVALID_OPERATION, 'current platform\\'s storage is asynchronous, please use removeStoreAsync insteed')\n return\n }\n this.storage.removeItem(key)\n }\n public async removeStoreAsync(key: string) {\n await this.storage.removeItem(key)\n }\n}\n","import { isString, isInstanceOf } from './util'\nimport { Listeners, ICloudbaseEventEmitter } from '@cloudbase/types/events'\n\n\n/**\n * @private\n * @function _addEventListener - 添加监听\n * @param {string} name - event名称\n * @param {Function} listener - 响应函数\n * @param {Listeners} listeners - 已存响应函数集合\n */\nfunction customeAddEventListener(name: string, listener: Function, listeners: Listeners) {\n listeners[name] = listeners[name] || []\n listeners[name].push(listener)\n}\n/**\n * @private\n * @function _removeEventListener - 移除监听\n * @param {string} name - event名称\n * @param {Function} listener - 响应函数\n * @param {Listeners} listeners - 已存响应函数集合\n */\nfunction customRemoveEventListener(name: string, listener: Function, listeners: Listeners) {\n if (listeners?.[name]) {\n const index = listeners[name].indexOf(listener)\n if (index !== -1) {\n listeners[name].splice(index, 1)\n }\n }\n}\ninterface IEvent {\n name: string;\n target: any;\n data: any;\n}\n/**\n * 自定义事件\n * @class CloudbaseEvent\n * @param {string} name - 类型\n * @param {any} data - 数据\n */\nexport class CloudbaseEvent implements IEvent {\n public readonly name: string\n public target: any\n public data: any\n\n constructor(name: string, data: any) {\n this.data = data || null\n this.name = name\n }\n}\n/**\n * 自定义错误事件\n * @class IErrorEvent\n * @extends CloudbaseEvent\n * @param {Error} error - 错误信息对象\n * @param {any} data - 数据\n */\nexport class IErrorEvent extends CloudbaseEvent {\n public readonly error: Error\n constructor(error: Error, data?: any) {\n super('error', { error, data })\n this.error = error\n }\n}\n\n/**\n * @class CloudbaseEventEmitter\n */\nexport class CloudbaseEventEmitter implements ICloudbaseEventEmitter {\n /**\n * @private\n * @readonly\n * @property {Listeners} listeners - 响应函数集合\n * @default `{}`\n */\n private readonly listeners: Listeners = {}\n\n /**\n * @public\n * @method on - 添加监听\n * @param {string} name - event名称\n * @param {Function} listener - 响应函数\n * @return `this`\n */\n public on(name: string, listener: Function): this {\n customeAddEventListener(name, listener, this.listeners)\n return this\n }\n /**\n * @public\n * @method off - 移除监听\n * @param {string} name - event名称\n * @param {Function} listener - 响应函数\n * @return `this`\n */\n public off(name: string, listener: Function): this {\n customRemoveEventListener(name, listener, this.listeners)\n return this\n }\n /**\n * @public\n * @method fire - 触发事件\n * @param {string|CloudbaseEvent} event - event\n * @return `this`\n */\n public fire(event: string | CloudbaseEvent, data?: any): this {\n // 打印错误信息\n if (isInstanceOf(event, IErrorEvent)) {\n console.error((event as IErrorEvent).error)\n return this\n }\n\n const ev: CloudbaseEvent = isString(event) ? new CloudbaseEvent(event as string, data || {}) : event as CloudbaseEvent\n\n const { name } = ev\n\n if (this.listens(name)) {\n ev.target = this\n\n const handlers = this.listeners[name] ? [...this.listeners[name]] : []\n for (const fn of handlers) {\n fn.call(this, ev)\n }\n }\n\n return this\n }\n\n /**\n * @private\n * @method listens - 判断是否监听了name事件\n * @param {string} name - event名称\n * @return `boolean`\n */\n private listens(name: string): boolean {\n return this.listeners[name] && this.listeners[name].length > 0\n }\n}\n\n\nconst eventEmitter = new CloudbaseEventEmitter()\n\nexport function addEventListener(event: string, callback: Function) {\n eventEmitter.on(event, callback)\n}\n\nexport function activateEvent(event: string, data: any = {}) {\n eventEmitter.fire(event, data)\n}\n\nexport function removeEventListener(event: string, callback: Function) {\n eventEmitter.off(event, callback)\n}\n","import { CloudbaseEventEmitter } from './events'\n\nexport const bus = new CloudbaseEventEmitter()\n\nexport const LANG_CHANGE_EVENT = 'lang_change'\n","import { KV } from '@cloudbase/types'\nimport { getSdkName } from '../constants'\n\nexport function isArray(val: any): boolean {\n return Object.prototype.toString.call(val) === '[object Array]'\n}\nexport function isString(val: any): boolean {\n return typeof val === 'string'\n}\nexport function isUndefined(val: any): boolean {\n return typeof val === 'undefined'\n}\nexport function isPalinObject(val: any): boolean {\n return Object.prototype.toString.call(val) === '[object Object]'\n}\nexport function isNull(val: any): boolean {\n return Object.prototype.toString.call(val) === '[object Null]'\n}\nexport function isInstanceOf(instance: any, construct: any): boolean {\n return instance instanceof construct\n}\nexport function isFormData(val: any): boolean {\n return Object.prototype.toString.call(val) === '[object FormData]'\n}\nexport function genSeqId(): string {\n return Math.random().toString(16)\n .slice(2)\n}\nexport function generateRequestId() {\n let d = new Date().getTime()\n let d2 = (Date?.now && Date.now() * 1000) || 0\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n let r = Math.random() * 16\n if (d > 0) {\n r = (d + r) % 16 | 0\n d = Math.floor(d / 16)\n } else {\n r = (d2 + r) % 16 | 0\n d2 = Math.floor(d2 / 16)\n }\n return (c === 'x' ? r : (r & 0x7) | 0x8).toString(16)\n })\n}\nexport function formatUrl(PROTOCOL: string, url: string, query: KV<any> = {}): string {\n const urlHasQuery = /\\?/.test(url)\n let queryString = ''\n Object.keys(query).forEach((key) => {\n if (queryString === '') {\n !urlHasQuery && (url += '?')\n } else {\n queryString += '&'\n }\n queryString += `${key}=${encodeURIComponent(query[key])}`\n })\n url += queryString\n if (/^http(s)?:\\/\\//.test(url)) {\n return url\n }\n return `${PROTOCOL}${url}`\n}\n\nexport function toQueryString(query: KV<any> = {}) {\n const queryString = []\n Object.keys(query).forEach((key) => {\n queryString.push(`${key}=${encodeURIComponent(query[key])}`)\n })\n return queryString.join('&')\n}\n\nexport function getQuery(name: string, url?: string) {\n if (typeof window === 'undefined') {\n return false\n }\n // 参数:变量名,url为空则表从当前页面的url中取\n const u = url || decodeURIComponent(window.location.search)\n const reg = new RegExp(`(^|&)${name}=([^&]*)(&|$)`)\n const r = u.substr(u.indexOf('?') + 1).match(reg)\n return r !== null && r !== undefined ? r[2] : ''\n}\n\nexport const getHash = function (name: string) {\n if (typeof window === 'undefined') {\n return ''\n }\n const matches = window.location.hash.match(new RegExp(`[#?&/]${name}=([^&#]*)`))\n return matches ? matches[1] : ''\n}\n\nexport function removeParam(key: string, sourceURL: string) {\n let rtn = sourceURL.split('?')[0]\n let param\n let params = []\n const queryString = sourceURL.indexOf('?') !== -1 ? sourceURL.split('?')[1] : ''\n if (queryString !== '') {\n params = queryString.split('&')\n for (let i = params.length - 1; i >= 0; i -= 1) {\n /* eslint-disable-next-line */\n param = params[i].split('=')[0]\n if (param === key) {\n params.splice(i, 1)\n }\n }\n rtn = `${rtn}?${params.join('&')}`\n }\n return rtn\n}\n\nexport function createPromiseCallback() {\n let cb: any = {}\n if (!Promise) {\n cb = () => {}\n cb.promise = {}\n\n const throwPromiseNotDefined = () => {\n throw new Error('Your Node runtime does support ES6 Promises. '\n + 'Set \"global.Promise\" to your preferred implementation of promises.',)\n }\n\n Object.defineProperty(cb.promise, 'then', { get: throwPromiseNotDefined })\n Object.defineProperty(cb.promise, 'catch', { get: throwPromiseNotDefined })\n return cb\n }\n\n const promise = new Promise((resolve, reject) => {\n cb = (err, data) => {\n if (err) return reject(err)\n return resolve(data)\n }\n })\n cb.promise = promise\n return cb\n}\n\nexport function execCallback(fn: Function | null | undefined, err: any, data = null) {\n if (fn && typeof fn === 'function') {\n return fn(err, data)\n }\n if (err) {\n throw err\n }\n return data\n}\n\nexport function printWarn(error: string, msg: string) {\n console.warn(`[${getSdkName()}][${error}]:${msg}`)\n}\n\nexport function printError(error: string, msg: string) {\n console.error({\n code: error,\n msg: `[${getSdkName()}][${error}]:${msg}`,\n })\n}\nexport function printInfo(error: string, msg: string) {\n console.log(`[${getSdkName()}][${error}]:${msg}`)\n}\nexport function throwError(error: string, msg: string) {\n throw new Error(JSON.stringify({\n code: error,\n msg: `[${getSdkName()}][${error}]:${msg}`,\n }),)\n}\n\ninterface IPrintGroupLogOptions {\n title: string\n subtitle: string | object\n content: {\n type: 'info' | 'warn' | 'error'\n body: string | Error\n }[]\n printTrace?: boolean\n collapsed?: boolean\n}\nexport function printGroupLog(options: IPrintGroupLogOptions) {\n const { title, subtitle = '', content = [], printTrace = false, collapsed = false } = options\n if (collapsed) {\n (console.groupCollapsed || console.error)(title, subtitle)\n } else {\n (console.group || console.error)(title, subtitle)\n }\n for (const tip of content) {\n const { type, body } = tip\n switch (type) {\n case 'info':\n console.log(body)\n break\n case 'warn':\n console.warn(body)\n break\n case 'error':\n console.error(body)\n break\n }\n }\n if (printTrace) {\n (console.trace || console.log)('stack trace:')\n }\n console.groupEnd?.()\n}\n\nexport const sleep = (ms = 0) => new Promise(r => setTimeout(r, ms))\n\nexport function transformPhone(phoneNumber: string) {\n return `+86${phoneNumber}`\n}\n\nexport const parseQueryString = (queryString) => {\n queryString = queryString.replace(/^\\?/, '')\n const params = {}\n const pairs = queryString.split('&')\n\n pairs.forEach((item) => {\n let [key, value] = item.split('=')\n key = decodeURIComponent(key)\n value = decodeURIComponent(value)\n if (key) {\n if (params[key]) {\n if (Array.isArray(params[key])) {\n params[key].push(value)\n } else {\n params[key] = [params[key], value]\n }\n } else {\n params[key] = value\n }\n }\n })\n\n return params\n}\n\n// 解析URL参数\nexport function parseCaptcha(url) {\n let queryObj: any = {}\n const matched = url.match(/^(data:.*?)(\\?[^#\\s]*)?$/)\n if (matched) {\n // eslint-disable-next-line prefer-destructuring\n url = matched[1]\n const search = matched[2]\n if (search) {\n queryObj = parseQueryString(search)\n }\n }\n const { token, ...restQueryObj } = queryObj\n if (/^data:/.test(url) && !token) {\n return {\n error: 'invalid_argument',\n error_description: `invalid captcha data: ${url}`,\n }\n }\n if (!token) {\n return {\n error: 'unimplemented',\n error_description: 'need to impl captcha data',\n }\n }\n // 解析url得到的参数\n return {\n state: restQueryObj.state,\n token, // 验证码token\n captchaData: url, // 验证码base64图片\n }\n}\n","// 空模块占位文件,用于 webpack 解析纯类型包(@cloudbase/types)的子路径引用\n// 这些引用只有 TypeScript 类型,编译后会被擦除,运行时不需要任何内容\nmodule.exports = {}\n","module.exports = require(\"@cloudbase/adapter-interface\");","module.exports = require(\"jwt-decode\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n"],"names":["EUploadMethod","errors_1","require","utilities_1","storage_1","getSdkName","constants","ERRORS","COMMUNITY_SITE_URL","isArray","utils","isString","isPalinObject","execCallback","catchErrorsDecorator","helpers","exports","storageGateWay","request","params","customReqOpts","__awaiter","gateWay","path","name","data","objectId","headers","signedHeader","Object","keys","reduce","res","v","__assign","_a","_b","sent","code","authorization","token","url","uploadUrl","fileId","cloudObjectId","cosFileId","cloudObjectMeta","download_url","downloadUrl","convertedFileList","map","fileid","download_list","message","fileID","tempFileURL","fileList","delete_list","srcPath","src_path","dstPath","dst_path","overwrite","removeOriginal","remove_original","copy_list","CloudbaseStorage","prototype","isGateWay","this","config","endPointMode","uploadFile","callback","Promise","cloudPath","filePath","onUploadProgress","method","fileContent","Error","JSON","stringify","INVALID_PARAMS","msg","concat","COMPONENT_NAME","uploadMethod","put","post","toLocaleLowerCase","getUploadMetadata","undefined","metadataResult","_d","metadata","requestId","putParams","commonParams","file","postParams","key","signature","success_action_status","_c","isSuccess","uploadConfig","upload","statusCode","OPERATION_FAIL","action","metaData","metaDataParam","send","err_1","deleteFile","length","_i","fileList_1","fileid_list","getTempFileURL","fileList_2","hasOwnProperty","call","push","max_age","maxAge","file_list","downloadFile","tmpUrlRes","tmpUrl","encodeURI","download","tempFilePath","result","copyFile","fileList_3","getFileInfo","fileInfo","all","item","_this","fetch","header","Headers","fromEntries","entries","fileSize","parseInt","contentType","includes","Number","cloudId","fileName","split","pop","mime","trim","size","etag","lastModified","cacheControl","e_1","__decorate","customInfo","className","methodName","title","messages","Function","_e","_f","ICloudbaseDeleteFileParams","_g","_h","_j","ICloudbaseGetTempFileURLParams","_k","_l","_m","ICloudbaseDownloadFileParams","_o","_p","_q","ICloudbaseCopyFileParams","_r","_s","_t","storage","component","entity","SupabaseFileAPILikeStorage","_super","context","shouldThrowOnError","bucketId","__extends","defineProperty","throwOnError","from","bucket","fileBody","fileOptions","options","upsert","_getCloudPath","uploadFileParams","toBase64","id","fullPath","error","error_1","isStorageError","uploadToSignedUrl","_token","createSignedUploadUrl","signedUrl","error_2","StorageError","update","move","fromPath","toPath","error_3","copy","error_4","createSignedUrl","expiresIn","_normalizeCloudId","queryParams","encodeURIComponent","transform","transformQuery","_transformOptsToQueryString","separator","join","error_5","createSignedUrls","paths","p","index","error_6","signedUrlResult","reqClass","get","responseType","Blob","error_7","info","pathOrFileId","isFileId","startsWith","displayName","_extractPathFromFileId","_extractBucketFromFileId","now","Date","toISOString","version","updatedAt","createdAt","lastAccessedAt","error_8","exists","error_9","getPublicUrl","publicUrl","remove","chunkSize_1","pathChunks","i","slice","chunk","fileInfoResults","fileInfoMap_1","Map","flat","forEach","set","Math","floor","failedFiles","filter","now_1","bucket_id","owner","updated_at","created_at","last_accessed_at","buckets","public","error_10","list","replace","test","cleanPath","envId","env","Buffer","toString","btoa","width","height","resize","format","quality","max","min","parts","envAndBucket","dotIndex","indexOf","substring","supabaseComponent","IIFE","storageCache","WeakMap","has","instance","Proxy","_target","prop","configurable","enumerable","cloudbase","registerComponent","e","registerStorage","app","console","warn","window","__isStorageError","StorageApiError","status","toJSON","StorageUnknownError","originalError","RUNTIME","Web","__importStar","util_1","adapters","adapterList_1","adapter","isMatch","genAdapter","runtime","WEB","adapter_interface_1","common_1","WebRequest","timeout","timeoutMsg","restrictedMethods","reqMethod","toLowerCase","formData","FormData","append","body","URL","createObjectURL","decodeURIComponent","pathname","link","document","createElement","href","setAttribute","style","display","appendChild","click","revokeObjectURL","removeChild","resolve","abortController","AbortController","enableAbort","stream","signal","_timeout","aborted","abort","addEventListener","timer","setTimeout","then","response","clearTimeout","ok","reject","json","apply","catch","x","text","String","payload","withCredentials","realUrl","formatUrl","getProtocol","ajax","XMLHttpRequest","open","setRequestHeader","onreadystatechange","readyState","arr","getAllResponseHeaders","headerMap_1","line","shift","value","parse","responseText","isFormData","toQueryString","AbstractSDKRequest","type","root","wsClass","WebSocket","localStorage","sdkName","PROTOCOL","protocol","INVALID_SYNTAX","INVALID_OPERATION","NETWORK_ERROR","UNKOWN_ERROR","__exportStar","constants_1","isFirefox","navigator","userAgent","REG_STACK_DECORATE","REG_STACK_LINK","getRewritedError","err","sourceLink","innerErr","innerErrStack","stack","REG_STACK_INNER_METHOD","RegExp","REG_STACK_INNER_METHOD_WITHOUT_LINK","indexOfSource","findIndex","str","realErrStack","unshift","mode","target","descriptor","IS_DEBUG_MODE","constructor","fnName","fn","outterErrStacks","indexOfDecorator","match","exec","getSourceLink","args","arguments","failErr","errMsg","errorDescription","error_description","logs","content","subtitle","printGroupLog","cache","events","langEvent","abortController_1","__importDefault","default","jwt","decode","listeners","f","TcbCacheObject","tcbCacheObject","setItem","getItem","removeItem","clear","AbstractStorage","CloudbaseCache","persistence","platformInfo","persistenceTag","primaryStorage","printWarn","createStorage","setStore","val","setStoreAsync","getStore","process","tcb_token","getStoreAsync","removeStore","removeStoreAsync","CloudbaseEvent","IErrorEvent","CloudbaseEventEmitter","on","listener","customeAddEventListener","off","splice","customRemoveEventListener","fire","event","isInstanceOf","ev","listens","handlers_1","__spreadArray","eventEmitter","events_1","construct","random","d","getTime","d2","c","r","query","urlHasQuery","queryString","u","location","search","reg","substr","matches","hash","sourceURL","rtn","cb","promise","throwPromiseNotDefined","log","printTrace","collapsed","groupCollapsed","group","content_1","tip","trace","groupEnd","ms","phoneNumber","Array","queryObj","matched","parseQueryString","restQueryObj","__rest","state","captchaData","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// report 接口传参结构
|
|
2
|
+
export interface IReportData {
|
|
3
|
+
report_type: string, // 上报场景 如电商 mall,游戏 game
|
|
4
|
+
report_data: {
|
|
5
|
+
action_time?: number, // 非必填 行为发生时,客户端的时间点,单位s
|
|
6
|
+
action_type: string, // 必填 行为类型 如 访问 visit_store,分享 share,加入购物车 add_to_cart等
|
|
7
|
+
click_id?: string, // 非必填 广告平台会在URL增加click_id
|
|
8
|
+
action_param?: { // 非必填
|
|
9
|
+
value?: number, // 非必填 行为所带的参数,转化行为价值(例如金额)
|
|
10
|
+
leads_type?: string // 非必填 行为来源,目前支持PHONE(电话直呼),RESERVE(表单预约)
|
|
11
|
+
},
|
|
12
|
+
product_param?: { // 非必填
|
|
13
|
+
product_yun_type?: string, // 非必填 商品 goods ,优惠券 coupon, 搜索词 search_term
|
|
14
|
+
product_yun_id?: string, // 非必填 商品id
|
|
15
|
+
product_yun_category?: string, // 非必填 商品类目 自定义
|
|
16
|
+
product_yun_keywords?: string, // 非必填 商品关键词
|
|
17
|
+
product_yun_price?: number, // 非必填 商品原价
|
|
18
|
+
product_yun_value?: number, // 非必填 商品成交价
|
|
19
|
+
product_yun_name?: string, // 非必填 商品名
|
|
20
|
+
product_yun_id_ad?: string, // 非必填 广告商品库中商品id
|
|
21
|
+
product_yun_category_ad?: string // 非必填 广告商品库中商品类目
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// 上报数据结构
|
|
27
|
+
export interface IAnalyticsDataItem {
|
|
28
|
+
analytics_scene: string, // 上报场景 如电商 mall,游戏 game
|
|
29
|
+
analytics_data: { // 场景模板内容,以电商模板举例
|
|
30
|
+
openid?: string, // 必填 用户openid
|
|
31
|
+
wechat_mini_program_appid?: string, // 必填小程序appid
|
|
32
|
+
action_time: number, // 必填 行为发生时,客户端的时间点,单位s
|
|
33
|
+
action_type: string, // 必填 行为类型 如 访问 visit_store,分享 share,加入购物车 add_to_cart等
|
|
34
|
+
click_id?: string, // 非必填 广告平台会在URL增加click_id
|
|
35
|
+
action_param?: { // 非必填
|
|
36
|
+
value?: number, // 非必填 行为所带的参数,转化行为价值(例如金额)
|
|
37
|
+
leads_type?: string // 非必填 行为来源,目前支持PHONE(电话直呼),RESERVE(表单预约)
|
|
38
|
+
},
|
|
39
|
+
product_param?: { // 非必填
|
|
40
|
+
product_yun_type?: string, // 非必填 商品 goods ,优惠券 coupon, 搜索词 search_term
|
|
41
|
+
product_yun_id?: string, // 非必填 商品id
|
|
42
|
+
product_yun_category?: string, // 非必填 商品类目 自定义
|
|
43
|
+
product_yun_keywords?: string, // 非必填 商品关键词
|
|
44
|
+
product_yun_price?: number, // 非必填 商品原价
|
|
45
|
+
product_yun_value?: number, // 非必填 商品成交价
|
|
46
|
+
product_yun_name?: string, // 非必填 商品名
|
|
47
|
+
product_yun_id_ad?: string, // 非必填 广告商品库中商品id
|
|
48
|
+
product_yun_category_ad?: string // 非必填 广告商品库中商品类目
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|