From cb3410d8e3fc4a8aef9990d54e63ac3dba29f2c7 Mon Sep 17 00:00:00 2001 From: danial Date: Sun, 27 Apr 2025 16:29:44 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=94=A7=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 8 + .drone.yml | 49 + .env.development | 2 + .env.production | 1 + .gitignore | 7 + .hintrc | 8 + .husky/commit-msg | 1 + .husky/pre-commit | 4 + .prettierignore | 7 + .prettierrc.js | 23 + .tool-versions | 1 + .trae/rules/project_rules.md | 3 + commitlint.config.js | 33 + components.d.ts | 15 + config/plugin/arcoResolver.ts | 19 + config/plugin/arcoStyleImport.ts | 12 + config/plugin/compress.ts | 34 + config/plugin/imagemin.ts | 37 + config/plugin/visualizer.ts | 18 + config/utils/index.ts | 9 + config/vite.config.base.mts | 56 + config/vite.config.dev.mts | 19 + config/vite.config.prod.mts | 38 + deploy/Dockerfile | 33 + deploy/docker-compose-local.yml | 19 + deploy/docker-compose.yml | 24 + deploy/nginx/default.conf | 23 + eslint.config.js | 154 + index.html | 17 + openapitools.json | 7 + pnpm-lock.yaml | 10883 +++++++ pnpm-workspace.yaml | 7 + public/assets/demo.zip | Bin 0 -> 2255 bytes .../AB4467C3-FA86-069A-99BB-C3997694311C.png | Bin 0 -> 22148 bytes src/App.vue | 10 + src/api/apple-card-info.ts | 125 + src/api/apple-card-recharge-history.ts | 125 + src/api/apple-card-steal-settings.ts | 71 + src/api/card-jd-account.ts | 117 + src/api/card-jd-oder.ts | 160 + src/api/card-walmart-account.ts | 124 + src/api/card-walmart-order.ts | 123 + src/api/common.ts | 15 + src/api/dashboard.ts | 22 + src/api/generated/.gitignore | 4 + src/api/generated/.npmignore | 1 + src/api/generated/.openapi-generator-ignore | 23 + src/api/generated/.openapi-generator/FILES | 343 + src/api/generated/.openapi-generator/VERSION | 1 + src/api/generated/api.ts | 17 + src/api/generated/apis/ck-api.ts | 1198 + src/api/generated/apis/default-api.ts | 24694 ++++++++++++++++ src/api/generated/apis/totpapi.ts | 518 + src/api/generated/base.ts | 91 + src/api/generated/common.ts | 202 + src/api/generated/configuration.ts | 132 + src/api/generated/git_push.sh | 57 + src/api/generated/index.ts | 17 + src/api/generated/models/index.ts | 331 + ...e-v1-apple-card-list-record-upload-user.ts | 39 + ...rd-info-apple-v1-apple-card-list-record.ts | 133 + ...nfo-apple-v1-call-back-order-manual-req.ts | 33 + ...nfo-apple-v1-card-history-info-list-req.ts | 57 + ...nfo-apple-v1-card-history-info-list-res.ts | 37 + ...i-card-info-apple-v1-card-history-model.ts | 81 + ...le-v1-card-info-batch-add-from-xlsx-req.ts | 27 + ...le-v1-card-info-batch-add-from-xlsx-res.ts | 27 + ...card-info-apple-v1-card-info-create-req.ts | 51 + ...card-info-apple-v1-card-info-delete-req.ts | 27 + ...i-card-info-apple-v1-card-info-list-req.ts | 51 + ...i-card-info-apple-v1-card-info-list-res.ts | 37 + ...le-v1-card-info-suspend-or-continue-req.ts | 27 + ...card-info-apple-v1-card-info-update-req.ts | 57 + ...fo-apple-v1-card-info-update-status-req.ts | 48 + ...i-api-card-info-apple-v1-config-get-res.ts | 57 + ...i-api-card-info-apple-v1-config-set-req.ts | 57 + ...le-v1-recharge-duplicated-card-pass-req.ts | 27 + ...card-info-apple-v1-recharge-handler-req.ts | 27 + ...card-info-apple-v1-recharge-handler-res.ts | 57 + ...info-apple-v1-recharge-history-list-req.ts | 27 + ...info-apple-v1-recharge-history-list-res.ts | 31 + ...o-apple-v1-recharge-itunes-callback-req.ts | 80 + ...nfo-apple-v1-recharge-list-download-req.ts | 75 + ...pi-card-info-apple-v1-recharge-list-req.ts | 99 + ...pi-card-info-apple-v1-recharge-list-res.ts | 37 + ...recharge-order-modify-actual-amount-req.ts | 39 + ...pple-v1-recharge-order-reset-status-req.ts | 33 + ...fo-apple-v1-recharge-steal-rule-add-req.ts | 71 + ...apple-v1-recharge-steal-rule-delete-req.ts | 27 + ...o-apple-v1-recharge-steal-rule-list-req.ts | 45 + ...o-apple-v1-recharge-steal-rule-list-res.ts | 37 + ...1-recharge-steal-rule-status-update-req.ts | 42 + ...apple-v1-recharge-steal-rule-update-req.ts | 77 + ...apple-v1-recharge-steal-setting-get-res.ts | 35 + ...nfo-apple-v1-recharge-steal-setting-req.ts | 35 + ...info-apple-v1-recharge-submit-query-req.ts | 27 + ...info-apple-v1-recharge-submit-query-res.ts | 56 + ...-card-info-apple-v1-recharge-submit-req.ts | 69 + ...-card-info-apple-v1-recharge-submit-res.ts | 62 + ...o-ctrip-v1-account-cookie-batch-add-req.ts | 31 + ...ctrip-v1-account-cookie-batch-check-req.ts | 27 + ...ctrip-v1-account-cookie-batch-check-res.ts | 37 + ...info-ctrip-v1-account-cookie-batch-info.ts | 75 + ...-info-ctrip-v1-account-cookie-check-req.ts | 27 + ...-info-ctrip-v1-account-cookie-check-res.ts | 51 + ...i-card-info-ctrip-v1-account-create-req.ts | 57 + ...i-card-info-ctrip-v1-account-delete-req.ts | 27 + ...-card-info-ctrip-v1-account-list-record.ts | 163 + ...api-card-info-ctrip-v1-account-list-req.ts | 63 + ...api-card-info-ctrip-v1-account-list-res.ts | 37 + ...nfo-ctrip-v1-account-refresh-status-req.ts | 27 + ...i-card-info-ctrip-v1-account-update-req.ts | 57 + ...info-ctrip-v1-account-update-status-req.ts | 48 + ...d-info-ctrip-v1-account-wallet-list-req.ts | 51 + ...d-info-ctrip-v1-account-wallet-list-res.ts | 37 + .../kami-api-card-info-ctrip-v1-list-req.ts | 81 + .../kami-api-card-info-ctrip-v1-list-res.ts | 37 + ...i-card-info-ctrip-v1-order-callback-req.ts | 27 + ...pi-card-info-ctrip-v1-order-history-req.ts | 27 + ...pi-card-info-ctrip-v1-order-history-res.ts | 31 + ...ard-info-ctrip-v1-redeem-config-get-res.ts | 57 + ...ard-info-ctrip-v1-redeem-config-set-req.ts | 57 + .../kami-api-card-info-ctrip-v1-submit-req.ts | 57 + ...fo-jd-v1-jdaccount-cookie-batch-add-req.ts | 31 + ...-jd-v1-jdaccount-cookie-batch-check-req.ts | 27 + ...-jd-v1-jdaccount-cookie-batch-check-res.ts | 37 + ...-info-jd-v1-jdaccount-cookie-batch-info.ts | 75 + ...d-info-jd-v1-jdaccount-cookie-check-req.ts | 27 + ...d-info-jd-v1-jdaccount-cookie-check-res.ts | 51 + ...pi-card-info-jd-v1-jdaccount-create-req.ts | 57 + ...pi-card-info-jd-v1-jdaccount-delete-req.ts | 27 + ...i-card-info-jd-v1-jdaccount-list-record.ts | 163 + ...-api-card-info-jd-v1-jdaccount-list-req.ts | 63 + ...-api-card-info-jd-v1-jdaccount-list-res.ts | 37 + ...info-jd-v1-jdaccount-refresh-status-req.ts | 27 + ...pi-card-info-jd-v1-jdaccount-update-req.ts | 63 + ...-info-jd-v1-jdaccount-update-status-req.ts | 48 + ...rd-info-jd-v1-jdaccount-wallet-list-req.ts | 51 + ...rd-info-jd-v1-jdaccount-wallet-list-res.ts | 37 + ...mi-api-card-info-jd-v1-jdconfig-get-res.ts | 57 + ...mi-api-card-info-jd-v1-jdconfig-set-req.ts | 57 + .../kami-api-card-info-jd-v1-list-req.ts | 81 + .../kami-api-card-info-jd-v1-list-res.ts | 37 + ...-api-card-info-jd-v1-order-callback-req.ts | 27 + ...i-api-card-info-jd-v1-order-history-req.ts | 27 + ...i-api-card-info-jd-v1-order-history-res.ts | 31 + ...-card-info-jd-v1-order-summary-list-req.ts | 51 + ...-card-info-jd-v1-order-summary-list-res.ts | 37 + ...pi-card-info-jd-v1-order-summary-record.ts | 93 + .../kami-api-card-info-jd-v1-submit-req.ts | 57 + ...original-jdaccount-cookie-batch-add-req.ts | 31 + ...iginal-jdaccount-cookie-batch-check-req.ts | 27 + ...iginal-jdaccount-cookie-batch-check-res.ts | 37 + ...v1-original-jdaccount-cookie-batch-info.ts | 75 + ...-v1-original-jdaccount-cookie-check-req.ts | 27 + ...-v1-original-jdaccount-cookie-check-res.ts | 51 + ...nal-jd-v1-original-jdaccount-create-req.ts | 57 + ...nal-jd-v1-original-jdaccount-delete-req.ts | 27 + ...al-jd-v1-original-jdaccount-list-record.ts | 163 + ...ginal-jd-v1-original-jdaccount-list-req.ts | 63 + ...ginal-jd-v1-original-jdaccount-list-res.ts | 37 + ...1-original-jdaccount-refresh-status-req.ts | 27 + ...nal-jd-v1-original-jdaccount-update-req.ts | 51 + ...v1-original-jdaccount-update-status-req.ts | 49 + ...d-v1-original-jdaccount-wallet-list-req.ts | 52 + ...d-v1-original-jdaccount-wallet-list-res.ts | 37 + ...mall-game-v1-call-back-order-manual-req.ts | 33 + ...rd-info-tmall-game-v1-shop-order-record.ts | 129 + ...all-game-account-authorize-callback-req.ts | 42 + ...mall-game-account-authorize-get-key-res.ts | 33 + ...l-game-v1-tmall-game-account-create-req.ts | 27 + ...l-game-v1-tmall-game-account-delete-req.ts | 27 + ...1-tmall-game-account-get-one-random-req.ts | 33 + ...1-tmall-game-account-get-one-random-res.ts | 27 + ...all-game-v1-tmall-game-account-list-req.ts | 51 + ...all-game-v1-tmall-game-account-list-res.ts | 37 + ...mall-game-account-tmall-auth-status-res.ts | 33 + ...l-game-v1-tmall-game-account-toggle-req.ts | 27 + ...l-game-v1-tmall-game-agiso-callback-req.ts | 65 + ...e-v1-tmall-game-daily-order-summary-req.ts | 66 + ...e-v1-tmall-game-daily-order-summary-res.ts | 37 + ...-tmall-game-v1-tmall-game-data-sync-req.ts | 33 + ...-tmall-game-v1-tmall-game-data-sync-res.ts | 67 + ...tmall-game-v1-tmall-game-order-category.ts | 33 + ...tmall-game-v1-tmall-game-order-list-req.ts | 100 + ...tmall-game-v1-tmall-game-order-list-res.ts | 37 + ...ll-game-order-modify-status-succeed-req.ts | 33 + ...-v1-tmall-game-order-query-category-req.ts | 33 + ...-v1-tmall-game-order-query-category-res.ts | 31 + ...ame-v1-tmall-game-order-query-order-req.ts | 27 + ...ame-v1-tmall-game-order-query-order-res.ts | 69 + ...all-game-v1-tmall-game-order-submit-req.ts | 90 + ...all-game-v1-tmall-game-order-submit-res.ts | 47 + ...me-v1-tmall-game-shop-order-get-one-req.ts | 27 + ...me-v1-tmall-game-shop-order-get-one-res.ts | 135 + ...me-v1-tmall-game-shop-order-history-req.ts | 27 + ...me-v1-tmall-game-shop-order-history-res.ts | 31 + ...-game-v1-tmall-game-shop-order-list-req.ts | 75 + ...-game-v1-tmall-game-shop-order-list-res.ts | 37 + ...tmall-game-shop-order-tmall-history-req.ts | 27 + ...tmall-game-shop-order-tmall-history-res.ts | 31 + ...info-tmall-game-v1-tmall-game-stats-req.ts | 27 + ...info-tmall-game-v1-tmall-game-stats-res.ts | 81 + ...-game-v1-tmall-game-summary-list-record.ts | 57 + ...-game-v1-tmall-list-record-account-info.ts | 33 + ...all-game-v1-tmall-list-record-shop-info.ts | 39 + ...rd-info-tmall-game-v1-tmall-list-record.ts | 142 + ...walmart-v1-account-cookie-batch-add-req.ts | 31 + ...lmart-v1-account-cookie-batch-check-req.ts | 27 + ...lmart-v1-account-cookie-batch-check-res.ts | 37 + ...fo-walmart-v1-account-cookie-batch-info.ts | 75 + ...nfo-walmart-v1-account-cookie-check-req.ts | 27 + ...nfo-walmart-v1-account-cookie-check-res.ts | 51 + ...card-info-walmart-v1-account-create-req.ts | 63 + ...walmart-v1-account-daily-summary-record.ts | 106 + ...fo-walmart-v1-account-daily-summary-req.ts | 57 + ...fo-walmart-v1-account-daily-summary-res.ts | 37 + ...card-info-walmart-v1-account-delete-req.ts | 27 + ...i-api-card-info-walmart-v1-account-info.ts | 109 + ...ard-info-walmart-v1-account-list-record.ts | 163 + ...i-card-info-walmart-v1-account-list-req.ts | 75 + ...i-card-info-walmart-v1-account-list-res.ts | 37 + ...i-card-info-walmart-v1-account-load-req.ts | 51 + ...o-walmart-v1-account-refresh-status-req.ts | 27 + ...fo-walmart-v1-account-status-detect-req.ts | 27 + ...fo-walmart-v1-account-status-detect-res.ts | 27 + ...nfo-walmart-v1-account-status-reset-req.ts | 27 + ...walmart-v1-account-summary-download-req.ts | 57 + ...card-info-walmart-v1-account-update-req.ts | 69 + ...fo-walmart-v1-account-update-status-req.ts | 48 + ...info-walmart-v1-account-wallet-list-req.ts | 51 + ...info-walmart-v1-account-wallet-list-res.ts | 37 + ...-walmart-v1-card-redeem-account-summary.ts | 79 + ...-api-card-info-walmart-v1-group-add-req.ts | 33 + ...card-info-walmart-v1-group-all-list-res.ts | 37 + ...i-card-info-walmart-v1-group-delete-req.ts | 27 + ...api-card-info-walmart-v1-group-list-req.ts | 45 + ...api-card-info-walmart-v1-group-list-res.ts | 37 + ...api-card-info-walmart-v1-group-stat-req.ts | 57 + ...api-card-info-walmart-v1-group-stat-res.ts | 37 + ...i-card-info-walmart-v1-group-update-req.ts | 39 + .../kami-api-card-info-walmart-v1-list-req.ts | 87 + .../kami-api-card-info-walmart-v1-list-res.ts | 37 + ...card-info-walmart-v1-order-callback-req.ts | 27 + ...-card-info-walmart-v1-order-history-req.ts | 27 + ...-card-info-walmart-v1-order-history-res.ts | 31 + ...-info-walmart-v1-order-status-reset-req.ts | 27 + ...-info-walmart-v1-order-summary-list-req.ts | 51 + ...-info-walmart-v1-order-summary-list-res.ts | 37 + ...rd-info-walmart-v1-order-summary-record.ts | 93 + ...d-info-walmart-v1-redeem-config-get-res.ts | 84 + ...d-info-walmart-v1-redeem-config-set-req.ts | 84 + ...ami-api-card-info-walmart-v1-submit-req.ts | 57 + ...ard-redeem-account-group-entity-account.ts | 39 + ...-v1-v1-card-redeem-account-group-entity.ts | 61 + ...i-api-card-redeem-jd-v1-account-add-req.ts | 53 + ...pi-card-redeem-jd-v1-account-delete-req.ts | 27 + ...i-api-card-redeem-jd-v1-account-get-req.ts | 27 + ...i-api-card-redeem-jd-v1-account-get-res.ts | 83 + ...-api-card-redeem-jd-v1-account-list-req.ts | 70 + ...-api-card-redeem-jd-v1-account-list-res.ts | 37 + ...pi-card-redeem-jd-v1-account-status-req.ts | 41 + ...pi-card-redeem-jd-v1-account-update-req.ts | 59 + .../kami-api-card-redeem-jd-v1-cookie-info.ts | 83 + ...mi-api-card-redeem-jd-v1-order-list-req.ts | 71 + ...mi-api-card-redeem-jd-v1-order-list-res.ts | 37 + ...api-card-redeem-jd-v1-order-list-schema.ts | 97 + ...i-api-card-redeem-jd-v1-place-order-req.ts | 33 + ...i-api-card-redeem-jd-v1-place-order-res.ts | 60 + ...kami-api-channel-v2-entrance-create-req.ts | 85 + ...kami-api-channel-v2-entrance-delete-req.ts | 27 + .../kami-api-channel-v2-entrance-list-req.ts | 51 + .../kami-api-channel-v2-entrance-list-res.ts | 37 + .../kami-api-channel-v2-entrance-params.ts | 33 + ...kami-api-channel-v2-entrance-update-req.ts | 91 + ...i-api-merchant-v1-merchant-all-list-res.ts | 37 + ...api-merchant-v1-merchant-config-add-req.ts | 51 + ...-merchant-v1-merchant-config-detail-req.ts | 27 + ...-merchant-v1-merchant-config-detail-res.ts | 51 + ...pi-merchant-v1-merchant-config-list-req.ts | 57 + ...pi-merchant-v1-merchant-config-list-res.ts | 37 + ...-merchant-v1-merchant-config-status-req.ts | 33 + ...-merchant-v1-merchant-config-update-req.ts | 51 + ...api-merchant-v1-merchant-deploy-add-req.ts | 115 + ...-merchant-v1-merchant-deploy-delete-req.ts | 33 + ...chant-v1-merchant-deploy-get-detail-req.ts | 27 + ...chant-v1-merchant-deploy-get-detail-res.ts | 157 + ...pi-merchant-v1-merchant-deploy-list-req.ts | 27 + ...pi-merchant-v1-merchant-deploy-list-res.ts | 31 + ...-api-merchant-v1-merchant-deploy-record.ts | 157 + ...-merchant-v1-merchant-deploy-update-req.ts | 121 + ...rchant-v1-merchant-hidden-config-entity.ts | 111 + ...mi-api-merchant-v1-merchant-info-record.ts | 141 + ...-api-merchant-v1-merchant-steal-set-req.ts | 33 + ...kami-api-merchant-v1-order-query-record.ts | 51 + .../kami-api-merchant-v1-order-query-req.ts | 27 + .../kami-api-merchant-v1-order-query-res.ts | 55 + ...mi-api-merchant-v1-platform-rate-record.ts | 63 + ...merchant-v1-recharge-steal-rule-add-req.ts | 71 + ...chant-v1-recharge-steal-rule-delete-req.ts | 27 + ...erchant-v1-recharge-steal-rule-list-req.ts | 45 + ...erchant-v1-recharge-steal-rule-list-res.ts | 37 + ...1-recharge-steal-rule-status-update-req.ts | 41 + ...chant-v1-recharge-steal-rule-update-req.ts | 77 + ...chant-v1-recharge-steal-setting-get-res.ts | 27 + ...-merchant-v1-recharge-steal-setting-req.ts | 35 + .../kami-api-merchant-v1-steal-create-req.ts | 87 + .../kami-api-merchant-v1-steal-delete-req.ts | 27 + .../kami-api-merchant-v1-steal-list-req.ts | 45 + .../kami-api-merchant-v1-steal-list-res.ts | 37 + ...i-api-merchant-v1-steal-record-list-req.ts | 45 + ...i-api-merchant-v1-steal-record-list-res.ts | 37 + ...mi-api-merchant-v1-steal-status-get-res.ts | 27 + ...mi-api-merchant-v1-steal-status-set-req.ts | 27 + .../kami-api-merchant-v1-steal-update-req.ts | 93 + ...api-merchant-v1-steal-update-status-req.ts | 33 + .../kami-api-monitor-v1-health-check-res.ts | 27 + ...kami-api-order-v1-order-form-delete-req.ts | 27 + .../kami-api-order-v1-order-form-list-req.ts | 45 + ...kami-api-order-v1-order-form-update-req.ts | 27 + .../kami-api-order-v1-order-log-delete-req.ts | 27 + .../kami-api-order-v1-order-log-list-req.ts | 45 + ...api-order-v1-order-summary-get-list-req.ts | 51 + ...api-order-v1-order-summary-get-list-res.ts | 37 + .../kami-api-order-v1-order-summary-record.ts | 93 + ...kami-api-restriction-v1-block-order-req.ts | 41 + ...-api-restriction-v1-check-ipallowed-req.ts | 51 + ...-api-restriction-v1-check-ipallowed-res.ts | 27 + ...i-restriction-v1-query-all-province-res.ts | 27 + ...restriction-v1-user-info-collection-req.ts | 27 + ...-api-road-pool-v1-road-pool-simple-info.ts | 33 + ...pi-road-pool-v1-simple-all-get-road-res.ts | 31 + .../kami-api-road-v1-road-simple-info.ts | 39 + ...ami-api-road-v1-simple-all-get-road-res.ts | 31 + ...sys-payment-v1-payment-summary-list-req.ts | 57 + ...sys-payment-v1-payment-summary-list-res.ts | 37 + ...i-sys-payment-v1-payment-summary-record.ts | 63 + ...-api-sys-payment-v1-sys-payment-add-req.ts | 55 + ...-sys-payment-v1-sys-payment-get-one-req.ts | 33 + ...-sys-payment-v1-sys-payment-get-one-res.ts | 105 + ...-api-sys-payment-v1-sys-payment-get-req.ts | 45 + ...-api-sys-payment-v1-sys-payment-get-res.ts | 37 + ...-payment-v1-sys-payment-records-get-req.ts | 66 + ...-payment-v1-sys-payment-records-get-res.ts | 37 + ...-sys-payment-records-get-statistics-res.ts | 37 + ...mi-api-sys-user-login-v1-user-login-req.ts | 51 + ...mi-api-sys-user-login-v1-user-login-res.ts | 27 + .../kami-api-sys-user-login-v1-user-menus.ts | 99 + .../kami-api-sys-user-v1-channel-type.ts | 44 + .../kami-api-sys-user-v1-login-user-record.ts | 45 + .../kami-api-sys-user-v1-sys-user-record.ts | 39 + ...-api-sys-user-v1-sys-user-role-dept-res.ts | 61 + ...ami-api-sys-user-v1-sys-user-simple-res.ts | 39 + ...kami-api-sys-user-v1-totp-image-get-req.ts | 27 + ...kami-api-sys-user-v1-totp-image-get-res.ts | 27 + .../kami-api-sys-user-v1-totp-reset-req.ts | 27 + .../kami-api-sys-user-v1-totp-reset-res.ts | 27 + .../kami-api-sys-user-v1-totp-set-req.ts | 45 + ...ami-api-sys-user-v1-totp-status-get-res.ts | 45 + .../kami-api-sys-user-v1-user-add-req.ts | 61 + ...ami-api-sys-user-v1-user-change-pwd-req.ts | 39 + .../kami-api-sys-user-v1-user-delete-req.ts | 27 + .../kami-api-sys-user-v1-user-edit-req.ts | 45 + ...pi-sys-user-v1-user-forbidden-by-id-req.ts | 27 + ...pi-sys-user-v1-user-get-all-simple-user.ts | 33 + ...i-api-sys-user-v1-user-get-all-user-res.ts | 31 + ...ami-api-sys-user-v1-user-get-by-ids-req.ts | 33 + ...ami-api-sys-user-v1-user-get-by-ids-res.ts | 31 + .../kami-api-sys-user-v1-user-get-edit-req.ts | 27 + .../kami-api-sys-user-v1-user-get-edit-res.ts | 43 + ...ami-api-sys-user-v1-user-get-params-res.ts | 31 + ...kami-api-sys-user-v1-user-login-out-req.ts | 27 + ...kami-api-sys-user-v1-user-menus-get-req.ts | 27 + ...kami-api-sys-user-v1-user-menus-get-res.ts | 46 + .../kami-api-sys-user-v1-user-search-req.ts | 57 + .../kami-api-sys-user-v1-user-search-res.ts | 37 + .../kami-api-sys-user-v1-user-status-req.ts | 33 + ...ys-user-v1-user-suspend-or-continue-req.ts | 27 + ...mi-api-user-center-v1-get-user-info-res.ts | 31 + .../kami-api-validation-v1-get-captcha-res.ts | 33 + ...el-entity-v1-card-apple-hidden-settings.ts | 93 + ...model-entity-v1-card-apple-history-info.ts | 69 + ...odel-entity-v1-card-apple-recharge-info.ts | 147 + ...model-entity-v1-card-jd-account-history.ts | 87 + ...l-model-entity-v1-card-jd-order-history.ts | 87 + ...rnal-model-entity-v1-card-jd-order-info.ts | 159 + ...del-entity-v1-card-redeem-account-group.ts | 69 + ...l-entity-v1-card-redeem-account-history.ts | 99 + ...model-entity-v1-card-redeem-cookie-info.ts | 75 + ...del-entity-v1-card-redeem-order-history.ts | 81 + ...-model-entity-v1-card-redeem-order-info.ts | 147 + ...-model-entity-v1-merchant-hidden-config.ts | 81 + ...-model-entity-v1-merchant-hidden-record.ts | 93 + ...-internal-model-entity-v1-merchant-info.ts | 153 + ...-model-entity-v1-recharge-tmall-account.ts | 69 + ...-entity-v1-recharge-tmall-order-history.ts | 75 + ...al-model-entity-v1-recharge-tmall-order.ts | 123 + ...l-entity-v1-recharge-tmall-shop-history.ts | 69 + ...nal-model-entity-v1-recharge-tmall-shop.ts | 135 + .../kami-internal-model-entity-v1-sys-role.ts | 69 + ...odel-entity-v1-sys-user-payment-records.ts | 105 + ...ternal-model-entity-v1-sys-user-payment.ts | 105 + .../kami-internal-model-entity-v1-sys-user.ts | 93 + .../models/kami-internal-model-user-info.ts | 27 + ...nal-system-v2-model-entity-v2-road-info.ts | 159 + src/api/index.ts | 6 + src/api/interceptor.ts | 85 + src/api/list.ts | 62 + src/api/merchant-deploy.ts | 109 + src/api/merchant-list.ts | 82 + src/api/message.ts | 38 + src/api/order-summary.ts | 35 + src/api/road.ts | 13 + src/api/road_pool.ts | 11 + src/api/sys-user-payment.ts | 100 + src/api/t-mall-game-account.ts | 91 + src/api/t-mall-game-order.ts | 251 + src/api/t-mall-game-shop-order.ts | 90 + src/api/user.ts | 110 + src/api/utils.ts | 20 + src/assets/images/background.png | Bin 0 -> 1411696 bytes src/assets/images/login-banner.png | Bin 0 -> 63369 bytes src/assets/logo.svg | 12 + src/assets/markdown/api.md | 429 + src/assets/style/breakpoint.less | 19 + src/assets/style/global.less | 107 + src/assets/style/markdown.css | 180 + src/assets/style/variables.less | 57 + src/assets/world.json | 13343 +++++++++ src/components/breadcrumb/index.vue | 37 + src/components/chart/index.vue | 47 + src/components/footer/index.vue | 16 + src/components/global-setting/block.vue | 79 + .../global-setting/form-wrapper.vue | 39 + src/components/global-setting/index.vue | 96 + src/components/index.ts | 35 + src/components/menu/index.vue | 164 + src/components/menu/use-menu-tree.ts | 69 + src/components/navbar/index.vue | 248 + src/components/tab-bar/index.vue | 105 + src/components/tab-bar/readme.md | 11 + src/components/tab-bar/tab-item.vue | 205 + src/config/settings.json | 17 + src/directive/index.ts | 8 + src/directive/permission/index.ts | 30 + src/env.d.ts | 11 + src/hooks/chart-option.ts | 27 + src/hooks/loading.ts | 16 + src/hooks/permission.ts | 33 + src/hooks/request.ts | 26 + src/hooks/responsive.ts | 32 + src/hooks/themes.ts | 12 + src/hooks/user.ts | 24 + src/hooks/visible.ts | 16 + src/layout/default-layout.vue | 180 + src/layout/iframe-layout.vue | 26 + src/layout/page-layout.vue | 25 + src/main.ts | 24 + src/mock/index.ts | 9 + src/mock/message-box.ts | 85 + src/mock/user.ts | 72 + src/router/app-menus/index.ts | 19 + src/router/constants.ts | 18 + src/router/guard/index.ts | 17 + src/router/guard/permission.ts | 54 + src/router/guard/userLoginInfo.ts | 50 + src/router/index.ts | 37 + src/router/routes/base.ts | 32 + src/router/routes/index.ts | 25 + src/router/routes/modules/apple-account.ts | 59 + src/router/routes/modules/c-trip.ts | 38 + src/router/routes/modules/dashboard.ts | 29 + src/router/routes/modules/iframe.ts | 242 + src/router/routes/modules/independent-page.ts | 14 + src/router/routes/modules/jd-account.ts | 48 + .../routes/modules/recharge-t-mall-game.ts | 35 + src/router/routes/modules/user-profile.ts | 29 + src/router/routes/modules/user.ts | 29 + src/router/routes/modules/walmart-account.ts | 58 + src/router/routes/modules/workplace.ts | 29 + src/router/routes/types.ts | 20 + src/router/typings.d.ts | 17 + src/store/index.ts | 9 + src/store/modules/app/index.ts | 77 + src/store/modules/app/types.ts | 20 + src/store/modules/tab-bar/index.ts | 74 + src/store/modules/tab-bar/types.ts | 12 + src/store/modules/user/index.ts | 80 + src/store/modules/user/types.ts | 10 + src/types/echarts.ts | 10 + src/types/global.ts | 37 + src/types/mock.ts | 5 + src/utils/auth.ts | 50 + src/utils/encrypt.ts | 20 + src/utils/env.ts | 3 + src/utils/event.ts | 27 + src/utils/index.ts | 25 + src/utils/is.ts | 53 + src/utils/mitt.ts | 5 + src/utils/monitor.ts | 28 + src/utils/route-listener.ts | 31 + src/utils/setup-mock.ts | 23 + src/views/api-doc/component.vue | 84 + src/views/api-doc/index.vue | 12 + .../apple-card-info-history/index.vue | 179 + .../card-info/card-info-history.vue | 116 + .../apple-card-info/card-info/card-info.vue | 451 + .../card-info/components/add-modal.vue | 120 + .../card-info/components/detail.vue | 144 + src/views/apple-card-info/card-info/index.vue | 24 + .../apple-card-info/order-summary/index.vue | 129 + .../components/change-amount.vue | 66 + .../components/recharge-history.vue | 110 + .../recharge-history/index.vue | 457 + .../account/components/add-modal.vue | 217 + .../account/components/component.tsx | 257 + .../account/components/detail.vue | 162 + src/views/card-c-trip-info/account/index.vue | 418 + .../card-c-trip-info/order-summary/index.vue | 129 + .../order/components/config.tsx | 120 + .../order/components/history.vue | 137 + src/views/card-c-trip-info/order/index.vue | 401 + .../account/components/add-modal.vue | 147 + .../account/components/component.tsx | 241 + .../card-jd-ck/account/components/detail.vue | 159 + src/views/card-jd-ck/account/index.vue | 333 + src/views/card-jd-ck/account/summary.tsx | 213 + .../card-jd-ck/order/components/history.vue | 143 + src/views/card-jd-ck/order/index.vue | 286 + .../account/components/add-modal.vue | 210 + .../account/components/component.tsx | 256 + .../account/components/detail.vue | 164 + src/views/card-jd-info/account/index.vue | 410 + .../card-jd-info/order-summary/index.vue | 129 + .../card-jd-info/order/components/config.tsx | 114 + .../card-jd-info/order/components/history.vue | 137 + src/views/card-jd-info/order/index.vue | 403 + .../account/components/add-modal.vue | 237 + .../account/components/component.tsx | 249 + .../account/components/detail.vue | 159 + src/views/card-walmart-info/account/index.vue | 490 + .../card-walmart-info/account/summary.tsx | 213 + src/views/card-walmart-info/group/index.vue | 287 + src/views/card-walmart-info/group/summary.tsx | 211 + .../card-walmart-info/order-summary/index.vue | 129 + .../order/components/config.tsx | 154 + .../order/components/history.vue | 143 + src/views/card-walmart-info/order/index.vue | 458 + .../workplace/components/announcement.vue | 72 + .../dashboard/workplace/components/banner.vue | 35 + .../workplace/components/carousel.vue | 24 + .../components/categories-percent.vue | 114 + .../workplace/components/content-chart.vue | 200 + .../workplace/components/data-panel.vue | 140 + .../dashboard/workplace/components/docs.vue | 42 + .../workplace/components/popular-content.vue | 124 + .../workplace/components/quick-operation.vue | 35 + .../workplace/components/recently-visited.vue | 44 + src/views/dashboard/workplace/index.vue | 154 + src/views/login/components/login-form.vue | 347 + src/views/login/index.vue | 66 + .../merchant/config/components/add-modal.vue | 80 + .../config/components/deploy-modal.vue | 52 + .../config/components/deploy/add-deploy.vue | 339 + .../components/deploy/components/data.ts | 31 + .../deploy/components/rate-table.vue | 158 + .../components/deploy/merchant-info.vue | 84 + .../config/components/payway-list.vue | 269 + src/views/merchant/config/index.vue | 249 + src/views/merchant/single/order.vue | 116 + .../steal-card/components/add-modal.vue | 192 + src/views/merchant/steal-card/index.vue | 27 + .../merchant/steal-card/steal-record.vue | 122 + src/views/merchant/steal-card/steal-rule.vue | 341 + .../steal-setting/components/add-modal.vue | 190 + src/views/merchant/steal-setting/index.vue | 328 + src/views/not-found/index.vue | 31 + src/views/redirect/index.vue | 14 + .../account-info/callback/callback.vue | 54 + .../components/account-detail-drawer.tsx | 159 + .../components/add-account-modal.tsx | 60 + src/views/t-mall-game/account-info/index.vue | 10 + src/views/t-mall-game/account-info/list.vue | 282 + .../t-mall-game/order-info-fake/index.vue | 95 + src/views/t-mall-game/order-info/detail.vue | 183 + src/views/t-mall-game/order-info/index.vue | 427 + .../shop-info/components/shopDetail.vue | 86 + src/views/t-mall-game/shop-info/detail.vue | 35 + src/views/t-mall-game/shop-info/index.vue | 378 + .../workplace/components/balance.tsx | 31 + .../workplace/components/banner.vue | 35 + .../workplace/components/data-panel.vue | 122 + .../workplace/components/payment-record.tsx | 104 + src/views/t-mall-game/workplace/index.vue | 166 + .../components/add-update-modal.tsx | 109 + .../components/css/style.module.less | 3 + .../components/payment-list-drawer.tsx | 253 + .../management/components/recharge-modal.tsx | 91 + src/views/user-center/management/index.vue | 20 + src/views/user-center/management/summary.tsx | 162 + src/views/user-center/management/user.vue | 328 + .../user-profile/components/css/totp.less | 8 + .../components/reset-password.vue | 80 + .../user-profile/components/totp.tsx | 218 + src/views/user-center/user-profile/index.vue | 18 + .../workplace/components/balance.tsx | 31 + .../workplace/components/banner.vue | 35 + .../workplace/components/data-panel.vue | 146 + .../workplace/components/payment-record.tsx | 38 + src/views/user-center/workplace/index.vue | 193 + stylelint.config.js | 93 + tsconfig.json | 36 + 612 files changed, 94919 insertions(+) create mode 100644 .dockerignore create mode 100644 .drone.yml create mode 100644 .env.development create mode 100644 .env.production create mode 100644 .gitignore create mode 100644 .hintrc create mode 100644 .husky/commit-msg create mode 100755 .husky/pre-commit create mode 100644 .prettierignore create mode 100644 .prettierrc.js create mode 100644 .tool-versions create mode 100644 .trae/rules/project_rules.md create mode 100644 commitlint.config.js create mode 100644 components.d.ts create mode 100644 config/plugin/arcoResolver.ts create mode 100644 config/plugin/arcoStyleImport.ts create mode 100644 config/plugin/compress.ts create mode 100644 config/plugin/imagemin.ts create mode 100644 config/plugin/visualizer.ts create mode 100644 config/utils/index.ts create mode 100644 config/vite.config.base.mts create mode 100644 config/vite.config.dev.mts create mode 100644 config/vite.config.prod.mts create mode 100644 deploy/Dockerfile create mode 100644 deploy/docker-compose-local.yml create mode 100644 deploy/docker-compose.yml create mode 100644 deploy/nginx/default.conf create mode 100644 eslint.config.js create mode 100644 index.html create mode 100644 openapitools.json create mode 100644 pnpm-lock.yaml create mode 100644 pnpm-workspace.yaml create mode 100644 public/assets/demo.zip create mode 100644 public/images/pay/AB4467C3-FA86-069A-99BB-C3997694311C.png create mode 100644 src/App.vue create mode 100644 src/api/apple-card-info.ts create mode 100644 src/api/apple-card-recharge-history.ts create mode 100644 src/api/apple-card-steal-settings.ts create mode 100644 src/api/card-jd-account.ts create mode 100644 src/api/card-jd-oder.ts create mode 100644 src/api/card-walmart-account.ts create mode 100644 src/api/card-walmart-order.ts create mode 100644 src/api/common.ts create mode 100644 src/api/dashboard.ts create mode 100644 src/api/generated/.gitignore create mode 100644 src/api/generated/.npmignore create mode 100644 src/api/generated/.openapi-generator-ignore create mode 100644 src/api/generated/.openapi-generator/FILES create mode 100644 src/api/generated/.openapi-generator/VERSION create mode 100644 src/api/generated/api.ts create mode 100644 src/api/generated/apis/ck-api.ts create mode 100644 src/api/generated/apis/default-api.ts create mode 100644 src/api/generated/apis/totpapi.ts create mode 100644 src/api/generated/base.ts create mode 100644 src/api/generated/common.ts create mode 100644 src/api/generated/configuration.ts create mode 100644 src/api/generated/git_push.sh create mode 100644 src/api/generated/index.ts create mode 100644 src/api/generated/models/index.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record-upload-user.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-call-back-order-manual-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-history-model.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-create-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-suspend-or-continue-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-config-get-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-config-set-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-duplicated-card-pass-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-itunes-callback-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-download-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-modify-actual-amount-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-reset-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-status-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-get-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-create-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-refresh-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-order-callback-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-get-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-set-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-ctrip-v1-submit-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-create-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-refresh-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-get-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-set-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-order-callback-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-order-history-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-order-history-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-order-summary-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-jd-v1-submit-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-create-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-refresh-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-call-back-order-manual-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-shop-order-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-callback-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-get-key-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-create-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-tmall-auth-status-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-toggle-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-agiso-callback-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-category.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-modify-status-succeed-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-account-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-create-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-info.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-list-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-load-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-refresh-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-status-reset-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-summary-download-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-update-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-card-redeem-account-summary.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-all-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-group-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-callback-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-history-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-history-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-status-reset-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-record.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-get-res.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-set-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-submit-req.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account.ts create mode 100644 src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-add-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-delete-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-res.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-status-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-account-update-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-cookie-info.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-res.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-schema.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-req.ts create mode 100644 src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-res.ts create mode 100644 src/api/generated/models/kami-api-channel-v2-entrance-create-req.ts create mode 100644 src/api/generated/models/kami-api-channel-v2-entrance-delete-req.ts create mode 100644 src/api/generated/models/kami-api-channel-v2-entrance-list-req.ts create mode 100644 src/api/generated/models/kami-api-channel-v2-entrance-list-res.ts create mode 100644 src/api/generated/models/kami-api-channel-v2-entrance-params.ts create mode 100644 src/api/generated/models/kami-api-channel-v2-entrance-update-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-all-list-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-add-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-list-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-list-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-status-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-config-update-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-add-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-delete-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-record.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-deploy-update-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-hidden-config-entity.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-info-record.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-merchant-steal-set-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-order-query-record.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-order-query-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-order-query-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-platform-rate-record.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-add-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-delete-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-status-update-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-update-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-get-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-create-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-delete-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-list-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-list-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-record-list-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-record-list-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-status-get-res.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-status-set-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-update-req.ts create mode 100644 src/api/generated/models/kami-api-merchant-v1-steal-update-status-req.ts create mode 100644 src/api/generated/models/kami-api-monitor-v1-health-check-res.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-form-delete-req.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-form-list-req.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-form-update-req.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-log-delete-req.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-log-list-req.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-summary-get-list-req.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-summary-get-list-res.ts create mode 100644 src/api/generated/models/kami-api-order-v1-order-summary-record.ts create mode 100644 src/api/generated/models/kami-api-restriction-v1-block-order-req.ts create mode 100644 src/api/generated/models/kami-api-restriction-v1-check-ipallowed-req.ts create mode 100644 src/api/generated/models/kami-api-restriction-v1-check-ipallowed-res.ts create mode 100644 src/api/generated/models/kami-api-restriction-v1-query-all-province-res.ts create mode 100644 src/api/generated/models/kami-api-restriction-v1-user-info-collection-req.ts create mode 100644 src/api/generated/models/kami-api-road-pool-v1-road-pool-simple-info.ts create mode 100644 src/api/generated/models/kami-api-road-pool-v1-simple-all-get-road-res.ts create mode 100644 src/api/generated/models/kami-api-road-v1-road-simple-info.ts create mode 100644 src/api/generated/models/kami-api-road-v1-simple-all-get-road-res.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-req.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-res.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-payment-summary-record.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-add-req.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-req.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-res.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-req.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-res.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-req.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-res.ts create mode 100644 src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-statistics-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-login-v1-user-login-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-login-v1-user-login-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-login-v1-user-menus.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-channel-type.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-login-user-record.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-sys-user-record.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-sys-user-role-dept-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-sys-user-simple-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-totp-image-get-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-totp-image-get-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-totp-reset-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-totp-reset-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-totp-set-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-totp-status-get-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-add-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-change-pwd-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-delete-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-edit-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-forbidden-by-id-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-all-simple-user.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-all-user-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-edit-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-edit-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-get-params-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-login-out-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-menus-get-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-menus-get-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-search-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-search-res.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-status-req.ts create mode 100644 src/api/generated/models/kami-api-sys-user-v1-user-suspend-or-continue-req.ts create mode 100644 src/api/generated/models/kami-api-user-center-v1-get-user-info-res.ts create mode 100644 src/api/generated/models/kami-api-validation-v1-get-captcha-res.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-apple-hidden-settings.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-apple-history-info.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-apple-recharge-info.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-jd-account-history.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-history.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-info.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-group.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-history.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-redeem-cookie-info.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-history.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-info.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-config.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-record.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-merchant-info.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-account.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order-history.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop-history.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-sys-role.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment-records.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment.ts create mode 100644 src/api/generated/models/kami-internal-model-entity-v1-sys-user.ts create mode 100644 src/api/generated/models/kami-internal-model-user-info.ts create mode 100644 src/api/generated/models/kami-internal-system-v2-model-entity-v2-road-info.ts create mode 100644 src/api/index.ts create mode 100644 src/api/interceptor.ts create mode 100644 src/api/list.ts create mode 100644 src/api/merchant-deploy.ts create mode 100644 src/api/merchant-list.ts create mode 100644 src/api/message.ts create mode 100644 src/api/order-summary.ts create mode 100644 src/api/road.ts create mode 100644 src/api/road_pool.ts create mode 100644 src/api/sys-user-payment.ts create mode 100644 src/api/t-mall-game-account.ts create mode 100644 src/api/t-mall-game-order.ts create mode 100644 src/api/t-mall-game-shop-order.ts create mode 100644 src/api/user.ts create mode 100644 src/api/utils.ts create mode 100644 src/assets/images/background.png create mode 100644 src/assets/images/login-banner.png create mode 100644 src/assets/logo.svg create mode 100644 src/assets/markdown/api.md create mode 100644 src/assets/style/breakpoint.less create mode 100644 src/assets/style/global.less create mode 100644 src/assets/style/markdown.css create mode 100644 src/assets/style/variables.less create mode 100644 src/assets/world.json create mode 100644 src/components/breadcrumb/index.vue create mode 100644 src/components/chart/index.vue create mode 100644 src/components/footer/index.vue create mode 100644 src/components/global-setting/block.vue create mode 100644 src/components/global-setting/form-wrapper.vue create mode 100644 src/components/global-setting/index.vue create mode 100644 src/components/index.ts create mode 100644 src/components/menu/index.vue create mode 100644 src/components/menu/use-menu-tree.ts create mode 100644 src/components/navbar/index.vue create mode 100644 src/components/tab-bar/index.vue create mode 100644 src/components/tab-bar/readme.md create mode 100644 src/components/tab-bar/tab-item.vue create mode 100644 src/config/settings.json create mode 100644 src/directive/index.ts create mode 100644 src/directive/permission/index.ts create mode 100644 src/env.d.ts create mode 100644 src/hooks/chart-option.ts create mode 100644 src/hooks/loading.ts create mode 100644 src/hooks/permission.ts create mode 100644 src/hooks/request.ts create mode 100644 src/hooks/responsive.ts create mode 100644 src/hooks/themes.ts create mode 100644 src/hooks/user.ts create mode 100644 src/hooks/visible.ts create mode 100644 src/layout/default-layout.vue create mode 100644 src/layout/iframe-layout.vue create mode 100644 src/layout/page-layout.vue create mode 100644 src/main.ts create mode 100644 src/mock/index.ts create mode 100644 src/mock/message-box.ts create mode 100644 src/mock/user.ts create mode 100644 src/router/app-menus/index.ts create mode 100644 src/router/constants.ts create mode 100644 src/router/guard/index.ts create mode 100644 src/router/guard/permission.ts create mode 100644 src/router/guard/userLoginInfo.ts create mode 100644 src/router/index.ts create mode 100644 src/router/routes/base.ts create mode 100644 src/router/routes/index.ts create mode 100644 src/router/routes/modules/apple-account.ts create mode 100644 src/router/routes/modules/c-trip.ts create mode 100644 src/router/routes/modules/dashboard.ts create mode 100644 src/router/routes/modules/iframe.ts create mode 100644 src/router/routes/modules/independent-page.ts create mode 100644 src/router/routes/modules/jd-account.ts create mode 100644 src/router/routes/modules/recharge-t-mall-game.ts create mode 100644 src/router/routes/modules/user-profile.ts create mode 100644 src/router/routes/modules/user.ts create mode 100644 src/router/routes/modules/walmart-account.ts create mode 100644 src/router/routes/modules/workplace.ts create mode 100644 src/router/routes/types.ts create mode 100644 src/router/typings.d.ts create mode 100644 src/store/index.ts create mode 100644 src/store/modules/app/index.ts create mode 100644 src/store/modules/app/types.ts create mode 100644 src/store/modules/tab-bar/index.ts create mode 100644 src/store/modules/tab-bar/types.ts create mode 100644 src/store/modules/user/index.ts create mode 100644 src/store/modules/user/types.ts create mode 100644 src/types/echarts.ts create mode 100644 src/types/global.ts create mode 100644 src/types/mock.ts create mode 100644 src/utils/auth.ts create mode 100644 src/utils/encrypt.ts create mode 100644 src/utils/env.ts create mode 100644 src/utils/event.ts create mode 100644 src/utils/index.ts create mode 100644 src/utils/is.ts create mode 100644 src/utils/mitt.ts create mode 100644 src/utils/monitor.ts create mode 100644 src/utils/route-listener.ts create mode 100644 src/utils/setup-mock.ts create mode 100644 src/views/api-doc/component.vue create mode 100644 src/views/api-doc/index.vue create mode 100644 src/views/apple-card-info/apple-card-info-history/index.vue create mode 100644 src/views/apple-card-info/card-info/card-info-history.vue create mode 100644 src/views/apple-card-info/card-info/card-info.vue create mode 100644 src/views/apple-card-info/card-info/components/add-modal.vue create mode 100644 src/views/apple-card-info/card-info/components/detail.vue create mode 100644 src/views/apple-card-info/card-info/index.vue create mode 100644 src/views/apple-card-info/order-summary/index.vue create mode 100644 src/views/apple-card-info/recharge-history/components/change-amount.vue create mode 100644 src/views/apple-card-info/recharge-history/components/recharge-history.vue create mode 100644 src/views/apple-card-info/recharge-history/index.vue create mode 100644 src/views/card-c-trip-info/account/components/add-modal.vue create mode 100644 src/views/card-c-trip-info/account/components/component.tsx create mode 100644 src/views/card-c-trip-info/account/components/detail.vue create mode 100644 src/views/card-c-trip-info/account/index.vue create mode 100644 src/views/card-c-trip-info/order-summary/index.vue create mode 100644 src/views/card-c-trip-info/order/components/config.tsx create mode 100644 src/views/card-c-trip-info/order/components/history.vue create mode 100644 src/views/card-c-trip-info/order/index.vue create mode 100644 src/views/card-jd-ck/account/components/add-modal.vue create mode 100644 src/views/card-jd-ck/account/components/component.tsx create mode 100644 src/views/card-jd-ck/account/components/detail.vue create mode 100644 src/views/card-jd-ck/account/index.vue create mode 100644 src/views/card-jd-ck/account/summary.tsx create mode 100644 src/views/card-jd-ck/order/components/history.vue create mode 100644 src/views/card-jd-ck/order/index.vue create mode 100644 src/views/card-jd-info/account/components/add-modal.vue create mode 100644 src/views/card-jd-info/account/components/component.tsx create mode 100644 src/views/card-jd-info/account/components/detail.vue create mode 100644 src/views/card-jd-info/account/index.vue create mode 100644 src/views/card-jd-info/order-summary/index.vue create mode 100644 src/views/card-jd-info/order/components/config.tsx create mode 100644 src/views/card-jd-info/order/components/history.vue create mode 100644 src/views/card-jd-info/order/index.vue create mode 100644 src/views/card-walmart-info/account/components/add-modal.vue create mode 100644 src/views/card-walmart-info/account/components/component.tsx create mode 100644 src/views/card-walmart-info/account/components/detail.vue create mode 100644 src/views/card-walmart-info/account/index.vue create mode 100644 src/views/card-walmart-info/account/summary.tsx create mode 100644 src/views/card-walmart-info/group/index.vue create mode 100644 src/views/card-walmart-info/group/summary.tsx create mode 100644 src/views/card-walmart-info/order-summary/index.vue create mode 100644 src/views/card-walmart-info/order/components/config.tsx create mode 100644 src/views/card-walmart-info/order/components/history.vue create mode 100644 src/views/card-walmart-info/order/index.vue create mode 100644 src/views/dashboard/workplace/components/announcement.vue create mode 100644 src/views/dashboard/workplace/components/banner.vue create mode 100644 src/views/dashboard/workplace/components/carousel.vue create mode 100644 src/views/dashboard/workplace/components/categories-percent.vue create mode 100644 src/views/dashboard/workplace/components/content-chart.vue create mode 100644 src/views/dashboard/workplace/components/data-panel.vue create mode 100644 src/views/dashboard/workplace/components/docs.vue create mode 100644 src/views/dashboard/workplace/components/popular-content.vue create mode 100644 src/views/dashboard/workplace/components/quick-operation.vue create mode 100644 src/views/dashboard/workplace/components/recently-visited.vue create mode 100644 src/views/dashboard/workplace/index.vue create mode 100644 src/views/login/components/login-form.vue create mode 100644 src/views/login/index.vue create mode 100644 src/views/merchant/config/components/add-modal.vue create mode 100644 src/views/merchant/config/components/deploy-modal.vue create mode 100644 src/views/merchant/config/components/deploy/add-deploy.vue create mode 100644 src/views/merchant/config/components/deploy/components/data.ts create mode 100644 src/views/merchant/config/components/deploy/components/rate-table.vue create mode 100644 src/views/merchant/config/components/deploy/merchant-info.vue create mode 100644 src/views/merchant/config/components/payway-list.vue create mode 100644 src/views/merchant/config/index.vue create mode 100644 src/views/merchant/single/order.vue create mode 100644 src/views/merchant/steal-card/components/add-modal.vue create mode 100644 src/views/merchant/steal-card/index.vue create mode 100644 src/views/merchant/steal-card/steal-record.vue create mode 100644 src/views/merchant/steal-card/steal-rule.vue create mode 100644 src/views/merchant/steal-setting/components/add-modal.vue create mode 100644 src/views/merchant/steal-setting/index.vue create mode 100644 src/views/not-found/index.vue create mode 100644 src/views/redirect/index.vue create mode 100644 src/views/t-mall-game/account-info/callback/callback.vue create mode 100644 src/views/t-mall-game/account-info/components/account-detail-drawer.tsx create mode 100644 src/views/t-mall-game/account-info/components/add-account-modal.tsx create mode 100644 src/views/t-mall-game/account-info/index.vue create mode 100644 src/views/t-mall-game/account-info/list.vue create mode 100644 src/views/t-mall-game/order-info-fake/index.vue create mode 100644 src/views/t-mall-game/order-info/detail.vue create mode 100644 src/views/t-mall-game/order-info/index.vue create mode 100644 src/views/t-mall-game/shop-info/components/shopDetail.vue create mode 100644 src/views/t-mall-game/shop-info/detail.vue create mode 100644 src/views/t-mall-game/shop-info/index.vue create mode 100644 src/views/t-mall-game/workplace/components/balance.tsx create mode 100644 src/views/t-mall-game/workplace/components/banner.vue create mode 100644 src/views/t-mall-game/workplace/components/data-panel.vue create mode 100644 src/views/t-mall-game/workplace/components/payment-record.tsx create mode 100644 src/views/t-mall-game/workplace/index.vue create mode 100644 src/views/user-center/management/components/add-update-modal.tsx create mode 100644 src/views/user-center/management/components/css/style.module.less create mode 100644 src/views/user-center/management/components/payment-list-drawer.tsx create mode 100644 src/views/user-center/management/components/recharge-modal.tsx create mode 100644 src/views/user-center/management/index.vue create mode 100644 src/views/user-center/management/summary.tsx create mode 100644 src/views/user-center/management/user.vue create mode 100644 src/views/user-center/user-profile/components/css/totp.less create mode 100644 src/views/user-center/user-profile/components/reset-password.vue create mode 100644 src/views/user-center/user-profile/components/totp.tsx create mode 100644 src/views/user-center/user-profile/index.vue create mode 100644 src/views/user-center/workplace/components/balance.tsx create mode 100644 src/views/user-center/workplace/components/banner.vue create mode 100644 src/views/user-center/workplace/components/data-panel.vue create mode 100644 src/views/user-center/workplace/components/payment-record.tsx create mode 100644 src/views/user-center/workplace/index.vue create mode 100644 stylelint.config.js create mode 100644 tsconfig.json diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..6cd9b0a --- /dev/null +++ b/.dockerignore @@ -0,0 +1,8 @@ +node_modules +.DS_Store +dist-ssr +*.local +/node_modules/ +/.vscode/ +/.idea/ +/dist/ diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..1c3197a --- /dev/null +++ b/.drone.yml @@ -0,0 +1,49 @@ +--- + kind: pipeline + type: ssh + name: master-machine + + server: + host: 38.38.251.113:31245 + user: root + password: + from_secret: www_password + clone: + depth: 1 + + steps: + - name: build new image + environment: + DOCKER_LOGIN: + from_secret: docker_login + DOCKER_TOKEN: + from_secret: docker_token + DOCKER_PASSWORD: + from_secret: docker_password + commands: + - docker login git.kkknametrans.buzz -u $DOCKER_LOGIN -p $DOCKER_TOKEN + - docker build -t git.kkknametrans.buzz/danial/kami_frontend_${DRONE_BRANCH}:${DRONE_BUILD_NUMBER} -f deploy/Dockerfile . --build-arg USE_PROXY=0 + - docker tag git.kkknametrans.buzz/danial/kami_frontend_${DRONE_BRANCH}:${DRONE_BUILD_NUMBER} git.kkknametrans.buzz/danial/kami_frontend_${DRONE_BRANCH}:latest + - docker push git.kkknametrans.buzz/danial/kami_frontend_${DRONE_BRANCH}:${DRONE_BUILD_NUMBER} + - docker push git.kkknametrans.buzz/danial/kami_frontend_${DRONE_BRANCH}:latest + - docker logout git.kkknametrans.buzz + - name: deploy to docker compose + environment: + DOCKER_LOGIN: + from_secret: docker_login + DOCKER_TOKEN: + from_secret: docker_token + DOCKER_PASSWORD: + from_secret: docker_password + commands: + - docker login git.kkknametrans.buzz -u $DOCKER_LOGIN -p $DOCKER_TOKEN + - BRANCH=${DRONE_BRANCH} VERSION=${DRONE_BUILD_NUMBER} docker compose -f /data/kami/docker-compose.yaml --profile frontend up -d + - docker logout git.kkknametrans.buzz + + trigger: + branch: + - develop + - production + when: + event: + - push diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..f75c67c --- /dev/null +++ b/.env.development @@ -0,0 +1,2 @@ +VITE_API_BASE_URL= 'http://127.0.0.1:12401' +# VITE_API_BASE_URL='http://partial2.kkknametrans.buzz' diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..31bb01d --- /dev/null +++ b/.env.production @@ -0,0 +1 @@ +VITE_API_BASE_URL='' \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..054d6ad --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +node_modules +.DS_Store +dist +dist-ssr +*.local +/.vscode/ +/.idea/ \ No newline at end of file diff --git a/.hintrc b/.hintrc new file mode 100644 index 0000000..12c4655 --- /dev/null +++ b/.hintrc @@ -0,0 +1,8 @@ +{ + "extends": [ + "development" + ], + "hints": { + "typescript-config/strict": "off" + } +} \ No newline at end of file diff --git a/.husky/commit-msg b/.husky/commit-msg new file mode 100644 index 0000000..66ae5b5 --- /dev/null +++ b/.husky/commit-msg @@ -0,0 +1 @@ +pnpm commitlint --edit $1 \ No newline at end of file diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..a5a29d9 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +pnpm lint-staged diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..9dfa85f --- /dev/null +++ b/.prettierignore @@ -0,0 +1,7 @@ +/dist/* +.local +.output.js +/node_modules/** + +**/*.svg +**/*.sh \ No newline at end of file diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..7c04d5e --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,23 @@ +/** @type {import("prettier").Config} */ +export default { + // 使用 2 个空格缩进 + tabWidth: 2, + // 行尾需要有分号 + semi: true, + // 一行最多 80 个字符 + printWidth: 80, + // 使用单引号 + singleQuote: true, + // 对象的 key 是否有引号格式保持一致 + quoteProps: 'consistent', + // html 空格敏感规则 + htmlWhitespaceSensitivity: 'ignore', + // 不缩进 vue 文件中的 script 和 style + vueIndentScriptAndStyle: false, + // 多行时不强制尾随逗号 + trailingComma: 'none', + // 箭头函数参数括号 + arrowParens: 'avoid', + // jsx 中使用单引号 + jsxSingleQuote: true +}; diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 0000000..a2bd703 --- /dev/null +++ b/.tool-versions @@ -0,0 +1 @@ +java openjdk-21.0.2 diff --git a/.trae/rules/project_rules.md b/.trae/rules/project_rules.md new file mode 100644 index 0000000..3a89021 --- /dev/null +++ b/.trae/rules/project_rules.md @@ -0,0 +1,3 @@ +1. Always chat in Chinese. +2. Add function-level comments when generating code. +3. My system is Mac/Windows. diff --git a/commitlint.config.js b/commitlint.config.js new file mode 100644 index 0000000..cbfdc18 --- /dev/null +++ b/commitlint.config.js @@ -0,0 +1,33 @@ +/** @type {import("@commitlint/types").UserConfig} */ +export default { + extends: ['@commitlint/config-conventional'], + rules: { + 'body-leading-blank': [2, 'always'], + 'body-max-line-length': [2, 'always', 400], + 'footer-leading-blank': [1, 'always'], + 'header-max-length': [2, 'always', 200], + 'subject-empty': [2, 'never'], + 'type-empty': [2, 'never'], + 'type-enum': [ + 2, + 'always', + [ + 'feat', + 'fix', + 'perf', + 'style', + 'docs', + 'test', + 'refactor', + 'build', + 'ci', + 'chore', + 'revert', + 'enhance', + 'workflow', + 'types', + 'release' + ] + ] + } +}; diff --git a/components.d.ts b/components.d.ts new file mode 100644 index 0000000..a3f6763 --- /dev/null +++ b/components.d.ts @@ -0,0 +1,15 @@ + +/* prettier-ignore */ +// @ts-nocheck +// Generated by unplugin-vue-components +// Read more: https://github.com/vuejs/core/pull/3399 +import '@vue/runtime-core' + +export {}; + +declare module '@vue/runtime-core' { + export interface GlobalComponents { + RouterLink: (typeof import('vue-router'))['RouterLink']; + RouterView: (typeof import('vue-router'))['RouterView']; + } +} diff --git a/config/plugin/arcoResolver.ts b/config/plugin/arcoResolver.ts new file mode 100644 index 0000000..1b497e0 --- /dev/null +++ b/config/plugin/arcoResolver.ts @@ -0,0 +1,19 @@ +/** + * If you use the template method for development, you can use the unplugin-vue-components plugin to enable on-demand loading support. + * 按需引入 + * https://github.com/antfu/unplugin-vue-components + * https://arco.design/vue/docs/start + * Although the Pro project is full of imported components, this plugin will be used by default. + * 虽然Pro项目中是全量引入组件,但此插件会默认使用。 + */ +import Components from 'unplugin-vue-components/vite'; +import { ArcoResolver } from 'unplugin-vue-components/resolvers'; + +export default function configArcoResolverPlugin() { + const arcoResolverPlugin = Components({ + dirs: [], // Avoid parsing src/components. 避免解析到src/components + deep: false, + resolvers: [ArcoResolver()] + }); + return arcoResolverPlugin; +} diff --git a/config/plugin/arcoStyleImport.ts b/config/plugin/arcoStyleImport.ts new file mode 100644 index 0000000..7ece00e --- /dev/null +++ b/config/plugin/arcoStyleImport.ts @@ -0,0 +1,12 @@ +/** + * Theme import + * 样式按需引入 + * https://github.com/arco-design/arco-plugins/blob/main/packages/plugin-vite-vue/README.md + * https://arco.design/vue/docs/start + */ +import { vitePluginForArco } from '@arco-plugins/vite-vue'; + +export default function configArcoStyleImportPlugin() { + const arcoResolverPlugin = vitePluginForArco({}); + return arcoResolverPlugin; +} diff --git a/config/plugin/compress.ts b/config/plugin/compress.ts new file mode 100644 index 0000000..4fc7cbb --- /dev/null +++ b/config/plugin/compress.ts @@ -0,0 +1,34 @@ +/** + * Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated + * gzip压缩 + * https://github.com/anncwb/vite-plugin-compression + */ +import type { Plugin } from 'vite'; +import compressPlugin from 'vite-plugin-compression'; + +export default function configCompressPlugin( + compress: 'gzip' | 'brotli', + deleteOriginFile = false +): Plugin | Plugin[] { + const plugins: Plugin[] = []; + + if (compress === 'gzip') { + plugins.push( + compressPlugin({ + ext: '.gz', + deleteOriginFile + }) + ); + } + + if (compress === 'brotli') { + plugins.push( + compressPlugin({ + ext: '.br', + algorithm: 'brotliCompress', + deleteOriginFile + }) + ); + } + return plugins; +} diff --git a/config/plugin/imagemin.ts b/config/plugin/imagemin.ts new file mode 100644 index 0000000..248873c --- /dev/null +++ b/config/plugin/imagemin.ts @@ -0,0 +1,37 @@ +/** + * Image resource files used to compress the output of the production environment + * 图片压缩 + * https://github.com/anncwb/vite-plugin-imagemin + */ +import viteImagemin from 'vite-plugin-imagemin'; + +export default function configImageminPlugin() { + const imageminPlugin = viteImagemin({ + gifsicle: { + optimizationLevel: 7, + interlaced: false + }, + optipng: { + optimizationLevel: 7 + }, + mozjpeg: { + quality: 20 + }, + pngquant: { + quality: [0.8, 0.9], + speed: 4 + }, + svgo: { + plugins: [ + { + name: 'removeViewBox' + }, + { + name: 'removeEmptyAttrs', + active: false + } + ] + } + }); + return imageminPlugin; +} diff --git a/config/plugin/visualizer.ts b/config/plugin/visualizer.ts new file mode 100644 index 0000000..632ad4f --- /dev/null +++ b/config/plugin/visualizer.ts @@ -0,0 +1,18 @@ +/** + * Generation packaging analysis + * 生成打包分析 + */ +import visualizer from 'rollup-plugin-visualizer'; +import { isReportMode } from '../utils'; + +export default function configVisualizerPlugin() { + if (isReportMode()) { + return visualizer({ + filename: './node_modules/.cache/visualizer/stats.html', + open: true, + gzipSize: true, + brotliSize: true + }); + } + return []; +} diff --git a/config/utils/index.ts b/config/utils/index.ts new file mode 100644 index 0000000..a1e5d12 --- /dev/null +++ b/config/utils/index.ts @@ -0,0 +1,9 @@ +/** + * Whether to generate package preview + * 是否生成打包报告 + */ +export default {}; + +export function isReportMode(): boolean { + return process.env.REPORT === 'true'; +} diff --git a/config/vite.config.base.mts b/config/vite.config.base.mts new file mode 100644 index 0000000..f7e889e --- /dev/null +++ b/config/vite.config.base.mts @@ -0,0 +1,56 @@ +import { resolve } from 'path'; +import vue from '@vitejs/plugin-vue'; +import vueJsx from '@vitejs/plugin-vue-jsx'; +import svgLoader from 'vite-svg-loader'; +import configArcoStyleImportPlugin from './plugin/arcoStyleImport'; +import type { UserConfigExport, ConfigEnv } from 'vite'; + +export default ({}: ConfigEnv): UserConfigExport => { + return { + base: '/', + plugins: [ + vue(), + vueJsx(), + svgLoader({ svgoConfig: {} }), + configArcoStyleImportPlugin() + ], + resolve: { + alias: [ + { + find: '@', + replacement: resolve(__dirname, '../src') + }, + { + find: 'assets', + replacement: resolve(__dirname, '../src/assets') + }, + { + find: 'vue', + replacement: 'vue/dist/vue.esm-bundler.js' // compile template + } + ], + extensions: ['.ts', '.js'] + }, + define: { + 'process.env': {} + }, + publicDir: 'public', + optimizeDeps: { + include: ['mitt', 'dayjs', 'axios', 'pinia', '@vueuse/core'], + exclude: ['@iconify-icons/lets-icons'] + }, + css: { + preprocessorOptions: { + less: { + modifyVars: { + hack: `true; @import (reference) "${resolve( + 'src/assets/style/variables.less' + )}";` + }, + math: 'parens-division', + javascriptEnabled: true + } + } + } + }; +}; diff --git a/config/vite.config.dev.mts b/config/vite.config.dev.mts new file mode 100644 index 0000000..3db173a --- /dev/null +++ b/config/vite.config.dev.mts @@ -0,0 +1,19 @@ +import baseConfig from './vite.config.base.mts'; +import type { UserConfigExport, ConfigEnv } from 'vite'; + +export default ({ mode }: ConfigEnv): UserConfigExport => { + return { + mode: 'development', + server: { + open: true, + fs: { + strict: true + }, + warmup: { + // 预热的客户端文件:首页、views、 components + clientFiles: ['./index.html', './src/{views,components}/*'] + } + }, + ...baseConfig({ mode } as ConfigEnv) + }; +}; diff --git a/config/vite.config.prod.mts b/config/vite.config.prod.mts new file mode 100644 index 0000000..0b86e2a --- /dev/null +++ b/config/vite.config.prod.mts @@ -0,0 +1,38 @@ +import baseConfig from './vite.config.base.mts'; +import configCompressPlugin from './plugin/compress'; +import configVisualizerPlugin from './plugin/visualizer'; +import configArcoResolverPlugin from './plugin/arcoResolver'; +import configImageminPlugin from './plugin/imagemin'; +import type { UserConfigExport, ConfigEnv } from 'vite'; + +export default ({ mode }: ConfigEnv): UserConfigExport => { + return { + mode: 'production', + plugins: [ + configCompressPlugin('gzip'), + configVisualizerPlugin(), + configArcoResolverPlugin(), + configImageminPlugin() + ], + build: { + // 浏览器兼容目标 + target: 'es2015', + // 是否生成 source map 文件 + sourcemap: false, + rollupOptions: { + output: { + entryFileNames: 'static/js/[name]-[hash].js', + chunkFileNames: 'static/js/[name]-[hash].js', + assetFileNames: 'static/[ext]/[name]-[hash].[ext]', + manualChunks: { + arco: ['@arco-design/web-vue'], + chart: ['echarts', 'vue-echarts'], + vue: ['vue', 'vue-router', 'pinia', '@vueuse/core'] + } + } + }, + chunkSizeWarningLimit: 2000 + }, + ...baseConfig({ mode } as ConfigEnv) + }; +}; diff --git a/deploy/Dockerfile b/deploy/Dockerfile new file mode 100644 index 0000000..406a1fe --- /dev/null +++ b/deploy/Dockerfile @@ -0,0 +1,33 @@ +FROM node:22 AS builder + +WORKDIR /build +COPY . . +# 定义参数 +ARG USE_PROXY + +# 根据USE_PROXY参数设置环境变量 +RUN if [ "$USE_PROXY" = "1" ]; then \ + npm config set registry https://mirrors.huaweicloud.com/repository/npm/ && \ + npm i -g nrm && nrm use taobao; \ + fi \ + && npm install -g npm@latest pnpm && pnpm i && pnpm build + +FROM nginx:latest + +# 替换nginx中的地址 +# ARG NGINX_CONFIG_URL +ENV NGINX_CONFIG_URL=kami_backend + +WORKDIR /app +# 替换默认的配置文件 +COPY --from=builder /build/deploy/nginx/ /etc/nginx/conf.d/ +COPY --from=builder /build/dist/ /app/ + +# 替换文件里的内容 +RUN sed -i "s#NGINX_CONFIG_URL#${NGINX_CONFIG_URL}#g" /etc/nginx/conf.d/default.conf +RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/* + +# 添加安全检查 +HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 CMD curl -f http://127.0.0.1:12400/api/monitor/heathcheck || exit 1 +# CMD ["sed", "-i", "'s#NGINX_CONFIG_URL#${NGINX_CONFIG_URL}#g'", "/etc/nginx/conf.d/default.conf && nginx ", "-g", "'daemon off;'"] +EXPOSE 12400 \ No newline at end of file diff --git a/deploy/docker-compose-local.yml b/deploy/docker-compose-local.yml new file mode 100644 index 0000000..c5ca1a8 --- /dev/null +++ b/deploy/docker-compose-local.yml @@ -0,0 +1,19 @@ +services: + kami_frontend: + build: + context: ../. + dockerfile: ./deploy/Dockerfile + args: + - USE_PROXY=1 + container_name: kami_frontend + image: kami_frontend:latest + ports: + - 12400:12400 + networks: + - 1panel-network + labels: + createdBy: Developer + +networks: + 1panel-network: + external: true diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml new file mode 100644 index 0000000..c87be48 --- /dev/null +++ b/deploy/docker-compose.yml @@ -0,0 +1,24 @@ +services: + kami_frontend: + build: + context: ../. + dockerfile: ./deploy/Dockerfile + args: + - USE_PROXY=$USE_PROXY + environment: + - NGINX_CONFIG_URL=$NGINX_CONFIG_URL + container_name: $CONTAINER + image: kami_frontend:$VERSION + restart: always + ports: + - 127.0.0.1:$PORT:12400 + networks: + 1panel-network: + aliases: + - $ALIASES + labels: + createdBy: Developer + +networks: + 1panel-network: + external: true diff --git a/deploy/nginx/default.conf b/deploy/nginx/default.conf new file mode 100644 index 0000000..e368240 --- /dev/null +++ b/deploy/nginx/default.conf @@ -0,0 +1,23 @@ +server { + listen 12400; + server_name localhost; + client_max_body_size 100M; # 全局设置,影响所有的 server 块 + + location / { + root /app; + index index.html index.htm; + try_files $uri $uri/ /index.html; + } + location /api/ { + proxy_pass http://NGINX_CONFIG_URL:12401/api/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + + #以下是新增配置 + proxy_connect_timeout 120; + proxy_send_timeout 300; + proxy_read_timeout 300; + proxy_http_version 1.1; + } +} \ No newline at end of file diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..f454276 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,154 @@ +import js from '@eslint/js'; +import pluginVue from 'eslint-plugin-vue'; +import * as parserVue from 'vue-eslint-parser'; +import configPrettier from 'eslint-config-prettier'; +import pluginPrettier from 'eslint-plugin-prettier'; +import { defineFlatConfig } from 'eslint-define-config'; +import * as parserTypeScript from '@typescript-eslint/parser'; +import pluginTypeScript from '@typescript-eslint/eslint-plugin'; + +export default defineFlatConfig([ + { + ...js.configs.recommended, + ignores: ['**/.*', '*.d.ts', 'public/*', 'dist/*', 'src/assets/**'], + languageOptions: { + globals: {} + }, + plugins: { + prettier: pluginPrettier + }, + rules: { + ...configPrettier.rules, + ...pluginPrettier.configs.recommended.rules, + // 禁止使用 var + 'no-var': 'error', + // 禁止使用 console + 'no-console': 'off', + // 禁止使用 debugger + 'no-debugger': 'error', + // 禁止不必要的转义字符 + 'no-useless-escape': 'off', + // 禁止出现未使用过的变量,忽略 _ 开头的参数和变量 + 'no-unused-vars': [ + 'warn', + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_' + } + ], + 'prettier/prettier': [ + 'error', + { + endOfLine: 'auto' + } + ] + } + }, + { + files: ['**/*.?([cm])ts', '**/*.?([cm])tsx'], + languageOptions: { + parser: parserTypeScript, + parserOptions: { + sourceType: 'module' + } + }, + plugins: { + '@typescript-eslint': pluginTypeScript + }, + rules: { + ...pluginTypeScript.configs.strict.rules, + '@typescript-eslint/ban-types': 'off', + // 检查并报错重复声明的变量 + '@typescript-eslint/no-redeclare': 'error', + // 关闭对 TypeScript 注释的限制 + '@typescript-eslint/ban-ts-comment': 'off', + // 允许使用显式的 `any` 类型 + '@typescript-eslint/no-explicit-any': 'off', + // 建议使用 `as const` 而不是 `const` 断言类型 + '@typescript-eslint/prefer-as-const': 'warn', + // 允许使用非空断言 `!` + '@typescript-eslint/no-non-null-assertion': 'off', + // 强制导入类型时不产生副作用 + '@typescript-eslint/no-import-type-side-effects': 'error', + // 关闭对显式指定导出函数和类的类型的要求 + '@typescript-eslint/explicit-module-boundary-types': 'off', + // 强制一致的类型导入方式 + '@typescript-eslint/consistent-type-imports': [ + 'error', + { disallowTypeAnnotations: false, fixStyle: 'inline-type-imports' } + ], + // 建议优先使用字面量枚举成员 + '@typescript-eslint/prefer-literal-enum-member': [ + 'error', + { allowBitwiseExpressions: true } + ], + '@typescript-eslint/no-unused-vars': [ + 'warn', + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_' + } + ] + } + }, + { + files: ['**/*.?([cm])js'], + rules: { + '@typescript-eslint/no-require-imports': 'off', + '@typescript-eslint/no-var-requires': 'off' + } + }, + { + files: ['**/*.d.ts'], + rules: { + 'eslint-comments/no-unlimited-disable': 'off', + 'import/no-duplicates': 'off', + 'unused-imports/no-unused-vars': 'off' + } + }, + { + files: ['**/*.vue'], + languageOptions: { + globals: {}, + parser: parserVue, + parserOptions: { + ecmaFeatures: { + jsx: true + }, + extraFileExtensions: ['.vue'], + parser: '@typescript-eslint/parser', + sourceType: 'module' + } + }, + plugins: { + vue: pluginVue + }, + processor: pluginVue.processors['.vue'], + rules: { + ...pluginVue.configs.base.rules, + ...pluginVue.configs['vue3-essential'].rules, + ...pluginVue.configs['vue3-recommended'].rules, + // 关闭对于组件 props 需要默认值的检查 + 'vue/require-default-prop': 'off', + // 关闭对于单行 HTML 元素内容换行的检查 + 'vue/singleline-html-element-content-newline': 'off', + // 关闭对于每行 HTML 属性数量的限制检查 + 'vue/max-attributes-per-line': 'off', + // 强制自定义事件的命名为驼峰式命名 + 'vue/custom-event-name-casing': ['error', 'camelCase'], + // 显示警告,不建议使用 v-text 指令 + 'vue/no-v-text': 'warn', + // 显示警告,建议在 Vue 组件中添加间距行 + 'vue/padding-line-between-blocks': 'warn', + // 显示警告,建议直接导出 Vue 组件 + 'vue/require-direct-export': 'warn', + // 允许使用单个单词作为组件名 + 'vue/multi-word-component-names': 'off', + // 关闭对于 TypeScript 注释的检查 + '@typescript-eslint/ban-ts-comment': 'off', + // 关闭对于显式声明 any 类型的检查 + '@typescript-eslint/no-explicit-any': 'off', + 'no-unused-vars': 'off' + } + } +]); diff --git a/index.html b/index.html new file mode 100644 index 0000000..3e75feb --- /dev/null +++ b/index.html @@ -0,0 +1,17 @@ + + + + + + + + 卡销终端解决方案(核销端) + + + +
+ + + + \ No newline at end of file diff --git a/openapitools.json b/openapitools.json new file mode 100644 index 0000000..f8d07ce --- /dev/null +++ b/openapitools.json @@ -0,0 +1,7 @@ +{ + "$schema": "./node_modules/@openapitools/openapi-generator-cli/config.schema.json", + "spaces": 2, + "generator-cli": { + "version": "7.10.0" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..9a2fc97 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,10883 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +overrides: + bin-wrapper: npm:bin-wrapper-china + gifsicle: 5.2.0 + +importers: + + .: + dependencies: + '@arco-design/web-vue': + specifier: ^2.57.0 + version: 2.57.0(vue@3.5.13(typescript@5.8.3)) + '@codemirror/commands': + specifier: ^6.8.1 + version: 6.8.1 + '@codemirror/lang-css': + specifier: ^6.3.1 + version: 6.3.1 + '@codemirror/lang-javascript': + specifier: ^6.2.3 + version: 6.2.3 + '@codemirror/language': + specifier: ^6.11.0 + version: 6.11.0 + '@codemirror/language-data': + specifier: ^6.5.1 + version: 6.5.1 + '@codemirror/theme-one-dark': + specifier: ^6.1.2 + version: 6.1.2 + '@codemirror/view': + specifier: ^6.36.6 + version: 6.36.6 + '@milkdown/kit': + specifier: ^7.7.0 + version: 7.7.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6)(element-internals-polyfill@0.1.55) + '@milkdown/theme-nord': + specifier: ^7.7.0 + version: 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0) + '@milkdown/vue': + specifier: ^7.7.0 + version: 7.7.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6)(element-internals-polyfill@0.1.55)(vue@3.5.13(typescript@5.8.3)) + '@openapitools/openapi-generator-cli': + specifier: ^2.19.1 + version: 2.19.1 + '@vueuse/core': + specifier: ^10.11.1 + version: 10.11.1(vue@3.5.13(typescript@5.8.3)) + axios: + specifier: ^1.8.4 + version: 1.8.4 + codemirror: + specifier: ^6.0.1 + version: 6.0.1 + crypto-js: + specifier: ^4.2.0 + version: 4.2.0 + dayjs: + specifier: ^1.11.13 + version: 1.11.13 + echarts: + specifier: ^5.6.0 + version: 5.6.0 + lodash: + specifier: ^4.17.21 + version: 4.17.21 + mitt: + specifier: ^3.0.1 + version: 3.0.1 + nprogress: + specifier: ^0.2.0 + version: 0.2.0 + pinia: + specifier: ^2.3.1 + version: 2.3.1(typescript@5.8.3)(vue@3.5.13(typescript@5.8.3)) + query-string: + specifier: ^9.1.1 + version: 9.1.1 + rollup: + specifier: ^4.40.0 + version: 4.40.0 + sortablejs: + specifier: ^1.15.6 + version: 1.15.6 + vue: + specifier: ^3.5.13 + version: 3.5.13(typescript@5.8.3) + vue-echarts: + specifier: ^6.7.3 + version: 6.7.3(@vue/runtime-core@3.5.13)(echarts@5.6.0)(vue@3.5.13(typescript@5.8.3)) + vue-router: + specifier: ^4.5.0 + version: 4.5.0(vue@3.5.13(typescript@5.8.3)) + devDependencies: + '@arco-plugins/vite-vue': + specifier: ^1.4.5 + version: 1.4.5 + '@commitlint/cli': + specifier: ^19.8.0 + version: 19.8.0(@types/node@22.14.1)(typescript@5.8.3) + '@commitlint/config-conventional': + specifier: ^19.8.0 + version: 19.8.0 + '@commitlint/types': + specifier: ^19.8.0 + version: 19.8.0 + '@eslint/js': + specifier: ^9.25.1 + version: 9.25.1 + '@types/crypto-js': + specifier: ^4.2.2 + version: 4.2.2 + '@types/lodash': + specifier: ^4.17.16 + version: 4.17.16 + '@types/mockjs': + specifier: ^1.0.10 + version: 1.0.10 + '@types/node': + specifier: ^22.14.1 + version: 22.14.1 + '@types/nprogress': + specifier: ^0.2.3 + version: 0.2.3 + '@types/sortablejs': + specifier: ^1.15.8 + version: 1.15.8 + '@typescript-eslint/eslint-plugin': + specifier: ^8.31.0 + version: 8.31.0(@typescript-eslint/parser@8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3))(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': + specifier: ^8.31.0 + version: 8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3) + '@vitejs/plugin-vue': + specifier: ^5.2.3 + version: 5.2.3(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3))(vue@3.5.13(typescript@5.8.3)) + '@vitejs/plugin-vue-jsx': + specifier: ^4.1.2 + version: 4.1.2(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3))(vue@3.5.13(typescript@5.8.3)) + autoprefixer: + specifier: ^10.4.21 + version: 10.4.21(postcss@8.5.3) + consola: + specifier: ^3.4.2 + version: 3.4.2 + cross-env: + specifier: ^7.0.3 + version: 7.0.3 + eslint: + specifier: ^9.25.1 + version: 9.25.1(jiti@2.4.2) + eslint-config-prettier: + specifier: ^9.1.0 + version: 9.1.0(eslint@9.25.1(jiti@2.4.2)) + eslint-define-config: + specifier: ^2.1.0 + version: 2.1.0 + eslint-plugin-prettier: + specifier: ^5.2.6 + version: 5.2.6(eslint-config-prettier@9.1.0(eslint@9.25.1(jiti@2.4.2)))(eslint@9.25.1(jiti@2.4.2))(prettier@3.5.3) + eslint-plugin-vue: + specifier: ^9.33.0 + version: 9.33.0(eslint@9.25.1(jiti@2.4.2)) + husky: + specifier: ^8.0.0 + version: 8.0.3 + less: + specifier: ^4.3.0 + version: 4.3.0 + lint-staged: + specifier: ^15.5.1 + version: 15.5.1 + mockjs: + specifier: ^1.1.0 + version: 1.1.0 + postcss-html: + specifier: ^1.8.0 + version: 1.8.0 + prettier: + specifier: ^3.5.3 + version: 3.5.3 + rollup-plugin-visualizer: + specifier: ^5.14.0 + version: 5.14.0(rollup@4.40.0) + stylelint: + specifier: ^16.19.0 + version: 16.19.0(typescript@5.8.3) + stylelint-config-recess-order: + specifier: ^5.1.1 + version: 5.1.1(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-recommended-vue: + specifier: ^1.6.0 + version: 1.6.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-standard: + specifier: ^37.0.0 + version: 37.0.0(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-standard-less: + specifier: ^3.0.1 + version: 3.0.1(postcss@8.5.3)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-standard-vue: + specifier: ^1.0.0 + version: 1.0.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-order: + specifier: ^6.0.4 + version: 6.0.4(stylelint@16.19.0(typescript@5.8.3)) + stylelint-prettier: + specifier: ^5.0.3 + version: 5.0.3(prettier@3.5.3)(stylelint@16.19.0(typescript@5.8.3)) + typescript: + specifier: ^5.8.3 + version: 5.8.3 + unplugin-vue-components: + specifier: ^0.27.5 + version: 0.27.5(@babel/parser@7.27.0)(rollup@4.40.0)(vue@3.5.13(typescript@5.8.3)) + vite: + specifier: ^5.4.15 + version: 5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3) + vite-plugin-compression: + specifier: ^0.5.1 + version: 0.5.1(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3)) + vite-plugin-imagemin: + specifier: ^0.6.1 + version: 0.6.1(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3)) + vite-svg-loader: + specifier: ^5.1.0 + version: 5.1.0(vue@3.5.13(typescript@5.8.3)) + vue-eslint-parser: + specifier: ^9.4.3 + version: 9.4.3(eslint@9.25.1(jiti@2.4.2)) + vue-tsc: + specifier: ^2.2.10 + version: 2.2.10(typescript@5.8.3) + +packages: + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@antfu/utils@0.7.10': + resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} + + '@arco-design/color@0.4.0': + resolution: {integrity: sha512-s7p9MSwJgHeL8DwcATaXvWT3m2SigKpxx4JA1BGPHL4gfvaQsmQfrLBDpjOJFJuJ2jG2dMt3R3P8Pm9E65q18g==} + + '@arco-design/web-vue@2.57.0': + resolution: {integrity: sha512-R5YReC3C2sG3Jv0+YuR3B7kzkq2KdhhQNCGXD8T11xAoa0zMt6SWTP1xJQOdZcM9du+q3z6tk5mRvh4qkieRJw==} + peerDependencies: + vue: ^3.1.0 + + '@arco-plugins/vite-vue@1.4.5': + resolution: {integrity: sha512-2pJ9mpZP9mRD7NGZwRsZTS9C/US5ilEBBUqxN5Qgnd3Td50u9apJVKAABCZjG2K2eHiyZg7Fd9XhgHJXVJJmsw==} + + '@atomico/hooks@4.4.1': + resolution: {integrity: sha512-Q5q7X6tdCoqov75mAIAeTXUqHJGx/alfBCmYSwdEsWmAdGeDWmikB2UkWJwtJ32n13MMY5Ny+VNiiaEHLafdoA==} + peerDependencies: + '@atomico/react': '*' + '@atomico/vue': '*' + peerDependenciesMeta: + '@atomico/react': + optional: true + '@atomico/vue': + optional: true + + '@atomico/use-attributes@2.0.1': + resolution: {integrity: sha512-YmnUYJAoQsNmY0zK55E7DijvvSl5EilWirHVzyeRVacphKAWYiphj5S0lz+8d2ZQDebw/noWG8PdSLsk84z3wA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-child-nodes@1.0.1': + resolution: {integrity: sha512-Mjz0al79bh2TrLB6wuNImylhePtVQ5PpGYrVazGwzzmlBSRh1LYJq0QcvcvlUw2DKPkd697yFVaNgMwtQMrkjQ==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-click-coordinates@1.0.1': + resolution: {integrity: sha512-u+6DpSDsFyby5+krDF4a+8xhDibFmCNPUTMRElYey9/D+khgBiw9anuYniKJyplXMkI5ns3ev7dxMQPMfMj5lA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-click-press@1.0.1': + resolution: {integrity: sha512-vLhoStp1RXX0AysqolS8RYd1vSDKhOJU9QK45D/vtu4uqb1pZoT7sWMcQUIR7XgM4xoUkEI8Z/8ej1UrLpZhyA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-copy@1.0.1': + resolution: {integrity: sha512-ces7MxytvCpDuGHHpeap2uZ+CJeKi++tWMKK5uwQ8LjsyuFAi7EP/JkBmaSoQzYp4N9uWlNkJnL9zJfoi+CaQQ==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-css-light-dom@1.0.1': + resolution: {integrity: sha512-sClSNYbrnTTUqW9LiJrSi5BjVyPP1bxWWvWT+kiYIU+e6UX6gaR7wCoZ8m7B/ezTukMXjcQdOLlq4RsqxUGnXQ==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-current-value@1.0.1': + resolution: {integrity: sha512-d59warzhAmWyOi2VSWzXH1hw3Pafnao30y5h0D6IFs+NMPibLLybeupdwHqtsjTQlAov7Ak7Q940tzKdgGasDw==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-debounce-state@1.0.1': + resolution: {integrity: sha512-vCBGP0nDxxU+RTJ4yHI0JeGeWawEf/6UMj5X0tt0Gk5XKLE/kqKBgWG0uFUh33bbhW1eXuGboeB+/qcm2b8FYw==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-disabled@2.0.1': + resolution: {integrity: sha512-73IcqP2Rpd41j5TVjB823J/J5q6i1F2ZEs2BZuDRy0YRbUYAkDsi+agsuqWWiWNAxezI4zc+wYWj8GOeqilXNA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-drag-resize@1.0.0': + resolution: {integrity: sha512-+wSCARzFmOrURQKbqS0ki+fyQdNnQQosg3/Ov/PJMFLkdkCyHw9lgNjIhyHRo71AqN2hudiLC1Gtfgs5oQe/fA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-form@1.0.1': + resolution: {integrity: sha512-N3RTdUHQlJsJNF4fPV3qj1fK9HPYRrKIYyq410PGICfm4VrTsU2Dbl/eBBnWXIH3MT4VXpUsy3jRk3EFJ8wYDA==} + peerDependencies: + atomico: ^1.75.1 + element-internals-polyfill: ^0.1.49 + + '@atomico/use-internals@1.0.1': + resolution: {integrity: sha512-qLHWzW/lsq9KyoC6v8HM+WiVsbGd2oUy7rl4x/dsouEW/E9qcTsTVeB8tMGL6O+ixYq5fj9BxCuGl49sU2zqIQ==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-intersection-observer@1.1.0': + resolution: {integrity: sha512-0p1X6PSpoztM1wcL0wcO//g2fODSwqWETS4cL+X+3nW5Yjc5d++kjvHq0q2GvhN4VvCAZX9jod3I8iM2eXWWZg==} + peerDependencies: + atomico: ^1.76.4 + + '@atomico/use-keyboard@1.1.0': + resolution: {integrity: sha512-VGA2jDh5nD361IColbRztN4/Wcydhx0MhLZ9emIPtvPsfzUyOdI7mm47OvlnzliaCUnu96G2DuMih9AnR+XzeA==} + peerDependencies: + atomico: ^1.76.4 + + '@atomico/use-listener@1.1.0': + resolution: {integrity: sha512-d7LcW/Rvokfpb/FBBDaBedLygNJmIaznIgDc2xkUxfQFiXyzMAzsNAAHzY0ZEddiYKtxdbkwrZotDDWkhC6/ug==} + peerDependencies: + atomico: ^1.76.4 + + '@atomico/use-media-query@1.0.1': + resolution: {integrity: sha512-7mWFsfs1PzoFXjpa08SZuAN5Ut9UXGNSc/5U9odAJgGvSRnbAoVTguDpHsHVyEAKVt6lRGJPGIytWaVpuzyyWg==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-mutation-observer@2.0.2': + resolution: {integrity: sha512-l5upQLTMSDvwCEq0oXL56vKtmg4SykKSMcNJsgA503hZ35AXmB0LJMz4+dfBCVcahxV7kT0RUnAb9ZE0Q+8rwA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-parallax@1.0.1': + resolution: {integrity: sha512-0swK5Wr6ZD19gCql9iDSE8FlhJ67Ji+odVzhu4CdmU909e1B4Ob16rU5UuHnbDphAh2NZQ780O9CRhuxOUqWRw==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-parent@1.1.1': + resolution: {integrity: sha512-a/gaEH9lVUgoc/ufyLCTjAZiOjRLBtZQLTV4V2DD9MKHQQsL6PColeDk9Qbf6RONo77cfJ60MN+ctjhu98Y8Ow==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-prop-proxy@1.0.1': + resolution: {integrity: sha512-20j1nn8HL52iSo6Y0v210/I90+usm3N7VNcHOYQIjRhiB7YwOqAJhKlbWQwXSEV5pFBhwUGu+Ks9FQdvJG3Esg==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-ref-values@1.0.1': + resolution: {integrity: sha512-IFuwav8IkZ9uSFGscPiubYZnfSbdz2yV4xXdEClBq6IiViP0j8cBisE6YB7eAATJ/EHf7uhIBQGL5LOCk8Vi7A==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-reflect-event@1.0.1': + resolution: {integrity: sha512-HFAREdUlGp48PlhQ9UNfPX7DNI6GgqfmK61yoq3/F9KJow/48ZYnEPlyYy1/GxAeHOTnCK4C8OhclHH2jg8Gzw==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-render@1.1.1': + resolution: {integrity: sha512-SkXTapKVDU/8PzP2z3psOPi3hoKWckSo0T/Q/HSxeu7TGbIpLTsn9jugWZG/rqzTOToOnhLaZ8s0qEEXCsL7ag==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-resize-observer@1.1.0': + resolution: {integrity: sha512-NcFs6G4dFwckO4IPrCzEpPEn1btuHZlHrrvaJnDCW+mf0UuEynwpCUD/264rkVIp5jfdAq4WTE3CBmBm7Nk89g==} + peerDependencies: + atomico: ^1.76.4 + + '@atomico/use-resize-state@1.0.1': + resolution: {integrity: sha512-4gAklY6MxluHCPvC+4oM1c4ArqzDhPRMoSx1egM4OopEew9MwPJymKCCKbKpMe0SIjayAZv9Y2ZdYopn0xrwhQ==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-responsive-state@1.0.1': + resolution: {integrity: sha512-OXjVEBtZRAO5S+mEHe7Lb0r3eDonzGhDCLK1slQwc0N09oxUbz18lSrOPvWB05ezL9fitrxfY+auAIB7AIAUPA==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-router@1.2.0': + resolution: {integrity: sha512-FgrS4g/4usVZFw+rukVUnlHdV6oNUPXW/+2syB0Tbe+XlrXZQlCpu2yw79B3TNazlky5uAnXLEdRbrPtkWzjxA==} + peerDependencies: + atomico: ^1.76.4 + + '@atomico/use-script@1.0.1': + resolution: {integrity: sha512-FXVlQrXVfkbqHzgOkkoE9RmuTlZ2m6Kp64JgM1+jsHL+LpHFtAI7vIRnzyfGA0XvLXESgU8391qPY5z8lxpY7Q==} + peerDependencies: + atomico: ^1.75.1 + + '@atomico/use-slot@1.0.2': + resolution: {integrity: sha512-FLtqpbG1p4c3HSOWiNiGlj6cRbzZks+Nmu04uOZE1gZWqUgun024rqHKLsYcsNlumjPvr4Z/XtioUoFEZuowtQ==} + peerDependencies: + atomico: ^1.76.4 + + '@atomico/use-value-history@1.0.1': + resolution: {integrity: sha512-a0mtNNQ7AXOtJF93ySqp0sw1AQg6GiAEtoThpePEH/CCU07tyW2lKsAINU4/SYxZKYhyMbqBTuziK4D7gixFXg==} + peerDependencies: + atomico: ^1.75.1 + + '@babel/code-frame@7.26.2': + resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.26.8': + resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.26.10': + resolution: {integrity: sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.26.3': + resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.27.0': + resolution: {integrity: sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-annotate-as-pure@7.25.9': + resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.27.0': + resolution: {integrity: sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-create-class-features-plugin@7.27.0': + resolution: {integrity: sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-member-expression-to-functions@7.25.9': + resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.25.9': + resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.26.0': + resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-optimise-call-expression@7.25.9': + resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-plugin-utils@7.25.9': + resolution: {integrity: sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-plugin-utils@7.26.5': + resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-replace-supers@7.26.5': + resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.25.9': + resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.25.9': + resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.25.9': + resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.27.0': + resolution: {integrity: sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.26.3': + resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/parser@7.27.0': + resolution: {integrity: sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-syntax-jsx@7.25.9': + resolution: {integrity: sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-typescript@7.25.9': + resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typescript@7.27.0': + resolution: {integrity: sha512-fRGGjO2UEGPjvEcyAZXRXAS8AfdaQoq7HnxAbJoAoW10B9xOKesmmndJv+Sym2a+9FHWZ9KbyyLCe9s0Sn5jtg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/runtime@7.27.0': + resolution: {integrity: sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.25.9': + resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.27.0': + resolution: {integrity: sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.26.4': + resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.27.0': + resolution: {integrity: sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.27.0': + resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} + engines: {node: '>=6.9.0'} + + '@codemirror/autocomplete@6.18.4': + resolution: {integrity: sha512-sFAphGQIqyQZfP2ZBsSHV7xQvo9Py0rV0dW7W3IMRdS+zDuNb2l3no78CvUaWKGfzFjI4FTrLdUSj86IGb2hRA==} + + '@codemirror/commands@6.8.1': + resolution: {integrity: sha512-KlGVYufHMQzxbdQONiLyGQDUW0itrLZwq3CcY7xpv9ZLRHqzkBSoteocBHtMCoY7/Ci4xhzSrToIeLg7FxHuaw==} + + '@codemirror/lang-angular@0.1.3': + resolution: {integrity: sha512-xgeWGJQQl1LyStvndWtruUvb4SnBZDAu/gvFH/ZU+c0W25tQR8e5hq7WTwiIY2dNxnf+49mRiGI/9yxIwB6f5w==} + + '@codemirror/lang-cpp@6.0.2': + resolution: {integrity: sha512-6oYEYUKHvrnacXxWxYa6t4puTlbN3dgV662BDfSH8+MfjQjVmP697/KYTDOqpxgerkvoNm7q5wlFMBeX8ZMocg==} + + '@codemirror/lang-css@6.3.1': + resolution: {integrity: sha512-kr5fwBGiGtmz6l0LSJIbno9QrifNMUusivHbnA1H6Dmqy4HZFte3UAICix1VuKo0lMPKQr2rqB+0BkKi/S3Ejg==} + + '@codemirror/lang-go@6.0.1': + resolution: {integrity: sha512-7fNvbyNylvqCphW9HD6WFnRpcDjr+KXX/FgqXy5H5ZS0eC5edDljukm/yNgYkwTsgp2busdod50AOTIy6Jikfg==} + + '@codemirror/lang-html@6.4.9': + resolution: {integrity: sha512-aQv37pIMSlueybId/2PVSP6NPnmurFDVmZwzc7jszd2KAF8qd4VBbvNYPXWQq90WIARjsdVkPbw29pszmHws3Q==} + + '@codemirror/lang-java@6.0.1': + resolution: {integrity: sha512-OOnmhH67h97jHzCuFaIEspbmsT98fNdhVhmA3zCxW0cn7l8rChDhZtwiwJ/JOKXgfm4J+ELxQihxaI7bj7mJRg==} + + '@codemirror/lang-javascript@6.2.3': + resolution: {integrity: sha512-8PR3vIWg7pSu7ur8A07pGiYHgy3hHj+mRYRCSG8q+mPIrl0F02rgpGv+DsQTHRTc30rydOsf5PZ7yjKFg2Ackw==} + + '@codemirror/lang-json@6.0.1': + resolution: {integrity: sha512-+T1flHdgpqDDlJZ2Lkil/rLiRy684WMLc74xUnjJH48GQdfJo/pudlTRreZmKwzP8/tGdKf83wlbAdOCzlJOGQ==} + + '@codemirror/lang-less@6.0.2': + resolution: {integrity: sha512-EYdQTG22V+KUUk8Qq582g7FMnCZeEHsyuOJisHRft/mQ+ZSZ2w51NupvDUHiqtsOy7It5cHLPGfHQLpMh9bqpQ==} + + '@codemirror/lang-liquid@6.2.2': + resolution: {integrity: sha512-7Dm841fk37+JQW6j2rI1/uGkJyESrjzyhiIkaLjbbR0U6aFFQvMrJn35WxQreRMADMhzkyVkZM4467OR7GR8nQ==} + + '@codemirror/lang-markdown@6.3.2': + resolution: {integrity: sha512-c/5MYinGbFxYl4itE9q/rgN/sMTjOr8XL5OWnC+EaRMLfCbVUmmubTJfdgpfcSS2SCaT7b+Q+xi3l6CgoE+BsA==} + + '@codemirror/lang-php@6.0.1': + resolution: {integrity: sha512-ublojMdw/PNWa7qdN5TMsjmqkNuTBD3k6ndZ4Z0S25SBAiweFGyY68AS3xNcIOlb6DDFDvKlinLQ40vSLqf8xA==} + + '@codemirror/lang-python@6.1.7': + resolution: {integrity: sha512-mZnFTsL4lW5p9ch8uKNKeRU3xGGxr1QpESLilfON2E3fQzOa/OygEMkaDvERvXDJWJA9U9oN/D4w0ZuUzNO4+g==} + + '@codemirror/lang-rust@6.0.1': + resolution: {integrity: sha512-344EMWFBzWArHWdZn/NcgkwMvZIWUR1GEBdwG8FEp++6o6vT6KL9V7vGs2ONsKxxFUPXKI0SPcWhyYyl2zPYxQ==} + + '@codemirror/lang-sass@6.0.2': + resolution: {integrity: sha512-l/bdzIABvnTo1nzdY6U+kPAC51czYQcOErfzQ9zSm9D8GmNPD0WTW8st/CJwBTPLO8jlrbyvlSEcN20dc4iL0Q==} + + '@codemirror/lang-sql@6.8.0': + resolution: {integrity: sha512-aGLmY4OwGqN3TdSx3h6QeA1NrvaYtF7kkoWR/+W7/JzB0gQtJ+VJxewlnE3+VImhA4WVlhmkJr109PefOOhjLg==} + + '@codemirror/lang-vue@0.1.3': + resolution: {integrity: sha512-QSKdtYTDRhEHCfo5zOShzxCmqKJvgGrZwDQSdbvCRJ5pRLWBS7pD/8e/tH44aVQT6FKm0t6RVNoSUWHOI5vNug==} + + '@codemirror/lang-wast@6.0.2': + resolution: {integrity: sha512-Imi2KTpVGm7TKuUkqyJ5NRmeFWF7aMpNiwHnLQe0x9kmrxElndyH0K6H/gXtWwY6UshMRAhpENsgfpSwsgmC6Q==} + + '@codemirror/lang-xml@6.1.0': + resolution: {integrity: sha512-3z0blhicHLfwi2UgkZYRPioSgVTo9PV5GP5ducFH6FaHy0IAJRg+ixj5gTR1gnT/glAIC8xv4w2VL1LoZfs+Jg==} + + '@codemirror/lang-yaml@6.1.2': + resolution: {integrity: sha512-dxrfG8w5Ce/QbT7YID7mWZFKhdhsaTNOYjOkSIMt1qmC4VQnXSDSYVHHHn8k6kJUfIhtLo8t1JJgltlxWdsITw==} + + '@codemirror/language-data@6.5.1': + resolution: {integrity: sha512-0sWxeUSNlBr6OmkqybUTImADFUP0M3P0IiSde4nc24bz/6jIYzqYSgkOSLS+CBIoW1vU8Q9KUWXscBXeoMVC9w==} + + '@codemirror/language@6.11.0': + resolution: {integrity: sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==} + + '@codemirror/legacy-modes@6.4.2': + resolution: {integrity: sha512-HsvWu08gOIIk303eZQCal4H4t65O/qp1V4ul4zVa3MHK5FJ0gz3qz3O55FIkm+aQUcshUOjBx38t2hPiJwW5/g==} + + '@codemirror/lint@6.8.4': + resolution: {integrity: sha512-u4q7PnZlJUojeRe8FJa/njJcMctISGgPQ4PnWsd9268R4ZTtU+tfFYmwkBvgcrK2+QQ8tYFVALVb5fVJykKc5A==} + + '@codemirror/search@6.5.8': + resolution: {integrity: sha512-PoWtZvo7c1XFeZWmmyaOp2G0XVbOnm+fJzvghqGAktBW3cufwJUWvSCcNG0ppXiBEM05mZu6RhMtXPv2hpllig==} + + '@codemirror/state@6.5.1': + resolution: {integrity: sha512-3rA9lcwciEB47ZevqvD8qgbzhM9qMb8vCcQCNmDfVRPQG4JT9mSb0Jg8H7YjKGGQcFnLN323fj9jdnG59Kx6bg==} + + '@codemirror/state@6.5.2': + resolution: {integrity: sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==} + + '@codemirror/theme-one-dark@6.1.2': + resolution: {integrity: sha512-F+sH0X16j/qFLMAfbciKTxVOwkdAS336b7AXTKOZhy8BR3eH/RelsnLgLFINrpST63mmN2OuwUt0W2ndUgYwUA==} + + '@codemirror/view@6.36.6': + resolution: {integrity: sha512-uxugGLet+Nzp0Jcit8Hn3LypM8ioMLKTsdf8FRoT3HWvZtb9GhaWMe0Cc15rz90Ljab4YFJiAulmIVB74OY0IQ==} + + '@commitlint/cli@19.8.0': + resolution: {integrity: sha512-t/fCrLVu+Ru01h0DtlgHZXbHV2Y8gKocTR5elDOqIRUzQd0/6hpt2VIWOj9b3NDo7y4/gfxeR2zRtXq/qO6iUg==} + engines: {node: '>=v18'} + hasBin: true + + '@commitlint/config-conventional@19.8.0': + resolution: {integrity: sha512-9I2kKJwcAPwMoAj38hwqFXG0CzS2Kj+SAByPUQ0SlHTfb7VUhYVmo7G2w2tBrqmOf7PFd6MpZ/a1GQJo8na8kw==} + engines: {node: '>=v18'} + + '@commitlint/config-validator@19.8.0': + resolution: {integrity: sha512-+r5ZvD/0hQC3w5VOHJhGcCooiAVdynFlCe2d6I9dU+PvXdV3O+fU4vipVg+6hyLbQUuCH82mz3HnT/cBQTYYuA==} + engines: {node: '>=v18'} + + '@commitlint/ensure@19.8.0': + resolution: {integrity: sha512-kNiNU4/bhEQ/wutI1tp1pVW1mQ0QbAjfPRo5v8SaxoVV+ARhkB8Wjg3BSseNYECPzWWfg/WDqQGIfV1RaBFQZg==} + engines: {node: '>=v18'} + + '@commitlint/execute-rule@19.8.0': + resolution: {integrity: sha512-fuLeI+EZ9x2v/+TXKAjplBJWI9CNrHnyi5nvUQGQt4WRkww/d95oVRsc9ajpt4xFrFmqMZkd/xBQHZDvALIY7A==} + engines: {node: '>=v18'} + + '@commitlint/format@19.8.0': + resolution: {integrity: sha512-EOpA8IERpQstxwp/WGnDArA7S+wlZDeTeKi98WMOvaDLKbjptuHWdOYYr790iO7kTCif/z971PKPI2PkWMfOxg==} + engines: {node: '>=v18'} + + '@commitlint/is-ignored@19.8.0': + resolution: {integrity: sha512-L2Jv9yUg/I+jF3zikOV0rdiHUul9X3a/oU5HIXhAJLE2+TXTnEBfqYP9G5yMw/Yb40SnR764g4fyDK6WR2xtpw==} + engines: {node: '>=v18'} + + '@commitlint/lint@19.8.0': + resolution: {integrity: sha512-+/NZKyWKSf39FeNpqhfMebmaLa1P90i1Nrb1SrA7oSU5GNN/lksA4z6+ZTnsft01YfhRZSYMbgGsARXvkr/VLQ==} + engines: {node: '>=v18'} + + '@commitlint/load@19.8.0': + resolution: {integrity: sha512-4rvmm3ff81Sfb+mcWT5WKlyOa+Hd33WSbirTVUer0wjS1Hv/Hzr07Uv1ULIV9DkimZKNyOwXn593c+h8lsDQPQ==} + engines: {node: '>=v18'} + + '@commitlint/message@19.8.0': + resolution: {integrity: sha512-qs/5Vi9bYjf+ZV40bvdCyBn5DvbuelhR6qewLE8Bh476F7KnNyLfdM/ETJ4cp96WgeeHo6tesA2TMXS0sh5X4A==} + engines: {node: '>=v18'} + + '@commitlint/parse@19.8.0': + resolution: {integrity: sha512-YNIKAc4EXvNeAvyeEnzgvm1VyAe0/b3Wax7pjJSwXuhqIQ1/t2hD3OYRXb6D5/GffIvaX82RbjD+nWtMZCLL7Q==} + engines: {node: '>=v18'} + + '@commitlint/read@19.8.0': + resolution: {integrity: sha512-6ywxOGYajcxK1y1MfzrOnwsXO6nnErna88gRWEl3qqOOP8MDu/DTeRkGLXBFIZuRZ7mm5yyxU5BmeUvMpNte5w==} + engines: {node: '>=v18'} + + '@commitlint/resolve-extends@19.8.0': + resolution: {integrity: sha512-CLanRQwuG2LPfFVvrkTrBR/L/DMy3+ETsgBqW1OvRxmzp/bbVJW0Xw23LnnExgYcsaFtos967lul1CsbsnJlzQ==} + engines: {node: '>=v18'} + + '@commitlint/rules@19.8.0': + resolution: {integrity: sha512-IZ5IE90h6DSWNuNK/cwjABLAKdy8tP8OgGVGbXe1noBEX5hSsu00uRlLu6JuruiXjWJz2dZc+YSw3H0UZyl/mA==} + engines: {node: '>=v18'} + + '@commitlint/to-lines@19.8.0': + resolution: {integrity: sha512-3CKLUw41Cur8VMjh16y8LcsOaKbmQjAKCWlXx6B0vOUREplp6em9uIVhI8Cv934qiwkbi2+uv+mVZPnXJi1o9A==} + engines: {node: '>=v18'} + + '@commitlint/top-level@19.8.0': + resolution: {integrity: sha512-Rphgoc/omYZisoNkcfaBRPQr4myZEHhLPx2/vTXNLjiCw4RgfPR1wEgUpJ9OOmDCiv5ZyIExhprNLhteqH4FuQ==} + engines: {node: '>=v18'} + + '@commitlint/types@19.8.0': + resolution: {integrity: sha512-LRjP623jPyf3Poyfb0ohMj8I3ORyBDOwXAgxxVPbSD0unJuW2mJWeiRfaQinjtccMqC5Wy1HOMfa4btKjbNxbg==} + engines: {node: '>=v18'} + + '@csstools/css-parser-algorithms@3.0.4': + resolution: {integrity: sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/css-tokenizer@3.0.3': + resolution: {integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==} + engines: {node: '>=18'} + + '@csstools/media-query-list-parser@4.0.2': + resolution: {integrity: sha512-EUos465uvVvMJehckATTlNqGj4UJWkTmdWuDMjqvSUkjGpmOyFZBVwb4knxCm/k2GMTXY+c/5RkdndzFYWeX5A==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.4 + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/selector-specificity@5.0.0': + resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==} + engines: {node: '>=18'} + peerDependencies: + postcss-selector-parser: ^7.0.0 + + '@dual-bundle/import-meta-resolve@4.1.0': + resolution: {integrity: sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==} + + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.14.54': + resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-x64@0.21.5': + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@eslint-community/eslint-utils@4.4.1': + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/eslint-utils@4.6.1': + resolution: {integrity: sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.20.0': + resolution: {integrity: sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/config-helpers@0.2.1': + resolution: {integrity: sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.13.0': + resolution: {integrity: sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.3.1': + resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.25.1': + resolution: {integrity: sha512-dEIwmjntEx8u3Uvv+kr3PDeeArL8Hw07H9kyYxCjnM9pBjfEhk6uLXSchxxzgiwtRhhzVzqmUSDFBOi1TuZ7qg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.6': + resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.2.8': + resolution: {integrity: sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@floating-ui/core@1.6.9': + resolution: {integrity: sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==} + + '@floating-ui/dom@1.6.13': + resolution: {integrity: sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==} + + '@floating-ui/utils@0.2.9': + resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} + + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.6': + resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} + + '@humanwhocodes/retry@0.4.2': + resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} + engines: {node: '>=18.18'} + + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@keyv/serialize@1.0.3': + resolution: {integrity: sha512-qnEovoOp5Np2JDGonIDL6Ayihw0RhnRh6vxPuHo4RDn1UOzwEo4AeIfpL6UGIrsceWrCMiVPgwRjbHu4vYFc3g==} + + '@lezer/common@1.2.3': + resolution: {integrity: sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==} + + '@lezer/cpp@1.1.2': + resolution: {integrity: sha512-macwKtyeUO0EW86r3xWQCzOV9/CF8imJLpJlPv3sDY57cPGeUZ8gXWOWNlJr52TVByMV3PayFQCA5SHEERDmVQ==} + + '@lezer/css@1.1.9': + resolution: {integrity: sha512-TYwgljcDv+YrV0MZFFvYFQHCfGgbPMR6nuqLabBdmZoFH3EP1gvw8t0vae326Ne3PszQkbXfVBjCnf3ZVCr0bA==} + + '@lezer/go@1.0.0': + resolution: {integrity: sha512-co9JfT3QqX1YkrMmourYw2Z8meGC50Ko4d54QEcQbEYpvdUvN4yb0NBZdn/9ertgvjsySxHsKzH3lbm3vqJ4Jw==} + + '@lezer/highlight@1.2.1': + resolution: {integrity: sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==} + + '@lezer/html@1.3.10': + resolution: {integrity: sha512-dqpT8nISx/p9Do3AchvYGV3qYc4/rKr3IBZxlHmpIKam56P47RSHkSF5f13Vu9hebS1jM0HmtJIwLbWz1VIY6w==} + + '@lezer/java@1.1.3': + resolution: {integrity: sha512-yHquUfujwg6Yu4Fd1GNHCvidIvJwi/1Xu2DaKl/pfWIA2c1oXkVvawH3NyXhCaFx4OdlYBVX5wvz2f7Aoa/4Xw==} + + '@lezer/javascript@1.4.21': + resolution: {integrity: sha512-lL+1fcuxWYPURMM/oFZLEDm0XuLN128QPV+VuGtKpeaOGdcl9F2LYC3nh1S9LkPqx9M0mndZFdXCipNAZpzIkQ==} + + '@lezer/json@1.0.3': + resolution: {integrity: sha512-BP9KzdF9Y35PDpv04r0VeSTKDeox5vVr3efE7eBbx3r4s3oNLfunchejZhjArmeieBH+nVOpgIiBJpEAv8ilqQ==} + + '@lezer/lr@1.4.2': + resolution: {integrity: sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==} + + '@lezer/markdown@1.4.0': + resolution: {integrity: sha512-mk4MYeq6ZQdxgsgRAe0G7kqPRV6Desajfa14TcHoGGXIqqj1/2ARN31VFpmrXDgvXiGBWpA7RXtv0he+UdTkGw==} + + '@lezer/php@1.0.2': + resolution: {integrity: sha512-GN7BnqtGRpFyeoKSEqxvGvhJQiI4zkgmYnDk/JIyc7H7Ifc1tkPnUn/R2R8meH3h/aBf5rzjvU8ZQoyiNDtDrA==} + + '@lezer/python@1.1.15': + resolution: {integrity: sha512-aVQ43m2zk4FZYedCqL0KHPEUsqZOrmAvRhkhHlVPnDD1HODDyyQv5BRIuod4DadkgBEZd53vQOtXTonNbEgjrQ==} + + '@lezer/rust@1.0.2': + resolution: {integrity: sha512-Lz5sIPBdF2FUXcWeCu1//ojFAZqzTQNRga0aYv6dYXqJqPfMdCAI0NzajWUd4Xijj1IKJLtjoXRPMvTKWBcqKg==} + + '@lezer/sass@1.0.7': + resolution: {integrity: sha512-8HLlOkuX/SMHOggI2DAsXUw38TuURe+3eQ5hiuk9QmYOUyC55B1dYEIMkav5A4IELVaW4e1T4P9WRiI5ka4mdw==} + + '@lezer/xml@1.0.6': + resolution: {integrity: sha512-CdDwirL0OEaStFue/66ZmFSeppuL6Dwjlk8qk153mSQwiSH/Dlri4GNymrNWnUmPl2Um7QfV1FO9KFUyX3Twww==} + + '@lezer/yaml@1.0.3': + resolution: {integrity: sha512-GuBLekbw9jDBDhGur82nuwkxKQ+a3W5H0GfaAthDXcAu+XdpS43VlnxA9E9hllkpSP5ellRDKjLLj7Lu9Wr6xA==} + + '@lukeed/csprng@1.1.0': + resolution: {integrity: sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==} + engines: {node: '>=8'} + + '@marijn/find-cluster-break@1.0.2': + resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} + + '@milkdown/components@7.7.0': + resolution: {integrity: sha512-I2/li1HzZPdnNQEcXP2QYJrk2f/lP75ec5av0i3ya5/iCPGUOBxWQm9ddTxmELSY5kVDv2//Z3EwmNoXgyBaXw==} + peerDependencies: + '@codemirror/language': ^6 + '@codemirror/state': ^6 + '@codemirror/view': ^6 + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/plugin-tooltip': ^7.2.0 + '@milkdown/preset-commonmark': ^7.2.0 + '@milkdown/preset-gfm': ^7.2.0 + '@milkdown/prose': ^7.2.0 + '@milkdown/transformer': ^7.2.0 + '@milkdown/utils': ^7.2.0 + + '@milkdown/core@7.7.0': + resolution: {integrity: sha512-vsDuPieRM+dcQROxnEaEqSyAh5/yahr0vgW5YOB9uin5spWdksOMPMU7CEnhdgd5fQ06p9qiS5saJOdRzED7NA==} + peerDependencies: + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + '@milkdown/transformer': ^7.2.0 + + '@milkdown/crepe@7.7.0': + resolution: {integrity: sha512-m0Uk0CuMWWI4Qt/sPgC5sy6tt/mA83gczhQvp1mWPQplk0/o4fMzy45+1G7IePuWwhgosRqfay9nVaEnnuP0dQ==} + + '@milkdown/ctx@7.7.0': + resolution: {integrity: sha512-Gi7/2ldT+WtkQDOTiSAfOmVX5vfoQP49VOjUONKXUCOyCe/7Y06LNz4bbfHVuGP9w0z3s8Ai+YwAvugs/mQdNQ==} + + '@milkdown/exception@7.7.0': + resolution: {integrity: sha512-xP0IgvsQiv9vYOQeny6p2p+8yYuAKgge1u0Ri0eMculYQ6GtWlqL2Nn+2QXGcHB2UeSsjHFl/wiUwJaHjJftmg==} + + '@milkdown/kit@7.7.0': + resolution: {integrity: sha512-6m0kZOGENdNocC9MNJOtYFb+CPpWH/Moo8HGAHxtP6XLpHF0aA4ZOHysVpByrqwxOJqNNg+KzCPCg/G6UHkoDQ==} + + '@milkdown/plugin-block@7.7.0': + resolution: {integrity: sha512-um1c7MlAyMn3KMB6JuBgPp5540+BKnHzye5Dr2gunwdcqVgP8ymkgyILJYBS65sZGPs3AmR3du5pWm3zK/ITSw==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-clipboard@7.7.0': + resolution: {integrity: sha512-GNR0ZtCa3Ihd/nj5qKZeFpbJqMixx2IT2q9ymskafNTFQj/0/KdGmUYlt2J+rlrR801MeBj8CvmpoJMt2Hx7Zg==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-cursor@7.7.0': + resolution: {integrity: sha512-3cVI9atn2td7Mk70JfUjvvILDmZjFhI5buWXul6RG7mlo+MUZIaY5JEO3IWgxKmzuy96bq5UkvF0mbKgaCK1Bw==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-history@7.7.0': + resolution: {integrity: sha512-2UKxsnCuO6QYvlEm7RMaFCxM2Afz+64QRQwWTTf5ki0pCPqua2VXvjw3D+IPQ2Ner0ZTibYABuxrtf7PGrOUtQ==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-indent@7.7.0': + resolution: {integrity: sha512-EMwlO8gq375WmohqtF15QQOFVsZ6nAl069Xe/rC+eKK34YiMfapqab6Tm53JP3Vi8GkJzaat34HqSXyN9uucSQ==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-listener@7.7.0': + resolution: {integrity: sha512-epJkoYoZK08GaI2jhbKLBkEpQrXgVtN2S26OomPzlC0BpQdBYx9TmjIpNAvH1F2J1P6o9cLkkx6+w/HiIul2ag==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-slash@7.7.0': + resolution: {integrity: sha512-Ung+gmxgfYpFlAYrhjx/bYk1ghhGBh3xVIlK73SgF6W+Qi7lcp3B3cV3/+8QtkA6GPUozHfp2aOZRB+0Xmhq5w==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-tooltip@7.7.0': + resolution: {integrity: sha512-mSVf60PjJBIvkQzuEBLajXFpNpBuXGC9exmAHikD93oov2wffvfkZJZ9D5zqTi2qCzenkkB1O2mONDm3oRsb4A==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-trailing@7.7.0': + resolution: {integrity: sha512-aSn5/kqUd4dsrvLHYaBpv6nZlybIZCix+KvPEd+a4bivt0kgKzA+vk/htCU8hEPDjcQLe15j+skjEfVhvIMf3Q==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/plugin-upload@7.7.0': + resolution: {integrity: sha512-P4k6P3+O0L5dvpcIjdX0/eIzoEykqnjkStarkoGeqJaXZ++s8pI3nYSDRseK8EfrfBszd5uGuhEr1LhzRASBkA==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/preset-commonmark@7.7.0': + resolution: {integrity: sha512-kvdATiEWTKvL/2rAWm7bmL7AUzsdQCxm/lhkhlZqMX+JpDLI4wXOErluaNjXC1igmVmJM/RUlSWbS9jSsdwscQ==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + '@milkdown/transformer': ^7.2.0 + + '@milkdown/preset-gfm@7.7.0': + resolution: {integrity: sha512-mzMlDoO3u7xkQO2F0mgtqFArXc3dywbbfG8DcaddyJdvIUJAYeBrjiq/ESimTQ+g8ct0AudRNUi6YdOTaDH+cg==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/preset-commonmark': ^7.2.0 + '@milkdown/prose': ^7.2.0 + '@milkdown/transformer': ^7.2.0 + + '@milkdown/prose@7.7.0': + resolution: {integrity: sha512-fWgQayvsdwpq8kJ3YPXvUNBcmyZ/vzJGQ4KWdJp9TKJOEe2jOGI/ILXfxNx0US/tpRvh4u2XPW+KZbaAOYa5jg==} + + '@milkdown/theme-nord@7.7.0': + resolution: {integrity: sha512-fkWclMq8X8T70uiARAij12/F8KXyxl8iFeRviz1/Xt4bRi7VKxUsOYXKXcB7BGkUlw6kn0m5AvSgRJWH6qTR5g==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + + '@milkdown/transformer@7.7.0': + resolution: {integrity: sha512-nf/PQ6guio9+wNdImv7z5860Q2HCoIfbVS2GAv8/IKz3TxJZdbeHMU0lzhwmp9XUnkCG2VSX7SrR/Ve9gHI4yw==} + peerDependencies: + '@milkdown/prose': ^7.2.0 + + '@milkdown/utils@7.7.0': + resolution: {integrity: sha512-Dq+nH2xAyZhokXwx9XREwJeneyXGmxt7MuXL3wN1xhzE9KMo9xnLtDI0wURpF5AtIpYFuitjsW3vxHuOUmoXDQ==} + peerDependencies: + '@milkdown/core': ^7.2.0 + '@milkdown/ctx': ^7.2.0 + '@milkdown/prose': ^7.2.0 + '@milkdown/transformer': ^7.2.0 + + '@milkdown/vue@7.7.0': + resolution: {integrity: sha512-jw0cad0RBI+hF+5u4o9qB6jITFR45XW6/2I+bMzkmbWGhTqzgODsEGYGvmbM0Qz/S8D9Yk4Hd9zgrCHFkoUq6g==} + peerDependencies: + vue: ^3.0.0 + + '@nestjs/axios@4.0.0': + resolution: {integrity: sha512-1cB+Jyltu/uUPNQrpUimRHEQHrnQrpLzVj6dU3dgn6iDDDdahr10TgHFGTmw5VuJ9GzKZsCLDL78VSwJAs/9JQ==} + peerDependencies: + '@nestjs/common': ^10.0.0 || ^11.0.0 + axios: ^1.3.1 + rxjs: ^7.0.0 + + '@nestjs/common@11.0.20': + resolution: {integrity: sha512-/GH8NDCczjn6+6RNEtSNAts/nq/wQE8L1qZ9TRjqjNqEsZNE1vpFuRIhmcO2isQZ0xY5rySnpaRdrOAul3gQ3A==} + peerDependencies: + class-transformer: '*' + class-validator: '*' + reflect-metadata: ^0.1.12 || ^0.2.0 + rxjs: ^7.1.0 + peerDependenciesMeta: + class-transformer: + optional: true + class-validator: + optional: true + + '@nestjs/core@11.0.20': + resolution: {integrity: sha512-yUkEzBGiRNSEThVl6vMCXgoA9sDGWoRbJsTLdYdCC7lg7PE1iXBnna1FiBfQjT995pm0fjyM1e3WsXmyWeJXbw==} + engines: {node: '>= 20'} + peerDependencies: + '@nestjs/common': ^11.0.0 + '@nestjs/microservices': ^11.0.0 + '@nestjs/platform-express': ^11.0.0 + '@nestjs/websockets': ^11.0.0 + reflect-metadata: ^0.1.12 || ^0.2.0 + rxjs: ^7.1.0 + peerDependenciesMeta: + '@nestjs/microservices': + optional: true + '@nestjs/platform-express': + optional: true + '@nestjs/websockets': + optional: true + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@nuxt/opencollective@0.4.1': + resolution: {integrity: sha512-GXD3wy50qYbxCJ652bDrDzgMr3NFEkIS374+IgFQKkCvk9yiYcLvX2XDYr7UyQxf4wK0e+yqDYRubZ0DtOxnmQ==} + engines: {node: ^14.18.0 || >=16.10.0, npm: '>=5.10.0'} + hasBin: true + + '@nuxtjs/opencollective@0.3.2': + resolution: {integrity: sha512-um0xL3fO7Mf4fDxcqx9KryrB7zgRM5JSlvGN5AGkP6JLM5XEKyjeAiPbNxdXVXQ16isuAhYpvP88NgL2BGd6aA==} + engines: {node: '>=8.0.0', npm: '>=5.0.0'} + hasBin: true + + '@openapitools/openapi-generator-cli@2.19.1': + resolution: {integrity: sha512-APP3EPI/m7bg220qS+7UAFiyLJFbNCjlsEEjrP2sLmW4Za44U8e3Lb2zDy3sbvJvIUnpYWe+hu9RbrxrPP9djQ==} + engines: {node: '>=16'} + hasBin: true + + '@pkgr/core@0.2.4': + resolution: {integrity: sha512-ROFF39F6ZrnzSUEmQQZUar0Jt4xVoP9WnDRdWwF4NNcXs3xBTLgBUDoOwW141y1jP+S8nahIbdxbFC7IShw9Iw==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@popperjs/core@2.11.8': + resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} + + '@rollup/pluginutils@5.1.4': + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/rollup-android-arm-eabi@4.40.0': + resolution: {integrity: sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.40.0': + resolution: {integrity: sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.40.0': + resolution: {integrity: sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.40.0': + resolution: {integrity: sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.40.0': + resolution: {integrity: sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.40.0': + resolution: {integrity: sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.40.0': + resolution: {integrity: sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-arm-musleabihf@4.40.0': + resolution: {integrity: sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==} + cpu: [arm] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-arm64-gnu@4.40.0': + resolution: {integrity: sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-arm64-musl@4.40.0': + resolution: {integrity: sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-loongarch64-gnu@4.40.0': + resolution: {integrity: sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==} + cpu: [loong64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-powerpc64le-gnu@4.40.0': + resolution: {integrity: sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-riscv64-gnu@4.40.0': + resolution: {integrity: sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-riscv64-musl@4.40.0': + resolution: {integrity: sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==} + cpu: [riscv64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-s390x-gnu@4.40.0': + resolution: {integrity: sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-x64-gnu@4.40.0': + resolution: {integrity: sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-x64-musl@4.40.0': + resolution: {integrity: sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@rollup/rollup-win32-arm64-msvc@4.40.0': + resolution: {integrity: sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.40.0': + resolution: {integrity: sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.40.0': + resolution: {integrity: sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==} + cpu: [x64] + os: [win32] + + '@sindresorhus/is@0.7.0': + resolution: {integrity: sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==} + engines: {node: '>=4'} + + '@tokenizer/inflate@0.2.7': + resolution: {integrity: sha512-MADQgmZT1eKjp06jpI2yozxaU9uVs4GzzgSL+uEq7bVcJ9V1ZXQkeGNql1fsSI0gMy1vhvNTNbUqrx+pZfJVmg==} + engines: {node: '>=18'} + + '@tokenizer/token@0.3.0': + resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==} + + '@tootallnate/quickjs-emscripten@0.23.0': + resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} + + '@trysound/sax@0.2.0': + resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} + engines: {node: '>=10.13.0'} + + '@types/conventional-commits-parser@5.0.1': + resolution: {integrity: sha512-7uz5EHdzz2TqoMfV7ee61Egf5y6NkcO4FB/1iCCQnbeiI1F3xzv3vK5dBCXUCLQgGYS+mUeigK1iKQzvED+QnQ==} + + '@types/crypto-js@4.2.2': + resolution: {integrity: sha512-sDOLlVbHhXpAUAL0YHDUUwDZf3iN4Bwi4W6a0W0b+QcAezUbRtH4FVb+9J4h+XFPW7l/gQ9F8qC7P+Ec4k8QVQ==} + + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + + '@types/estree@1.0.7': + resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} + + '@types/glob@7.2.0': + resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + + '@types/imagemin-gifsicle@7.0.4': + resolution: {integrity: sha512-ZghMBd/Jgqg5utTJNPmvf6DkuHzMhscJ8vgf/7MUGCpO+G+cLrhYltL+5d+h3A1B4W73S2SrmJZ1jS5LACpX+A==} + + '@types/imagemin-jpegtran@5.0.4': + resolution: {integrity: sha512-PSMxOeJa8q94Y+qx8Yriw+qj1+vH5xWpvar63o6SGO0Xi5RlKuwHHfJmN2GRUngPrlhe394jOUmpVq8jQlVmFA==} + + '@types/imagemin-mozjpeg@8.0.4': + resolution: {integrity: sha512-ZCAxV8SYJB8ehwHpnbRpHjg5Wc4HcyuAMiDhXbkgC7gujDoOTyHO3dhDkUtZ1oK1DLBRZapqG9etdLVhUml7yQ==} + + '@types/imagemin-optipng@5.2.4': + resolution: {integrity: sha512-mvKnDMC8eCYZetAQudjs1DbgpR84WhsTx1wgvdiXnpuUEti3oJ+MaMYBRWPY0JlQ4+y4TXKOfa7+LOuT8daegQ==} + + '@types/imagemin-svgo@10.0.5': + resolution: {integrity: sha512-9U2Rf7vWBHeqJvzmWNP3vYAKqR0208QqQ9Mkrq9OLIL5AeoF/dRVRou6iUYCufBSim57BpBpCJhZLrTgfS3k1g==} + + '@types/imagemin-webp@7.0.3': + resolution: {integrity: sha512-C2/EMohS4bzsvY5VJvdzHFdcfmnZoui54DmM/9bFtK57/CgGmKkc+p6n49euPGmMFDDvwm4yVl60nwxcZOmH5A==} + + '@types/imagemin@7.0.1': + resolution: {integrity: sha512-xEn5+M3lDBtI3JxLy6eU3ksoVurygnlG7OYhTqJfGGP4PcvYnfn+IABCmMve7ziM/SneHDm5xgJFKC8hCYPicw==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/katex@0.16.7': + resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==} + + '@types/keyv@3.1.4': + resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} + + '@types/lodash.debounce@4.0.9': + resolution: {integrity: sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==} + + '@types/lodash.throttle@4.1.9': + resolution: {integrity: sha512-PCPVfpfueguWZQB7pJQK890F2scYKoDUL3iM522AptHWn7d5NQmeS/LTEHIcLr5PaTzl3dK2Z0xSUHHTHwaL5g==} + + '@types/lodash@4.17.16': + resolution: {integrity: sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==} + + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/minimatch@5.1.2': + resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} + + '@types/mockjs@1.0.10': + resolution: {integrity: sha512-SXgrhajHG7boLv6oU93CcmdDm0HYRiceuz6b+7z+/2lCJPTWDv0V5YiwFHT2ejE4bQqgSXQiVPQYPWv7LGsK1g==} + + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + + '@types/node@16.18.126': + resolution: {integrity: sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw==} + + '@types/node@22.14.1': + resolution: {integrity: sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==} + + '@types/nprogress@0.2.3': + resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==} + + '@types/responselike@1.0.3': + resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} + + '@types/sortablejs@1.15.8': + resolution: {integrity: sha512-b79830lW+RZfwaztgs1aVPgbasJ8e7AXtZYHTELNXZPsERt4ymJdjV4OccDbHQAvHrCcFpbF78jkm0R6h/pZVg==} + + '@types/svgo@2.6.4': + resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@types/web-bluetooth@0.0.20': + resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} + + '@typescript-eslint/eslint-plugin@8.31.0': + resolution: {integrity: sha512-evaQJZ/J/S4wisevDvC1KFZkPzRetH8kYZbkgcTRyql3mcKsf+ZFDV1BVWUGTCAW5pQHoqn5gK5b8kn7ou9aFQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.9.0' + + '@typescript-eslint/parser@8.31.0': + resolution: {integrity: sha512-67kYYShjBR0jNI5vsf/c3WG4u+zDnCTHTPqVMQguffaWWFs7artgwKmfwdifl+r6XyM5LYLas/dInj2T0SgJyw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.9.0' + + '@typescript-eslint/scope-manager@8.31.0': + resolution: {integrity: sha512-knO8UyF78Nt8O/B64i7TlGXod69ko7z6vJD9uhSlm0qkAbGeRUSudcm0+K/4CrRjrpiHfBCjMWlc08Vav1xwcw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@8.31.0': + resolution: {integrity: sha512-DJ1N1GdjI7IS7uRlzJuEDCgDQix3ZVYVtgeWEyhyn4iaoitpMBX6Ndd488mXSx0xah/cONAkEaYyylDyAeHMHg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.9.0' + + '@typescript-eslint/types@8.31.0': + resolution: {integrity: sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.31.0': + resolution: {integrity: sha512-xLmgn4Yl46xi6aDSZ9KkyfhhtnYI15/CvHbpOy/eR5NWhK/BK8wc709KKwhAR0m4ZKRP7h07bm4BWUYOCuRpQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <5.9.0' + + '@typescript-eslint/utils@8.31.0': + resolution: {integrity: sha512-qi6uPLt9cjTFxAb1zGNgTob4x9ur7xC6mHQJ8GwEzGMGE9tYniublmJaowOJ9V2jUzxrltTPfdG2nKlWsq0+Ww==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.9.0' + + '@typescript-eslint/visitor-keys@8.31.0': + resolution: {integrity: sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@uppercod/exp-route@1.4.2': + resolution: {integrity: sha512-rRljihqBd3fBdWSKi4F+ev7OVJfjQyXSfwAxtjaA6PUcpBPbT0GjlJrXKa3wcFAMqE5brAjW0rMxTpXwbKv0pQ==} + + '@uppercod/match-media@1.1.1': + resolution: {integrity: sha512-ITGhdyxadb1ypwow3TkXGdF6vWAmRZWxxfUysZz2kvsGjgaCNSuJzbfLTeWEC+BeL651U18RwZlgpX93ZCRTFg==} + + '@vitejs/plugin-vue-jsx@4.1.2': + resolution: {integrity: sha512-4Rk0GdE0QCdsIkuMmWeg11gmM4x8UmTnZR/LWPm7QJ7+BsK4tq08udrN0isrrWqz5heFy9HLV/7bOLgFS8hUjA==} + engines: {node: ^18.0.0 || >=20.0.0} + peerDependencies: + vite: ^5.0.0 || ^6.0.0 + vue: ^3.0.0 + + '@vitejs/plugin-vue@5.2.3': + resolution: {integrity: sha512-IYSLEQj4LgZZuoVpdSUCw3dIynTWQgPlaRP6iAvMle4My0HdYwr5g5wQAfwOeHQBmYwEkqF70nRpSilr6PoUDg==} + engines: {node: ^18.0.0 || >=20.0.0} + peerDependencies: + vite: ^5.0.0 || ^6.0.0 + vue: ^3.2.25 + + '@volar/language-core@2.4.11': + resolution: {integrity: sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg==} + + '@volar/language-core@2.4.12': + resolution: {integrity: sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA==} + + '@volar/source-map@2.4.11': + resolution: {integrity: sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ==} + + '@volar/source-map@2.4.12': + resolution: {integrity: sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw==} + + '@volar/typescript@2.4.11': + resolution: {integrity: sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw==} + + '@vue/babel-helper-vue-transform-on@1.2.5': + resolution: {integrity: sha512-lOz4t39ZdmU4DJAa2hwPYmKc8EsuGa2U0L9KaZaOJUt0UwQNjNA3AZTq6uEivhOKhhG1Wvy96SvYBoFmCg3uuw==} + + '@vue/babel-plugin-jsx@1.2.5': + resolution: {integrity: sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + + '@vue/babel-plugin-resolve-type@1.2.5': + resolution: {integrity: sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@vue/compiler-core@3.5.13': + resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} + + '@vue/compiler-dom@3.5.13': + resolution: {integrity: sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==} + + '@vue/compiler-sfc@3.5.13': + resolution: {integrity: sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==} + + '@vue/compiler-ssr@3.5.13': + resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==} + + '@vue/compiler-vue2@2.7.16': + resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} + + '@vue/devtools-api@6.6.4': + resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} + + '@vue/language-core@2.2.10': + resolution: {integrity: sha512-+yNoYx6XIKuAO8Mqh1vGytu8jkFEOH5C8iOv3i8Z/65A7x9iAOXA97Q+PqZ3nlm2lxf5rOJuIGI/wDtx/riNYw==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@vue/reactivity@3.5.13': + resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==} + + '@vue/runtime-core@3.5.13': + resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==} + + '@vue/runtime-dom@3.5.13': + resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==} + + '@vue/server-renderer@3.5.13': + resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==} + peerDependencies: + vue: 3.5.13 + + '@vue/shared@3.5.13': + resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==} + + '@vueuse/core@10.11.1': + resolution: {integrity: sha512-guoy26JQktXPcz+0n3GukWIy/JDNKti9v6VEMu6kV2sYBsWuGiTU8OWdg+ADfUbHg3/3DlqySDe7JmdHrktiww==} + + '@vueuse/metadata@10.11.1': + resolution: {integrity: sha512-IGa5FXd003Ug1qAZmyE8wF3sJ81xGLSqTqtQ6jaVfkeZ4i5kS2mwQF61yhVqojRnenVew5PldLyRgvdl4YYuSw==} + + '@vueuse/shared@10.11.1': + resolution: {integrity: sha512-LHpC8711VFZlDaYUXEBbFBCQ7GS3dVU9mjOhhMhXP6txTV4EhYQg/KGnQuvt/sPAtoUKq7VVUnL6mVtFoL42sA==} + + JSONStream@1.3.5: + resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} + hasBin: true + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.14.0: + resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} + engines: {node: '>=0.4.0'} + hasBin: true + + agent-base@7.1.3: + resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} + engines: {node: '>= 14'} + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + + alien-signals@1.0.13: + resolution: {integrity: sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-escapes@7.0.0: + resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==} + engines: {node: '>=18'} + + ansi-regex@2.1.1: + resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} + engines: {node: '>=0.10.0'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + engines: {node: '>=12'} + + ansi-styles@2.2.1: + resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} + engines: {node: '>=0.10.0'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arch@2.2.0: + resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} + + archive-type@4.0.0: + resolution: {integrity: sha512-zV4Ky0v1F8dBrdYElwTvQhweQ0P7Kwc1aluqJsYtOBP01jXcWCyW2IEfI1YiqsG+Iy7ZR+o5LF1N+PGECBxHWA==} + engines: {node: '>=4'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-find-index@1.0.2: + resolution: {integrity: sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==} + engines: {node: '>=0.10.0'} + + array-ify@1.0.0: + resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + ast-types@0.13.4: + resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} + engines: {node: '>=4'} + + astral-regex@2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + atomico@1.79.2: + resolution: {integrity: sha512-mshhLRMeIltNYbnQnqgnrvJ/uDa8XDfTQcjw3ymOygQqwHIQ4Sp0LcNYMCbACkV3DtV+eDXb9szwU4qMUuGwYQ==} + + autoprefixer@10.4.21: + resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + + axios@1.8.4: + resolution: {integrity: sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==} + + b-tween@0.3.3: + resolution: {integrity: sha512-oEHegcRpA7fAuc9KC4nktucuZn2aS8htymCPcP3qkEGPqiBH+GfqtqoG2l7LxHngg6O0HFM7hOeOYExl1Oz4ZA==} + + b-validate@1.5.3: + resolution: {integrity: sha512-iCvCkGFskbaYtfQ0a3GmcQCHl/Sv1GufXFGuUQ+FE+WJa7A/espLOuFIn09B944V8/ImPj71T4+rTASxO2PAuA==} + + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + balanced-match@2.0.0: + resolution: {integrity: sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==} + + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + + basic-ftp@5.0.5: + resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} + engines: {node: '>=10.0.0'} + + bin-build@3.0.0: + resolution: {integrity: sha512-jcUOof71/TNAI2uM5uoUaDq2ePcVBQ3R/qhxAz1rX7UfvduAL/RXD3jXzvn8cVcDJdGVkiR1shal3OH0ImpuhA==} + engines: {node: '>=4'} + + bin-check@4.1.0: + resolution: {integrity: sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA==} + engines: {node: '>=4'} + + bin-version-check@4.0.0: + resolution: {integrity: sha512-sR631OrhC+1f8Cvs8WyVWOA33Y8tgwjETNPyyD/myRBXLkfS/vl74FmH/lFcRl9KY3zwGh7jFhvyk9vV3/3ilQ==} + engines: {node: '>=6'} + + bin-version@3.1.0: + resolution: {integrity: sha512-Mkfm4iE1VFt4xd4vH+gx+0/71esbfus2LsnCGe8Pi4mndSPyT+NGES/Eg99jx8/lUGWfu3z2yuB/bt5UB+iVbQ==} + engines: {node: '>=6'} + + bin-wrapper-china@0.1.0: + resolution: {integrity: sha512-1UCm17WYEbgry50tup+AQN+JGVEVzoW4f8HMl899k1lvuFxWKGZXl/G2fgxQxAckRjnloO3ijLVVEsv8zescUg==} + engines: {node: '>=8.3'} + hasBin: true + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + binary-mirror-config@1.41.0: + resolution: {integrity: sha512-ZiIhR1s6Sv1Fv6qCQqfPjx0Cj86BgFlhqNxZgHkQOWcxJcMbO3mj1iqsuVjowYqJqeZL8e52+IEv7IRnSX6T6w==} + + bl@1.2.3: + resolution: {integrity: sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==} + + bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + + boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.24.4: + resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + buffer-alloc-unsafe@1.1.0: + resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} + + buffer-alloc@1.2.0: + resolution: {integrity: sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==} + + buffer-crc32@0.2.13: + resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} + + buffer-fill@1.0.0: + resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==} + + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + + buffer@6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + + cacheable-request@2.1.4: + resolution: {integrity: sha512-vag0O2LKZ/najSoUwDbVlnlCFvhBE/7mGTY2B5FgCBDcRD+oVV1HYTOwM6JZfMg/hIcM6IwnTZ1uQQL5/X3xIQ==} + + cacheable@1.8.10: + resolution: {integrity: sha512-0ZnbicB/N2R6uziva8l6O6BieBklArWyiGx4GkwAhLKhSHyQtRfM9T1nx7HHuHDKkYB/efJQhz3QJ6x/YqoZzA==} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase-keys@2.1.0: + resolution: {integrity: sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==} + engines: {node: '>=0.10.0'} + + camelcase@2.1.1: + resolution: {integrity: sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==} + engines: {node: '>=0.10.0'} + + caniuse-lite@1.0.30001707: + resolution: {integrity: sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==} + + caw@2.0.1: + resolution: {integrity: sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==} + engines: {node: '>=4'} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chalk@1.1.3: + resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==} + engines: {node: '>=0.10.0'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + chalk@5.4.1: + resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + chardet@0.7.0: + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + cli-cursor@3.1.0: + resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} + engines: {node: '>=8'} + + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + + cli-spinners@2.9.2: + resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} + engines: {node: '>=6'} + + cli-truncate@4.0.0: + resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} + engines: {node: '>=18'} + + cli-width@3.0.0: + resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} + engines: {node: '>= 10'} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + clone-response@1.0.2: + resolution: {integrity: sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==} + + clone@1.0.4: + resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} + engines: {node: '>=0.8'} + + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + + codemirror@6.0.1: + resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + + color@3.2.1: + resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} + + colord@2.9.3: + resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + commander@12.1.0: + resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} + engines: {node: '>=18'} + + commander@13.1.0: + resolution: {integrity: sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==} + engines: {node: '>=18'} + + commander@2.20.3: + resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + + commander@7.2.0: + resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} + engines: {node: '>= 10'} + + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + compare-func@2.0.0: + resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} + + compare-versions@4.1.4: + resolution: {integrity: sha512-FemMreK9xNyL8gQevsdRMrvO4lFCkQP7qbuktn1q8ndcNk1+0mz7lgE7b/sNvbhVgY4w6tMN1FDp6aADjqw2rw==} + + compute-scroll-into-view@1.0.20: + resolution: {integrity: sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + concurrently@6.5.1: + resolution: {integrity: sha512-FlSwNpGjWQfRwPLXvJ/OgysbBxPkWpiVjy1042b0U7on7S7qwwMIILRj7WTN1mTgqa582bG6NFuScOoh6Zgdag==} + engines: {node: '>=10.0.0'} + hasBin: true + + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + + config-chain@1.1.13: + resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} + + consola@2.15.3: + resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} + + consola@3.4.2: + resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} + engines: {node: ^14.18.0 || >=16.10.0} + + console-stream@0.1.1: + resolution: {integrity: sha512-QC/8l9e6ofi6nqZ5PawlDgzmMw3OxIXtvolBzap/F4UDBJlDaZRSNbL/lb41C29FcbSJncBFlJFj2WJoNyZRfQ==} + + console.table@0.10.0: + resolution: {integrity: sha512-dPyZofqggxuvSf7WXvNjuRfnsOk1YazkVP8FdxH4tcH2c37wc79/Yl6Bhr7Lsu00KMgy2ql/qCMuNu8xctZM8g==} + engines: {node: '> 0.10'} + + content-disposition@0.5.4: + resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} + engines: {node: '>= 0.6'} + + conventional-changelog-angular@7.0.0: + resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==} + engines: {node: '>=16'} + + conventional-changelog-conventionalcommits@7.0.2: + resolution: {integrity: sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==} + engines: {node: '>=16'} + + conventional-commits-parser@5.0.0: + resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==} + engines: {node: '>=16'} + hasBin: true + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + copy-anything@2.0.6: + resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + cosmiconfig-typescript-loader@6.1.0: + resolution: {integrity: sha512-tJ1w35ZRUiM5FeTzT7DtYWAFFv37ZLqSRkGi2oeCK1gPhvaWjkAtfXvLmvE1pRfxxp9aQo6ba/Pvg1dKj05D4g==} + engines: {node: '>=v18'} + peerDependencies: + '@types/node': '*' + cosmiconfig: '>=9' + typescript: '>=5' + + cosmiconfig@9.0.0: + resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + + crelt@1.0.6: + resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} + + cross-env@7.0.3: + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + hasBin: true + + cross-spawn@5.1.0: + resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} + + cross-spawn@6.0.6: + resolution: {integrity: sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==} + engines: {node: '>=4.8'} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + crypto-js@4.2.0: + resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} + + css-functions-list@3.2.3: + resolution: {integrity: sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==} + engines: {node: '>=12 || >=16'} + + css-select@4.3.0: + resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} + + css-select@5.1.0: + resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} + + css-tree@1.1.3: + resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} + engines: {node: '>=8.0.0'} + + css-tree@2.2.1: + resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + css-tree@2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + css-tree@3.1.0: + resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + css-what@6.1.0: + resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} + engines: {node: '>= 6'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csso@4.2.0: + resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} + engines: {node: '>=8.0.0'} + + csso@5.0.5: + resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + currently-unhandled@0.4.1: + resolution: {integrity: sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==} + engines: {node: '>=0.10.0'} + + cwebp-bin@6.1.2: + resolution: {integrity: sha512-NLEZ/BVAl9g426hwUX/qrQ7b/EfQH7BS1tr+CzPo2EgDQbcdzmUVE+fIfsi64lsL638lWgzTEViMAL4pxV1GOg==} + engines: {node: '>=10'} + hasBin: true + + dargs@8.1.0: + resolution: {integrity: sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw==} + engines: {node: '>=12'} + + data-uri-to-buffer@6.0.2: + resolution: {integrity: sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==} + engines: {node: '>= 14'} + + date-fns@2.30.0: + resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} + engines: {node: '>=0.11'} + + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + + de-indent@1.0.2: + resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} + + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + + decode-named-character-reference@1.1.0: + resolution: {integrity: sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w==} + + decode-uri-component@0.2.2: + resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} + engines: {node: '>=0.10'} + + decode-uri-component@0.4.1: + resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} + engines: {node: '>=14.16'} + + decompress-response@3.3.0: + resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} + engines: {node: '>=4'} + + decompress-tar@4.1.1: + resolution: {integrity: sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==} + engines: {node: '>=4'} + + decompress-tarbz2@4.1.1: + resolution: {integrity: sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==} + engines: {node: '>=4'} + + decompress-targz@4.1.1: + resolution: {integrity: sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==} + engines: {node: '>=4'} + + decompress-unzip@4.0.1: + resolution: {integrity: sha512-1fqeluvxgnn86MOh66u8FjbtJpAFv5wgCT9Iw8rcBqQcCo5tO8eiJw7NNTrvt9n4CRBVq7CstiS922oPgyGLrw==} + engines: {node: '>=4'} + + decompress@4.2.1: + resolution: {integrity: sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==} + engines: {node: '>=4'} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + defaults@1.0.4: + resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + + define-lazy-prop@2.0.0: + resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} + engines: {node: '>=8'} + + degenerator@5.0.1: + resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} + engines: {node: '>= 14'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + detect-libc@2.0.4: + resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} + engines: {node: '>=8'} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dom-serializer@1.4.1: + resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} + + dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + + domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + + domhandler@4.3.1: + resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} + engines: {node: '>= 4'} + + domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + + domutils@2.8.0: + resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} + + domutils@3.1.0: + resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} + + dot-prop@5.3.0: + resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} + engines: {node: '>=8'} + + download@6.2.5: + resolution: {integrity: sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA==} + engines: {node: '>=4'} + + download@7.1.0: + resolution: {integrity: sha512-xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ==} + engines: {node: '>=6'} + + duplexer3@0.1.5: + resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} + + easy-table@1.1.0: + resolution: {integrity: sha512-oq33hWOSSnl2Hoh00tZWaIPi1ievrD9aFG82/IgjlycAnW9hHx5PkJiXpxPsgEE+H7BsbVQXFVFST8TEXS6/pA==} + + echarts@5.6.0: + resolution: {integrity: sha512-oTbVTsXfKuEhxftHqL5xprgLoc0k7uScAwtryCgWF6hPYFLRwOUHiFmHGCBKP5NPFNkDVopOieyUqYGH8Fa3kA==} + + electron-to-chromium@1.5.128: + resolution: {integrity: sha512-bo1A4HH/NS522Ws0QNFIzyPcyUUNV/yyy70Ho1xqfGYzPUme2F/xr4tlEOuM6/A538U1vDA7a4XfCd1CKRegKQ==} + + element-internals-polyfill@0.1.55: + resolution: {integrity: sha512-clsNGQoOsCs8zlkT3q8Sgk9JcFZgYT0cDuXPEmD7ca8bthrYjhXQ19cIz5JGmo8CfQ+g7+SXJkfqBVw5mWB64w==} + + emoji-regex@10.4.0: + resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + end-of-stream@1.4.4: + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + + entities@2.2.0: + resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + environment@1.1.0: + resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} + engines: {node: '>=18'} + + errno@0.1.8: + resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} + hasBin: true + + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + + esbuild-android-64@0.14.54: + resolution: {integrity: sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + esbuild-android-arm64@0.14.54: + resolution: {integrity: sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + esbuild-darwin-64@0.14.54: + resolution: {integrity: sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + esbuild-darwin-arm64@0.14.54: + resolution: {integrity: sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + esbuild-freebsd-64@0.14.54: + resolution: {integrity: sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + esbuild-freebsd-arm64@0.14.54: + resolution: {integrity: sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + esbuild-linux-32@0.14.54: + resolution: {integrity: sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + esbuild-linux-64@0.14.54: + resolution: {integrity: sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + esbuild-linux-arm64@0.14.54: + resolution: {integrity: sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + esbuild-linux-arm@0.14.54: + resolution: {integrity: sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + esbuild-linux-mips64le@0.14.54: + resolution: {integrity: sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + esbuild-linux-ppc64le@0.14.54: + resolution: {integrity: sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + esbuild-linux-riscv64@0.14.54: + resolution: {integrity: sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + esbuild-linux-s390x@0.14.54: + resolution: {integrity: sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + esbuild-netbsd-64@0.14.54: + resolution: {integrity: sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + esbuild-openbsd-64@0.14.54: + resolution: {integrity: sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + esbuild-sunos-64@0.14.54: + resolution: {integrity: sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + esbuild-windows-32@0.14.54: + resolution: {integrity: sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + esbuild-windows-64@0.14.54: + resolution: {integrity: sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + esbuild-windows-arm64@0.14.54: + resolution: {integrity: sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + esbuild@0.14.54: + resolution: {integrity: sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==} + engines: {node: '>=12'} + hasBin: true + + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + escodegen@2.1.0: + resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} + engines: {node: '>=6.0'} + hasBin: true + + eslint-config-prettier@9.1.0: + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + + eslint-define-config@2.1.0: + resolution: {integrity: sha512-QUp6pM9pjKEVannNAbSJNeRuYwW3LshejfyBBpjeMGaJjaDUpVps4C6KVR8R7dWZnD3i0synmrE36znjTkJvdQ==} + engines: {node: '>=18.0.0', npm: '>=9.0.0', pnpm: '>=8.6.0'} + + eslint-plugin-prettier@5.2.6: + resolution: {integrity: sha512-mUcf7QG2Tjk7H055Jk0lGBjbgDnfrvqjhXh9t2xLMSCjZVcw9Rb1V6sVNXO0th3jgeO7zllWPTNRil3JW94TnQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' + eslint-config-prettier: '>= 7.0.0 <10.0.0 || >=10.1.0' + prettier: '>=3.0.0' + peerDependenciesMeta: + '@types/eslint': + optional: true + eslint-config-prettier: + optional: true + + eslint-plugin-vue@9.33.0: + resolution: {integrity: sha512-174lJKuNsuDIlLpjeXc5E2Tss8P44uIimAfGD0b90k0NoirJqpG7stLuU9Vp/9ioTOrQdWVREc4mRd1BD+CvGw==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-scope@8.3.0: + resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.25.1: + resolution: {integrity: sha512-E6Mtz9oGQWDCpV12319d59n4tx9zOTXSTmc8BLVxBx+G/0RdM5MvEEJLU9c0+aleoePYYgVTOsRblx433qmhWQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + + exec-buffer@3.2.0: + resolution: {integrity: sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA==} + engines: {node: '>=4'} + + execa@0.7.0: + resolution: {integrity: sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==} + engines: {node: '>=4'} + + execa@1.0.0: + resolution: {integrity: sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==} + engines: {node: '>=6'} + + execa@4.1.0: + resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} + engines: {node: '>=10'} + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + + executable@4.1.1: + resolution: {integrity: sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==} + engines: {node: '>=4'} + + ext-list@2.2.2: + resolution: {integrity: sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==} + engines: {node: '>=0.10.0'} + + ext-name@5.0.0: + resolution: {integrity: sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==} + engines: {node: '>=4'} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + external-editor@3.1.0: + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + + fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + + fast-uri@3.0.3: + resolution: {integrity: sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==} + + fast-xml-parser@4.5.1: + resolution: {integrity: sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==} + hasBin: true + + fastest-levenshtein@1.0.16: + resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} + engines: {node: '>= 4.9.1'} + + fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + + fd-slicer@1.1.0: + resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} + + fflate@0.8.2: + resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} + + figures@1.7.0: + resolution: {integrity: sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==} + engines: {node: '>=0.10.0'} + + figures@3.2.0: + resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} + engines: {node: '>=8'} + + file-entry-cache@10.0.8: + resolution: {integrity: sha512-FGXHpfmI4XyzbLd3HQ8cbUcsFGohJpZtmQRHr8z8FxxtCe2PcpgIlVLwIgunqjvRmXypBETvwhV4ptJizA+Y1Q==} + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + file-type@10.11.0: + resolution: {integrity: sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==} + engines: {node: '>=6'} + + file-type@12.4.2: + resolution: {integrity: sha512-UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg==} + engines: {node: '>=8'} + + file-type@20.4.1: + resolution: {integrity: sha512-hw9gNZXUfZ02Jo0uafWLaFVPter5/k2rfcrjFJJHX/77xtSDOfJuEFb6oKlFV86FLP1SuyHMW1PSk0U9M5tKkQ==} + engines: {node: '>=18'} + + file-type@3.9.0: + resolution: {integrity: sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==} + engines: {node: '>=0.10.0'} + + file-type@4.4.0: + resolution: {integrity: sha512-f2UbFQEk7LXgWpi5ntcO86OeA/cC80fuDDDaX/fZ2ZGel+AF7leRQqBBW1eJNiiQkrZlAoM6P+VYP5P6bOlDEQ==} + engines: {node: '>=4'} + + file-type@5.2.0: + resolution: {integrity: sha512-Iq1nJ6D2+yIO4c8HHg4fyVb8mAJieo1Oloy1mLLaB2PvezNedhBVm+QU7g0qM42aiMbRXTxKKwGD17rjKNJYVQ==} + engines: {node: '>=4'} + + file-type@6.2.0: + resolution: {integrity: sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==} + engines: {node: '>=4'} + + file-type@8.1.0: + resolution: {integrity: sha512-qyQ0pzAy78gVoJsmYeNgl8uH8yKhr1lVhW7JbzJmnlRi0I4R2eEDEJZVKG8agpDnLpacwNbDhLNG/LMdxHD2YQ==} + engines: {node: '>=6'} + + filename-reserved-regex@2.0.0: + resolution: {integrity: sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ==} + engines: {node: '>=4'} + + filenamify@2.1.0: + resolution: {integrity: sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==} + engines: {node: '>=4'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + filter-obj@5.1.0: + resolution: {integrity: sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==} + engines: {node: '>=14.16'} + + find-up@1.1.2: + resolution: {integrity: sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==} + engines: {node: '>=0.10.0'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + find-up@7.0.0: + resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==} + engines: {node: '>=18'} + + find-versions@3.2.0: + resolution: {integrity: sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==} + engines: {node: '>=6'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flat-cache@6.1.8: + resolution: {integrity: sha512-R6MaD3nrJAtO7C3QOuS79ficm2pEAy++TgEUD8ii1LVlbcgZ9DtASLkt9B+RZSFCzm7QHDMlXPsqqB6W2Pfr1Q==} + + flatted@3.3.2: + resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} + engines: {node: '>= 6'} + + fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + + from2@2.3.0: + resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} + + fs-constants@1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + + fs-extra@11.3.0: + resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} + engines: {node: '>=14.14'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-east-asian-width@1.3.0: + resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} + engines: {node: '>=18'} + + get-proxy@2.1.0: + resolution: {integrity: sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==} + engines: {node: '>=4'} + + get-stdin@4.0.1: + resolution: {integrity: sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==} + engines: {node: '>=0.10.0'} + + get-stream@2.3.1: + resolution: {integrity: sha512-AUGhbbemXxrZJRD5cDvKtQxLuYaIbNtDTK8YqupCI393Q2KSTreEsLUN3ZxAWFGiKTzL6nKuzfcIvieflUX9qA==} + engines: {node: '>=0.10.0'} + + get-stream@3.0.0: + resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==} + engines: {node: '>=4'} + + get-stream@4.1.0: + resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} + engines: {node: '>=6'} + + get-stream@5.2.0: + resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} + engines: {node: '>=8'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + + get-uri@6.0.4: + resolution: {integrity: sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==} + engines: {node: '>= 14'} + + gifsicle@5.2.0: + resolution: {integrity: sha512-vOIS3j0XoTCxq9pkGj43gEix82RkI5FveNgaFZutjbaui/HH+4fR8Y56dwXDuxYo8hR4xOo6/j2h1WHoQW6XLw==} + engines: {node: '>=10'} + hasBin: true + + git-raw-commits@4.0.0: + resolution: {integrity: sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==} + engines: {node: '>=16'} + hasBin: true + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + glob@9.3.5: + resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} + engines: {node: '>=16 || 14 >=14.17'} + + global-directory@4.0.1: + resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==} + engines: {node: '>=18'} + + global-modules@2.0.0: + resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==} + engines: {node: '>=6'} + + global-prefix@3.0.0: + resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==} + engines: {node: '>=6'} + + globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + + globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globby@10.0.2: + resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==} + engines: {node: '>=8'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + globjoin@0.1.4: + resolution: {integrity: sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==} + + got@7.1.0: + resolution: {integrity: sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==} + engines: {node: '>=4'} + + got@8.3.2: + resolution: {integrity: sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==} + engines: {node: '>=4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + has-ansi@2.0.0: + resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==} + engines: {node: '>=0.10.0'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-symbol-support-x@1.4.2: + resolution: {integrity: sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==} + + has-to-string-tag-x@1.4.1: + resolution: {integrity: sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + hookified@1.8.2: + resolution: {integrity: sha512-5nZbBNP44sFCDjSoB//0N7m508APCgbQ4mGGo1KJGBYyCKNHfry1Pvd0JVHZIxjdnqn8nFRBAN/eFB6Rk/4w5w==} + + hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + + html-tags@3.3.1: + resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} + engines: {node: '>=8'} + + htmlparser2@8.0.2: + resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} + + http-cache-semantics@3.8.1: + resolution: {integrity: sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==} + + http-proxy-agent@7.0.2: + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} + engines: {node: '>= 14'} + + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} + + human-signals@1.1.1: + resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} + engines: {node: '>=8.12.0'} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + + husky@8.0.3: + resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} + engines: {node: '>=14'} + hasBin: true + + iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + ignore@7.0.3: + resolution: {integrity: sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==} + engines: {node: '>= 4'} + + image-size@0.5.5: + resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==} + engines: {node: '>=0.10.0'} + hasBin: true + + imagemin-gifsicle@7.0.0: + resolution: {integrity: sha512-LaP38xhxAwS3W8PFh4y5iQ6feoTSF+dTAXFRUEYQWYst6Xd+9L/iPk34QGgK/VO/objmIlmq9TStGfVY2IcHIA==} + engines: {node: '>=10'} + + imagemin-jpegtran@7.0.0: + resolution: {integrity: sha512-MJoyTCW8YjMJf56NorFE41SR/WkaGA3IYk4JgvMlRwguJEEd3PnP9UxA8Y2UWjquz8d+On3Ds/03ZfiiLS8xTQ==} + engines: {node: '>=10'} + + imagemin-mozjpeg@9.0.0: + resolution: {integrity: sha512-TwOjTzYqCFRgROTWpVSt5UTT0JeCuzF1jswPLKALDd89+PmrJ2PdMMYeDLYZ1fs9cTovI9GJd68mRSnuVt691w==} + engines: {node: '>=10'} + + imagemin-optipng@8.0.0: + resolution: {integrity: sha512-CUGfhfwqlPjAC0rm8Fy+R2DJDBGjzy2SkfyT09L8rasnF9jSoHFqJ1xxSZWK6HVPZBMhGPMxCTL70OgTHlLF5A==} + engines: {node: '>=10'} + + imagemin-pngquant@9.0.2: + resolution: {integrity: sha512-cj//bKo8+Frd/DM8l6Pg9pws1pnDUjgb7ae++sUX1kUVdv2nrngPykhiUOgFeE0LGY/LmUbCf4egCHC4YUcZSg==} + engines: {node: '>=10'} + + imagemin-svgo@9.0.0: + resolution: {integrity: sha512-uNgXpKHd99C0WODkrJ8OO/3zW3qjgS4pW7hcuII0RcHN3tnKxDjJWcitdVC/TZyfIqSricU8WfrHn26bdSW62g==} + engines: {node: '>=10'} + + imagemin-webp@6.1.0: + resolution: {integrity: sha512-i8ZluZV1pfQX9aVzmZ/VZh9KBSdPwUlp5VruAa9c30GZnX/nMl5n7h+oUMnI7Mg7+SUpu9mYBsw2nsYGUEllWQ==} + engines: {node: '>=10'} + + imagemin@7.0.1: + resolution: {integrity: sha512-33AmZ+xjZhg2JMCe+vDf6a9mzWukE7l+wAtesjE7KyteqqKjzxv7aVQeWnul1Ve26mWvEQqyPwl0OctNBfSR9w==} + engines: {node: '>=8'} + + import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + import-lazy@4.0.0: + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} + engines: {node: '>=8'} + + import-meta-resolve@4.1.0: + resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + indent-string@2.1.0: + resolution: {integrity: sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==} + engines: {node: '>=0.10.0'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + ini@4.1.1: + resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + inquirer@8.2.6: + resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} + engines: {node: '>=12.0.0'} + + into-stream@3.1.0: + resolution: {integrity: sha512-TcdjPibTksa1NQximqep2r17ISRiNE9fwlfbg3F8ANdvP5/yrFTew86VcO//jk4QTaMlbjypPBq76HN2zaKfZQ==} + engines: {node: '>=4'} + + ip-address@9.0.5: + resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} + engines: {node: '>= 12'} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-core-module@2.16.0: + resolution: {integrity: sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==} + engines: {node: '>= 0.4'} + + is-cwebp-readable@3.0.0: + resolution: {integrity: sha512-bpELc7/Q1/U5MWHn4NdHI44R3jxk0h9ew9ljzabiRl70/UIjL/ZAqRMb52F5+eke/VC8yTiv4Ewryo1fPWidvA==} + + is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finite@1.1.0: + resolution: {integrity: sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-fullwidth-code-point@4.0.0: + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} + engines: {node: '>=12'} + + is-fullwidth-code-point@5.0.0: + resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} + engines: {node: '>=18'} + + is-gif@3.0.0: + resolution: {integrity: sha512-IqJ/jlbw5WJSNfwQ/lHEDXF8rxhRgF6ythk2oiEvhpG29F704eX9NO6TvPfMiq9DrbwgcEDnETYNcZDPewQoVw==} + engines: {node: '>=6'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-interactive@1.0.0: + resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} + engines: {node: '>=8'} + + is-jpg@2.0.0: + resolution: {integrity: sha512-ODlO0ruzhkzD3sdynIainVP5eoOFNN85rxA1+cwwnPe4dKyX0r5+hxNO5XpCrxlHcmb9vkOit9mhRD2JVuimHg==} + engines: {node: '>=6'} + + is-natural-number@4.0.1: + resolution: {integrity: sha512-Y4LTamMe0DDQIIAlaer9eKebAlDSV6huy+TWhJVPlzZh2o4tRP5SQWFlLn5N0To4mDD22/qdOq+veo1cSISLgQ==} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-obj@2.0.0: + resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} + engines: {node: '>=8'} + + is-object@1.0.2: + resolution: {integrity: sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==} + + is-plain-obj@1.1.0: + resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} + engines: {node: '>=0.10.0'} + + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + + is-plain-object@5.0.0: + resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} + engines: {node: '>=0.10.0'} + + is-png@2.0.0: + resolution: {integrity: sha512-4KPGizaVGj2LK7xwJIz8o5B2ubu1D/vcQsgOGFEDlpcvgZHto4gBnyd0ig7Ws+67ixmwKoNmu0hYnpo6AaKb5g==} + engines: {node: '>=8'} + + is-retry-allowed@1.2.0: + resolution: {integrity: sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==} + engines: {node: '>=0.10.0'} + + is-stream@1.1.0: + resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} + engines: {node: '>=0.10.0'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + is-svg@4.4.0: + resolution: {integrity: sha512-v+AgVwiK5DsGtT9ng+m4mClp6zDAmwrW8nZi6Gg15qzvBnRWWdfWA1TGaXyCDnWq5g5asofIgMVl3PjKxvk1ug==} + engines: {node: '>=6'} + + is-text-path@2.0.0: + resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==} + engines: {node: '>=8'} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + is-utf8@0.2.1: + resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==} + + is-what@3.14.1: + resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==} + + is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isurl@1.0.0: + resolution: {integrity: sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==} + engines: {node: '>= 4'} + + iterare@1.2.1: + resolution: {integrity: sha512-RKYVTCjAnRthyJes037NX/IiqeidgN1xc3j1RjFfECFp28A1GVwK9nA+i0rJPaHqSZwygLzRnFlzUuHFoWWy+Q==} + engines: {node: '>=6'} + + jiti@2.4.2: + resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} + hasBin: true + + jpegtran-bin@5.0.2: + resolution: {integrity: sha512-4FSmgIcr8d5+V6T1+dHbPZjaFH0ogVyP4UVsE+zri7S9YLO4qAT2our4IN3sW3STVgNTbqPermdIgt2XuAJ4EA==} + engines: {node: '>=10'} + hasBin: true + + jpegtran-bin@6.0.1: + resolution: {integrity: sha512-WohhhHhqe22de7PU8hXs6Sr5d4BAvkrfA93NR5tGlHyPnFLgvEW/bH+q7fv65JgoiQDsd7SBwwQ/OGRBivU3Mw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-tokens@9.0.1: + resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + jsbn@1.1.0: + resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.0: + resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==} + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonfile@6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + + jsonparse@1.3.1: + resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} + engines: {'0': node >= 0.2.0} + + junk@3.1.0: + resolution: {integrity: sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==} + engines: {node: '>=8'} + + katex@0.16.21: + resolution: {integrity: sha512-XvqR7FgOHtWupfMiigNzmh+MgUVmDGU2kXZm899ZkPfcuoPuFxyHmXsgATDpFZDAXCI8tvinaVcDo8PIIJSo4A==} + hasBin: true + + keyv@3.0.0: + resolution: {integrity: sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + keyv@5.3.3: + resolution: {integrity: sha512-Rwu4+nXI9fqcxiEHtbkvoes2X+QfkTRo1TMkPfwzipGsJlJO/z69vqB4FNl9xJ3xCpAcbkvmEabZfPzrwN3+gQ==} + + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + + known-css-properties@0.36.0: + resolution: {integrity: sha512-A+9jP+IUmuQsNdsLdcg6Yt7voiMF/D4K83ew0OpJtpu+l34ef7LaohWV0Rc6KNvzw6ZDizkqfyB5JznZnzuKQA==} + + less@4.3.0: + resolution: {integrity: sha512-X9RyH9fvemArzfdP8Pi3irr7lor2Ok4rOttDXBhlwDg+wKQsXOXgHWduAJE1EsF7JJx0w0bcO6BC6tCKKYnXKA==} + engines: {node: '>=14'} + hasBin: true + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lightningcss-darwin-arm64@1.29.3: + resolution: {integrity: sha512-fb7raKO3pXtlNbQbiMeEu8RbBVHnpyqAoxTyTRMEWFQWmscGC2wZxoHzZ+YKAepUuKT9uIW5vL2QbFivTgprZg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.29.3: + resolution: {integrity: sha512-KF2XZ4ZdmDGGtEYmx5wpzn6u8vg7AdBHaEOvDKu8GOs7xDL/vcU2vMKtTeNe1d4dogkDdi3B9zC77jkatWBwEQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.29.3: + resolution: {integrity: sha512-VUWeVf+V1UM54jv9M4wen9vMlIAyT69Krl9XjI8SsRxz4tdNV/7QEPlW6JASev/pYdiynUCW0pwaFquDRYdxMw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.29.3: + resolution: {integrity: sha512-UhgZ/XVNfXQVEJrMIWeK1Laj8KbhjbIz7F4znUk7G4zeGw7TRoJxhb66uWrEsonn1+O45w//0i0Fu0wIovYdYg==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.29.3: + resolution: {integrity: sha512-Pqau7jtgJNmQ/esugfmAT1aCFy/Gxc92FOxI+3n+LbMHBheBnk41xHDhc0HeYlx9G0xP5tK4t0Koy3QGGNqypw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + lightningcss-linux-arm64-musl@1.29.3: + resolution: {integrity: sha512-dxakOk66pf7KLS7VRYFO7B8WOJLecE5OPL2YOk52eriFd/yeyxt2Km5H0BjLfElokIaR+qWi33gB8MQLrdAY3A==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + lightningcss-linux-x64-gnu@1.29.3: + resolution: {integrity: sha512-ySZTNCpbfbK8rqpKJeJR2S0g/8UqqV3QnzcuWvpI60LWxnFN91nxpSSwCbzfOXkzKfar9j5eOuOplf+klKtINg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + lightningcss-linux-x64-musl@1.29.3: + resolution: {integrity: sha512-3pVZhIzW09nzi10usAXfIGTTSTYQ141dk88vGFNCgawIzayiIzZQxEcxVtIkdvlEq2YuFsL9Wcj/h61JHHzuFQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + lightningcss-win32-arm64-msvc@1.29.3: + resolution: {integrity: sha512-VRnkAvtIkeWuoBJeGOTrZxsNp4HogXtcaaLm8agmbYtLDOhQdpgxW6NjZZjDXbvGF+eOehGulXZ3C1TiwHY4QQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.29.3: + resolution: {integrity: sha512-IszwRPu2cPnDQsZpd7/EAr0x2W7jkaWqQ1SwCVIZ/tSbZVXPLt6k8s6FkcyBjViCzvB5CW0We0QbbP7zp2aBjQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.29.3: + resolution: {integrity: sha512-GlOJwTIP6TMIlrTFsxTerwC0W6OpQpCGuX1ECRLBUVRh6fpJH3xTqjCjRgQHTb4ZXexH9rtHou1Lf03GKzmhhQ==} + engines: {node: '>= 12.0.0'} + + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + lint-staged@15.5.1: + resolution: {integrity: sha512-6m7u8mue4Xn6wK6gZvSCQwBvMBR36xfY24nF5bMTf2MHDYG6S3yhJuOgdYVw99hsjyDt2d4z168b3naI8+NWtQ==} + engines: {node: '>=18.12.0'} + hasBin: true + + listr2@8.2.5: + resolution: {integrity: sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==} + engines: {node: '>=18.0.0'} + + load-esm@1.0.2: + resolution: {integrity: sha512-nVAvWk/jeyrWyXEAs84mpQCYccxRqgKY4OznLuJhJCa0XsPSfdOIr2zvBZEj3IHEHbX97jjscKRRV539bW0Gpw==} + engines: {node: '>=13.2.0'} + + load-json-file@1.1.0: + resolution: {integrity: sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==} + engines: {node: '>=0.10.0'} + + local-pkg@0.5.1: + resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} + engines: {node: '>=14'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + lodash.camelcase@4.3.0: + resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} + + lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.kebabcase@4.1.1: + resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash.mergewith@4.6.2: + resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==} + + lodash.snakecase@4.1.1: + resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==} + + lodash.startcase@4.4.0: + resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} + + lodash.throttle@4.1.1: + resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} + + lodash.truncate@4.4.2: + resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} + + lodash.uniq@4.5.0: + resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} + + lodash.upperfirst@4.3.1: + resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + log-update@6.1.0: + resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} + engines: {node: '>=18'} + + logalot@2.1.0: + resolution: {integrity: sha512-Ah4CgdSRfeCJagxQhcVNMi9BfGYyEKLa6d7OA6xSbld/Hg3Cf2QiOa1mDpmG7Ve8LOH6DN3mdttzjQAvWTyVkw==} + engines: {node: '>=0.10.0'} + + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + longest@1.0.1: + resolution: {integrity: sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==} + engines: {node: '>=0.10.0'} + + loud-rejection@1.6.0: + resolution: {integrity: sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==} + engines: {node: '>=0.10.0'} + + lowercase-keys@1.0.0: + resolution: {integrity: sha512-RPlX0+PHuvxVDZ7xX+EBVAp4RsVxP/TdDSN2mJYdiq1Lc4Hz7EUSjUI7RZrKKlmrIzVhf6Jo2stj7++gVarS0A==} + engines: {node: '>=0.10.0'} + + lowercase-keys@1.0.1: + resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} + engines: {node: '>=0.10.0'} + + lpad-align@1.1.2: + resolution: {integrity: sha512-MMIcFmmR9zlGZtBcFOows6c2COMekHCIFJz3ew/rRpKZ1wR4mXDPzvcVqLarux8M33X4TPSq2Jdw8WJj0q0KbQ==} + engines: {node: '>=0.10.0'} + hasBin: true + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + + lru-cache@4.1.5: + resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + lru-cache@7.18.3: + resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} + engines: {node: '>=12'} + + magic-string@0.30.17: + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + + make-dir@1.3.0: + resolution: {integrity: sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==} + engines: {node: '>=4'} + + make-dir@2.1.0: + resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} + engines: {node: '>=6'} + + make-dir@3.1.0: + resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} + engines: {node: '>=8'} + + map-obj@1.0.1: + resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} + engines: {node: '>=0.10.0'} + + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + + mathml-tag-names@2.1.3: + resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==} + + mdast-util-definitions@6.0.0: + resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==} + + mdast-util-find-and-replace@3.0.2: + resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} + + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.1.0: + resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.1.0: + resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} + + mdast-util-math@3.0.0: + resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + + mdn-data@2.0.14: + resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + + mdn-data@2.0.28: + resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} + + mdn-data@2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + + mdn-data@2.12.2: + resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==} + + meow@12.1.1: + resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==} + engines: {node: '>=16.10'} + + meow@13.2.0: + resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==} + engines: {node: '>=18'} + + meow@3.7.0: + resolution: {integrity: sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==} + engines: {node: '>=0.10.0'} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.1: + resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-extension-math@3.1.0: + resolution: {integrity: sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-db@1.53.0: + resolution: {integrity: sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mime@1.6.0: + resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} + engines: {node: '>=4'} + hasBin: true + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + + mimic-response@1.0.1: + resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} + engines: {node: '>=4'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@8.0.4: + resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} + engines: {node: '>=16 || 14 >=14.17'} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + minipass@4.2.8: + resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==} + engines: {node: '>=8'} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + mitt@3.0.1: + resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} + + mlly@1.7.3: + resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} + + mockjs@1.1.0: + resolution: {integrity: sha512-eQsKcWzIaZzEZ07NuEyO4Nw65g0hdWAyurVol1IPl1gahRwY+svqzfgfey8U8dahLwG44d6/RwEzuK52rSa/JQ==} + hasBin: true + + mozjpeg@7.1.1: + resolution: {integrity: sha512-iIDxWvzhWvLC9mcRJ1uSkiKaj4drF58oCqK2bITm5c2Jt6cJ8qQjSSru2PCaysG+hLIinryj8mgz5ZJzOYTv1A==} + engines: {node: '>=10'} + hasBin: true + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + muggle-string@0.4.1: + resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} + + mute-stream@0.0.8: + resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + nanoid@5.1.5: + resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==} + engines: {node: ^18 || >=20} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + needle@3.3.1: + resolution: {integrity: sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==} + engines: {node: '>= 4.4.x'} + hasBin: true + + netmask@2.0.2: + resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} + engines: {node: '>= 0.4.0'} + + nice-try@1.0.5: + resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + + normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + + normalize-url@2.0.1: + resolution: {integrity: sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==} + engines: {node: '>=4'} + + npm-conf@1.1.3: + resolution: {integrity: sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==} + engines: {node: '>=4'} + + npm-run-path@2.0.2: + resolution: {integrity: sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==} + engines: {node: '>=4'} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} + + npm-run-path@5.3.0: + resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + nprogress@0.2.0: + resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} + + nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + + number-precision@1.6.0: + resolution: {integrity: sha512-05OLPgbgmnixJw+VvEh18yNPUo3iyp4BEWJcrLu4X9W05KmMifN7Mu5exYvQXqxxeNWhvIF+j3Rij+HmddM/hQ==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + + onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + + open@8.4.2: + resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} + engines: {node: '>=12'} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + optipng-bin@7.0.1: + resolution: {integrity: sha512-W99mpdW7Nt2PpFiaO+74pkht7KEqkXkeRomdWXfEz3SALZ6hns81y/pm1dsGZ6ItUIfchiNIP6ORDr1zETU1jA==} + engines: {node: '>=10'} + hasBin: true + + ora@5.4.1: + resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} + engines: {node: '>=10'} + + orderedmap@2.1.1: + resolution: {integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==} + + os-filter-obj@2.0.0: + resolution: {integrity: sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg==} + engines: {node: '>=4'} + + os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + + ow@0.17.0: + resolution: {integrity: sha512-i3keDzDQP5lWIe4oODyDFey1qVrq2hXKTuTH2VpqwpYtzPiKZt2ziRI4NBQmgW40AnV5Euz17OyWweCb+bNEQA==} + engines: {node: '>=10'} + + p-cancelable@0.3.0: + resolution: {integrity: sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==} + engines: {node: '>=4'} + + p-cancelable@0.4.1: + resolution: {integrity: sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==} + engines: {node: '>=4'} + + p-event@1.3.0: + resolution: {integrity: sha512-hV1zbA7gwqPVFcapfeATaNjQ3J0NuzorHPyG8GPL9g/Y/TplWVBVoCKCXL6Ej2zscrCEv195QNWJXuBH6XZuzA==} + engines: {node: '>=4'} + + p-event@2.3.1: + resolution: {integrity: sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==} + engines: {node: '>=6'} + + p-finally@1.0.0: + resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} + engines: {node: '>=4'} + + p-is-promise@1.1.0: + resolution: {integrity: sha512-zL7VE4JVS2IFSkR2GQKDSPEVxkoH43/p7oEnwpdCndKYJO0HVeRB7fA8TJwuLOTBREtK0ea8eHaxdwcpob5dmg==} + engines: {node: '>=4'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + p-map-series@1.0.0: + resolution: {integrity: sha512-4k9LlvY6Bo/1FcIdV33wqZQES0Py+iKISU9Uc8p8AjWoZPnFKMpVIVD3s0EYn4jzLh1I+WeUZkJ0Yoa4Qfw3Kg==} + engines: {node: '>=4'} + + p-pipe@3.1.0: + resolution: {integrity: sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==} + engines: {node: '>=8'} + + p-reduce@1.0.0: + resolution: {integrity: sha512-3Tx1T3oM1xO/Y8Gj0sWyE78EIJZ+t+aEmXUdvQgvGmSMri7aPTHoovbXEreWKkL5j21Er60XAWLTzKbAKYOujQ==} + engines: {node: '>=4'} + + p-timeout@1.2.1: + resolution: {integrity: sha512-gb0ryzr+K2qFqFv6qi3khoeqMZF/+ajxQipEF6NteZVnvz9tzdsfAVj3lYtn1gAXvH5lfLwfxEII799gt/mRIA==} + engines: {node: '>=4'} + + p-timeout@2.0.1: + resolution: {integrity: sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==} + engines: {node: '>=4'} + + pac-proxy-agent@7.2.0: + resolution: {integrity: sha512-TEB8ESquiLMc0lV8vcd5Ql/JAKAoyzHFXaStwjkzpOpC5Yv+pIzLfHvjTSdf3vpa2bMiUQrg9i6276yn8666aA==} + engines: {node: '>= 14'} + + pac-resolver@7.0.1: + resolution: {integrity: sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==} + engines: {node: '>= 14'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-json@2.2.0: + resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==} + engines: {node: '>=0.10.0'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + parse-node-version@1.0.1: + resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==} + engines: {node: '>= 0.10'} + + path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + + path-exists@2.1.0: + resolution: {integrity: sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==} + engines: {node: '>=0.10.0'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + path-key@2.0.1: + resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} + engines: {node: '>=4'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-to-regexp@8.2.0: + resolution: {integrity: sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==} + engines: {node: '>=16'} + + path-type@1.1.0: + resolution: {integrity: sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==} + engines: {node: '>=0.10.0'} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + pathe@0.2.0: + resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==} + + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + + peek-readable@7.0.0: + resolution: {integrity: sha512-nri2TO5JE3/mRryik9LlHFT53cgHfRK0Lt0BAZQXku/AW3E6XLt2GaY8siWi7dvW/m1z0ecn+J+bpDa9ZN3IsQ==} + engines: {node: '>=18'} + + pend@1.2.0: + resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + + pidtree@0.6.0: + resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} + engines: {node: '>=0.10'} + hasBin: true + + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pify@3.0.0: + resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} + engines: {node: '>=4'} + + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + + pinia@2.3.1: + resolution: {integrity: sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==} + peerDependencies: + typescript: '>=4.4.4' + vue: ^2.7.0 || ^3.5.11 + peerDependenciesMeta: + typescript: + optional: true + + pinkie-promise@2.0.1: + resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} + engines: {node: '>=0.10.0'} + + pinkie@2.0.4: + resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} + engines: {node: '>=0.10.0'} + + pkg-types@1.2.1: + resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} + + pngquant-bin@6.0.1: + resolution: {integrity: sha512-Q3PUyolfktf+hYio6wsg3SanQzEU/v8aICg/WpzxXcuCMRb7H2Q81okfpcEztbMvw25ILjd3a87doj2N9kvbpQ==} + engines: {node: '>=10'} + hasBin: true + + postcss-html@1.8.0: + resolution: {integrity: sha512-5mMeb1TgLWoRKxZ0Xh9RZDfwUUIqRrcxO2uXO+Ezl1N5lqpCiSU5Gk6+1kZediBfBHFtPCdopr2UZ2SgUsKcgQ==} + engines: {node: ^12 || >=14} + + postcss-less@6.0.0: + resolution: {integrity: sha512-FPX16mQLyEjLzEuuJtxA8X3ejDLNGGEG503d2YGZR5Ask1SpDN8KmZUMpzCvyalWRywAn1n1VOA5dcqfCLo5rg==} + engines: {node: '>=12'} + peerDependencies: + postcss: ^8.3.5 + + postcss-resolve-nested-selector@0.1.6: + resolution: {integrity: sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==} + + postcss-safe-parser@6.0.0: + resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.3.3 + + postcss-safe-parser@7.0.1: + resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==} + engines: {node: '>=18.0'} + peerDependencies: + postcss: ^8.4.31 + + postcss-selector-parser@6.1.2: + resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} + engines: {node: '>=4'} + + postcss-selector-parser@7.1.0: + resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==} + engines: {node: '>=4'} + + postcss-sorting@8.0.2: + resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==} + peerDependencies: + postcss: ^8.4.20 + + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + + postcss@8.4.49: + resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} + engines: {node: ^10 || ^12 || >=14} + + postcss@8.5.3: + resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prepend-http@1.0.4: + resolution: {integrity: sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==} + engines: {node: '>=0.10.0'} + + prepend-http@2.0.0: + resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==} + engines: {node: '>=4'} + + prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + + prettier@3.5.3: + resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} + engines: {node: '>=14'} + hasBin: true + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + prosemirror-changeset@2.2.1: + resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==} + + prosemirror-commands@1.7.0: + resolution: {integrity: sha512-6toodS4R/Aah5pdsrIwnTYPEjW70SlO5a66oo5Kk+CIrgJz3ukOoS+FYDGqvQlAX5PxoGWDX1oD++tn5X3pyRA==} + + prosemirror-dropcursor@1.8.1: + resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==} + + prosemirror-gapcursor@1.3.2: + resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==} + + prosemirror-history@1.4.1: + resolution: {integrity: sha512-2JZD8z2JviJrboD9cPuX/Sv/1ChFng+xh2tChQ2X4bB2HeK+rra/bmJ3xGntCcjhOqIzSDG6Id7e8RJ9QPXLEQ==} + + prosemirror-inputrules@1.5.0: + resolution: {integrity: sha512-K0xJRCmt+uSw7xesnHmcn72yBGTbY45vm8gXI4LZXbx2Z0jwh5aF9xrGQgrVPu0WbyFVFF3E/o9VhJYz6SQWnA==} + + prosemirror-keymap@1.2.2: + resolution: {integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==} + + prosemirror-model@1.25.0: + resolution: {integrity: sha512-/8XUmxWf0pkj2BmtqZHYJipTBMHIdVjuvFzMvEoxrtyGNmfvdhBiRwYt/eFwy2wA9DtBW3RLqvZnjurEkHaFCw==} + + prosemirror-safari-ime-span@1.0.2: + resolution: {integrity: sha512-QJqD8s1zE/CuK56kDsUhndh5hiHh/gFnAuPOA9ytva2s85/ZEt2tNWeALTJN48DtWghSKOmiBsvVn2OlnJ5H2w==} + + prosemirror-schema-list@1.5.1: + resolution: {integrity: sha512-927lFx/uwyQaGwJxLWCZRkjXG0p48KpMj6ueoYiu4JX05GGuGcgzAy62dfiV8eFZftgyBUvLx76RsMe20fJl+Q==} + + prosemirror-state@1.4.3: + resolution: {integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==} + + prosemirror-tables@1.6.4: + resolution: {integrity: sha512-TkDY3Gw52gRFRfRn2f4wJv5WOgAOXLJA2CQJYIJ5+kdFbfj3acR4JUW6LX2e1hiEBiUwvEhzH5a3cZ5YSztpIA==} + + prosemirror-transform@1.10.3: + resolution: {integrity: sha512-Nhh/+1kZGRINbEHmVu39oynhcap4hWTs/BlU7NnxWj3+l0qi8I1mu67v6mMdEe/ltD8hHvU4FV6PHiCw2VSpMw==} + + prosemirror-view@1.38.1: + resolution: {integrity: sha512-4FH/uM1A4PNyrxXbD+RAbAsf0d/mM0D/wAKSVVWK7o0A9Q/oOXJBrw786mBf2Vnrs/Edly6dH6Z2gsb7zWwaUw==} + + proto-list@1.2.4: + resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + + proxy-agent@6.5.0: + resolution: {integrity: sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==} + engines: {node: '>= 14'} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + prr@1.0.1: + resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} + + pseudomap@1.0.2: + resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} + + pump@3.0.2: + resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + query-string@5.1.1: + resolution: {integrity: sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==} + engines: {node: '>=0.10.0'} + + query-string@9.1.1: + resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} + engines: {node: '>=18'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + read-pkg-up@1.0.1: + resolution: {integrity: sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==} + engines: {node: '>=0.10.0'} + + read-pkg@1.1.0: + resolution: {integrity: sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==} + engines: {node: '>=0.10.0'} + + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + redent@1.0.0: + resolution: {integrity: sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==} + engines: {node: '>=0.10.0'} + + reflect-metadata@0.2.2: + resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==} + + regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + + remark-gfm@4.0.1: + resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} + + remark-inline-links@7.0.0: + resolution: {integrity: sha512-4uj1pPM+F495ySZhTIB6ay2oSkTsKgmYaKk/q5HIdhX2fuyLEegpjWa0VdJRJ01sgOqAFo7MBKdDUejIYBMVMQ==} + + remark-math@6.0.0: + resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==} + + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + + remark@15.0.1: + resolution: {integrity: sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==} + + repeating@2.0.1: + resolution: {integrity: sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==} + engines: {node: '>=0.10.0'} + + replace-ext@1.0.1: + resolution: {integrity: sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==} + engines: {node: '>= 0.10'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + resize-detector@0.3.0: + resolution: {integrity: sha512-R/tCuvuOHQ8o2boRP6vgx8hXCCy87H1eY9V5imBYeVNyNVpuL9ciReSccLj2gDcax9+2weXy3bc8Vv+NRXeEvQ==} + + resize-observer-polyfill@1.5.1: + resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-from@5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + + resolve@1.22.9: + resolution: {integrity: sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==} + hasBin: true + + responselike@1.0.2: + resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} + + restore-cursor@3.1.0: + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} + engines: {node: '>=8'} + + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + + reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + + rimraf@2.7.1: + resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + rollup-plugin-visualizer@5.14.0: + resolution: {integrity: sha512-VlDXneTDaKsHIw8yzJAFWtrzguoJ/LnQ+lMpoVfYJ3jJF4Ihe5oYLAqLklIK/35lgUY+1yEzCkHyZ1j4A5w5fA==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + rolldown: 1.x + rollup: 2.x || 3.x || 4.x + peerDependenciesMeta: + rolldown: + optional: true + rollup: + optional: true + + rollup@4.40.0: + resolution: {integrity: sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + rope-sequence@1.3.4: + resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} + + run-async@2.4.1: + resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} + engines: {node: '>=0.12.0'} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + rxjs@6.6.7: + resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} + engines: {npm: '>=2.0.0'} + + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sax@1.4.1: + resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + + scroll-into-view-if-needed@2.2.31: + resolution: {integrity: sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==} + + seek-bzip@1.0.6: + resolution: {integrity: sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==} + hasBin: true + + semver-regex@2.0.0: + resolution: {integrity: sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==} + engines: {node: '>=6'} + + semver-truncate@1.1.2: + resolution: {integrity: sha512-V1fGg9i4CL3qesB6U0L6XAm4xOJiHmt4QAacazumuasc03BvtFGIMCduv01JWQ69Nv+JST9TqhSCiJoxoY031w==} + engines: {node: '>=0.10.0'} + + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + engines: {node: '>=10'} + hasBin: true + + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} + engines: {node: '>=10'} + hasBin: true + + shebang-command@1.2.0: + resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} + engines: {node: '>=0.10.0'} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@1.0.0: + resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} + engines: {node: '>=0.10.0'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + slice-ansi@4.0.0: + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} + engines: {node: '>=10'} + + slice-ansi@5.0.0: + resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} + engines: {node: '>=12'} + + slice-ansi@7.1.0: + resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} + engines: {node: '>=18'} + + smart-buffer@4.2.0: + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + + socks-proxy-agent@8.0.5: + resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==} + engines: {node: '>= 14'} + + socks@2.8.4: + resolution: {integrity: sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==} + engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} + + sort-keys-length@1.0.1: + resolution: {integrity: sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw==} + engines: {node: '>=0.10.0'} + + sort-keys@1.1.2: + resolution: {integrity: sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==} + engines: {node: '>=0.10.0'} + + sort-keys@2.0.0: + resolution: {integrity: sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==} + engines: {node: '>=4'} + + sortablejs@1.15.6: + resolution: {integrity: sha512-aNfiuwMEpfBM/CN6LY0ibyhxPfPbyFeBTYJKCvzkJ2GkUpazIt3H+QIPAMHwqQ7tMKaHz1Qj+rJJCqljnf4p3A==} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + source-map@0.7.4: + resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} + engines: {node: '>= 8'} + + spawn-command@0.0.2: + resolution: {integrity: sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==} + + spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + + spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + + spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + + spdx-license-ids@3.0.20: + resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==} + + split-on-first@3.0.0: + resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} + engines: {node: '>=12'} + + split2@4.2.0: + resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} + engines: {node: '>= 10.x'} + + sprintf-js@1.1.3: + resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==} + + squeak@1.3.0: + resolution: {integrity: sha512-YQL1ulInM+ev8nXX7vfXsCsDh6IqXlrremc1hzi77776BtpWgYJUMto3UM05GSAaGzJgWekszjoKDrVNB5XG+A==} + engines: {node: '>=0.10.0'} + + stable@0.1.8: + resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} + deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' + + strict-uri-encode@1.1.0: + resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==} + engines: {node: '>=0.10.0'} + + string-argv@0.3.2: + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + strip-ansi@3.0.1: + resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} + engines: {node: '>=0.10.0'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + + strip-bom@2.0.0: + resolution: {integrity: sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==} + engines: {node: '>=0.10.0'} + + strip-dirs@2.1.0: + resolution: {integrity: sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==} + + strip-eof@1.0.0: + resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==} + engines: {node: '>=0.10.0'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + + strip-indent@1.0.1: + resolution: {integrity: sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==} + engines: {node: '>=0.10.0'} + hasBin: true + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + strip-outer@1.0.1: + resolution: {integrity: sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==} + engines: {node: '>=0.10.0'} + + strnum@1.0.5: + resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} + + strtok3@10.2.2: + resolution: {integrity: sha512-Xt18+h4s7Z8xyZ0tmBoRmzxcop97R4BAh+dXouUDCYn+Em+1P3qpkUfI5ueWLT8ynC5hZ+q4iPEmGG1urvQGBg==} + engines: {node: '>=18'} + + style-mod@4.1.2: + resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} + + stylelint-config-html@1.1.0: + resolution: {integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==} + engines: {node: ^12 || >=14} + peerDependencies: + postcss-html: ^1.0.0 + stylelint: '>=14.0.0' + + stylelint-config-recess-order@5.1.1: + resolution: {integrity: sha512-eDAHWVBelzDbMbdMj15pSw0Ycykv5eLeriJdbGCp0zd44yvhgZLI+wyVHegzXp5NrstxTPSxl0fuOVKdMm0XLA==} + peerDependencies: + stylelint: '>=16' + + stylelint-config-recommended-less@3.0.1: + resolution: {integrity: sha512-4vp9Z+W0KwxgPL4L3WxXtlMurfen0NXKFFxPHzDYn2s6WVS26Gg7jt3FIO4ZLM1x8WalCR02nwK2h0TH/mafBg==} + peerDependencies: + postcss: ^8.3.3 + stylelint: ^16.0.2 + peerDependenciesMeta: + postcss: + optional: true + + stylelint-config-recommended-vue@1.6.0: + resolution: {integrity: sha512-syk1adIHvbH2T1OiR/spUK4oQy35PZIDw8Zmc7E0+eVK9Z9SK3tdMpGRT/bgGnAPpMt/WaL9K1u0tlF6xM0sMQ==} + engines: {node: ^12 || >=14} + peerDependencies: + postcss-html: ^1.0.0 + stylelint: '>=14.0.0' + + stylelint-config-recommended@14.0.1: + resolution: {integrity: sha512-bLvc1WOz/14aPImu/cufKAZYfXs/A/owZfSMZ4N+16WGXLoX5lOir53M6odBxvhgmgdxCVnNySJmZKx73T93cg==} + engines: {node: '>=18.12.0'} + peerDependencies: + stylelint: ^16.1.0 + + stylelint-config-recommended@15.0.0: + resolution: {integrity: sha512-9LejMFsat7L+NXttdHdTq94byn25TD+82bzGRiV1Pgasl99pWnwipXS5DguTpp3nP1XjvLXVnEJIuYBfsRjRkA==} + engines: {node: '>=18.12.0'} + peerDependencies: + stylelint: ^16.13.0 + + stylelint-config-standard-less@3.0.1: + resolution: {integrity: sha512-l6UrXbfy37hWbeOCYrJqnKzhiy5+rkxHNGNufvyhH2K1KpEWO+lO8YrLzoOTx0VyGMatPQlpR8EXrnLRcEcvhg==} + peerDependencies: + postcss: ^8.3.3 + stylelint: ^16.0.2 + peerDependenciesMeta: + postcss: + optional: true + + stylelint-config-standard-vue@1.0.0: + resolution: {integrity: sha512-wAzU7p6DSlo04pWfCbOcaMq09Nojt0FEsbdxhCBTdC7IguD9ZVl7FP/bvyA0HAHjZGC4JkW7m6WiQaoVMDSuFw==} + engines: {node: ^12 || >=14} + peerDependencies: + postcss-html: ^1.0.0 + stylelint: '>=14.0.0' + + stylelint-config-standard@35.0.0: + resolution: {integrity: sha512-JyQrNZk2BZwVKFauGGxW2U6RuhIfQ4XoHHo+rBzMHcAkLnwI/knpszwXjzxiMgSfcxbZBckM7Vq4LHoANTR85g==} + engines: {node: '>=18.12.0'} + peerDependencies: + stylelint: ^16.0.0 + + stylelint-config-standard@37.0.0: + resolution: {integrity: sha512-+6eBlbSTrOn/il2RlV0zYGQwRTkr+WtzuVSs1reaWGObxnxLpbcspCUYajVQHonVfxVw2U+h42azGhrBvcg8OA==} + engines: {node: '>=18.12.0'} + peerDependencies: + stylelint: ^16.13.0 + + stylelint-less@3.0.1: + resolution: {integrity: sha512-6GkZ4jhmReXxX61IiNaniZFuyTzYTTC4HvRLNNok883d1ux/wUodM1uik+iAHZM1VSCwNASaj0Th6ZX46WZLMw==} + peerDependencies: + postcss: ^8.4.31 + stylelint: ^16.0.2 + + stylelint-order@6.0.4: + resolution: {integrity: sha512-0UuKo4+s1hgQ/uAxlYU4h0o0HS4NiQDud0NAUNI0aa8FJdmYHA5ZZTFHiV5FpmE3071e9pZx5j0QpVJW5zOCUA==} + peerDependencies: + stylelint: ^14.0.0 || ^15.0.0 || ^16.0.1 + + stylelint-prettier@5.0.3: + resolution: {integrity: sha512-B6V0oa35ekRrKZlf+6+jA+i50C4GXJ7X1PPmoCqSUoXN6BrNF6NhqqhanvkLjqw2qgvrS0wjdpeC+Tn06KN3jw==} + engines: {node: '>=18.12.0'} + peerDependencies: + prettier: '>=3.0.0' + stylelint: '>=16.0.0' + + stylelint@16.19.0: + resolution: {integrity: sha512-BJzc5mo/ez0H/ZSl3UbxGdkK/s0kFGsF5/k6IGu4z8wJ1qp49WrOS9RxswvcN6HMirt0g/iiJqOwLHTbWv49IQ==} + engines: {node: '>=18.12.0'} + hasBin: true + + supports-color@2.0.0: + resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==} + engines: {node: '>=0.8.0'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + supports-hyperlinks@3.2.0: + resolution: {integrity: sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig==} + engines: {node: '>=14.18'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + svg-tags@1.0.0: + resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==} + + svgo@2.8.0: + resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} + engines: {node: '>=10.13.0'} + hasBin: true + + svgo@3.3.2: + resolution: {integrity: sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==} + engines: {node: '>=14.0.0'} + hasBin: true + + synckit@0.11.4: + resolution: {integrity: sha512-Q/XQKRaJiLiFIBNN+mndW7S/RHxvwzuZS6ZwmRzUBqJBv/5QIKCEwkBC8GBf8EQJKYnaFs0wOZbKTXBPj8L9oQ==} + engines: {node: ^14.18.0 || >=16.0.0} + + table@6.9.0: + resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} + engines: {node: '>=10.0.0'} + + tar-stream@1.6.2: + resolution: {integrity: sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==} + engines: {node: '>= 0.8.0'} + + temp-dir@1.0.0: + resolution: {integrity: sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==} + engines: {node: '>=4'} + + tempfile@2.0.0: + resolution: {integrity: sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA==} + engines: {node: '>=4'} + + text-extensions@2.4.0: + resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==} + engines: {node: '>=8'} + + through@2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + + timed-out@4.0.1: + resolution: {integrity: sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==} + engines: {node: '>=0.10.0'} + + tinyexec@0.3.1: + resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} + + tippy.js@6.3.7: + resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==} + + tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + + to-buffer@1.1.1: + resolution: {integrity: sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + token-types@6.0.0: + resolution: {integrity: sha512-lbDrTLVsHhOMljPscd0yitpozq7Ga2M5Cvez5AjGg8GASBjtt6iERCAJ93yommPmz62fb45oFIXHEZ3u9bfJEA==} + engines: {node: '>=14.16'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + + trim-newlines@1.0.0: + resolution: {integrity: sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==} + engines: {node: '>=0.10.0'} + + trim-repeated@1.0.0: + resolution: {integrity: sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==} + engines: {node: '>=0.10.0'} + + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + + ts-api-utils@2.1.0: + resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + + tslib@2.3.0: + resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@0.11.0: + resolution: {integrity: sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==} + engines: {node: '>=8'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + + uid@2.0.2: + resolution: {integrity: sha512-u3xV3X7uzvi5b1MncmZo3i2Aw222Zk1keqLA1YkHldREkAhAqi65wuPfe7lHx8H/Wzy+8CE7S7uS3jekIM5s8g==} + engines: {node: '>=8'} + + uint8array-extras@1.4.0: + resolution: {integrity: sha512-ZPtzy0hu4cZjv3z5NW9gfKnNLjoz4y6uv4HlelAjDK7sY/xOkKZv9xK/WQpcsBB3jEybChz9DPC2U/+cusjJVQ==} + engines: {node: '>=18'} + + unbzip2-stream@1.4.3: + resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==} + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + unicorn-magic@0.1.0: + resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} + engines: {node: '>=18'} + + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + + unist-util-is@6.0.0: + resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + + unist-util-remove-position@5.0.0: + resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.1: + resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + unplugin-vue-components@0.27.5: + resolution: {integrity: sha512-m9j4goBeNwXyNN8oZHHxvIIYiG8FQ9UfmKWeNllpDvhU7btKNNELGPt+o3mckQKuPwrE7e0PvCsx+IWuDSD9Vg==} + engines: {node: '>=14'} + peerDependencies: + '@babel/parser': ^7.15.8 + '@nuxt/kit': ^3.2.2 + vue: 2 || 3 + peerDependenciesMeta: + '@babel/parser': + optional: true + '@nuxt/kit': + optional: true + + unplugin@1.16.0: + resolution: {integrity: sha512-5liCNPuJW8dqh3+DM6uNM2EI3MLLpCKp/KY+9pB5M2S2SR2qvvDHhKgBOaTWEbZTAws3CXfB0rKTIolWKL05VQ==} + engines: {node: '>=14.0.0'} + + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + url-parse-lax@1.0.0: + resolution: {integrity: sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==} + engines: {node: '>=0.10.0'} + + url-parse-lax@3.0.0: + resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==} + engines: {node: '>=4'} + + url-to-options@1.0.1: + resolution: {integrity: sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A==} + engines: {node: '>= 4'} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + uuid@3.4.0: + resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} + deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. + hasBin: true + + validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + + vfile-message@4.0.2: + resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + + vite-plugin-compression@0.5.1: + resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==} + peerDependencies: + vite: '>=2.0.0' + + vite-plugin-imagemin@0.6.1: + resolution: {integrity: sha512-cP7LDn8euPrji7WYtDoNQpJEB9nkMxJHm/A+QZnvMrrCSuyo/clpMy/T1v7suDXPBavsDiDdFdVQB5p7VGD2cg==} + peerDependencies: + vite: '>=2.0.0' + + vite-svg-loader@5.1.0: + resolution: {integrity: sha512-M/wqwtOEjgb956/+m5ZrYT/Iq6Hax0OakWbokj8+9PXOnB7b/4AxESHieEtnNEy7ZpjsjYW1/5nK8fATQMmRxw==} + peerDependencies: + vue: '>=3.2.13' + + vite@5.4.18: + resolution: {integrity: sha512-1oDcnEp3lVyHCuQ2YFelM4Alm2o91xNoMncRm1U7S+JdYfYOvbiGZ3/CxGttrOu2M/KcGz7cRC2DoNUA6urmMA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + + vscode-uri@3.0.8: + resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} + + vue-demi@0.13.11: + resolution: {integrity: sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==} + engines: {node: '>=12'} + hasBin: true + peerDependencies: + '@vue/composition-api': ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + + vue-demi@0.14.10: + resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==} + engines: {node: '>=12'} + hasBin: true + peerDependencies: + '@vue/composition-api': ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + + vue-echarts@6.7.3: + resolution: {integrity: sha512-vXLKpALFjbPphW9IfQPOVfb1KjGZ/f8qa/FZHi9lZIWzAnQC1DgnmEK3pJgEkyo6EP7UnX6Bv/V3Ke7p+qCNXA==} + peerDependencies: + '@vue/composition-api': ^1.0.5 + '@vue/runtime-core': ^3.0.0 + echarts: ^5.4.1 + vue: ^2.6.12 || ^3.1.1 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + '@vue/runtime-core': + optional: true + + vue-eslint-parser@9.4.3: + resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + + vue-router@4.5.0: + resolution: {integrity: sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==} + peerDependencies: + vue: ^3.2.0 + + vue-tsc@2.2.10: + resolution: {integrity: sha512-jWZ1xSaNbabEV3whpIDMbjVSVawjAyW+x1n3JeGQo7S0uv2n9F/JMgWW90tGWNFRKya4YwKMZgCtr0vRAM7DeQ==} + hasBin: true + peerDependencies: + typescript: '>=5.0.0' + + vue@3.5.13: + resolution: {integrity: sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + w3c-keyname@2.2.8: + resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} + + wcwidth@1.0.1: + resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + + webpack-virtual-modules@0.6.2: + resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} + + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + + which@1.3.1: + resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} + hasBin: true + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@9.0.0: + resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} + engines: {node: '>=18'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + write-file-atomic@5.0.1: + resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + xml-name-validator@4.0.0: + resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} + engines: {node: '>=12'} + + xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yallist@2.1.2: + resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yaml@2.7.1: + resolution: {integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==} + engines: {node: '>= 14'} + hasBin: true + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yauzl@2.10.0: + resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + yocto-queue@1.2.1: + resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==} + engines: {node: '>=12.20'} + + zrender@5.6.1: + resolution: {integrity: sha512-OFXkDJKcrlx5su2XbzJvj/34Q3m6PvyCZkVPHGYpcCJ52ek4U/ymZyfuV1nKE23AyBJ51E/6Yr0mhZ7xGTO4ag==} + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + + '@antfu/utils@0.7.10': {} + + '@arco-design/color@0.4.0': + dependencies: + color: 3.2.1 + + '@arco-design/web-vue@2.57.0(vue@3.5.13(typescript@5.8.3))': + dependencies: + '@arco-design/color': 0.4.0 + b-tween: 0.3.3 + b-validate: 1.5.3 + compute-scroll-into-view: 1.0.20 + dayjs: 1.11.13 + number-precision: 1.6.0 + resize-observer-polyfill: 1.5.1 + scroll-into-view-if-needed: 2.2.31 + vue: 3.5.13(typescript@5.8.3) + + '@arco-plugins/vite-vue@1.4.5': + dependencies: + '@babel/generator': 7.26.3 + '@babel/helper-module-imports': 7.25.9 + '@babel/parser': 7.26.3 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 + '@types/node': 16.18.126 + transitivePeerDependencies: + - supports-color + + '@atomico/hooks@4.4.1(atomico@1.79.2)(element-internals-polyfill@0.1.55)': + dependencies: + '@atomico/use-attributes': 2.0.1(atomico@1.79.2) + '@atomico/use-child-nodes': 1.0.1(atomico@1.79.2) + '@atomico/use-click-coordinates': 1.0.1(atomico@1.79.2) + '@atomico/use-click-press': 1.0.1(atomico@1.79.2) + '@atomico/use-copy': 1.0.1(atomico@1.79.2) + '@atomico/use-css-light-dom': 1.0.1(atomico@1.79.2) + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + '@atomico/use-debounce-state': 1.0.1(atomico@1.79.2) + '@atomico/use-disabled': 2.0.1(atomico@1.79.2) + '@atomico/use-drag-resize': 1.0.0(atomico@1.79.2) + '@atomico/use-form': 1.0.1(atomico@1.79.2)(element-internals-polyfill@0.1.55) + '@atomico/use-internals': 1.0.1(atomico@1.79.2) + '@atomico/use-intersection-observer': 1.1.0(atomico@1.79.2) + '@atomico/use-keyboard': 1.1.0(atomico@1.79.2) + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + '@atomico/use-media-query': 1.0.1(atomico@1.79.2) + '@atomico/use-mutation-observer': 2.0.2(atomico@1.79.2) + '@atomico/use-parallax': 1.0.1(atomico@1.79.2) + '@atomico/use-parent': 1.1.1(atomico@1.79.2) + '@atomico/use-prop-proxy': 1.0.1(atomico@1.79.2) + '@atomico/use-reflect-event': 1.0.1(atomico@1.79.2) + '@atomico/use-render': 1.1.1(atomico@1.79.2) + '@atomico/use-resize-observer': 1.1.0(atomico@1.79.2) + '@atomico/use-resize-state': 1.0.1(atomico@1.79.2) + '@atomico/use-responsive-state': 1.0.1(atomico@1.79.2) + '@atomico/use-router': 1.2.0(atomico@1.79.2) + '@atomico/use-script': 1.0.1(atomico@1.79.2) + '@atomico/use-slot': 1.0.2(atomico@1.79.2) + '@atomico/use-value-history': 1.0.1(atomico@1.79.2) + transitivePeerDependencies: + - atomico + - element-internals-polyfill + + '@atomico/use-attributes@2.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-mutation-observer': 2.0.2(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-child-nodes@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-click-coordinates@1.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-click-press@1.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-copy@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-css-light-dom@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-current-value@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-debounce-state@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-disabled@2.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-mutation-observer': 2.0.2(atomico@1.79.2) + '@atomico/use-parent': 1.1.1(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-drag-resize@1.0.0(atomico@1.79.2)': + dependencies: + '@atomico/use-debounce-state': 1.0.1(atomico@1.79.2) + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-form@1.0.1(atomico@1.79.2)(element-internals-polyfill@0.1.55)': + dependencies: + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + '@atomico/use-parent': 1.1.1(atomico@1.79.2) + '@atomico/use-render': 1.1.1(atomico@1.79.2) + atomico: 1.79.2 + element-internals-polyfill: 0.1.55 + + '@atomico/use-internals@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-intersection-observer@1.1.0(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-keyboard@1.1.0(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-listener@1.1.0(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-media-query@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-mutation-observer@2.0.2(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + '@atomico/use-ref-values': 1.0.1(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-parallax@1.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-debounce-state': 1.0.1(atomico@1.79.2) + '@atomico/use-intersection-observer': 1.1.0(atomico@1.79.2) + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-parent@1.1.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-prop-proxy@1.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-ref-values@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-reflect-event@1.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-render@1.1.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-resize-observer@1.1.0(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-resize-state@1.0.1(atomico@1.79.2)': + dependencies: + '@atomico/use-resize-observer': 1.1.0(atomico@1.79.2) + '@uppercod/match-media': 1.1.1 + atomico: 1.79.2 + + '@atomico/use-responsive-state@1.0.1(atomico@1.79.2)': + dependencies: + '@uppercod/match-media': 1.1.1 + atomico: 1.79.2 + + '@atomico/use-router@1.2.0(atomico@1.79.2)': + dependencies: + '@atomico/use-current-value': 1.0.1(atomico@1.79.2) + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + '@uppercod/exp-route': 1.4.2 + atomico: 1.79.2 + + '@atomico/use-script@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@atomico/use-slot@1.0.2(atomico@1.79.2)': + dependencies: + '@atomico/use-listener': 1.1.0(atomico@1.79.2) + atomico: 1.79.2 + + '@atomico/use-value-history@1.0.1(atomico@1.79.2)': + dependencies: + atomico: 1.79.2 + + '@babel/code-frame@7.26.2': + dependencies: + '@babel/helper-validator-identifier': 7.25.9 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.26.8': {} + + '@babel/core@7.26.10': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.27.0 + '@babel/helper-compilation-targets': 7.27.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.10) + '@babel/helpers': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/template': 7.27.0 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + convert-source-map: 2.0.0 + debug: 4.4.0 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.26.3': + dependencies: + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.1.0 + + '@babel/generator@7.27.0': + dependencies: + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.1.0 + + '@babel/helper-annotate-as-pure@7.25.9': + dependencies: + '@babel/types': 7.27.0 + + '@babel/helper-compilation-targets@7.27.0': + dependencies: + '@babel/compat-data': 7.26.8 + '@babel/helper-validator-option': 7.25.9 + browserslist: 4.24.4 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-create-class-features-plugin@7.27.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.10) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/traverse': 7.27.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-member-expression-to-functions@7.25.9': + dependencies: + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-imports@7.25.9': + dependencies: + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@babel/traverse': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-optimise-call-expression@7.25.9': + dependencies: + '@babel/types': 7.27.0 + + '@babel/helper-plugin-utils@7.25.9': {} + + '@babel/helper-plugin-utils@7.26.5': {} + + '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/traverse': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + dependencies: + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.25.9': {} + + '@babel/helper-validator-identifier@7.25.9': {} + + '@babel/helper-validator-option@7.25.9': {} + + '@babel/helpers@7.27.0': + dependencies: + '@babel/template': 7.27.0 + '@babel/types': 7.27.0 + + '@babel/parser@7.26.3': + dependencies: + '@babel/types': 7.26.3 + + '@babel/parser@7.27.0': + dependencies: + '@babel/types': 7.27.0 + + '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.26.5 + + '@babel/plugin-transform-typescript@7.27.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.27.0(@babel/core@7.26.10) + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10) + transitivePeerDependencies: + - supports-color + + '@babel/runtime@7.27.0': + dependencies: + regenerator-runtime: 0.14.1 + + '@babel/template@7.25.9': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 + + '@babel/template@7.27.0': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 + + '@babel/traverse@7.26.4': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.3 + '@babel/parser': 7.26.3 + '@babel/template': 7.25.9 + '@babel/types': 7.26.3 + debug: 4.4.0 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/traverse@7.27.0': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/template': 7.27.0 + '@babel/types': 7.27.0 + debug: 4.4.0 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.26.3': + dependencies: + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + + '@babel/types@7.27.0': + dependencies: + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + + '@codemirror/autocomplete@6.18.4': + dependencies: + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + + '@codemirror/commands@6.8.1': + dependencies: + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + + '@codemirror/lang-angular@0.1.3': + dependencies: + '@codemirror/lang-html': 6.4.9 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@codemirror/lang-cpp@6.0.2': + dependencies: + '@codemirror/language': 6.11.0 + '@lezer/cpp': 1.1.2 + + '@codemirror/lang-css@6.3.1': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/css': 1.1.9 + + '@codemirror/lang-go@6.0.1': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/go': 1.0.0 + + '@codemirror/lang-html@6.4.9': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/lang-css': 6.3.1 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + '@lezer/css': 1.1.9 + '@lezer/html': 1.3.10 + + '@codemirror/lang-java@6.0.1': + dependencies: + '@codemirror/language': 6.11.0 + '@lezer/java': 1.1.3 + + '@codemirror/lang-javascript@6.2.3': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/lint': 6.8.4 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + '@lezer/javascript': 1.4.21 + + '@codemirror/lang-json@6.0.1': + dependencies: + '@codemirror/language': 6.11.0 + '@lezer/json': 1.0.3 + + '@codemirror/lang-less@6.0.2': + dependencies: + '@codemirror/lang-css': 6.3.1 + '@codemirror/language': 6.11.0 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@codemirror/lang-liquid@6.2.2': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/lang-html': 6.4.9 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@codemirror/lang-markdown@6.3.2': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/lang-html': 6.4.9 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + '@lezer/markdown': 1.4.0 + + '@codemirror/lang-php@6.0.1': + dependencies: + '@codemirror/lang-html': 6.4.9 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/php': 1.0.2 + + '@codemirror/lang-python@6.1.7': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/python': 1.1.15 + + '@codemirror/lang-rust@6.0.1': + dependencies: + '@codemirror/language': 6.11.0 + '@lezer/rust': 1.0.2 + + '@codemirror/lang-sass@6.0.2': + dependencies: + '@codemirror/lang-css': 6.3.1 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/sass': 1.0.7 + + '@codemirror/lang-sql@6.8.0': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@codemirror/lang-vue@0.1.3': + dependencies: + '@codemirror/lang-html': 6.4.9 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@codemirror/lang-wast@6.0.2': + dependencies: + '@codemirror/language': 6.11.0 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@codemirror/lang-xml@6.1.0': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + '@lezer/xml': 1.0.6 + + '@codemirror/lang-yaml@6.1.2': + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + '@lezer/yaml': 1.0.3 + + '@codemirror/language-data@6.5.1': + dependencies: + '@codemirror/lang-angular': 0.1.3 + '@codemirror/lang-cpp': 6.0.2 + '@codemirror/lang-css': 6.3.1 + '@codemirror/lang-go': 6.0.1 + '@codemirror/lang-html': 6.4.9 + '@codemirror/lang-java': 6.0.1 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/lang-json': 6.0.1 + '@codemirror/lang-less': 6.0.2 + '@codemirror/lang-liquid': 6.2.2 + '@codemirror/lang-markdown': 6.3.2 + '@codemirror/lang-php': 6.0.1 + '@codemirror/lang-python': 6.1.7 + '@codemirror/lang-rust': 6.0.1 + '@codemirror/lang-sass': 6.0.2 + '@codemirror/lang-sql': 6.8.0 + '@codemirror/lang-vue': 0.1.3 + '@codemirror/lang-wast': 6.0.2 + '@codemirror/lang-xml': 6.1.0 + '@codemirror/lang-yaml': 6.1.2 + '@codemirror/language': 6.11.0 + '@codemirror/legacy-modes': 6.4.2 + + '@codemirror/language@6.11.0': + dependencies: + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + style-mod: 4.1.2 + + '@codemirror/legacy-modes@6.4.2': + dependencies: + '@codemirror/language': 6.11.0 + + '@codemirror/lint@6.8.4': + dependencies: + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + crelt: 1.0.6 + + '@codemirror/search@6.5.8': + dependencies: + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + crelt: 1.0.6 + + '@codemirror/state@6.5.1': + dependencies: + '@marijn/find-cluster-break': 1.0.2 + + '@codemirror/state@6.5.2': + dependencies: + '@marijn/find-cluster-break': 1.0.2 + + '@codemirror/theme-one-dark@6.1.2': + dependencies: + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + '@lezer/highlight': 1.2.1 + + '@codemirror/view@6.36.6': + dependencies: + '@codemirror/state': 6.5.1 + style-mod: 4.1.2 + w3c-keyname: 2.2.8 + + '@commitlint/cli@19.8.0(@types/node@22.14.1)(typescript@5.8.3)': + dependencies: + '@commitlint/format': 19.8.0 + '@commitlint/lint': 19.8.0 + '@commitlint/load': 19.8.0(@types/node@22.14.1)(typescript@5.8.3) + '@commitlint/read': 19.8.0 + '@commitlint/types': 19.8.0 + tinyexec: 0.3.1 + yargs: 17.7.2 + transitivePeerDependencies: + - '@types/node' + - typescript + + '@commitlint/config-conventional@19.8.0': + dependencies: + '@commitlint/types': 19.8.0 + conventional-changelog-conventionalcommits: 7.0.2 + + '@commitlint/config-validator@19.8.0': + dependencies: + '@commitlint/types': 19.8.0 + ajv: 8.17.1 + + '@commitlint/ensure@19.8.0': + dependencies: + '@commitlint/types': 19.8.0 + lodash.camelcase: 4.3.0 + lodash.kebabcase: 4.1.1 + lodash.snakecase: 4.1.1 + lodash.startcase: 4.4.0 + lodash.upperfirst: 4.3.1 + + '@commitlint/execute-rule@19.8.0': {} + + '@commitlint/format@19.8.0': + dependencies: + '@commitlint/types': 19.8.0 + chalk: 5.4.1 + + '@commitlint/is-ignored@19.8.0': + dependencies: + '@commitlint/types': 19.8.0 + semver: 7.7.1 + + '@commitlint/lint@19.8.0': + dependencies: + '@commitlint/is-ignored': 19.8.0 + '@commitlint/parse': 19.8.0 + '@commitlint/rules': 19.8.0 + '@commitlint/types': 19.8.0 + + '@commitlint/load@19.8.0(@types/node@22.14.1)(typescript@5.8.3)': + dependencies: + '@commitlint/config-validator': 19.8.0 + '@commitlint/execute-rule': 19.8.0 + '@commitlint/resolve-extends': 19.8.0 + '@commitlint/types': 19.8.0 + chalk: 5.4.1 + cosmiconfig: 9.0.0(typescript@5.8.3) + cosmiconfig-typescript-loader: 6.1.0(@types/node@22.14.1)(cosmiconfig@9.0.0(typescript@5.8.3))(typescript@5.8.3) + lodash.isplainobject: 4.0.6 + lodash.merge: 4.6.2 + lodash.uniq: 4.5.0 + transitivePeerDependencies: + - '@types/node' + - typescript + + '@commitlint/message@19.8.0': {} + + '@commitlint/parse@19.8.0': + dependencies: + '@commitlint/types': 19.8.0 + conventional-changelog-angular: 7.0.0 + conventional-commits-parser: 5.0.0 + + '@commitlint/read@19.8.0': + dependencies: + '@commitlint/top-level': 19.8.0 + '@commitlint/types': 19.8.0 + git-raw-commits: 4.0.0 + minimist: 1.2.8 + tinyexec: 0.3.1 + + '@commitlint/resolve-extends@19.8.0': + dependencies: + '@commitlint/config-validator': 19.8.0 + '@commitlint/types': 19.8.0 + global-directory: 4.0.1 + import-meta-resolve: 4.1.0 + lodash.mergewith: 4.6.2 + resolve-from: 5.0.0 + + '@commitlint/rules@19.8.0': + dependencies: + '@commitlint/ensure': 19.8.0 + '@commitlint/message': 19.8.0 + '@commitlint/to-lines': 19.8.0 + '@commitlint/types': 19.8.0 + + '@commitlint/to-lines@19.8.0': {} + + '@commitlint/top-level@19.8.0': + dependencies: + find-up: 7.0.0 + + '@commitlint/types@19.8.0': + dependencies: + '@types/conventional-commits-parser': 5.0.1 + chalk: 5.3.0 + + '@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/css-tokenizer@3.0.3': {} + + '@csstools/media-query-list-parser@4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.0)': + dependencies: + postcss-selector-parser: 7.1.0 + + '@dual-bundle/import-meta-resolve@4.1.0': {} + + '@esbuild/aix-ppc64@0.21.5': + optional: true + + '@esbuild/android-arm64@0.21.5': + optional: true + + '@esbuild/android-arm@0.21.5': + optional: true + + '@esbuild/android-x64@0.21.5': + optional: true + + '@esbuild/darwin-arm64@0.21.5': + optional: true + + '@esbuild/darwin-x64@0.21.5': + optional: true + + '@esbuild/freebsd-arm64@0.21.5': + optional: true + + '@esbuild/freebsd-x64@0.21.5': + optional: true + + '@esbuild/linux-arm64@0.21.5': + optional: true + + '@esbuild/linux-arm@0.21.5': + optional: true + + '@esbuild/linux-ia32@0.21.5': + optional: true + + '@esbuild/linux-loong64@0.14.54': + optional: true + + '@esbuild/linux-loong64@0.21.5': + optional: true + + '@esbuild/linux-mips64el@0.21.5': + optional: true + + '@esbuild/linux-ppc64@0.21.5': + optional: true + + '@esbuild/linux-riscv64@0.21.5': + optional: true + + '@esbuild/linux-s390x@0.21.5': + optional: true + + '@esbuild/linux-x64@0.21.5': + optional: true + + '@esbuild/netbsd-x64@0.21.5': + optional: true + + '@esbuild/openbsd-x64@0.21.5': + optional: true + + '@esbuild/sunos-x64@0.21.5': + optional: true + + '@esbuild/win32-arm64@0.21.5': + optional: true + + '@esbuild/win32-ia32@0.21.5': + optional: true + + '@esbuild/win32-x64@0.21.5': + optional: true + + '@eslint-community/eslint-utils@4.4.1(eslint@9.25.1(jiti@2.4.2))': + dependencies: + eslint: 9.25.1(jiti@2.4.2) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/eslint-utils@4.6.1(eslint@9.25.1(jiti@2.4.2))': + dependencies: + eslint: 9.25.1(jiti@2.4.2) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.1': {} + + '@eslint/config-array@0.20.0': + dependencies: + '@eslint/object-schema': 2.1.6 + debug: 4.4.0 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/config-helpers@0.2.1': {} + + '@eslint/core@0.13.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/eslintrc@3.3.1': + dependencies: + ajv: 6.12.6 + debug: 4.4.0 + espree: 10.3.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.25.1': {} + + '@eslint/object-schema@2.1.6': {} + + '@eslint/plugin-kit@0.2.8': + dependencies: + '@eslint/core': 0.13.0 + levn: 0.4.1 + + '@floating-ui/core@1.6.9': + dependencies: + '@floating-ui/utils': 0.2.9 + + '@floating-ui/dom@1.6.13': + dependencies: + '@floating-ui/core': 1.6.9 + '@floating-ui/utils': 0.2.9 + + '@floating-ui/utils@0.2.9': {} + + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.6': + dependencies: + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.3.1 + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.3.1': {} + + '@humanwhocodes/retry@0.4.2': {} + + '@jridgewell/gen-mapping@0.3.8': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@keyv/serialize@1.0.3': + dependencies: + buffer: 6.0.3 + + '@lezer/common@1.2.3': {} + + '@lezer/cpp@1.1.2': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/css@1.1.9': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/go@1.0.0': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/highlight@1.2.1': + dependencies: + '@lezer/common': 1.2.3 + + '@lezer/html@1.3.10': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/java@1.1.3': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/javascript@1.4.21': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/json@1.0.3': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/lr@1.4.2': + dependencies: + '@lezer/common': 1.2.3 + + '@lezer/markdown@1.4.0': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + + '@lezer/php@1.0.2': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/python@1.1.15': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/rust@1.0.2': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/sass@1.0.7': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/xml@1.0.6': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lezer/yaml@1.0.3': + dependencies: + '@lezer/common': 1.2.3 + '@lezer/highlight': 1.2.1 + '@lezer/lr': 1.4.2 + + '@lukeed/csprng@1.1.0': {} + + '@marijn/find-cluster-break@1.0.2': {} + + '@milkdown/components@7.7.0(3cdd5620c8eb40604e9bdd88ba8d7629)': + dependencies: + '@atomico/hooks': 4.4.1(atomico@1.79.2)(element-internals-polyfill@0.1.55) + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.6 + '@floating-ui/dom': 1.6.13 + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/plugin-tooltip': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/preset-commonmark': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/preset-gfm': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/preset-commonmark@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/prose': 7.7.0 + '@milkdown/transformer': 7.7.0(@milkdown/prose@7.7.0) + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@types/lodash.debounce': 4.0.9 + '@types/lodash.throttle': 4.1.9 + atomico: 1.79.2 + clsx: 2.1.1 + lodash.debounce: 4.0.8 + lodash.throttle: 4.1.1 + nanoid: 5.1.5 + tslib: 2.8.1 + unist-util-visit: 5.0.0 + transitivePeerDependencies: + - '@atomico/react' + - '@atomico/vue' + - element-internals-polyfill + + '@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/transformer': 7.7.0(@milkdown/prose@7.7.0) + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + tslib: 2.8.1 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + '@milkdown/crepe@7.7.0(element-internals-polyfill@0.1.55)': + dependencies: + '@codemirror/commands': 6.8.1 + '@codemirror/language': 6.11.0 + '@codemirror/language-data': 6.5.1 + '@codemirror/state': 6.5.2 + '@codemirror/theme-one-dark': 6.1.2 + '@codemirror/view': 6.36.6 + '@milkdown/kit': 7.7.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6)(element-internals-polyfill@0.1.55) + atomico: 1.79.2 + clsx: 2.1.1 + codemirror: 6.0.1 + katex: 0.16.21 + nanoid: 5.1.5 + remark-math: 6.0.0 + tslib: 2.8.1 + unist-util-visit: 5.0.0 + transitivePeerDependencies: + - '@atomico/react' + - '@atomico/vue' + - element-internals-polyfill + - supports-color + + '@milkdown/ctx@7.7.0': + dependencies: + '@milkdown/exception': 7.7.0 + tslib: 2.8.1 + + '@milkdown/exception@7.7.0': + dependencies: + tslib: 2.8.1 + + '@milkdown/kit@7.7.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6)(element-internals-polyfill@0.1.55)': + dependencies: + '@milkdown/components': 7.7.0(3cdd5620c8eb40604e9bdd88ba8d7629) + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/plugin-block': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-clipboard': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-cursor': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-history': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-indent': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-listener': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-slash': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-tooltip': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-trailing': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/plugin-upload': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/preset-commonmark': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/preset-gfm': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/preset-commonmark@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/prose': 7.7.0 + '@milkdown/transformer': 7.7.0(@milkdown/prose@7.7.0) + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@atomico/react' + - '@atomico/vue' + - '@codemirror/language' + - '@codemirror/state' + - '@codemirror/view' + - element-internals-polyfill + - supports-color + + '@milkdown/plugin-block@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@floating-ui/dom': 1.6.13 + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@types/lodash.throttle': 4.1.9 + lodash.throttle: 4.1.1 + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-clipboard@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/ctx' + - '@milkdown/transformer' + + '@milkdown/plugin-cursor@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-history@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-indent@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-listener@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@types/lodash.debounce': 4.0.9 + lodash.debounce: 4.0.8 + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-slash@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@floating-ui/dom': 1.6.13 + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@types/lodash.debounce': 4.0.9 + lodash.debounce: 4.0.8 + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-tooltip@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@floating-ui/dom': 1.6.13 + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@types/lodash.throttle': 4.1.9 + lodash.throttle: 4.1.1 + tippy.js: 6.3.7 + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-trailing@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/plugin-upload@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + tslib: 2.8.1 + transitivePeerDependencies: + - '@milkdown/transformer' + + '@milkdown/preset-commonmark@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/transformer': 7.7.0(@milkdown/prose@7.7.0) + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + remark-inline-links: 7.0.0 + tslib: 2.8.1 + unist-util-visit: 5.0.0 + + '@milkdown/preset-gfm@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/preset-commonmark@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/preset-commonmark': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/prose': 7.7.0 + '@milkdown/transformer': 7.7.0(@milkdown/prose@7.7.0) + '@milkdown/utils': 7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + prosemirror-safari-ime-span: 1.0.2 + remark-gfm: 4.0.1 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + + '@milkdown/prose@7.7.0': + dependencies: + '@milkdown/exception': 7.7.0 + prosemirror-changeset: 2.2.1 + prosemirror-commands: 1.7.0 + prosemirror-dropcursor: 1.8.1 + prosemirror-gapcursor: 1.3.2 + prosemirror-history: 1.4.1 + prosemirror-inputrules: 1.5.0 + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.25.0 + prosemirror-schema-list: 1.5.1 + prosemirror-state: 1.4.3 + prosemirror-tables: 1.6.4 + prosemirror-transform: 1.10.3 + prosemirror-view: 1.38.1 + tslib: 2.8.1 + + '@milkdown/theme-nord@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/prose': 7.7.0 + clsx: 2.1.1 + tslib: 2.8.1 + + '@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)': + dependencies: + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + remark: 15.0.1 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + tslib: 2.8.1 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + '@milkdown/utils@7.7.0(@milkdown/core@7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)))(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0))': + dependencies: + '@milkdown/core': 7.7.0(@milkdown/ctx@7.7.0)(@milkdown/prose@7.7.0)(@milkdown/transformer@7.7.0(@milkdown/prose@7.7.0)) + '@milkdown/ctx': 7.7.0 + '@milkdown/exception': 7.7.0 + '@milkdown/prose': 7.7.0 + '@milkdown/transformer': 7.7.0(@milkdown/prose@7.7.0) + nanoid: 5.1.5 + tslib: 2.8.1 + + '@milkdown/vue@7.7.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6)(element-internals-polyfill@0.1.55)(vue@3.5.13(typescript@5.8.3))': + dependencies: + '@milkdown/crepe': 7.7.0(element-internals-polyfill@0.1.55) + '@milkdown/kit': 7.7.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.6)(element-internals-polyfill@0.1.55) + tslib: 2.8.1 + vue: 3.5.13(typescript@5.8.3) + transitivePeerDependencies: + - '@atomico/react' + - '@atomico/vue' + - '@codemirror/language' + - '@codemirror/state' + - '@codemirror/view' + - element-internals-polyfill + - supports-color + + '@nestjs/axios@4.0.0(@nestjs/common@11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2))(axios@1.8.4)(rxjs@7.8.2)': + dependencies: + '@nestjs/common': 11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2) + axios: 1.8.4 + rxjs: 7.8.2 + + '@nestjs/common@11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2)': + dependencies: + file-type: 20.4.1 + iterare: 1.2.1 + load-esm: 1.0.2 + reflect-metadata: 0.2.2 + rxjs: 7.8.2 + tslib: 2.8.1 + uid: 2.0.2 + transitivePeerDependencies: + - supports-color + + '@nestjs/core@11.0.20(@nestjs/common@11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2))(reflect-metadata@0.2.2)(rxjs@7.8.2)': + dependencies: + '@nestjs/common': 11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nuxt/opencollective': 0.4.1 + fast-safe-stringify: 2.1.1 + iterare: 1.2.1 + path-to-regexp: 8.2.0 + reflect-metadata: 0.2.2 + rxjs: 7.8.2 + tslib: 2.8.1 + uid: 2.0.2 + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + + '@nuxt/opencollective@0.4.1': + dependencies: + consola: 3.4.2 + + '@nuxtjs/opencollective@0.3.2': + dependencies: + chalk: 4.1.2 + consola: 2.15.3 + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + + '@openapitools/openapi-generator-cli@2.19.1': + dependencies: + '@nestjs/axios': 4.0.0(@nestjs/common@11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2))(axios@1.8.4)(rxjs@7.8.2) + '@nestjs/common': 11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.0.20(@nestjs/common@11.0.20(reflect-metadata@0.2.2)(rxjs@7.8.2))(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nuxtjs/opencollective': 0.3.2 + axios: 1.8.4 + chalk: 4.1.2 + commander: 8.3.0 + compare-versions: 4.1.4 + concurrently: 6.5.1 + console.table: 0.10.0 + fs-extra: 11.3.0 + glob: 9.3.5 + inquirer: 8.2.6 + lodash: 4.17.21 + proxy-agent: 6.5.0 + reflect-metadata: 0.2.2 + rxjs: 7.8.2 + tslib: 2.8.1 + transitivePeerDependencies: + - '@nestjs/microservices' + - '@nestjs/platform-express' + - '@nestjs/websockets' + - class-transformer + - class-validator + - debug + - encoding + - supports-color + + '@pkgr/core@0.2.4': {} + + '@popperjs/core@2.11.8': {} + + '@rollup/pluginutils@5.1.4(rollup@4.40.0)': + dependencies: + '@types/estree': 1.0.6 + estree-walker: 2.0.2 + picomatch: 4.0.2 + optionalDependencies: + rollup: 4.40.0 + + '@rollup/rollup-android-arm-eabi@4.40.0': + optional: true + + '@rollup/rollup-android-arm64@4.40.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.40.0': + optional: true + + '@rollup/rollup-darwin-x64@4.40.0': + optional: true + + '@rollup/rollup-freebsd-arm64@4.40.0': + optional: true + + '@rollup/rollup-freebsd-x64@4.40.0': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.40.0': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.40.0': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.40.0': + optional: true + + '@rollup/rollup-linux-loongarch64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.40.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-x64-musl@4.40.0': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.40.0': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.40.0': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.40.0': + optional: true + + '@sindresorhus/is@0.7.0': {} + + '@tokenizer/inflate@0.2.7': + dependencies: + debug: 4.4.0 + fflate: 0.8.2 + token-types: 6.0.0 + transitivePeerDependencies: + - supports-color + + '@tokenizer/token@0.3.0': {} + + '@tootallnate/quickjs-emscripten@0.23.0': {} + + '@trysound/sax@0.2.0': {} + + '@types/conventional-commits-parser@5.0.1': + dependencies: + '@types/node': 22.14.1 + + '@types/crypto-js@4.2.2': {} + + '@types/debug@4.1.12': + dependencies: + '@types/ms': 2.1.0 + + '@types/estree@1.0.6': {} + + '@types/estree@1.0.7': {} + + '@types/glob@7.2.0': + dependencies: + '@types/minimatch': 5.1.2 + '@types/node': 22.14.1 + + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/imagemin-gifsicle@7.0.4': + dependencies: + '@types/imagemin': 7.0.1 + + '@types/imagemin-jpegtran@5.0.4': + dependencies: + '@types/imagemin': 7.0.1 + + '@types/imagemin-mozjpeg@8.0.4': + dependencies: + '@types/imagemin': 7.0.1 + + '@types/imagemin-optipng@5.2.4': + dependencies: + '@types/imagemin': 7.0.1 + + '@types/imagemin-svgo@10.0.5': + dependencies: + '@types/imagemin': 7.0.1 + '@types/svgo': 2.6.4 + + '@types/imagemin-webp@7.0.3': + dependencies: + '@types/imagemin': 7.0.1 + + '@types/imagemin@7.0.1': + dependencies: + '@types/node': 22.14.1 + + '@types/json-schema@7.0.15': {} + + '@types/katex@0.16.7': {} + + '@types/keyv@3.1.4': + dependencies: + '@types/node': 22.14.1 + + '@types/lodash.debounce@4.0.9': + dependencies: + '@types/lodash': 4.17.16 + + '@types/lodash.throttle@4.1.9': + dependencies: + '@types/lodash': 4.17.16 + + '@types/lodash@4.17.16': {} + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/minimatch@5.1.2': {} + + '@types/mockjs@1.0.10': {} + + '@types/ms@2.1.0': {} + + '@types/node@16.18.126': {} + + '@types/node@22.14.1': + dependencies: + undici-types: 6.21.0 + + '@types/nprogress@0.2.3': {} + + '@types/responselike@1.0.3': + dependencies: + '@types/node': 22.14.1 + + '@types/sortablejs@1.15.8': {} + + '@types/svgo@2.6.4': + dependencies: + '@types/node': 22.14.1 + + '@types/unist@3.0.3': {} + + '@types/web-bluetooth@0.0.20': {} + + '@typescript-eslint/eslint-plugin@8.31.0(@typescript-eslint/parser@8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3))(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/scope-manager': 8.31.0 + '@typescript-eslint/type-utils': 8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/visitor-keys': 8.31.0 + eslint: 9.25.1(jiti@2.4.2) + graphemer: 1.4.0 + ignore: 5.3.2 + natural-compare: 1.4.0 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.31.0 + '@typescript-eslint/types': 8.31.0 + '@typescript-eslint/typescript-estree': 8.31.0(typescript@5.8.3) + '@typescript-eslint/visitor-keys': 8.31.0 + debug: 4.4.0 + eslint: 9.25.1(jiti@2.4.2) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.31.0': + dependencies: + '@typescript-eslint/types': 8.31.0 + '@typescript-eslint/visitor-keys': 8.31.0 + + '@typescript-eslint/type-utils@8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@typescript-eslint/typescript-estree': 8.31.0(typescript@5.8.3) + '@typescript-eslint/utils': 8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3) + debug: 4.4.0 + eslint: 9.25.1(jiti@2.4.2) + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.31.0': {} + + '@typescript-eslint/typescript-estree@8.31.0(typescript@5.8.3)': + dependencies: + '@typescript-eslint/types': 8.31.0 + '@typescript-eslint/visitor-keys': 8.31.0 + debug: 4.4.0 + fast-glob: 3.3.3 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.7.1 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.31.0(eslint@9.25.1(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@eslint-community/eslint-utils': 4.6.1(eslint@9.25.1(jiti@2.4.2)) + '@typescript-eslint/scope-manager': 8.31.0 + '@typescript-eslint/types': 8.31.0 + '@typescript-eslint/typescript-estree': 8.31.0(typescript@5.8.3) + eslint: 9.25.1(jiti@2.4.2) + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.31.0': + dependencies: + '@typescript-eslint/types': 8.31.0 + eslint-visitor-keys: 4.2.0 + + '@uppercod/exp-route@1.4.2': {} + + '@uppercod/match-media@1.1.1': {} + + '@vitejs/plugin-vue-jsx@4.1.2(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3))(vue@3.5.13(typescript@5.8.3))': + dependencies: + '@babel/core': 7.26.10 + '@babel/plugin-transform-typescript': 7.27.0(@babel/core@7.26.10) + '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.10) + vite: 5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3) + vue: 3.5.13(typescript@5.8.3) + transitivePeerDependencies: + - supports-color + + '@vitejs/plugin-vue@5.2.3(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3))(vue@3.5.13(typescript@5.8.3))': + dependencies: + vite: 5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3) + vue: 3.5.13(typescript@5.8.3) + + '@volar/language-core@2.4.11': + dependencies: + '@volar/source-map': 2.4.11 + + '@volar/language-core@2.4.12': + dependencies: + '@volar/source-map': 2.4.12 + + '@volar/source-map@2.4.11': {} + + '@volar/source-map@2.4.12': {} + + '@volar/typescript@2.4.11': + dependencies: + '@volar/language-core': 2.4.11 + path-browserify: 1.0.1 + vscode-uri: 3.0.8 + + '@vue/babel-helper-vue-transform-on@1.2.5': {} + + '@vue/babel-plugin-jsx@1.2.5(@babel/core@7.26.10)': + dependencies: + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.10) + '@babel/template': 7.25.9 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 + '@vue/babel-helper-vue-transform-on': 1.2.5 + '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.26.10) + html-tags: 3.3.1 + svg-tags: 1.0.0 + optionalDependencies: + '@babel/core': 7.26.10 + transitivePeerDependencies: + - supports-color + + '@vue/babel-plugin-resolve-type@1.2.5(@babel/core@7.26.10)': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/core': 7.26.10 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/parser': 7.26.3 + '@vue/compiler-sfc': 3.5.13 + transitivePeerDependencies: + - supports-color + + '@vue/compiler-core@3.5.13': + dependencies: + '@babel/parser': 7.26.3 + '@vue/shared': 3.5.13 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + + '@vue/compiler-dom@3.5.13': + dependencies: + '@vue/compiler-core': 3.5.13 + '@vue/shared': 3.5.13 + + '@vue/compiler-sfc@3.5.13': + dependencies: + '@babel/parser': 7.26.3 + '@vue/compiler-core': 3.5.13 + '@vue/compiler-dom': 3.5.13 + '@vue/compiler-ssr': 3.5.13 + '@vue/shared': 3.5.13 + estree-walker: 2.0.2 + magic-string: 0.30.17 + postcss: 8.4.49 + source-map-js: 1.2.1 + + '@vue/compiler-ssr@3.5.13': + dependencies: + '@vue/compiler-dom': 3.5.13 + '@vue/shared': 3.5.13 + + '@vue/compiler-vue2@2.7.16': + dependencies: + de-indent: 1.0.2 + he: 1.2.0 + + '@vue/devtools-api@6.6.4': {} + + '@vue/language-core@2.2.10(typescript@5.8.3)': + dependencies: + '@volar/language-core': 2.4.12 + '@vue/compiler-dom': 3.5.13 + '@vue/compiler-vue2': 2.7.16 + '@vue/shared': 3.5.13 + alien-signals: 1.0.13 + minimatch: 9.0.5 + muggle-string: 0.4.1 + path-browserify: 1.0.1 + optionalDependencies: + typescript: 5.8.3 + + '@vue/reactivity@3.5.13': + dependencies: + '@vue/shared': 3.5.13 + + '@vue/runtime-core@3.5.13': + dependencies: + '@vue/reactivity': 3.5.13 + '@vue/shared': 3.5.13 + + '@vue/runtime-dom@3.5.13': + dependencies: + '@vue/reactivity': 3.5.13 + '@vue/runtime-core': 3.5.13 + '@vue/shared': 3.5.13 + csstype: 3.1.3 + + '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.3))': + dependencies: + '@vue/compiler-ssr': 3.5.13 + '@vue/shared': 3.5.13 + vue: 3.5.13(typescript@5.8.3) + + '@vue/shared@3.5.13': {} + + '@vueuse/core@10.11.1(vue@3.5.13(typescript@5.8.3))': + dependencies: + '@types/web-bluetooth': 0.0.20 + '@vueuse/metadata': 10.11.1 + '@vueuse/shared': 10.11.1(vue@3.5.13(typescript@5.8.3)) + vue-demi: 0.14.10(vue@3.5.13(typescript@5.8.3)) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + + '@vueuse/metadata@10.11.1': {} + + '@vueuse/shared@10.11.1(vue@3.5.13(typescript@5.8.3))': + dependencies: + vue-demi: 0.14.10(vue@3.5.13(typescript@5.8.3)) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + + JSONStream@1.3.5: + dependencies: + jsonparse: 1.3.1 + through: 2.3.8 + + acorn-jsx@5.3.2(acorn@8.14.0): + dependencies: + acorn: 8.14.0 + + acorn@8.14.0: {} + + agent-base@7.1.3: {} + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ajv@8.17.1: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.0.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + alien-signals@1.0.13: {} + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-escapes@7.0.0: + dependencies: + environment: 1.1.0 + + ansi-regex@2.1.1: {} + + ansi-regex@5.0.1: {} + + ansi-regex@6.1.0: {} + + ansi-styles@2.2.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.1: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + arch@2.2.0: {} + + archive-type@4.0.0: + dependencies: + file-type: 4.4.0 + + argparse@2.0.1: {} + + array-find-index@1.0.2: {} + + array-ify@1.0.0: {} + + array-union@2.1.0: {} + + ast-types@0.13.4: + dependencies: + tslib: 2.8.1 + + astral-regex@2.0.0: {} + + asynckit@0.4.0: {} + + atomico@1.79.2: {} + + autoprefixer@10.4.21(postcss@8.5.3): + dependencies: + browserslist: 4.24.4 + caniuse-lite: 1.0.30001707 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.1.1 + postcss: 8.5.3 + postcss-value-parser: 4.2.0 + + axios@1.8.4: + dependencies: + follow-redirects: 1.15.9 + form-data: 4.0.1 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + b-tween@0.3.3: {} + + b-validate@1.5.3: {} + + bail@2.0.2: {} + + balanced-match@1.0.2: {} + + balanced-match@2.0.0: {} + + base64-js@1.5.1: {} + + basic-ftp@5.0.5: {} + + bin-build@3.0.0: + dependencies: + decompress: 4.2.1 + download: 6.2.5 + execa: 0.7.0 + p-map-series: 1.0.0 + tempfile: 2.0.0 + + bin-check@4.1.0: + dependencies: + execa: 0.7.0 + executable: 4.1.1 + + bin-version-check@4.0.0: + dependencies: + bin-version: 3.1.0 + semver: 5.7.2 + semver-truncate: 1.1.2 + + bin-version@3.1.0: + dependencies: + execa: 1.0.0 + find-versions: 3.2.0 + + bin-wrapper-china@0.1.0: + dependencies: + bin-check: 4.1.0 + bin-version-check: 4.0.0 + binary-mirror-config: 1.41.0 + download: 7.1.0 + import-lazy: 4.0.0 + os-filter-obj: 2.0.0 + pify: 4.0.1 + + binary-extensions@2.3.0: {} + + binary-mirror-config@1.41.0: {} + + bl@1.2.3: + dependencies: + readable-stream: 2.3.8 + safe-buffer: 5.2.1 + + bl@4.1.0: + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + + boolbase@1.0.0: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.1: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.24.4: + dependencies: + caniuse-lite: 1.0.30001707 + electron-to-chromium: 1.5.128 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.24.4) + + buffer-alloc-unsafe@1.1.0: {} + + buffer-alloc@1.2.0: + dependencies: + buffer-alloc-unsafe: 1.1.0 + buffer-fill: 1.0.0 + + buffer-crc32@0.2.13: {} + + buffer-fill@1.0.0: {} + + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + buffer@6.0.3: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + cacheable-request@2.1.4: + dependencies: + clone-response: 1.0.2 + get-stream: 3.0.0 + http-cache-semantics: 3.8.1 + keyv: 3.0.0 + lowercase-keys: 1.0.0 + normalize-url: 2.0.1 + responselike: 1.0.2 + + cacheable@1.8.10: + dependencies: + hookified: 1.8.2 + keyv: 5.3.3 + + callsites@3.1.0: {} + + camelcase-keys@2.1.0: + dependencies: + camelcase: 2.1.1 + map-obj: 1.0.1 + + camelcase@2.1.1: {} + + caniuse-lite@1.0.30001707: {} + + caw@2.0.1: + dependencies: + get-proxy: 2.1.0 + isurl: 1.0.0 + tunnel-agent: 0.6.0 + url-to-options: 1.0.1 + + ccount@2.0.1: {} + + chalk@1.1.3: + dependencies: + ansi-styles: 2.2.1 + escape-string-regexp: 1.0.5 + has-ansi: 2.0.0 + strip-ansi: 3.0.1 + supports-color: 2.0.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chalk@5.3.0: {} + + chalk@5.4.1: {} + + character-entities@2.0.2: {} + + chardet@0.7.0: {} + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + cli-cursor@3.1.0: + dependencies: + restore-cursor: 3.1.0 + + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + + cli-spinners@2.9.2: {} + + cli-truncate@4.0.0: + dependencies: + slice-ansi: 5.0.0 + string-width: 7.2.0 + + cli-width@3.0.0: {} + + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + clone-response@1.0.2: + dependencies: + mimic-response: 1.0.1 + + clone@1.0.4: {} + + clsx@2.1.1: {} + + codemirror@6.0.1: + dependencies: + '@codemirror/autocomplete': 6.18.4 + '@codemirror/commands': 6.8.1 + '@codemirror/language': 6.11.0 + '@codemirror/lint': 6.8.4 + '@codemirror/search': 6.5.8 + '@codemirror/state': 6.5.1 + '@codemirror/view': 6.36.6 + + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.3: {} + + color-name@1.1.4: {} + + color-string@1.9.1: + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + + color@3.2.1: + dependencies: + color-convert: 1.9.3 + color-string: 1.9.1 + + colord@2.9.3: {} + + colorette@2.0.20: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + commander@12.1.0: {} + + commander@13.1.0: {} + + commander@2.20.3: {} + + commander@7.2.0: {} + + commander@8.3.0: {} + + compare-func@2.0.0: + dependencies: + array-ify: 1.0.0 + dot-prop: 5.3.0 + + compare-versions@4.1.4: {} + + compute-scroll-into-view@1.0.20: {} + + concat-map@0.0.1: {} + + concurrently@6.5.1: + dependencies: + chalk: 4.1.2 + date-fns: 2.30.0 + lodash: 4.17.21 + rxjs: 6.6.7 + spawn-command: 0.0.2 + supports-color: 8.1.1 + tree-kill: 1.2.2 + yargs: 16.2.0 + + confbox@0.1.8: {} + + config-chain@1.1.13: + dependencies: + ini: 1.3.8 + proto-list: 1.2.4 + + consola@2.15.3: {} + + consola@3.4.2: {} + + console-stream@0.1.1: {} + + console.table@0.10.0: + dependencies: + easy-table: 1.1.0 + + content-disposition@0.5.4: + dependencies: + safe-buffer: 5.2.1 + + conventional-changelog-angular@7.0.0: + dependencies: + compare-func: 2.0.0 + + conventional-changelog-conventionalcommits@7.0.2: + dependencies: + compare-func: 2.0.0 + + conventional-commits-parser@5.0.0: + dependencies: + JSONStream: 1.3.5 + is-text-path: 2.0.0 + meow: 12.1.1 + split2: 4.2.0 + + convert-source-map@2.0.0: {} + + copy-anything@2.0.6: + dependencies: + is-what: 3.14.1 + + core-util-is@1.0.3: {} + + cosmiconfig-typescript-loader@6.1.0(@types/node@22.14.1)(cosmiconfig@9.0.0(typescript@5.8.3))(typescript@5.8.3): + dependencies: + '@types/node': 22.14.1 + cosmiconfig: 9.0.0(typescript@5.8.3) + jiti: 2.4.2 + typescript: 5.8.3 + + cosmiconfig@9.0.0(typescript@5.8.3): + dependencies: + env-paths: 2.2.1 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + optionalDependencies: + typescript: 5.8.3 + + crelt@1.0.6: {} + + cross-env@7.0.3: + dependencies: + cross-spawn: 7.0.6 + + cross-spawn@5.1.0: + dependencies: + lru-cache: 4.1.5 + shebang-command: 1.2.0 + which: 1.3.1 + + cross-spawn@6.0.6: + dependencies: + nice-try: 1.0.5 + path-key: 2.0.1 + semver: 5.7.2 + shebang-command: 1.2.0 + which: 1.3.1 + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + crypto-js@4.2.0: {} + + css-functions-list@3.2.3: {} + + css-select@4.3.0: + dependencies: + boolbase: 1.0.0 + css-what: 6.1.0 + domhandler: 4.3.1 + domutils: 2.8.0 + nth-check: 2.1.1 + + css-select@5.1.0: + dependencies: + boolbase: 1.0.0 + css-what: 6.1.0 + domhandler: 5.0.3 + domutils: 3.1.0 + nth-check: 2.1.1 + + css-tree@1.1.3: + dependencies: + mdn-data: 2.0.14 + source-map: 0.6.1 + + css-tree@2.2.1: + dependencies: + mdn-data: 2.0.28 + source-map-js: 1.2.1 + + css-tree@2.3.1: + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.2.1 + + css-tree@3.1.0: + dependencies: + mdn-data: 2.12.2 + source-map-js: 1.2.1 + + css-what@6.1.0: {} + + cssesc@3.0.0: {} + + csso@4.2.0: + dependencies: + css-tree: 1.1.3 + + csso@5.0.5: + dependencies: + css-tree: 2.2.1 + + csstype@3.1.3: {} + + currently-unhandled@0.4.1: + dependencies: + array-find-index: 1.0.2 + + cwebp-bin@6.1.2: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + + dargs@8.1.0: {} + + data-uri-to-buffer@6.0.2: {} + + date-fns@2.30.0: + dependencies: + '@babel/runtime': 7.27.0 + + dayjs@1.11.13: {} + + de-indent@1.0.2: {} + + debug@4.4.0: + dependencies: + ms: 2.1.3 + + decamelize@1.2.0: {} + + decode-named-character-reference@1.1.0: + dependencies: + character-entities: 2.0.2 + + decode-uri-component@0.2.2: {} + + decode-uri-component@0.4.1: {} + + decompress-response@3.3.0: + dependencies: + mimic-response: 1.0.1 + + decompress-tar@4.1.1: + dependencies: + file-type: 5.2.0 + is-stream: 1.1.0 + tar-stream: 1.6.2 + + decompress-tarbz2@4.1.1: + dependencies: + decompress-tar: 4.1.1 + file-type: 6.2.0 + is-stream: 1.1.0 + seek-bzip: 1.0.6 + unbzip2-stream: 1.4.3 + + decompress-targz@4.1.1: + dependencies: + decompress-tar: 4.1.1 + file-type: 5.2.0 + is-stream: 1.1.0 + + decompress-unzip@4.0.1: + dependencies: + file-type: 3.9.0 + get-stream: 2.3.1 + pify: 2.3.0 + yauzl: 2.10.0 + + decompress@4.2.1: + dependencies: + decompress-tar: 4.1.1 + decompress-tarbz2: 4.1.1 + decompress-targz: 4.1.1 + decompress-unzip: 4.0.1 + graceful-fs: 4.2.11 + make-dir: 1.3.0 + pify: 2.3.0 + strip-dirs: 2.1.0 + + deep-is@0.1.4: {} + + defaults@1.0.4: + dependencies: + clone: 1.0.4 + + define-lazy-prop@2.0.0: {} + + degenerator@5.0.1: + dependencies: + ast-types: 0.13.4 + escodegen: 2.1.0 + esprima: 4.0.1 + + delayed-stream@1.0.0: {} + + dequal@2.0.3: {} + + detect-libc@2.0.4: + optional: true + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dom-serializer@1.4.1: + dependencies: + domelementtype: 2.3.0 + domhandler: 4.3.1 + entities: 2.2.0 + + dom-serializer@2.0.0: + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 + + domelementtype@2.3.0: {} + + domhandler@4.3.1: + dependencies: + domelementtype: 2.3.0 + + domhandler@5.0.3: + dependencies: + domelementtype: 2.3.0 + + domutils@2.8.0: + dependencies: + dom-serializer: 1.4.1 + domelementtype: 2.3.0 + domhandler: 4.3.1 + + domutils@3.1.0: + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + + dot-prop@5.3.0: + dependencies: + is-obj: 2.0.0 + + download@6.2.5: + dependencies: + caw: 2.0.1 + content-disposition: 0.5.4 + decompress: 4.2.1 + ext-name: 5.0.0 + file-type: 5.2.0 + filenamify: 2.1.0 + get-stream: 3.0.0 + got: 7.1.0 + make-dir: 1.3.0 + p-event: 1.3.0 + pify: 3.0.0 + + download@7.1.0: + dependencies: + archive-type: 4.0.0 + caw: 2.0.1 + content-disposition: 0.5.4 + decompress: 4.2.1 + ext-name: 5.0.0 + file-type: 8.1.0 + filenamify: 2.1.0 + get-stream: 3.0.0 + got: 8.3.2 + make-dir: 1.3.0 + p-event: 2.3.1 + pify: 3.0.0 + + duplexer3@0.1.5: {} + + easy-table@1.1.0: + optionalDependencies: + wcwidth: 1.0.1 + + echarts@5.6.0: + dependencies: + tslib: 2.3.0 + zrender: 5.6.1 + + electron-to-chromium@1.5.128: {} + + element-internals-polyfill@0.1.55: {} + + emoji-regex@10.4.0: {} + + emoji-regex@8.0.0: {} + + end-of-stream@1.4.4: + dependencies: + once: 1.4.0 + + entities@2.2.0: {} + + entities@4.5.0: {} + + env-paths@2.2.1: {} + + environment@1.1.0: {} + + errno@0.1.8: + dependencies: + prr: 1.0.1 + optional: true + + error-ex@1.3.2: + dependencies: + is-arrayish: 0.2.1 + + esbuild-android-64@0.14.54: + optional: true + + esbuild-android-arm64@0.14.54: + optional: true + + esbuild-darwin-64@0.14.54: + optional: true + + esbuild-darwin-arm64@0.14.54: + optional: true + + esbuild-freebsd-64@0.14.54: + optional: true + + esbuild-freebsd-arm64@0.14.54: + optional: true + + esbuild-linux-32@0.14.54: + optional: true + + esbuild-linux-64@0.14.54: + optional: true + + esbuild-linux-arm64@0.14.54: + optional: true + + esbuild-linux-arm@0.14.54: + optional: true + + esbuild-linux-mips64le@0.14.54: + optional: true + + esbuild-linux-ppc64le@0.14.54: + optional: true + + esbuild-linux-riscv64@0.14.54: + optional: true + + esbuild-linux-s390x@0.14.54: + optional: true + + esbuild-netbsd-64@0.14.54: + optional: true + + esbuild-openbsd-64@0.14.54: + optional: true + + esbuild-sunos-64@0.14.54: + optional: true + + esbuild-windows-32@0.14.54: + optional: true + + esbuild-windows-64@0.14.54: + optional: true + + esbuild-windows-arm64@0.14.54: + optional: true + + esbuild@0.14.54: + optionalDependencies: + '@esbuild/linux-loong64': 0.14.54 + esbuild-android-64: 0.14.54 + esbuild-android-arm64: 0.14.54 + esbuild-darwin-64: 0.14.54 + esbuild-darwin-arm64: 0.14.54 + esbuild-freebsd-64: 0.14.54 + esbuild-freebsd-arm64: 0.14.54 + esbuild-linux-32: 0.14.54 + esbuild-linux-64: 0.14.54 + esbuild-linux-arm: 0.14.54 + esbuild-linux-arm64: 0.14.54 + esbuild-linux-mips64le: 0.14.54 + esbuild-linux-ppc64le: 0.14.54 + esbuild-linux-riscv64: 0.14.54 + esbuild-linux-s390x: 0.14.54 + esbuild-netbsd-64: 0.14.54 + esbuild-openbsd-64: 0.14.54 + esbuild-sunos-64: 0.14.54 + esbuild-windows-32: 0.14.54 + esbuild-windows-64: 0.14.54 + esbuild-windows-arm64: 0.14.54 + + esbuild@0.21.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + + escalade@3.2.0: {} + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + escodegen@2.1.0: + dependencies: + esprima: 4.0.1 + estraverse: 5.3.0 + esutils: 2.0.3 + optionalDependencies: + source-map: 0.6.1 + + eslint-config-prettier@9.1.0(eslint@9.25.1(jiti@2.4.2)): + dependencies: + eslint: 9.25.1(jiti@2.4.2) + + eslint-define-config@2.1.0: {} + + eslint-plugin-prettier@5.2.6(eslint-config-prettier@9.1.0(eslint@9.25.1(jiti@2.4.2)))(eslint@9.25.1(jiti@2.4.2))(prettier@3.5.3): + dependencies: + eslint: 9.25.1(jiti@2.4.2) + prettier: 3.5.3 + prettier-linter-helpers: 1.0.0 + synckit: 0.11.4 + optionalDependencies: + eslint-config-prettier: 9.1.0(eslint@9.25.1(jiti@2.4.2)) + + eslint-plugin-vue@9.33.0(eslint@9.25.1(jiti@2.4.2)): + dependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@9.25.1(jiti@2.4.2)) + eslint: 9.25.1(jiti@2.4.2) + globals: 13.24.0 + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 6.1.2 + semver: 7.6.3 + vue-eslint-parser: 9.4.3(eslint@9.25.1(jiti@2.4.2)) + xml-name-validator: 4.0.0 + transitivePeerDependencies: + - supports-color + + eslint-scope@7.2.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-scope@8.3.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.0: {} + + eslint@9.25.1(jiti@2.4.2): + dependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@9.25.1(jiti@2.4.2)) + '@eslint-community/regexpp': 4.12.1 + '@eslint/config-array': 0.20.0 + '@eslint/config-helpers': 0.2.1 + '@eslint/core': 0.13.0 + '@eslint/eslintrc': 3.3.1 + '@eslint/js': 9.25.1 + '@eslint/plugin-kit': 0.2.8 + '@humanfs/node': 0.16.6 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.2 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.0 + escape-string-regexp: 4.0.0 + eslint-scope: 8.3.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + optionalDependencies: + jiti: 2.4.2 + transitivePeerDependencies: + - supports-color + + espree@10.3.0: + dependencies: + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + eslint-visitor-keys: 4.2.0 + + espree@9.6.1: + dependencies: + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + eslint-visitor-keys: 3.4.3 + + esprima@4.0.1: {} + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-walker@2.0.2: {} + + esutils@2.0.3: {} + + eventemitter3@5.0.1: {} + + exec-buffer@3.2.0: + dependencies: + execa: 0.7.0 + p-finally: 1.0.0 + pify: 3.0.0 + rimraf: 2.7.1 + tempfile: 2.0.0 + + execa@0.7.0: + dependencies: + cross-spawn: 5.1.0 + get-stream: 3.0.0 + is-stream: 1.1.0 + npm-run-path: 2.0.2 + p-finally: 1.0.0 + signal-exit: 3.0.7 + strip-eof: 1.0.0 + + execa@1.0.0: + dependencies: + cross-spawn: 6.0.6 + get-stream: 4.1.0 + is-stream: 1.1.0 + npm-run-path: 2.0.2 + p-finally: 1.0.0 + signal-exit: 3.0.7 + strip-eof: 1.0.0 + + execa@4.1.0: + dependencies: + cross-spawn: 7.0.6 + get-stream: 5.2.0 + human-signals: 1.1.1 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + execa@8.0.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.3.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + + executable@4.1.1: + dependencies: + pify: 2.3.0 + + ext-list@2.2.2: + dependencies: + mime-db: 1.53.0 + + ext-name@5.0.0: + dependencies: + ext-list: 2.2.2 + sort-keys-length: 1.0.1 + + extend@3.0.2: {} + + external-editor@3.1.0: + dependencies: + chardet: 0.7.0 + iconv-lite: 0.4.24 + tmp: 0.0.33 + + fast-deep-equal@3.1.3: {} + + fast-diff@1.3.0: {} + + fast-glob@3.3.2: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fast-safe-stringify@2.1.1: {} + + fast-uri@3.0.3: {} + + fast-xml-parser@4.5.1: + dependencies: + strnum: 1.0.5 + + fastest-levenshtein@1.0.16: {} + + fastq@1.17.1: + dependencies: + reusify: 1.0.4 + + fd-slicer@1.1.0: + dependencies: + pend: 1.2.0 + + fflate@0.8.2: {} + + figures@1.7.0: + dependencies: + escape-string-regexp: 1.0.5 + object-assign: 4.1.1 + + figures@3.2.0: + dependencies: + escape-string-regexp: 1.0.5 + + file-entry-cache@10.0.8: + dependencies: + flat-cache: 6.1.8 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + file-type@10.11.0: {} + + file-type@12.4.2: {} + + file-type@20.4.1: + dependencies: + '@tokenizer/inflate': 0.2.7 + strtok3: 10.2.2 + token-types: 6.0.0 + uint8array-extras: 1.4.0 + transitivePeerDependencies: + - supports-color + + file-type@3.9.0: {} + + file-type@4.4.0: {} + + file-type@5.2.0: {} + + file-type@6.2.0: {} + + file-type@8.1.0: {} + + filename-reserved-regex@2.0.0: {} + + filenamify@2.1.0: + dependencies: + filename-reserved-regex: 2.0.0 + strip-outer: 1.0.1 + trim-repeated: 1.0.0 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + filter-obj@5.1.0: {} + + find-up@1.1.2: + dependencies: + path-exists: 2.1.0 + pinkie-promise: 2.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + find-up@7.0.0: + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + unicorn-magic: 0.1.0 + + find-versions@3.2.0: + dependencies: + semver-regex: 2.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.3.2 + keyv: 4.5.4 + + flat-cache@6.1.8: + dependencies: + cacheable: 1.8.10 + flatted: 3.3.3 + hookified: 1.8.2 + + flatted@3.3.2: {} + + flatted@3.3.3: {} + + follow-redirects@1.15.9: {} + + form-data@4.0.1: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + + fraction.js@4.3.7: {} + + from2@2.3.0: + dependencies: + inherits: 2.0.4 + readable-stream: 2.3.8 + + fs-constants@1.0.0: {} + + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + + fs-extra@11.3.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + gensync@1.0.0-beta.2: {} + + get-caller-file@2.0.5: {} + + get-east-asian-width@1.3.0: {} + + get-proxy@2.1.0: + dependencies: + npm-conf: 1.1.3 + + get-stdin@4.0.1: {} + + get-stream@2.3.1: + dependencies: + object-assign: 4.1.1 + pinkie-promise: 2.0.1 + + get-stream@3.0.0: {} + + get-stream@4.1.0: + dependencies: + pump: 3.0.2 + + get-stream@5.2.0: + dependencies: + pump: 3.0.2 + + get-stream@6.0.1: {} + + get-stream@8.0.1: {} + + get-uri@6.0.4: + dependencies: + basic-ftp: 5.0.5 + data-uri-to-buffer: 6.0.2 + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + gifsicle@5.2.0: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + execa: 5.1.1 + logalot: 2.1.0 + + git-raw-commits@4.0.0: + dependencies: + dargs: 8.1.0 + meow: 12.1.1 + split2: 4.2.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@9.3.5: + dependencies: + fs.realpath: 1.0.0 + minimatch: 8.0.4 + minipass: 4.2.8 + path-scurry: 1.11.1 + + global-directory@4.0.1: + dependencies: + ini: 4.1.1 + + global-modules@2.0.0: + dependencies: + global-prefix: 3.0.0 + + global-prefix@3.0.0: + dependencies: + ini: 1.3.8 + kind-of: 6.0.3 + which: 1.3.1 + + globals@11.12.0: {} + + globals@13.24.0: + dependencies: + type-fest: 0.20.2 + + globals@14.0.0: {} + + globby@10.0.2: + dependencies: + '@types/glob': 7.2.0 + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.2 + glob: 7.2.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + globjoin@0.1.4: {} + + got@7.1.0: + dependencies: + '@types/keyv': 3.1.4 + '@types/responselike': 1.0.3 + decompress-response: 3.3.0 + duplexer3: 0.1.5 + get-stream: 3.0.0 + is-plain-obj: 1.1.0 + is-retry-allowed: 1.2.0 + is-stream: 1.1.0 + isurl: 1.0.0 + lowercase-keys: 1.0.1 + p-cancelable: 0.3.0 + p-timeout: 1.2.1 + safe-buffer: 5.2.1 + timed-out: 4.0.1 + url-parse-lax: 1.0.0 + url-to-options: 1.0.1 + + got@8.3.2: + dependencies: + '@sindresorhus/is': 0.7.0 + '@types/keyv': 3.1.4 + '@types/responselike': 1.0.3 + cacheable-request: 2.1.4 + decompress-response: 3.3.0 + duplexer3: 0.1.5 + get-stream: 3.0.0 + into-stream: 3.1.0 + is-retry-allowed: 1.2.0 + isurl: 1.0.0 + lowercase-keys: 1.0.1 + mimic-response: 1.0.1 + p-cancelable: 0.4.1 + p-timeout: 2.0.1 + pify: 3.0.0 + safe-buffer: 5.2.1 + timed-out: 4.0.1 + url-parse-lax: 3.0.0 + url-to-options: 1.0.1 + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + has-ansi@2.0.0: + dependencies: + ansi-regex: 2.1.1 + + has-flag@4.0.0: {} + + has-symbol-support-x@1.4.2: {} + + has-to-string-tag-x@1.4.1: + dependencies: + has-symbol-support-x: 1.4.2 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + he@1.2.0: {} + + hookified@1.8.2: {} + + hosted-git-info@2.8.9: {} + + html-tags@3.3.1: {} + + htmlparser2@8.0.2: + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.1.0 + entities: 4.5.0 + + http-cache-semantics@3.8.1: {} + + http-proxy-agent@7.0.2: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + https-proxy-agent@7.0.6: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + transitivePeerDependencies: + - supports-color + + human-signals@1.1.1: {} + + human-signals@2.1.0: {} + + human-signals@5.0.0: {} + + husky@8.0.3: {} + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + optional: true + + ieee754@1.2.1: {} + + ignore@5.3.2: {} + + ignore@7.0.3: {} + + image-size@0.5.5: + optional: true + + imagemin-gifsicle@7.0.0: + dependencies: + execa: 1.0.0 + gifsicle: 5.2.0 + is-gif: 3.0.0 + + imagemin-jpegtran@7.0.0: + dependencies: + exec-buffer: 3.2.0 + is-jpg: 2.0.0 + jpegtran-bin: 5.0.2 + + imagemin-mozjpeg@9.0.0: + dependencies: + execa: 4.1.0 + is-jpg: 2.0.0 + mozjpeg: 7.1.1 + + imagemin-optipng@8.0.0: + dependencies: + exec-buffer: 3.2.0 + is-png: 2.0.0 + optipng-bin: 7.0.1 + + imagemin-pngquant@9.0.2: + dependencies: + execa: 4.1.0 + is-png: 2.0.0 + is-stream: 2.0.1 + ow: 0.17.0 + pngquant-bin: 6.0.1 + + imagemin-svgo@9.0.0: + dependencies: + is-svg: 4.4.0 + svgo: 2.8.0 + + imagemin-webp@6.1.0: + dependencies: + cwebp-bin: 6.1.2 + exec-buffer: 3.2.0 + is-cwebp-readable: 3.0.0 + + imagemin@7.0.1: + dependencies: + file-type: 12.4.2 + globby: 10.0.2 + graceful-fs: 4.2.11 + junk: 3.1.0 + make-dir: 3.1.0 + p-pipe: 3.1.0 + replace-ext: 1.0.1 + + import-fresh@3.3.0: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + import-lazy@4.0.0: {} + + import-meta-resolve@4.1.0: {} + + imurmurhash@0.1.4: {} + + indent-string@2.1.0: + dependencies: + repeating: 2.0.1 + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + ini@1.3.8: {} + + ini@4.1.1: {} + + inquirer@8.2.6: + dependencies: + ansi-escapes: 4.3.2 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-width: 3.0.0 + external-editor: 3.1.0 + figures: 3.2.0 + lodash: 4.17.21 + mute-stream: 0.0.8 + ora: 5.4.1 + run-async: 2.4.1 + rxjs: 7.8.2 + string-width: 4.2.3 + strip-ansi: 6.0.1 + through: 2.3.8 + wrap-ansi: 6.2.0 + + into-stream@3.1.0: + dependencies: + from2: 2.3.0 + p-is-promise: 1.1.0 + + ip-address@9.0.5: + dependencies: + jsbn: 1.1.0 + sprintf-js: 1.1.3 + + is-arrayish@0.2.1: {} + + is-arrayish@0.3.2: {} + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-core-module@2.16.0: + dependencies: + hasown: 2.0.2 + + is-cwebp-readable@3.0.0: + dependencies: + file-type: 10.11.0 + + is-docker@2.2.1: {} + + is-extglob@2.1.1: {} + + is-finite@1.1.0: {} + + is-fullwidth-code-point@3.0.0: {} + + is-fullwidth-code-point@4.0.0: {} + + is-fullwidth-code-point@5.0.0: + dependencies: + get-east-asian-width: 1.3.0 + + is-gif@3.0.0: + dependencies: + file-type: 10.11.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-interactive@1.0.0: {} + + is-jpg@2.0.0: {} + + is-natural-number@4.0.1: {} + + is-number@7.0.0: {} + + is-obj@2.0.0: {} + + is-object@1.0.2: {} + + is-plain-obj@1.1.0: {} + + is-plain-obj@4.1.0: {} + + is-plain-object@5.0.0: {} + + is-png@2.0.0: {} + + is-retry-allowed@1.2.0: {} + + is-stream@1.1.0: {} + + is-stream@2.0.1: {} + + is-stream@3.0.0: {} + + is-svg@4.4.0: + dependencies: + fast-xml-parser: 4.5.1 + + is-text-path@2.0.0: + dependencies: + text-extensions: 2.4.0 + + is-unicode-supported@0.1.0: {} + + is-utf8@0.2.1: {} + + is-what@3.14.1: {} + + is-wsl@2.2.0: + dependencies: + is-docker: 2.2.1 + + isarray@1.0.0: {} + + isexe@2.0.0: {} + + isurl@1.0.0: + dependencies: + has-to-string-tag-x: 1.4.1 + is-object: 1.0.2 + + iterare@1.2.1: {} + + jiti@2.4.2: {} + + jpegtran-bin@5.0.2: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + logalot: 2.1.0 + + jpegtran-bin@6.0.1: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + + js-tokens@4.0.0: {} + + js-tokens@9.0.1: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsbn@1.1.0: {} + + jsesc@3.1.0: {} + + json-buffer@3.0.0: {} + + json-buffer@3.0.1: {} + + json-parse-even-better-errors@2.3.1: {} + + json-schema-traverse@0.4.1: {} + + json-schema-traverse@1.0.0: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@2.2.3: {} + + jsonfile@6.1.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + jsonparse@1.3.1: {} + + junk@3.1.0: {} + + katex@0.16.21: + dependencies: + commander: 8.3.0 + + keyv@3.0.0: + dependencies: + json-buffer: 3.0.0 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + keyv@5.3.3: + dependencies: + '@keyv/serialize': 1.0.3 + + kind-of@6.0.3: {} + + known-css-properties@0.36.0: {} + + less@4.3.0: + dependencies: + copy-anything: 2.0.6 + parse-node-version: 1.0.1 + tslib: 2.8.1 + optionalDependencies: + errno: 0.1.8 + graceful-fs: 4.2.11 + image-size: 0.5.5 + make-dir: 2.1.0 + mime: 1.6.0 + needle: 3.3.1 + source-map: 0.6.1 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lightningcss-darwin-arm64@1.29.3: + optional: true + + lightningcss-darwin-x64@1.29.3: + optional: true + + lightningcss-freebsd-x64@1.29.3: + optional: true + + lightningcss-linux-arm-gnueabihf@1.29.3: + optional: true + + lightningcss-linux-arm64-gnu@1.29.3: + optional: true + + lightningcss-linux-arm64-musl@1.29.3: + optional: true + + lightningcss-linux-x64-gnu@1.29.3: + optional: true + + lightningcss-linux-x64-musl@1.29.3: + optional: true + + lightningcss-win32-arm64-msvc@1.29.3: + optional: true + + lightningcss-win32-x64-msvc@1.29.3: + optional: true + + lightningcss@1.29.3: + dependencies: + detect-libc: 2.0.4 + optionalDependencies: + lightningcss-darwin-arm64: 1.29.3 + lightningcss-darwin-x64: 1.29.3 + lightningcss-freebsd-x64: 1.29.3 + lightningcss-linux-arm-gnueabihf: 1.29.3 + lightningcss-linux-arm64-gnu: 1.29.3 + lightningcss-linux-arm64-musl: 1.29.3 + lightningcss-linux-x64-gnu: 1.29.3 + lightningcss-linux-x64-musl: 1.29.3 + lightningcss-win32-arm64-msvc: 1.29.3 + lightningcss-win32-x64-msvc: 1.29.3 + optional: true + + lilconfig@3.1.3: {} + + lines-and-columns@1.2.4: {} + + lint-staged@15.5.1: + dependencies: + chalk: 5.4.1 + commander: 13.1.0 + debug: 4.4.0 + execa: 8.0.1 + lilconfig: 3.1.3 + listr2: 8.2.5 + micromatch: 4.0.8 + pidtree: 0.6.0 + string-argv: 0.3.2 + yaml: 2.7.1 + transitivePeerDependencies: + - supports-color + + listr2@8.2.5: + dependencies: + cli-truncate: 4.0.0 + colorette: 2.0.20 + eventemitter3: 5.0.1 + log-update: 6.1.0 + rfdc: 1.4.1 + wrap-ansi: 9.0.0 + + load-esm@1.0.2: {} + + load-json-file@1.1.0: + dependencies: + graceful-fs: 4.2.11 + parse-json: 2.2.0 + pify: 2.3.0 + pinkie-promise: 2.0.1 + strip-bom: 2.0.0 + + local-pkg@0.5.1: + dependencies: + mlly: 1.7.3 + pkg-types: 1.2.1 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + locate-path@7.2.0: + dependencies: + p-locate: 6.0.0 + + lodash.camelcase@4.3.0: {} + + lodash.debounce@4.0.8: {} + + lodash.isplainobject@4.0.6: {} + + lodash.kebabcase@4.1.1: {} + + lodash.merge@4.6.2: {} + + lodash.mergewith@4.6.2: {} + + lodash.snakecase@4.1.1: {} + + lodash.startcase@4.4.0: {} + + lodash.throttle@4.1.1: {} + + lodash.truncate@4.4.2: {} + + lodash.uniq@4.5.0: {} + + lodash.upperfirst@4.3.1: {} + + lodash@4.17.21: {} + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + log-update@6.1.0: + dependencies: + ansi-escapes: 7.0.0 + cli-cursor: 5.0.0 + slice-ansi: 7.1.0 + strip-ansi: 7.1.0 + wrap-ansi: 9.0.0 + + logalot@2.1.0: + dependencies: + figures: 1.7.0 + squeak: 1.3.0 + + longest-streak@3.1.0: {} + + longest@1.0.1: {} + + loud-rejection@1.6.0: + dependencies: + currently-unhandled: 0.4.1 + signal-exit: 3.0.7 + + lowercase-keys@1.0.0: {} + + lowercase-keys@1.0.1: {} + + lpad-align@1.1.2: + dependencies: + get-stdin: 4.0.1 + indent-string: 2.1.0 + longest: 1.0.1 + meow: 3.7.0 + + lru-cache@10.4.3: {} + + lru-cache@4.1.5: + dependencies: + pseudomap: 1.0.2 + yallist: 2.1.2 + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + lru-cache@7.18.3: {} + + magic-string@0.30.17: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + + make-dir@1.3.0: + dependencies: + pify: 3.0.0 + + make-dir@2.1.0: + dependencies: + pify: 4.0.1 + semver: 5.7.2 + optional: true + + make-dir@3.1.0: + dependencies: + semver: 6.3.1 + + map-obj@1.0.1: {} + + markdown-table@3.0.4: {} + + mathml-tag-names@2.1.3: {} + + mdast-util-definitions@6.0.0: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + unist-util-visit: 5.0.0 + + mdast-util-find-and-replace@3.0.2: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + mdast-util-from-markdown@2.0.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.1.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.2 + micromark-util-character: 2.1.1 + + mdast-util-gfm-footnote@2.1.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.1.0: + dependencies: + mdast-util-from-markdown: 2.0.2 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.1.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-math@3.0.0: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + longest-streak: 3.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + unist-util-remove-position: 5.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.0 + + mdast-util-to-markdown@2.1.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + mdn-data@2.0.14: {} + + mdn-data@2.0.28: {} + + mdn-data@2.0.30: {} + + mdn-data@2.12.2: {} + + meow@12.1.1: {} + + meow@13.2.0: {} + + meow@3.7.0: + dependencies: + camelcase-keys: 2.1.0 + decamelize: 1.2.0 + loud-rejection: 1.6.0 + map-obj: 1.0.1 + minimist: 1.2.8 + normalize-package-data: 2.5.0 + object-assign: 4.1.1 + read-pkg-up: 1.0.1 + redent: 1.0.0 + trim-newlines: 1.0.0 + + merge-stream@2.0.0: {} + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.1.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-table@2.1.1: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.2 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.1 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-math@3.1.0: + dependencies: + '@types/katex': 0.16.7 + devlop: 1.1.0 + katex: 0.16.21 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + + micromark@4.0.2: + dependencies: + '@types/debug': 4.1.12 + debug: 4.4.0 + decode-named-character-reference: 1.1.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mime-db@1.52.0: {} + + mime-db@1.53.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mime@1.6.0: + optional: true + + mimic-fn@2.1.0: {} + + mimic-fn@4.0.0: {} + + mimic-function@5.0.1: {} + + mimic-response@1.0.1: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@8.0.4: + dependencies: + brace-expansion: 2.0.1 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.1 + + minimist@1.2.8: {} + + minipass@4.2.8: {} + + minipass@7.1.2: {} + + mitt@3.0.1: {} + + mlly@1.7.3: + dependencies: + acorn: 8.14.0 + pathe: 1.1.2 + pkg-types: 1.2.1 + ufo: 1.5.4 + + mockjs@1.1.0: + dependencies: + commander: 12.1.0 + + mozjpeg@7.1.1: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + + ms@2.1.3: {} + + muggle-string@0.4.1: {} + + mute-stream@0.0.8: {} + + nanoid@3.3.11: {} + + nanoid@3.3.8: {} + + nanoid@5.1.5: {} + + natural-compare@1.4.0: {} + + needle@3.3.1: + dependencies: + iconv-lite: 0.6.3 + sax: 1.4.1 + optional: true + + netmask@2.0.2: {} + + nice-try@1.0.5: {} + + node-fetch@2.7.0: + dependencies: + whatwg-url: 5.0.0 + + node-releases@2.0.19: {} + + normalize-package-data@2.5.0: + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.9 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + + normalize-path@3.0.0: {} + + normalize-range@0.1.2: {} + + normalize-url@2.0.1: + dependencies: + prepend-http: 2.0.0 + query-string: 5.1.1 + sort-keys: 2.0.0 + + npm-conf@1.1.3: + dependencies: + config-chain: 1.1.13 + pify: 3.0.0 + + npm-run-path@2.0.2: + dependencies: + path-key: 2.0.1 + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + npm-run-path@5.3.0: + dependencies: + path-key: 4.0.0 + + nprogress@0.2.0: {} + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + number-precision@1.6.0: {} + + object-assign@4.1.1: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + onetime@6.0.0: + dependencies: + mimic-fn: 4.0.0 + + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + + open@8.4.2: + dependencies: + define-lazy-prop: 2.0.0 + is-docker: 2.2.1 + is-wsl: 2.2.0 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + optipng-bin@7.0.1: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + + ora@5.4.1: + dependencies: + bl: 4.1.0 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-spinners: 2.9.2 + is-interactive: 1.0.0 + is-unicode-supported: 0.1.0 + log-symbols: 4.1.0 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + + orderedmap@2.1.1: {} + + os-filter-obj@2.0.0: + dependencies: + arch: 2.2.0 + + os-tmpdir@1.0.2: {} + + ow@0.17.0: + dependencies: + type-fest: 0.11.0 + + p-cancelable@0.3.0: {} + + p-cancelable@0.4.1: {} + + p-event@1.3.0: + dependencies: + p-timeout: 1.2.1 + + p-event@2.3.1: + dependencies: + p-timeout: 2.0.1 + + p-finally@1.0.0: {} + + p-is-promise@1.1.0: {} + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-limit@4.0.0: + dependencies: + yocto-queue: 1.2.1 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-locate@6.0.0: + dependencies: + p-limit: 4.0.0 + + p-map-series@1.0.0: + dependencies: + p-reduce: 1.0.0 + + p-pipe@3.1.0: {} + + p-reduce@1.0.0: {} + + p-timeout@1.2.1: + dependencies: + p-finally: 1.0.0 + + p-timeout@2.0.1: + dependencies: + p-finally: 1.0.0 + + pac-proxy-agent@7.2.0: + dependencies: + '@tootallnate/quickjs-emscripten': 0.23.0 + agent-base: 7.1.3 + debug: 4.4.0 + get-uri: 6.0.4 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + pac-resolver: 7.0.1 + socks-proxy-agent: 8.0.5 + transitivePeerDependencies: + - supports-color + + pac-resolver@7.0.1: + dependencies: + degenerator: 5.0.1 + netmask: 2.0.2 + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-json@2.2.0: + dependencies: + error-ex: 1.3.2 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.26.2 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + parse-node-version@1.0.1: {} + + path-browserify@1.0.1: {} + + path-exists@2.1.0: + dependencies: + pinkie-promise: 2.0.1 + + path-exists@4.0.0: {} + + path-exists@5.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@2.0.1: {} + + path-key@3.1.1: {} + + path-key@4.0.0: {} + + path-parse@1.0.7: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.2 + + path-to-regexp@8.2.0: {} + + path-type@1.1.0: + dependencies: + graceful-fs: 4.2.11 + pify: 2.3.0 + pinkie-promise: 2.0.1 + + path-type@4.0.0: {} + + pathe@0.2.0: {} + + pathe@1.1.2: {} + + peek-readable@7.0.0: {} + + pend@1.2.0: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.2: {} + + pidtree@0.6.0: {} + + pify@2.3.0: {} + + pify@3.0.0: {} + + pify@4.0.1: {} + + pinia@2.3.1(typescript@5.8.3)(vue@3.5.13(typescript@5.8.3)): + dependencies: + '@vue/devtools-api': 6.6.4 + vue: 3.5.13(typescript@5.8.3) + vue-demi: 0.14.10(vue@3.5.13(typescript@5.8.3)) + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - '@vue/composition-api' + + pinkie-promise@2.0.1: + dependencies: + pinkie: 2.0.4 + + pinkie@2.0.4: {} + + pkg-types@1.2.1: + dependencies: + confbox: 0.1.8 + mlly: 1.7.3 + pathe: 1.1.2 + + pngquant-bin@6.0.1: + dependencies: + bin-build: 3.0.0 + bin-wrapper: bin-wrapper-china@0.1.0 + execa: 4.1.0 + + postcss-html@1.8.0: + dependencies: + htmlparser2: 8.0.2 + js-tokens: 9.0.1 + postcss: 8.5.3 + postcss-safe-parser: 6.0.0(postcss@8.5.3) + + postcss-less@6.0.0(postcss@8.5.3): + dependencies: + postcss: 8.5.3 + + postcss-resolve-nested-selector@0.1.6: {} + + postcss-safe-parser@6.0.0(postcss@8.5.3): + dependencies: + postcss: 8.5.3 + + postcss-safe-parser@7.0.1(postcss@8.5.3): + dependencies: + postcss: 8.5.3 + + postcss-selector-parser@6.1.2: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-selector-parser@7.1.0: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-sorting@8.0.2(postcss@8.5.3): + dependencies: + postcss: 8.5.3 + + postcss-value-parser@4.2.0: {} + + postcss@8.4.49: + dependencies: + nanoid: 3.3.8 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + postcss@8.5.3: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prepend-http@1.0.4: {} + + prepend-http@2.0.0: {} + + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + + prettier@3.5.3: {} + + process-nextick-args@2.0.1: {} + + prosemirror-changeset@2.2.1: + dependencies: + prosemirror-transform: 1.10.3 + + prosemirror-commands@1.7.0: + dependencies: + prosemirror-model: 1.25.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + + prosemirror-dropcursor@1.8.1: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + prosemirror-view: 1.38.1 + + prosemirror-gapcursor@1.3.2: + dependencies: + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.25.0 + prosemirror-state: 1.4.3 + prosemirror-view: 1.38.1 + + prosemirror-history@1.4.1: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + prosemirror-view: 1.38.1 + rope-sequence: 1.3.4 + + prosemirror-inputrules@1.5.0: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + + prosemirror-keymap@1.2.2: + dependencies: + prosemirror-state: 1.4.3 + w3c-keyname: 2.2.8 + + prosemirror-model@1.25.0: + dependencies: + orderedmap: 2.1.1 + + prosemirror-safari-ime-span@1.0.2: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-view: 1.38.1 + + prosemirror-schema-list@1.5.1: + dependencies: + prosemirror-model: 1.25.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + + prosemirror-state@1.4.3: + dependencies: + prosemirror-model: 1.25.0 + prosemirror-transform: 1.10.3 + prosemirror-view: 1.38.1 + + prosemirror-tables@1.6.4: + dependencies: + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.25.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + prosemirror-view: 1.38.1 + + prosemirror-transform@1.10.3: + dependencies: + prosemirror-model: 1.25.0 + + prosemirror-view@1.38.1: + dependencies: + prosemirror-model: 1.25.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.3 + + proto-list@1.2.4: {} + + proxy-agent@6.5.0: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + lru-cache: 7.18.3 + pac-proxy-agent: 7.2.0 + proxy-from-env: 1.1.0 + socks-proxy-agent: 8.0.5 + transitivePeerDependencies: + - supports-color + + proxy-from-env@1.1.0: {} + + prr@1.0.1: + optional: true + + pseudomap@1.0.2: {} + + pump@3.0.2: + dependencies: + end-of-stream: 1.4.4 + once: 1.4.0 + + punycode@2.3.1: {} + + query-string@5.1.1: + dependencies: + decode-uri-component: 0.2.2 + object-assign: 4.1.1 + strict-uri-encode: 1.1.0 + + query-string@9.1.1: + dependencies: + decode-uri-component: 0.4.1 + filter-obj: 5.1.0 + split-on-first: 3.0.0 + + queue-microtask@1.2.3: {} + + read-pkg-up@1.0.1: + dependencies: + find-up: 1.1.2 + read-pkg: 1.1.0 + + read-pkg@1.1.0: + dependencies: + load-json-file: 1.1.0 + normalize-package-data: 2.5.0 + path-type: 1.1.0 + + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + redent@1.0.0: + dependencies: + indent-string: 2.1.0 + strip-indent: 1.0.1 + + reflect-metadata@0.2.2: {} + + regenerator-runtime@0.14.1: {} + + remark-gfm@4.0.1: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-gfm: 3.1.0 + micromark-extension-gfm: 3.0.0 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-inline-links@7.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-definitions: 6.0.0 + unist-util-visit: 5.0.0 + + remark-math@6.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-math: 3.0.0 + micromark-extension-math: 3.1.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.2 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-stringify@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-to-markdown: 2.1.2 + unified: 11.0.5 + + remark@15.0.1: + dependencies: + '@types/mdast': 4.0.4 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + repeating@2.0.1: + dependencies: + is-finite: 1.1.0 + + replace-ext@1.0.1: {} + + require-directory@2.1.1: {} + + require-from-string@2.0.2: {} + + resize-detector@0.3.0: {} + + resize-observer-polyfill@1.5.1: {} + + resolve-from@4.0.0: {} + + resolve-from@5.0.0: {} + + resolve@1.22.9: + dependencies: + is-core-module: 2.16.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + responselike@1.0.2: + dependencies: + lowercase-keys: 1.0.1 + + restore-cursor@3.1.0: + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + + reusify@1.0.4: {} + + rfdc@1.4.1: {} + + rimraf@2.7.1: + dependencies: + glob: 7.2.3 + + rollup-plugin-visualizer@5.14.0(rollup@4.40.0): + dependencies: + open: 8.4.2 + picomatch: 4.0.2 + source-map: 0.7.4 + yargs: 17.7.2 + optionalDependencies: + rollup: 4.40.0 + + rollup@4.40.0: + dependencies: + '@types/estree': 1.0.7 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.40.0 + '@rollup/rollup-android-arm64': 4.40.0 + '@rollup/rollup-darwin-arm64': 4.40.0 + '@rollup/rollup-darwin-x64': 4.40.0 + '@rollup/rollup-freebsd-arm64': 4.40.0 + '@rollup/rollup-freebsd-x64': 4.40.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.40.0 + '@rollup/rollup-linux-arm-musleabihf': 4.40.0 + '@rollup/rollup-linux-arm64-gnu': 4.40.0 + '@rollup/rollup-linux-arm64-musl': 4.40.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.40.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.40.0 + '@rollup/rollup-linux-riscv64-gnu': 4.40.0 + '@rollup/rollup-linux-riscv64-musl': 4.40.0 + '@rollup/rollup-linux-s390x-gnu': 4.40.0 + '@rollup/rollup-linux-x64-gnu': 4.40.0 + '@rollup/rollup-linux-x64-musl': 4.40.0 + '@rollup/rollup-win32-arm64-msvc': 4.40.0 + '@rollup/rollup-win32-ia32-msvc': 4.40.0 + '@rollup/rollup-win32-x64-msvc': 4.40.0 + fsevents: 2.3.3 + + rope-sequence@1.3.4: {} + + run-async@2.4.1: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + rxjs@6.6.7: + dependencies: + tslib: 1.14.1 + + rxjs@7.8.2: + dependencies: + tslib: 2.8.1 + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + + safer-buffer@2.1.2: {} + + sax@1.4.1: + optional: true + + scroll-into-view-if-needed@2.2.31: + dependencies: + compute-scroll-into-view: 1.0.20 + + seek-bzip@1.0.6: + dependencies: + commander: 2.20.3 + + semver-regex@2.0.0: {} + + semver-truncate@1.1.2: + dependencies: + semver: 5.7.2 + + semver@5.7.2: {} + + semver@6.3.1: {} + + semver@7.6.3: {} + + semver@7.7.1: {} + + shebang-command@1.2.0: + dependencies: + shebang-regex: 1.0.0 + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@1.0.0: {} + + shebang-regex@3.0.0: {} + + signal-exit@3.0.7: {} + + signal-exit@4.1.0: {} + + simple-swizzle@0.2.2: + dependencies: + is-arrayish: 0.3.2 + + slash@3.0.0: {} + + slice-ansi@4.0.0: + dependencies: + ansi-styles: 4.3.0 + astral-regex: 2.0.0 + is-fullwidth-code-point: 3.0.0 + + slice-ansi@5.0.0: + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 4.0.0 + + slice-ansi@7.1.0: + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 5.0.0 + + smart-buffer@4.2.0: {} + + socks-proxy-agent@8.0.5: + dependencies: + agent-base: 7.1.3 + debug: 4.4.0 + socks: 2.8.4 + transitivePeerDependencies: + - supports-color + + socks@2.8.4: + dependencies: + ip-address: 9.0.5 + smart-buffer: 4.2.0 + + sort-keys-length@1.0.1: + dependencies: + sort-keys: 1.1.2 + + sort-keys@1.1.2: + dependencies: + is-plain-obj: 1.1.0 + + sort-keys@2.0.0: + dependencies: + is-plain-obj: 1.1.0 + + sortablejs@1.15.6: {} + + source-map-js@1.2.1: {} + + source-map@0.6.1: {} + + source-map@0.7.4: {} + + spawn-command@0.0.2: {} + + spdx-correct@3.2.0: + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.20 + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@3.0.1: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.20 + + spdx-license-ids@3.0.20: {} + + split-on-first@3.0.0: {} + + split2@4.2.0: {} + + sprintf-js@1.1.3: {} + + squeak@1.3.0: + dependencies: + chalk: 1.1.3 + console-stream: 0.1.1 + lpad-align: 1.1.2 + + stable@0.1.8: {} + + strict-uri-encode@1.1.0: {} + + string-argv@0.3.2: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@7.2.0: + dependencies: + emoji-regex: 10.4.0 + get-east-asian-width: 1.3.0 + strip-ansi: 7.1.0 + + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + strip-ansi@3.0.1: + dependencies: + ansi-regex: 2.1.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.1.0 + + strip-bom@2.0.0: + dependencies: + is-utf8: 0.2.1 + + strip-dirs@2.1.0: + dependencies: + is-natural-number: 4.0.1 + + strip-eof@1.0.0: {} + + strip-final-newline@2.0.0: {} + + strip-final-newline@3.0.0: {} + + strip-indent@1.0.1: + dependencies: + get-stdin: 4.0.1 + + strip-json-comments@3.1.1: {} + + strip-outer@1.0.1: + dependencies: + escape-string-regexp: 1.0.5 + + strnum@1.0.5: {} + + strtok3@10.2.2: + dependencies: + '@tokenizer/token': 0.3.0 + peek-readable: 7.0.0 + + style-mod@4.1.2: {} + + stylelint-config-html@1.1.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + postcss-html: 1.8.0 + stylelint: 16.19.0(typescript@5.8.3) + + stylelint-config-recess-order@5.1.1(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + stylelint: 16.19.0(typescript@5.8.3) + stylelint-order: 6.0.4(stylelint@16.19.0(typescript@5.8.3)) + + stylelint-config-recommended-less@3.0.1(postcss@8.5.3)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + postcss-less: 6.0.0(postcss@8.5.3) + stylelint: 16.19.0(typescript@5.8.3) + stylelint-config-recommended: 14.0.1(stylelint@16.19.0(typescript@5.8.3)) + stylelint-less: 3.0.1(postcss@8.5.3)(stylelint@16.19.0(typescript@5.8.3)) + optionalDependencies: + postcss: 8.5.3 + + stylelint-config-recommended-vue@1.6.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + postcss-html: 1.8.0 + semver: 7.6.3 + stylelint: 16.19.0(typescript@5.8.3) + stylelint-config-html: 1.1.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-recommended: 14.0.1(stylelint@16.19.0(typescript@5.8.3)) + + stylelint-config-recommended@14.0.1(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + stylelint: 16.19.0(typescript@5.8.3) + + stylelint-config-recommended@15.0.0(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + stylelint: 16.19.0(typescript@5.8.3) + + stylelint-config-standard-less@3.0.1(postcss@8.5.3)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + stylelint: 16.19.0(typescript@5.8.3) + stylelint-config-recommended-less: 3.0.1(postcss@8.5.3)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-standard: 35.0.0(stylelint@16.19.0(typescript@5.8.3)) + optionalDependencies: + postcss: 8.5.3 + + stylelint-config-standard-vue@1.0.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + postcss-html: 1.8.0 + stylelint: 16.19.0(typescript@5.8.3) + stylelint-config-html: 1.1.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-recommended-vue: 1.6.0(postcss-html@1.8.0)(stylelint@16.19.0(typescript@5.8.3)) + stylelint-config-standard: 37.0.0(stylelint@16.19.0(typescript@5.8.3)) + + stylelint-config-standard@35.0.0(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + stylelint: 16.19.0(typescript@5.8.3) + stylelint-config-recommended: 14.0.1(stylelint@16.19.0(typescript@5.8.3)) + + stylelint-config-standard@37.0.0(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + stylelint: 16.19.0(typescript@5.8.3) + stylelint-config-recommended: 15.0.0(stylelint@16.19.0(typescript@5.8.3)) + + stylelint-less@3.0.1(postcss@8.5.3)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + postcss: 8.5.3 + postcss-resolve-nested-selector: 0.1.6 + postcss-value-parser: 4.2.0 + stylelint: 16.19.0(typescript@5.8.3) + + stylelint-order@6.0.4(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + postcss: 8.5.3 + postcss-sorting: 8.0.2(postcss@8.5.3) + stylelint: 16.19.0(typescript@5.8.3) + + stylelint-prettier@5.0.3(prettier@3.5.3)(stylelint@16.19.0(typescript@5.8.3)): + dependencies: + prettier: 3.5.3 + prettier-linter-helpers: 1.0.0 + stylelint: 16.19.0(typescript@5.8.3) + + stylelint@16.19.0(typescript@5.8.3): + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0) + '@dual-bundle/import-meta-resolve': 4.1.0 + balanced-match: 2.0.0 + colord: 2.9.3 + cosmiconfig: 9.0.0(typescript@5.8.3) + css-functions-list: 3.2.3 + css-tree: 3.1.0 + debug: 4.4.0 + fast-glob: 3.3.3 + fastest-levenshtein: 1.0.16 + file-entry-cache: 10.0.8 + global-modules: 2.0.0 + globby: 11.1.0 + globjoin: 0.1.4 + html-tags: 3.3.1 + ignore: 7.0.3 + imurmurhash: 0.1.4 + is-plain-object: 5.0.0 + known-css-properties: 0.36.0 + mathml-tag-names: 2.1.3 + meow: 13.2.0 + micromatch: 4.0.8 + normalize-path: 3.0.0 + picocolors: 1.1.1 + postcss: 8.5.3 + postcss-resolve-nested-selector: 0.1.6 + postcss-safe-parser: 7.0.1(postcss@8.5.3) + postcss-selector-parser: 7.1.0 + postcss-value-parser: 4.2.0 + resolve-from: 5.0.0 + string-width: 4.2.3 + supports-hyperlinks: 3.2.0 + svg-tags: 1.0.0 + table: 6.9.0 + write-file-atomic: 5.0.1 + transitivePeerDependencies: + - supports-color + - typescript + + supports-color@2.0.0: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + supports-hyperlinks@3.2.0: + dependencies: + has-flag: 4.0.0 + supports-color: 7.2.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + svg-tags@1.0.0: {} + + svgo@2.8.0: + dependencies: + '@trysound/sax': 0.2.0 + commander: 7.2.0 + css-select: 4.3.0 + css-tree: 1.1.3 + csso: 4.2.0 + picocolors: 1.1.1 + stable: 0.1.8 + + svgo@3.3.2: + dependencies: + '@trysound/sax': 0.2.0 + commander: 7.2.0 + css-select: 5.1.0 + css-tree: 2.3.1 + css-what: 6.1.0 + csso: 5.0.5 + picocolors: 1.1.1 + + synckit@0.11.4: + dependencies: + '@pkgr/core': 0.2.4 + tslib: 2.8.1 + + table@6.9.0: + dependencies: + ajv: 8.17.1 + lodash.truncate: 4.4.2 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + tar-stream@1.6.2: + dependencies: + bl: 1.2.3 + buffer-alloc: 1.2.0 + end-of-stream: 1.4.4 + fs-constants: 1.0.0 + readable-stream: 2.3.8 + to-buffer: 1.1.1 + xtend: 4.0.2 + + temp-dir@1.0.0: {} + + tempfile@2.0.0: + dependencies: + temp-dir: 1.0.0 + uuid: 3.4.0 + + text-extensions@2.4.0: {} + + through@2.3.8: {} + + timed-out@4.0.1: {} + + tinyexec@0.3.1: {} + + tippy.js@6.3.7: + dependencies: + '@popperjs/core': 2.11.8 + + tmp@0.0.33: + dependencies: + os-tmpdir: 1.0.2 + + to-buffer@1.1.1: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + token-types@6.0.0: + dependencies: + '@tokenizer/token': 0.3.0 + ieee754: 1.2.1 + + tr46@0.0.3: {} + + tree-kill@1.2.2: {} + + trim-newlines@1.0.0: {} + + trim-repeated@1.0.0: + dependencies: + escape-string-regexp: 1.0.5 + + trough@2.2.0: {} + + ts-api-utils@2.1.0(typescript@5.8.3): + dependencies: + typescript: 5.8.3 + + tslib@1.14.1: {} + + tslib@2.3.0: {} + + tslib@2.8.1: {} + + tunnel-agent@0.6.0: + dependencies: + safe-buffer: 5.2.1 + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@0.11.0: {} + + type-fest@0.20.2: {} + + type-fest@0.21.3: {} + + typescript@5.8.3: {} + + ufo@1.5.4: {} + + uid@2.0.2: + dependencies: + '@lukeed/csprng': 1.1.0 + + uint8array-extras@1.4.0: {} + + unbzip2-stream@1.4.3: + dependencies: + buffer: 5.7.1 + through: 2.3.8 + + undici-types@6.21.0: {} + + unicorn-magic@0.1.0: {} + + unified@11.0.5: + dependencies: + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 + + unist-util-is@6.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-remove-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-visit: 5.0.0 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.1: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + universalify@2.0.1: {} + + unplugin-vue-components@0.27.5(@babel/parser@7.27.0)(rollup@4.40.0)(vue@3.5.13(typescript@5.8.3)): + dependencies: + '@antfu/utils': 0.7.10 + '@rollup/pluginutils': 5.1.4(rollup@4.40.0) + chokidar: 3.6.0 + debug: 4.4.0 + fast-glob: 3.3.2 + local-pkg: 0.5.1 + magic-string: 0.30.17 + minimatch: 9.0.5 + mlly: 1.7.3 + unplugin: 1.16.0 + vue: 3.5.13(typescript@5.8.3) + optionalDependencies: + '@babel/parser': 7.27.0 + transitivePeerDependencies: + - rollup + - supports-color + + unplugin@1.16.0: + dependencies: + acorn: 8.14.0 + webpack-virtual-modules: 0.6.2 + + update-browserslist-db@1.1.3(browserslist@4.24.4): + dependencies: + browserslist: 4.24.4 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + url-parse-lax@1.0.0: + dependencies: + prepend-http: 1.0.4 + + url-parse-lax@3.0.0: + dependencies: + prepend-http: 2.0.0 + + url-to-options@1.0.1: {} + + util-deprecate@1.0.2: {} + + uuid@3.4.0: {} + + validate-npm-package-license@3.0.4: + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + + vfile-message@4.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.2 + + vite-plugin-compression@0.5.1(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3)): + dependencies: + chalk: 4.1.2 + debug: 4.4.0 + fs-extra: 10.1.0 + vite: 5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3) + transitivePeerDependencies: + - supports-color + + vite-plugin-imagemin@0.6.1(vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3)): + dependencies: + '@types/imagemin': 7.0.1 + '@types/imagemin-gifsicle': 7.0.4 + '@types/imagemin-jpegtran': 5.0.4 + '@types/imagemin-mozjpeg': 8.0.4 + '@types/imagemin-optipng': 5.2.4 + '@types/imagemin-svgo': 10.0.5 + '@types/imagemin-webp': 7.0.3 + '@types/svgo': 2.6.4 + chalk: 4.1.2 + debug: 4.4.0 + esbuild: 0.14.54 + fs-extra: 10.1.0 + gifsicle: 5.2.0 + imagemin: 7.0.1 + imagemin-gifsicle: 7.0.0 + imagemin-jpegtran: 7.0.0 + imagemin-mozjpeg: 9.0.0 + imagemin-optipng: 8.0.0 + imagemin-pngquant: 9.0.2 + imagemin-svgo: 9.0.0 + imagemin-webp: 6.1.0 + jpegtran-bin: 6.0.1 + pathe: 0.2.0 + vite: 5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3) + transitivePeerDependencies: + - supports-color + + vite-svg-loader@5.1.0(vue@3.5.13(typescript@5.8.3)): + dependencies: + svgo: 3.3.2 + vue: 3.5.13(typescript@5.8.3) + + vite@5.4.18(@types/node@22.14.1)(less@4.3.0)(lightningcss@1.29.3): + dependencies: + esbuild: 0.21.5 + postcss: 8.5.3 + rollup: 4.40.0 + optionalDependencies: + '@types/node': 22.14.1 + fsevents: 2.3.3 + less: 4.3.0 + lightningcss: 1.29.3 + + vscode-uri@3.0.8: {} + + vue-demi@0.13.11(vue@3.5.13(typescript@5.8.3)): + dependencies: + vue: 3.5.13(typescript@5.8.3) + + vue-demi@0.14.10(vue@3.5.13(typescript@5.8.3)): + dependencies: + vue: 3.5.13(typescript@5.8.3) + + vue-echarts@6.7.3(@vue/runtime-core@3.5.13)(echarts@5.6.0)(vue@3.5.13(typescript@5.8.3)): + dependencies: + echarts: 5.6.0 + resize-detector: 0.3.0 + vue: 3.5.13(typescript@5.8.3) + vue-demi: 0.13.11(vue@3.5.13(typescript@5.8.3)) + optionalDependencies: + '@vue/runtime-core': 3.5.13 + + vue-eslint-parser@9.4.3(eslint@9.25.1(jiti@2.4.2)): + dependencies: + debug: 4.4.0 + eslint: 9.25.1(jiti@2.4.2) + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.6.0 + lodash: 4.17.21 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + + vue-router@4.5.0(vue@3.5.13(typescript@5.8.3)): + dependencies: + '@vue/devtools-api': 6.6.4 + vue: 3.5.13(typescript@5.8.3) + + vue-tsc@2.2.10(typescript@5.8.3): + dependencies: + '@volar/typescript': 2.4.11 + '@vue/language-core': 2.2.10(typescript@5.8.3) + typescript: 5.8.3 + + vue@3.5.13(typescript@5.8.3): + dependencies: + '@vue/compiler-dom': 3.5.13 + '@vue/compiler-sfc': 3.5.13 + '@vue/runtime-dom': 3.5.13 + '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.3)) + '@vue/shared': 3.5.13 + optionalDependencies: + typescript: 5.8.3 + + w3c-keyname@2.2.8: {} + + wcwidth@1.0.1: + dependencies: + defaults: 1.0.4 + + webidl-conversions@3.0.1: {} + + webpack-virtual-modules@0.6.2: {} + + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + + which@1.3.1: + dependencies: + isexe: 2.0.0 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + word-wrap@1.2.5: {} + + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@9.0.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 7.2.0 + strip-ansi: 7.1.0 + + wrappy@1.0.2: {} + + write-file-atomic@5.0.1: + dependencies: + imurmurhash: 0.1.4 + signal-exit: 4.1.0 + + xml-name-validator@4.0.0: {} + + xtend@4.0.2: {} + + y18n@5.0.8: {} + + yallist@2.1.2: {} + + yallist@3.1.1: {} + + yaml@2.7.1: {} + + yargs-parser@20.2.9: {} + + yargs-parser@21.1.1: {} + + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yauzl@2.10.0: + dependencies: + buffer-crc32: 0.2.13 + fd-slicer: 1.1.0 + + yocto-queue@0.1.0: {} + + yocto-queue@1.2.1: {} + + zrender@5.6.1: + dependencies: + tslib: 2.3.0 + + zwitch@2.0.4: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..358955c --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,7 @@ +ignoredBuiltDependencies: + - '@nestjs/core' + - '@openapitools/openapi-generator-cli' + - vue-demi + - vue-echarts +onlyBuiltDependencies: + - esbuild diff --git a/public/assets/demo.zip b/public/assets/demo.zip new file mode 100644 index 0000000000000000000000000000000000000000..8dbfaebc5f51f0d6b62b1054d9b2136f3a2ad155 GIT binary patch literal 2255 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 literal 0 HcmV?d00001 diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..11e665e --- /dev/null +++ b/src/App.vue @@ -0,0 +1,10 @@ + + + diff --git a/src/api/apple-card-info.ts b/src/api/apple-card-info.ts new file mode 100644 index 0000000..2f77c2d --- /dev/null +++ b/src/api/apple-card-info.ts @@ -0,0 +1,125 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonStrIdParams } from './common'; +import { handleDownLoadFile } from './utils'; +import type { Pagination } from '@/types/global'; +import type { KamiApiCardInfoJdV1JDAccountCookieCheckRes } from './generated'; + +export interface AppleCardAddRecord { + account: string; + password: string; +} + +export interface AppleCardRecord extends AppleCardAddRecord { + status: 0 | 1 | 2 | 3; // 账号状态 + todayRechargeAmount: number; + todayRechargeCount: number; + todayRechargeDatetime: string; + balance: number; + uploadUser: { + id: string; + username: string; + userNickname: string; + }; +} + +export interface AppleCardParams + extends Partial, + Partial, + Pagination {} + +export interface AppleCardResRecord + extends AppleCardRecord, + CommonStrIdParams {} + +export interface AppleCardRecordWithID + extends AppleCardAddRecord, + CommonStrIdParams {} + +// 获取苹果账号列表 +export function queryAppleCardList(params: AppleCardParams) { + return axios.get>( + '/api/cardInfo/AppleCard/account/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function addAppleCard(data: AppleCardAddRecord) { + return axios.post('/api/cardInfo/AppleCard/account/create', data); +} + +export function updateAppleCard(data: AppleCardRecordWithID) { + return axios.put('/api/cardInfo/AppleCard/account/update', data); +} + +export function deleteAppleCard(params: CommonStrIdParams) { + return axios.delete('/api/cardInfo/AppleCard/account/delete', { params }); +} + +export function batchUploadAppleCardAPI(data: Blob) { + // 上传xlsx + return axios.post('/api/cardInfo/AppleCard/account/batchAdd', data, { + headers: { + 'Content-Type': 'multipart/form-data' + } + }); +} + +// 添加苹果卡 +export async function downloadAppleAccountTemplteAPI() { + const response = await axios.get( + '/api/cardInfo/AppleCard/account/downloadTemplate', + { + responseType: 'blob' + } + ); + handleDownLoadFile(response.data, '苹果账号批量导入模板.xlsx'); +} + +export interface AppleWalletParams extends Pagination { + accountId?: string; + accountName?: string; +} + +export interface AppleWalletListItem { + accountName: string; + orderNo: string; + balanceBeforeItunes: number; + balanceBeforeAutoIncrement: number; + balanceAfterItunes: number; + balanceAfterAutoIncrement: number; + amount: number; + description: string; + created: string; +} + +export function queryAppleWalletList(params: AppleWalletParams) { + return axios.get>( + '/api/cardInfo/AppleCard/account/getWalletList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function continueOrSuspendRechargeAPI(data: { id: string }) { + return axios.put( + '/api/cardInfo/AppleCard/account/status/continueOrRestart', + data + ); +} + +export function detectCookie(data: { cookie: string }) { + return axios.post( + '/api/cardInfo/JDCard/account/checkCookie', + data + ); +} diff --git a/src/api/apple-card-recharge-history.ts b/src/api/apple-card-recharge-history.ts new file mode 100644 index 0000000..fd3dd5d --- /dev/null +++ b/src/api/apple-card-recharge-history.ts @@ -0,0 +1,125 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonResult } from './common'; +import type { Pagination } from '@/types/global'; +import { handleDownLoadFile } from '@/api/utils.ts'; +import { isUndefined } from '@/utils/is'; + +export interface AppleCardRechargeOrderRecord { + id: number; + orderNo: string; + actualAmount: number; // 实际充值金额 + cardAmount: number; + balance: number; // 账户余额 + accountName: string; + attach: string; + notifyStatus: number; + merchantId: string; + createdAt: string; // 订单创建时间,发起充值时间 +} + +export interface AppleCardRechargeOrderParams + extends Partial, + Pagination { + dateRange?: Date[]; + startDate?: Date | null; + endDate?: Date | null; +} + +export interface AppleCardOperationHistoryList { + id: number; + rechargeId: string; + account: string; + operation: string; // 操作 + remark: string; + createdAt: string; // 操作时间 +} + +// 获取充值列表 +export function queryAppleCardRechargeOrderList( + params: AppleCardRechargeOrderParams +) { + if (!isUndefined(params.dateRange)) { + switch (params.dateRange.length) { + case 2: { + params.startDate = params.dateRange[0]; + params.endDate = params.dateRange[1]; + break; + } + case 1: { + params.startDate = params.dateRange[0]; + break; + } + } + } + delete params.dateRange; + return axios.get>( + '/api/cardInfo/appleCard/rechargeOrder/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +// 获取充值操作记录 +export function queryAppleCardOperationHistoryList(params: { + orderNo: string; +}) { + return axios.get>( + '/api/cardInfo/AppleCard/rechargeOrder/getHistoryList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +// 手动回调订单 +export function callBackOrderManualAPI(data: { + orderNo?: string; + rechargeId?: string; +}) { + return axios.post( + '/api/cardInfo/appleCard/rechargeOrder/callbackByManual', + data + ); +} + +export function modityActualAmountAPI(data: { + orderNo: string; + actualAmount: number; + totpCode: string; +}) { + return axios.post( + '/api/cardInfo/appleCard/rechargeOrder/modifyActualAmount', + data + ); +} + +export function modifyStatusToSucceedAPI(data: { orderNo: string }) { + return axios.post('/cardInfo/appleCard/rechargeOrder/setOrderSucceed', data); +} + +export async function downloadDataListApi(params: { orderNo: string }) { + const response = await axios.get( + '/api/cardInfo/appleCard/rechargeOrder/download', + { + responseType: 'blob', + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); + handleDownLoadFile(response.data, 'apple.xlsx'); +} + +// 重置订单状态 +export function resetOrderStatusAPI(data: { orderNo: string }) { + return axios.post('/api/cardInfo/appleCard/rechargeOrder/resetStatus', data); +} diff --git a/src/api/apple-card-steal-settings.ts b/src/api/apple-card-steal-settings.ts new file mode 100644 index 0000000..ce0a2ef --- /dev/null +++ b/src/api/apple-card-steal-settings.ts @@ -0,0 +1,71 @@ +import axios from 'axios'; +import type { CommonPageResult } from './common'; +import qs from 'query-string'; +import type { Pagination } from '@/types/global'; + +// 设置是否开启偷卡 +export function setAppleCardStealSettings(data: { stealStatus: number }) { + return axios.post('/api/cardInfo/appleCard/steal/setStatus', data); +} + +// 获取是否开启偷卡 +export function getAppleCardStealSettings() { + return axios.get<{ stealStatus: number }>( + '/api/cardInfo/appleCard/steal/getStatus' + ); +} + +// 设置单个状态是否启用 +export function setAppleCardStealStatus(data: { id: number; status: number }) { + return axios.put('/api/cardInfo/appleCard/steal/setRuleStatus', data); +} + +export interface AppleCardStealAdd { + name: string; + targetUserId: string; + storageUserId: string; + amount: number; + targetAmount: number; + intervalTime: number; + status: number; +} + +export interface AppleCardStealEdit extends AppleCardStealAdd { + id: number; +} + +export interface AppleCardStealList extends AppleCardStealEdit { + stealTotalAmount: number; + createdAt: string; + updatedAt: string; +} + +export type AppleCardStealListParams = Pagination; + +// 获取偷卡列表 +export function getAppleCardStealList(params: AppleCardStealListParams) { + return axios.get>( + '/api/cardInfo/appleCard/steal/getRuleList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +// 添加偷卡规则 +export function addAppleCardStealRule(data: AppleCardStealAdd) { + return axios.post('/api/cardInfo/appleCard/steal/addRule', data); +} + +// 编辑偷卡规则 +export function editAppleCardStealRule(data: AppleCardStealEdit) { + return axios.put('/api/cardInfo/appleCard/steal/updateRule', data); +} + +// 删除偷卡规则 +export function deleteAppleCardStealRule(params: { id: number }) { + return axios.delete('/api/cardInfo/appleCard/steal/deleteRule', { params }); +} diff --git a/src/api/card-jd-account.ts b/src/api/card-jd-account.ts new file mode 100644 index 0000000..4d14796 --- /dev/null +++ b/src/api/card-jd-account.ts @@ -0,0 +1,117 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonStrIdParams } from './common'; +import type { Pagination } from '@/types/global'; +import { handleDownLoadFile } from './utils'; +import type { KamiApiCardInfoJdV1JDAccountCookieBatchInfo } from './generated'; + +export interface jdCardAddRecord { + name: string; + cookie: string; + status: number; + maxAmountLimit: number; + wsKey?: string; + remark?: string; +} + +export interface JdCardUpdateRecord + extends jdCardAddRecord, + CommonStrIdParams {} + +export interface JdCardRecord extends JdCardUpdateRecord { + status: 0 | 1 | 2 | 3; // 账号状态 + nickname: string; +} + +export interface JDCardParams + extends Partial, + Partial, + Pagination {} + +export function addJDCard(data: jdCardAddRecord) { + return axios.post('/api/cardInfo/JDCard/account/create', data); +} + +export function updateJDCard(data: JdCardUpdateRecord) { + return axios.put('/api/cardInfo/JDCard/account/update', data); +} + +export function deleteJDCard(params: CommonStrIdParams) { + return axios.delete('/api/cardInfo/JDCard/account/delete', { params }); +} + +export function updateJDCardStatus(data: { id: string; status: number }) { + return axios.put('/api/cardInfo/JDCard/account/updateStatus', data); +} + +// 获取苹果账号列表 +export function queryJDCardList(params: JDCardParams) { + return axios.get>( + '/api/cardInfo/JDCard/account/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export interface JDAccountWalletParams extends Pagination { + accountId?: string; +} + +export interface JDAccountListItem { + id: number; + accountId: string; + cookie: string; + orderNo: number; + amount: number; // 在 TypeScript 中,float 类型通常用 number 表示 + remark: string; + operationStatus: string; + createdAt?: Date; // 使用了可选属性和 Date 对象来对应 *gtime.Time + updatedAt?: Date; // 假设 gtime.Time 类似于 JavaScript 的 Date + deletedAt?: Date; // 如果这些字段可以是 null,则需要加上 ? +} + +// 获取账号名歘 +export function queryJDAccountWalletList(params: JDAccountWalletParams) { + return axios.get>( + '/api/cardInfo/JDCard/account/getWalletList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +// 刷新账号当前状态 +export function refreshJDCardStatus(data: CommonStrIdParams) { + return axios.post('/api/cardInfo/JDCard/account/refreshStatus', data); +} + +// 下载苹果cookie数据 +export async function downloadJDCardData() { + const response = await axios.get( + '/api/cardInfo/JDCard/account/downloadTemplate', + { + responseType: 'blob' + } + ); + handleDownLoadFile(response.data, '苹果账号批量导入模板.xlsx'); +} + +export function batchAdd(data: { + list: Array; +}) { + return axios.post('/api/cardInfo/JDCard/account/batchAdd', data); +} + +export async function downloadDataList() { + const response = await axios.get('/api/cardInfo/JDCard/account/download', { + responseType: 'blob' + }); + handleDownLoadFile(response.data, '苹果账号下载数据.xlsx'); +} diff --git a/src/api/card-jd-oder.ts b/src/api/card-jd-oder.ts new file mode 100644 index 0000000..140aa6c --- /dev/null +++ b/src/api/card-jd-oder.ts @@ -0,0 +1,160 @@ +import type { Pagination } from '@/types/global'; +import qs from 'query-string'; +import type { CommonResult } from './common'; +import axios from 'axios'; +import type { + KamiApiCardInfoJdV1JDConfigGetRes, + KamiApiCardInfoJdV1JDConfigSetReq, + KamiApiCardInfoJdV1ListRes +} from './generated'; + +export interface JdCardOrderRecord { + /** + * @description + */ + id: number; + + /** + * @description + */ + orderNo: string; + + /** + * @description + */ + merchantId: string; + + /** + * @description + */ + attach: string; + + /** + * @description + */ + cookie: string; + + /** + * @description + */ + accountId: number; + + /** + * @description + */ + giftCardPwd: string; + + /** + * @description 回调 + */ + notifyUrl: string; + + notifyStatus: number; + + /** + * @description + */ + amount: number; + + /** + * @description 备注 + */ + remark: string; + + /** + * @description 1.兑换成功 2.兑换失败 + */ + status: number; + + /** + * @description + */ + createdAt?: Date; + + /** + * @description + */ + updatedAt?: Date; + + /** + * @description + */ + deletedAt?: Date; +} + +export interface JdCardOrderParams + extends Partial, + Pagination { + accountNickName?: string; + dateRange?: Date[]; +} + +// 获取充值列表 +export function queryJdCardOrderList(params: JdCardOrderParams) { + // if (!isUndefined(params.dateRange)) { + // switch (params.dateRange.length) { + // case 2: { + // params.startDate = params.dateRange[0]; + // params.endDate = params.dateRange[1]; + // break; + // } + // case 1: { + // params.startDate = params.dateRange[0]; + // break; + // } + // } + // } + // if (isArray(params.dateRange)) { + // params.dateRange.forEach(element => { + // params['dateRange[]'] = element; + // }); + // } + // delete params.dateRange; + return axios.get( + '/api/cardInfo/JDCard/order/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj, { arrayFormat: 'bracket' }); + } + } + ); +} + +export interface JDOrderHistoryList { + id: number; + orderNo: string; + accountName: string; + accountId: string; + accountCookie: string; + operationStatus: number; + responseRawData: string; + amount: number; // TypeScript 默认没有浮点数类型,使用 number 表示 + remark: string; + createdAt: string; // 使用 ? 表示该字段是可选的 + updatedAt: string; + deletedAt?: string; +} + +// 获取充值操作记录 +export function queryJDOrderHistoryList(params: { orderNo: string }) { + return axios.get>( + '/api/cardInfo/JDCard/order/getHistoryList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function getJDConfig() { + return axios.get( + '/api/cardInfo/JDCard/config/get' + ); +} + +export function updateJDConfig(data: KamiApiCardInfoJdV1JDConfigSetReq) { + return axios.post('/api/cardInfo/JDCard/config/set', data); +} diff --git a/src/api/card-walmart-account.ts b/src/api/card-walmart-account.ts new file mode 100644 index 0000000..1b2c880 --- /dev/null +++ b/src/api/card-walmart-account.ts @@ -0,0 +1,124 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonStrIdParams } from './common'; +import type { Pagination } from '@/types/global'; +import { handleDownLoadFile } from './utils'; +import type { + KamiApiCardInfoWalmartV1AccountUpdateReq, + KamiApiCardInfoWalmartV1AccountCreateReq, + KamiApiCardInfoWalmartV1AccountCookieBatchInfo, + KamiInternalModelEntityV1CardRedeemAccountHistory, + KamiApiCardInfoWalmartV1AccountCookieCheckRes, + KamiApiCardInfoWalmartV1AccountListRecord +} from './generated'; + +export interface walmartCardAddRecord { + name: string; + cookie: string; + status: number; + maxAmountLimit: number; + wsKey?: string; + remark?: string; + createdUserName?: string; +} + +export interface walmartCardUpdateRecord + extends walmartCardAddRecord, + CommonStrIdParams {} + +export interface walmartCardRecord extends walmartCardUpdateRecord { + status: 0 | 1 | 2 | 3; // 账号状态 + nickname: string; +} + +export interface WalmartCardParams + extends Partial, + Partial, + Pagination { + groupId?: number; +} + +export function addWalmartCard(data: KamiApiCardInfoWalmartV1AccountCreateReq) { + return axios.post('/api/cardInfo/walmart/account/create', data); +} + +export function updateWalmartCard( + data: KamiApiCardInfoWalmartV1AccountUpdateReq +) { + return axios.put('/api/cardInfo/walmart/account/update', data); +} + +export function deleteWalmartCard(params: CommonStrIdParams) { + return axios.delete('/api/cardInfo/walmart/account/delete', { params }); +} + +export function updateWalmartCardStatus(data: { id: string; status: number }) { + return axios.put('/api/cardInfo/walmart/account/updateStatus', data); +} + +// 获取苹果账号列表 +export function queryWalmartCardList(params: WalmartCardParams) { + return axios.get>( + '/api/cardInfo/walmart/account/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export interface WalmartAccountWalletParams extends Pagination { + accountId?: string; +} + +// 获取账号名歘 +export function queryWalmartAccountWalletList( + params: WalmartAccountWalletParams +) { + return axios.get< + CommonPageResult + >('/api/cardInfo/walmart/account/getWalletList', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} + +// 刷新账号当前状态 +export function refreshWalmartCardStatus(data: CommonStrIdParams) { + return axios.post('/api/cardInfo/walmart/account/refreshStatus', data); +} + +// 下载苹果cookie数据 +export async function downloadWalmartCardData() { + const response = await axios.get( + '/api/cardInfo/walmart/account/downloadTemplate', + { + responseType: 'blob' + } + ); + handleDownLoadFile(response.data, '沃尔玛账号批量导入模板.xlsx'); +} + +export function batchAdd(data: { + list: Array; +}) { + return axios.post('/api/cardInfo/walmart/account/batchAdd', data); +} + +export async function downloadDataList() { + const response = await axios.get('/api/cardInfo/walmart/account/download', { + responseType: 'blob' + }); + handleDownLoadFile(response.data, '沃尔玛账号下载数据.xlsx'); +} + +export function detectCookie(data: { cookie: string }) { + return axios.post( + '/api/cardInfo/walmart/account/checkCookie', + data + ); +} diff --git a/src/api/card-walmart-order.ts b/src/api/card-walmart-order.ts new file mode 100644 index 0000000..310134f --- /dev/null +++ b/src/api/card-walmart-order.ts @@ -0,0 +1,123 @@ +import type { Pagination } from '@/types/global'; +import qs from 'query-string'; +import type { CommonResult } from './common'; +import axios from 'axios'; +import type { + KamiApiCardInfoWalmartV1RedeemConfigGetRes, + KamiApiCardInfoWalmartV1ListRes, + KamiInternalModelEntityV1CardRedeemOrderHistory +} from './generated'; + +export interface walmartCardOrderRecord { + /** + * @description + */ + id: number; + + /** + * @description + */ + orderNo: string; + + /** + * @description + */ + merchantId: string; + + /** + * @description + */ + attach: string; + + /** + * @description + */ + cookie: string; + + /** + * @description + */ + accountId: number; + + /** + * @description + */ + giftCardPwd: string; + + /** + * @description 回调 + */ + notifyUrl: string; + + notifyStatus: number; + + /** + * @description + */ + amount: number; + + /** + * @description 备注 + */ + remark: string; + + /** + * @description 1.兑换成功 2.兑换失败 + */ + status: number; + + /** + * @description + */ + createdAt?: Date; + + /** + * @description + */ + updatedAt?: Date; + + /** + * @description + */ + deletedAt?: Date; +} + +export interface walmartCardOrderParams + extends Partial, + Pagination { + dateRange?: string[]; + endDate?: Date | null; + accountNickName?: string; + groupId?: number | null; +} + +// 获取充值列表 +export function queryWalmartCardOrderList(params: walmartCardOrderParams) { + return axios.get( + '/api/cardInfo/walmart/order/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj, { arrayFormat: 'bracket' }); + } + } + ); +} + +// 获取充值操作记录 +export function queryWalmartOrderHistoryList(params: { orderNo: string }) { + return axios.get< + CommonResult + >('/api/cardInfo/walmart/order/getHistoryList', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} + +export function getWalmartConfig() { + return axios.get>( + '/api/cardInfo/walmart/config/get' + ); +} diff --git a/src/api/common.ts b/src/api/common.ts new file mode 100644 index 0000000..4d94bb6 --- /dev/null +++ b/src/api/common.ts @@ -0,0 +1,15 @@ +export interface CommonResult { + list: T[]; +} + +export interface CommonPageResult extends CommonResult { + total: number; +} + +export interface CommonNumIdParams { + id: number; +} + +export interface CommonStrIdParams { + id: string; +} diff --git a/src/api/dashboard.ts b/src/api/dashboard.ts new file mode 100644 index 0000000..1ca34cf --- /dev/null +++ b/src/api/dashboard.ts @@ -0,0 +1,22 @@ +import axios from 'axios'; +import type { TableData } from '@arco-design/web-vue/es/table/interface'; + +export interface ContentDataRecord { + x: string; + y: number; +} + +export function queryContentData() { + return axios.get('/api/api/content-data'); +} + +export interface PopularRecord { + key: number; + clickNumber: string; + title: string; + increases: number; +} + +export function queryPopularList(params: { type: string }) { + return axios.get('/api/api/popular/list', { params }); +} diff --git a/src/api/generated/.gitignore b/src/api/generated/.gitignore new file mode 100644 index 0000000..149b576 --- /dev/null +++ b/src/api/generated/.gitignore @@ -0,0 +1,4 @@ +wwwroot/*.js +node_modules +typings +dist diff --git a/src/api/generated/.npmignore b/src/api/generated/.npmignore new file mode 100644 index 0000000..999d88d --- /dev/null +++ b/src/api/generated/.npmignore @@ -0,0 +1 @@ +# empty npmignore to ensure all required files (e.g., in the dist folder) are published by npm \ No newline at end of file diff --git a/src/api/generated/.openapi-generator-ignore b/src/api/generated/.openapi-generator-ignore new file mode 100644 index 0000000..7484ee5 --- /dev/null +++ b/src/api/generated/.openapi-generator-ignore @@ -0,0 +1,23 @@ +# OpenAPI Generator Ignore +# Generated by openapi-generator https://github.com/openapitools/openapi-generator + +# Use this file to prevent files from being overwritten by the generator. +# The patterns follow closely to .gitignore or .dockerignore. + +# As an example, the C# client generator defines ApiClient.cs. +# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line: +#ApiClient.cs + +# You can match any string of characters against a directory, file or extension with a single asterisk (*): +#foo/*/qux +# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux + +# You can recursively match patterns against a directory, file or extension with a double asterisk (**): +#foo/**/qux +# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux + +# You can also negate patterns with an exclamation (!). +# For example, you can ignore all files in a docs folder with the file extension .md: +#docs/*.md +# Then explicitly reverse the ignore rule for a single file: +#!docs/README.md diff --git a/src/api/generated/.openapi-generator/FILES b/src/api/generated/.openapi-generator/FILES new file mode 100644 index 0000000..3f88a55 --- /dev/null +++ b/src/api/generated/.openapi-generator/FILES @@ -0,0 +1,343 @@ +.gitignore +.npmignore +api.ts +apis/ck-api.ts +apis/default-api.ts +apis/totpapi.ts +base.ts +common.ts +configuration.ts +git_push.sh +index.ts +models/index.ts +models/kami-api-card-info-apple-v1-apple-card-list-record-upload-user.ts +models/kami-api-card-info-apple-v1-apple-card-list-record.ts +models/kami-api-card-info-apple-v1-call-back-order-manual-req.ts +models/kami-api-card-info-apple-v1-card-history-info-list-req.ts +models/kami-api-card-info-apple-v1-card-history-info-list-res.ts +models/kami-api-card-info-apple-v1-card-history-model.ts +models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-req.ts +models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-res.ts +models/kami-api-card-info-apple-v1-card-info-create-req.ts +models/kami-api-card-info-apple-v1-card-info-delete-req.ts +models/kami-api-card-info-apple-v1-card-info-list-req.ts +models/kami-api-card-info-apple-v1-card-info-list-res.ts +models/kami-api-card-info-apple-v1-card-info-suspend-or-continue-req.ts +models/kami-api-card-info-apple-v1-card-info-update-req.ts +models/kami-api-card-info-apple-v1-card-info-update-status-req.ts +models/kami-api-card-info-apple-v1-config-get-res.ts +models/kami-api-card-info-apple-v1-config-set-req.ts +models/kami-api-card-info-apple-v1-recharge-duplicated-card-pass-req.ts +models/kami-api-card-info-apple-v1-recharge-handler-req.ts +models/kami-api-card-info-apple-v1-recharge-handler-res.ts +models/kami-api-card-info-apple-v1-recharge-history-list-req.ts +models/kami-api-card-info-apple-v1-recharge-history-list-res.ts +models/kami-api-card-info-apple-v1-recharge-itunes-callback-req.ts +models/kami-api-card-info-apple-v1-recharge-list-download-req.ts +models/kami-api-card-info-apple-v1-recharge-list-req.ts +models/kami-api-card-info-apple-v1-recharge-list-res.ts +models/kami-api-card-info-apple-v1-recharge-order-modify-actual-amount-req.ts +models/kami-api-card-info-apple-v1-recharge-order-reset-status-req.ts +models/kami-api-card-info-apple-v1-recharge-steal-rule-add-req.ts +models/kami-api-card-info-apple-v1-recharge-steal-rule-delete-req.ts +models/kami-api-card-info-apple-v1-recharge-steal-rule-list-req.ts +models/kami-api-card-info-apple-v1-recharge-steal-rule-list-res.ts +models/kami-api-card-info-apple-v1-recharge-steal-rule-status-update-req.ts +models/kami-api-card-info-apple-v1-recharge-steal-rule-update-req.ts +models/kami-api-card-info-apple-v1-recharge-steal-setting-get-res.ts +models/kami-api-card-info-apple-v1-recharge-steal-setting-req.ts +models/kami-api-card-info-apple-v1-recharge-submit-query-req.ts +models/kami-api-card-info-apple-v1-recharge-submit-query-res.ts +models/kami-api-card-info-apple-v1-recharge-submit-req.ts +models/kami-api-card-info-apple-v1-recharge-submit-res.ts +models/kami-api-card-info-ctrip-v1-account-cookie-batch-add-req.ts +models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-req.ts +models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-res.ts +models/kami-api-card-info-ctrip-v1-account-cookie-batch-info.ts +models/kami-api-card-info-ctrip-v1-account-cookie-check-req.ts +models/kami-api-card-info-ctrip-v1-account-cookie-check-res.ts +models/kami-api-card-info-ctrip-v1-account-create-req.ts +models/kami-api-card-info-ctrip-v1-account-delete-req.ts +models/kami-api-card-info-ctrip-v1-account-list-record.ts +models/kami-api-card-info-ctrip-v1-account-list-req.ts +models/kami-api-card-info-ctrip-v1-account-list-res.ts +models/kami-api-card-info-ctrip-v1-account-refresh-status-req.ts +models/kami-api-card-info-ctrip-v1-account-update-req.ts +models/kami-api-card-info-ctrip-v1-account-update-status-req.ts +models/kami-api-card-info-ctrip-v1-account-wallet-list-req.ts +models/kami-api-card-info-ctrip-v1-account-wallet-list-res.ts +models/kami-api-card-info-ctrip-v1-list-req.ts +models/kami-api-card-info-ctrip-v1-list-res.ts +models/kami-api-card-info-ctrip-v1-order-callback-req.ts +models/kami-api-card-info-ctrip-v1-order-history-req.ts +models/kami-api-card-info-ctrip-v1-order-history-res.ts +models/kami-api-card-info-ctrip-v1-redeem-config-get-res.ts +models/kami-api-card-info-ctrip-v1-redeem-config-set-req.ts +models/kami-api-card-info-ctrip-v1-submit-req.ts +models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-add-req.ts +models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-req.ts +models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-res.ts +models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-info.ts +models/kami-api-card-info-jd-v1-jdaccount-cookie-check-req.ts +models/kami-api-card-info-jd-v1-jdaccount-cookie-check-res.ts +models/kami-api-card-info-jd-v1-jdaccount-create-req.ts +models/kami-api-card-info-jd-v1-jdaccount-delete-req.ts +models/kami-api-card-info-jd-v1-jdaccount-list-record.ts +models/kami-api-card-info-jd-v1-jdaccount-list-req.ts +models/kami-api-card-info-jd-v1-jdaccount-list-res.ts +models/kami-api-card-info-jd-v1-jdaccount-refresh-status-req.ts +models/kami-api-card-info-jd-v1-jdaccount-update-req.ts +models/kami-api-card-info-jd-v1-jdaccount-update-status-req.ts +models/kami-api-card-info-jd-v1-jdaccount-wallet-list-req.ts +models/kami-api-card-info-jd-v1-jdaccount-wallet-list-res.ts +models/kami-api-card-info-jd-v1-jdconfig-get-res.ts +models/kami-api-card-info-jd-v1-jdconfig-set-req.ts +models/kami-api-card-info-jd-v1-list-req.ts +models/kami-api-card-info-jd-v1-list-res.ts +models/kami-api-card-info-jd-v1-order-callback-req.ts +models/kami-api-card-info-jd-v1-order-history-req.ts +models/kami-api-card-info-jd-v1-order-history-res.ts +models/kami-api-card-info-jd-v1-order-summary-list-req.ts +models/kami-api-card-info-jd-v1-order-summary-list-res.ts +models/kami-api-card-info-jd-v1-order-summary-record.ts +models/kami-api-card-info-jd-v1-submit-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-add-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-res.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-res.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-create-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-delete-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-list-record.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-list-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-list-res.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-refresh-status-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-update-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-update-status-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-req.ts +models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-res.ts +models/kami-api-card-info-tmall-game-v1-call-back-order-manual-req.ts +models/kami-api-card-info-tmall-game-v1-shop-order-record.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-callback-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-get-key-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-create-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-delete-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-tmall-auth-status-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-account-toggle-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-agiso-callback-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-category.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-modify-status-succeed-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-stats-req.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-stats-res.ts +models/kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record.ts +models/kami-api-card-info-tmall-game-v1-tmall-list-record-account-info.ts +models/kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info.ts +models/kami-api-card-info-tmall-game-v1-tmall-list-record.ts +models/kami-api-card-info-walmart-v1-account-cookie-batch-add-req.ts +models/kami-api-card-info-walmart-v1-account-cookie-batch-check-req.ts +models/kami-api-card-info-walmart-v1-account-cookie-batch-check-res.ts +models/kami-api-card-info-walmart-v1-account-cookie-batch-info.ts +models/kami-api-card-info-walmart-v1-account-cookie-check-req.ts +models/kami-api-card-info-walmart-v1-account-cookie-check-res.ts +models/kami-api-card-info-walmart-v1-account-create-req.ts +models/kami-api-card-info-walmart-v1-account-daily-summary-req.ts +models/kami-api-card-info-walmart-v1-account-daily-summary-res.ts +models/kami-api-card-info-walmart-v1-account-delete-req.ts +models/kami-api-card-info-walmart-v1-account-info.ts +models/kami-api-card-info-walmart-v1-account-list-record.ts +models/kami-api-card-info-walmart-v1-account-list-req.ts +models/kami-api-card-info-walmart-v1-account-list-res.ts +models/kami-api-card-info-walmart-v1-account-load-req.ts +models/kami-api-card-info-walmart-v1-account-refresh-status-req.ts +models/kami-api-card-info-walmart-v1-account-status-detect-req.ts +models/kami-api-card-info-walmart-v1-account-status-detect-res.ts +models/kami-api-card-info-walmart-v1-account-summary-download-req.ts +models/kami-api-card-info-walmart-v1-account-update-req.ts +models/kami-api-card-info-walmart-v1-account-update-status-req.ts +models/kami-api-card-info-walmart-v1-account-wallet-list-req.ts +models/kami-api-card-info-walmart-v1-account-wallet-list-res.ts +models/kami-api-card-info-walmart-v1-card-redeem-account-summary.ts +models/kami-api-card-info-walmart-v1-group-add-req.ts +models/kami-api-card-info-walmart-v1-group-all-list-res.ts +models/kami-api-card-info-walmart-v1-group-delete-req.ts +models/kami-api-card-info-walmart-v1-group-list-req.ts +models/kami-api-card-info-walmart-v1-group-list-res.ts +models/kami-api-card-info-walmart-v1-group-stat-req.ts +models/kami-api-card-info-walmart-v1-group-stat-res.ts +models/kami-api-card-info-walmart-v1-group-update-req.ts +models/kami-api-card-info-walmart-v1-list-req.ts +models/kami-api-card-info-walmart-v1-list-res.ts +models/kami-api-card-info-walmart-v1-order-callback-req.ts +models/kami-api-card-info-walmart-v1-order-history-req.ts +models/kami-api-card-info-walmart-v1-order-history-res.ts +models/kami-api-card-info-walmart-v1-order-status-reset-req.ts +models/kami-api-card-info-walmart-v1-order-summary-list-req.ts +models/kami-api-card-info-walmart-v1-order-summary-list-res.ts +models/kami-api-card-info-walmart-v1-order-summary-record.ts +models/kami-api-card-info-walmart-v1-redeem-config-get-res.ts +models/kami-api-card-info-walmart-v1-redeem-config-set-req.ts +models/kami-api-card-info-walmart-v1-submit-req.ts +models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account.ts +models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity.ts +models/kami-api-card-redeem-jd-v1-account-add-req.ts +models/kami-api-card-redeem-jd-v1-account-delete-req.ts +models/kami-api-card-redeem-jd-v1-account-get-req.ts +models/kami-api-card-redeem-jd-v1-account-get-res.ts +models/kami-api-card-redeem-jd-v1-account-list-req.ts +models/kami-api-card-redeem-jd-v1-account-list-res.ts +models/kami-api-card-redeem-jd-v1-account-status-req.ts +models/kami-api-card-redeem-jd-v1-account-update-req.ts +models/kami-api-card-redeem-jd-v1-cookie-info.ts +models/kami-api-card-redeem-jd-v1-order-list-req.ts +models/kami-api-card-redeem-jd-v1-order-list-res.ts +models/kami-api-card-redeem-jd-v1-order-list-schema.ts +models/kami-api-card-redeem-jd-v1-place-order-req.ts +models/kami-api-card-redeem-jd-v1-place-order-res.ts +models/kami-api-channel-v2-entrance-create-req.ts +models/kami-api-channel-v2-entrance-delete-req.ts +models/kami-api-channel-v2-entrance-list-req.ts +models/kami-api-channel-v2-entrance-list-res.ts +models/kami-api-channel-v2-entrance-params.ts +models/kami-api-channel-v2-entrance-update-req.ts +models/kami-api-merchant-v1-merchant-all-list-res.ts +models/kami-api-merchant-v1-merchant-config-add-req.ts +models/kami-api-merchant-v1-merchant-config-detail-req.ts +models/kami-api-merchant-v1-merchant-config-detail-res.ts +models/kami-api-merchant-v1-merchant-config-list-req.ts +models/kami-api-merchant-v1-merchant-config-list-res.ts +models/kami-api-merchant-v1-merchant-config-status-req.ts +models/kami-api-merchant-v1-merchant-config-update-req.ts +models/kami-api-merchant-v1-merchant-deploy-add-req.ts +models/kami-api-merchant-v1-merchant-deploy-delete-req.ts +models/kami-api-merchant-v1-merchant-deploy-get-detail-req.ts +models/kami-api-merchant-v1-merchant-deploy-get-detail-res.ts +models/kami-api-merchant-v1-merchant-deploy-list-req.ts +models/kami-api-merchant-v1-merchant-deploy-list-res.ts +models/kami-api-merchant-v1-merchant-deploy-record.ts +models/kami-api-merchant-v1-merchant-deploy-update-req.ts +models/kami-api-merchant-v1-merchant-hidden-config-entity.ts +models/kami-api-merchant-v1-merchant-info-record.ts +models/kami-api-merchant-v1-order-query-record.ts +models/kami-api-merchant-v1-order-query-req.ts +models/kami-api-merchant-v1-order-query-res.ts +models/kami-api-merchant-v1-platform-rate-record.ts +models/kami-api-merchant-v1-steal-create-req.ts +models/kami-api-merchant-v1-steal-delete-req.ts +models/kami-api-merchant-v1-steal-list-req.ts +models/kami-api-merchant-v1-steal-list-res.ts +models/kami-api-merchant-v1-steal-record-list-req.ts +models/kami-api-merchant-v1-steal-record-list-res.ts +models/kami-api-merchant-v1-steal-status-get-res.ts +models/kami-api-merchant-v1-steal-status-set-req.ts +models/kami-api-merchant-v1-steal-update-req.ts +models/kami-api-merchant-v1-steal-update-status-req.ts +models/kami-api-monitor-v1-health-check-res.ts +models/kami-api-order-v1-order-form-delete-req.ts +models/kami-api-order-v1-order-form-list-req.ts +models/kami-api-order-v1-order-form-update-req.ts +models/kami-api-order-v1-order-log-delete-req.ts +models/kami-api-order-v1-order-log-list-req.ts +models/kami-api-order-v1-order-summary-get-list-req.ts +models/kami-api-order-v1-order-summary-get-list-res.ts +models/kami-api-order-v1-order-summary-record.ts +models/kami-api-restriction-v1-block-order-req.ts +models/kami-api-restriction-v1-check-ipallowed-req.ts +models/kami-api-restriction-v1-check-ipallowed-res.ts +models/kami-api-restriction-v1-query-all-province-res.ts +models/kami-api-restriction-v1-user-info-collection-req.ts +models/kami-api-road-pool-v1-road-pool-simple-info.ts +models/kami-api-road-pool-v1-simple-all-get-road-res.ts +models/kami-api-road-v1-road-simple-info.ts +models/kami-api-road-v1-simple-all-get-road-res.ts +models/kami-api-sys-payment-v1-payment-summary-list-req.ts +models/kami-api-sys-payment-v1-payment-summary-list-res.ts +models/kami-api-sys-payment-v1-payment-summary-record.ts +models/kami-api-sys-payment-v1-sys-payment-add-req.ts +models/kami-api-sys-payment-v1-sys-payment-get-one-req.ts +models/kami-api-sys-payment-v1-sys-payment-get-one-res.ts +models/kami-api-sys-payment-v1-sys-payment-get-req.ts +models/kami-api-sys-payment-v1-sys-payment-get-res.ts +models/kami-api-sys-payment-v1-sys-payment-records-get-req.ts +models/kami-api-sys-payment-v1-sys-payment-records-get-res.ts +models/kami-api-sys-payment-v1-sys-payment-records-get-statistics-res.ts +models/kami-api-sys-user-login-v1-user-login-req.ts +models/kami-api-sys-user-login-v1-user-login-res.ts +models/kami-api-sys-user-login-v1-user-menus.ts +models/kami-api-sys-user-v1-channel-type.ts +models/kami-api-sys-user-v1-login-user-record.ts +models/kami-api-sys-user-v1-sys-user-record.ts +models/kami-api-sys-user-v1-sys-user-role-dept-res.ts +models/kami-api-sys-user-v1-sys-user-simple-res.ts +models/kami-api-sys-user-v1-totp-image-get-req.ts +models/kami-api-sys-user-v1-totp-image-get-res.ts +models/kami-api-sys-user-v1-totp-reset-req.ts +models/kami-api-sys-user-v1-totp-reset-res.ts +models/kami-api-sys-user-v1-totp-set-req.ts +models/kami-api-sys-user-v1-totp-status-get-res.ts +models/kami-api-sys-user-v1-user-add-req.ts +models/kami-api-sys-user-v1-user-change-pwd-req.ts +models/kami-api-sys-user-v1-user-delete-req.ts +models/kami-api-sys-user-v1-user-edit-req.ts +models/kami-api-sys-user-v1-user-forbidden-by-id-req.ts +models/kami-api-sys-user-v1-user-get-all-simple-user.ts +models/kami-api-sys-user-v1-user-get-all-user-res.ts +models/kami-api-sys-user-v1-user-get-by-ids-req.ts +models/kami-api-sys-user-v1-user-get-by-ids-res.ts +models/kami-api-sys-user-v1-user-get-edit-req.ts +models/kami-api-sys-user-v1-user-get-edit-res.ts +models/kami-api-sys-user-v1-user-get-params-res.ts +models/kami-api-sys-user-v1-user-login-out-req.ts +models/kami-api-sys-user-v1-user-menus-get-req.ts +models/kami-api-sys-user-v1-user-menus-get-res.ts +models/kami-api-sys-user-v1-user-search-req.ts +models/kami-api-sys-user-v1-user-search-res.ts +models/kami-api-sys-user-v1-user-status-req.ts +models/kami-api-sys-user-v1-user-suspend-or-continue-req.ts +models/kami-api-user-center-v1-get-user-info-res.ts +models/kami-api-validation-v1-get-captcha-res.ts +models/kami-internal-model-entity-v1-card-apple-hidden-settings.ts +models/kami-internal-model-entity-v1-card-apple-history-info.ts +models/kami-internal-model-entity-v1-card-apple-recharge-info.ts +models/kami-internal-model-entity-v1-card-redeem-account-group.ts +models/kami-internal-model-entity-v1-card-redeem-account-history.ts +models/kami-internal-model-entity-v1-card-redeem-cookie-info.ts +models/kami-internal-model-entity-v1-card-redeem-order-history.ts +models/kami-internal-model-entity-v1-card-redeem-order-info.ts +models/kami-internal-model-entity-v1-merchant-hidden-record.ts +models/kami-internal-model-entity-v1-merchant-info.ts +models/kami-internal-model-entity-v1-recharge-tmall-account.ts +models/kami-internal-model-entity-v1-recharge-tmall-order-history.ts +models/kami-internal-model-entity-v1-recharge-tmall-order.ts +models/kami-internal-model-entity-v1-recharge-tmall-shop-history.ts +models/kami-internal-model-entity-v1-recharge-tmall-shop.ts +models/kami-internal-model-entity-v1-sys-role.ts +models/kami-internal-model-entity-v1-sys-user-payment-records.ts +models/kami-internal-model-entity-v1-sys-user-payment.ts +models/kami-internal-model-entity-v1-sys-user.ts +models/kami-internal-model-user-info.ts +models/kami-internal-system-v2-model-entity-v2-road-info.ts diff --git a/src/api/generated/.openapi-generator/VERSION b/src/api/generated/.openapi-generator/VERSION new file mode 100644 index 0000000..758bb9c --- /dev/null +++ b/src/api/generated/.openapi-generator/VERSION @@ -0,0 +1 @@ +7.10.0 diff --git a/src/api/generated/api.ts b/src/api/generated/api.ts new file mode 100644 index 0000000..888eba1 --- /dev/null +++ b/src/api/generated/api.ts @@ -0,0 +1,17 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +export * from './apis/default-api'; +export * from './apis/ck-api'; +export * from './apis/totpapi'; diff --git a/src/api/generated/apis/ck-api.ts b/src/api/generated/apis/ck-api.ts new file mode 100644 index 0000000..85bf395 --- /dev/null +++ b/src/api/generated/apis/ck-api.ts @@ -0,0 +1,1198 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import type { Configuration } from '../configuration'; +import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; +import globalAxios from 'axios'; +// Some imports not used depending on template conditions +// @ts-ignore +import { + DUMMY_BASE_URL, + assertParamExists, + setApiKeyToObject, + setBasicAuthToObject, + setBearerAuthToObject, + setOAuthToObject, + setSearchParams, + serializeDataIfNeeded, + toPathString, + createRequestFunction +} from '../common'; +// @ts-ignore +import { + BASE_PATH, + COLLECTION_FORMATS, + type RequestArgs, + BaseAPI, + RequiredError, + operationServerMap +} from '../base'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1AccountAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1AccountGetRes } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1AccountListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1AccountStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1AccountUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1OrderListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1PlaceOrderReq } from '../models'; +// @ts-ignore +import type { KamiApiCardRedeemJdV1PlaceOrderRes } from '../models'; +/** + * CkApi - axios parameter creator + * @export + */ +export const CkApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * + * @summary 添加京东ck + * @param {KamiApiCardRedeemJdV1AccountAddReq} [kamiApiCardRedeemJdV1AccountAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountAddPost: async ( + kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cookieInfo/jd/account/add`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardRedeemJdV1AccountAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountDeleteDelete: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCookieInfoJdAccountDeleteDelete', 'id', id); + const localVarPath = `/api/cookieInfo/jd/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountGetGet: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCookieInfoJdAccountGetGet', 'id', id); + const localVarPath = `/api/cookieInfo/jd/account/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东ck列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdAccountListGetPageSizeEnum} pageSize 页码 + * @param {ApiCookieInfoJdAccountListGetStatusEnum} [status] 状态 + * @param {string} [name] 昵称 + * @param {string} [cookie] ck + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountListGet: async ( + current: number, + pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum, + status?: ApiCookieInfoJdAccountListGetStatusEnum, + name?: string, + cookie?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCookieInfoJdAccountListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCookieInfoJdAccountListGet', 'pageSize', pageSize); + const localVarPath = `/api/cookieInfo/jd/account/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (status !== undefined) { + localVarQueryParameter['status'] = status; + } + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + if (cookie !== undefined) { + localVarQueryParameter['cookie'] = cookie; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改京东ck状态 + * @param {KamiApiCardRedeemJdV1AccountStatusReq} [kamiApiCardRedeemJdV1AccountStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountStatusPut: async ( + kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cookieInfo/jd/account/status`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardRedeemJdV1AccountStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 更新京东ck + * @param {KamiApiCardRedeemJdV1AccountUpdateReq} [kamiApiCardRedeemJdV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountUpdatePut: async ( + kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cookieInfo/jd/account/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardRedeemJdV1AccountUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取订单列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdOrderListGetPageSizeEnum} pageSize 页码 + * @param {number} [cookieId] cookieId + * @param {string} [cookie] cookie + * @param {ApiCookieInfoJdOrderListGetStatusEnum} [status] 状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdOrderListGet: async ( + current: number, + pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum, + cookieId?: number, + cookie?: string, + status?: ApiCookieInfoJdOrderListGetStatusEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCookieInfoJdOrderListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCookieInfoJdOrderListGet', 'pageSize', pageSize); + const localVarPath = `/api/cookieInfo/jd/order/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (cookieId !== undefined) { + localVarQueryParameter['cookieId'] = cookieId; + } + + if (cookie !== undefined) { + localVarQueryParameter['cookie'] = cookie; + } + + if (status !== undefined) { + localVarQueryParameter['status'] = status; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下单 + * @param {KamiApiCardRedeemJdV1PlaceOrderReq} [kamiApiCardRedeemJdV1PlaceOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdOrderPlaceOrderPost: async ( + kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cookieInfo/jd/order/placeOrder`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardRedeemJdV1PlaceOrderReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + } + }; +}; + +/** + * CkApi - functional programming interface + * @export + */ +export const CkApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = CkApiAxiosParamCreator(configuration); + return { + /** + * + * @summary 添加京东ck + * @param {KamiApiCardRedeemJdV1AccountAddReq} [kamiApiCardRedeemJdV1AccountAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdAccountAddPost( + kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdAccountAddPost( + kamiApiCardRedeemJdV1AccountAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdAccountAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdAccountDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdAccountDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdAccountGetGet( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdAccountGetGet( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdAccountGetGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东ck列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdAccountListGetPageSizeEnum} pageSize 页码 + * @param {ApiCookieInfoJdAccountListGetStatusEnum} [status] 状态 + * @param {string} [name] 昵称 + * @param {string} [cookie] ck + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdAccountListGet( + current: number, + pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum, + status?: ApiCookieInfoJdAccountListGetStatusEnum, + name?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdAccountListGet( + current, + pageSize, + status, + name, + cookie, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdAccountListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改京东ck状态 + * @param {KamiApiCardRedeemJdV1AccountStatusReq} [kamiApiCardRedeemJdV1AccountStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdAccountStatusPut( + kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdAccountStatusPut( + kamiApiCardRedeemJdV1AccountStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdAccountStatusPut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 更新京东ck + * @param {KamiApiCardRedeemJdV1AccountUpdateReq} [kamiApiCardRedeemJdV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdAccountUpdatePut( + kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdAccountUpdatePut( + kamiApiCardRedeemJdV1AccountUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdAccountUpdatePut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取订单列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdOrderListGetPageSizeEnum} pageSize 页码 + * @param {number} [cookieId] cookieId + * @param {string} [cookie] cookie + * @param {ApiCookieInfoJdOrderListGetStatusEnum} [status] 状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdOrderListGet( + current: number, + pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum, + cookieId?: number, + cookie?: string, + status?: ApiCookieInfoJdOrderListGetStatusEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdOrderListGet( + current, + pageSize, + cookieId, + cookie, + status, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdOrderListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下单 + * @param {KamiApiCardRedeemJdV1PlaceOrderReq} [kamiApiCardRedeemJdV1PlaceOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCookieInfoJdOrderPlaceOrderPost( + kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCookieInfoJdOrderPlaceOrderPost( + kamiApiCardRedeemJdV1PlaceOrderReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['CkApi.apiCookieInfoJdOrderPlaceOrderPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + } + }; +}; + +/** + * CkApi - factory interface + * @export + */ +export const CkApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance +) { + const localVarFp = CkApiFp(configuration); + return { + /** + * + * @summary 添加京东ck + * @param {KamiApiCardRedeemJdV1AccountAddReq} [kamiApiCardRedeemJdV1AccountAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountAddPost( + kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdAccountAddPost( + kamiApiCardRedeemJdV1AccountAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountGetGet( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdAccountGetGet(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东ck列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdAccountListGetPageSizeEnum} pageSize 页码 + * @param {ApiCookieInfoJdAccountListGetStatusEnum} [status] 状态 + * @param {string} [name] 昵称 + * @param {string} [cookie] ck + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountListGet( + current: number, + pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum, + status?: ApiCookieInfoJdAccountListGetStatusEnum, + name?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdAccountListGet( + current, + pageSize, + status, + name, + cookie, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改京东ck状态 + * @param {KamiApiCardRedeemJdV1AccountStatusReq} [kamiApiCardRedeemJdV1AccountStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountStatusPut( + kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdAccountStatusPut( + kamiApiCardRedeemJdV1AccountStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 更新京东ck + * @param {KamiApiCardRedeemJdV1AccountUpdateReq} [kamiApiCardRedeemJdV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdAccountUpdatePut( + kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdAccountUpdatePut( + kamiApiCardRedeemJdV1AccountUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取订单列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdOrderListGetPageSizeEnum} pageSize 页码 + * @param {number} [cookieId] cookieId + * @param {string} [cookie] cookie + * @param {ApiCookieInfoJdOrderListGetStatusEnum} [status] 状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdOrderListGet( + current: number, + pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum, + cookieId?: number, + cookie?: string, + status?: ApiCookieInfoJdOrderListGetStatusEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdOrderListGet( + current, + pageSize, + cookieId, + cookie, + status, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下单 + * @param {KamiApiCardRedeemJdV1PlaceOrderReq} [kamiApiCardRedeemJdV1PlaceOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCookieInfoJdOrderPlaceOrderPost( + kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCookieInfoJdOrderPlaceOrderPost( + kamiApiCardRedeemJdV1PlaceOrderReq, + options + ) + .then(request => request(axios, basePath)); + } + }; +}; + +/** + * CkApi - object-oriented interface + * @export + * @class CkApi + * @extends {BaseAPI} + */ +export class CkApi extends BaseAPI { + /** + * + * @summary 添加京东ck + * @param {KamiApiCardRedeemJdV1AccountAddReq} [kamiApiCardRedeemJdV1AccountAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdAccountAddPost( + kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdAccountAddPost( + kamiApiCardRedeemJdV1AccountAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdAccountDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东ck + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdAccountGetGet( + id: number, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdAccountGetGet(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东ck列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdAccountListGetPageSizeEnum} pageSize 页码 + * @param {ApiCookieInfoJdAccountListGetStatusEnum} [status] 状态 + * @param {string} [name] 昵称 + * @param {string} [cookie] ck + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdAccountListGet( + current: number, + pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum, + status?: ApiCookieInfoJdAccountListGetStatusEnum, + name?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdAccountListGet( + current, + pageSize, + status, + name, + cookie, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改京东ck状态 + * @param {KamiApiCardRedeemJdV1AccountStatusReq} [kamiApiCardRedeemJdV1AccountStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdAccountStatusPut( + kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdAccountStatusPut( + kamiApiCardRedeemJdV1AccountStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 更新京东ck + * @param {KamiApiCardRedeemJdV1AccountUpdateReq} [kamiApiCardRedeemJdV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdAccountUpdatePut( + kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdAccountUpdatePut( + kamiApiCardRedeemJdV1AccountUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取订单列表 + * @param {number} current 页数 + * @param {ApiCookieInfoJdOrderListGetPageSizeEnum} pageSize 页码 + * @param {number} [cookieId] cookieId + * @param {string} [cookie] cookie + * @param {ApiCookieInfoJdOrderListGetStatusEnum} [status] 状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdOrderListGet( + current: number, + pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum, + cookieId?: number, + cookie?: string, + status?: ApiCookieInfoJdOrderListGetStatusEnum, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdOrderListGet( + current, + pageSize, + cookieId, + cookie, + status, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下单 + * @param {KamiApiCardRedeemJdV1PlaceOrderReq} [kamiApiCardRedeemJdV1PlaceOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CkApi + */ + public apiCookieInfoJdOrderPlaceOrderPost( + kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq, + options?: RawAxiosRequestConfig + ) { + return CkApiFp(this.configuration) + .apiCookieInfoJdOrderPlaceOrderPost( + kamiApiCardRedeemJdV1PlaceOrderReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } +} + +/** + * @export + */ +export const ApiCookieInfoJdAccountListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCookieInfoJdAccountListGetPageSizeEnum = + (typeof ApiCookieInfoJdAccountListGetPageSizeEnum)[keyof typeof ApiCookieInfoJdAccountListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCookieInfoJdAccountListGetStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; +export type ApiCookieInfoJdAccountListGetStatusEnum = + (typeof ApiCookieInfoJdAccountListGetStatusEnum)[keyof typeof ApiCookieInfoJdAccountListGetStatusEnum]; +/** + * @export + */ +export const ApiCookieInfoJdOrderListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCookieInfoJdOrderListGetPageSizeEnum = + (typeof ApiCookieInfoJdOrderListGetPageSizeEnum)[keyof typeof ApiCookieInfoJdOrderListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCookieInfoJdOrderListGetStatusEnum = { + Fail: 'fail', + Init: 'init', + Success: 'success' +} as const; +export type ApiCookieInfoJdOrderListGetStatusEnum = + (typeof ApiCookieInfoJdOrderListGetStatusEnum)[keyof typeof ApiCookieInfoJdOrderListGetStatusEnum]; diff --git a/src/api/generated/apis/default-api.ts b/src/api/generated/apis/default-api.ts new file mode 100644 index 0000000..baa7e48 --- /dev/null +++ b/src/api/generated/apis/default-api.ts @@ -0,0 +1,24694 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import type { Configuration } from '../configuration'; +import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; +import globalAxios from 'axios'; +// Some imports not used depending on template conditions +// @ts-ignore +import { + DUMMY_BASE_URL, + assertParamExists, + setApiKeyToObject, + setBasicAuthToObject, + setBearerAuthToObject, + setOAuthToObject, + setSearchParams, + serializeDataIfNeeded, + toPathString, + createRequestFunction +} from '../common'; +// @ts-ignore +import { + BASE_PATH, + COLLECTION_FORMATS, + type RequestArgs, + BaseAPI, + RequiredError, + operationServerMap +} from '../base'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CallBackOrderManualReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardHistoryInfoListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardInfoUpdateStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1ConfigGetRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1ConfigSetReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeHandlerReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeHandlerRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeHistoryListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeItunesCallbackReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeOrderResetStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeStealRuleAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeStealRuleListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeStealSettingGetRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeStealSettingReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeSubmitQueryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeSubmitReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoAppleV1RechargeSubmitRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieBatchAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieBatchCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieBatchCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountRefreshStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountUpdateStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountWalletListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1ListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1OrderHistoryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1RedeemConfigGetRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1RedeemConfigSetReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoCTripV1SubmitReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieBatchAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieBatchCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountRefreshStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountUpdateStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountWalletListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDConfigGetRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1JDConfigSetReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1ListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1OrderHistoryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1OrderSummaryListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoJdV1SubmitReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1CallBackOrderManualReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeGetKeyRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountTMallAuthStatusRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameDataSyncReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameDataSyncRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderSubmitRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameShopOrderListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameStatsRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieBatchAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieBatchCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieCheckReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountDailySummaryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountLoadReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountRefreshStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountStatusDetectRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountUpdateStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountWalletListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1GroupAddReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1GroupAllListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1GroupListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1GroupStatRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1GroupUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1ListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1OrderHistoryRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1OrderStatusResetReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1OrderSummaryListRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1RedeemConfigGetRes } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1RedeemConfigSetReq } from '../models'; +// @ts-ignore +import type { KamiApiCardInfoWalmartV1SubmitReq } from '../models'; +// @ts-ignore +import type { KamiApiChannelV2EntranceCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiChannelV2EntranceListRes } from '../models'; +// @ts-ignore +import type { KamiApiChannelV2EntranceUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantAllListRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantConfigAddReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantConfigDetailRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantConfigListRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantConfigStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantConfigUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantDeployAddReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantDeployGetDetailRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantDeployListRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1MerchantDeployUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1OrderQueryRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealCreateReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealListRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealRecordListRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealStatusGetRes } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealStatusSetReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiMerchantV1StealUpdateStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiMonitorV1HealthCheckRes } from '../models'; +// @ts-ignore +import type { KamiApiOrderV1OrderFormUpdateReq } from '../models'; +// @ts-ignore +import type { KamiApiOrderV1OrderSummaryGetListRes } from '../models'; +// @ts-ignore +import type { KamiApiRestrictionV1BlockOrderReq } from '../models'; +// @ts-ignore +import type { KamiApiRestrictionV1CheckIPAllowedRes } from '../models'; +// @ts-ignore +import type { KamiApiRestrictionV1QueryAllProvinceRes } from '../models'; +// @ts-ignore +import type { KamiApiRestrictionV1UserInfoCollectionReq } from '../models'; +// @ts-ignore +import type { KamiApiRoadPoolV1SimpleAllGetRoadRes } from '../models'; +// @ts-ignore +import type { KamiApiRoadV1SimpleAllGetRoadRes } from '../models'; +// @ts-ignore +import type { KamiApiSysPaymentV1PaymentSummaryListRes } from '../models'; +// @ts-ignore +import type { KamiApiSysPaymentV1SysPaymentAddReq } from '../models'; +// @ts-ignore +import type { KamiApiSysPaymentV1SysPaymentGetOneRes } from '../models'; +// @ts-ignore +import type { KamiApiSysPaymentV1SysPaymentGetRes } from '../models'; +// @ts-ignore +import type { KamiApiSysPaymentV1SysPaymentRecordsGetRes } from '../models'; +// @ts-ignore +import type { KamiApiSysPaymentV1SysPaymentRecordsGetStatisticsRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserLoginV1UserLoginReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserLoginV1UserLoginRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserAddReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserChangePwdReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserEditReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserGetAllUserRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserGetByIdsRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserGetEditRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserGetParamsRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserMenusGetRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserSearchRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserStatusReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1UserSuspendOrContinueReq } from '../models'; +// @ts-ignore +import type { KamiApiUserCenterV1GetUserInfoRes } from '../models'; +// @ts-ignore +import type { KamiApiValidationV1GetCaptchaRes } from '../models'; +/** + * DefaultApi - axios parameter creator + * @export + */ +export const DefaultApiAxiosParamCreator = function ( + configuration?: Configuration +) { + return { + /** + * + * @summary 获取验证码接口 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCaptchaGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/captcha`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 批量导入账户 + * @param {KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq} [kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountBatchAddPost: async ( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq?: KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/account/batchAdd`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoCreateReq} [kamiApiCardInfoAppleV1CardInfoCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountCreatePost: async ( + kamiApiCardInfoAppleV1CardInfoCreateReq?: KamiApiCardInfoAppleV1CardInfoCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/account/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1CardInfoCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除苹果账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoAppleCardAccountDeleteDelete', 'id', id); + const localVarPath = `/api/cardInfo/AppleCard/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountDownloadTemplateGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/account/downloadTemplate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountGetListGet: async ( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetListGetPageSizeEnum, + account?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardAccountGetListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardAccountGetListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/AppleCard/account/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (account !== undefined) { + localVarQueryParameter['account'] = account; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountName] 苹果账户名 + * @param {string} [accountId] 苹果账户ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountGetWalletListGet: async ( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum, + accountName?: string, + accountId?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardAccountGetWalletListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardAccountGetWalletListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/AppleCard/account/getWalletList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (accountName !== undefined) { + localVarQueryParameter['accountName'] = accountName; + } + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq} [kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountStatusContinueOrRestartPut: async ( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq?: KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/account/status/continueOrRestart`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateReq} [kamiApiCardInfoAppleV1CardInfoUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountUpdatePut: async ( + kamiApiCardInfoAppleV1CardInfoUpdateReq?: KamiApiCardInfoAppleV1CardInfoUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/account/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1CardInfoUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改苹果账户状态 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateStatusReq} [kamiApiCardInfoAppleV1CardInfoUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountUpdateStatusPut: async ( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq?: KamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/account/updateStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardConfigGetGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/config/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoAppleV1ConfigSetReq} [kamiApiCardInfoAppleV1ConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardConfigSetPost: async ( + kamiApiCardInfoAppleV1ConfigSetReq?: KamiApiCardInfoAppleV1ConfigSetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/AppleCard/config/set`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1ConfigSetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 查询充值订单 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardQueryGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists('apiCardInfoAppleCardQueryGet', 'orderNo', orderNo); + const localVarPath = `/api/cardInfo/appleCard/query`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 手动回调iTunes账号到gateway,用来处理正确订单 + * @param {KamiApiCardInfoAppleV1CallBackOrderManualReq} [kamiApiCardInfoAppleV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderCallbackByManualPost: async ( + kamiApiCardInfoAppleV1CallBackOrderManualReq?: KamiApiCardInfoAppleV1CallBackOrderManualReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/callbackByManual`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1CallBackOrderManualReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 回调iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeItunesCallbackReq} [kamiApiCardInfoAppleV1RechargeItunesCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderCallbackPost: async ( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq?: KamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/callback`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [accountId] 账户ID + * @param {string} [account] 账户 + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [merchantId] 商户ID + * @param {string} [cardPass] 密码 + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderDownloadGet: async ( + accountId?: string, + account?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + merchantId?: string, + cardPass?: string, + startDate?: string, + endDate?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/download`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + if (account !== undefined) { + localVarQueryParameter['account'] = account; + } + + if (attach !== undefined) { + localVarQueryParameter['attach'] = attach; + } + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + if (cardNo !== undefined) { + localVarQueryParameter['cardNo'] = cardNo; + } + + if (merchantId !== undefined) { + localVarQueryParameter['merchantId'] = merchantId; + } + + if (cardPass !== undefined) { + localVarQueryParameter['cardPass'] = cardPass; + } + + if (startDate !== undefined) { + localVarQueryParameter['StartDate'] = startDate; + } + + if (endDate !== undefined) { + localVarQueryParameter['EndDate'] = endDate; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取礼品卡充值记录 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderGetHistoryListGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardRechargeOrderGetHistoryListGet', + 'orderNo', + orderNo + ); + const localVarPath = `/api/cardInfo/AppleCard/rechargeOrder/getHistoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取待处理的iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeHandlerReq} [kamiApiCardInfoAppleV1RechargeHandlerReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderHandlerPost: async ( + kamiApiCardInfoAppleV1RechargeHandlerReq?: KamiApiCardInfoAppleV1RechargeHandlerReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/handler`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeHandlerReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {string} [accountId] 账户ID + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [cardPass] 密码 + * @param {string} [merchantId] 商户ID + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderListGet: async ( + current: number, + pageSize: ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum, + account?: string, + accountId?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + cardPass?: string, + merchantId?: string, + startDate?: string, + endDate?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardRechargeOrderListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardRechargeOrderListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (account !== undefined) { + localVarQueryParameter['account'] = account; + } + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + if (attach !== undefined) { + localVarQueryParameter['attach'] = attach; + } + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + if (cardNo !== undefined) { + localVarQueryParameter['cardNo'] = cardNo; + } + + if (cardPass !== undefined) { + localVarQueryParameter['cardPass'] = cardPass; + } + + if (merchantId !== undefined) { + localVarQueryParameter['merchantId'] = merchantId; + } + + if (startDate !== undefined) { + localVarQueryParameter['StartDate'] = startDate; + } + + if (endDate !== undefined) { + localVarQueryParameter['EndDate'] = endDate; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 手动处理金额 + * @param {KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq} [kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq] + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderModifyActualAmountPost: async ( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq?: KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/modifyActualAmount`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 重置订单状态 + * @param {KamiApiCardInfoAppleV1RechargeOrderResetStatusReq} [kamiApiCardInfoAppleV1RechargeOrderResetStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderResetStatusPost: async ( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq?: KamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/resetStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 手动处理订单 + * @param {KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq} [kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost: async ( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq?: KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/rechargeOrder/setOrderSucceed`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 添加一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleAddReq} [kamiApiCardInfoAppleV1RechargeStealRuleAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealAddRulePost: async ( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq?: KamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/steal/addRule`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除一条偷卡规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealDeleteRuleDelete: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoAppleCardStealDeleteRuleDelete', 'id', id); + const localVarPath = `/api/cardInfo/appleCard/steal/deleteRule`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取偷卡规则列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealGetRuleListGet: async ( + current: number, + pageSize: ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardStealGetRuleListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoAppleCardStealGetRuleListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/appleCard/steal/getRuleList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取当前是否设置了偷卡 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealGetStatusGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/steal/getStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置单个规则是否启用 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealSetRuleStatusPut: async ( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/steal/setRuleStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置是否开启偷卡 + * @param {KamiApiCardInfoAppleV1RechargeStealSettingReq} [kamiApiCardInfoAppleV1RechargeStealSettingReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealSetStatusPost: async ( + kamiApiCardInfoAppleV1RechargeStealSettingReq?: KamiApiCardInfoAppleV1RechargeStealSettingReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/steal/setStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeStealSettingReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 更新一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealUpdateRulePut: async ( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/steal/updateRule`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 充值礼品卡 + * @param {KamiApiCardInfoAppleV1RechargeSubmitReq} [kamiApiCardInfoAppleV1RechargeSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardSubmitPost: async ( + kamiApiCardInfoAppleV1RechargeSubmitReq?: KamiApiCardInfoAppleV1RechargeSubmitReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/appleCard/submit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoAppleV1RechargeSubmitReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchAddReq} [kamiApiCardInfoCTripV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountBatchAddPost: async ( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq?: KamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/batchAdd`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoCTripV1AccountCookieCheckReq} [kamiApiCardInfoCTripV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountCheckCookiePost: async ( + kamiApiCardInfoCTripV1AccountCookieCheckReq?: KamiApiCardInfoCTripV1AccountCookieCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/checkCookie`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountCookieCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchCheckReq} [kamiApiCardInfoCTripV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountCheckPost: async ( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq?: KamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/check`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建携程账户 + * @param {KamiApiCardInfoCTripV1AccountCreateReq} [kamiApiCardInfoCTripV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountCreatePost: async ( + kamiApiCardInfoCTripV1AccountCreateReq?: KamiApiCardInfoCTripV1AccountCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除携程充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoCTripAccountDeleteDelete', 'id', id); + const localVarPath = `/api/cardInfo/cTrip/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountDownloadGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/download`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountDownloadTemplateGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/downloadTemplate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取携程充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountGetListGet: async ( + current: number, + pageSize: ApiCardInfoCTripAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoCTripAccountGetListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoCTripAccountGetListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/cTrip/account/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + if (nickName !== undefined) { + localVarQueryParameter['nickName'] = nickName; + } + + if (cookie !== undefined) { + localVarQueryParameter['cookie'] = cookie; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取携程账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountGetWalletListGet: async ( + current: number, + pageSize: ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum, + accountId: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoCTripAccountGetWalletListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoCTripAccountGetWalletListGet', + 'pageSize', + pageSize + ); + // verify required parameter 'accountId' is not null or undefined + assertParamExists( + 'apiCardInfoCTripAccountGetWalletListGet', + 'accountId', + accountId + ); + const localVarPath = `/api/cardInfo/cTrip/account/getWalletList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoCTripV1AccountRefreshStatusReq} [kamiApiCardInfoCTripV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountRefreshStatusPut: async ( + kamiApiCardInfoCTripV1AccountRefreshStatusReq?: KamiApiCardInfoCTripV1AccountRefreshStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/refreshStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountRefreshStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改携程账户 + * @param {KamiApiCardInfoCTripV1AccountUpdateReq} [kamiApiCardInfoCTripV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountUpdatePut: async ( + kamiApiCardInfoCTripV1AccountUpdateReq?: KamiApiCardInfoCTripV1AccountUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改携程账户状态 + * @param {KamiApiCardInfoCTripV1AccountUpdateStatusReq} [kamiApiCardInfoCTripV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountUpdateStatusPut: async ( + kamiApiCardInfoCTripV1AccountUpdateStatusReq?: KamiApiCardInfoCTripV1AccountUpdateStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/account/updateStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1AccountUpdateStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取携程卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripConfigGetGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/config/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoCTripV1RedeemConfigSetReq} [kamiApiCardInfoCTripV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripConfigSetPost: async ( + kamiApiCardInfoCTripV1RedeemConfigSetReq?: KamiApiCardInfoCTripV1RedeemConfigSetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/config/set`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1RedeemConfigSetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderCallbackGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists('apiCardInfoCTripOrderCallbackGet', 'orderNo', orderNo); + const localVarPath = `/api/cardInfo/cTrip/order/callback`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderGetHistoryListGet: async ( + orderNo?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/order/getHistoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderListGet: async ( + current: number, + pageSize: ApiCardInfoCTripOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + accountCk?: string, + dateRange?: Array, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCardInfoCTripOrderListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCardInfoCTripOrderListGet', 'pageSize', pageSize); + const localVarPath = `/api/cardInfo/cTrip/order/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (giftCardPwd !== undefined) { + localVarQueryParameter['giftCardPwd'] = giftCardPwd; + } + + if (merchantId !== undefined) { + localVarQueryParameter['merchantId'] = merchantId; + } + + if (attach !== undefined) { + localVarQueryParameter['attach'] = attach; + } + + if (accountNickName !== undefined) { + localVarQueryParameter['accountNickName'] = accountNickName; + } + + if (accountCk !== undefined) { + localVarQueryParameter['accountCk'] = accountCk; + } + + if (dateRange) { + localVarQueryParameter['dateRange'] = dateRange; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoCTripV1SubmitReq} [kamiApiCardInfoCTripV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderSubmitPost: async ( + kamiApiCardInfoCTripV1SubmitReq?: KamiApiCardInfoCTripV1SubmitReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/cTrip/order/submit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoCTripV1SubmitReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchAddReq} [kamiApiCardInfoJdV1JDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountBatchAddPost: async ( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq?: KamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/batchAdd`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoJdV1JDAccountCookieCheckReq} [kamiApiCardInfoJdV1JDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountCheckCookiePost: async ( + kamiApiCardInfoJdV1JDAccountCookieCheckReq?: KamiApiCardInfoJdV1JDAccountCookieCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/checkCookie`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountCookieCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq} [kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountCheckPost: async ( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq?: KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/check`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoJdV1JDAccountCreateReq} [kamiApiCardInfoJdV1JDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountCreatePost: async ( + kamiApiCardInfoJdV1JDAccountCreateReq?: KamiApiCardInfoJdV1JDAccountCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoJDCardAccountDeleteDelete', 'id', id); + const localVarPath = `/api/cardInfo/JDCard/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountDownloadGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/download`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountDownloadTemplateGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/downloadTemplate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountGetListGet: async ( + current: number, + pageSize: ApiCardInfoJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardAccountGetListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardAccountGetListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/JDCard/account/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + if (nickName !== undefined) { + localVarQueryParameter['nickName'] = nickName; + } + + if (cookie !== undefined) { + localVarQueryParameter['cookie'] = cookie; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountGetWalletListGet: async ( + current: number, + pageSize: ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardAccountGetWalletListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardAccountGetWalletListGet', + 'pageSize', + pageSize + ); + // verify required parameter 'accountId' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardAccountGetWalletListGet', + 'accountId', + accountId + ); + const localVarPath = `/api/cardInfo/JDCard/account/getWalletList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoJdV1JDAccountRefreshStatusReq} [kamiApiCardInfoJdV1JDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountRefreshStatusPut: async ( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq?: KamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/refreshStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoJdV1JDAccountUpdateReq} [kamiApiCardInfoJdV1JDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountUpdatePut: async ( + kamiApiCardInfoJdV1JDAccountUpdateReq?: KamiApiCardInfoJdV1JDAccountUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoJdV1JDAccountUpdateStatusReq} [kamiApiCardInfoJdV1JDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountUpdateStatusPut: async ( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq?: KamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/account/updateStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardConfigGetGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/config/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoJdV1JDConfigSetReq} [kamiApiCardInfoJdV1JDConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardConfigSetPost: async ( + kamiApiCardInfoJdV1JDConfigSetReq?: KamiApiCardInfoJdV1JDConfigSetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/config/set`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1JDConfigSetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderCallbackGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardOrderCallbackGet', + 'orderNo', + orderNo + ); + const localVarPath = `/api/cardInfo/JDCard/order/callback`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderGetHistoryListGet: async ( + orderNo?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/order/getHistoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {Array} [dateRange] 时间范围 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderListGet: async ( + current: number, + pageSize: ApiCardInfoJDCardOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + dateRange?: Array, + accountNickName?: string, + accountCk?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCardInfoJDCardOrderListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCardInfoJDCardOrderListGet', 'pageSize', pageSize); + const localVarPath = `/api/cardInfo/JDCard/order/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (giftCardPwd !== undefined) { + localVarQueryParameter['giftCardPwd'] = giftCardPwd; + } + + if (merchantId !== undefined) { + localVarQueryParameter['merchantId'] = merchantId; + } + + if (attach !== undefined) { + localVarQueryParameter['attach'] = attach; + } + + if (dateRange) { + localVarQueryParameter['dateRange'] = dateRange; + } + + if (accountNickName !== undefined) { + localVarQueryParameter['accountNickName'] = accountNickName; + } + + if (accountCk !== undefined) { + localVarQueryParameter['accountCk'] = accountCk; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoJdV1SubmitReq} [kamiApiCardInfoJdV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderSubmitPost: async ( + kamiApiCardInfoJdV1SubmitReq?: KamiApiCardInfoJdV1SubmitReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/JDCard/order/submit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoJdV1SubmitReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderSummaryGet: async ( + current: number, + pageSize: ApiCardInfoJDCardOrderSummaryGetPageSizeEnum, + roadUid?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCardInfoJDCardOrderSummaryGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoJDCardOrderSummaryGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/JDCard/order/summary`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (roadUid !== undefined) { + localVarQueryParameter['roadUid'] = roadUid; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountBatchAddPost: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/batchAdd`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountCheckCookiePost: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/checkCookie`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountCheckPost: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/check`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountCreatePost: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists( + 'apiCardInfoOriginalJDCardAccountDeleteDelete', + 'id', + id + ); + const localVarPath = `/api/cardInfo/originalJDCard/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountDownloadGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/download`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountDownloadTemplateGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/downloadTemplate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountGetListGet: async ( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoOriginalJDCardAccountGetListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoOriginalJDCardAccountGetListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/originalJDCard/account/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + if (nickName !== undefined) { + localVarQueryParameter['nickName'] = nickName; + } + + if (cookie !== undefined) { + localVarQueryParameter['cookie'] = cookie; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountGetWalletListGet: async ( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoOriginalJDCardAccountGetWalletListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoOriginalJDCardAccountGetWalletListGet', + 'pageSize', + pageSize + ); + // verify required parameter 'accountId' is not null or undefined + assertParamExists( + 'apiCardInfoOriginalJDCardAccountGetWalletListGet', + 'accountId', + accountId + ); + const localVarPath = `/api/cardInfo/originalJDCard/account/getWalletList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountRefreshStatusPut: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/refreshStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountUpdatePut: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountUpdateStatusPut: async ( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/originalJDCard/account/updateStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchAddReq} [kamiApiCardInfoWalmartV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountBatchAddPost: async ( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq?: KamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/batchAdd`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoWalmartV1AccountCookieCheckReq} [kamiApiCardInfoWalmartV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountCheckCookiePost: async ( + kamiApiCardInfoWalmartV1AccountCookieCheckReq?: KamiApiCardInfoWalmartV1AccountCookieCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/checkCookie`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountCookieCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq} [kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountCheckPost: async ( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq?: KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/check`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountCreateReq} [kamiApiCardInfoWalmartV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountCreatePost: async ( + kamiApiCardInfoWalmartV1AccountCreateReq?: KamiApiCardInfoWalmartV1AccountCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDailySummaryGet: async ( + current: number, + pageSize: ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum, + username?: string, + date?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountDailySummaryGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountDailySummaryGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/walmart/account/dailySummary`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (username !== undefined) { + localVarQueryParameter['username'] = username; + } + + if (date !== undefined) { + localVarQueryParameter['date'] = date; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除沃尔玛充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoWalmartAccountDeleteDelete', 'id', id); + const localVarPath = `/api/cardInfo/walmart/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDownloadGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/download`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDownloadTemplateGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/downloadTemplate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取沃尔玛充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {string} [createdUserName] 创建用户昵称 + * @param {number} [groupId] 分组ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountGetListGet: async ( + current: number, + pageSize: ApiCardInfoWalmartAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + createdUserName?: string, + groupId?: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountGetListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountGetListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/walmart/account/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + if (nickName !== undefined) { + localVarQueryParameter['nickName'] = nickName; + } + + if (cookie !== undefined) { + localVarQueryParameter['cookie'] = cookie; + } + + if (createdUserName !== undefined) { + localVarQueryParameter['CreatedUserName'] = createdUserName; + } + + if (groupId !== undefined) { + localVarQueryParameter['groupId'] = groupId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取沃尔玛账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountGetWalletListGet: async ( + current: number, + pageSize: ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum, + accountId: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountGetWalletListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountGetWalletListGet', + 'pageSize', + pageSize + ); + // verify required parameter 'accountId' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountGetWalletListGet', + 'accountId', + accountId + ); + const localVarPath = `/api/cardInfo/walmart/account/getWalletList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (accountId !== undefined) { + localVarQueryParameter['accountId'] = accountId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 导入沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountLoadReq} [kamiApiCardInfoWalmartV1AccountLoadReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountLoadPost: async ( + kamiApiCardInfoWalmartV1AccountLoadReq?: KamiApiCardInfoWalmartV1AccountLoadReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/load`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountLoadReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoWalmartV1AccountRefreshStatusReq} [kamiApiCardInfoWalmartV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountRefreshStatusPut: async ( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq?: KamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/refreshStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检测账户状态 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountStatusDetectGet: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoWalmartAccountStatusDetectGet', 'id', id); + const localVarPath = `/api/cardInfo/walmart/account/statusDetect`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 下载充值账户 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountSummaryDownloadGet: async ( + current: number, + pageSize: ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum, + username?: string, + date?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountSummaryDownloadGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartAccountSummaryDownloadGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/walmart/account/summaryDownload`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (username !== undefined) { + localVarQueryParameter['username'] = username; + } + + if (date !== undefined) { + localVarQueryParameter['date'] = date; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountUpdateReq} [kamiApiCardInfoWalmartV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountUpdatePut: async ( + kamiApiCardInfoWalmartV1AccountUpdateReq?: KamiApiCardInfoWalmartV1AccountUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改沃尔玛账户状态 + * @param {KamiApiCardInfoWalmartV1AccountUpdateStatusReq} [kamiApiCardInfoWalmartV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountUpdateStatusPut: async ( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq?: KamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/account/updateStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取沃尔玛卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartConfigGetGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/config/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoWalmartV1RedeemConfigSetReq} [kamiApiCardInfoWalmartV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartConfigSetPost: async ( + kamiApiCardInfoWalmartV1RedeemConfigSetReq?: KamiApiCardInfoWalmartV1RedeemConfigSetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/config/set`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1RedeemConfigSetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 添加沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupAddReq} [kamiApiCardInfoWalmartV1GroupAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupAddPost: async ( + kamiApiCardInfoWalmartV1GroupAddReq?: KamiApiCardInfoWalmartV1GroupAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/group/add`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1GroupAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取所有沃尔玛账户分组 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupAllListGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/group/allList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改沃尔玛账户分组 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupDeleteDelete: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiCardInfoWalmartGroupDeleteDelete', 'id', id); + const localVarPath = `/api/cardInfo/walmart/group/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取沃尔玛账户分组 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupListGet: async ( + current: number, + pageSize: ApiCardInfoWalmartGroupListGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCardInfoWalmartGroupListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCardInfoWalmartGroupListGet', 'pageSize', pageSize); + const localVarPath = `/api/cardInfo/walmart/group/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 分组统计 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupStatGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户名 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupStatGet: async ( + current: number, + pageSize: ApiCardInfoWalmartGroupStatGetPageSizeEnum, + username?: string, + date?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCardInfoWalmartGroupStatGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCardInfoWalmartGroupStatGet', 'pageSize', pageSize); + const localVarPath = `/api/cardInfo/walmart/group/stat`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (username !== undefined) { + localVarQueryParameter['username'] = username; + } + + if (date !== undefined) { + localVarQueryParameter['date'] = date; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupUpdateReq} [kamiApiCardInfoWalmartV1GroupUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupUpdatePut: async ( + kamiApiCardInfoWalmartV1GroupUpdateReq?: KamiApiCardInfoWalmartV1GroupUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/group/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1GroupUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderCallbackGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartOrderCallbackGet', + 'orderNo', + orderNo + ); + const localVarPath = `/api/cardInfo/walmart/order/callback`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderGetHistoryListGet: async ( + orderNo?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/order/getHistoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {number} [groupId] 组ID + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderListGet: async ( + current: number, + pageSize: ApiCardInfoWalmartOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + groupId?: number, + accountCk?: string, + dateRange?: Array, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiCardInfoWalmartOrderListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiCardInfoWalmartOrderListGet', 'pageSize', pageSize); + const localVarPath = `/api/cardInfo/walmart/order/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (giftCardPwd !== undefined) { + localVarQueryParameter['giftCardPwd'] = giftCardPwd; + } + + if (merchantId !== undefined) { + localVarQueryParameter['merchantId'] = merchantId; + } + + if (attach !== undefined) { + localVarQueryParameter['attach'] = attach; + } + + if (accountNickName !== undefined) { + localVarQueryParameter['accountNickName'] = accountNickName; + } + + if (groupId !== undefined) { + localVarQueryParameter['groupId'] = groupId; + } + + if (accountCk !== undefined) { + localVarQueryParameter['accountCk'] = accountCk; + } + + if (dateRange) { + localVarQueryParameter['dateRange'] = dateRange; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 重置账户状态 + * @param {KamiApiCardInfoWalmartV1OrderStatusResetReq} [kamiApiCardInfoWalmartV1OrderStatusResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderStatusResetPut: async ( + kamiApiCardInfoWalmartV1OrderStatusResetReq?: KamiApiCardInfoWalmartV1OrderStatusResetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/order/statusReset`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1OrderStatusResetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoWalmartV1SubmitReq} [kamiApiCardInfoWalmartV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderSubmitPost: async ( + kamiApiCardInfoWalmartV1SubmitReq?: KamiApiCardInfoWalmartV1SubmitReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/cardInfo/walmart/order/submit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoWalmartV1SubmitReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderSummaryGet: async ( + current: number, + pageSize: ApiCardInfoWalmartOrderSummaryGetPageSizeEnum, + roadUid?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartOrderSummaryGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiCardInfoWalmartOrderSummaryGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/cardInfo/walmart/order/summary`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (roadUid !== undefined) { + localVarQueryParameter['roadUid'] = roadUid; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建通道信息 + * @param {KamiApiChannelV2EntranceCreateReq} [kamiApiChannelV2EntranceCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceCreatePost: async ( + kamiApiChannelV2EntranceCreateReq?: KamiApiChannelV2EntranceCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/channel/entrance/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiChannelV2EntranceCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除通道信息 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiChannelEntranceDeleteDelete', 'id', id); + const localVarPath = `/api/channel/entrance/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取通道信息 + * @param {number} current 页数 + * @param {ApiChannelEntranceGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 通道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceGetListGet: async ( + current: number, + pageSize: ApiChannelEntranceGetListGetPageSizeEnum, + name?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiChannelEntranceGetListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiChannelEntranceGetListGet', 'pageSize', pageSize); + const localVarPath = `/api/channel/entrance/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (name !== undefined) { + localVarQueryParameter['name'] = name; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改通道信息 + * @param {KamiApiChannelV2EntranceUpdateReq} [kamiApiChannelV2EntranceUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceUpdatePost: async ( + kamiApiChannelV2EntranceUpdateReq?: KamiApiChannelV2EntranceUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/channel/entrance/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiChannelV2EntranceUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取用户信息 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiInfoGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/info`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 添加商户 + * @param {KamiApiMerchantV1MerchantConfigAddReq} [kamiApiMerchantV1MerchantConfigAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigAddPost: async ( + kamiApiMerchantV1MerchantConfigAddReq?: KamiApiMerchantV1MerchantConfigAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/add`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1MerchantConfigAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取商户详细信息 + * @param {string} merchantUid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigGetDetailGet: async ( + merchantUid: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'merchantUid' is not null or undefined + assertParamExists( + 'apiMerchantConfigGetDetailGet', + 'merchantUid', + merchantUid + ); + const localVarPath = `/api/merchant/config/getDetail`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (merchantUid !== undefined) { + localVarQueryParameter['merchantUid'] = merchantUid; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取商户列表信息 + * @param {number} current 页数 + * @param {ApiMerchantConfigGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [merchantName] 商户名称 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigGetListGet: async ( + current: number, + pageSize: ApiMerchantConfigGetListGetPageSizeEnum, + merchantName?: string, + merchantUid?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiMerchantConfigGetListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiMerchantConfigGetListGet', 'pageSize', pageSize); + const localVarPath = `/api/merchant/config/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (merchantName !== undefined) { + localVarQueryParameter['merchantName'] = merchantName; + } + + if (merchantUid !== undefined) { + localVarQueryParameter['merchantUid'] = merchantUid; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 添加一条规则 + * @param {KamiApiMerchantV1StealCreateReq} [kamiApiMerchantV1StealCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleCreatePost: async ( + kamiApiMerchantV1StealCreateReq?: KamiApiMerchantV1StealCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/stealRule/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1StealCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取列表 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleListGet: async ( + current: number, + pageSize: ApiMerchantConfigStealRuleListGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiMerchantConfigStealRuleListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiMerchantConfigStealRuleListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/merchant/config/stealRule/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取偷卡记录 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleRecordGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleRecordGet: async ( + current: number, + pageSize: ApiMerchantConfigStealRuleRecordGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiMerchantConfigStealRuleRecordGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiMerchantConfigStealRuleRecordGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/merchant/config/stealRule/record`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取偷卡状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleStatusGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/stealRule/status`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置偷卡状态 + * @param {KamiApiMerchantV1StealStatusSetReq} [kamiApiMerchantV1StealStatusSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleStatusPost: async ( + kamiApiMerchantV1StealStatusSetReq?: KamiApiMerchantV1StealStatusSetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/stealRule/status`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1StealStatusSetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除一条规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleUpdateDelete: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiMerchantConfigStealRuleUpdateDelete', 'id', id); + const localVarPath = `/api/merchant/config/stealRule/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateReq} [kamiApiMerchantV1StealUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleUpdatePost: async ( + kamiApiMerchantV1StealUpdateReq?: KamiApiMerchantV1StealUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/stealRule/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1StealUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateStatusReq} [kamiApiMerchantV1StealUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleUpdateStatusPost: async ( + kamiApiMerchantV1StealUpdateStatusReq?: KamiApiMerchantV1StealUpdateStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/stealRule/updateStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1StealUpdateStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 切换商户状态 + * @param {KamiApiMerchantV1MerchantConfigStatusReq} [kamiApiMerchantV1MerchantConfigStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigSwitchStatusPost: async ( + kamiApiMerchantV1MerchantConfigStatusReq?: KamiApiMerchantV1MerchantConfigStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/switchStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1MerchantConfigStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改商户信息 + * @param {KamiApiMerchantV1MerchantConfigUpdateReq} [kamiApiMerchantV1MerchantConfigUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigUpdateDetailPost: async ( + kamiApiMerchantV1MerchantConfigUpdateReq?: KamiApiMerchantV1MerchantConfigUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/config/updateDetail`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1MerchantConfigUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 添加商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployAddReq} [kamiApiMerchantV1MerchantDeployAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployAddPost: async ( + kamiApiMerchantV1MerchantDeployAddReq?: KamiApiMerchantV1MerchantDeployAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/deploy/add`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1MerchantDeployAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除商户部署通道信息 + * @param {string} merchantUid 商户uid + * @param {string} singleRoadUid 单通道uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployDeleteDelete: async ( + merchantUid: string, + singleRoadUid: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'merchantUid' is not null or undefined + assertParamExists( + 'apiMerchantDeployDeleteDelete', + 'merchantUid', + merchantUid + ); + // verify required parameter 'singleRoadUid' is not null or undefined + assertParamExists( + 'apiMerchantDeployDeleteDelete', + 'singleRoadUid', + singleRoadUid + ); + const localVarPath = `/api/merchant/deploy/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (merchantUid !== undefined) { + localVarQueryParameter['merchantUid'] = merchantUid; + } + + if (singleRoadUid !== undefined) { + localVarQueryParameter['singleRoadUid'] = singleRoadUid; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取商户部署通道详情 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployGetDetailGet: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiMerchantDeployGetDetailGet', 'id', id); + const localVarPath = `/api/merchant/deploy/getDetail`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取商户部署通道信息 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployGetListGet: async ( + merchantUid?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/deploy/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (merchantUid !== undefined) { + localVarQueryParameter['merchantUid'] = merchantUid; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 更新商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployUpdateReq} [kamiApiMerchantV1MerchantDeployUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployUpdatePost: async ( + kamiApiMerchantV1MerchantDeployUpdateReq?: KamiApiMerchantV1MerchantDeployUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/deploy/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiMerchantV1MerchantDeployUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取商户配置选择列表 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantListAllGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/list/all`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户查单详情 + * @param {string} [merchantOrderNo] 商户订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantOrderQueryGet: async ( + merchantOrderNo?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/merchant/order/query`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (merchantOrderNo !== undefined) { + localVarQueryParameter['merchantOrderNo'] = merchantOrderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 健康检查 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMonitorHeathcheckGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/monitor/heathcheck`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取订单汇总 + * @param {number} current 页数 + * @param {ApiOrderInfoSummaryGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderInfoSummaryGetListGet: async ( + current: number, + pageSize: ApiOrderInfoSummaryGetListGetPageSizeEnum, + roadUid?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiOrderInfoSummaryGetListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiOrderInfoSummaryGetListGet', 'pageSize', pageSize); + const localVarPath = `/api/orderInfo/summary/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (roadUid !== undefined) { + localVarQueryParameter['roadUid'] = roadUid; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除订单流水 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderLogDeleteDelete: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiOrderLogDeleteDelete', 'id', id); + const localVarPath = `/api/order/log/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取订单流水 + * @param {number} current 页数 + * @param {ApiOrderLogGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderLogGetListGet: async ( + current: number, + pageSize: ApiOrderLogGetListGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiOrderLogGetListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiOrderLogGetListGet', 'pageSize', pageSize); + const localVarPath = `/api/order/log/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建实时订单 + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormCreatePost: async ( + body?: object, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/order/orderForm/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + body, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除实时订单 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormDeleteDelete: async ( + id: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiOrderOrderFormDeleteDelete', 'id', id); + const localVarPath = `/api/order/orderForm/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取实时订单 + * @param {number} current 页数 + * @param {ApiOrderOrderFormGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormGetListGet: async ( + current: number, + pageSize: ApiOrderOrderFormGetListGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiOrderOrderFormGetListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiOrderOrderFormGetListGet', 'pageSize', pageSize); + const localVarPath = `/api/order/orderForm/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改实时订单 + * @param {KamiApiOrderV1OrderFormUpdateReq} [kamiApiOrderV1OrderFormUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormUpdatePost: async ( + kamiApiOrderV1OrderFormUpdateReq?: KamiApiOrderV1OrderFormUpdateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/order/orderForm/update`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiOrderV1OrderFormUpdateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 天猫对接授权回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountAuthCallbackPost: async ( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/account/auth/callback`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取授权appKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/account/auth/getAuthorizeKey`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查天猫授权状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/account/auth/getTMallAuthStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 创建游戏账户 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq} [kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountCreatePost: async ( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq?: KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/account/create`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除游戏账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiRechargeTMallGameAccountDeleteDelete', 'id', id); + const localVarPath = `/api/recharge/tMallGame/account/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 随机获取一个游戏账户 + * @param {number} [timeStamp] 时间戳 + * @param {string} [orderNo] 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountGetOneByRandomGet: async ( + timeStamp?: number, + orderNo?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/account/getOneByRandom`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (timeStamp !== undefined) { + localVarQueryParameter['timeStamp'] = timeStamp; + } + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取游戏账户列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameAccountListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountNumber] 账户账号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountListGet: async ( + current: number, + pageSize: ApiRechargeTMallGameAccountListGetPageSizeEnum, + accountNumber?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameAccountListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameAccountListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/recharge/tMallGame/account/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (accountNumber !== undefined) { + localVarQueryParameter['accountNumber'] = accountNumber; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 改变游戏账户状态 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq} [kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountTogglePost: async ( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq?: KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/account/toggle`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 阿奇索请求回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAgisoCallbackPost: async ( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/agiso/callback`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 同步订单数据 + * @param {KamiApiCardInfoTMallGameV1TMallGameDataSyncReq} [kamiApiCardInfoTMallGameV1TMallGameDataSyncReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameDataSyncPost: async ( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq?: KamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/data/sync`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 查询天猫游戏分类 + * @param {string} [tId] 订单ID + * @param {string} [category] 游戏类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameGetCategoryListGet: async ( + tId?: string, + category?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/getCategoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (tId !== undefined) { + localVarQueryParameter['tId'] = tId; + } + + if (category !== undefined) { + localVarQueryParameter['category'] = category; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取游戏订单列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] 状态 + * @param {string} [accountNumber] 账号编号 + * @param {string} [orderNo] 订单号 + * @param {string} [merchantOrder] 商户订单号 + * @param {string} [thirdMerchantOrder] 充值账号 + * @param {string} [tMallShopOrder] 天猫店铺订单号 + * @param {Array} [dateRange] 时间范围 + * @param {ApiRechargeTMallGameOrderListGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderListGet: async ( + current: number, + pageSize: ApiRechargeTMallGameOrderListGetPageSizeEnum, + status?: string, + accountNumber?: string, + orderNo?: string, + merchantOrder?: string, + thirdMerchantOrder?: string, + tMallShopOrder?: string, + dateRange?: Array, + callbackType?: ApiRechargeTMallGameOrderListGetCallbackTypeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiRechargeTMallGameOrderListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameOrderListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/recharge/tMallGame/order/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (status !== undefined) { + localVarQueryParameter['status'] = status; + } + + if (accountNumber !== undefined) { + localVarQueryParameter['accountNumber'] = accountNumber; + } + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + if (merchantOrder !== undefined) { + localVarQueryParameter['merchantOrder'] = merchantOrder; + } + + if (thirdMerchantOrder !== undefined) { + localVarQueryParameter['thirdMerchantOrder'] = thirdMerchantOrder; + } + + if (tMallShopOrder !== undefined) { + localVarQueryParameter['tMallShopOrder'] = tMallShopOrder; + } + + if (dateRange) { + localVarQueryParameter['dateRange'] = dateRange; + } + + if (callbackType !== undefined) { + localVarQueryParameter['callbackType'] = callbackType; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 手动将正确设置(纠正)为正确 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq} [kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderModifyStatusSucceedPost: async ( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq?: KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/order/modifyStatusSucceed`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 查询天猫单个订单 + * @param {string} tId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderQueryOneGet: async ( + tId: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'tId' is not null or undefined + assertParamExists('apiRechargeTMallGameOrderQueryOneGet', 'tId', tId); + const localVarPath = `/api/recharge/tMallGame/order/queryOne`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (tId !== undefined) { + localVarQueryParameter['tId'] = tId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 提交订单 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq} [kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderSubmitPost: async ( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq?: KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/order/submit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 手动回调天猫消息到gateway,用来处理正确订单 + * @param {KamiApiCardInfoTMallGameV1CallBackOrderManualReq} [kamiApiCardInfoTMallGameV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderCallbackByManualPost: async ( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq?: KamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/shopOrder/callbackByManual`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取淘宝订单历史 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetHistoryListGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameShopOrderGetHistoryListGet', + 'orderNo', + orderNo + ); + const localVarPath = `/api/recharge/tMallGame/shopOrder/getHistoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取淘宝订单详情 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 充值账户 + * @param {string} [tMallOrderNo] 淘宝订单号 + * @param {string} [buyerNickName] 买家昵称 + * @param {string} [orderNo] 订单号 + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetListGet: async ( + current: number, + pageSize: ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum, + account?: string, + tMallOrderNo?: string, + buyerNickName?: string, + orderNo?: string, + dateRange?: Array, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameShopOrderGetListGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameShopOrderGetListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/recharge/tMallGame/shopOrder/getList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (account !== undefined) { + localVarQueryParameter['account'] = account; + } + + if (tMallOrderNo !== undefined) { + localVarQueryParameter['tMallOrderNo'] = tMallOrderNo; + } + + if (buyerNickName !== undefined) { + localVarQueryParameter['buyerNickName'] = buyerNickName; + } + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + if (dateRange) { + localVarQueryParameter['dateRange'] = dateRange; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取淘宝订单详情 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetOneGet: async ( + orderNo: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'orderNo' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameShopOrderGetOneGet', + 'orderNo', + orderNo + ); + const localVarPath = `/api/recharge/tMallGame/shopOrder/getOne`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取淘宝订单历史 + * @param {number} shopId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetShopHistoryListGet: async ( + shopId: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'shopId' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameShopOrderGetShopHistoryListGet', + 'shopId', + shopId + ); + const localVarPath = `/api/recharge/tMallGame/shopOrder/getShopHistoryList`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (shopId !== undefined) { + localVarQueryParameter['shopId'] = shopId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取每日订单统计 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [channelName] 渠道名称 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameWorkspaceOrderSummaryGet: async ( + current: number, + pageSize: ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum, + channelName?: string, + callbackType?: ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameWorkspaceOrderSummaryGet', + 'current', + current + ); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiRechargeTMallGameWorkspaceOrderSummaryGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/recharge/tMallGame/workspace/orderSummary`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (channelName !== undefined) { + localVarQueryParameter['channelName'] = channelName; + } + + if (callbackType !== undefined) { + localVarQueryParameter['callbackType'] = callbackType; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取基本统计信息 + * @param {string} [channelName] 渠道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameWorkspaceStatsGet: async ( + channelName?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/recharge/tMallGame/workspace/stats`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (channelName !== undefined) { + localVarQueryParameter['channelName'] = channelName; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 封单 + * @param {KamiApiRestrictionV1BlockOrderReq} [kamiApiRestrictionV1BlockOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionBlockOrderPost: async ( + kamiApiRestrictionV1BlockOrderReq?: KamiApiRestrictionV1BlockOrderReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/restriction/block/order`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiRestrictionV1BlockOrderReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 收集用户基本IP信息 + * @param {KamiApiRestrictionV1UserInfoCollectionReq} [kamiApiRestrictionV1UserInfoCollectionReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionCollectionUserInfoPost: async ( + kamiApiRestrictionV1UserInfoCollectionReq?: KamiApiRestrictionV1UserInfoCollectionReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/restriction/collection/userInfo`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiRestrictionV1UserInfoCollectionReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 检查IP是否被允许 + * @param {string} ip IP地址 + * @param {number} merchantDeployID 商户部署ID + * @param {string} orderNo 订单号 + * @param {string} cardPass 充值卡密码 + * @param {string} [deviceId] 设备ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionLocationCheckIPAllowedGet: async ( + ip: string, + merchantDeployID: number, + orderNo: string, + cardPass: string, + deviceId?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'ip' is not null or undefined + assertParamExists('apiRestrictionLocationCheckIPAllowedGet', 'ip', ip); + // verify required parameter 'merchantDeployID' is not null or undefined + assertParamExists( + 'apiRestrictionLocationCheckIPAllowedGet', + 'merchantDeployID', + merchantDeployID + ); + // verify required parameter 'orderNo' is not null or undefined + assertParamExists( + 'apiRestrictionLocationCheckIPAllowedGet', + 'orderNo', + orderNo + ); + // verify required parameter 'cardPass' is not null or undefined + assertParamExists( + 'apiRestrictionLocationCheckIPAllowedGet', + 'cardPass', + cardPass + ); + const localVarPath = `/api/restriction/location/checkIPAllowed`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (ip !== undefined) { + localVarQueryParameter['ip'] = ip; + } + + if (deviceId !== undefined) { + localVarQueryParameter['deviceId'] = deviceId; + } + + if (merchantDeployID !== undefined) { + localVarQueryParameter['merchantDeployID'] = merchantDeployID; + } + + if (orderNo !== undefined) { + localVarQueryParameter['orderNo'] = orderNo; + } + + if (cardPass !== undefined) { + localVarQueryParameter['cardPass'] = cardPass; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取所有的地理位置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionLocationGetAllProvinceGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/restriction/location/getAllProvince`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRoadPoolSimpleGetAllGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/roadPool/simple/getAll`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRoadSimpleGetAllGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/road/simple/getAll`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 充值 + * @param {KamiApiSysPaymentV1SysPaymentAddReq} [kamiApiSysPaymentV1SysPaymentAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentAddPost: async ( + kamiApiSysPaymentV1SysPaymentAddReq?: KamiApiSysPaymentV1SysPaymentAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/sysUser/payment/add`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysPaymentV1SysPaymentAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户钱包详情 + * @param {string} [userId] 用户ID + * @param {number} [paymentId] 钱包ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentGetGet: async ( + userId?: string, + paymentId?: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/sysUser/payment/get`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (paymentId !== undefined) { + localVarQueryParameter['paymentId'] = paymentId; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户充值列表 + * @param {number} current 页数 + * @param {ApiSysUserPaymentListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentListGet: async ( + current: number, + pageSize: ApiSysUserPaymentListGetPageSizeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiSysUserPaymentListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiSysUserPaymentListGet', 'pageSize', pageSize); + const localVarPath = `/api/sysUser/payment/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户充值/消费流水 + * @param {number} current 页数 + * @param {ApiSysUserPaymentRecordsListGetPageSizeEnum} pageSize 页码 + * @param {string} [userId] + * @param {ApiSysUserPaymentRecordsListGetTransactionTypeEnum} [transactionType] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentRecordsListGet: async ( + current: number, + pageSize: ApiSysUserPaymentRecordsListGetPageSizeEnum, + userId?: string, + transactionType?: ApiSysUserPaymentRecordsListGetTransactionTypeEnum, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiSysUserPaymentRecordsListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiSysUserPaymentRecordsListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/sysUser/paymentRecords/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (transactionType !== undefined) { + localVarQueryParameter['transactionType'] = transactionType; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户流水按日汇总 + * @param {number} current 页数 + * @param {ApiSysUserPaymentSummaryListGetPageSizeEnum} pageSize 页码 + * @param {string} [username] + * @param {string} [date] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentSummaryListGet: async ( + current: number, + pageSize: ApiSysUserPaymentSummaryListGetPageSizeEnum, + username?: string, + date?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiSysUserPaymentSummaryListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists( + 'apiSysUserPaymentSummaryListGet', + 'pageSize', + pageSize + ); + const localVarPath = `/api/sysUser/paymentSummary/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (username !== undefined) { + localVarQueryParameter['username'] = username; + } + + if (date !== undefined) { + localVarQueryParameter['date'] = date; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户信息统计 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserStatisticsGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/sysUser/statistics`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 添加用户 + * @param {KamiApiSysUserV1UserAddReq} [kamiApiSysUserV1UserAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserAddPost: async ( + kamiApiSysUserV1UserAddReq?: KamiApiSysUserV1UserAddReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/add`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1UserAddReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 重置用户密码 + * @param {KamiApiSysUserV1UserChangePwdReq} [kamiApiSysUserV1UserChangePwdReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserChangePwdPut: async ( + kamiApiSysUserV1UserChangePwdReq?: KamiApiSysUserV1UserChangePwdReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/changePwd`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1UserChangePwdReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 禁用&启用用户 + * @param {Array} ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserChangeStatusGet: async ( + ids: Array, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'ids' is not null or undefined + assertParamExists('apiUserChangeStatusGet', 'ids', ids); + const localVarPath = `/api/user/changeStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (ids) { + localVarQueryParameter['ids'] = ids; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 删除用户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserDeleteDelete: async ( + id: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('apiUserDeleteDelete', 'id', id); + const localVarPath = `/api/user/delete`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'DELETE', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 修改用户 + * @param {KamiApiSysUserV1UserEditReq} [kamiApiSysUserV1UserEditReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserEditPut: async ( + kamiApiSysUserV1UserEditReq?: KamiApiSysUserV1UserEditReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/edit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1UserEditReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取用户信息 + * @param {number} [id] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetEditGet: async ( + id?: number, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/getEdit`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取所有的商户(简单) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetSimpleAllGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/getSimpleAll`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 获取用户菜单 + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetUserMenusGet: async ( + authorization?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/getUserMenus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (authorization != null) { + localVarHeaderParameter['Authorization'] = String(authorization); + } + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 同时获取多个用户 + * @param {Array} ids + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetUsersGet: async ( + ids: Array, + authorization?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'ids' is not null or undefined + assertParamExists('apiUserGetUsersGet', 'ids', ids); + const localVarPath = `/api/user/getUsers`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (ids) { + localVarQueryParameter['ids'] = ids; + } + + if (authorization != null) { + localVarHeaderParameter['Authorization'] = String(authorization); + } + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户列表 + * @param {number} current 页数 + * @param {ApiUserListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] + * @param {string} [username] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserListGet: async ( + current: number, + pageSize: ApiUserListGetPageSizeEnum, + status?: string, + username?: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'current' is not null or undefined + assertParamExists('apiUserListGet', 'current', current); + // verify required parameter 'pageSize' is not null or undefined + assertParamExists('apiUserListGet', 'pageSize', pageSize); + const localVarPath = `/api/user/list`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (status !== undefined) { + localVarQueryParameter['status'] = status; + } + + if (username !== undefined) { + localVarQueryParameter['username'] = username; + } + + if (current !== undefined) { + localVarQueryParameter['current'] = current; + } + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户登录 + * @param {KamiApiSysUserLoginV1UserLoginReq} [kamiApiSysUserLoginV1UserLoginReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserLoginPost: async ( + kamiApiSysUserLoginV1UserLoginReq?: KamiApiSysUserLoginV1UserLoginReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/login`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserLoginV1UserLoginReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 退出登录 + * @param {string} [authorization] Bearer {{token}} + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserLogoutPost: async ( + authorization?: string, + body?: object, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/logout`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + if (authorization != null) { + localVarHeaderParameter['Authorization'] = String(authorization); + } + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + body, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 用户维护参数获取 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserParamsGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/params`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置用户状态 + * @param {KamiApiSysUserV1UserStatusReq} [kamiApiSysUserV1UserStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserSetStatusPut: async ( + kamiApiSysUserV1UserStatusReq?: KamiApiSysUserV1UserStatusReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/setStatus`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1UserStatusReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiSysUserV1UserSuspendOrContinueReq} [kamiApiSysUserV1UserSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserStatusPauseOrRestartPut: async ( + kamiApiSysUserV1UserSuspendOrContinueReq?: KamiApiSysUserV1UserSuspendOrContinueReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/status/pauseOrRestart`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'PUT', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1UserSuspendOrContinueReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + } + }; +}; + +/** + * DefaultApi - functional programming interface + * @export + */ +export const DefaultApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = DefaultApiAxiosParamCreator(configuration); + return { + /** + * + * @summary 获取验证码接口 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCaptchaGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCaptchaGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCaptchaGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 批量导入账户 + * @param {KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq} [kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountBatchAddPost( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq?: KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountBatchAddPost( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountBatchAddPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoCreateReq} [kamiApiCardInfoAppleV1CardInfoCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountCreatePost( + kamiApiCardInfoAppleV1CardInfoCreateReq?: KamiApiCardInfoAppleV1CardInfoCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountCreatePost( + kamiApiCardInfoAppleV1CardInfoCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountCreatePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除苹果账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountDeleteDelete' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountDownloadTemplateGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountDownloadTemplateGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetListGetPageSizeEnum, + account?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountGetListGet( + current, + pageSize, + account, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountGetListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountName] 苹果账户名 + * @param {string} [accountId] 苹果账户ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum, + accountName?: string, + accountId?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountGetWalletListGet( + current, + pageSize, + accountName, + accountId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountGetWalletListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq} [kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountStatusContinueOrRestartPut( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq?: KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountStatusContinueOrRestartPut( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountStatusContinueOrRestartPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateReq} [kamiApiCardInfoAppleV1CardInfoUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountUpdatePut( + kamiApiCardInfoAppleV1CardInfoUpdateReq?: KamiApiCardInfoAppleV1CardInfoUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountUpdatePut( + kamiApiCardInfoAppleV1CardInfoUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoAppleCardAccountUpdatePut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改苹果账户状态 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateStatusReq} [kamiApiCardInfoAppleV1CardInfoUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardAccountUpdateStatusPut( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq?: KamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardAccountUpdateStatusPut( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardAccountUpdateStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardConfigGetGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardConfigGetGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoAppleCardConfigGetGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoAppleV1ConfigSetReq} [kamiApiCardInfoAppleV1ConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardConfigSetPost( + kamiApiCardInfoAppleV1ConfigSetReq?: KamiApiCardInfoAppleV1ConfigSetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardConfigSetPost( + kamiApiCardInfoAppleV1ConfigSetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoAppleCardConfigSetPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 查询充值订单 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardQueryGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardQueryGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoAppleCardQueryGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 手动回调iTunes账号到gateway,用来处理正确订单 + * @param {KamiApiCardInfoAppleV1CallBackOrderManualReq} [kamiApiCardInfoAppleV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderCallbackByManualPost( + kamiApiCardInfoAppleV1CallBackOrderManualReq?: KamiApiCardInfoAppleV1CallBackOrderManualReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderCallbackByManualPost( + kamiApiCardInfoAppleV1CallBackOrderManualReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderCallbackByManualPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 回调iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeItunesCallbackReq} [kamiApiCardInfoAppleV1RechargeItunesCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderCallbackPost( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq?: KamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderCallbackPost( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderCallbackPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [accountId] 账户ID + * @param {string} [account] 账户 + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [merchantId] 商户ID + * @param {string} [cardPass] 密码 + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderDownloadGet( + accountId?: string, + account?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + merchantId?: string, + cardPass?: string, + startDate?: string, + endDate?: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderDownloadGet( + accountId, + account, + attach, + orderNo, + cardNo, + merchantId, + cardPass, + startDate, + endDate, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderDownloadGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取礼品卡充值记录 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderGetHistoryListGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderGetHistoryListGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderGetHistoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取待处理的iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeHandlerReq} [kamiApiCardInfoAppleV1RechargeHandlerReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderHandlerPost( + kamiApiCardInfoAppleV1RechargeHandlerReq?: KamiApiCardInfoAppleV1RechargeHandlerReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderHandlerPost( + kamiApiCardInfoAppleV1RechargeHandlerReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderHandlerPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {string} [accountId] 账户ID + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [cardPass] 密码 + * @param {string} [merchantId] 商户ID + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderListGet( + current: number, + pageSize: ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum, + account?: string, + accountId?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + cardPass?: string, + merchantId?: string, + startDate?: string, + endDate?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderListGet( + current, + pageSize, + account, + accountId, + attach, + orderNo, + cardNo, + cardPass, + merchantId, + startDate, + endDate, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 手动处理金额 + * @param {KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq} [kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq] + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderModifyActualAmountPost( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq?: KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderModifyActualAmountPost( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderModifyActualAmountPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 重置订单状态 + * @param {KamiApiCardInfoAppleV1RechargeOrderResetStatusReq} [kamiApiCardInfoAppleV1RechargeOrderResetStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderResetStatusPost( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq?: KamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderResetStatusPost( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderResetStatusPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 手动处理订单 + * @param {KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq} [kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq?: KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 添加一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleAddReq} [kamiApiCardInfoAppleV1RechargeStealRuleAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealAddRulePost( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq?: KamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealAddRulePost( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoAppleCardStealAddRulePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除一条偷卡规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealDeleteRuleDelete( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealDeleteRuleDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardStealDeleteRuleDelete' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取偷卡规则列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealGetRuleListGet( + current: number, + pageSize: ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealGetRuleListGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardStealGetRuleListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取当前是否设置了偷卡 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealGetStatusGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealGetStatusGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardStealGetStatusGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置单个规则是否启用 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealSetRuleStatusPut( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealSetRuleStatusPut( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardStealSetRuleStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置是否开启偷卡 + * @param {KamiApiCardInfoAppleV1RechargeStealSettingReq} [kamiApiCardInfoAppleV1RechargeStealSettingReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealSetStatusPost( + kamiApiCardInfoAppleV1RechargeStealSettingReq?: KamiApiCardInfoAppleV1RechargeStealSettingReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealSetStatusPost( + kamiApiCardInfoAppleV1RechargeStealSettingReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardStealSetStatusPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 更新一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardStealUpdateRulePut( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardStealUpdateRulePut( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoAppleCardStealUpdateRulePut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 充值礼品卡 + * @param {KamiApiCardInfoAppleV1RechargeSubmitReq} [kamiApiCardInfoAppleV1RechargeSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoAppleCardSubmitPost( + kamiApiCardInfoAppleV1RechargeSubmitReq?: KamiApiCardInfoAppleV1RechargeSubmitReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoAppleCardSubmitPost( + kamiApiCardInfoAppleV1RechargeSubmitReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoAppleCardSubmitPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchAddReq} [kamiApiCardInfoCTripV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountBatchAddPost( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq?: KamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountBatchAddPost( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountBatchAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoCTripV1AccountCookieCheckReq} [kamiApiCardInfoCTripV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountCheckCookiePost( + kamiApiCardInfoCTripV1AccountCookieCheckReq?: KamiApiCardInfoCTripV1AccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountCheckCookiePost( + kamiApiCardInfoCTripV1AccountCookieCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoCTripAccountCheckCookiePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchCheckReq} [kamiApiCardInfoCTripV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountCheckPost( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq?: KamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountCheckPost( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountCheckPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建携程账户 + * @param {KamiApiCardInfoCTripV1AccountCreateReq} [kamiApiCardInfoCTripV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountCreatePost( + kamiApiCardInfoCTripV1AccountCreateReq?: KamiApiCardInfoCTripV1AccountCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountCreatePost( + kamiApiCardInfoCTripV1AccountCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountCreatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除携程充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountDownloadGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountDownloadGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountDownloadGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountDownloadTemplateGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoCTripAccountDownloadTemplateGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取携程充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountGetListGet( + current: number, + pageSize: ApiCardInfoCTripAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取携程账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoCTripAccountGetWalletListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoCTripV1AccountRefreshStatusReq} [kamiApiCardInfoCTripV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountRefreshStatusPut( + kamiApiCardInfoCTripV1AccountRefreshStatusReq?: KamiApiCardInfoCTripV1AccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountRefreshStatusPut( + kamiApiCardInfoCTripV1AccountRefreshStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoCTripAccountRefreshStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改携程账户 + * @param {KamiApiCardInfoCTripV1AccountUpdateReq} [kamiApiCardInfoCTripV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountUpdatePut( + kamiApiCardInfoCTripV1AccountUpdateReq?: KamiApiCardInfoCTripV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountUpdatePut( + kamiApiCardInfoCTripV1AccountUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripAccountUpdatePut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改携程账户状态 + * @param {KamiApiCardInfoCTripV1AccountUpdateStatusReq} [kamiApiCardInfoCTripV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripAccountUpdateStatusPut( + kamiApiCardInfoCTripV1AccountUpdateStatusReq?: KamiApiCardInfoCTripV1AccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripAccountUpdateStatusPut( + kamiApiCardInfoCTripV1AccountUpdateStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoCTripAccountUpdateStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取携程卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripConfigGetGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripConfigGetGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripConfigGetGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoCTripV1RedeemConfigSetReq} [kamiApiCardInfoCTripV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripConfigSetPost( + kamiApiCardInfoCTripV1RedeemConfigSetReq?: KamiApiCardInfoCTripV1RedeemConfigSetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripConfigSetPost( + kamiApiCardInfoCTripV1RedeemConfigSetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripConfigSetPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripOrderCallbackGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripOrderCallbackGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripOrderGetHistoryListGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoCTripOrderGetHistoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripOrderListGet( + current: number, + pageSize: ApiCardInfoCTripOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + accountCk?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + accountNickName, + accountCk, + dateRange, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripOrderListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoCTripV1SubmitReq} [kamiApiCardInfoCTripV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoCTripOrderSubmitPost( + kamiApiCardInfoCTripV1SubmitReq?: KamiApiCardInfoCTripV1SubmitReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoCTripOrderSubmitPost( + kamiApiCardInfoCTripV1SubmitReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoCTripOrderSubmitPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchAddReq} [kamiApiCardInfoJdV1JDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountBatchAddPost( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq?: KamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountBatchAddPost( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountBatchAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoJdV1JDAccountCookieCheckReq} [kamiApiCardInfoJdV1JDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountCheckCookiePost( + kamiApiCardInfoJdV1JDAccountCookieCheckReq?: KamiApiCardInfoJdV1JDAccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountCheckCookiePost( + kamiApiCardInfoJdV1JDAccountCookieCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoJDCardAccountCheckCookiePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq} [kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountCheckPost( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq?: KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountCheckPost( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountCheckPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoJdV1JDAccountCreateReq} [kamiApiCardInfoJdV1JDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountCreatePost( + kamiApiCardInfoJdV1JDAccountCreateReq?: KamiApiCardInfoJdV1JDAccountCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountCreatePost( + kamiApiCardInfoJdV1JDAccountCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountCreatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountDownloadGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountDownloadGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountDownloadGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountDownloadTemplateGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoJDCardAccountDownloadTemplateGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoJDCardAccountGetWalletListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoJdV1JDAccountRefreshStatusReq} [kamiApiCardInfoJdV1JDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountRefreshStatusPut( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq?: KamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountRefreshStatusPut( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoJDCardAccountRefreshStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoJdV1JDAccountUpdateReq} [kamiApiCardInfoJdV1JDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountUpdatePut( + kamiApiCardInfoJdV1JDAccountUpdateReq?: KamiApiCardInfoJdV1JDAccountUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountUpdatePut( + kamiApiCardInfoJdV1JDAccountUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardAccountUpdatePut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoJdV1JDAccountUpdateStatusReq} [kamiApiCardInfoJdV1JDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardAccountUpdateStatusPut( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq?: KamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardAccountUpdateStatusPut( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoJDCardAccountUpdateStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardConfigGetGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardConfigGetGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardConfigGetGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoJdV1JDConfigSetReq} [kamiApiCardInfoJdV1JDConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardConfigSetPost( + kamiApiCardInfoJdV1JDConfigSetReq?: KamiApiCardInfoJdV1JDConfigSetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardConfigSetPost( + kamiApiCardInfoJdV1JDConfigSetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardConfigSetPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardOrderCallbackGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardOrderCallbackGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardOrderGetHistoryListGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoJDCardOrderGetHistoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {Array} [dateRange] 时间范围 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardOrderListGet( + current: number, + pageSize: ApiCardInfoJDCardOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + dateRange?: Array, + accountNickName?: string, + accountCk?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + dateRange, + accountNickName, + accountCk, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardOrderListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoJdV1SubmitReq} [kamiApiCardInfoJdV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardOrderSubmitPost( + kamiApiCardInfoJdV1SubmitReq?: KamiApiCardInfoJdV1SubmitReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardOrderSubmitPost( + kamiApiCardInfoJdV1SubmitReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardOrderSubmitPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoJDCardOrderSummaryGet( + current: number, + pageSize: ApiCardInfoJDCardOrderSummaryGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoJDCardOrderSummaryGet( + current, + pageSize, + roadUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoJDCardOrderSummaryGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountBatchAddPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountBatchAddPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountBatchAddPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountCheckCookiePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountCheckCookiePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountCheckCookiePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountCheckPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountCheckPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountCheckPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountCreatePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountCreatePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountCreatePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountDeleteDelete' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountDownloadGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountDownloadGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountDownloadGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountDownloadTemplateGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountDownloadTemplateGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountGetListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountGetWalletListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountRefreshStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountRefreshStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountRefreshStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountUpdatePut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountUpdatePut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountUpdatePut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoOriginalJDCardAccountUpdateStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoOriginalJDCardAccountUpdateStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoOriginalJDCardAccountUpdateStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchAddReq} [kamiApiCardInfoWalmartV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountBatchAddPost( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq?: KamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountBatchAddPost( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountBatchAddPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoWalmartV1AccountCookieCheckReq} [kamiApiCardInfoWalmartV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountCheckCookiePost( + kamiApiCardInfoWalmartV1AccountCookieCheckReq?: KamiApiCardInfoWalmartV1AccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountCheckCookiePost( + kamiApiCardInfoWalmartV1AccountCookieCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountCheckCookiePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq} [kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountCheckPost( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq?: KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountCheckPost( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartAccountCheckPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountCreateReq} [kamiApiCardInfoWalmartV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountCreatePost( + kamiApiCardInfoWalmartV1AccountCreateReq?: KamiApiCardInfoWalmartV1AccountCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountCreatePost( + kamiApiCardInfoWalmartV1AccountCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartAccountCreatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountDailySummaryGet( + current: number, + pageSize: ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountDailySummaryGet( + current, + pageSize, + username, + date, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountDailySummaryGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除沃尔玛充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountDeleteDelete' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountDownloadGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountDownloadGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartAccountDownloadGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountDownloadTemplateGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountDownloadTemplateGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取沃尔玛充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {string} [createdUserName] 创建用户昵称 + * @param {number} [groupId] 分组ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountGetListGet( + current: number, + pageSize: ApiCardInfoWalmartAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + createdUserName?: string, + groupId?: number, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + createdUserName, + groupId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartAccountGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取沃尔玛账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountGetWalletListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 导入沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountLoadReq} [kamiApiCardInfoWalmartV1AccountLoadReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountLoadPost( + kamiApiCardInfoWalmartV1AccountLoadReq?: KamiApiCardInfoWalmartV1AccountLoadReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountLoadPost( + kamiApiCardInfoWalmartV1AccountLoadReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartAccountLoadPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoWalmartV1AccountRefreshStatusReq} [kamiApiCardInfoWalmartV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountRefreshStatusPut( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq?: KamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountRefreshStatusPut( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountRefreshStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检测账户状态 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountStatusDetectGet( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountStatusDetectGet( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountStatusDetectGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 下载充值账户 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountSummaryDownloadGet( + current: number, + pageSize: ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountSummaryDownloadGet( + current, + pageSize, + username, + date, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountSummaryDownloadGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountUpdateReq} [kamiApiCardInfoWalmartV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountUpdatePut( + kamiApiCardInfoWalmartV1AccountUpdateReq?: KamiApiCardInfoWalmartV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountUpdatePut( + kamiApiCardInfoWalmartV1AccountUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartAccountUpdatePut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改沃尔玛账户状态 + * @param {KamiApiCardInfoWalmartV1AccountUpdateStatusReq} [kamiApiCardInfoWalmartV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartAccountUpdateStatusPut( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq?: KamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartAccountUpdateStatusPut( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartAccountUpdateStatusPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取沃尔玛卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartConfigGetGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartConfigGetGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartConfigGetGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoWalmartV1RedeemConfigSetReq} [kamiApiCardInfoWalmartV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartConfigSetPost( + kamiApiCardInfoWalmartV1RedeemConfigSetReq?: KamiApiCardInfoWalmartV1RedeemConfigSetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartConfigSetPost( + kamiApiCardInfoWalmartV1RedeemConfigSetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartConfigSetPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 添加沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupAddReq} [kamiApiCardInfoWalmartV1GroupAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartGroupAddPost( + kamiApiCardInfoWalmartV1GroupAddReq?: KamiApiCardInfoWalmartV1GroupAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartGroupAddPost( + kamiApiCardInfoWalmartV1GroupAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartGroupAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取所有沃尔玛账户分组 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartGroupAllListGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartGroupAllListGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartGroupAllListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改沃尔玛账户分组 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartGroupDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartGroupDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartGroupDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取沃尔玛账户分组 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartGroupListGet( + current: number, + pageSize: ApiCardInfoWalmartGroupListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartGroupListGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartGroupListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 分组统计 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupStatGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户名 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartGroupStatGet( + current: number, + pageSize: ApiCardInfoWalmartGroupStatGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartGroupStatGet( + current, + pageSize, + username, + date, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartGroupStatGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupUpdateReq} [kamiApiCardInfoWalmartV1GroupUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartGroupUpdatePut( + kamiApiCardInfoWalmartV1GroupUpdateReq?: KamiApiCardInfoWalmartV1GroupUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartGroupUpdatePut( + kamiApiCardInfoWalmartV1GroupUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartGroupUpdatePut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartOrderCallbackGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartOrderCallbackGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartOrderGetHistoryListGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartOrderGetHistoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {number} [groupId] 组ID + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartOrderListGet( + current: number, + pageSize: ApiCardInfoWalmartOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + groupId?: number, + accountCk?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + accountNickName, + groupId, + accountCk, + dateRange, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartOrderListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 重置账户状态 + * @param {KamiApiCardInfoWalmartV1OrderStatusResetReq} [kamiApiCardInfoWalmartV1OrderStatusResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartOrderStatusResetPut( + kamiApiCardInfoWalmartV1OrderStatusResetReq?: KamiApiCardInfoWalmartV1OrderStatusResetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartOrderStatusResetPut( + kamiApiCardInfoWalmartV1OrderStatusResetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiCardInfoWalmartOrderStatusResetPut' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoWalmartV1SubmitReq} [kamiApiCardInfoWalmartV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartOrderSubmitPost( + kamiApiCardInfoWalmartV1SubmitReq?: KamiApiCardInfoWalmartV1SubmitReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartOrderSubmitPost( + kamiApiCardInfoWalmartV1SubmitReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartOrderSubmitPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiCardInfoWalmartOrderSummaryGet( + current: number, + pageSize: ApiCardInfoWalmartOrderSummaryGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiCardInfoWalmartOrderSummaryGet( + current, + pageSize, + roadUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiCardInfoWalmartOrderSummaryGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建通道信息 + * @param {KamiApiChannelV2EntranceCreateReq} [kamiApiChannelV2EntranceCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiChannelEntranceCreatePost( + kamiApiChannelV2EntranceCreateReq?: KamiApiChannelV2EntranceCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiChannelEntranceCreatePost( + kamiApiChannelV2EntranceCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiChannelEntranceCreatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除通道信息 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiChannelEntranceDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiChannelEntranceDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiChannelEntranceDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取通道信息 + * @param {number} current 页数 + * @param {ApiChannelEntranceGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 通道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiChannelEntranceGetListGet( + current: number, + pageSize: ApiChannelEntranceGetListGetPageSizeEnum, + name?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiChannelEntranceGetListGet( + current, + pageSize, + name, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiChannelEntranceGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改通道信息 + * @param {KamiApiChannelV2EntranceUpdateReq} [kamiApiChannelV2EntranceUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiChannelEntranceUpdatePost( + kamiApiChannelV2EntranceUpdateReq?: KamiApiChannelV2EntranceUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiChannelEntranceUpdatePost( + kamiApiChannelV2EntranceUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiChannelEntranceUpdatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取用户信息 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiInfoGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiInfoGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiInfoGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 添加商户 + * @param {KamiApiMerchantV1MerchantConfigAddReq} [kamiApiMerchantV1MerchantConfigAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigAddPost( + kamiApiMerchantV1MerchantConfigAddReq?: KamiApiMerchantV1MerchantConfigAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigAddPost( + kamiApiMerchantV1MerchantConfigAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取商户详细信息 + * @param {string} merchantUid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigGetDetailGet( + merchantUid: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigGetDetailGet( + merchantUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigGetDetailGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取商户列表信息 + * @param {number} current 页数 + * @param {ApiMerchantConfigGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [merchantName] 商户名称 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigGetListGet( + current: number, + pageSize: ApiMerchantConfigGetListGetPageSizeEnum, + merchantName?: string, + merchantUid?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigGetListGet( + current, + pageSize, + merchantName, + merchantUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 添加一条规则 + * @param {KamiApiMerchantV1StealCreateReq} [kamiApiMerchantV1StealCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleCreatePost( + kamiApiMerchantV1StealCreateReq?: KamiApiMerchantV1StealCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleCreatePost( + kamiApiMerchantV1StealCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigStealRuleCreatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取列表 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleListGet( + current: number, + pageSize: ApiMerchantConfigStealRuleListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleListGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigStealRuleListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取偷卡记录 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleRecordGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleRecordGet( + current: number, + pageSize: ApiMerchantConfigStealRuleRecordGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleRecordGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigStealRuleRecordGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取偷卡状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleStatusGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleStatusGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigStealRuleStatusGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置偷卡状态 + * @param {KamiApiMerchantV1StealStatusSetReq} [kamiApiMerchantV1StealStatusSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleStatusPost( + kamiApiMerchantV1StealStatusSetReq?: KamiApiMerchantV1StealStatusSetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleStatusPost( + kamiApiMerchantV1StealStatusSetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigStealRuleStatusPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除一条规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleUpdateDelete( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleUpdateDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiMerchantConfigStealRuleUpdateDelete' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateReq} [kamiApiMerchantV1StealUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleUpdatePost( + kamiApiMerchantV1StealUpdateReq?: KamiApiMerchantV1StealUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleUpdatePost( + kamiApiMerchantV1StealUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigStealRuleUpdatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateStatusReq} [kamiApiMerchantV1StealUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigStealRuleUpdateStatusPost( + kamiApiMerchantV1StealUpdateStatusReq?: KamiApiMerchantV1StealUpdateStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigStealRuleUpdateStatusPost( + kamiApiMerchantV1StealUpdateStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiMerchantConfigStealRuleUpdateStatusPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 切换商户状态 + * @param {KamiApiMerchantV1MerchantConfigStatusReq} [kamiApiMerchantV1MerchantConfigStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigSwitchStatusPost( + kamiApiMerchantV1MerchantConfigStatusReq?: KamiApiMerchantV1MerchantConfigStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigSwitchStatusPost( + kamiApiMerchantV1MerchantConfigStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigSwitchStatusPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改商户信息 + * @param {KamiApiMerchantV1MerchantConfigUpdateReq} [kamiApiMerchantV1MerchantConfigUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantConfigUpdateDetailPost( + kamiApiMerchantV1MerchantConfigUpdateReq?: KamiApiMerchantV1MerchantConfigUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantConfigUpdateDetailPost( + kamiApiMerchantV1MerchantConfigUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantConfigUpdateDetailPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 添加商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployAddReq} [kamiApiMerchantV1MerchantDeployAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantDeployAddPost( + kamiApiMerchantV1MerchantDeployAddReq?: KamiApiMerchantV1MerchantDeployAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantDeployAddPost( + kamiApiMerchantV1MerchantDeployAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantDeployAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除商户部署通道信息 + * @param {string} merchantUid 商户uid + * @param {string} singleRoadUid 单通道uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantDeployDeleteDelete( + merchantUid: string, + singleRoadUid: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantDeployDeleteDelete( + merchantUid, + singleRoadUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantDeployDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取商户部署通道详情 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantDeployGetDetailGet( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantDeployGetDetailGet( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantDeployGetDetailGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取商户部署通道信息 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantDeployGetListGet( + merchantUid?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantDeployGetListGet( + merchantUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantDeployGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 更新商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployUpdateReq} [kamiApiMerchantV1MerchantDeployUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantDeployUpdatePost( + kamiApiMerchantV1MerchantDeployUpdateReq?: KamiApiMerchantV1MerchantDeployUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantDeployUpdatePost( + kamiApiMerchantV1MerchantDeployUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantDeployUpdatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取商户配置选择列表 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantListAllGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantListAllGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantListAllGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户查单详情 + * @param {string} [merchantOrderNo] 商户订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMerchantOrderQueryGet( + merchantOrderNo?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMerchantOrderQueryGet( + merchantOrderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMerchantOrderQueryGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 健康检查 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiMonitorHeathcheckGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiMonitorHeathcheckGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiMonitorHeathcheckGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取订单汇总 + * @param {number} current 页数 + * @param {ApiOrderInfoSummaryGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderInfoSummaryGetListGet( + current: number, + pageSize: ApiOrderInfoSummaryGetListGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderInfoSummaryGetListGet( + current, + pageSize, + roadUid, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderInfoSummaryGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除订单流水 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderLogDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderLogDeleteDelete(id, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderLogDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取订单流水 + * @param {number} current 页数 + * @param {ApiOrderLogGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderLogGetListGet( + current: number, + pageSize: ApiOrderLogGetListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderLogGetListGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderLogGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建实时订单 + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderOrderFormCreatePost( + body?: object, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderOrderFormCreatePost( + body, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderOrderFormCreatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除实时订单 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderOrderFormDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderOrderFormDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderOrderFormDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取实时订单 + * @param {number} current 页数 + * @param {ApiOrderOrderFormGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderOrderFormGetListGet( + current: number, + pageSize: ApiOrderOrderFormGetListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderOrderFormGetListGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderOrderFormGetListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改实时订单 + * @param {KamiApiOrderV1OrderFormUpdateReq} [kamiApiOrderV1OrderFormUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiOrderOrderFormUpdatePost( + kamiApiOrderV1OrderFormUpdateReq?: KamiApiOrderV1OrderFormUpdateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiOrderOrderFormUpdatePost( + kamiApiOrderV1OrderFormUpdateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiOrderOrderFormUpdatePost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 天猫对接授权回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountAuthCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountAuthCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountAuthCallbackPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取授权appKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查天猫授权状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 创建游戏账户 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq} [kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountCreatePost( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq?: KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountCreatePost( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountCreatePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除游戏账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountDeleteDelete( + id, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountDeleteDelete' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 随机获取一个游戏账户 + * @param {number} [timeStamp] 时间戳 + * @param {string} [orderNo] 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountGetOneByRandomGet( + timeStamp?: number, + orderNo?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountGetOneByRandomGet( + timeStamp, + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountGetOneByRandomGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取游戏账户列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameAccountListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountNumber] 账户账号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountListGet( + current: number, + pageSize: ApiRechargeTMallGameAccountListGetPageSizeEnum, + accountNumber?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountListGet( + current, + pageSize, + accountNumber, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRechargeTMallGameAccountListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 改变游戏账户状态 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq} [kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAccountTogglePost( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq?: KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAccountTogglePost( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAccountTogglePost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 阿奇索请求回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameAgisoCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameAgisoCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameAgisoCallbackPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 同步订单数据 + * @param {KamiApiCardInfoTMallGameV1TMallGameDataSyncReq} [kamiApiCardInfoTMallGameV1TMallGameDataSyncReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameDataSyncPost( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq?: KamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameDataSyncPost( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRechargeTMallGameDataSyncPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 查询天猫游戏分类 + * @param {string} [tId] 订单ID + * @param {string} [category] 游戏类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameGetCategoryListGet( + tId?: string, + category?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameGetCategoryListGet( + tId, + category, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameGetCategoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取游戏订单列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] 状态 + * @param {string} [accountNumber] 账号编号 + * @param {string} [orderNo] 订单号 + * @param {string} [merchantOrder] 商户订单号 + * @param {string} [thirdMerchantOrder] 充值账号 + * @param {string} [tMallShopOrder] 天猫店铺订单号 + * @param {Array} [dateRange] 时间范围 + * @param {ApiRechargeTMallGameOrderListGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameOrderListGet( + current: number, + pageSize: ApiRechargeTMallGameOrderListGetPageSizeEnum, + status?: string, + accountNumber?: string, + orderNo?: string, + merchantOrder?: string, + thirdMerchantOrder?: string, + tMallShopOrder?: string, + dateRange?: Array, + callbackType?: ApiRechargeTMallGameOrderListGetCallbackTypeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameOrderListGet( + current, + pageSize, + status, + accountNumber, + orderNo, + merchantOrder, + thirdMerchantOrder, + tMallShopOrder, + dateRange, + callbackType, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRechargeTMallGameOrderListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 手动将正确设置(纠正)为正确 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq} [kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameOrderModifyStatusSucceedPost( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq?: KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameOrderModifyStatusSucceedPost( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameOrderModifyStatusSucceedPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 查询天猫单个订单 + * @param {string} tId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameOrderQueryOneGet( + tId: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameOrderQueryOneGet( + tId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRechargeTMallGameOrderQueryOneGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 提交订单 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq} [kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameOrderSubmitPost( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq?: KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameOrderSubmitPost( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRechargeTMallGameOrderSubmitPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 手动回调天猫消息到gateway,用来处理正确订单 + * @param {KamiApiCardInfoTMallGameV1CallBackOrderManualReq} [kamiApiCardInfoTMallGameV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameShopOrderCallbackByManualPost( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq?: KamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameShopOrderCallbackByManualPost( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameShopOrderCallbackByManualPost' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取淘宝订单历史 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameShopOrderGetHistoryListGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameShopOrderGetHistoryListGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameShopOrderGetHistoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取淘宝订单详情 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 充值账户 + * @param {string} [tMallOrderNo] 淘宝订单号 + * @param {string} [buyerNickName] 买家昵称 + * @param {string} [orderNo] 订单号 + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameShopOrderGetListGet( + current: number, + pageSize: ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum, + account?: string, + tMallOrderNo?: string, + buyerNickName?: string, + orderNo?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameShopOrderGetListGet( + current, + pageSize, + account, + tMallOrderNo, + buyerNickName, + orderNo, + dateRange, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameShopOrderGetListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取淘宝订单详情 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameShopOrderGetOneGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameShopOrderGetOneGet( + orderNo, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameShopOrderGetOneGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取淘宝订单历史 + * @param {number} shopId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameShopOrderGetShopHistoryListGet( + shopId: number, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameShopOrderGetShopHistoryListGet( + shopId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameShopOrderGetShopHistoryListGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取每日订单统计 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [channelName] 渠道名称 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameWorkspaceOrderSummaryGet( + current: number, + pageSize: ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum, + channelName?: string, + callbackType?: ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameWorkspaceOrderSummaryGet( + current, + pageSize, + channelName, + callbackType, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameWorkspaceOrderSummaryGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取基本统计信息 + * @param {string} [channelName] 渠道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRechargeTMallGameWorkspaceStatsGet( + channelName?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRechargeTMallGameWorkspaceStatsGet( + channelName, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRechargeTMallGameWorkspaceStatsGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 封单 + * @param {KamiApiRestrictionV1BlockOrderReq} [kamiApiRestrictionV1BlockOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRestrictionBlockOrderPost( + kamiApiRestrictionV1BlockOrderReq?: KamiApiRestrictionV1BlockOrderReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRestrictionBlockOrderPost( + kamiApiRestrictionV1BlockOrderReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRestrictionBlockOrderPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 收集用户基本IP信息 + * @param {KamiApiRestrictionV1UserInfoCollectionReq} [kamiApiRestrictionV1UserInfoCollectionReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRestrictionCollectionUserInfoPost( + kamiApiRestrictionV1UserInfoCollectionReq?: KamiApiRestrictionV1UserInfoCollectionReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRestrictionCollectionUserInfoPost( + kamiApiRestrictionV1UserInfoCollectionReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRestrictionCollectionUserInfoPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 检查IP是否被允许 + * @param {string} ip IP地址 + * @param {number} merchantDeployID 商户部署ID + * @param {string} orderNo 订单号 + * @param {string} cardPass 充值卡密码 + * @param {string} [deviceId] 设备ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRestrictionLocationCheckIPAllowedGet( + ip: string, + merchantDeployID: number, + orderNo: string, + cardPass: string, + deviceId?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRestrictionLocationCheckIPAllowedGet( + ip, + merchantDeployID, + orderNo, + cardPass, + deviceId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRestrictionLocationCheckIPAllowedGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取所有的地理位置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRestrictionLocationGetAllProvinceGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRestrictionLocationGetAllProvinceGet( + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap[ + 'DefaultApi.apiRestrictionLocationGetAllProvinceGet' + ]?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRoadPoolSimpleGetAllGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRoadPoolSimpleGetAllGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRoadPoolSimpleGetAllGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiRoadSimpleGetAllGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiRoadSimpleGetAllGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiRoadSimpleGetAllGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 充值 + * @param {KamiApiSysPaymentV1SysPaymentAddReq} [kamiApiSysPaymentV1SysPaymentAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiSysUserPaymentAddPost( + kamiApiSysPaymentV1SysPaymentAddReq?: KamiApiSysPaymentV1SysPaymentAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiSysUserPaymentAddPost( + kamiApiSysPaymentV1SysPaymentAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiSysUserPaymentAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户钱包详情 + * @param {string} [userId] 用户ID + * @param {number} [paymentId] 钱包ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiSysUserPaymentGetGet( + userId?: string, + paymentId?: number, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiSysUserPaymentGetGet( + userId, + paymentId, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiSysUserPaymentGetGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户充值列表 + * @param {number} current 页数 + * @param {ApiSysUserPaymentListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiSysUserPaymentListGet( + current: number, + pageSize: ApiSysUserPaymentListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiSysUserPaymentListGet( + current, + pageSize, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiSysUserPaymentListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户充值/消费流水 + * @param {number} current 页数 + * @param {ApiSysUserPaymentRecordsListGetPageSizeEnum} pageSize 页码 + * @param {string} [userId] + * @param {ApiSysUserPaymentRecordsListGetTransactionTypeEnum} [transactionType] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiSysUserPaymentRecordsListGet( + current: number, + pageSize: ApiSysUserPaymentRecordsListGetPageSizeEnum, + userId?: string, + transactionType?: ApiSysUserPaymentRecordsListGetTransactionTypeEnum, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiSysUserPaymentRecordsListGet( + current, + pageSize, + userId, + transactionType, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiSysUserPaymentRecordsListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户流水按日汇总 + * @param {number} current 页数 + * @param {ApiSysUserPaymentSummaryListGetPageSizeEnum} pageSize 页码 + * @param {string} [username] + * @param {string} [date] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiSysUserPaymentSummaryListGet( + current: number, + pageSize: ApiSysUserPaymentSummaryListGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiSysUserPaymentSummaryListGet( + current, + pageSize, + username, + date, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiSysUserPaymentSummaryListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户信息统计 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiSysUserStatisticsGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiSysUserStatisticsGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiSysUserStatisticsGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 添加用户 + * @param {KamiApiSysUserV1UserAddReq} [kamiApiSysUserV1UserAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserAddPost( + kamiApiSysUserV1UserAddReq?: KamiApiSysUserV1UserAddReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.apiUserAddPost( + kamiApiSysUserV1UserAddReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserAddPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 重置用户密码 + * @param {KamiApiSysUserV1UserChangePwdReq} [kamiApiSysUserV1UserChangePwdReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserChangePwdPut( + kamiApiSysUserV1UserChangePwdReq?: KamiApiSysUserV1UserChangePwdReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserChangePwdPut( + kamiApiSysUserV1UserChangePwdReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserChangePwdPut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 禁用&启用用户 + * @param {Array} ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserChangeStatusGet( + ids: Array, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserChangeStatusGet(ids, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserChangeStatusGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 删除用户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserDeleteDelete(id, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserDeleteDelete']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 修改用户 + * @param {KamiApiSysUserV1UserEditReq} [kamiApiSysUserV1UserEditReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserEditPut( + kamiApiSysUserV1UserEditReq?: KamiApiSysUserV1UserEditReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.apiUserEditPut( + kamiApiSysUserV1UserEditReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserEditPut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取用户信息 + * @param {number} [id] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserGetEditGet( + id?: number, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserGetEditGet(id, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserGetEditGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取所有的商户(简单) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserGetSimpleAllGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserGetSimpleAllGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserGetSimpleAllGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 获取用户菜单 + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserGetUserMenusGet( + authorization?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserGetUserMenusGet( + authorization, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserGetUserMenusGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 同时获取多个用户 + * @param {Array} ids + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserGetUsersGet( + ids: Array, + authorization?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserGetUsersGet( + ids, + authorization, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserGetUsersGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户列表 + * @param {number} current 页数 + * @param {ApiUserListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] + * @param {string} [username] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserListGet( + current: number, + pageSize: ApiUserListGetPageSizeEnum, + status?: string, + username?: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.apiUserListGet( + current, + pageSize, + status, + username, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserListGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户登录 + * @param {KamiApiSysUserLoginV1UserLoginReq} [kamiApiSysUserLoginV1UserLoginReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserLoginPost( + kamiApiSysUserLoginV1UserLoginReq?: KamiApiSysUserLoginV1UserLoginReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserLoginPost( + kamiApiSysUserLoginV1UserLoginReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserLoginPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 退出登录 + * @param {string} [authorization] Bearer {{token}} + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserLogoutPost( + authorization?: string, + body?: object, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserLogoutPost( + authorization, + body, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserLogoutPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 用户维护参数获取 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserParamsGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserParamsGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserParamsGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置用户状态 + * @param {KamiApiSysUserV1UserStatusReq} [kamiApiSysUserV1UserStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserSetStatusPut( + kamiApiSysUserV1UserStatusReq?: KamiApiSysUserV1UserStatusReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserSetStatusPut( + kamiApiSysUserV1UserStatusReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserSetStatusPut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiSysUserV1UserSuspendOrContinueReq} [kamiApiSysUserV1UserSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserStatusPauseOrRestartPut( + kamiApiSysUserV1UserSuspendOrContinueReq?: KamiApiSysUserV1UserSuspendOrContinueReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserStatusPauseOrRestartPut( + kamiApiSysUserV1UserSuspendOrContinueReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['DefaultApi.apiUserStatusPauseOrRestartPut']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + } + }; +}; + +/** + * DefaultApi - factory interface + * @export + */ +export const DefaultApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance +) { + const localVarFp = DefaultApiFp(configuration); + return { + /** + * + * @summary 获取验证码接口 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCaptchaGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCaptchaGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 批量导入账户 + * @param {KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq} [kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountBatchAddPost( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq?: KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountBatchAddPost( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoCreateReq} [kamiApiCardInfoAppleV1CardInfoCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountCreatePost( + kamiApiCardInfoAppleV1CardInfoCreateReq?: KamiApiCardInfoAppleV1CardInfoCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountCreatePost( + kamiApiCardInfoAppleV1CardInfoCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除苹果账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountDownloadTemplateGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetListGetPageSizeEnum, + account?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountGetListGet( + current, + pageSize, + account, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountName] 苹果账户名 + * @param {string} [accountId] 苹果账户ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum, + accountName?: string, + accountId?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountGetWalletListGet( + current, + pageSize, + accountName, + accountId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq} [kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountStatusContinueOrRestartPut( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq?: KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountStatusContinueOrRestartPut( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateReq} [kamiApiCardInfoAppleV1CardInfoUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountUpdatePut( + kamiApiCardInfoAppleV1CardInfoUpdateReq?: KamiApiCardInfoAppleV1CardInfoUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountUpdatePut( + kamiApiCardInfoAppleV1CardInfoUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改苹果账户状态 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateStatusReq} [kamiApiCardInfoAppleV1CardInfoUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardAccountUpdateStatusPut( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq?: KamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardAccountUpdateStatusPut( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardConfigGetGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardConfigGetGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoAppleV1ConfigSetReq} [kamiApiCardInfoAppleV1ConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardConfigSetPost( + kamiApiCardInfoAppleV1ConfigSetReq?: KamiApiCardInfoAppleV1ConfigSetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardConfigSetPost( + kamiApiCardInfoAppleV1ConfigSetReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 查询充值订单 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardQueryGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardQueryGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 手动回调iTunes账号到gateway,用来处理正确订单 + * @param {KamiApiCardInfoAppleV1CallBackOrderManualReq} [kamiApiCardInfoAppleV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderCallbackByManualPost( + kamiApiCardInfoAppleV1CallBackOrderManualReq?: KamiApiCardInfoAppleV1CallBackOrderManualReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderCallbackByManualPost( + kamiApiCardInfoAppleV1CallBackOrderManualReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 回调iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeItunesCallbackReq} [kamiApiCardInfoAppleV1RechargeItunesCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderCallbackPost( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq?: KamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderCallbackPost( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [accountId] 账户ID + * @param {string} [account] 账户 + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [merchantId] 商户ID + * @param {string} [cardPass] 密码 + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderDownloadGet( + accountId?: string, + account?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + merchantId?: string, + cardPass?: string, + startDate?: string, + endDate?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderDownloadGet( + accountId, + account, + attach, + orderNo, + cardNo, + merchantId, + cardPass, + startDate, + endDate, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取礼品卡充值记录 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderGetHistoryListGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderGetHistoryListGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取待处理的iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeHandlerReq} [kamiApiCardInfoAppleV1RechargeHandlerReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderHandlerPost( + kamiApiCardInfoAppleV1RechargeHandlerReq?: KamiApiCardInfoAppleV1RechargeHandlerReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderHandlerPost( + kamiApiCardInfoAppleV1RechargeHandlerReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {string} [accountId] 账户ID + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [cardPass] 密码 + * @param {string} [merchantId] 商户ID + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderListGet( + current: number, + pageSize: ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum, + account?: string, + accountId?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + cardPass?: string, + merchantId?: string, + startDate?: string, + endDate?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderListGet( + current, + pageSize, + account, + accountId, + attach, + orderNo, + cardNo, + cardPass, + merchantId, + startDate, + endDate, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 手动处理金额 + * @param {KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq} [kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq] + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderModifyActualAmountPost( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq?: KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderModifyActualAmountPost( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 重置订单状态 + * @param {KamiApiCardInfoAppleV1RechargeOrderResetStatusReq} [kamiApiCardInfoAppleV1RechargeOrderResetStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderResetStatusPost( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq?: KamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderResetStatusPost( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 手动处理订单 + * @param {KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq} [kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq?: KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 添加一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleAddReq} [kamiApiCardInfoAppleV1RechargeStealRuleAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealAddRulePost( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq?: KamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealAddRulePost( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除一条偷卡规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealDeleteRuleDelete( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealDeleteRuleDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取偷卡规则列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealGetRuleListGet( + current: number, + pageSize: ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealGetRuleListGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取当前是否设置了偷卡 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealGetStatusGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealGetStatusGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置单个规则是否启用 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealSetRuleStatusPut( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealSetRuleStatusPut( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置是否开启偷卡 + * @param {KamiApiCardInfoAppleV1RechargeStealSettingReq} [kamiApiCardInfoAppleV1RechargeStealSettingReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealSetStatusPost( + kamiApiCardInfoAppleV1RechargeStealSettingReq?: KamiApiCardInfoAppleV1RechargeStealSettingReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealSetStatusPost( + kamiApiCardInfoAppleV1RechargeStealSettingReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 更新一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardStealUpdateRulePut( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardStealUpdateRulePut( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 充值礼品卡 + * @param {KamiApiCardInfoAppleV1RechargeSubmitReq} [kamiApiCardInfoAppleV1RechargeSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoAppleCardSubmitPost( + kamiApiCardInfoAppleV1RechargeSubmitReq?: KamiApiCardInfoAppleV1RechargeSubmitReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoAppleCardSubmitPost( + kamiApiCardInfoAppleV1RechargeSubmitReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchAddReq} [kamiApiCardInfoCTripV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountBatchAddPost( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq?: KamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountBatchAddPost( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoCTripV1AccountCookieCheckReq} [kamiApiCardInfoCTripV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountCheckCookiePost( + kamiApiCardInfoCTripV1AccountCookieCheckReq?: KamiApiCardInfoCTripV1AccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountCheckCookiePost( + kamiApiCardInfoCTripV1AccountCookieCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchCheckReq} [kamiApiCardInfoCTripV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountCheckPost( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq?: KamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountCheckPost( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建携程账户 + * @param {KamiApiCardInfoCTripV1AccountCreateReq} [kamiApiCardInfoCTripV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountCreatePost( + kamiApiCardInfoCTripV1AccountCreateReq?: KamiApiCardInfoCTripV1AccountCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountCreatePost( + kamiApiCardInfoCTripV1AccountCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除携程充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountDownloadGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountDownloadGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountDownloadTemplateGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取携程充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountGetListGet( + current: number, + pageSize: ApiCardInfoCTripAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取携程账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoCTripV1AccountRefreshStatusReq} [kamiApiCardInfoCTripV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountRefreshStatusPut( + kamiApiCardInfoCTripV1AccountRefreshStatusReq?: KamiApiCardInfoCTripV1AccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountRefreshStatusPut( + kamiApiCardInfoCTripV1AccountRefreshStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改携程账户 + * @param {KamiApiCardInfoCTripV1AccountUpdateReq} [kamiApiCardInfoCTripV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountUpdatePut( + kamiApiCardInfoCTripV1AccountUpdateReq?: KamiApiCardInfoCTripV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountUpdatePut( + kamiApiCardInfoCTripV1AccountUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改携程账户状态 + * @param {KamiApiCardInfoCTripV1AccountUpdateStatusReq} [kamiApiCardInfoCTripV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripAccountUpdateStatusPut( + kamiApiCardInfoCTripV1AccountUpdateStatusReq?: KamiApiCardInfoCTripV1AccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripAccountUpdateStatusPut( + kamiApiCardInfoCTripV1AccountUpdateStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取携程卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripConfigGetGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripConfigGetGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoCTripV1RedeemConfigSetReq} [kamiApiCardInfoCTripV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripConfigSetPost( + kamiApiCardInfoCTripV1RedeemConfigSetReq?: KamiApiCardInfoCTripV1RedeemConfigSetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripConfigSetPost( + kamiApiCardInfoCTripV1RedeemConfigSetReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripOrderCallbackGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripOrderGetHistoryListGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderListGet( + current: number, + pageSize: ApiCardInfoCTripOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + accountCk?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + accountNickName, + accountCk, + dateRange, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoCTripV1SubmitReq} [kamiApiCardInfoCTripV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoCTripOrderSubmitPost( + kamiApiCardInfoCTripV1SubmitReq?: KamiApiCardInfoCTripV1SubmitReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoCTripOrderSubmitPost( + kamiApiCardInfoCTripV1SubmitReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchAddReq} [kamiApiCardInfoJdV1JDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountBatchAddPost( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq?: KamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountBatchAddPost( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoJdV1JDAccountCookieCheckReq} [kamiApiCardInfoJdV1JDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountCheckCookiePost( + kamiApiCardInfoJdV1JDAccountCookieCheckReq?: KamiApiCardInfoJdV1JDAccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountCheckCookiePost( + kamiApiCardInfoJdV1JDAccountCookieCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq} [kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountCheckPost( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq?: KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountCheckPost( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoJdV1JDAccountCreateReq} [kamiApiCardInfoJdV1JDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountCreatePost( + kamiApiCardInfoJdV1JDAccountCreateReq?: KamiApiCardInfoJdV1JDAccountCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountCreatePost( + kamiApiCardInfoJdV1JDAccountCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountDownloadGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountDownloadGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountDownloadTemplateGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoJdV1JDAccountRefreshStatusReq} [kamiApiCardInfoJdV1JDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountRefreshStatusPut( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq?: KamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountRefreshStatusPut( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoJdV1JDAccountUpdateReq} [kamiApiCardInfoJdV1JDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountUpdatePut( + kamiApiCardInfoJdV1JDAccountUpdateReq?: KamiApiCardInfoJdV1JDAccountUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountUpdatePut( + kamiApiCardInfoJdV1JDAccountUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoJdV1JDAccountUpdateStatusReq} [kamiApiCardInfoJdV1JDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardAccountUpdateStatusPut( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq?: KamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardAccountUpdateStatusPut( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardConfigGetGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardConfigGetGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoJdV1JDConfigSetReq} [kamiApiCardInfoJdV1JDConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardConfigSetPost( + kamiApiCardInfoJdV1JDConfigSetReq?: KamiApiCardInfoJdV1JDConfigSetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardConfigSetPost( + kamiApiCardInfoJdV1JDConfigSetReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardOrderCallbackGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardOrderGetHistoryListGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {Array} [dateRange] 时间范围 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderListGet( + current: number, + pageSize: ApiCardInfoJDCardOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + dateRange?: Array, + accountNickName?: string, + accountCk?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + dateRange, + accountNickName, + accountCk, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoJdV1SubmitReq} [kamiApiCardInfoJdV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderSubmitPost( + kamiApiCardInfoJdV1SubmitReq?: KamiApiCardInfoJdV1SubmitReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardOrderSubmitPost(kamiApiCardInfoJdV1SubmitReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoJDCardOrderSummaryGet( + current: number, + pageSize: ApiCardInfoJDCardOrderSummaryGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoJDCardOrderSummaryGet(current, pageSize, roadUid, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountBatchAddPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountBatchAddPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountCheckCookiePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountCheckCookiePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountCheckPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountCheckPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountCreatePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountCreatePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountDownloadGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountDownloadGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountDownloadTemplateGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountRefreshStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountRefreshStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountUpdatePut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountUpdatePut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoOriginalJDCardAccountUpdateStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoOriginalJDCardAccountUpdateStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchAddReq} [kamiApiCardInfoWalmartV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountBatchAddPost( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq?: KamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountBatchAddPost( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoWalmartV1AccountCookieCheckReq} [kamiApiCardInfoWalmartV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountCheckCookiePost( + kamiApiCardInfoWalmartV1AccountCookieCheckReq?: KamiApiCardInfoWalmartV1AccountCookieCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountCheckCookiePost( + kamiApiCardInfoWalmartV1AccountCookieCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq} [kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountCheckPost( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq?: KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountCheckPost( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountCreateReq} [kamiApiCardInfoWalmartV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountCreatePost( + kamiApiCardInfoWalmartV1AccountCreateReq?: KamiApiCardInfoWalmartV1AccountCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountCreatePost( + kamiApiCardInfoWalmartV1AccountCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDailySummaryGet( + current: number, + pageSize: ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountDailySummaryGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除沃尔玛充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDownloadGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountDownloadGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountDownloadTemplateGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取沃尔玛充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {string} [createdUserName] 创建用户昵称 + * @param {number} [groupId] 分组ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountGetListGet( + current: number, + pageSize: ApiCardInfoWalmartAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + createdUserName?: string, + groupId?: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + createdUserName, + groupId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取沃尔玛账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 导入沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountLoadReq} [kamiApiCardInfoWalmartV1AccountLoadReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountLoadPost( + kamiApiCardInfoWalmartV1AccountLoadReq?: KamiApiCardInfoWalmartV1AccountLoadReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountLoadPost( + kamiApiCardInfoWalmartV1AccountLoadReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoWalmartV1AccountRefreshStatusReq} [kamiApiCardInfoWalmartV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountRefreshStatusPut( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq?: KamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountRefreshStatusPut( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检测账户状态 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountStatusDetectGet( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountStatusDetectGet(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 下载充值账户 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountSummaryDownloadGet( + current: number, + pageSize: ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountSummaryDownloadGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountUpdateReq} [kamiApiCardInfoWalmartV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountUpdatePut( + kamiApiCardInfoWalmartV1AccountUpdateReq?: KamiApiCardInfoWalmartV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountUpdatePut( + kamiApiCardInfoWalmartV1AccountUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改沃尔玛账户状态 + * @param {KamiApiCardInfoWalmartV1AccountUpdateStatusReq} [kamiApiCardInfoWalmartV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartAccountUpdateStatusPut( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq?: KamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartAccountUpdateStatusPut( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取沃尔玛卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartConfigGetGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartConfigGetGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置 + * @param {KamiApiCardInfoWalmartV1RedeemConfigSetReq} [kamiApiCardInfoWalmartV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartConfigSetPost( + kamiApiCardInfoWalmartV1RedeemConfigSetReq?: KamiApiCardInfoWalmartV1RedeemConfigSetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartConfigSetPost( + kamiApiCardInfoWalmartV1RedeemConfigSetReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 添加沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupAddReq} [kamiApiCardInfoWalmartV1GroupAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupAddPost( + kamiApiCardInfoWalmartV1GroupAddReq?: KamiApiCardInfoWalmartV1GroupAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartGroupAddPost( + kamiApiCardInfoWalmartV1GroupAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取所有沃尔玛账户分组 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupAllListGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartGroupAllListGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改沃尔玛账户分组 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartGroupDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取沃尔玛账户分组 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupListGet( + current: number, + pageSize: ApiCardInfoWalmartGroupListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartGroupListGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 分组统计 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupStatGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户名 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupStatGet( + current: number, + pageSize: ApiCardInfoWalmartGroupStatGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartGroupStatGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupUpdateReq} [kamiApiCardInfoWalmartV1GroupUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartGroupUpdatePut( + kamiApiCardInfoWalmartV1GroupUpdateReq?: KamiApiCardInfoWalmartV1GroupUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartGroupUpdatePut( + kamiApiCardInfoWalmartV1GroupUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartOrderCallbackGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartOrderGetHistoryListGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {number} [groupId] 组ID + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderListGet( + current: number, + pageSize: ApiCardInfoWalmartOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + groupId?: number, + accountCk?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + accountNickName, + groupId, + accountCk, + dateRange, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 重置账户状态 + * @param {KamiApiCardInfoWalmartV1OrderStatusResetReq} [kamiApiCardInfoWalmartV1OrderStatusResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderStatusResetPut( + kamiApiCardInfoWalmartV1OrderStatusResetReq?: KamiApiCardInfoWalmartV1OrderStatusResetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartOrderStatusResetPut( + kamiApiCardInfoWalmartV1OrderStatusResetReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 充值 + * @param {KamiApiCardInfoWalmartV1SubmitReq} [kamiApiCardInfoWalmartV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderSubmitPost( + kamiApiCardInfoWalmartV1SubmitReq?: KamiApiCardInfoWalmartV1SubmitReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartOrderSubmitPost( + kamiApiCardInfoWalmartV1SubmitReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiCardInfoWalmartOrderSummaryGet( + current: number, + pageSize: ApiCardInfoWalmartOrderSummaryGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiCardInfoWalmartOrderSummaryGet(current, pageSize, roadUid, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建通道信息 + * @param {KamiApiChannelV2EntranceCreateReq} [kamiApiChannelV2EntranceCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceCreatePost( + kamiApiChannelV2EntranceCreateReq?: KamiApiChannelV2EntranceCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiChannelEntranceCreatePost( + kamiApiChannelV2EntranceCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除通道信息 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiChannelEntranceDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取通道信息 + * @param {number} current 页数 + * @param {ApiChannelEntranceGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 通道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceGetListGet( + current: number, + pageSize: ApiChannelEntranceGetListGetPageSizeEnum, + name?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiChannelEntranceGetListGet(current, pageSize, name, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改通道信息 + * @param {KamiApiChannelV2EntranceUpdateReq} [kamiApiChannelV2EntranceUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiChannelEntranceUpdatePost( + kamiApiChannelV2EntranceUpdateReq?: KamiApiChannelV2EntranceUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiChannelEntranceUpdatePost( + kamiApiChannelV2EntranceUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取用户信息 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiInfoGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiInfoGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 添加商户 + * @param {KamiApiMerchantV1MerchantConfigAddReq} [kamiApiMerchantV1MerchantConfigAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigAddPost( + kamiApiMerchantV1MerchantConfigAddReq?: KamiApiMerchantV1MerchantConfigAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigAddPost( + kamiApiMerchantV1MerchantConfigAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取商户详细信息 + * @param {string} merchantUid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigGetDetailGet( + merchantUid: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigGetDetailGet(merchantUid, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取商户列表信息 + * @param {number} current 页数 + * @param {ApiMerchantConfigGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [merchantName] 商户名称 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigGetListGet( + current: number, + pageSize: ApiMerchantConfigGetListGetPageSizeEnum, + merchantName?: string, + merchantUid?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigGetListGet( + current, + pageSize, + merchantName, + merchantUid, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 添加一条规则 + * @param {KamiApiMerchantV1StealCreateReq} [kamiApiMerchantV1StealCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleCreatePost( + kamiApiMerchantV1StealCreateReq?: KamiApiMerchantV1StealCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleCreatePost( + kamiApiMerchantV1StealCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取列表 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleListGet( + current: number, + pageSize: ApiMerchantConfigStealRuleListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleListGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取偷卡记录 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleRecordGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleRecordGet( + current: number, + pageSize: ApiMerchantConfigStealRuleRecordGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleRecordGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取偷卡状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleStatusGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleStatusGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置偷卡状态 + * @param {KamiApiMerchantV1StealStatusSetReq} [kamiApiMerchantV1StealStatusSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleStatusPost( + kamiApiMerchantV1StealStatusSetReq?: KamiApiMerchantV1StealStatusSetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleStatusPost( + kamiApiMerchantV1StealStatusSetReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除一条规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleUpdateDelete( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleUpdateDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateReq} [kamiApiMerchantV1StealUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleUpdatePost( + kamiApiMerchantV1StealUpdateReq?: KamiApiMerchantV1StealUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleUpdatePost( + kamiApiMerchantV1StealUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateStatusReq} [kamiApiMerchantV1StealUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigStealRuleUpdateStatusPost( + kamiApiMerchantV1StealUpdateStatusReq?: KamiApiMerchantV1StealUpdateStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigStealRuleUpdateStatusPost( + kamiApiMerchantV1StealUpdateStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 切换商户状态 + * @param {KamiApiMerchantV1MerchantConfigStatusReq} [kamiApiMerchantV1MerchantConfigStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigSwitchStatusPost( + kamiApiMerchantV1MerchantConfigStatusReq?: KamiApiMerchantV1MerchantConfigStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigSwitchStatusPost( + kamiApiMerchantV1MerchantConfigStatusReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改商户信息 + * @param {KamiApiMerchantV1MerchantConfigUpdateReq} [kamiApiMerchantV1MerchantConfigUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantConfigUpdateDetailPost( + kamiApiMerchantV1MerchantConfigUpdateReq?: KamiApiMerchantV1MerchantConfigUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantConfigUpdateDetailPost( + kamiApiMerchantV1MerchantConfigUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 添加商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployAddReq} [kamiApiMerchantV1MerchantDeployAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployAddPost( + kamiApiMerchantV1MerchantDeployAddReq?: KamiApiMerchantV1MerchantDeployAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantDeployAddPost( + kamiApiMerchantV1MerchantDeployAddReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除商户部署通道信息 + * @param {string} merchantUid 商户uid + * @param {string} singleRoadUid 单通道uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployDeleteDelete( + merchantUid: string, + singleRoadUid: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantDeployDeleteDelete(merchantUid, singleRoadUid, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取商户部署通道详情 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployGetDetailGet( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantDeployGetDetailGet(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取商户部署通道信息 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployGetListGet( + merchantUid?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantDeployGetListGet(merchantUid, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 更新商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployUpdateReq} [kamiApiMerchantV1MerchantDeployUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantDeployUpdatePost( + kamiApiMerchantV1MerchantDeployUpdateReq?: KamiApiMerchantV1MerchantDeployUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantDeployUpdatePost( + kamiApiMerchantV1MerchantDeployUpdateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取商户配置选择列表 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantListAllGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantListAllGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户查单详情 + * @param {string} [merchantOrderNo] 商户订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMerchantOrderQueryGet( + merchantOrderNo?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMerchantOrderQueryGet(merchantOrderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 健康检查 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiMonitorHeathcheckGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiMonitorHeathcheckGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取订单汇总 + * @param {number} current 页数 + * @param {ApiOrderInfoSummaryGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderInfoSummaryGetListGet( + current: number, + pageSize: ApiOrderInfoSummaryGetListGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderInfoSummaryGetListGet(current, pageSize, roadUid, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除订单流水 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderLogDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderLogDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取订单流水 + * @param {number} current 页数 + * @param {ApiOrderLogGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderLogGetListGet( + current: number, + pageSize: ApiOrderLogGetListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderLogGetListGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建实时订单 + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormCreatePost( + body?: object, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderOrderFormCreatePost(body, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除实时订单 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderOrderFormDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取实时订单 + * @param {number} current 页数 + * @param {ApiOrderOrderFormGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormGetListGet( + current: number, + pageSize: ApiOrderOrderFormGetListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderOrderFormGetListGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改实时订单 + * @param {KamiApiOrderV1OrderFormUpdateReq} [kamiApiOrderV1OrderFormUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiOrderOrderFormUpdatePost( + kamiApiOrderV1OrderFormUpdateReq?: KamiApiOrderV1OrderFormUpdateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiOrderOrderFormUpdatePost(kamiApiOrderV1OrderFormUpdateReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 天猫对接授权回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountAuthCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountAuthCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取授权appKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查天猫授权状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 创建游戏账户 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq} [kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountCreatePost( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq?: KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountCreatePost( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除游戏账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 随机获取一个游戏账户 + * @param {number} [timeStamp] 时间戳 + * @param {string} [orderNo] 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountGetOneByRandomGet( + timeStamp?: number, + orderNo?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountGetOneByRandomGet( + timeStamp, + orderNo, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取游戏账户列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameAccountListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountNumber] 账户账号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountListGet( + current: number, + pageSize: ApiRechargeTMallGameAccountListGetPageSizeEnum, + accountNumber?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountListGet( + current, + pageSize, + accountNumber, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 改变游戏账户状态 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq} [kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAccountTogglePost( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq?: KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAccountTogglePost( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 阿奇索请求回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameAgisoCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameAgisoCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 同步订单数据 + * @param {KamiApiCardInfoTMallGameV1TMallGameDataSyncReq} [kamiApiCardInfoTMallGameV1TMallGameDataSyncReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameDataSyncPost( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq?: KamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameDataSyncPost( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 查询天猫游戏分类 + * @param {string} [tId] 订单ID + * @param {string} [category] 游戏类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameGetCategoryListGet( + tId?: string, + category?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameGetCategoryListGet(tId, category, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取游戏订单列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] 状态 + * @param {string} [accountNumber] 账号编号 + * @param {string} [orderNo] 订单号 + * @param {string} [merchantOrder] 商户订单号 + * @param {string} [thirdMerchantOrder] 充值账号 + * @param {string} [tMallShopOrder] 天猫店铺订单号 + * @param {Array} [dateRange] 时间范围 + * @param {ApiRechargeTMallGameOrderListGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderListGet( + current: number, + pageSize: ApiRechargeTMallGameOrderListGetPageSizeEnum, + status?: string, + accountNumber?: string, + orderNo?: string, + merchantOrder?: string, + thirdMerchantOrder?: string, + tMallShopOrder?: string, + dateRange?: Array, + callbackType?: ApiRechargeTMallGameOrderListGetCallbackTypeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameOrderListGet( + current, + pageSize, + status, + accountNumber, + orderNo, + merchantOrder, + thirdMerchantOrder, + tMallShopOrder, + dateRange, + callbackType, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 手动将正确设置(纠正)为正确 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq} [kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderModifyStatusSucceedPost( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq?: KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameOrderModifyStatusSucceedPost( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 查询天猫单个订单 + * @param {string} tId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderQueryOneGet( + tId: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameOrderQueryOneGet(tId, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 提交订单 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq} [kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameOrderSubmitPost( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq?: KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameOrderSubmitPost( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 手动回调天猫消息到gateway,用来处理正确订单 + * @param {KamiApiCardInfoTMallGameV1CallBackOrderManualReq} [kamiApiCardInfoTMallGameV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderCallbackByManualPost( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq?: KamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameShopOrderCallbackByManualPost( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取淘宝订单历史 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetHistoryListGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameShopOrderGetHistoryListGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取淘宝订单详情 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 充值账户 + * @param {string} [tMallOrderNo] 淘宝订单号 + * @param {string} [buyerNickName] 买家昵称 + * @param {string} [orderNo] 订单号 + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetListGet( + current: number, + pageSize: ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum, + account?: string, + tMallOrderNo?: string, + buyerNickName?: string, + orderNo?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameShopOrderGetListGet( + current, + pageSize, + account, + tMallOrderNo, + buyerNickName, + orderNo, + dateRange, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取淘宝订单详情 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetOneGet( + orderNo: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameShopOrderGetOneGet(orderNo, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取淘宝订单历史 + * @param {number} shopId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameShopOrderGetShopHistoryListGet( + shopId: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameShopOrderGetShopHistoryListGet(shopId, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取每日订单统计 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [channelName] 渠道名称 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameWorkspaceOrderSummaryGet( + current: number, + pageSize: ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum, + channelName?: string, + callbackType?: ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameWorkspaceOrderSummaryGet( + current, + pageSize, + channelName, + callbackType, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取基本统计信息 + * @param {string} [channelName] 渠道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRechargeTMallGameWorkspaceStatsGet( + channelName?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRechargeTMallGameWorkspaceStatsGet(channelName, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 封单 + * @param {KamiApiRestrictionV1BlockOrderReq} [kamiApiRestrictionV1BlockOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionBlockOrderPost( + kamiApiRestrictionV1BlockOrderReq?: KamiApiRestrictionV1BlockOrderReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRestrictionBlockOrderPost( + kamiApiRestrictionV1BlockOrderReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 收集用户基本IP信息 + * @param {KamiApiRestrictionV1UserInfoCollectionReq} [kamiApiRestrictionV1UserInfoCollectionReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionCollectionUserInfoPost( + kamiApiRestrictionV1UserInfoCollectionReq?: KamiApiRestrictionV1UserInfoCollectionReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRestrictionCollectionUserInfoPost( + kamiApiRestrictionV1UserInfoCollectionReq, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 检查IP是否被允许 + * @param {string} ip IP地址 + * @param {number} merchantDeployID 商户部署ID + * @param {string} orderNo 订单号 + * @param {string} cardPass 充值卡密码 + * @param {string} [deviceId] 设备ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionLocationCheckIPAllowedGet( + ip: string, + merchantDeployID: number, + orderNo: string, + cardPass: string, + deviceId?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRestrictionLocationCheckIPAllowedGet( + ip, + merchantDeployID, + orderNo, + cardPass, + deviceId, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取所有的地理位置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRestrictionLocationGetAllProvinceGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRestrictionLocationGetAllProvinceGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRoadPoolSimpleGetAllGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRoadPoolSimpleGetAllGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiRoadSimpleGetAllGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiRoadSimpleGetAllGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 充值 + * @param {KamiApiSysPaymentV1SysPaymentAddReq} [kamiApiSysPaymentV1SysPaymentAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentAddPost( + kamiApiSysPaymentV1SysPaymentAddReq?: KamiApiSysPaymentV1SysPaymentAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiSysUserPaymentAddPost(kamiApiSysPaymentV1SysPaymentAddReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户钱包详情 + * @param {string} [userId] 用户ID + * @param {number} [paymentId] 钱包ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentGetGet( + userId?: string, + paymentId?: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiSysUserPaymentGetGet(userId, paymentId, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户充值列表 + * @param {number} current 页数 + * @param {ApiSysUserPaymentListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentListGet( + current: number, + pageSize: ApiSysUserPaymentListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiSysUserPaymentListGet(current, pageSize, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户充值/消费流水 + * @param {number} current 页数 + * @param {ApiSysUserPaymentRecordsListGetPageSizeEnum} pageSize 页码 + * @param {string} [userId] + * @param {ApiSysUserPaymentRecordsListGetTransactionTypeEnum} [transactionType] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentRecordsListGet( + current: number, + pageSize: ApiSysUserPaymentRecordsListGetPageSizeEnum, + userId?: string, + transactionType?: ApiSysUserPaymentRecordsListGetTransactionTypeEnum, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiSysUserPaymentRecordsListGet( + current, + pageSize, + userId, + transactionType, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户流水按日汇总 + * @param {number} current 页数 + * @param {ApiSysUserPaymentSummaryListGetPageSizeEnum} pageSize 页码 + * @param {string} [username] + * @param {string} [date] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserPaymentSummaryListGet( + current: number, + pageSize: ApiSysUserPaymentSummaryListGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiSysUserPaymentSummaryListGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户信息统计 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUserStatisticsGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiSysUserStatisticsGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 添加用户 + * @param {KamiApiSysUserV1UserAddReq} [kamiApiSysUserV1UserAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserAddPost( + kamiApiSysUserV1UserAddReq?: KamiApiSysUserV1UserAddReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserAddPost(kamiApiSysUserV1UserAddReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 重置用户密码 + * @param {KamiApiSysUserV1UserChangePwdReq} [kamiApiSysUserV1UserChangePwdReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserChangePwdPut( + kamiApiSysUserV1UserChangePwdReq?: KamiApiSysUserV1UserChangePwdReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserChangePwdPut(kamiApiSysUserV1UserChangePwdReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 禁用&启用用户 + * @param {Array} ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserChangeStatusGet( + ids: Array, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserChangeStatusGet(ids, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 删除用户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserDeleteDelete(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 修改用户 + * @param {KamiApiSysUserV1UserEditReq} [kamiApiSysUserV1UserEditReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserEditPut( + kamiApiSysUserV1UserEditReq?: KamiApiSysUserV1UserEditReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserEditPut(kamiApiSysUserV1UserEditReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取用户信息 + * @param {number} [id] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetEditGet( + id?: number, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserGetEditGet(id, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取所有的商户(简单) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetSimpleAllGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserGetSimpleAllGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 获取用户菜单 + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetUserMenusGet( + authorization?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserGetUserMenusGet(authorization, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 同时获取多个用户 + * @param {Array} ids + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserGetUsersGet( + ids: Array, + authorization?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserGetUsersGet(ids, authorization, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户列表 + * @param {number} current 页数 + * @param {ApiUserListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] + * @param {string} [username] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserListGet( + current: number, + pageSize: ApiUserListGetPageSizeEnum, + status?: string, + username?: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserListGet(current, pageSize, status, username, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户登录 + * @param {KamiApiSysUserLoginV1UserLoginReq} [kamiApiSysUserLoginV1UserLoginReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserLoginPost( + kamiApiSysUserLoginV1UserLoginReq?: KamiApiSysUserLoginV1UserLoginReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserLoginPost(kamiApiSysUserLoginV1UserLoginReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 退出登录 + * @param {string} [authorization] Bearer {{token}} + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserLogoutPost( + authorization?: string, + body?: object, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserLogoutPost(authorization, body, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 用户维护参数获取 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserParamsGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserParamsGet(options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置用户状态 + * @param {KamiApiSysUserV1UserStatusReq} [kamiApiSysUserV1UserStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserSetStatusPut( + kamiApiSysUserV1UserStatusReq?: KamiApiSysUserV1UserStatusReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserSetStatusPut(kamiApiSysUserV1UserStatusReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiSysUserV1UserSuspendOrContinueReq} [kamiApiSysUserV1UserSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserStatusPauseOrRestartPut( + kamiApiSysUserV1UserSuspendOrContinueReq?: KamiApiSysUserV1UserSuspendOrContinueReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserStatusPauseOrRestartPut( + kamiApiSysUserV1UserSuspendOrContinueReq, + options + ) + .then(request => request(axios, basePath)); + } + }; +}; + +/** + * DefaultApi - object-oriented interface + * @export + * @class DefaultApi + * @extends {BaseAPI} + */ +export class DefaultApi extends BaseAPI { + /** + * + * @summary 获取验证码接口 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCaptchaGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCaptchaGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 批量导入账户 + * @param {KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq} [kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountBatchAddPost( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq?: KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountBatchAddPost( + kamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoCreateReq} [kamiApiCardInfoAppleV1CardInfoCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountCreatePost( + kamiApiCardInfoAppleV1CardInfoCreateReq?: KamiApiCardInfoAppleV1CardInfoCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountCreatePost( + kamiApiCardInfoAppleV1CardInfoCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除苹果账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountDownloadTemplateGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetListGetPageSizeEnum, + account?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountGetListGet( + current, + pageSize, + account, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取苹果账户 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountName] 苹果账户名 + * @param {string} [accountId] 苹果账户ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum, + accountName?: string, + accountId?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountGetWalletListGet( + current, + pageSize, + accountName, + accountId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq} [kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountStatusContinueOrRestartPut( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq?: KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountStatusContinueOrRestartPut( + kamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改苹果账户 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateReq} [kamiApiCardInfoAppleV1CardInfoUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountUpdatePut( + kamiApiCardInfoAppleV1CardInfoUpdateReq?: KamiApiCardInfoAppleV1CardInfoUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountUpdatePut( + kamiApiCardInfoAppleV1CardInfoUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改苹果账户状态 + * @param {KamiApiCardInfoAppleV1CardInfoUpdateStatusReq} [kamiApiCardInfoAppleV1CardInfoUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardAccountUpdateStatusPut( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq?: KamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardAccountUpdateStatusPut( + kamiApiCardInfoAppleV1CardInfoUpdateStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardConfigGetGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardConfigGetGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置 + * @param {KamiApiCardInfoAppleV1ConfigSetReq} [kamiApiCardInfoAppleV1ConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardConfigSetPost( + kamiApiCardInfoAppleV1ConfigSetReq?: KamiApiCardInfoAppleV1ConfigSetReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardConfigSetPost( + kamiApiCardInfoAppleV1ConfigSetReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 查询充值订单 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardQueryGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardQueryGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 手动回调iTunes账号到gateway,用来处理正确订单 + * @param {KamiApiCardInfoAppleV1CallBackOrderManualReq} [kamiApiCardInfoAppleV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderCallbackByManualPost( + kamiApiCardInfoAppleV1CallBackOrderManualReq?: KamiApiCardInfoAppleV1CallBackOrderManualReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderCallbackByManualPost( + kamiApiCardInfoAppleV1CallBackOrderManualReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 回调iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeItunesCallbackReq} [kamiApiCardInfoAppleV1RechargeItunesCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderCallbackPost( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq?: KamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderCallbackPost( + kamiApiCardInfoAppleV1RechargeItunesCallbackReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {string} [accountId] 账户ID + * @param {string} [account] 账户 + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [merchantId] 商户ID + * @param {string} [cardPass] 密码 + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderDownloadGet( + accountId?: string, + account?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + merchantId?: string, + cardPass?: string, + startDate?: string, + endDate?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderDownloadGet( + accountId, + account, + attach, + orderNo, + cardNo, + merchantId, + cardPass, + startDate, + endDate, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取礼品卡充值记录 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderGetHistoryListGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderGetHistoryListGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取待处理的iTunes账号 + * @param {KamiApiCardInfoAppleV1RechargeHandlerReq} [kamiApiCardInfoAppleV1RechargeHandlerReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderHandlerPost( + kamiApiCardInfoAppleV1RechargeHandlerReq?: KamiApiCardInfoAppleV1RechargeHandlerReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderHandlerPost( + kamiApiCardInfoAppleV1RechargeHandlerReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 账户 + * @param {string} [accountId] 账户ID + * @param {string} [attach] 附加信息 + * @param {string} [orderNo] 订单ID + * @param {string} [cardNo] 卡号 + * @param {string} [cardPass] 密码 + * @param {string} [merchantId] 商户ID + * @param {string} [startDate] 开始时间 + * @param {string} [endDate] 结束时间 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderListGet( + current: number, + pageSize: ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum, + account?: string, + accountId?: string, + attach?: string, + orderNo?: string, + cardNo?: string, + cardPass?: string, + merchantId?: string, + startDate?: string, + endDate?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderListGet( + current, + pageSize, + account, + accountId, + attach, + orderNo, + cardNo, + cardPass, + merchantId, + startDate, + endDate, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 手动处理金额 + * @param {KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq} [kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq] + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderModifyActualAmountPost( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq?: KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderModifyActualAmountPost( + kamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 重置订单状态 + * @param {KamiApiCardInfoAppleV1RechargeOrderResetStatusReq} [kamiApiCardInfoAppleV1RechargeOrderResetStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderResetStatusPost( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq?: KamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderResetStatusPost( + kamiApiCardInfoAppleV1RechargeOrderResetStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 手动处理订单 + * @param {KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq} [kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq?: KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardRechargeOrderSetOrderSucceedPost( + kamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 添加一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleAddReq} [kamiApiCardInfoAppleV1RechargeStealRuleAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealAddRulePost( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq?: KamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealAddRulePost( + kamiApiCardInfoAppleV1RechargeStealRuleAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除一条偷卡规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealDeleteRuleDelete( + id: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealDeleteRuleDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取偷卡规则列表 + * @param {number} current 页数 + * @param {ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealGetRuleListGet( + current: number, + pageSize: ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealGetRuleListGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取当前是否设置了偷卡 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealGetStatusGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealGetStatusGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置单个规则是否启用 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealSetRuleStatusPut( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealSetRuleStatusPut( + kamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置是否开启偷卡 + * @param {KamiApiCardInfoAppleV1RechargeStealSettingReq} [kamiApiCardInfoAppleV1RechargeStealSettingReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealSetStatusPost( + kamiApiCardInfoAppleV1RechargeStealSettingReq?: KamiApiCardInfoAppleV1RechargeStealSettingReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealSetStatusPost( + kamiApiCardInfoAppleV1RechargeStealSettingReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 更新一条偷卡规则 + * @param {KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq} [kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardStealUpdateRulePut( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq?: KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardStealUpdateRulePut( + kamiApiCardInfoAppleV1RechargeStealRuleUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 充值礼品卡 + * @param {KamiApiCardInfoAppleV1RechargeSubmitReq} [kamiApiCardInfoAppleV1RechargeSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoAppleCardSubmitPost( + kamiApiCardInfoAppleV1RechargeSubmitReq?: KamiApiCardInfoAppleV1RechargeSubmitReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoAppleCardSubmitPost( + kamiApiCardInfoAppleV1RechargeSubmitReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchAddReq} [kamiApiCardInfoCTripV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountBatchAddPost( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq?: KamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountBatchAddPost( + kamiApiCardInfoCTripV1AccountCookieBatchAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoCTripV1AccountCookieCheckReq} [kamiApiCardInfoCTripV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountCheckCookiePost( + kamiApiCardInfoCTripV1AccountCookieCheckReq?: KamiApiCardInfoCTripV1AccountCookieCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountCheckCookiePost( + kamiApiCardInfoCTripV1AccountCookieCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoCTripV1AccountCookieBatchCheckReq} [kamiApiCardInfoCTripV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountCheckPost( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq?: KamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountCheckPost( + kamiApiCardInfoCTripV1AccountCookieBatchCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建携程账户 + * @param {KamiApiCardInfoCTripV1AccountCreateReq} [kamiApiCardInfoCTripV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountCreatePost( + kamiApiCardInfoCTripV1AccountCreateReq?: KamiApiCardInfoCTripV1AccountCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountCreatePost( + kamiApiCardInfoCTripV1AccountCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除携程充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountDownloadGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountDownloadGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountDownloadTemplateGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取携程充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountGetListGet( + current: number, + pageSize: ApiCardInfoCTripAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取携程账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoCTripV1AccountRefreshStatusReq} [kamiApiCardInfoCTripV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountRefreshStatusPut( + kamiApiCardInfoCTripV1AccountRefreshStatusReq?: KamiApiCardInfoCTripV1AccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountRefreshStatusPut( + kamiApiCardInfoCTripV1AccountRefreshStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改携程账户 + * @param {KamiApiCardInfoCTripV1AccountUpdateReq} [kamiApiCardInfoCTripV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountUpdatePut( + kamiApiCardInfoCTripV1AccountUpdateReq?: KamiApiCardInfoCTripV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountUpdatePut( + kamiApiCardInfoCTripV1AccountUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改携程账户状态 + * @param {KamiApiCardInfoCTripV1AccountUpdateStatusReq} [kamiApiCardInfoCTripV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripAccountUpdateStatusPut( + kamiApiCardInfoCTripV1AccountUpdateStatusReq?: KamiApiCardInfoCTripV1AccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripAccountUpdateStatusPut( + kamiApiCardInfoCTripV1AccountUpdateStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取携程卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripConfigGetGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripConfigGetGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置 + * @param {KamiApiCardInfoCTripV1RedeemConfigSetReq} [kamiApiCardInfoCTripV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripConfigSetPost( + kamiApiCardInfoCTripV1RedeemConfigSetReq?: KamiApiCardInfoCTripV1RedeemConfigSetReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripConfigSetPost( + kamiApiCardInfoCTripV1RedeemConfigSetReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripOrderCallbackGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripOrderGetHistoryListGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoCTripOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripOrderListGet( + current: number, + pageSize: ApiCardInfoCTripOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + accountCk?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + accountNickName, + accountCk, + dateRange, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 充值 + * @param {KamiApiCardInfoCTripV1SubmitReq} [kamiApiCardInfoCTripV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoCTripOrderSubmitPost( + kamiApiCardInfoCTripV1SubmitReq?: KamiApiCardInfoCTripV1SubmitReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoCTripOrderSubmitPost(kamiApiCardInfoCTripV1SubmitReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchAddReq} [kamiApiCardInfoJdV1JDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountBatchAddPost( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq?: KamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountBatchAddPost( + kamiApiCardInfoJdV1JDAccountCookieBatchAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoJdV1JDAccountCookieCheckReq} [kamiApiCardInfoJdV1JDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountCheckCookiePost( + kamiApiCardInfoJdV1JDAccountCookieCheckReq?: KamiApiCardInfoJdV1JDAccountCookieCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountCheckCookiePost( + kamiApiCardInfoJdV1JDAccountCookieCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq} [kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountCheckPost( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq?: KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountCheckPost( + kamiApiCardInfoJdV1JDAccountCookieBatchCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoJdV1JDAccountCreateReq} [kamiApiCardInfoJdV1JDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountCreatePost( + kamiApiCardInfoJdV1JDAccountCreateReq?: KamiApiCardInfoJdV1JDAccountCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountCreatePost( + kamiApiCardInfoJdV1JDAccountCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountDownloadGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountDownloadGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountDownloadTemplateGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoJdV1JDAccountRefreshStatusReq} [kamiApiCardInfoJdV1JDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountRefreshStatusPut( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq?: KamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountRefreshStatusPut( + kamiApiCardInfoJdV1JDAccountRefreshStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoJdV1JDAccountUpdateReq} [kamiApiCardInfoJdV1JDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountUpdatePut( + kamiApiCardInfoJdV1JDAccountUpdateReq?: KamiApiCardInfoJdV1JDAccountUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountUpdatePut( + kamiApiCardInfoJdV1JDAccountUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoJdV1JDAccountUpdateStatusReq} [kamiApiCardInfoJdV1JDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardAccountUpdateStatusPut( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq?: KamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardAccountUpdateStatusPut( + kamiApiCardInfoJdV1JDAccountUpdateStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardConfigGetGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardConfigGetGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置 + * @param {KamiApiCardInfoJdV1JDConfigSetReq} [kamiApiCardInfoJdV1JDConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardConfigSetPost( + kamiApiCardInfoJdV1JDConfigSetReq?: KamiApiCardInfoJdV1JDConfigSetReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardConfigSetPost( + kamiApiCardInfoJdV1JDConfigSetReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardOrderCallbackGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardOrderGetHistoryListGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {Array} [dateRange] 时间范围 + * @param {string} [accountNickName] 账户昵称 + * @param {string} [accountCk] 账户cookie + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardOrderListGet( + current: number, + pageSize: ApiCardInfoJDCardOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + dateRange?: Array, + accountNickName?: string, + accountCk?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + dateRange, + accountNickName, + accountCk, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 充值 + * @param {KamiApiCardInfoJdV1SubmitReq} [kamiApiCardInfoJdV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardOrderSubmitPost( + kamiApiCardInfoJdV1SubmitReq?: KamiApiCardInfoJdV1SubmitReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardOrderSubmitPost(kamiApiCardInfoJdV1SubmitReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoJDCardOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoJDCardOrderSummaryGet( + current: number, + pageSize: ApiCardInfoJDCardOrderSummaryGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoJDCardOrderSummaryGet(current, pageSize, roadUid, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountBatchAddPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountBatchAddPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountCheckCookiePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountCheckCookiePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountCheckPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountCheckPost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountCreatePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountCreatePost( + kamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除京东充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountDownloadGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountDownloadGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountDownloadTemplateGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountGetListGet( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取京东账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountRefreshStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountRefreshStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改京东账户 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountUpdatePut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountUpdatePut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改京东账户状态 + * @param {KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq} [kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoOriginalJDCardAccountUpdateStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq?: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoOriginalJDCardAccountUpdateStatusPut( + kamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchAddReq} [kamiApiCardInfoWalmartV1AccountCookieBatchAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountBatchAddPost( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq?: KamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountBatchAddPost( + kamiApiCardInfoWalmartV1AccountCookieBatchAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检测cookie是否可用 + * @param {KamiApiCardInfoWalmartV1AccountCookieCheckReq} [kamiApiCardInfoWalmartV1AccountCookieCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountCheckCookiePost( + kamiApiCardInfoWalmartV1AccountCookieCheckReq?: KamiApiCardInfoWalmartV1AccountCookieCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountCheckCookiePost( + kamiApiCardInfoWalmartV1AccountCookieCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查上传礼品卡是否正常 + * @param {KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq} [kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountCheckPost( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq?: KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountCheckPost( + kamiApiCardInfoWalmartV1AccountCookieBatchCheckReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountCreateReq} [kamiApiCardInfoWalmartV1AccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountCreatePost( + kamiApiCardInfoWalmartV1AccountCreateReq?: KamiApiCardInfoWalmartV1AccountCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountCreatePost( + kamiApiCardInfoWalmartV1AccountCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountDailySummaryGet( + current: number, + pageSize: ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountDailySummaryGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除沃尔玛充值卡 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载充值账户 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountDownloadGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountDownloadGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载导入模板 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountDownloadTemplateGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountDownloadTemplateGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取沃尔玛充值卡列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 账户名称 + * @param {string} [nickName] 用户昵称 + * @param {string} [cookie] + * @param {string} [createdUserName] 创建用户昵称 + * @param {number} [groupId] 分组ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountGetListGet( + current: number, + pageSize: ApiCardInfoWalmartAccountGetListGetPageSizeEnum, + name?: string, + nickName?: string, + cookie?: string, + createdUserName?: string, + groupId?: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountGetListGet( + current, + pageSize, + name, + nickName, + cookie, + createdUserName, + groupId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取沃尔玛账户流水 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum} pageSize 页码 + * @param {string} accountId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountGetWalletListGet( + current: number, + pageSize: ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum, + accountId: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountGetWalletListGet( + current, + pageSize, + accountId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 导入沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountLoadReq} [kamiApiCardInfoWalmartV1AccountLoadReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountLoadPost( + kamiApiCardInfoWalmartV1AccountLoadReq?: KamiApiCardInfoWalmartV1AccountLoadReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountLoadPost( + kamiApiCardInfoWalmartV1AccountLoadReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 刷新账号充值状态 + * @param {KamiApiCardInfoWalmartV1AccountRefreshStatusReq} [kamiApiCardInfoWalmartV1AccountRefreshStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountRefreshStatusPut( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq?: KamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountRefreshStatusPut( + kamiApiCardInfoWalmartV1AccountRefreshStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检测账户状态 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountStatusDetectGet( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountStatusDetectGet(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 下载充值账户 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountSummaryDownloadGet( + current: number, + pageSize: ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountSummaryDownloadGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改沃尔玛账户 + * @param {KamiApiCardInfoWalmartV1AccountUpdateReq} [kamiApiCardInfoWalmartV1AccountUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountUpdatePut( + kamiApiCardInfoWalmartV1AccountUpdateReq?: KamiApiCardInfoWalmartV1AccountUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountUpdatePut( + kamiApiCardInfoWalmartV1AccountUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改沃尔玛账户状态 + * @param {KamiApiCardInfoWalmartV1AccountUpdateStatusReq} [kamiApiCardInfoWalmartV1AccountUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartAccountUpdateStatusPut( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq?: KamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartAccountUpdateStatusPut( + kamiApiCardInfoWalmartV1AccountUpdateStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取沃尔玛卡片设置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartConfigGetGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartConfigGetGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置 + * @param {KamiApiCardInfoWalmartV1RedeemConfigSetReq} [kamiApiCardInfoWalmartV1RedeemConfigSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartConfigSetPost( + kamiApiCardInfoWalmartV1RedeemConfigSetReq?: KamiApiCardInfoWalmartV1RedeemConfigSetReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartConfigSetPost( + kamiApiCardInfoWalmartV1RedeemConfigSetReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 添加沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupAddReq} [kamiApiCardInfoWalmartV1GroupAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartGroupAddPost( + kamiApiCardInfoWalmartV1GroupAddReq?: KamiApiCardInfoWalmartV1GroupAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartGroupAddPost( + kamiApiCardInfoWalmartV1GroupAddReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取所有沃尔玛账户分组 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartGroupAllListGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartGroupAllListGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改沃尔玛账户分组 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartGroupDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartGroupDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取沃尔玛账户分组 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartGroupListGet( + current: number, + pageSize: ApiCardInfoWalmartGroupListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartGroupListGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 分组统计 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartGroupStatGetPageSizeEnum} pageSize 页码 + * @param {string} [username] 用户名 + * @param {string} [date] 日期 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartGroupStatGet( + current: number, + pageSize: ApiCardInfoWalmartGroupStatGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartGroupStatGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改沃尔玛账户分组 + * @param {KamiApiCardInfoWalmartV1GroupUpdateReq} [kamiApiCardInfoWalmartV1GroupUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartGroupUpdatePut( + kamiApiCardInfoWalmartV1GroupUpdateReq?: KamiApiCardInfoWalmartV1GroupUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartGroupUpdatePut( + kamiApiCardInfoWalmartV1GroupUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 订单回调 + * @param {string} orderNo 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartOrderCallbackGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartOrderCallbackGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {string} [orderNo] 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartOrderGetHistoryListGet( + orderNo?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartOrderGetHistoryListGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取充值记录列表 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [giftCardPwd] 礼品卡密码 + * @param {string} [merchantId] 商户ID + * @param {string} [attach] 附加信息 + * @param {string} [accountNickName] 账户昵称 + * @param {number} [groupId] 组ID + * @param {string} [accountCk] 账户cookie + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartOrderListGet( + current: number, + pageSize: ApiCardInfoWalmartOrderListGetPageSizeEnum, + giftCardPwd?: string, + merchantId?: string, + attach?: string, + accountNickName?: string, + groupId?: number, + accountCk?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartOrderListGet( + current, + pageSize, + giftCardPwd, + merchantId, + attach, + accountNickName, + groupId, + accountCk, + dateRange, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 重置账户状态 + * @param {KamiApiCardInfoWalmartV1OrderStatusResetReq} [kamiApiCardInfoWalmartV1OrderStatusResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartOrderStatusResetPut( + kamiApiCardInfoWalmartV1OrderStatusResetReq?: KamiApiCardInfoWalmartV1OrderStatusResetReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartOrderStatusResetPut( + kamiApiCardInfoWalmartV1OrderStatusResetReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 充值 + * @param {KamiApiCardInfoWalmartV1SubmitReq} [kamiApiCardInfoWalmartV1SubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartOrderSubmitPost( + kamiApiCardInfoWalmartV1SubmitReq?: KamiApiCardInfoWalmartV1SubmitReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartOrderSubmitPost( + kamiApiCardInfoWalmartV1SubmitReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 每日汇总 + * @param {number} current 页数 + * @param {ApiCardInfoWalmartOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiCardInfoWalmartOrderSummaryGet( + current: number, + pageSize: ApiCardInfoWalmartOrderSummaryGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiCardInfoWalmartOrderSummaryGet(current, pageSize, roadUid, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建通道信息 + * @param {KamiApiChannelV2EntranceCreateReq} [kamiApiChannelV2EntranceCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiChannelEntranceCreatePost( + kamiApiChannelV2EntranceCreateReq?: KamiApiChannelV2EntranceCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiChannelEntranceCreatePost(kamiApiChannelV2EntranceCreateReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除通道信息 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiChannelEntranceDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiChannelEntranceDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取通道信息 + * @param {number} current 页数 + * @param {ApiChannelEntranceGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [name] 通道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiChannelEntranceGetListGet( + current: number, + pageSize: ApiChannelEntranceGetListGetPageSizeEnum, + name?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiChannelEntranceGetListGet(current, pageSize, name, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改通道信息 + * @param {KamiApiChannelV2EntranceUpdateReq} [kamiApiChannelV2EntranceUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiChannelEntranceUpdatePost( + kamiApiChannelV2EntranceUpdateReq?: KamiApiChannelV2EntranceUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiChannelEntranceUpdatePost(kamiApiChannelV2EntranceUpdateReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取用户信息 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiInfoGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiInfoGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 添加商户 + * @param {KamiApiMerchantV1MerchantConfigAddReq} [kamiApiMerchantV1MerchantConfigAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigAddPost( + kamiApiMerchantV1MerchantConfigAddReq?: KamiApiMerchantV1MerchantConfigAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigAddPost(kamiApiMerchantV1MerchantConfigAddReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取商户详细信息 + * @param {string} merchantUid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigGetDetailGet( + merchantUid: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigGetDetailGet(merchantUid, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取商户列表信息 + * @param {number} current 页数 + * @param {ApiMerchantConfigGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [merchantName] 商户名称 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigGetListGet( + current: number, + pageSize: ApiMerchantConfigGetListGetPageSizeEnum, + merchantName?: string, + merchantUid?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigGetListGet( + current, + pageSize, + merchantName, + merchantUid, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 添加一条规则 + * @param {KamiApiMerchantV1StealCreateReq} [kamiApiMerchantV1StealCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleCreatePost( + kamiApiMerchantV1StealCreateReq?: KamiApiMerchantV1StealCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleCreatePost( + kamiApiMerchantV1StealCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取列表 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleListGet( + current: number, + pageSize: ApiMerchantConfigStealRuleListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleListGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取偷卡记录 + * @param {number} current 页数 + * @param {ApiMerchantConfigStealRuleRecordGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleRecordGet( + current: number, + pageSize: ApiMerchantConfigStealRuleRecordGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleRecordGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取偷卡状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleStatusGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleStatusGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置偷卡状态 + * @param {KamiApiMerchantV1StealStatusSetReq} [kamiApiMerchantV1StealStatusSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleStatusPost( + kamiApiMerchantV1StealStatusSetReq?: KamiApiMerchantV1StealStatusSetReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleStatusPost( + kamiApiMerchantV1StealStatusSetReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除一条规则 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleUpdateDelete( + id: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleUpdateDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateReq} [kamiApiMerchantV1StealUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleUpdatePost( + kamiApiMerchantV1StealUpdateReq?: KamiApiMerchantV1StealUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleUpdatePost( + kamiApiMerchantV1StealUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 更新一条规则 + * @param {KamiApiMerchantV1StealUpdateStatusReq} [kamiApiMerchantV1StealUpdateStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigStealRuleUpdateStatusPost( + kamiApiMerchantV1StealUpdateStatusReq?: KamiApiMerchantV1StealUpdateStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigStealRuleUpdateStatusPost( + kamiApiMerchantV1StealUpdateStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 切换商户状态 + * @param {KamiApiMerchantV1MerchantConfigStatusReq} [kamiApiMerchantV1MerchantConfigStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigSwitchStatusPost( + kamiApiMerchantV1MerchantConfigStatusReq?: KamiApiMerchantV1MerchantConfigStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigSwitchStatusPost( + kamiApiMerchantV1MerchantConfigStatusReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改商户信息 + * @param {KamiApiMerchantV1MerchantConfigUpdateReq} [kamiApiMerchantV1MerchantConfigUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantConfigUpdateDetailPost( + kamiApiMerchantV1MerchantConfigUpdateReq?: KamiApiMerchantV1MerchantConfigUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantConfigUpdateDetailPost( + kamiApiMerchantV1MerchantConfigUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 添加商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployAddReq} [kamiApiMerchantV1MerchantDeployAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantDeployAddPost( + kamiApiMerchantV1MerchantDeployAddReq?: KamiApiMerchantV1MerchantDeployAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantDeployAddPost(kamiApiMerchantV1MerchantDeployAddReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除商户部署通道信息 + * @param {string} merchantUid 商户uid + * @param {string} singleRoadUid 单通道uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantDeployDeleteDelete( + merchantUid: string, + singleRoadUid: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantDeployDeleteDelete(merchantUid, singleRoadUid, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取商户部署通道详情 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantDeployGetDetailGet( + id: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantDeployGetDetailGet(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取商户部署通道信息 + * @param {string} [merchantUid] 商户uid + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantDeployGetListGet( + merchantUid?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantDeployGetListGet(merchantUid, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 更新商户部署通道信息 + * @param {KamiApiMerchantV1MerchantDeployUpdateReq} [kamiApiMerchantV1MerchantDeployUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantDeployUpdatePost( + kamiApiMerchantV1MerchantDeployUpdateReq?: KamiApiMerchantV1MerchantDeployUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantDeployUpdatePost( + kamiApiMerchantV1MerchantDeployUpdateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取商户配置选择列表 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantListAllGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiMerchantListAllGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户查单详情 + * @param {string} [merchantOrderNo] 商户订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMerchantOrderQueryGet( + merchantOrderNo?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiMerchantOrderQueryGet(merchantOrderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 健康检查 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiMonitorHeathcheckGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiMonitorHeathcheckGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取订单汇总 + * @param {number} current 页数 + * @param {ApiOrderInfoSummaryGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [roadUid] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderInfoSummaryGetListGet( + current: number, + pageSize: ApiOrderInfoSummaryGetListGetPageSizeEnum, + roadUid?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiOrderInfoSummaryGetListGet(current, pageSize, roadUid, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除订单流水 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderLogDeleteDelete(id: number, options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiOrderLogDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取订单流水 + * @param {number} current 页数 + * @param {ApiOrderLogGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderLogGetListGet( + current: number, + pageSize: ApiOrderLogGetListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiOrderLogGetListGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建实时订单 + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderOrderFormCreatePost( + body?: object, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiOrderOrderFormCreatePost(body, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除实时订单 + * @param {number} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderOrderFormDeleteDelete( + id: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiOrderOrderFormDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取实时订单 + * @param {number} current 页数 + * @param {ApiOrderOrderFormGetListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderOrderFormGetListGet( + current: number, + pageSize: ApiOrderOrderFormGetListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiOrderOrderFormGetListGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改实时订单 + * @param {KamiApiOrderV1OrderFormUpdateReq} [kamiApiOrderV1OrderFormUpdateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiOrderOrderFormUpdatePost( + kamiApiOrderV1OrderFormUpdateReq?: KamiApiOrderV1OrderFormUpdateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiOrderOrderFormUpdatePost(kamiApiOrderV1OrderFormUpdateReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 天猫对接授权回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountAuthCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountAuthCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取授权appKey + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountAuthGetAuthorizeKeyGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查天猫授权状态 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountAuthGetTMallAuthStatusGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 创建游戏账户 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq} [kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountCreatePost( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq?: KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountCreatePost( + kamiApiCardInfoTMallGameV1TMallGameAccountCreateReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除游戏账户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountDeleteDelete( + id: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 随机获取一个游戏账户 + * @param {number} [timeStamp] 时间戳 + * @param {string} [orderNo] 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountGetOneByRandomGet( + timeStamp?: number, + orderNo?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountGetOneByRandomGet(timeStamp, orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取游戏账户列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameAccountListGetPageSizeEnum} pageSize 页码 + * @param {string} [accountNumber] 账户账号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountListGet( + current: number, + pageSize: ApiRechargeTMallGameAccountListGetPageSizeEnum, + accountNumber?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountListGet( + current, + pageSize, + accountNumber, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 改变游戏账户状态 + * @param {KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq} [kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAccountTogglePost( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq?: KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAccountTogglePost( + kamiApiCardInfoTMallGameV1TMallGameAccountToggleReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 阿奇索请求回调 + * @param {KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq} [kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameAgisoCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq?: KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameAgisoCallbackPost( + kamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 同步订单数据 + * @param {KamiApiCardInfoTMallGameV1TMallGameDataSyncReq} [kamiApiCardInfoTMallGameV1TMallGameDataSyncReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameDataSyncPost( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq?: KamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameDataSyncPost( + kamiApiCardInfoTMallGameV1TMallGameDataSyncReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 查询天猫游戏分类 + * @param {string} [tId] 订单ID + * @param {string} [category] 游戏类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameGetCategoryListGet( + tId?: string, + category?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameGetCategoryListGet(tId, category, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取游戏订单列表 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameOrderListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] 状态 + * @param {string} [accountNumber] 账号编号 + * @param {string} [orderNo] 订单号 + * @param {string} [merchantOrder] 商户订单号 + * @param {string} [thirdMerchantOrder] 充值账号 + * @param {string} [tMallShopOrder] 天猫店铺订单号 + * @param {Array} [dateRange] 时间范围 + * @param {ApiRechargeTMallGameOrderListGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameOrderListGet( + current: number, + pageSize: ApiRechargeTMallGameOrderListGetPageSizeEnum, + status?: string, + accountNumber?: string, + orderNo?: string, + merchantOrder?: string, + thirdMerchantOrder?: string, + tMallShopOrder?: string, + dateRange?: Array, + callbackType?: ApiRechargeTMallGameOrderListGetCallbackTypeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameOrderListGet( + current, + pageSize, + status, + accountNumber, + orderNo, + merchantOrder, + thirdMerchantOrder, + tMallShopOrder, + dateRange, + callbackType, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 手动将正确设置(纠正)为正确 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq} [kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameOrderModifyStatusSucceedPost( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq?: KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameOrderModifyStatusSucceedPost( + kamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 查询天猫单个订单 + * @param {string} tId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameOrderQueryOneGet( + tId: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameOrderQueryOneGet(tId, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 提交订单 + * @param {KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq} [kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameOrderSubmitPost( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq?: KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameOrderSubmitPost( + kamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 手动回调天猫消息到gateway,用来处理正确订单 + * @param {KamiApiCardInfoTMallGameV1CallBackOrderManualReq} [kamiApiCardInfoTMallGameV1CallBackOrderManualReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameShopOrderCallbackByManualPost( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq?: KamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameShopOrderCallbackByManualPost( + kamiApiCardInfoTMallGameV1CallBackOrderManualReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取淘宝订单历史 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameShopOrderGetHistoryListGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameShopOrderGetHistoryListGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取淘宝订单详情 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum} pageSize 页码 + * @param {string} [account] 充值账户 + * @param {string} [tMallOrderNo] 淘宝订单号 + * @param {string} [buyerNickName] 买家昵称 + * @param {string} [orderNo] 订单号 + * @param {Array} [dateRange] 时间范围 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameShopOrderGetListGet( + current: number, + pageSize: ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum, + account?: string, + tMallOrderNo?: string, + buyerNickName?: string, + orderNo?: string, + dateRange?: Array, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameShopOrderGetListGet( + current, + pageSize, + account, + tMallOrderNo, + buyerNickName, + orderNo, + dateRange, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取淘宝订单详情 + * @param {string} orderNo 订单号 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameShopOrderGetOneGet( + orderNo: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameShopOrderGetOneGet(orderNo, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取淘宝订单历史 + * @param {number} shopId 订单ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameShopOrderGetShopHistoryListGet( + shopId: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameShopOrderGetShopHistoryListGet(shopId, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取每日订单统计 + * @param {number} current 页数 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum} pageSize 页码 + * @param {string} [channelName] 渠道名称 + * @param {ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum} [callbackType] 回调类型 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameWorkspaceOrderSummaryGet( + current: number, + pageSize: ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum, + channelName?: string, + callbackType?: ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameWorkspaceOrderSummaryGet( + current, + pageSize, + channelName, + callbackType, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取基本统计信息 + * @param {string} [channelName] 渠道名称 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRechargeTMallGameWorkspaceStatsGet( + channelName?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRechargeTMallGameWorkspaceStatsGet(channelName, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 封单 + * @param {KamiApiRestrictionV1BlockOrderReq} [kamiApiRestrictionV1BlockOrderReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRestrictionBlockOrderPost( + kamiApiRestrictionV1BlockOrderReq?: KamiApiRestrictionV1BlockOrderReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRestrictionBlockOrderPost(kamiApiRestrictionV1BlockOrderReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 收集用户基本IP信息 + * @param {KamiApiRestrictionV1UserInfoCollectionReq} [kamiApiRestrictionV1UserInfoCollectionReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRestrictionCollectionUserInfoPost( + kamiApiRestrictionV1UserInfoCollectionReq?: KamiApiRestrictionV1UserInfoCollectionReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRestrictionCollectionUserInfoPost( + kamiApiRestrictionV1UserInfoCollectionReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 检查IP是否被允许 + * @param {string} ip IP地址 + * @param {number} merchantDeployID 商户部署ID + * @param {string} orderNo 订单号 + * @param {string} cardPass 充值卡密码 + * @param {string} [deviceId] 设备ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRestrictionLocationCheckIPAllowedGet( + ip: string, + merchantDeployID: number, + orderNo: string, + cardPass: string, + deviceId?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRestrictionLocationCheckIPAllowedGet( + ip, + merchantDeployID, + orderNo, + cardPass, + deviceId, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取所有的地理位置 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRestrictionLocationGetAllProvinceGet( + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiRestrictionLocationGetAllProvinceGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRoadPoolSimpleGetAllGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiRoadPoolSimpleGetAllGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取支付通道 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiRoadSimpleGetAllGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiRoadSimpleGetAllGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 充值 + * @param {KamiApiSysPaymentV1SysPaymentAddReq} [kamiApiSysPaymentV1SysPaymentAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiSysUserPaymentAddPost( + kamiApiSysPaymentV1SysPaymentAddReq?: KamiApiSysPaymentV1SysPaymentAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiSysUserPaymentAddPost(kamiApiSysPaymentV1SysPaymentAddReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户钱包详情 + * @param {string} [userId] 用户ID + * @param {number} [paymentId] 钱包ID + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiSysUserPaymentGetGet( + userId?: string, + paymentId?: number, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiSysUserPaymentGetGet(userId, paymentId, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户充值列表 + * @param {number} current 页数 + * @param {ApiSysUserPaymentListGetPageSizeEnum} pageSize 页码 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiSysUserPaymentListGet( + current: number, + pageSize: ApiSysUserPaymentListGetPageSizeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiSysUserPaymentListGet(current, pageSize, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户充值/消费流水 + * @param {number} current 页数 + * @param {ApiSysUserPaymentRecordsListGetPageSizeEnum} pageSize 页码 + * @param {string} [userId] + * @param {ApiSysUserPaymentRecordsListGetTransactionTypeEnum} [transactionType] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiSysUserPaymentRecordsListGet( + current: number, + pageSize: ApiSysUserPaymentRecordsListGetPageSizeEnum, + userId?: string, + transactionType?: ApiSysUserPaymentRecordsListGetTransactionTypeEnum, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiSysUserPaymentRecordsListGet( + current, + pageSize, + userId, + transactionType, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户流水按日汇总 + * @param {number} current 页数 + * @param {ApiSysUserPaymentSummaryListGetPageSizeEnum} pageSize 页码 + * @param {string} [username] + * @param {string} [date] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiSysUserPaymentSummaryListGet( + current: number, + pageSize: ApiSysUserPaymentSummaryListGetPageSizeEnum, + username?: string, + date?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiSysUserPaymentSummaryListGet( + current, + pageSize, + username, + date, + options + ) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户信息统计 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiSysUserStatisticsGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiSysUserStatisticsGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 添加用户 + * @param {KamiApiSysUserV1UserAddReq} [kamiApiSysUserV1UserAddReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserAddPost( + kamiApiSysUserV1UserAddReq?: KamiApiSysUserV1UserAddReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserAddPost(kamiApiSysUserV1UserAddReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 重置用户密码 + * @param {KamiApiSysUserV1UserChangePwdReq} [kamiApiSysUserV1UserChangePwdReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserChangePwdPut( + kamiApiSysUserV1UserChangePwdReq?: KamiApiSysUserV1UserChangePwdReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserChangePwdPut(kamiApiSysUserV1UserChangePwdReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 禁用&启用用户 + * @param {Array} ids + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserChangeStatusGet( + ids: Array, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserChangeStatusGet(ids, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 删除用户 + * @param {string} id + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserDeleteDelete(id: string, options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiUserDeleteDelete(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 修改用户 + * @param {KamiApiSysUserV1UserEditReq} [kamiApiSysUserV1UserEditReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserEditPut( + kamiApiSysUserV1UserEditReq?: KamiApiSysUserV1UserEditReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserEditPut(kamiApiSysUserV1UserEditReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取用户信息 + * @param {number} [id] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserGetEditGet(id?: number, options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiUserGetEditGet(id, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取所有的商户(简单) + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserGetSimpleAllGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiUserGetSimpleAllGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 获取用户菜单 + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserGetUserMenusGet( + authorization?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserGetUserMenusGet(authorization, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 同时获取多个用户 + * @param {Array} ids + * @param {string} [authorization] Bearer {{token}} + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserGetUsersGet( + ids: Array, + authorization?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserGetUsersGet(ids, authorization, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户列表 + * @param {number} current 页数 + * @param {ApiUserListGetPageSizeEnum} pageSize 页码 + * @param {string} [status] + * @param {string} [username] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserListGet( + current: number, + pageSize: ApiUserListGetPageSizeEnum, + status?: string, + username?: string, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserListGet(current, pageSize, status, username, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户登录 + * @param {KamiApiSysUserLoginV1UserLoginReq} [kamiApiSysUserLoginV1UserLoginReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserLoginPost( + kamiApiSysUserLoginV1UserLoginReq?: KamiApiSysUserLoginV1UserLoginReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserLoginPost(kamiApiSysUserLoginV1UserLoginReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 退出登录 + * @param {string} [authorization] Bearer {{token}} + * @param {object} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserLogoutPost( + authorization?: string, + body?: object, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserLogoutPost(authorization, body, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 用户维护参数获取 + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserParamsGet(options?: RawAxiosRequestConfig) { + return DefaultApiFp(this.configuration) + .apiUserParamsGet(options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置用户状态 + * @param {KamiApiSysUserV1UserStatusReq} [kamiApiSysUserV1UserStatusReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserSetStatusPut( + kamiApiSysUserV1UserStatusReq?: KamiApiSysUserV1UserStatusReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserSetStatusPut(kamiApiSysUserV1UserStatusReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 暂停/恢复账号充值 + * @param {KamiApiSysUserV1UserSuspendOrContinueReq} [kamiApiSysUserV1UserSuspendOrContinueReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof DefaultApi + */ + public apiUserStatusPauseOrRestartPut( + kamiApiSysUserV1UserSuspendOrContinueReq?: KamiApiSysUserV1UserSuspendOrContinueReq, + options?: RawAxiosRequestConfig + ) { + return DefaultApiFp(this.configuration) + .apiUserStatusPauseOrRestartPut( + kamiApiSysUserV1UserSuspendOrContinueReq, + options + ) + .then(request => request(this.axios, this.basePath)); + } +} + +/** + * @export + */ +export const ApiCardInfoAppleCardAccountGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoAppleCardAccountGetListGetPageSizeEnum = + (typeof ApiCardInfoAppleCardAccountGetListGetPageSizeEnum)[keyof typeof ApiCardInfoAppleCardAccountGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum = + (typeof ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum)[keyof typeof ApiCardInfoAppleCardAccountGetWalletListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum = + (typeof ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum)[keyof typeof ApiCardInfoAppleCardRechargeOrderListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum = + (typeof ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum)[keyof typeof ApiCardInfoAppleCardStealGetRuleListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoCTripAccountGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoCTripAccountGetListGetPageSizeEnum = + (typeof ApiCardInfoCTripAccountGetListGetPageSizeEnum)[keyof typeof ApiCardInfoCTripAccountGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum = + (typeof ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum)[keyof typeof ApiCardInfoCTripAccountGetWalletListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoCTripOrderListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoCTripOrderListGetPageSizeEnum = + (typeof ApiCardInfoCTripOrderListGetPageSizeEnum)[keyof typeof ApiCardInfoCTripOrderListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoJDCardAccountGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoJDCardAccountGetListGetPageSizeEnum = + (typeof ApiCardInfoJDCardAccountGetListGetPageSizeEnum)[keyof typeof ApiCardInfoJDCardAccountGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum = + (typeof ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum)[keyof typeof ApiCardInfoJDCardAccountGetWalletListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoJDCardOrderListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoJDCardOrderListGetPageSizeEnum = + (typeof ApiCardInfoJDCardOrderListGetPageSizeEnum)[keyof typeof ApiCardInfoJDCardOrderListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoJDCardOrderSummaryGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoJDCardOrderSummaryGetPageSizeEnum = + (typeof ApiCardInfoJDCardOrderSummaryGetPageSizeEnum)[keyof typeof ApiCardInfoJDCardOrderSummaryGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum = + (typeof ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum)[keyof typeof ApiCardInfoOriginalJDCardAccountGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum = + (typeof ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum)[keyof typeof ApiCardInfoOriginalJDCardAccountGetWalletListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum = + (typeof ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartAccountDailySummaryGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartAccountGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartAccountGetListGetPageSizeEnum = + (typeof ApiCardInfoWalmartAccountGetListGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartAccountGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum = + (typeof ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartAccountGetWalletListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum = + (typeof ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartAccountSummaryDownloadGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartGroupListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartGroupListGetPageSizeEnum = + (typeof ApiCardInfoWalmartGroupListGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartGroupListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartGroupStatGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartGroupStatGetPageSizeEnum = + (typeof ApiCardInfoWalmartGroupStatGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartGroupStatGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartOrderListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartOrderListGetPageSizeEnum = + (typeof ApiCardInfoWalmartOrderListGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartOrderListGetPageSizeEnum]; +/** + * @export + */ +export const ApiCardInfoWalmartOrderSummaryGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiCardInfoWalmartOrderSummaryGetPageSizeEnum = + (typeof ApiCardInfoWalmartOrderSummaryGetPageSizeEnum)[keyof typeof ApiCardInfoWalmartOrderSummaryGetPageSizeEnum]; +/** + * @export + */ +export const ApiChannelEntranceGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiChannelEntranceGetListGetPageSizeEnum = + (typeof ApiChannelEntranceGetListGetPageSizeEnum)[keyof typeof ApiChannelEntranceGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiMerchantConfigGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiMerchantConfigGetListGetPageSizeEnum = + (typeof ApiMerchantConfigGetListGetPageSizeEnum)[keyof typeof ApiMerchantConfigGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiMerchantConfigStealRuleListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiMerchantConfigStealRuleListGetPageSizeEnum = + (typeof ApiMerchantConfigStealRuleListGetPageSizeEnum)[keyof typeof ApiMerchantConfigStealRuleListGetPageSizeEnum]; +/** + * @export + */ +export const ApiMerchantConfigStealRuleRecordGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiMerchantConfigStealRuleRecordGetPageSizeEnum = + (typeof ApiMerchantConfigStealRuleRecordGetPageSizeEnum)[keyof typeof ApiMerchantConfigStealRuleRecordGetPageSizeEnum]; +/** + * @export + */ +export const ApiOrderInfoSummaryGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiOrderInfoSummaryGetListGetPageSizeEnum = + (typeof ApiOrderInfoSummaryGetListGetPageSizeEnum)[keyof typeof ApiOrderInfoSummaryGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiOrderLogGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiOrderLogGetListGetPageSizeEnum = + (typeof ApiOrderLogGetListGetPageSizeEnum)[keyof typeof ApiOrderLogGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiOrderOrderFormGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiOrderOrderFormGetListGetPageSizeEnum = + (typeof ApiOrderOrderFormGetListGetPageSizeEnum)[keyof typeof ApiOrderOrderFormGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiRechargeTMallGameAccountListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiRechargeTMallGameAccountListGetPageSizeEnum = + (typeof ApiRechargeTMallGameAccountListGetPageSizeEnum)[keyof typeof ApiRechargeTMallGameAccountListGetPageSizeEnum]; +/** + * @export + */ +export const ApiRechargeTMallGameOrderListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiRechargeTMallGameOrderListGetPageSizeEnum = + (typeof ApiRechargeTMallGameOrderListGetPageSizeEnum)[keyof typeof ApiRechargeTMallGameOrderListGetPageSizeEnum]; +/** + * @export + */ +export const ApiRechargeTMallGameOrderListGetCallbackTypeEnum = { + Confirm: 'confirm', + Evaluation: 'evaluation' +} as const; +export type ApiRechargeTMallGameOrderListGetCallbackTypeEnum = + (typeof ApiRechargeTMallGameOrderListGetCallbackTypeEnum)[keyof typeof ApiRechargeTMallGameOrderListGetCallbackTypeEnum]; +/** + * @export + */ +export const ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum = + (typeof ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum)[keyof typeof ApiRechargeTMallGameShopOrderGetListGetPageSizeEnum]; +/** + * @export + */ +export const ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum = + (typeof ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum)[keyof typeof ApiRechargeTMallGameWorkspaceOrderSummaryGetPageSizeEnum]; +/** + * @export + */ +export const ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum = { + Confirm: 'confirm', + Evaluation: 'evaluation' +} as const; +export type ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum = + (typeof ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum)[keyof typeof ApiRechargeTMallGameWorkspaceOrderSummaryGetCallbackTypeEnum]; +/** + * @export + */ +export const ApiSysUserPaymentListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiSysUserPaymentListGetPageSizeEnum = + (typeof ApiSysUserPaymentListGetPageSizeEnum)[keyof typeof ApiSysUserPaymentListGetPageSizeEnum]; +/** + * @export + */ +export const ApiSysUserPaymentRecordsListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiSysUserPaymentRecordsListGetPageSizeEnum = + (typeof ApiSysUserPaymentRecordsListGetPageSizeEnum)[keyof typeof ApiSysUserPaymentRecordsListGetPageSizeEnum]; +/** + * @export + */ +export const ApiSysUserPaymentRecordsListGetTransactionTypeEnum = { + Consumption: 'consumption', + DeductionReturn: 'deduction_return', + ManualAdjustment: 'Manual Adjustment', + Deposit: 'deposit' +} as const; +export type ApiSysUserPaymentRecordsListGetTransactionTypeEnum = + (typeof ApiSysUserPaymentRecordsListGetTransactionTypeEnum)[keyof typeof ApiSysUserPaymentRecordsListGetTransactionTypeEnum]; +/** + * @export + */ +export const ApiSysUserPaymentSummaryListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiSysUserPaymentSummaryListGetPageSizeEnum = + (typeof ApiSysUserPaymentSummaryListGetPageSizeEnum)[keyof typeof ApiSysUserPaymentSummaryListGetPageSizeEnum]; +/** + * @export + */ +export const ApiUserListGetPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; +export type ApiUserListGetPageSizeEnum = + (typeof ApiUserListGetPageSizeEnum)[keyof typeof ApiUserListGetPageSizeEnum]; diff --git a/src/api/generated/apis/totpapi.ts b/src/api/generated/apis/totpapi.ts new file mode 100644 index 0000000..2a71ecf --- /dev/null +++ b/src/api/generated/apis/totpapi.ts @@ -0,0 +1,518 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import type { Configuration } from '../configuration'; +import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; +import globalAxios from 'axios'; +// Some imports not used depending on template conditions +// @ts-ignore +import { + DUMMY_BASE_URL, + assertParamExists, + setApiKeyToObject, + setBasicAuthToObject, + setBearerAuthToObject, + setOAuthToObject, + setSearchParams, + serializeDataIfNeeded, + toPathString, + createRequestFunction +} from '../common'; +// @ts-ignore +import { + BASE_PATH, + COLLECTION_FORMATS, + type RequestArgs, + BaseAPI, + RequiredError, + operationServerMap +} from '../base'; +// @ts-ignore +import type { KamiApiSysUserV1TotpImageGetRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1TotpResetReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1TotpResetRes } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1TotpSetReq } from '../models'; +// @ts-ignore +import type { KamiApiSysUserV1TotpStatusGetRes } from '../models'; +/** + * TOTPApi - axios parameter creator + * @export + */ +export const TOTPApiAxiosParamCreator = function ( + configuration?: Configuration +) { + return { + /** + * + * @summary 查看两步验证图像 + * @param {string} code + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpImageGet: async ( + code: string, + options: RawAxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'code' is not null or undefined + assertParamExists('apiUserTotpImageGet', 'code', code); + const localVarPath = `/api/user/totp/image`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (code !== undefined) { + localVarQueryParameter['code'] = code; + } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 重置两步验证 + * @param {KamiApiSysUserV1TotpResetReq} [kamiApiSysUserV1TotpResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpResetPost: async ( + kamiApiSysUserV1TotpResetReq?: KamiApiSysUserV1TotpResetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/totp/reset`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1TotpResetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 设置二步验证 + * @param {KamiApiSysUserV1TotpSetReq} [kamiApiSysUserV1TotpSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpSetPost: async ( + kamiApiSysUserV1TotpSetReq?: KamiApiSysUserV1TotpSetReq, + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/totp/set`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + kamiApiSysUserV1TotpSetReq, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + }, + /** + * + * @summary 确认当前用户是否开启totp + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpStatusGet: async ( + options: RawAxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/api/user/totp/status`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'GET', + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + } + }; +}; + +/** + * TOTPApi - functional programming interface + * @export + */ +export const TOTPApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = TOTPApiAxiosParamCreator(configuration); + return { + /** + * + * @summary 查看两步验证图像 + * @param {string} code + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserTotpImageGet( + code: string, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserTotpImageGet(code, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['TOTPApi.apiUserTotpImageGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 重置两步验证 + * @param {KamiApiSysUserV1TotpResetReq} [kamiApiSysUserV1TotpResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserTotpResetPost( + kamiApiSysUserV1TotpResetReq?: KamiApiSysUserV1TotpResetReq, + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserTotpResetPost( + kamiApiSysUserV1TotpResetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['TOTPApi.apiUserTotpResetPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 设置二步验证 + * @param {KamiApiSysUserV1TotpSetReq} [kamiApiSysUserV1TotpSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserTotpSetPost( + kamiApiSysUserV1TotpSetReq?: KamiApiSysUserV1TotpSetReq, + options?: RawAxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserTotpSetPost( + kamiApiSysUserV1TotpSetReq, + options + ); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['TOTPApi.apiUserTotpSetPost']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + }, + /** + * + * @summary 确认当前用户是否开启totp + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async apiUserTotpStatusGet( + options?: RawAxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.apiUserTotpStatusGet(options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = + operationServerMap['TOTPApi.apiUserTotpStatusGet']?.[ + localVarOperationServerIndex + ]?.url; + return (axios, basePath) => + createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + )(axios, localVarOperationServerBasePath || basePath); + } + }; +}; + +/** + * TOTPApi - factory interface + * @export + */ +export const TOTPApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance +) { + const localVarFp = TOTPApiFp(configuration); + return { + /** + * + * @summary 查看两步验证图像 + * @param {string} code + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpImageGet( + code: string, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserTotpImageGet(code, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 重置两步验证 + * @param {KamiApiSysUserV1TotpResetReq} [kamiApiSysUserV1TotpResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpResetPost( + kamiApiSysUserV1TotpResetReq?: KamiApiSysUserV1TotpResetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserTotpResetPost(kamiApiSysUserV1TotpResetReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 设置二步验证 + * @param {KamiApiSysUserV1TotpSetReq} [kamiApiSysUserV1TotpSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpSetPost( + kamiApiSysUserV1TotpSetReq?: KamiApiSysUserV1TotpSetReq, + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserTotpSetPost(kamiApiSysUserV1TotpSetReq, options) + .then(request => request(axios, basePath)); + }, + /** + * + * @summary 确认当前用户是否开启totp + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiUserTotpStatusGet( + options?: RawAxiosRequestConfig + ): AxiosPromise { + return localVarFp + .apiUserTotpStatusGet(options) + .then(request => request(axios, basePath)); + } + }; +}; + +/** + * TOTPApi - object-oriented interface + * @export + * @class TOTPApi + * @extends {BaseAPI} + */ +export class TOTPApi extends BaseAPI { + /** + * + * @summary 查看两步验证图像 + * @param {string} code + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof TOTPApi + */ + public apiUserTotpImageGet(code: string, options?: RawAxiosRequestConfig) { + return TOTPApiFp(this.configuration) + .apiUserTotpImageGet(code, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 重置两步验证 + * @param {KamiApiSysUserV1TotpResetReq} [kamiApiSysUserV1TotpResetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof TOTPApi + */ + public apiUserTotpResetPost( + kamiApiSysUserV1TotpResetReq?: KamiApiSysUserV1TotpResetReq, + options?: RawAxiosRequestConfig + ) { + return TOTPApiFp(this.configuration) + .apiUserTotpResetPost(kamiApiSysUserV1TotpResetReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 设置二步验证 + * @param {KamiApiSysUserV1TotpSetReq} [kamiApiSysUserV1TotpSetReq] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof TOTPApi + */ + public apiUserTotpSetPost( + kamiApiSysUserV1TotpSetReq?: KamiApiSysUserV1TotpSetReq, + options?: RawAxiosRequestConfig + ) { + return TOTPApiFp(this.configuration) + .apiUserTotpSetPost(kamiApiSysUserV1TotpSetReq, options) + .then(request => request(this.axios, this.basePath)); + } + + /** + * + * @summary 确认当前用户是否开启totp + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof TOTPApi + */ + public apiUserTotpStatusGet(options?: RawAxiosRequestConfig) { + return TOTPApiFp(this.configuration) + .apiUserTotpStatusGet(options) + .then(request => request(this.axios, this.basePath)); + } +} diff --git a/src/api/generated/base.ts b/src/api/generated/base.ts new file mode 100644 index 0000000..7cbe460 --- /dev/null +++ b/src/api/generated/base.ts @@ -0,0 +1,91 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import type { Configuration } from './configuration'; +// Some imports not used depending on template conditions +// @ts-ignore +import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; +import globalAxios from 'axios'; + +export const BASE_PATH = 'http://localhost'.replace(/\/+$/, ''); + +/** + * + * @export + */ +export const COLLECTION_FORMATS = { + csv: ',', + ssv: ' ', + tsv: '\t', + pipes: '|' +}; + +/** + * + * @export + * @interface RequestArgs + */ +export interface RequestArgs { + url: string; + options: RawAxiosRequestConfig; +} + +/** + * + * @export + * @class BaseAPI + */ +export class BaseAPI { + protected configuration: Configuration | undefined; + + constructor( + configuration?: Configuration, + protected basePath: string = BASE_PATH, + protected axios: AxiosInstance = globalAxios + ) { + if (configuration) { + this.configuration = configuration; + this.basePath = configuration.basePath ?? basePath; + } + } +} + +/** + * + * @export + * @class RequiredError + * @extends {Error} + */ +export class RequiredError extends Error { + constructor( + public field: string, + msg?: string + ) { + super(msg); + this.name = 'RequiredError'; + } +} + +interface ServerMap { + [key: string]: { + url: string; + description: string; + }[]; +} + +/** + * + * @export + */ +export const operationServerMap: ServerMap = {}; diff --git a/src/api/generated/common.ts b/src/api/generated/common.ts new file mode 100644 index 0000000..7da7ebd --- /dev/null +++ b/src/api/generated/common.ts @@ -0,0 +1,202 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import type { Configuration } from './configuration'; +import type { RequestArgs } from './base'; +import type { AxiosInstance, AxiosResponse } from 'axios'; +import { RequiredError } from './base'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com'; + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function ( + functionName: string, + paramName: string, + paramValue: unknown +) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError( + paramName, + `Required parameter ${paramName} was null or undefined when calling ${functionName}.` + ); + } +}; + +/** + * + * @export + */ +export const setApiKeyToObject = async function ( + object: any, + keyParamName: string, + configuration?: Configuration +) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = + typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +}; + +/** + * + * @export + */ +export const setBasicAuthToObject = function ( + object: any, + configuration?: Configuration +) { + if (configuration && (configuration.username || configuration.password)) { + object['auth'] = { + username: configuration.username, + password: configuration.password + }; + } +}; + +/** + * + * @export + */ +export const setBearerAuthToObject = async function ( + object: any, + configuration?: Configuration +) { + if (configuration && configuration.accessToken) { + const accessToken = + typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object['Authorization'] = 'Bearer ' + accessToken; + } +}; + +/** + * + * @export + */ +export const setOAuthToObject = async function ( + object: any, + name: string, + scopes: string[], + configuration?: Configuration +) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = + typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object['Authorization'] = 'Bearer ' + localVarAccessTokenValue; + } +}; + +function setFlattenedQueryParams( + urlSearchParams: URLSearchParams, + parameter: any, + key: string = '' +): void { + if (parameter == null) return; + if (typeof parameter === 'object') { + if (Array.isArray(parameter)) { + (parameter as any[]).forEach(item => + setFlattenedQueryParams(urlSearchParams, item, key) + ); + } else { + Object.keys(parameter).forEach(currentKey => + setFlattenedQueryParams( + urlSearchParams, + parameter[currentKey], + `${key}${key !== '' ? '.' : ''}${currentKey}` + ) + ); + } + } else { + if (urlSearchParams.has(key)) { + urlSearchParams.append(key, parameter); + } else { + urlSearchParams.set(key, parameter); + } + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + setFlattenedQueryParams(searchParams, objects); + url.search = searchParams.toString(); +}; + +/** + * + * @export + */ +export const serializeDataIfNeeded = function ( + value: any, + requestOptions: any, + configuration?: Configuration +) { + const nonString = typeof value !== 'string'; + const needsSerialization = + nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : value || ''; +}; + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash; +}; + +/** + * + * @export + */ +export const createRequestFunction = function ( + axiosArgs: RequestArgs, + globalAxios: AxiosInstance, + BASE_PATH: string, + configuration?: Configuration +) { + return >( + axios: AxiosInstance = globalAxios, + basePath: string = BASE_PATH + ) => { + const axiosRequestArgs = { + ...axiosArgs.options, + url: + (axios.defaults.baseURL ? '' : (configuration?.basePath ?? basePath)) + + axiosArgs.url + }; + return axios.request(axiosRequestArgs); + }; +}; diff --git a/src/api/generated/configuration.ts b/src/api/generated/configuration.ts new file mode 100644 index 0000000..c1aa837 --- /dev/null +++ b/src/api/generated/configuration.ts @@ -0,0 +1,132 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +export interface ConfigurationParameters { + apiKey?: + | string + | Promise + | ((name: string) => string) + | ((name: string) => Promise); + username?: string; + password?: string; + accessToken?: + | string + | Promise + | ((name?: string, scopes?: string[]) => string) + | ((name?: string, scopes?: string[]) => Promise); + basePath?: string; + serverIndex?: number; + baseOptions?: any; + formDataCtor?: new () => any; +} + +export class Configuration { + /** + * parameter for apiKey security + * @param name security name + * @memberof Configuration + */ + apiKey?: + | string + | Promise + | ((name: string) => string) + | ((name: string) => Promise); + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + username?: string; + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + password?: string; + /** + * parameter for oauth2 security + * @param name security name + * @param scopes oauth2 scope + * @memberof Configuration + */ + accessToken?: + | string + | Promise + | ((name?: string, scopes?: string[]) => string) + | ((name?: string, scopes?: string[]) => Promise); + /** + * override base path + * + * @type {string} + * @memberof Configuration + */ + basePath?: string; + /** + * override server index + * + * @type {number} + * @memberof Configuration + */ + serverIndex?: number; + /** + * base options for axios calls + * + * @type {any} + * @memberof Configuration + */ + baseOptions?: any; + /** + * The FormData constructor that will be used to create multipart form data + * requests. You can inject this here so that execution environments that + * do not support the FormData class can still run the generated client. + * + * @type {new () => FormData} + */ + formDataCtor?: new () => any; + + constructor(param: ConfigurationParameters = {}) { + this.apiKey = param.apiKey; + this.username = param.username; + this.password = param.password; + this.accessToken = param.accessToken; + this.basePath = param.basePath; + this.serverIndex = param.serverIndex; + this.baseOptions = param.baseOptions; + this.formDataCtor = param.formDataCtor; + } + + /** + * Check if the given MIME is a JSON MIME. + * JSON MIME examples: + * application/json + * application/json; charset=UTF8 + * APPLICATION/JSON + * application/vnd.company+json + * @param mime - MIME (Multipurpose Internet Mail Extensions) + * @return True if the given MIME is JSON, false otherwise. + */ + public isJsonMime(mime: string): boolean { + const jsonMime: RegExp = new RegExp( + '^(application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(;.*)?$', + 'i' + ); + return ( + mime !== null && + (jsonMime.test(mime) || + mime.toLowerCase() === 'application/json-patch+json') + ); + } +} diff --git a/src/api/generated/git_push.sh b/src/api/generated/git_push.sh new file mode 100644 index 0000000..f53a75d --- /dev/null +++ b/src/api/generated/git_push.sh @@ -0,0 +1,57 @@ +#!/bin/sh +# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ +# +# Usage example: /bin/sh ./git_push.sh wing328 openapi-petstore-perl "minor update" "gitlab.com" + +git_user_id=$1 +git_repo_id=$2 +release_note=$3 +git_host=$4 + +if [ "$git_host" = "" ]; then + git_host="github.com" + echo "[INFO] No command line input provided. Set \$git_host to $git_host" +fi + +if [ "$git_user_id" = "" ]; then + git_user_id="GIT_USER_ID" + echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id" +fi + +if [ "$git_repo_id" = "" ]; then + git_repo_id="GIT_REPO_ID" + echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id" +fi + +if [ "$release_note" = "" ]; then + release_note="Minor update" + echo "[INFO] No command line input provided. Set \$release_note to $release_note" +fi + +# Initialize the local directory as a Git repository +git init + +# Adds the files in the local repository and stages them for commit. +git add . + +# Commits the tracked changes and prepares them to be pushed to a remote repository. +git commit -m "$release_note" + +# Sets the new remote +git_remote=$(git remote) +if [ "$git_remote" = "" ]; then # git remote not defined + + if [ "$GIT_TOKEN" = "" ]; then + echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment." + git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:"${GIT_TOKEN}"@${git_host}/${git_user_id}/${git_repo_id}.git + fi + +fi + +git pull origin master + +# Pushes (Forces) the changes in the local repository up to the remote repository +echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git" +git push origin master 2>&1 | grep -v 'To https' diff --git a/src/api/generated/index.ts b/src/api/generated/index.ts new file mode 100644 index 0000000..ffb625a --- /dev/null +++ b/src/api/generated/index.ts @@ -0,0 +1,17 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +export * from './api'; +export * from './configuration'; +export * from './models'; diff --git a/src/api/generated/models/index.ts b/src/api/generated/models/index.ts new file mode 100644 index 0000000..a440df2 --- /dev/null +++ b/src/api/generated/models/index.ts @@ -0,0 +1,331 @@ +export * from './kami-api-card-info-apple-v1-apple-card-list-record'; +export * from './kami-api-card-info-apple-v1-apple-card-list-record-upload-user'; +export * from './kami-api-card-info-apple-v1-call-back-order-manual-req'; +export * from './kami-api-card-info-apple-v1-card-history-info-list-req'; +export * from './kami-api-card-info-apple-v1-card-history-info-list-res'; +export * from './kami-api-card-info-apple-v1-card-history-model'; +export * from './kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-req'; +export * from './kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-res'; +export * from './kami-api-card-info-apple-v1-card-info-create-req'; +export * from './kami-api-card-info-apple-v1-card-info-delete-req'; +export * from './kami-api-card-info-apple-v1-card-info-list-req'; +export * from './kami-api-card-info-apple-v1-card-info-list-res'; +export * from './kami-api-card-info-apple-v1-card-info-suspend-or-continue-req'; +export * from './kami-api-card-info-apple-v1-card-info-update-req'; +export * from './kami-api-card-info-apple-v1-card-info-update-status-req'; +export * from './kami-api-card-info-apple-v1-config-get-res'; +export * from './kami-api-card-info-apple-v1-config-set-req'; +export * from './kami-api-card-info-apple-v1-recharge-duplicated-card-pass-req'; +export * from './kami-api-card-info-apple-v1-recharge-handler-req'; +export * from './kami-api-card-info-apple-v1-recharge-handler-res'; +export * from './kami-api-card-info-apple-v1-recharge-history-list-req'; +export * from './kami-api-card-info-apple-v1-recharge-history-list-res'; +export * from './kami-api-card-info-apple-v1-recharge-itunes-callback-req'; +export * from './kami-api-card-info-apple-v1-recharge-list-download-req'; +export * from './kami-api-card-info-apple-v1-recharge-list-req'; +export * from './kami-api-card-info-apple-v1-recharge-list-res'; +export * from './kami-api-card-info-apple-v1-recharge-order-modify-actual-amount-req'; +export * from './kami-api-card-info-apple-v1-recharge-order-reset-status-req'; +export * from './kami-api-card-info-apple-v1-recharge-steal-rule-add-req'; +export * from './kami-api-card-info-apple-v1-recharge-steal-rule-delete-req'; +export * from './kami-api-card-info-apple-v1-recharge-steal-rule-list-req'; +export * from './kami-api-card-info-apple-v1-recharge-steal-rule-list-res'; +export * from './kami-api-card-info-apple-v1-recharge-steal-rule-status-update-req'; +export * from './kami-api-card-info-apple-v1-recharge-steal-rule-update-req'; +export * from './kami-api-card-info-apple-v1-recharge-steal-setting-get-res'; +export * from './kami-api-card-info-apple-v1-recharge-steal-setting-req'; +export * from './kami-api-card-info-apple-v1-recharge-submit-query-req'; +export * from './kami-api-card-info-apple-v1-recharge-submit-query-res'; +export * from './kami-api-card-info-apple-v1-recharge-submit-req'; +export * from './kami-api-card-info-apple-v1-recharge-submit-res'; +export * from './kami-api-card-info-ctrip-v1-account-cookie-batch-add-req'; +export * from './kami-api-card-info-ctrip-v1-account-cookie-batch-check-req'; +export * from './kami-api-card-info-ctrip-v1-account-cookie-batch-check-res'; +export * from './kami-api-card-info-ctrip-v1-account-cookie-batch-info'; +export * from './kami-api-card-info-ctrip-v1-account-cookie-check-req'; +export * from './kami-api-card-info-ctrip-v1-account-cookie-check-res'; +export * from './kami-api-card-info-ctrip-v1-account-create-req'; +export * from './kami-api-card-info-ctrip-v1-account-delete-req'; +export * from './kami-api-card-info-ctrip-v1-account-list-record'; +export * from './kami-api-card-info-ctrip-v1-account-list-req'; +export * from './kami-api-card-info-ctrip-v1-account-list-res'; +export * from './kami-api-card-info-ctrip-v1-account-refresh-status-req'; +export * from './kami-api-card-info-ctrip-v1-account-update-req'; +export * from './kami-api-card-info-ctrip-v1-account-update-status-req'; +export * from './kami-api-card-info-ctrip-v1-account-wallet-list-req'; +export * from './kami-api-card-info-ctrip-v1-account-wallet-list-res'; +export * from './kami-api-card-info-ctrip-v1-list-req'; +export * from './kami-api-card-info-ctrip-v1-list-res'; +export * from './kami-api-card-info-ctrip-v1-order-callback-req'; +export * from './kami-api-card-info-ctrip-v1-order-history-req'; +export * from './kami-api-card-info-ctrip-v1-order-history-res'; +export * from './kami-api-card-info-ctrip-v1-redeem-config-get-res'; +export * from './kami-api-card-info-ctrip-v1-redeem-config-set-req'; +export * from './kami-api-card-info-ctrip-v1-submit-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-cookie-batch-add-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-res'; +export * from './kami-api-card-info-jd-v1-jdaccount-cookie-batch-info'; +export * from './kami-api-card-info-jd-v1-jdaccount-cookie-check-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-cookie-check-res'; +export * from './kami-api-card-info-jd-v1-jdaccount-create-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-delete-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-list-record'; +export * from './kami-api-card-info-jd-v1-jdaccount-list-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-list-res'; +export * from './kami-api-card-info-jd-v1-jdaccount-refresh-status-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-update-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-update-status-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-wallet-list-req'; +export * from './kami-api-card-info-jd-v1-jdaccount-wallet-list-res'; +export * from './kami-api-card-info-jd-v1-jdconfig-get-res'; +export * from './kami-api-card-info-jd-v1-jdconfig-set-req'; +export * from './kami-api-card-info-jd-v1-list-req'; +export * from './kami-api-card-info-jd-v1-list-res'; +export * from './kami-api-card-info-jd-v1-order-callback-req'; +export * from './kami-api-card-info-jd-v1-order-history-req'; +export * from './kami-api-card-info-jd-v1-order-history-res'; +export * from './kami-api-card-info-jd-v1-order-summary-list-req'; +export * from './kami-api-card-info-jd-v1-order-summary-list-res'; +export * from './kami-api-card-info-jd-v1-order-summary-record'; +export * from './kami-api-card-info-jd-v1-submit-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-add-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-res'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-res'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-create-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-delete-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-list-record'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-list-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-list-res'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-refresh-status-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-update-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-update-status-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-req'; +export * from './kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-res'; +export * from './kami-api-card-info-tmall-game-v1-call-back-order-manual-req'; +export * from './kami-api-card-info-tmall-game-v1-shop-order-record'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record'; +export * from './kami-api-card-info-tmall-game-v1-tmall-list-record'; +export * from './kami-api-card-info-tmall-game-v1-tmall-list-record-account-info'; +export * from './kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-callback-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-get-key-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-create-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-delete-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-list-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-list-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-tmall-auth-status-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-account-toggle-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-agiso-callback-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-data-sync-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-data-sync-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-category'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-list-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-list-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-modify-status-succeed-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-submit-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-order-submit-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-res'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-stats-req'; +export * from './kami-api-card-info-tmall-game-v1-tmall-game-stats-res'; +export * from './kami-api-card-info-walmart-v1-account-cookie-batch-add-req'; +export * from './kami-api-card-info-walmart-v1-account-cookie-batch-check-req'; +export * from './kami-api-card-info-walmart-v1-account-cookie-batch-check-res'; +export * from './kami-api-card-info-walmart-v1-account-cookie-batch-info'; +export * from './kami-api-card-info-walmart-v1-account-cookie-check-req'; +export * from './kami-api-card-info-walmart-v1-account-cookie-check-res'; +export * from './kami-api-card-info-walmart-v1-account-create-req'; +export * from './kami-api-card-info-walmart-v1-account-daily-summary-req'; +export * from './kami-api-card-info-walmart-v1-account-daily-summary-res'; +export * from './kami-api-card-info-walmart-v1-account-delete-req'; +export * from './kami-api-card-info-walmart-v1-account-info'; +export * from './kami-api-card-info-walmart-v1-account-list-record'; +export * from './kami-api-card-info-walmart-v1-account-list-req'; +export * from './kami-api-card-info-walmart-v1-account-list-res'; +export * from './kami-api-card-info-walmart-v1-account-load-req'; +export * from './kami-api-card-info-walmart-v1-account-refresh-status-req'; +export * from './kami-api-card-info-walmart-v1-account-status-detect-req'; +export * from './kami-api-card-info-walmart-v1-account-status-detect-res'; +export * from './kami-api-card-info-walmart-v1-account-summary-download-req'; +export * from './kami-api-card-info-walmart-v1-account-update-req'; +export * from './kami-api-card-info-walmart-v1-account-update-status-req'; +export * from './kami-api-card-info-walmart-v1-account-wallet-list-req'; +export * from './kami-api-card-info-walmart-v1-account-wallet-list-res'; +export * from './kami-api-card-info-walmart-v1-card-redeem-account-summary'; +export * from './kami-api-card-info-walmart-v1-group-add-req'; +export * from './kami-api-card-info-walmart-v1-group-all-list-res'; +export * from './kami-api-card-info-walmart-v1-group-delete-req'; +export * from './kami-api-card-info-walmart-v1-group-list-req'; +export * from './kami-api-card-info-walmart-v1-group-list-res'; +export * from './kami-api-card-info-walmart-v1-group-stat-req'; +export * from './kami-api-card-info-walmart-v1-group-stat-res'; +export * from './kami-api-card-info-walmart-v1-group-update-req'; +export * from './kami-api-card-info-walmart-v1-list-req'; +export * from './kami-api-card-info-walmart-v1-list-res'; +export * from './kami-api-card-info-walmart-v1-order-callback-req'; +export * from './kami-api-card-info-walmart-v1-order-history-req'; +export * from './kami-api-card-info-walmart-v1-order-history-res'; +export * from './kami-api-card-info-walmart-v1-order-status-reset-req'; +export * from './kami-api-card-info-walmart-v1-order-summary-list-req'; +export * from './kami-api-card-info-walmart-v1-order-summary-list-res'; +export * from './kami-api-card-info-walmart-v1-order-summary-record'; +export * from './kami-api-card-info-walmart-v1-redeem-config-get-res'; +export * from './kami-api-card-info-walmart-v1-redeem-config-set-req'; +export * from './kami-api-card-info-walmart-v1-submit-req'; +export * from './kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity'; +export * from './kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account'; +export * from './kami-api-card-redeem-jd-v1-account-add-req'; +export * from './kami-api-card-redeem-jd-v1-account-delete-req'; +export * from './kami-api-card-redeem-jd-v1-account-get-req'; +export * from './kami-api-card-redeem-jd-v1-account-get-res'; +export * from './kami-api-card-redeem-jd-v1-account-list-req'; +export * from './kami-api-card-redeem-jd-v1-account-list-res'; +export * from './kami-api-card-redeem-jd-v1-account-status-req'; +export * from './kami-api-card-redeem-jd-v1-account-update-req'; +export * from './kami-api-card-redeem-jd-v1-cookie-info'; +export * from './kami-api-card-redeem-jd-v1-order-list-req'; +export * from './kami-api-card-redeem-jd-v1-order-list-res'; +export * from './kami-api-card-redeem-jd-v1-order-list-schema'; +export * from './kami-api-card-redeem-jd-v1-place-order-req'; +export * from './kami-api-card-redeem-jd-v1-place-order-res'; +export * from './kami-api-channel-v2-entrance-create-req'; +export * from './kami-api-channel-v2-entrance-delete-req'; +export * from './kami-api-channel-v2-entrance-list-req'; +export * from './kami-api-channel-v2-entrance-list-res'; +export * from './kami-api-channel-v2-entrance-params'; +export * from './kami-api-channel-v2-entrance-update-req'; +export * from './kami-api-merchant-v1-merchant-all-list-res'; +export * from './kami-api-merchant-v1-merchant-config-add-req'; +export * from './kami-api-merchant-v1-merchant-config-detail-req'; +export * from './kami-api-merchant-v1-merchant-config-detail-res'; +export * from './kami-api-merchant-v1-merchant-config-list-req'; +export * from './kami-api-merchant-v1-merchant-config-list-res'; +export * from './kami-api-merchant-v1-merchant-config-status-req'; +export * from './kami-api-merchant-v1-merchant-config-update-req'; +export * from './kami-api-merchant-v1-merchant-deploy-add-req'; +export * from './kami-api-merchant-v1-merchant-deploy-delete-req'; +export * from './kami-api-merchant-v1-merchant-deploy-get-detail-req'; +export * from './kami-api-merchant-v1-merchant-deploy-get-detail-res'; +export * from './kami-api-merchant-v1-merchant-deploy-list-req'; +export * from './kami-api-merchant-v1-merchant-deploy-list-res'; +export * from './kami-api-merchant-v1-merchant-deploy-record'; +export * from './kami-api-merchant-v1-merchant-deploy-update-req'; +export * from './kami-api-merchant-v1-merchant-hidden-config-entity'; +export * from './kami-api-merchant-v1-merchant-info-record'; +export * from './kami-api-merchant-v1-order-query-record'; +export * from './kami-api-merchant-v1-order-query-req'; +export * from './kami-api-merchant-v1-order-query-res'; +export * from './kami-api-merchant-v1-platform-rate-record'; +export * from './kami-api-merchant-v1-steal-create-req'; +export * from './kami-api-merchant-v1-steal-delete-req'; +export * from './kami-api-merchant-v1-steal-list-req'; +export * from './kami-api-merchant-v1-steal-list-res'; +export * from './kami-api-merchant-v1-steal-record-list-req'; +export * from './kami-api-merchant-v1-steal-record-list-res'; +export * from './kami-api-merchant-v1-steal-status-get-res'; +export * from './kami-api-merchant-v1-steal-status-set-req'; +export * from './kami-api-merchant-v1-steal-update-req'; +export * from './kami-api-merchant-v1-steal-update-status-req'; +export * from './kami-api-monitor-v1-health-check-res'; +export * from './kami-api-order-v1-order-form-delete-req'; +export * from './kami-api-order-v1-order-form-list-req'; +export * from './kami-api-order-v1-order-form-update-req'; +export * from './kami-api-order-v1-order-log-delete-req'; +export * from './kami-api-order-v1-order-log-list-req'; +export * from './kami-api-order-v1-order-summary-get-list-req'; +export * from './kami-api-order-v1-order-summary-get-list-res'; +export * from './kami-api-order-v1-order-summary-record'; +export * from './kami-api-restriction-v1-block-order-req'; +export * from './kami-api-restriction-v1-check-ipallowed-req'; +export * from './kami-api-restriction-v1-check-ipallowed-res'; +export * from './kami-api-restriction-v1-query-all-province-res'; +export * from './kami-api-restriction-v1-user-info-collection-req'; +export * from './kami-api-road-pool-v1-road-pool-simple-info'; +export * from './kami-api-road-pool-v1-simple-all-get-road-res'; +export * from './kami-api-road-v1-road-simple-info'; +export * from './kami-api-road-v1-simple-all-get-road-res'; +export * from './kami-api-sys-payment-v1-payment-summary-list-req'; +export * from './kami-api-sys-payment-v1-payment-summary-list-res'; +export * from './kami-api-sys-payment-v1-payment-summary-record'; +export * from './kami-api-sys-payment-v1-sys-payment-add-req'; +export * from './kami-api-sys-payment-v1-sys-payment-get-one-req'; +export * from './kami-api-sys-payment-v1-sys-payment-get-one-res'; +export * from './kami-api-sys-payment-v1-sys-payment-get-req'; +export * from './kami-api-sys-payment-v1-sys-payment-get-res'; +export * from './kami-api-sys-payment-v1-sys-payment-records-get-req'; +export * from './kami-api-sys-payment-v1-sys-payment-records-get-res'; +export * from './kami-api-sys-payment-v1-sys-payment-records-get-statistics-res'; +export * from './kami-api-sys-user-login-v1-user-login-req'; +export * from './kami-api-sys-user-login-v1-user-login-res'; +export * from './kami-api-sys-user-login-v1-user-menus'; +export * from './kami-api-sys-user-v1-channel-type'; +export * from './kami-api-sys-user-v1-login-user-record'; +export * from './kami-api-sys-user-v1-sys-user-record'; +export * from './kami-api-sys-user-v1-sys-user-role-dept-res'; +export * from './kami-api-sys-user-v1-sys-user-simple-res'; +export * from './kami-api-sys-user-v1-totp-image-get-req'; +export * from './kami-api-sys-user-v1-totp-image-get-res'; +export * from './kami-api-sys-user-v1-totp-reset-req'; +export * from './kami-api-sys-user-v1-totp-reset-res'; +export * from './kami-api-sys-user-v1-totp-set-req'; +export * from './kami-api-sys-user-v1-totp-status-get-res'; +export * from './kami-api-sys-user-v1-user-add-req'; +export * from './kami-api-sys-user-v1-user-change-pwd-req'; +export * from './kami-api-sys-user-v1-user-delete-req'; +export * from './kami-api-sys-user-v1-user-edit-req'; +export * from './kami-api-sys-user-v1-user-forbidden-by-id-req'; +export * from './kami-api-sys-user-v1-user-get-all-simple-user'; +export * from './kami-api-sys-user-v1-user-get-all-user-res'; +export * from './kami-api-sys-user-v1-user-get-by-ids-req'; +export * from './kami-api-sys-user-v1-user-get-by-ids-res'; +export * from './kami-api-sys-user-v1-user-get-edit-req'; +export * from './kami-api-sys-user-v1-user-get-edit-res'; +export * from './kami-api-sys-user-v1-user-get-params-res'; +export * from './kami-api-sys-user-v1-user-login-out-req'; +export * from './kami-api-sys-user-v1-user-menus-get-req'; +export * from './kami-api-sys-user-v1-user-menus-get-res'; +export * from './kami-api-sys-user-v1-user-search-req'; +export * from './kami-api-sys-user-v1-user-search-res'; +export * from './kami-api-sys-user-v1-user-status-req'; +export * from './kami-api-sys-user-v1-user-suspend-or-continue-req'; +export * from './kami-api-user-center-v1-get-user-info-res'; +export * from './kami-api-validation-v1-get-captcha-res'; +export * from './kami-internal-model-entity-v1-card-apple-hidden-settings'; +export * from './kami-internal-model-entity-v1-card-apple-history-info'; +export * from './kami-internal-model-entity-v1-card-apple-recharge-info'; +export * from './kami-internal-model-entity-v1-card-redeem-account-group'; +export * from './kami-internal-model-entity-v1-card-redeem-account-history'; +export * from './kami-internal-model-entity-v1-card-redeem-cookie-info'; +export * from './kami-internal-model-entity-v1-card-redeem-order-history'; +export * from './kami-internal-model-entity-v1-card-redeem-order-info'; +export * from './kami-internal-model-entity-v1-merchant-hidden-record'; +export * from './kami-internal-model-entity-v1-merchant-info'; +export * from './kami-internal-model-entity-v1-recharge-tmall-account'; +export * from './kami-internal-model-entity-v1-recharge-tmall-order'; +export * from './kami-internal-model-entity-v1-recharge-tmall-order-history'; +export * from './kami-internal-model-entity-v1-recharge-tmall-shop'; +export * from './kami-internal-model-entity-v1-recharge-tmall-shop-history'; +export * from './kami-internal-model-entity-v1-sys-role'; +export * from './kami-internal-model-entity-v1-sys-user'; +export * from './kami-internal-model-entity-v1-sys-user-payment'; +export * from './kami-internal-model-entity-v1-sys-user-payment-records'; +export * from './kami-internal-model-user-info'; +export * from './kami-internal-system-v2-model-entity-v2-road-info'; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record-upload-user.ts b/src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record-upload-user.ts new file mode 100644 index 0000000..1bc0ad9 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record-upload-user.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1AppleCardListRecordUploadUser + */ +export interface KamiApiCardInfoAppleV1AppleCardListRecordUploadUser { + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecordUploadUser + */ + id?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecordUploadUser + */ + username?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecordUploadUser + */ + nickname?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record.ts b/src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record.ts new file mode 100644 index 0000000..0074eff --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-apple-card-list-record.ts @@ -0,0 +1,133 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1AppleCardListRecordUploadUser } from './kami-api-card-info-apple-v1-apple-card-list-record-upload-user'; + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1AppleCardListRecord + */ +export interface KamiApiCardInfoAppleV1AppleCardListRecord { + /** + * 主键 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + id?: string; + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + account?: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + password?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + balance?: number; + /** + * itunes充值后余额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + balanceItunes?: number; + /** + * 状态 0.停用 1.正常使用(待充值) 2.正在充值 3.已达到单日充值限制 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + status?: number; + /** + * 今日充值金额,临时字段,方便查询 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + todayRechargeAmount?: number; + /** + * 今日充值笔数,临时字段,方便查询 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + todayRechargeCount?: number; + /** + * 今日日期,临时字段,方便查询 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + todayRechargeDatetime?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + createdUserId?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + createdUserRole?: string; + /** + * 最大充值限制金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + maxAmountLimit?: number; + /** + * 最大充值限制次数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + maxCountLimit?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + remark?: string; + /** + * 创建日期 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + createdAt?: string; + /** + * 更新日期 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + updatedAt?: string; + /** + * 删除日期 + * @type {string} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + deletedAt?: string; + /** + * + * @type {KamiApiCardInfoAppleV1AppleCardListRecordUploadUser} + * @memberof KamiApiCardInfoAppleV1AppleCardListRecord + */ + uploadUser?: KamiApiCardInfoAppleV1AppleCardListRecordUploadUser; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-call-back-order-manual-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-call-back-order-manual-req.ts new file mode 100644 index 0000000..06b4ef3 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-call-back-order-manual-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CallBackOrderManualReq + */ +export interface KamiApiCardInfoAppleV1CallBackOrderManualReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1CallBackOrderManualReq + */ + orderNo: string; + /** + * 充值ID + * @type {number} + * @memberof KamiApiCardInfoAppleV1CallBackOrderManualReq + */ + id?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-req.ts new file mode 100644 index 0000000..75eb189 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardHistoryInfoListReq + */ +export interface KamiApiCardInfoAppleV1CardHistoryInfoListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryInfoListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryInfoListReq + */ + pageSize: KamiApiCardInfoAppleV1CardHistoryInfoListReqPageSizeEnum; + /** + * 苹果账户名 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryInfoListReq + */ + accountName?: string; + /** + * 苹果账户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryInfoListReq + */ + accountId?: string; +} + +export const KamiApiCardInfoAppleV1CardHistoryInfoListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoAppleV1CardHistoryInfoListReqPageSizeEnum = + (typeof KamiApiCardInfoAppleV1CardHistoryInfoListReqPageSizeEnum)[keyof typeof KamiApiCardInfoAppleV1CardHistoryInfoListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-res.ts new file mode 100644 index 0000000..bf5f2cc --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-history-info-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1CardHistoryModel } from './kami-api-card-info-apple-v1-card-history-model'; + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardHistoryInfoListRes + */ +export interface KamiApiCardInfoAppleV1CardHistoryInfoListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryInfoListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoAppleV1CardHistoryInfoListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-history-model.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-history-model.ts new file mode 100644 index 0000000..ab6c167 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-history-model.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardHistoryModel + */ +export interface KamiApiCardInfoAppleV1CardHistoryModel { + /** + * 账户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + accountId?: string; + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + accountName?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + orderNo?: string; + /** + * 余额(itunes) + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + balanceBeforeItunes?: number; + /** + * 余额增长后(itunes) + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + balanceAfterItunes?: number; + /** + * 余额(自动计算) + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + balanceBeforeAutoIncrement?: number; + /** + * 余额增长后(自动计算) + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + balanceAfterAutoIncrement?: number; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + amount?: number; + /** + * 描述 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + description?: string; + /** + * 创建时间 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardHistoryModel + */ + createdAt?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-req.ts new file mode 100644 index 0000000..11014b3 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq + */ +export interface KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq { + /** + * 选择上传文件 + * @type {any} + * @memberof KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxReq + */ + file: any; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-res.ts new file mode 100644 index 0000000..2d8f665 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-batch-add-from-xlsx-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxRes + */ +export interface KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxRes { + /** + * 导入结果 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoBatchAddFromXlsxRes + */ + msg?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-create-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-create-req.ts new file mode 100644 index 0000000..e59700b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-create-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoCreateReq + */ +export interface KamiApiCardInfoAppleV1CardInfoCreateReq { + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoCreateReq + */ + account: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoCreateReq + */ + password: string; + /** + * 最大充值金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoCreateReq + */ + maxAmountLimit: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoCreateReq + */ + maxCountLimit: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoCreateReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-delete-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-delete-req.ts new file mode 100644 index 0000000..70d0572 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoDeleteReq + */ +export interface KamiApiCardInfoAppleV1CardInfoDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-req.ts new file mode 100644 index 0000000..bdfb20c --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoListReq + */ +export interface KamiApiCardInfoAppleV1CardInfoListReq { + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoListReq + */ + account?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoListReq + */ + pageSize: KamiApiCardInfoAppleV1CardInfoListReqPageSizeEnum; +} + +export const KamiApiCardInfoAppleV1CardInfoListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoAppleV1CardInfoListReqPageSizeEnum = + (typeof KamiApiCardInfoAppleV1CardInfoListReqPageSizeEnum)[keyof typeof KamiApiCardInfoAppleV1CardInfoListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-res.ts new file mode 100644 index 0000000..4f7c83e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1AppleCardListRecord } from './kami-api-card-info-apple-v1-apple-card-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoListRes + */ +export interface KamiApiCardInfoAppleV1CardInfoListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoAppleV1CardInfoListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-suspend-or-continue-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-suspend-or-continue-req.ts new file mode 100644 index 0000000..a643dcb --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-suspend-or-continue-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq + */ +export interface KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoSuspendOrContinueReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-req.ts new file mode 100644 index 0000000..0ed7d21 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoUpdateReq + */ +export interface KamiApiCardInfoAppleV1CardInfoUpdateReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateReq + */ + id: string; + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateReq + */ + account: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateReq + */ + password: string; + /** + * 最大充值金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateReq + */ + maxAmountLimit: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateReq + */ + maxCountLimit: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-status-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-status-req.ts new file mode 100644 index 0000000..6651b2a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-card-info-update-status-req.ts @@ -0,0 +1,48 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1CardInfoUpdateStatusReq + */ +export interface KamiApiCardInfoAppleV1CardInfoUpdateStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateStatusReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1CardInfoUpdateStatusReq + */ + status: KamiApiCardInfoAppleV1CardInfoUpdateStatusReqStatusEnum; +} + +export const KamiApiCardInfoAppleV1CardInfoUpdateStatusReqStatusEnum = { + NUMBER_1: 1, + NUMBER_5: 5, + NUMBER_6: 6, + NUMBER_8: 8, + NUMBER_4: 4, + NUMBER_2: 2, + NUMBER_9: 9, + NUMBER_7: 7, + NUMBER_3: 3 +} as const; + +export type KamiApiCardInfoAppleV1CardInfoUpdateStatusReqStatusEnum = + (typeof KamiApiCardInfoAppleV1CardInfoUpdateStatusReqStatusEnum)[keyof typeof KamiApiCardInfoAppleV1CardInfoUpdateStatusReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-config-get-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-config-get-res.ts new file mode 100644 index 0000000..a3f336b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-config-get-res.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1ConfigGetRes + */ +export interface KamiApiCardInfoAppleV1ConfigGetRes { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigGetRes + */ + isAllowDifferentAmount?: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigGetRes + */ + isAllowDifferentSucceedCallback?: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigGetRes + */ + isAllowDifferentFailCallback?: boolean; + /** + * 充值卡最小充值金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1ConfigGetRes + */ + redeemCardMinAmount?: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigGetRes + */ + isAllowCompensatedCallback?: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoAppleV1ConfigGetRes + */ + redeemCardRate?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-config-set-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-config-set-req.ts new file mode 100644 index 0000000..d78cc50 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-config-set-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1ConfigSetReq + */ +export interface KamiApiCardInfoAppleV1ConfigSetReq { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigSetReq + */ + isAllowDifferentAmount: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigSetReq + */ + isAllowDifferentSucceedCallback: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigSetReq + */ + isAllowDifferentFailCallback: boolean; + /** + * 账号单日最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1ConfigSetReq + */ + redeemCardMinAmount: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoAppleV1ConfigSetReq + */ + isAllowCompensatedCallback: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoAppleV1ConfigSetReq + */ + redeemCardRate: number; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-duplicated-card-pass-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-duplicated-card-pass-req.ts new file mode 100644 index 0000000..fa61a46 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-duplicated-card-pass-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq + */ +export interface KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeDuplicatedCardPassReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-req.ts new file mode 100644 index 0000000..d443eda --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeHandlerReq + */ +export interface KamiApiCardInfoAppleV1RechargeHandlerReq { + /** + * 机器ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerReq + */ + machineId: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-res.ts new file mode 100644 index 0000000..6e59c62 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-handler-res.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeHandlerRes + */ +export interface KamiApiCardInfoAppleV1RechargeHandlerRes { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerRes + */ + orderNo?: string; + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerRes + */ + cardNo?: string; + /** + * 卡密 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerRes + */ + cardPass?: string; + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerRes + */ + account?: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerRes + */ + password?: string; + /** + * 账户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHandlerRes + */ + accountId?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-req.ts new file mode 100644 index 0000000..253c069 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeHistoryListReq + */ +export interface KamiApiCardInfoAppleV1RechargeHistoryListReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeHistoryListReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-res.ts new file mode 100644 index 0000000..abc7035 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-history-list-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardAppleHistoryInfo } from './kami-internal-model-entity-v1-card-apple-history-info'; + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeHistoryListRes + */ +export interface KamiApiCardInfoAppleV1RechargeHistoryListRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoAppleV1RechargeHistoryListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-itunes-callback-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-itunes-callback-req.ts new file mode 100644 index 0000000..83ee42d --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-itunes-callback-req.ts @@ -0,0 +1,80 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ +export interface KamiApiCardInfoAppleV1RechargeItunesCallbackReq { + /** + * 金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + amount: number; + /** + * 金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + accountAmount: number; + /** + * 账户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + accountId: string; + /** + * 机器ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + machineId: string; + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + orderNo: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + status: KamiApiCardInfoAppleV1RechargeItunesCallbackReqStatusEnum; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeItunesCallbackReq + */ + remark?: string; +} + +export const KamiApiCardInfoAppleV1RechargeItunesCallbackReqStatusEnum = { + NUMBER_30: 30, + NUMBER_31: 31, + NUMBER_40: 40, + NUMBER_32: 32, + NUMBER_10: 10, + NUMBER_12: 12, + NUMBER_11: 11, + NUMBER_14: 14, + NUMBER_20: 20, + NUMBER_13: 13, + NUMBER_15: 15 +} as const; + +export type KamiApiCardInfoAppleV1RechargeItunesCallbackReqStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeItunesCallbackReqStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeItunesCallbackReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-download-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-download-req.ts new file mode 100644 index 0000000..a0df404 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-download-req.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeListDownloadReq + */ +export interface KamiApiCardInfoAppleV1RechargeListDownloadReq { + /** + * 账户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + accountId?: string; + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + account?: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + attach?: string; + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + orderNo?: string; + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + cardNo?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + merchantId?: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + cardPass?: string; + /** + * 开始时间 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + StartDate?: string; + /** + * 结束时间 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListDownloadReq + */ + EndDate?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-req.ts new file mode 100644 index 0000000..43aae37 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-req.ts @@ -0,0 +1,99 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeListReq + */ +export interface KamiApiCardInfoAppleV1RechargeListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + pageSize: KamiApiCardInfoAppleV1RechargeListReqPageSizeEnum; + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + account?: string; + /** + * 账户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + accountId?: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + attach?: string; + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + orderNo?: string; + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + cardNo?: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + cardPass?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + merchantId?: string; + /** + * 开始时间 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + StartDate?: string; + /** + * 结束时间 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeListReq + */ + EndDate?: string; +} + +export const KamiApiCardInfoAppleV1RechargeListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoAppleV1RechargeListReqPageSizeEnum = + (typeof KamiApiCardInfoAppleV1RechargeListReqPageSizeEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-res.ts new file mode 100644 index 0000000..e88914b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardAppleRechargeInfo } from './kami-internal-model-entity-v1-card-apple-recharge-info'; + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeListRes + */ +export interface KamiApiCardInfoAppleV1RechargeListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoAppleV1RechargeListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-modify-actual-amount-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-modify-actual-amount-req.ts new file mode 100644 index 0000000..bd7a17b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-modify-actual-amount-req.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq + */ +export interface KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq + */ + orderNo: string; + /** + * 金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq + */ + actualAmount: number; + /** + * TOTP + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeOrderModifyActualAmountReq + */ + totpCode?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-reset-status-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-reset-status-req.ts new file mode 100644 index 0000000..267ea3d --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-order-reset-status-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeOrderResetStatusReq + */ +export interface KamiApiCardInfoAppleV1RechargeOrderResetStatusReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeOrderResetStatusReq + */ + orderNo: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeOrderResetStatusReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-add-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-add-req.ts new file mode 100644 index 0000000..6ffdd23 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-add-req.ts @@ -0,0 +1,71 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ +export interface KamiApiCardInfoAppleV1RechargeStealRuleAddReq { + /** + * 规则名 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + name: string; + /** + * 目标用户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + targetUserId: string; + /** + * 单独某条规则的状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + status: KamiApiCardInfoAppleV1RechargeStealRuleAddReqStatusEnum; + /** + * 存储用户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + storageUserId: string; + /** + * 金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + amount: number; + /** + * 目标金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + targetAmount: number; + /** + * 时间间隔 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleAddReq + */ + intervalTime: number; +} + +export const KamiApiCardInfoAppleV1RechargeStealRuleAddReqStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiCardInfoAppleV1RechargeStealRuleAddReqStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeStealRuleAddReqStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeStealRuleAddReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-delete-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-delete-req.ts new file mode 100644 index 0000000..1b844bd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealRuleDeleteReq + */ +export interface KamiApiCardInfoAppleV1RechargeStealRuleDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-req.ts new file mode 100644 index 0000000..2a2bc79 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealRuleListReq + */ +export interface KamiApiCardInfoAppleV1RechargeStealRuleListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleListReq + */ + pageSize: KamiApiCardInfoAppleV1RechargeStealRuleListReqPageSizeEnum; +} + +export const KamiApiCardInfoAppleV1RechargeStealRuleListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoAppleV1RechargeStealRuleListReqPageSizeEnum = + (typeof KamiApiCardInfoAppleV1RechargeStealRuleListReqPageSizeEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeStealRuleListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-res.ts new file mode 100644 index 0000000..173e74e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardAppleHiddenSettings } from './kami-internal-model-entity-v1-card-apple-hidden-settings'; + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealRuleListRes + */ +export interface KamiApiCardInfoAppleV1RechargeStealRuleListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-status-update-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-status-update-req.ts new file mode 100644 index 0000000..7a771ed --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-status-update-req.ts @@ -0,0 +1,42 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq + */ +export interface KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq + */ + id: number; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReq + */ + status: KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReqStatusEnum; +} + +export const KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReqStatusEnum = + { + NUMBER_0: 0, + NUMBER_1: 1 + } as const; + +export type KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReqStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReqStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeStealRuleStatusUpdateReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-update-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-update-req.ts new file mode 100644 index 0000000..3ceb7d6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-rule-update-req.ts @@ -0,0 +1,77 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ +export interface KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + id: number; + /** + * 规则名 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + name: string; + /** + * 目标用户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + targetUserId: string; + /** + * 单独某条规则的状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + status: KamiApiCardInfoAppleV1RechargeStealRuleUpdateReqStatusEnum; + /** + * 存储用户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + storageUserId: string; + /** + * 金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + amount: number; + /** + * 目标金额 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + targetAmount: number; + /** + * 时间间隔 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReq + */ + intervalTime: number; +} + +export const KamiApiCardInfoAppleV1RechargeStealRuleUpdateReqStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiCardInfoAppleV1RechargeStealRuleUpdateReqStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReqStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeStealRuleUpdateReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-get-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-get-res.ts new file mode 100644 index 0000000..acb1517 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-get-res.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealSettingGetRes + */ +export interface KamiApiCardInfoAppleV1RechargeStealSettingGetRes { + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealSettingGetRes + */ + stealStatus?: KamiApiCardInfoAppleV1RechargeStealSettingGetResStealStatusEnum; +} + +export const KamiApiCardInfoAppleV1RechargeStealSettingGetResStealStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiCardInfoAppleV1RechargeStealSettingGetResStealStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeStealSettingGetResStealStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeStealSettingGetResStealStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-req.ts new file mode 100644 index 0000000..d2a51bd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-steal-setting-req.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeStealSettingReq + */ +export interface KamiApiCardInfoAppleV1RechargeStealSettingReq { + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeStealSettingReq + */ + stealStatus: KamiApiCardInfoAppleV1RechargeStealSettingReqStealStatusEnum; +} + +export const KamiApiCardInfoAppleV1RechargeStealSettingReqStealStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiCardInfoAppleV1RechargeStealSettingReqStealStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeStealSettingReqStealStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeStealSettingReqStealStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-req.ts new file mode 100644 index 0000000..cf9f29b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeSubmitQueryReq + */ +export interface KamiApiCardInfoAppleV1RechargeSubmitQueryReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitQueryReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-res.ts new file mode 100644 index 0000000..56426fa --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-query-res.ts @@ -0,0 +1,56 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeSubmitQueryRes + */ +export interface KamiApiCardInfoAppleV1RechargeSubmitQueryRes { + /** + * 充值返回编码 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitQueryRes + */ + status?: KamiApiCardInfoAppleV1RechargeSubmitQueryResStatusEnum; + /** + * 详细描述信息 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitQueryRes + */ + message?: string; +} + +export const KamiApiCardInfoAppleV1RechargeSubmitQueryResStatusEnum = { + NUMBER_13: 13, + NUMBER_15: 15, + NUMBER_6: 6, + NUMBER_14: 14, + NUMBER_5: 5, + NUMBER_0: 0, + NUMBER_16: 16, + NUMBER_4: 4, + NUMBER_2: 2, + NUMBER_9: 9, + NUMBER_12: 12, + NUMBER_10: 10, + NUMBER_11: 11, + NUMBER_7: 7, + NUMBER_8: 8, + NUMBER_1: 1, + NUMBER_3: 3 +} as const; + +export type KamiApiCardInfoAppleV1RechargeSubmitQueryResStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeSubmitQueryResStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeSubmitQueryResStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-req.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-req.ts new file mode 100644 index 0000000..383e0ab --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-req.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeSubmitReq + */ +export interface KamiApiCardInfoAppleV1RechargeSubmitReq { + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + cardNo?: string; + /** + * 密码 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + cardPass: string; + /** + * 面值 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + faceValue: number; + /** + * 回调地址 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + callbackUrl?: string; + /** + * 附加信息(目前是上游订单号) + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + attach?: string; + /** + * 时间戳 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + timeStamp?: number; + /** + * 签名 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + sign?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitReq + */ + merchantId?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-res.ts b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-res.ts new file mode 100644 index 0000000..84f2422 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-apple-v1-recharge-submit-res.ts @@ -0,0 +1,62 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoAppleV1RechargeSubmitRes + */ +export interface KamiApiCardInfoAppleV1RechargeSubmitRes { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitRes + */ + orderNo?: string; + /** + * 充值返回编码 + * @type {number} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitRes + */ + status?: KamiApiCardInfoAppleV1RechargeSubmitResStatusEnum; + /** + * 详细描述信息 + * @type {string} + * @memberof KamiApiCardInfoAppleV1RechargeSubmitRes + */ + message?: string; +} + +export const KamiApiCardInfoAppleV1RechargeSubmitResStatusEnum = { + NUMBER_13: 13, + NUMBER_15: 15, + NUMBER_6: 6, + NUMBER_14: 14, + NUMBER_5: 5, + NUMBER_0: 0, + NUMBER_16: 16, + NUMBER_4: 4, + NUMBER_2: 2, + NUMBER_9: 9, + NUMBER_12: 12, + NUMBER_10: 10, + NUMBER_11: 11, + NUMBER_7: 7, + NUMBER_8: 8, + NUMBER_1: 1, + NUMBER_3: 3 +} as const; + +export type KamiApiCardInfoAppleV1RechargeSubmitResStatusEnum = + (typeof KamiApiCardInfoAppleV1RechargeSubmitResStatusEnum)[keyof typeof KamiApiCardInfoAppleV1RechargeSubmitResStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-add-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-add-req.ts new file mode 100644 index 0000000..7779265 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-add-req.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieBatchInfo } from './kami-api-card-info-ctrip-v1-account-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCookieBatchAddReq + */ +export interface KamiApiCardInfoCTripV1AccountCookieBatchAddReq { + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchAddReq + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-req.ts new file mode 100644 index 0000000..26212d6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCookieBatchCheckReq + */ +export interface KamiApiCardInfoCTripV1AccountCookieBatchCheckReq { + /** + * 选择上传文件 + * @type {any} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchCheckReq + */ + file: any; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-res.ts new file mode 100644 index 0000000..c7f7b94 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-check-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountCookieBatchInfo } from './kami-api-card-info-ctrip-v1-account-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCookieBatchCheckRes + */ +export interface KamiApiCardInfoCTripV1AccountCookieBatchCheckRes { + /** + * 导入结果 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchCheckRes + */ + msg?: string; + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchCheckRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-info.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-info.ts new file mode 100644 index 0000000..1c2a7e1 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-batch-info.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ +export interface KamiApiCardInfoCTripV1AccountCookieBatchInfo { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + isAvailable?: boolean; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + cookie?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCookieBatchInfo + */ + maxCountLimit?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-req.ts new file mode 100644 index 0000000..ae653cf --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCookieCheckReq + */ +export interface KamiApiCardInfoCTripV1AccountCookieCheckReq { + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieCheckReq + */ + cookie: string; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-res.ts new file mode 100644 index 0000000..a79e0ac --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-cookie-check-res.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCookieCheckRes + */ +export interface KamiApiCardInfoCTripV1AccountCookieCheckRes { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieCheckRes + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCookieCheckRes + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCookieCheckRes + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1AccountCookieCheckRes + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1AccountCookieCheckRes + */ + isAvailable?: boolean; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-create-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-create-req.ts new file mode 100644 index 0000000..a183156 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-create-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountCreateReq + */ +export interface KamiApiCardInfoCTripV1AccountCreateReq { + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCreateReq + */ + cookie: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCreateReq + */ + name?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCreateReq + */ + maxAmountLimit: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCreateReq + */ + maxCountLimit: number; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountCreateReq + */ + status?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountCreateReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-delete-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-delete-req.ts new file mode 100644 index 0000000..03fdefb --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountDeleteReq + */ +export interface KamiApiCardInfoCTripV1AccountDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-record.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-record.ts new file mode 100644 index 0000000..ec46ac6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-record.ts @@ -0,0 +1,163 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1AppleCardListRecordUploadUser } from './kami-api-card-info-apple-v1-apple-card-list-record-upload-user'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountListRecord + */ +export interface KamiApiCardInfoCTripV1AccountListRecord { + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + id?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + groupId?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + cookie?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + nickname?: string; + /** + * 京东用户ID + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + username?: string; + /** + * 创建人 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + createUserId?: string; + /** + * 账户类型 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + category?: string; + /** + * 账单所有统计金额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + amountTotalSum?: number; + /** + * 账单今日统计金额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + amountTodaySum?: number; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + balance?: number; + /** + * 有效充值余额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + effectiveBalance?: number; + /** + * 状态 1.正常 0.禁用 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + status?: number; + /** + * 账号最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + maxCountLimit?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + maxAmountLimit?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + amountTotalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + amountTodayCount?: number; + /** + * 账号是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + accountStatus?: boolean; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + deletedAt?: string; + /** + * + * @type {KamiApiCardInfoAppleV1AppleCardListRecordUploadUser} + * @memberof KamiApiCardInfoCTripV1AccountListRecord + */ + uploadUser?: KamiApiCardInfoAppleV1AppleCardListRecordUploadUser; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-req.ts new file mode 100644 index 0000000..368dbdc --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-req.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountListReq + */ +export interface KamiApiCardInfoCTripV1AccountListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListReq + */ + pageSize: KamiApiCardInfoCTripV1AccountListReqPageSizeEnum; + /** + * 账户名称 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListReq + */ + name?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListReq + */ + nickName?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountListReq + */ + cookie?: string; +} + +export const KamiApiCardInfoCTripV1AccountListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoCTripV1AccountListReqPageSizeEnum = + (typeof KamiApiCardInfoCTripV1AccountListReqPageSizeEnum)[keyof typeof KamiApiCardInfoCTripV1AccountListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-res.ts new file mode 100644 index 0000000..7b313b3 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoCTripV1AccountListRecord } from './kami-api-card-info-ctrip-v1-account-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountListRes + */ +export interface KamiApiCardInfoCTripV1AccountListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoCTripV1AccountListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-refresh-status-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-refresh-status-req.ts new file mode 100644 index 0000000..db647e5 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-refresh-status-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountRefreshStatusReq + */ +export interface KamiApiCardInfoCTripV1AccountRefreshStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountRefreshStatusReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-req.ts new file mode 100644 index 0000000..d8fb50c --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountUpdateReq + */ +export interface KamiApiCardInfoCTripV1AccountUpdateReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountUpdateReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountUpdateReq + */ + status?: number; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountUpdateReq + */ + name?: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountUpdateReq + */ + remark?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountUpdateReq + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountUpdateReq + */ + maxCountLimit?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-status-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-status-req.ts new file mode 100644 index 0000000..4d1a3bd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-update-status-req.ts @@ -0,0 +1,48 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountUpdateStatusReq + */ +export interface KamiApiCardInfoCTripV1AccountUpdateStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountUpdateStatusReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountUpdateStatusReq + */ + status: KamiApiCardInfoCTripV1AccountUpdateStatusReqStatusEnum; +} + +export const KamiApiCardInfoCTripV1AccountUpdateStatusReqStatusEnum = { + NUMBER_0: 0, + NUMBER_5: 5, + NUMBER_3: 3, + NUMBER_6: 6, + NUMBER_2: 2, + NUMBER_8: 8, + NUMBER_4: 4, + NUMBER_1: 1, + NUMBER_7: 7 +} as const; + +export type KamiApiCardInfoCTripV1AccountUpdateStatusReqStatusEnum = + (typeof KamiApiCardInfoCTripV1AccountUpdateStatusReqStatusEnum)[keyof typeof KamiApiCardInfoCTripV1AccountUpdateStatusReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-req.ts new file mode 100644 index 0000000..7c95ce0 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountWalletListReq + */ +export interface KamiApiCardInfoCTripV1AccountWalletListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountWalletListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountWalletListReq + */ + pageSize: KamiApiCardInfoCTripV1AccountWalletListReqPageSizeEnum; + /** + * + * @type {string} + * @memberof KamiApiCardInfoCTripV1AccountWalletListReq + */ + accountId: string; +} + +export const KamiApiCardInfoCTripV1AccountWalletListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoCTripV1AccountWalletListReqPageSizeEnum = + (typeof KamiApiCardInfoCTripV1AccountWalletListReqPageSizeEnum)[keyof typeof KamiApiCardInfoCTripV1AccountWalletListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-res.ts new file mode 100644 index 0000000..e36b256 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-account-wallet-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemAccountHistory } from './kami-internal-model-entity-v1-card-redeem-account-history'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1AccountWalletListRes + */ +export interface KamiApiCardInfoCTripV1AccountWalletListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoCTripV1AccountWalletListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoCTripV1AccountWalletListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-list-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-list-req.ts new file mode 100644 index 0000000..4d1715e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-list-req.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1ListReq + */ +export interface KamiApiCardInfoCTripV1ListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + pageSize: KamiApiCardInfoCTripV1ListReqPageSizeEnum; + /** + * 礼品卡密码 + * @type {string} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + giftCardPwd?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + merchantId?: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + attach?: string; + /** + * 账户昵称 + * @type {string} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + accountNickName?: string; + /** + * 账户cookie + * @type {string} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + accountCk?: string; + /** + * 时间范围 + * @type {Array} + * @memberof KamiApiCardInfoCTripV1ListReq + */ + dateRange?: Array; +} + +export const KamiApiCardInfoCTripV1ListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoCTripV1ListReqPageSizeEnum = + (typeof KamiApiCardInfoCTripV1ListReqPageSizeEnum)[keyof typeof KamiApiCardInfoCTripV1ListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-list-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-list-res.ts new file mode 100644 index 0000000..ff5ef4e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemOrderInfo } from './kami-internal-model-entity-v1-card-redeem-order-info'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1ListRes + */ +export interface KamiApiCardInfoCTripV1ListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoCTripV1ListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoCTripV1ListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-order-callback-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-order-callback-req.ts new file mode 100644 index 0000000..ed2912c --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-order-callback-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1OrderCallbackReq + */ +export interface KamiApiCardInfoCTripV1OrderCallbackReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoCTripV1OrderCallbackReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-req.ts new file mode 100644 index 0000000..c5c438f --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1OrderHistoryReq + */ +export interface KamiApiCardInfoCTripV1OrderHistoryReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoCTripV1OrderHistoryReq + */ + orderNo?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-res.ts new file mode 100644 index 0000000..3a37b9a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-order-history-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemOrderHistory } from './kami-internal-model-entity-v1-card-redeem-order-history'; + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1OrderHistoryRes + */ +export interface KamiApiCardInfoCTripV1OrderHistoryRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoCTripV1OrderHistoryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-get-res.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-get-res.ts new file mode 100644 index 0000000..351ba81 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-get-res.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1RedeemConfigGetRes + */ +export interface KamiApiCardInfoCTripV1RedeemConfigGetRes { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigGetRes + */ + isAllowDifferentAmount?: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigGetRes + */ + isAllowDifferentSucceedCallback?: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigGetRes + */ + isAllowDifferentFailCallback?: boolean; + /** + * 充值卡最小充值金额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1RedeemConfigGetRes + */ + redeemCardMinAmount?: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigGetRes + */ + isAllowCompensatedCallback?: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoCTripV1RedeemConfigGetRes + */ + redeemCardRate?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-set-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-set-req.ts new file mode 100644 index 0000000..a46c6c9 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-redeem-config-set-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1RedeemConfigSetReq + */ +export interface KamiApiCardInfoCTripV1RedeemConfigSetReq { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigSetReq + */ + isAllowDifferentAmount: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigSetReq + */ + isAllowDifferentSucceedCallback: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigSetReq + */ + isAllowDifferentFailCallback: boolean; + /** + * 账号单日最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoCTripV1RedeemConfigSetReq + */ + redeemCardMinAmount: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoCTripV1RedeemConfigSetReq + */ + isAllowCompensatedCallback: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoCTripV1RedeemConfigSetReq + */ + redeemCardRate: number; +} diff --git a/src/api/generated/models/kami-api-card-info-ctrip-v1-submit-req.ts b/src/api/generated/models/kami-api-card-info-ctrip-v1-submit-req.ts new file mode 100644 index 0000000..0aabcce --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-ctrip-v1-submit-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoCTripV1SubmitReq + */ +export interface KamiApiCardInfoCTripV1SubmitReq { + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoCTripV1SubmitReq + */ + cardNo?: string; + /** + * 礼品卡密码 + * @type {string} + * @memberof KamiApiCardInfoCTripV1SubmitReq + */ + giftCardPwd: string; + /** + * 回调地址 + * @type {string} + * @memberof KamiApiCardInfoCTripV1SubmitReq + */ + notifyUrl: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoCTripV1SubmitReq + */ + merchantId: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoCTripV1SubmitReq + */ + attach?: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiCardInfoCTripV1SubmitReq + */ + amount: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-add-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-add-req.ts new file mode 100644 index 0000000..bc4e09f --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-add-req.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieBatchInfo } from './kami-api-card-info-jd-v1-jdaccount-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCookieBatchAddReq + */ +export interface KamiApiCardInfoJdV1JDAccountCookieBatchAddReq { + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchAddReq + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-req.ts new file mode 100644 index 0000000..7684be0 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq + */ +export interface KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq { + /** + * 选择上传文件 + * @type {any} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchCheckReq + */ + file: any; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-res.ts new file mode 100644 index 0000000..2531686 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-check-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountCookieBatchInfo } from './kami-api-card-info-jd-v1-jdaccount-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCookieBatchCheckRes + */ +export interface KamiApiCardInfoJdV1JDAccountCookieBatchCheckRes { + /** + * 导入结果 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchCheckRes + */ + msg?: string; + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchCheckRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-info.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-info.ts new file mode 100644 index 0000000..72492cc --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-batch-info.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ +export interface KamiApiCardInfoJdV1JDAccountCookieBatchInfo { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + isAvailable?: boolean; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + cookie?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCookieBatchInfo + */ + maxCountLimit?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-req.ts new file mode 100644 index 0000000..96176f1 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCookieCheckReq + */ +export interface KamiApiCardInfoJdV1JDAccountCookieCheckReq { + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieCheckReq + */ + cookie: string; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-res.ts new file mode 100644 index 0000000..2a6b988 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-cookie-check-res.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCookieCheckRes + */ +export interface KamiApiCardInfoJdV1JDAccountCookieCheckRes { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieCheckRes + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCookieCheckRes + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCookieCheckRes + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDAccountCookieCheckRes + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDAccountCookieCheckRes + */ + isAvailable?: boolean; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-create-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-create-req.ts new file mode 100644 index 0000000..4b6cf09 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-create-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountCreateReq + */ +export interface KamiApiCardInfoJdV1JDAccountCreateReq { + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCreateReq + */ + cookie: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCreateReq + */ + name?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCreateReq + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCreateReq + */ + maxCountLimit?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountCreateReq + */ + remark?: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountCreateReq + */ + status?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-delete-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-delete-req.ts new file mode 100644 index 0000000..d511855 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountDeleteReq + */ +export interface KamiApiCardInfoJdV1JDAccountDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-record.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-record.ts new file mode 100644 index 0000000..c68cb6d --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-record.ts @@ -0,0 +1,163 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1AppleCardListRecordUploadUser } from './kami-api-card-info-apple-v1-apple-card-list-record-upload-user'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountListRecord + */ +export interface KamiApiCardInfoJdV1JDAccountListRecord { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + id?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + groupId?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + cookie?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + nickname?: string; + /** + * 京东用户ID + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + username?: string; + /** + * 创建人 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + createUserId?: string; + /** + * 账户类型 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + category?: string; + /** + * 账单所有统计金额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + amountTotalSum?: number; + /** + * 账单今日统计金额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + amountTodaySum?: number; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + balance?: number; + /** + * 有效充值余额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + effectiveBalance?: number; + /** + * 状态 1.正常 0.禁用 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + status?: number; + /** + * 账号最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + maxCountLimit?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + maxAmountLimit?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + amountTotalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + amountTodayCount?: number; + /** + * 账号是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + accountStatus?: boolean; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + deletedAt?: string; + /** + * + * @type {KamiApiCardInfoAppleV1AppleCardListRecordUploadUser} + * @memberof KamiApiCardInfoJdV1JDAccountListRecord + */ + uploadUser?: KamiApiCardInfoAppleV1AppleCardListRecordUploadUser; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-req.ts new file mode 100644 index 0000000..459e5d3 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-req.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountListReq + */ +export interface KamiApiCardInfoJdV1JDAccountListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListReq + */ + pageSize: KamiApiCardInfoJdV1JDAccountListReqPageSizeEnum; + /** + * 账户名称 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListReq + */ + name?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListReq + */ + nickName?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountListReq + */ + cookie?: string; +} + +export const KamiApiCardInfoJdV1JDAccountListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoJdV1JDAccountListReqPageSizeEnum = + (typeof KamiApiCardInfoJdV1JDAccountListReqPageSizeEnum)[keyof typeof KamiApiCardInfoJdV1JDAccountListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-res.ts new file mode 100644 index 0000000..251bc2b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoJdV1JDAccountListRecord } from './kami-api-card-info-jd-v1-jdaccount-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountListRes + */ +export interface KamiApiCardInfoJdV1JDAccountListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoJdV1JDAccountListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-refresh-status-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-refresh-status-req.ts new file mode 100644 index 0000000..2e93459 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-refresh-status-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountRefreshStatusReq + */ +export interface KamiApiCardInfoJdV1JDAccountRefreshStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountRefreshStatusReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-req.ts new file mode 100644 index 0000000..1510ef2 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-req.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountUpdateReq + */ +export interface KamiApiCardInfoJdV1JDAccountUpdateReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + id: string; + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + cookie: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + name?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + maxCountLimit?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + remark?: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateReq + */ + status?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-status-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-status-req.ts new file mode 100644 index 0000000..c4500d9 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-update-status-req.ts @@ -0,0 +1,48 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountUpdateStatusReq + */ +export interface KamiApiCardInfoJdV1JDAccountUpdateStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateStatusReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountUpdateStatusReq + */ + status: KamiApiCardInfoJdV1JDAccountUpdateStatusReqStatusEnum; +} + +export const KamiApiCardInfoJdV1JDAccountUpdateStatusReqStatusEnum = { + NUMBER_0: 0, + NUMBER_5: 5, + NUMBER_3: 3, + NUMBER_6: 6, + NUMBER_2: 2, + NUMBER_8: 8, + NUMBER_4: 4, + NUMBER_1: 1, + NUMBER_7: 7 +} as const; + +export type KamiApiCardInfoJdV1JDAccountUpdateStatusReqStatusEnum = + (typeof KamiApiCardInfoJdV1JDAccountUpdateStatusReqStatusEnum)[keyof typeof KamiApiCardInfoJdV1JDAccountUpdateStatusReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-req.ts new file mode 100644 index 0000000..67a1a80 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountWalletListReq + */ +export interface KamiApiCardInfoJdV1JDAccountWalletListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountWalletListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountWalletListReq + */ + pageSize: KamiApiCardInfoJdV1JDAccountWalletListReqPageSizeEnum; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1JDAccountWalletListReq + */ + accountId: string; +} + +export const KamiApiCardInfoJdV1JDAccountWalletListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoJdV1JDAccountWalletListReqPageSizeEnum = + (typeof KamiApiCardInfoJdV1JDAccountWalletListReqPageSizeEnum)[keyof typeof KamiApiCardInfoJdV1JDAccountWalletListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-res.ts new file mode 100644 index 0000000..42fbf30 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdaccount-wallet-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemAccountHistory } from './kami-internal-model-entity-v1-card-redeem-account-history'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDAccountWalletListRes + */ +export interface KamiApiCardInfoJdV1JDAccountWalletListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1JDAccountWalletListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoJdV1JDAccountWalletListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-get-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-get-res.ts new file mode 100644 index 0000000..26ecd3b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-get-res.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDConfigGetRes + */ +export interface KamiApiCardInfoJdV1JDConfigGetRes { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigGetRes + */ + isAllowDifferentAmount?: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigGetRes + */ + isAllowDifferentSucceedCallback?: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigGetRes + */ + isAllowDifferentFailCallback?: boolean; + /** + * 充值卡最小充值金额 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDConfigGetRes + */ + redeemCardMinAmount?: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigGetRes + */ + isAllowCompensatedCallback?: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDConfigGetRes + */ + redeemCardRate?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-set-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-set-req.ts new file mode 100644 index 0000000..02db7b8 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-jdconfig-set-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1JDConfigSetReq + */ +export interface KamiApiCardInfoJdV1JDConfigSetReq { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigSetReq + */ + isAllowDifferentAmount: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigSetReq + */ + isAllowDifferentSucceedCallback: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigSetReq + */ + isAllowDifferentFailCallback: boolean; + /** + * 账号单日最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDConfigSetReq + */ + redeemCardMinAmount: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoJdV1JDConfigSetReq + */ + isAllowCompensatedCallback: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoJdV1JDConfigSetReq + */ + redeemCardRate: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-list-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-list-req.ts new file mode 100644 index 0000000..cc8c6c0 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-list-req.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1ListReq + */ +export interface KamiApiCardInfoJdV1ListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoJdV1ListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoJdV1ListReq + */ + pageSize: KamiApiCardInfoJdV1ListReqPageSizeEnum; + /** + * 礼品卡密码 + * @type {string} + * @memberof KamiApiCardInfoJdV1ListReq + */ + giftCardPwd?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoJdV1ListReq + */ + merchantId?: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoJdV1ListReq + */ + attach?: string; + /** + * 时间范围 + * @type {Array} + * @memberof KamiApiCardInfoJdV1ListReq + */ + dateRange?: Array; + /** + * 账户昵称 + * @type {string} + * @memberof KamiApiCardInfoJdV1ListReq + */ + accountNickName?: string; + /** + * 账户cookie + * @type {string} + * @memberof KamiApiCardInfoJdV1ListReq + */ + accountCk?: string; +} + +export const KamiApiCardInfoJdV1ListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoJdV1ListReqPageSizeEnum = + (typeof KamiApiCardInfoJdV1ListReqPageSizeEnum)[keyof typeof KamiApiCardInfoJdV1ListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-list-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-list-res.ts new file mode 100644 index 0000000..caecf7b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemOrderInfo } from './kami-internal-model-entity-v1-card-redeem-order-info'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1ListRes + */ +export interface KamiApiCardInfoJdV1ListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1ListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoJdV1ListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-order-callback-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-order-callback-req.ts new file mode 100644 index 0000000..7d098ae --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-order-callback-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1OrderCallbackReq + */ +export interface KamiApiCardInfoJdV1OrderCallbackReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoJdV1OrderCallbackReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-order-history-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-order-history-req.ts new file mode 100644 index 0000000..399389b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-order-history-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1OrderHistoryReq + */ +export interface KamiApiCardInfoJdV1OrderHistoryReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoJdV1OrderHistoryReq + */ + orderNo?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-order-history-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-order-history-res.ts new file mode 100644 index 0000000..e965cf6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-order-history-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemOrderHistory } from './kami-internal-model-entity-v1-card-redeem-order-history'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1OrderHistoryRes + */ +export interface KamiApiCardInfoJdV1OrderHistoryRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoJdV1OrderHistoryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-req.ts new file mode 100644 index 0000000..9928304 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1OrderSummaryListReq + */ +export interface KamiApiCardInfoJdV1OrderSummaryListReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1OrderSummaryListReq + */ + roadUid?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryListReq + */ + pageSize: KamiApiCardInfoJdV1OrderSummaryListReqPageSizeEnum; +} + +export const KamiApiCardInfoJdV1OrderSummaryListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoJdV1OrderSummaryListReqPageSizeEnum = + (typeof KamiApiCardInfoJdV1OrderSummaryListReqPageSizeEnum)[keyof typeof KamiApiCardInfoJdV1OrderSummaryListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-res.ts b/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-res.ts new file mode 100644 index 0000000..9491053 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoJdV1OrderSummaryRecord } from './kami-api-card-info-jd-v1-order-summary-record'; + +/** + * + * @export + * @interface KamiApiCardInfoJdV1OrderSummaryListRes + */ +export interface KamiApiCardInfoJdV1OrderSummaryListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoJdV1OrderSummaryListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-record.ts b/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-record.ts new file mode 100644 index 0000000..9398efd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-order-summary-record.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1OrderSummaryRecord + */ +export interface KamiApiCardInfoJdV1OrderSummaryRecord { + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + merchantUid?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + merchantName?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + succeedCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + succeedShowAmount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + succeedFactAmount?: number; + /** + * 订单总量 + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + totalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + totalShowAmount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + totalFactAmount?: number; + /** + * 比例 + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + rate?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + date?: string; + /** + * 失败的订单 + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + failedCount?: number; + /** + * 创建但未填写的订单 + * @type {number} + * @memberof KamiApiCardInfoJdV1OrderSummaryRecord + */ + waitedCount?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-jd-v1-submit-req.ts b/src/api/generated/models/kami-api-card-info-jd-v1-submit-req.ts new file mode 100644 index 0000000..bd234ae --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-jd-v1-submit-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoJdV1SubmitReq + */ +export interface KamiApiCardInfoJdV1SubmitReq { + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoJdV1SubmitReq + */ + cardNo?: string; + /** + * 礼品卡密码 + * @type {string} + * @memberof KamiApiCardInfoJdV1SubmitReq + */ + giftCardPwd: string; + /** + * 回调地址 + * @type {string} + * @memberof KamiApiCardInfoJdV1SubmitReq + */ + notifyUrl: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiCardInfoJdV1SubmitReq + */ + amount: number; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoJdV1SubmitReq + */ + merchantId: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoJdV1SubmitReq + */ + attach?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-add-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-add-req.ts new file mode 100644 index 0000000..aa981d2 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-add-req.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo } from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq { + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchAddReq + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-req.ts new file mode 100644 index 0000000..1a9b299 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq { + /** + * 选择上传文件 + * @type {any} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckReq + */ + file: any; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-res.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-res.ts new file mode 100644 index 0000000..07a8b46 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-check-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo } from './kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckRes + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckRes { + /** + * 导入结果 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckRes + */ + msg?: string; + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchCheckRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info.ts new file mode 100644 index 0000000..5e1875a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-batch-info.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + isAvailable?: boolean; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + cookie?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieBatchInfo + */ + maxCountLimit?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-req.ts new file mode 100644 index 0000000..214a3c1 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq { + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckReq + */ + cookie: string; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-res.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-res.ts new file mode 100644 index 0000000..cfe68c1 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-cookie-check-res.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCookieCheckRes + */ + isAvailable?: boolean; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-create-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-create-req.ts new file mode 100644 index 0000000..d16bf63 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-create-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq { + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ + cookie: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ + name?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ + maxCountLimit?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ + remark?: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountCreateReq + */ + status?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-delete-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-delete-req.ts new file mode 100644 index 0000000..e486863 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountDeleteReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-record.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-record.ts new file mode 100644 index 0000000..a6e8c44 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-record.ts @@ -0,0 +1,163 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1AppleCardListRecordUploadUser } from './kami-api-card-info-apple-v1-apple-card-list-record-upload-user'; + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord { + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + id?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + groupId?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + cookie?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + nickname?: string; + /** + * 京东用户ID + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + username?: string; + /** + * 创建人 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + createUserId?: string; + /** + * 账户类型 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + category?: string; + /** + * 账单所有统计金额 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + amountTotalSum?: number; + /** + * 账单今日统计金额 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + amountTodaySum?: number; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + balance?: number; + /** + * 有效充值余额 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + effectiveBalance?: number; + /** + * 状态 1.正常 0.禁用 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + status?: number; + /** + * 账号最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + maxCountLimit?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + maxAmountLimit?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + amountTotalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + amountTodayCount?: number; + /** + * 账号是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + accountStatus?: boolean; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + deletedAt?: string; + /** + * + * @type {KamiApiCardInfoAppleV1AppleCardListRecordUploadUser} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord + */ + uploadUser?: KamiApiCardInfoAppleV1AppleCardListRecordUploadUser; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-req.ts new file mode 100644 index 0000000..74201c2 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-req.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq + */ + pageSize: KamiApiCardInfoOriginalJdV1OriginalJDAccountListReqPageSizeEnum; + /** + * 账户名称 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq + */ + name?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq + */ + nickName?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReq + */ + cookie?: string; +} + +export const KamiApiCardInfoOriginalJdV1OriginalJDAccountListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoOriginalJdV1OriginalJDAccountListReqPageSizeEnum = + (typeof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReqPageSizeEnum)[keyof typeof KamiApiCardInfoOriginalJdV1OriginalJDAccountListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-res.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-res.ts new file mode 100644 index 0000000..00af472 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoOriginalJdV1OriginalJDAccountListRecord } from './kami-api-card-info-original-jd-v1-original-jdaccount-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountListRes + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-refresh-status-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-refresh-status-req.ts new file mode 100644 index 0000000..4706b1d --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-refresh-status-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountRefreshStatusReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-req.ts new file mode 100644 index 0000000..06d4156 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq + */ + status?: number; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq + */ + name?: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq + */ + remark?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateReq + */ + maxAmountLimit?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-status-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-status-req.ts new file mode 100644 index 0000000..9ec3d85 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-update-status-req.ts @@ -0,0 +1,49 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReq + */ + status: KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReqStatusEnum; +} + +export const KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReqStatusEnum = + { + NUMBER_0: 0, + NUMBER_5: 5, + NUMBER_3: 3, + NUMBER_6: 6, + NUMBER_2: 2, + NUMBER_8: 8, + NUMBER_4: 4, + NUMBER_1: 1, + NUMBER_7: 7 + } as const; + +export type KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReqStatusEnum = + (typeof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReqStatusEnum)[keyof typeof KamiApiCardInfoOriginalJdV1OriginalJDAccountUpdateStatusReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-req.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-req.ts new file mode 100644 index 0000000..e0b464c --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-req.ts @@ -0,0 +1,52 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReq + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReq + */ + pageSize: KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReqPageSizeEnum; + /** + * + * @type {string} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReq + */ + accountId: string; +} + +export const KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReqPageSizeEnum = + { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 + } as const; + +export type KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReqPageSizeEnum = + (typeof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReqPageSizeEnum)[keyof typeof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-res.ts b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-res.ts new file mode 100644 index 0000000..648128a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-original-jd-v1-original-jdaccount-wallet-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemAccountHistory } from './kami-internal-model-entity-v1-card-redeem-account-history'; + +/** + * + * @export + * @interface KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListRes + */ +export interface KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoOriginalJdV1OriginalJDAccountWalletListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-call-back-order-manual-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-call-back-order-manual-req.ts new file mode 100644 index 0000000..d868ce2 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-call-back-order-manual-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1CallBackOrderManualReq + */ +export interface KamiApiCardInfoTMallGameV1CallBackOrderManualReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1CallBackOrderManualReq + */ + orderNo: string; + /** + * 充值ID + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1CallBackOrderManualReq + */ + id?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-shop-order-record.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-shop-order-record.ts new file mode 100644 index 0000000..05612cd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-shop-order-record.ts @@ -0,0 +1,129 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1ShopOrderRecord + */ +export interface KamiApiCardInfoTMallGameV1ShopOrderRecord { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + id?: number; + /** + * 充值账户 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + account?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + orderNo?: string; + /** + * 淘宝订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + tMallOrderNo?: string; + /** + * 买家昵称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + buyerNick?: string; + /** + * 买家是否评价 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + buyerRate?: number; + /** + * 交易状态 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + status?: string; + /** + * 实付金额 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + payment?: string; + /** + * 商品金额 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + totalFee?: string; + /** + * 天猫返回状态 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + tradeStatus?: string; + /** + * 买家备注 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + buyerMemo?: string; + /** + * 支付宝交易号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + alipayNo?: string; + /** + * 买家留言 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + buyerMessage?: string; + /** + * 付款时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + payTime?: string; + /** + * 交易创建时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + createTime?: string; + /** + * 交易结束时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + endTime?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1ShopOrderRecord + */ + updatedAt?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-callback-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-callback-req.ts new file mode 100644 index 0000000..3d9ad7a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-callback-req.ts @@ -0,0 +1,42 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq { + /** + * 回调授权码 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq + */ + code?: string; + /** + * 渠道 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReq + */ + channel?: KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReqChannelEnum; +} + +export const KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReqChannelEnum = + { + _12352: '12352', + _12351: '12351' + } as const; + +export type KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReqChannelEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReqChannelEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeCallbackReqChannelEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-get-key-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-get-key-res.ts new file mode 100644 index 0000000..2cbcbda --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-authorize-get-key-res.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeGetKeyRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeGetKeyRes { + /** + * 授权码 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeGetKeyRes + */ + code?: string; + /** + * 回调地址 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountAuthorizeGetKeyRes + */ + redirectUri?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-create-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-create-req.ts new file mode 100644 index 0000000..0e07ea1 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-create-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq { + /** + * 账户数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountCreateReq + */ + count: number; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-delete-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-delete-req.ts new file mode 100644 index 0000000..8d1c802 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountDeleteReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-req.ts new file mode 100644 index 0000000..2622be4 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomReq { + /** + * 时间戳 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomReq + */ + timeStamp?: number; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomReq + */ + orderNo?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-res.ts new file mode 100644 index 0000000..0ee46f6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-get-one-random-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomRes { + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountGetOneRandomRes + */ + accountNumber?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-req.ts new file mode 100644 index 0000000..3f02ff9 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountListReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountListReq { + /** + * 账户账号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountListReq + */ + accountNumber?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountListReq + */ + pageSize: KamiApiCardInfoTMallGameV1TMallGameAccountListReqPageSizeEnum; +} + +export const KamiApiCardInfoTMallGameV1TMallGameAccountListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoTMallGameV1TMallGameAccountListReqPageSizeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameAccountListReqPageSizeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameAccountListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-res.ts new file mode 100644 index 0000000..31defe6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallAccount } from './kami-internal-model-entity-v1-recharge-tmall-account'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountListRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-tmall-auth-status-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-tmall-auth-status-res.ts new file mode 100644 index 0000000..41a508a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-tmall-auth-status-res.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountTMallAuthStatusRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountTMallAuthStatusRes { + /** + * 授权状态 + * @type {boolean} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountTMallAuthStatusRes + */ + status?: boolean; + /** + * 过期时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountTMallAuthStatusRes + */ + expiredAt?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-toggle-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-toggle-req.ts new file mode 100644 index 0000000..b0e817a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-account-toggle-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAccountToggleReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-agiso-callback-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-agiso-callback-req.ts new file mode 100644 index 0000000..09ee445 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-agiso-callback-req.ts @@ -0,0 +1,65 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq { + /** + * 平台,参数值:TbAcs,TbAlds,TbArs,Print,Acpr,PddAlds,AldsIdle,AldsJd,AldsDoudian,AldsKwai,AldsYouzan,AldsWeidian,AldsWxVideoShop + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq + */ + fromPlatform?: string; + /** + * 时间戳 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq + */ + timeStamp?: number; + /** + * 推送类型 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq + */ + aopic?: KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReqAopicEnum; + /** + * json + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq + */ + json?: string; + /** + * 签名 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReq + */ + sign?: string; +} + +export const KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReqAopicEnum = { + NUMBER_16: 16, + NUMBER_2097152: 2097152, + NUMBER_4: 4, + NUMBER_2048: 2048, + NUMBER_524288: 524288, + NUMBER_256: 256, + NUMBER_32768: 32768, + NUMBER_1048576: 1048576 +} as const; + +export type KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReqAopicEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReqAopicEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameAgisoCallbackReqAopicEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-req.ts new file mode 100644 index 0000000..f6693d6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-req.ts @@ -0,0 +1,66 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReq + */ + pageSize: KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqPageSizeEnum; + /** + * 渠道名称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReq + */ + channelName?: string; + /** + * 回调类型 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReq + */ + callbackType?: KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqCallbackTypeEnum; +} + +export const KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqPageSizeEnum = + { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 + } as const; + +export type KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqPageSizeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqPageSizeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqPageSizeEnum]; +export const KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqCallbackTypeEnum = + { + Confirm: 'confirm', + Evaluation: 'evaluation' + } as const; + +export type KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqCallbackTypeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqCallbackTypeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryReqCallbackTypeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-res.ts new file mode 100644 index 0000000..002acc0 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-daily-order-summary-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord } from './kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDailyOrderSummaryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-req.ts new file mode 100644 index 0000000..6b660e6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameDataSyncReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameDataSyncReq { + /** + * 渠道名称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncReq + */ + channelName: string; + /** + * 同步时长 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncReq + */ + duration: number; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-res.ts new file mode 100644 index 0000000..f534960 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-data-sync-res.ts @@ -0,0 +1,67 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallAccount } from './kami-internal-model-entity-v1-recharge-tmall-account'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallOrder } from './kami-internal-model-entity-v1-recharge-tmall-order'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallOrderHistory } from './kami-internal-model-entity-v1-recharge-tmall-order-history'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallShop } from './kami-internal-model-entity-v1-recharge-tmall-shop'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallShopHistory } from './kami-internal-model-entity-v1-recharge-tmall-shop-history'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameDataSyncRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameDataSyncRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncRes + */ + shopData?: Array; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncRes + */ + orderData?: Array; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncRes + */ + orderHistory?: Array; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncRes + */ + shopHistory?: Array; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameDataSyncRes + */ + accountData?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-category.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-category.ts new file mode 100644 index 0000000..db3222a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-category.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderCategory + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderCategory { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderCategory + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderCategory + */ + name?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-req.ts new file mode 100644 index 0000000..affd850 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-req.ts @@ -0,0 +1,100 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderListReq { + /** + * 状态 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + status?: string; + /** + * 账号编号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + accountNumber?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + orderNo?: string; + /** + * 商户订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + merchantOrder?: string; + /** + * 充值账号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + thirdMerchantOrder?: string; + /** + * 天猫店铺订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + tMallShopOrder?: string; + /** + * 时间范围 + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + dateRange?: Array; + /** + * 回调类型 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + callbackType?: KamiApiCardInfoTMallGameV1TMallGameOrderListReqCallbackTypeEnum; + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListReq + */ + pageSize: KamiApiCardInfoTMallGameV1TMallGameOrderListReqPageSizeEnum; +} + +export const KamiApiCardInfoTMallGameV1TMallGameOrderListReqCallbackTypeEnum = { + Confirm: 'confirm', + Evaluation: 'evaluation' +} as const; + +export type KamiApiCardInfoTMallGameV1TMallGameOrderListReqCallbackTypeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameOrderListReqCallbackTypeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameOrderListReqCallbackTypeEnum]; +export const KamiApiCardInfoTMallGameV1TMallGameOrderListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoTMallGameV1TMallGameOrderListReqPageSizeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameOrderListReqPageSizeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameOrderListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-res.ts new file mode 100644 index 0000000..f62deda --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMAllListRecord } from './kami-api-card-info-tmall-game-v1-tmall-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderListRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-modify-status-succeed-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-modify-status-succeed-req.ts new file mode 100644 index 0000000..c2512f1 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-modify-status-succeed-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq { + /** + * TOTP + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq + */ + totpCode?: string; + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderModifyStatusSucceedReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-req.ts new file mode 100644 index 0000000..2377e65 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryReq + */ + tId?: string; + /** + * 游戏类型 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryReq + */ + category?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-res.ts new file mode 100644 index 0000000..4386b16 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-category-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMallGameOrderCategory } from './kami-api-card-info-tmall-game-v1-tmall-game-order-category'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryCategoryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-req.ts new file mode 100644 index 0000000..c953165 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderReq + */ + tId: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-res.ts new file mode 100644 index 0000000..f3b77ca --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-query-order-res.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes { + /** + * 充值ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + id?: string; + /** + * 来源 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + sourceOfShop?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + orderNo?: string; + /** + * 游戏品类 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + category?: string; + /** + * 游戏账号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + account?: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + amount?: number; + /** + * 充值时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + topUpTime?: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderQueryOrderRes + */ + status?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-req.ts new file mode 100644 index 0000000..3e61c6f --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-req.ts @@ -0,0 +1,90 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq { + /** + * 账户 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + accountNumber?: string; + /** + * 提交金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + amount?: number; + /** + * 第三方订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + merchantOrder?: string; + /** + * 充值账号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + thirdMerchantOrder?: string; + /** + * 回调地址 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + callbackUrl?: string; + /** + * 回调类型 confirm 确认收货回调 evaluation 评价回调 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + callbackType?: KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReqCallbackTypeEnum; + /** + * 附加信息,附加信息会原封不动返回 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + attach?: string; + /** + * 时间戳 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + timeStamp?: number; + /** + * 签名 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + sign?: string; + /** + * 渠道名称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReq + */ + channelName?: string; +} + +export const KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReqCallbackTypeEnum = + { + Confirm: 'confirm', + Evaluation: 'evaluation' + } as const; + +export type KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReqCallbackTypeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReqCallbackTypeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitReqCallbackTypeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-res.ts new file mode 100644 index 0000000..9cdbe97 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-order-submit-res.ts @@ -0,0 +1,47 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameOrderSubmitRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameOrderSubmitRes { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitRes + */ + orderNo?: string; + /** + * 充值返回编码 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitRes + */ + status?: KamiApiCardInfoTMallGameV1TMallGameOrderSubmitResStatusEnum; + /** + * 详细描述信息 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitRes + */ + message?: string; +} + +export const KamiApiCardInfoTMallGameV1TMallGameOrderSubmitResStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiCardInfoTMallGameV1TMallGameOrderSubmitResStatusEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitResStatusEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameOrderSubmitResStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-req.ts new file mode 100644 index 0000000..327bcbc --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneReq { + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-res.ts new file mode 100644 index 0000000..1cd903d --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-get-one-res.ts @@ -0,0 +1,135 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + id?: number; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + orderNo?: string; + /** + * 充值账号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + account?: string; + /** + * 淘宝订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + tMallOrderNo?: string; + /** + * 买家昵称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + buyerNick?: string; + /** + * 买家是否评价 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + buyerRate?: number; + /** + * 交易状态 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + status?: string; + /** + * 实付金额 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + payment?: string; + /** + * 商品金额 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + totalFee?: string; + /** + * 付款时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + payTime?: string; + /** + * 天猫返回状态 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + tradeStatus?: string; + /** + * 买家备注 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + buyerMemo?: string; + /** + * 支付宝交易号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + alipayNo?: string; + /** + * 买家留言 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + buyerMessage?: string; + /** + * 交易创建时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + createTime?: string; + /** + * 交易结束时间 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + endTime?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderGetOneRes + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-req.ts new file mode 100644 index 0000000..85e572f --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryReq { + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-res.ts new file mode 100644 index 0000000..63f0e2e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-history-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallOrderHistory } from './kami-internal-model-entity-v1-recharge-tmall-order-history'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderHistoryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-req.ts new file mode 100644 index 0000000..9590e4d --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-req.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + pageSize: KamiApiCardInfoTMallGameV1TMallGameShopOrderListReqPageSizeEnum; + /** + * 充值账户 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + account?: string; + /** + * 淘宝订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + tMallOrderNo?: string; + /** + * 买家昵称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + buyerNickName?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + orderNo?: string; + /** + * 时间范围 + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReq + */ + dateRange?: Array; +} + +export const KamiApiCardInfoTMallGameV1TMallGameShopOrderListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoTMallGameV1TMallGameShopOrderListReqPageSizeEnum = + (typeof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReqPageSizeEnum)[keyof typeof KamiApiCardInfoTMallGameV1TMallGameShopOrderListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-res.ts new file mode 100644 index 0000000..d341657 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1ShopOrderRecord } from './kami-api-card-info-tmall-game-v1-shop-order-record'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderListRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-req.ts new file mode 100644 index 0000000..f22046b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryReq { + /** + * 订单ID + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryReq + */ + shopId: number; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-res.ts new file mode 100644 index 0000000..0ee3e8b --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-shop-order-tmall-history-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1RechargeTMallShopHistory } from './kami-internal-model-entity-v1-recharge-tmall-shop-history'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoTMallGameV1TMallGameShopOrderTMallHistoryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-req.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-req.ts new file mode 100644 index 0000000..edd59df --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameStatsReq + */ +export interface KamiApiCardInfoTMallGameV1TMallGameStatsReq { + /** + * 渠道名称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsReq + */ + channelName?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-res.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-res.ts new file mode 100644 index 0000000..5c558ce --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-stats-res.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ +export interface KamiApiCardInfoTMallGameV1TMallGameStatsRes { + /** + * 总订单数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + totalCount?: number; + /** + * 总订单成功数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + totalSucceedCount?: number; + /** + * 总支付金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + totalAmount?: number; + /** + * 总成功订单总额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + totalSucceedAmount?: number; + /** + * 今日订单数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + todayCount?: number; + /** + * 今日订单成功数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + todaySucceedCount?: number; + /** + * 今日支付金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + todayAmount?: number; + /** + * 今日成功订单总额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + TodaySucceedAmount?: number; + /** + * 总订单成功率 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + totalRate?: number; + /** + * 今日订单成功率 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMallGameStatsRes + */ + todayRate?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record.ts new file mode 100644 index 0000000..e54dca4 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-game-summary-list-record.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ +export interface KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord { + /** + * 订单数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ + count?: number; + /** + * 订单成功数量 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ + succeedCount?: number; + /** + * 订单成功金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ + succeedAmount?: number; + /** + * 总支付金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ + amount?: number; + /** + * 今日订单成功率 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ + rate?: number; + /** + * 日期 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllGameSummaryListRecord + */ + date?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-account-info.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-account-info.ts new file mode 100644 index 0000000..1ee3b1c --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-account-info.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo + */ +export interface KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo { + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo + */ + accountNumber?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo + */ + id?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info.ts new file mode 100644 index 0000000..6ac4e30 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo + */ +export interface KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo { + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo + */ + tMallOrderNo?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo + */ + endTime?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record.ts b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record.ts new file mode 100644 index 0000000..adfc24a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-tmall-game-v1-tmall-list-record.ts @@ -0,0 +1,142 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo } from './kami-api-card-info-tmall-game-v1-tmall-list-record-account-info'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo } from './kami-api-card-info-tmall-game-v1-tmall-list-record-shop-info'; + +/** + * + * @export + * @interface KamiApiCardInfoTMallGameV1TMAllListRecord + */ +export interface KamiApiCardInfoTMallGameV1TMAllListRecord { + /** + * + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + id?: number; + /** + * 通道名称 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + channelName?: string; + /** + * 订单号,同时是ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + orderNo?: string; + /** + * 账户ID + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + accountId?: string; + /** + * 账号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + accountNumber?: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + amount?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + status?: string; + /** + * 第三方订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + merchantOrder?: string; + /** + * 第三方订单号 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + thirdMerhantOrder?: string; + /** + * 回调状态 + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + notifyStatus?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + callbackUrl?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + remark?: string; + /** + * 关联天猫订单内部id + * @type {number} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + shopId?: number; + /** + * 回调类型 + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + callbackType?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + deletedAt?: string; + /** + * + * @type {KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + accountInfo?: KamiApiCardInfoTMallGameV1TMAllListRecordAccountInfo; + /** + * + * @type {KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo} + * @memberof KamiApiCardInfoTMallGameV1TMAllListRecord + */ + shopInfo?: KamiApiCardInfoTMallGameV1TMAllListRecordShopInfo; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-add-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-add-req.ts new file mode 100644 index 0000000..f4fcf18 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-add-req.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieBatchInfo } from './kami-api-card-info-walmart-v1-account-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCookieBatchAddReq + */ +export interface KamiApiCardInfoWalmartV1AccountCookieBatchAddReq { + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchAddReq + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-req.ts new file mode 100644 index 0000000..9c17fef --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq + */ +export interface KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq { + /** + * 选择上传文件 + * @type {any} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchCheckReq + */ + file: any; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-res.ts new file mode 100644 index 0000000..b6f9d25 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-check-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountCookieBatchInfo } from './kami-api-card-info-walmart-v1-account-cookie-batch-info'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCookieBatchCheckRes + */ +export interface KamiApiCardInfoWalmartV1AccountCookieBatchCheckRes { + /** + * 导入结果 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchCheckRes + */ + msg?: string; + /** + * 导入结果 + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchCheckRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-info.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-info.ts new file mode 100644 index 0000000..9e2c1b2 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-batch-info.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ +export interface KamiApiCardInfoWalmartV1AccountCookieBatchInfo { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + isAvailable?: boolean; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + cookie?: string; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + maxAmountLimit?: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCookieBatchInfo + */ + maxCountLimit?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-req.ts new file mode 100644 index 0000000..dd33f10 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCookieCheckReq + */ +export interface KamiApiCardInfoWalmartV1AccountCookieCheckReq { + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieCheckReq + */ + cookie: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-res.ts new file mode 100644 index 0000000..befa2b9 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-cookie-check-res.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCookieCheckRes + */ +export interface KamiApiCardInfoWalmartV1AccountCookieCheckRes { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieCheckRes + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCookieCheckRes + */ + nickname?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCookieCheckRes + */ + balance?: number; + /** + * 是否存在系统中 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1AccountCookieCheckRes + */ + isExist?: boolean; + /** + * 是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1AccountCookieCheckRes + */ + isAvailable?: boolean; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-create-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-create-req.ts new file mode 100644 index 0000000..540de56 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-create-req.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountCreateReq + */ +export interface KamiApiCardInfoWalmartV1AccountCreateReq { + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + cookie: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + name?: string; + /** + * 分组ID + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + groupId?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + maxAmountLimit: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + maxCountLimit: number; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + status?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountCreateReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-record.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-record.ts new file mode 100644 index 0000000..c78ec72 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-record.ts @@ -0,0 +1,106 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1CardRedeemAccountSummary } from './kami-api-card-info-walmart-v1-card-redeem-account-summary'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1SysUserRecord } from './kami-api-sys-user-v1-sys-user-record'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ +export interface KamiApiCardInfoWalmartV1AccountDailySummaryRecord { + /** + * + * @type {KamiApiCardInfoWalmartV1CardRedeemAccountSummary} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + dailySummary?: KamiApiCardInfoWalmartV1CardRedeemAccountSummary; + /** + * + * @type {KamiApiSysUserV1SysUserRecord} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + uploadUser?: KamiApiSysUserV1SysUserRecord; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + id?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + name?: string; + /** + * 京东用户ID + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + username?: string; + /** + * 创建人 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + createUserId?: string; + /** + * 账户类型 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + category?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + balance?: number; + /** + * 状态 1.正常 0.禁用 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + status?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRecord + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-req.ts new file mode 100644 index 0000000..273ab81 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountDailySummaryReq + */ +export interface KamiApiCardInfoWalmartV1AccountDailySummaryReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryReq + */ + pageSize: KamiApiCardInfoWalmartV1AccountDailySummaryReqPageSizeEnum; + /** + * 用户 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryReq + */ + username?: string; + /** + * 日期 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryReq + */ + date?: string; +} + +export const KamiApiCardInfoWalmartV1AccountDailySummaryReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1AccountDailySummaryReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1AccountDailySummaryReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1AccountDailySummaryReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-res.ts new file mode 100644 index 0000000..d815693 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-daily-summary-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1CardRedeemAccountSummary } from './kami-api-card-info-walmart-v1-card-redeem-account-summary'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountDailySummaryRes + */ +export interface KamiApiCardInfoWalmartV1AccountDailySummaryRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1AccountDailySummaryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-delete-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-delete-req.ts new file mode 100644 index 0000000..0ac1018 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountDeleteReq + */ +export interface KamiApiCardInfoWalmartV1AccountDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-info.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-info.ts new file mode 100644 index 0000000..4f6e55e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-info.ts @@ -0,0 +1,109 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1SysUserRecord } from './kami-api-sys-user-v1-sys-user-record'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountInfo + */ +export interface KamiApiCardInfoWalmartV1AccountInfo { + /** + * + * @type {KamiApiSysUserV1SysUserRecord} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + uploadUser?: KamiApiSysUserV1SysUserRecord; + /** + * 创建人 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + createUserId?: string; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + balance?: number; + /** + * 状态 1.正常 0.禁用 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + status?: number; + /** + * 账号最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + maxCountLimit?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + maxAmountLimit?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + amountTodayCount?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + id?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + name?: string; + /** + * 账户类型 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + category?: string; + /** + * 账单所有统计金额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + amountTotalSum?: number; + /** + * 账单今日统计金额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + amountTodaySum?: number; + /** + * 有效充值余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + effectiveBalance?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountInfo + */ + amountTotalCount?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-record.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-record.ts new file mode 100644 index 0000000..d849c38 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-record.ts @@ -0,0 +1,163 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoAppleV1AppleCardListRecordUploadUser } from './kami-api-card-info-apple-v1-apple-card-list-record-upload-user'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountListRecord + */ +export interface KamiApiCardInfoWalmartV1AccountListRecord { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + id?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + groupId?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + name?: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + cookie?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + nickname?: string; + /** + * 京东用户ID + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + username?: string; + /** + * 创建人 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + createUserId?: string; + /** + * 账户类型 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + category?: string; + /** + * 账单所有统计金额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + amountTotalSum?: number; + /** + * 账单今日统计金额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + amountTodaySum?: number; + /** + * 余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + balance?: number; + /** + * 有效充值余额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + effectiveBalance?: number; + /** + * 状态 1.正常 0.禁用 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + status?: number; + /** + * 账号最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + maxCountLimit?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + maxAmountLimit?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + amountTotalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + amountTodayCount?: number; + /** + * 账号是否可用 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + accountStatus?: boolean; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + deletedAt?: string; + /** + * + * @type {KamiApiCardInfoAppleV1AppleCardListRecordUploadUser} + * @memberof KamiApiCardInfoWalmartV1AccountListRecord + */ + uploadUser?: KamiApiCardInfoAppleV1AppleCardListRecordUploadUser; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-req.ts new file mode 100644 index 0000000..b586258 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-req.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountListReq + */ +export interface KamiApiCardInfoWalmartV1AccountListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + pageSize: KamiApiCardInfoWalmartV1AccountListReqPageSizeEnum; + /** + * 账户名称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + name?: string; + /** + * 用户昵称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + nickName?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + cookie?: string; + /** + * 创建用户昵称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + CreatedUserName?: string; + /** + * 分组ID + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListReq + */ + groupId?: number; +} + +export const KamiApiCardInfoWalmartV1AccountListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1AccountListReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1AccountListReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1AccountListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-res.ts new file mode 100644 index 0000000..6601920 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountListRecord } from './kami-api-card-info-walmart-v1-account-list-record'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountListRes + */ +export interface KamiApiCardInfoWalmartV1AccountListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1AccountListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-load-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-load-req.ts new file mode 100644 index 0000000..024599a --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-load-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountLoadReq + */ +export interface KamiApiCardInfoWalmartV1AccountLoadReq { + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountLoadReq + */ + cookie: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountLoadReq + */ + id: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountLoadReq + */ + name: string; + /** + * 分组名称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountLoadReq + */ + groupName: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountLoadReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-refresh-status-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-refresh-status-req.ts new file mode 100644 index 0000000..f02f268 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-refresh-status-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountRefreshStatusReq + */ +export interface KamiApiCardInfoWalmartV1AccountRefreshStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountRefreshStatusReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-req.ts new file mode 100644 index 0000000..1a72236 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountStatusDetectReq + */ +export interface KamiApiCardInfoWalmartV1AccountStatusDetectReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountStatusDetectReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-res.ts new file mode 100644 index 0000000..dcc3400 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-detect-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountStatusDetectRes + */ +export interface KamiApiCardInfoWalmartV1AccountStatusDetectRes { + /** + * 状态 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1AccountStatusDetectRes + */ + status?: boolean; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-reset-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-reset-req.ts new file mode 100644 index 0000000..97bcb3e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-status-reset-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountStatusResetReq + */ +export interface KamiApiCardInfoWalmartV1AccountStatusResetReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountStatusResetReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-summary-download-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-summary-download-req.ts new file mode 100644 index 0000000..7159cd6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-summary-download-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountSummaryDownloadReq + */ +export interface KamiApiCardInfoWalmartV1AccountSummaryDownloadReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountSummaryDownloadReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountSummaryDownloadReq + */ + pageSize: KamiApiCardInfoWalmartV1AccountSummaryDownloadReqPageSizeEnum; + /** + * 用户 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountSummaryDownloadReq + */ + username?: string; + /** + * 日期 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountSummaryDownloadReq + */ + date?: string; +} + +export const KamiApiCardInfoWalmartV1AccountSummaryDownloadReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1AccountSummaryDownloadReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1AccountSummaryDownloadReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1AccountSummaryDownloadReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-update-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-update-req.ts new file mode 100644 index 0000000..ca3e312 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-update-req.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountUpdateReq + */ +export interface KamiApiCardInfoWalmartV1AccountUpdateReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + id: string; + /** + * cookie不能为空 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + cookie: string; + /** + * 别名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + name?: string; + /** + * 分组ID + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + groupId?: number; + /** + * 最大充值限制 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + maxAmountLimit: number; + /** + * 最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + maxCountLimit: number; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + status?: number; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-update-status-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-update-status-req.ts new file mode 100644 index 0000000..f2778bf --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-update-status-req.ts @@ -0,0 +1,48 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountUpdateStatusReq + */ +export interface KamiApiCardInfoWalmartV1AccountUpdateStatusReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateStatusReq + */ + id: string; + /** + * 状态 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountUpdateStatusReq + */ + status: KamiApiCardInfoWalmartV1AccountUpdateStatusReqStatusEnum; +} + +export const KamiApiCardInfoWalmartV1AccountUpdateStatusReqStatusEnum = { + NUMBER_0: 0, + NUMBER_5: 5, + NUMBER_3: 3, + NUMBER_6: 6, + NUMBER_2: 2, + NUMBER_8: 8, + NUMBER_4: 4, + NUMBER_1: 1, + NUMBER_7: 7 +} as const; + +export type KamiApiCardInfoWalmartV1AccountUpdateStatusReqStatusEnum = + (typeof KamiApiCardInfoWalmartV1AccountUpdateStatusReqStatusEnum)[keyof typeof KamiApiCardInfoWalmartV1AccountUpdateStatusReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-req.ts new file mode 100644 index 0000000..d367fbc --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountWalletListReq + */ +export interface KamiApiCardInfoWalmartV1AccountWalletListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountWalletListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountWalletListReq + */ + pageSize: KamiApiCardInfoWalmartV1AccountWalletListReqPageSizeEnum; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1AccountWalletListReq + */ + accountId: string; +} + +export const KamiApiCardInfoWalmartV1AccountWalletListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1AccountWalletListReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1AccountWalletListReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1AccountWalletListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-res.ts new file mode 100644 index 0000000..935dc82 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-account-wallet-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemAccountHistory } from './kami-internal-model-entity-v1-card-redeem-account-history'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1AccountWalletListRes + */ +export interface KamiApiCardInfoWalmartV1AccountWalletListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1AccountWalletListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1AccountWalletListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-card-redeem-account-summary.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-card-redeem-account-summary.ts new file mode 100644 index 0000000..aff5abe --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-card-redeem-account-summary.ts @@ -0,0 +1,79 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1AccountInfo } from './kami-api-card-info-walmart-v1-account-info'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ +export interface KamiApiCardInfoWalmartV1CardRedeemAccountSummary { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + groupId?: number; + /** + * + * @type {KamiApiCardInfoWalmartV1AccountInfo} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + accountInfo?: KamiApiCardInfoWalmartV1AccountInfo; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + accountId?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + amountTotalSum?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + amountTodaySum?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + amountTotalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + amountTodayCount?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1CardRedeemAccountSummary + */ + date?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-add-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-add-req.ts new file mode 100644 index 0000000..d7815fb --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-add-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupAddReq + */ +export interface KamiApiCardInfoWalmartV1GroupAddReq { + /** + * 分组名称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1GroupAddReq + */ + name: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1GroupAddReq + */ + notes?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-all-list-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-all-list-res.ts new file mode 100644 index 0000000..9f8ec7f --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-all-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemAccountGroup } from './kami-internal-model-entity-v1-card-redeem-account-group'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupAllListRes + */ +export interface KamiApiCardInfoWalmartV1GroupAllListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupAllListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1GroupAllListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-delete-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-delete-req.ts new file mode 100644 index 0000000..9e1931e --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupDeleteReq + */ +export interface KamiApiCardInfoWalmartV1GroupDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-list-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-list-req.ts new file mode 100644 index 0000000..7562d51 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupListReq + */ +export interface KamiApiCardInfoWalmartV1GroupListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupListReq + */ + pageSize: KamiApiCardInfoWalmartV1GroupListReqPageSizeEnum; +} + +export const KamiApiCardInfoWalmartV1GroupListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1GroupListReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1GroupListReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1GroupListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-list-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-list-res.ts new file mode 100644 index 0000000..c98e431 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemAccountGroup } from './kami-internal-model-entity-v1-card-redeem-account-group'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupListRes + */ +export interface KamiApiCardInfoWalmartV1GroupListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1GroupListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-req.ts new file mode 100644 index 0000000..9a1d0b8 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupStatReq + */ +export interface KamiApiCardInfoWalmartV1GroupStatReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupStatReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupStatReq + */ + pageSize: KamiApiCardInfoWalmartV1GroupStatReqPageSizeEnum; + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1GroupStatReq + */ + username?: string; + /** + * 日期 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1GroupStatReq + */ + date?: string; +} + +export const KamiApiCardInfoWalmartV1GroupStatReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1GroupStatReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1GroupStatReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1GroupStatReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-res.ts new file mode 100644 index 0000000..4303009 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-stat-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity } from './kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupStatRes + */ +export interface KamiApiCardInfoWalmartV1GroupStatRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupStatRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1GroupStatRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-group-update-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-group-update-req.ts new file mode 100644 index 0000000..ef76e45 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-group-update-req.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1GroupUpdateReq + */ +export interface KamiApiCardInfoWalmartV1GroupUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1GroupUpdateReq + */ + id: number; + /** + * 分组名称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1GroupUpdateReq + */ + name: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1GroupUpdateReq + */ + notes?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-list-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-list-req.ts new file mode 100644 index 0000000..4fd2bcd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-list-req.ts @@ -0,0 +1,87 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1ListReq + */ +export interface KamiApiCardInfoWalmartV1ListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + pageSize: KamiApiCardInfoWalmartV1ListReqPageSizeEnum; + /** + * 礼品卡密码 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + giftCardPwd?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + merchantId?: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + attach?: string; + /** + * 账户昵称 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + accountNickName?: string; + /** + * 组ID + * @type {number} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + groupId?: number; + /** + * 账户cookie + * @type {string} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + accountCk?: string; + /** + * 时间范围 + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1ListReq + */ + dateRange?: Array; +} + +export const KamiApiCardInfoWalmartV1ListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1ListReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1ListReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1ListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-list-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-list-res.ts new file mode 100644 index 0000000..473c58f --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemOrderInfo } from './kami-internal-model-entity-v1-card-redeem-order-info'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1ListRes + */ +export interface KamiApiCardInfoWalmartV1ListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1ListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1ListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-callback-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-callback-req.ts new file mode 100644 index 0000000..e8644cd --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-callback-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderCallbackReq + */ +export interface KamiApiCardInfoWalmartV1OrderCallbackReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderCallbackReq + */ + orderNo: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-history-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-history-req.ts new file mode 100644 index 0000000..a4d2dc7 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-history-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderHistoryReq + */ +export interface KamiApiCardInfoWalmartV1OrderHistoryReq { + /** + * 订单ID + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderHistoryReq + */ + orderNo?: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-history-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-history-res.ts new file mode 100644 index 0000000..f0d6225 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-history-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemOrderHistory } from './kami-internal-model-entity-v1-card-redeem-order-history'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderHistoryRes + */ +export interface KamiApiCardInfoWalmartV1OrderHistoryRes { + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1OrderHistoryRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-status-reset-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-status-reset-req.ts new file mode 100644 index 0000000..a326c61 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-status-reset-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderStatusResetReq + */ +export interface KamiApiCardInfoWalmartV1OrderStatusResetReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderStatusResetReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-req.ts new file mode 100644 index 0000000..c9a8f25 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderSummaryListReq + */ +export interface KamiApiCardInfoWalmartV1OrderSummaryListReq { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryListReq + */ + roadUid?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryListReq + */ + pageSize: KamiApiCardInfoWalmartV1OrderSummaryListReqPageSizeEnum; +} + +export const KamiApiCardInfoWalmartV1OrderSummaryListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardInfoWalmartV1OrderSummaryListReqPageSizeEnum = + (typeof KamiApiCardInfoWalmartV1OrderSummaryListReqPageSizeEnum)[keyof typeof KamiApiCardInfoWalmartV1OrderSummaryListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-res.ts new file mode 100644 index 0000000..fefb759 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1OrderSummaryRecord } from './kami-api-card-info-walmart-v1-order-summary-record'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderSummaryListRes + */ +export interface KamiApiCardInfoWalmartV1OrderSummaryListRes { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-record.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-record.ts new file mode 100644 index 0000000..8b035d0 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-order-summary-record.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1OrderSummaryRecord + */ +export interface KamiApiCardInfoWalmartV1OrderSummaryRecord { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + merchantUid?: string; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + merchantName?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + succeedCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + succeedShowAmount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + succeedFactAmount?: number; + /** + * 订单总量 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + totalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + totalShowAmount?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + totalFactAmount?: number; + /** + * 比例 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + rate?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + date?: string; + /** + * 失败的订单 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + failedCount?: number; + /** + * 创建但未填写的订单 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1OrderSummaryRecord + */ + waitedCount?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-get-res.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-get-res.ts new file mode 100644 index 0000000..a097620 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-get-res.ts @@ -0,0 +1,84 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ +export interface KamiApiCardInfoWalmartV1RedeemConfigGetRes { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + isAllowDifferentAmount?: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + isAllowDifferentSucceedCallback?: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + isAllowDifferentFailCallback?: boolean; + /** + * 充值卡最小充值金额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + redeemCardMinAmount?: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + isAllowCompensatedCallback?: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + redeemCardRate?: number; + /** + * 是否允许重复充值 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + isCardAllowRepeated?: boolean; + /** + * 单个账户单日最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + maxAccountRedeemCount?: number; + /** + * 充值订单调度策略 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigGetRes + */ + redeemOrderScheduleStrategy?: KamiApiCardInfoWalmartV1RedeemConfigGetResRedeemOrderScheduleStrategyEnum; +} + +export const KamiApiCardInfoWalmartV1RedeemConfigGetResRedeemOrderScheduleStrategyEnum = + { + Normal: 'normal', + Random: 'random' + } as const; + +export type KamiApiCardInfoWalmartV1RedeemConfigGetResRedeemOrderScheduleStrategyEnum = + (typeof KamiApiCardInfoWalmartV1RedeemConfigGetResRedeemOrderScheduleStrategyEnum)[keyof typeof KamiApiCardInfoWalmartV1RedeemConfigGetResRedeemOrderScheduleStrategyEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-set-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-set-req.ts new file mode 100644 index 0000000..522e887 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-redeem-config-set-req.ts @@ -0,0 +1,84 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ +export interface KamiApiCardInfoWalmartV1RedeemConfigSetReq { + /** + * 是否允许金额异议充值 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + isAllowDifferentAmount: boolean; + /** + * 是否允许金额异议回调(充值成功) + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + isAllowDifferentSucceedCallback: boolean; + /** + * 是否允许金额异议回调(充值失败) + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + isAllowDifferentFailCallback: boolean; + /** + * 账号单日最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + redeemCardMinAmount: number; + /** + * 是否允许补卡自动回调 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + isAllowCompensatedCallback: boolean; + /** + * 充值卡充值速率 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + redeemCardRate: number; + /** + * 是否允许重复充值 + * @type {boolean} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + isCardAllowRepeated: boolean; + /** + * 单个账户单日最大充值次数 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + maxAccountRedeemCount?: number; + /** + * 充值订单调度策略 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1RedeemConfigSetReq + */ + redeemOrderScheduleStrategy?: KamiApiCardInfoWalmartV1RedeemConfigSetReqRedeemOrderScheduleStrategyEnum; +} + +export const KamiApiCardInfoWalmartV1RedeemConfigSetReqRedeemOrderScheduleStrategyEnum = + { + Normal: 'normal', + Random: 'random' + } as const; + +export type KamiApiCardInfoWalmartV1RedeemConfigSetReqRedeemOrderScheduleStrategyEnum = + (typeof KamiApiCardInfoWalmartV1RedeemConfigSetReqRedeemOrderScheduleStrategyEnum)[keyof typeof KamiApiCardInfoWalmartV1RedeemConfigSetReqRedeemOrderScheduleStrategyEnum]; diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-submit-req.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-submit-req.ts new file mode 100644 index 0000000..40f1b90 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-submit-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1SubmitReq + */ +export interface KamiApiCardInfoWalmartV1SubmitReq { + /** + * 卡号 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1SubmitReq + */ + cardNo?: string; + /** + * 礼品卡密码 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1SubmitReq + */ + giftCardPwd: string; + /** + * 回调地址 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1SubmitReq + */ + notifyUrl: string; + /** + * 商户ID + * @type {string} + * @memberof KamiApiCardInfoWalmartV1SubmitReq + */ + merchantId: string; + /** + * 附加信息 + * @type {string} + * @memberof KamiApiCardInfoWalmartV1SubmitReq + */ + attach?: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiCardInfoWalmartV1SubmitReq + */ + amount: number; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account.ts new file mode 100644 index 0000000..d865dab --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount + */ +export interface KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount { + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount + */ + total?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount + */ + normal?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount + */ + unNormal?: number; +} diff --git a/src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity.ts b/src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity.ts new file mode 100644 index 0000000..3fc6a61 --- /dev/null +++ b/src/api/generated/models/kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity.ts @@ -0,0 +1,61 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount } from './kami-api-card-info-walmart-v1-v1-card-redeem-account-group-entity-account'; + +/** + * + * @export + * @interface KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ +export interface KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity { + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ + orderDate?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ + groupId?: number; + /** + * + * @type {string} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ + groupName?: string; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ + count?: number; + /** + * + * @type {number} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ + sum?: number; + /** + * + * @type {KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount} + * @memberof KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntity + */ + account?: KamiApiCardInfoWalmartV1V1CardRedeemAccountGroupEntityAccount; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-add-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-add-req.ts new file mode 100644 index 0000000..ac6b51d --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-add-req.ts @@ -0,0 +1,53 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountAddReq + */ +export interface KamiApiCardRedeemJdV1AccountAddReq { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountAddReq + */ + name: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountAddReq + */ + cookie: string; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountAddReq + */ + status: KamiApiCardRedeemJdV1AccountAddReqStatusEnum; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountAddReq + */ + notes?: string; +} + +export const KamiApiCardRedeemJdV1AccountAddReqStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; + +export type KamiApiCardRedeemJdV1AccountAddReqStatusEnum = + (typeof KamiApiCardRedeemJdV1AccountAddReqStatusEnum)[keyof typeof KamiApiCardRedeemJdV1AccountAddReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-delete-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-delete-req.ts new file mode 100644 index 0000000..f658be0 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountDeleteReq + */ +export interface KamiApiCardRedeemJdV1AccountDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-req.ts new file mode 100644 index 0000000..b7a7265 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountGetReq + */ +export interface KamiApiCardRedeemJdV1AccountGetReq { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountGetReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-res.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-res.ts new file mode 100644 index 0000000..439c7f8 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-get-res.ts @@ -0,0 +1,83 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountGetRes + */ +export interface KamiApiCardRedeemJdV1AccountGetRes { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + name?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + cookie?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + notes?: string; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + status?: KamiApiCardRedeemJdV1AccountGetResStatusEnum; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + category?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountGetRes + */ + deletedAt?: string; +} + +export const KamiApiCardRedeemJdV1AccountGetResStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; + +export type KamiApiCardRedeemJdV1AccountGetResStatusEnum = + (typeof KamiApiCardRedeemJdV1AccountGetResStatusEnum)[keyof typeof KamiApiCardRedeemJdV1AccountGetResStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-req.ts new file mode 100644 index 0000000..e2d9191 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-req.ts @@ -0,0 +1,70 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountListReq + */ +export interface KamiApiCardRedeemJdV1AccountListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountListReq + */ + pageSize: KamiApiCardRedeemJdV1AccountListReqPageSizeEnum; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountListReq + */ + status?: KamiApiCardRedeemJdV1AccountListReqStatusEnum; + /** + * 昵称 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountListReq + */ + name?: string; + /** + * ck + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountListReq + */ + cookie?: string; +} + +export const KamiApiCardRedeemJdV1AccountListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardRedeemJdV1AccountListReqPageSizeEnum = + (typeof KamiApiCardRedeemJdV1AccountListReqPageSizeEnum)[keyof typeof KamiApiCardRedeemJdV1AccountListReqPageSizeEnum]; +export const KamiApiCardRedeemJdV1AccountListReqStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; + +export type KamiApiCardRedeemJdV1AccountListReqStatusEnum = + (typeof KamiApiCardRedeemJdV1AccountListReqStatusEnum)[keyof typeof KamiApiCardRedeemJdV1AccountListReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-res.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-res.ts new file mode 100644 index 0000000..b7ddc29 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardRedeemJdV1CookieInfo } from './kami-api-card-redeem-jd-v1-cookie-info'; + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountListRes + */ +export interface KamiApiCardRedeemJdV1AccountListRes { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardRedeemJdV1AccountListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-status-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-status-req.ts new file mode 100644 index 0000000..3eb71ef --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-status-req.ts @@ -0,0 +1,41 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountStatusReq + */ +export interface KamiApiCardRedeemJdV1AccountStatusReq { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountStatusReq + */ + id: number; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountStatusReq + */ + status: KamiApiCardRedeemJdV1AccountStatusReqStatusEnum; +} + +export const KamiApiCardRedeemJdV1AccountStatusReqStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; + +export type KamiApiCardRedeemJdV1AccountStatusReqStatusEnum = + (typeof KamiApiCardRedeemJdV1AccountStatusReqStatusEnum)[keyof typeof KamiApiCardRedeemJdV1AccountStatusReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-account-update-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-update-req.ts new file mode 100644 index 0000000..800f345 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-account-update-req.ts @@ -0,0 +1,59 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1AccountUpdateReq + */ +export interface KamiApiCardRedeemJdV1AccountUpdateReq { + /** + * 用户名 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountUpdateReq + */ + name: string; + /** + * cookie + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountUpdateReq + */ + cookie: string; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountUpdateReq + */ + status: KamiApiCardRedeemJdV1AccountUpdateReqStatusEnum; + /** + * 备注 + * @type {string} + * @memberof KamiApiCardRedeemJdV1AccountUpdateReq + */ + notes?: string; + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1AccountUpdateReq + */ + id: number; +} + +export const KamiApiCardRedeemJdV1AccountUpdateReqStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; + +export type KamiApiCardRedeemJdV1AccountUpdateReqStatusEnum = + (typeof KamiApiCardRedeemJdV1AccountUpdateReqStatusEnum)[keyof typeof KamiApiCardRedeemJdV1AccountUpdateReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-cookie-info.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-cookie-info.ts new file mode 100644 index 0000000..292c3a6 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-cookie-info.ts @@ -0,0 +1,83 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1CookieInfo + */ +export interface KamiApiCardRedeemJdV1CookieInfo { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + name?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + cookie?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + notes?: string; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + status?: KamiApiCardRedeemJdV1CookieInfoStatusEnum; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + category?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1CookieInfo + */ + deletedAt?: string; +} + +export const KamiApiCardRedeemJdV1CookieInfoStatusEnum = { + Disable: 'disable', + Normal: 'normal' +} as const; + +export type KamiApiCardRedeemJdV1CookieInfoStatusEnum = + (typeof KamiApiCardRedeemJdV1CookieInfoStatusEnum)[keyof typeof KamiApiCardRedeemJdV1CookieInfoStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-req.ts new file mode 100644 index 0000000..7fa78ed --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-req.ts @@ -0,0 +1,71 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1OrderListReq + */ +export interface KamiApiCardRedeemJdV1OrderListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListReq + */ + pageSize: KamiApiCardRedeemJdV1OrderListReqPageSizeEnum; + /** + * cookieId + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListReq + */ + cookieId?: number; + /** + * cookie + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListReq + */ + cookie?: string; + /** + * 状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListReq + */ + status?: KamiApiCardRedeemJdV1OrderListReqStatusEnum; +} + +export const KamiApiCardRedeemJdV1OrderListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiCardRedeemJdV1OrderListReqPageSizeEnum = + (typeof KamiApiCardRedeemJdV1OrderListReqPageSizeEnum)[keyof typeof KamiApiCardRedeemJdV1OrderListReqPageSizeEnum]; +export const KamiApiCardRedeemJdV1OrderListReqStatusEnum = { + Fail: 'fail', + Init: 'init', + Success: 'success' +} as const; + +export type KamiApiCardRedeemJdV1OrderListReqStatusEnum = + (typeof KamiApiCardRedeemJdV1OrderListReqStatusEnum)[keyof typeof KamiApiCardRedeemJdV1OrderListReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-res.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-res.ts new file mode 100644 index 0000000..2354f4d --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiCardRedeemJdV1OrderListSchema } from './kami-api-card-redeem-jd-v1-order-list-schema'; + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1OrderListRes + */ +export interface KamiApiCardRedeemJdV1OrderListRes { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiCardRedeemJdV1OrderListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-schema.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-schema.ts new file mode 100644 index 0000000..fd09727 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-order-list-schema.ts @@ -0,0 +1,97 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardRedeemCookieInfo } from './kami-internal-model-entity-v1-card-redeem-cookie-info'; + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1OrderListSchema + */ +export interface KamiApiCardRedeemJdV1OrderListSchema { + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + id?: number; + /** + * 订单id + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + bankOrderId?: string; + /** + * 订单金额 + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + orderAmount?: number; + /** + * 支付链接 + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + wxPay?: string; + /** + * + * @type {number} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + cookieId?: number; + /** + * + * @type {KamiInternalModelEntityV1CardRedeemCookieInfo} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + cookie?: KamiInternalModelEntityV1CardRedeemCookieInfo; + /** + * 订单编号 + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + jdOrderNo?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + status?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiCardRedeemJdV1OrderListSchema + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-req.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-req.ts new file mode 100644 index 0000000..4e8246d --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1PlaceOrderReq + */ +export interface KamiApiCardRedeemJdV1PlaceOrderReq { + /** + * 银行订单id + * @type {string} + * @memberof KamiApiCardRedeemJdV1PlaceOrderReq + */ + merchantOrderId: string; + /** + * 订单金额 + * @type {number} + * @memberof KamiApiCardRedeemJdV1PlaceOrderReq + */ + orderAmount: number; +} diff --git a/src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-res.ts b/src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-res.ts new file mode 100644 index 0000000..61e5fa2 --- /dev/null +++ b/src/api/generated/models/kami-api-card-redeem-jd-v1-place-order-res.ts @@ -0,0 +1,60 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiCardRedeemJdV1PlaceOrderRes + */ +export interface KamiApiCardRedeemJdV1PlaceOrderRes { + /** + * 微信支付 + * @type {string} + * @memberof KamiApiCardRedeemJdV1PlaceOrderRes + */ + wxPay?: string; + /** + * 银行订单id + * @type {string} + * @memberof KamiApiCardRedeemJdV1PlaceOrderRes + */ + merchantOrder?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiApiCardRedeemJdV1PlaceOrderRes + */ + orderNo?: string; + /** + * 订单金额 + * @type {number} + * @memberof KamiApiCardRedeemJdV1PlaceOrderRes + */ + orderAmount?: number; + /** + * 订单状态 + * @type {string} + * @memberof KamiApiCardRedeemJdV1PlaceOrderRes + */ + orderStatus?: KamiApiCardRedeemJdV1PlaceOrderResOrderStatusEnum; +} + +export const KamiApiCardRedeemJdV1PlaceOrderResOrderStatusEnum = { + Fail: 'fail', + Init: 'init', + Success: 'success' +} as const; + +export type KamiApiCardRedeemJdV1PlaceOrderResOrderStatusEnum = + (typeof KamiApiCardRedeemJdV1PlaceOrderResOrderStatusEnum)[keyof typeof KamiApiCardRedeemJdV1PlaceOrderResOrderStatusEnum]; diff --git a/src/api/generated/models/kami-api-channel-v2-entrance-create-req.ts b/src/api/generated/models/kami-api-channel-v2-entrance-create-req.ts new file mode 100644 index 0000000..0db922a --- /dev/null +++ b/src/api/generated/models/kami-api-channel-v2-entrance-create-req.ts @@ -0,0 +1,85 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiChannelV2EntranceParams } from './kami-api-channel-v2-entrance-params'; + +/** + * + * @export + * @interface KamiApiChannelV2EntranceCreateReq + */ +export interface KamiApiChannelV2EntranceCreateReq { + /** + * 通道名称 + * @type {string} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + name?: string; + /** + * 支付类型 + * @type {string} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + payType?: string; + /** + * 代付手续费 + * @type {number} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + serviceFee?: number; + /** + * 通道总额度 + * @type {number} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + totalLimit?: number; + /** + * 允许面额 + * @type {string} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + allowedMm?: string; + /** + * 通道开始时间 + * @type {number} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + startHour?: number; + /** + * 通道结束时间 + * @type {number} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + endHour?: number; + /** + * + * @type {KamiApiChannelV2EntranceParams} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + params?: KamiApiChannelV2EntranceParams; + /** + * 备注 + * @type {string} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + remark?: string; + /** + * + * @type {number} + * @memberof KamiApiChannelV2EntranceCreateReq + */ + status?: number; +} diff --git a/src/api/generated/models/kami-api-channel-v2-entrance-delete-req.ts b/src/api/generated/models/kami-api-channel-v2-entrance-delete-req.ts new file mode 100644 index 0000000..8af4469 --- /dev/null +++ b/src/api/generated/models/kami-api-channel-v2-entrance-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiChannelV2EntranceDeleteReq + */ +export interface KamiApiChannelV2EntranceDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiChannelV2EntranceDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-channel-v2-entrance-list-req.ts b/src/api/generated/models/kami-api-channel-v2-entrance-list-req.ts new file mode 100644 index 0000000..51a1c4b --- /dev/null +++ b/src/api/generated/models/kami-api-channel-v2-entrance-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiChannelV2EntranceListReq + */ +export interface KamiApiChannelV2EntranceListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiChannelV2EntranceListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiChannelV2EntranceListReq + */ + pageSize: KamiApiChannelV2EntranceListReqPageSizeEnum; + /** + * 通道名称 + * @type {string} + * @memberof KamiApiChannelV2EntranceListReq + */ + name?: string; +} + +export const KamiApiChannelV2EntranceListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiChannelV2EntranceListReqPageSizeEnum = + (typeof KamiApiChannelV2EntranceListReqPageSizeEnum)[keyof typeof KamiApiChannelV2EntranceListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-channel-v2-entrance-list-res.ts b/src/api/generated/models/kami-api-channel-v2-entrance-list-res.ts new file mode 100644 index 0000000..9e41916 --- /dev/null +++ b/src/api/generated/models/kami-api-channel-v2-entrance-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalSystemV2ModelEntityV2RoadInfo } from './kami-internal-system-v2-model-entity-v2-road-info'; + +/** + * + * @export + * @interface KamiApiChannelV2EntranceListRes + */ +export interface KamiApiChannelV2EntranceListRes { + /** + * + * @type {number} + * @memberof KamiApiChannelV2EntranceListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiChannelV2EntranceListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-channel-v2-entrance-params.ts b/src/api/generated/models/kami-api-channel-v2-entrance-params.ts new file mode 100644 index 0000000..9fd2d65 --- /dev/null +++ b/src/api/generated/models/kami-api-channel-v2-entrance-params.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiChannelV2EntranceParams + */ +export interface KamiApiChannelV2EntranceParams { + /** + * + * @type {string} + * @memberof KamiApiChannelV2EntranceParams + */ + appKey?: string; + /** + * + * @type {string} + * @memberof KamiApiChannelV2EntranceParams + */ + appSecret?: string; +} diff --git a/src/api/generated/models/kami-api-channel-v2-entrance-update-req.ts b/src/api/generated/models/kami-api-channel-v2-entrance-update-req.ts new file mode 100644 index 0000000..5ee06c3 --- /dev/null +++ b/src/api/generated/models/kami-api-channel-v2-entrance-update-req.ts @@ -0,0 +1,91 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiChannelV2EntranceParams } from './kami-api-channel-v2-entrance-params'; + +/** + * + * @export + * @interface KamiApiChannelV2EntranceUpdateReq + */ +export interface KamiApiChannelV2EntranceUpdateReq { + /** + * + * @type {string} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + id: string; + /** + * 通道名称 + * @type {string} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + name?: string; + /** + * 支付类型 + * @type {string} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + payType?: string; + /** + * 代付手续费 + * @type {number} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + serviceFee?: number; + /** + * 通道总额度 + * @type {number} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + totalLimit?: number; + /** + * 允许面额 + * @type {string} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + allowedMm?: string; + /** + * 通道开始时间 + * @type {number} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + startHour?: number; + /** + * 通道结束时间 + * @type {number} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + endHour?: number; + /** + * + * @type {KamiApiChannelV2EntranceParams} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + params?: KamiApiChannelV2EntranceParams; + /** + * 备注 + * @type {string} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + remark?: string; + /** + * + * @type {number} + * @memberof KamiApiChannelV2EntranceUpdateReq + */ + status?: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-all-list-res.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-all-list-res.ts new file mode 100644 index 0000000..8e3b425 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-all-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1MerchantInfo } from './kami-internal-model-entity-v1-merchant-info'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantAllListRes + */ +export interface KamiApiMerchantV1MerchantAllListRes { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1MerchantAllListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1MerchantAllListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-add-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-add-req.ts new file mode 100644 index 0000000..277723b --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-add-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigAddReq + */ +export interface KamiApiMerchantV1MerchantConfigAddReq { + /** + * 商户状态状态 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigAddReq + */ + status: string; + /** + * 商户名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigAddReq + */ + merchantName: string; + /** + * 登录账号 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigAddReq + */ + loginAccount: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigAddReq + */ + remark?: string; + /** + * 登录密码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigAddReq + */ + loginPassword: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-req.ts new file mode 100644 index 0000000..60a9ef4 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigDetailReq + */ +export interface KamiApiMerchantV1MerchantConfigDetailReq { + /** + * + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigDetailReq + */ + merchantUid: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-res.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-res.ts new file mode 100644 index 0000000..3584800 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-detail-res.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigDetailRes + */ +export interface KamiApiMerchantV1MerchantConfigDetailRes { + /** + * 商户名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigDetailRes + */ + merchantName: string; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigDetailRes + */ + merchantUid: string; + /** + * 登录账号 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigDetailRes + */ + loginAccount: string; + /** + * 配置ip白名单 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigDetailRes + */ + whiteIps?: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigDetailRes + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-list-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-list-req.ts new file mode 100644 index 0000000..b3f97c1 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-list-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigListReq + */ +export interface KamiApiMerchantV1MerchantConfigListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiMerchantV1MerchantConfigListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiMerchantV1MerchantConfigListReq + */ + pageSize: KamiApiMerchantV1MerchantConfigListReqPageSizeEnum; + /** + * 商户名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigListReq + */ + merchantName?: string; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigListReq + */ + merchantUid?: string; +} + +export const KamiApiMerchantV1MerchantConfigListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiMerchantV1MerchantConfigListReqPageSizeEnum = + (typeof KamiApiMerchantV1MerchantConfigListReqPageSizeEnum)[keyof typeof KamiApiMerchantV1MerchantConfigListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-list-res.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-list-res.ts new file mode 100644 index 0000000..52de519 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1MerchantInfoRecord } from './kami-api-merchant-v1-merchant-info-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigListRes + */ +export interface KamiApiMerchantV1MerchantConfigListRes { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1MerchantConfigListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1MerchantConfigListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-status-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-status-req.ts new file mode 100644 index 0000000..d45c9a1 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-status-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigStatusReq + */ +export interface KamiApiMerchantV1MerchantConfigStatusReq { + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigStatusReq + */ + merchantUid: string; + /** + * 状态ID + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigStatusReq + */ + status?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-config-update-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-config-update-req.ts new file mode 100644 index 0000000..bbc09aa --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-config-update-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantConfigUpdateReq + */ +export interface KamiApiMerchantV1MerchantConfigUpdateReq { + /** + * 商户名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigUpdateReq + */ + merchantName: string; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigUpdateReq + */ + merchantUid: string; + /** + * 登录账号 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigUpdateReq + */ + loginAccount: string; + /** + * 配置ip白名单 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigUpdateReq + */ + whiteIps?: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiMerchantV1MerchantConfigUpdateReq + */ + remark?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-add-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-add-req.ts new file mode 100644 index 0000000..76a7286 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-add-req.ts @@ -0,0 +1,115 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1PlatformRateRecord } from './kami-api-merchant-v1-platform-rate-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployAddReq + */ +export interface KamiApiMerchantV1MerchantDeployAddReq { + /** + * 单通道uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + singleRoadUid: string; + /** + * 单通到平台净利率(关系映射) + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + singleRoadPlatformRate: Array; + /** + * 单通到代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + singleRoadAgentRate: number; + /** + * 轮询通道编码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + rollRoadCode: string; + /** + * 轮询通道代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + rollRoadAgentRate: number; + /** + * 轮询通道平台净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + rollRoadPlatformRate: number; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + merchantUid: string; + /** + * 自动结算 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + autoSettle: string; + /** + * 自动代付 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + autoPayfor: string; + /** + * 限制地区 + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + restrictArea?: Array; + /** + * 是否检测代理 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + isRestrictAgent?: boolean; + /** + * 是否限制卡密 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + isRestrictCardPass?: boolean; + /** + * 是否限制设备 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + isRestrictDevice?: boolean; + /** + * 是否限制IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + isRestrictIp?: boolean; + /** + * 是否限制局域网IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployAddReq + */ + isRestrictInternalIp?: boolean; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-delete-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-delete-req.ts new file mode 100644 index 0000000..1047d01 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-delete-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployDeleteReq + */ +export interface KamiApiMerchantV1MerchantDeployDeleteReq { + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployDeleteReq + */ + merchantUid: string; + /** + * 单通道uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployDeleteReq + */ + singleRoadUid: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-req.ts new file mode 100644 index 0000000..53b38c2 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployGetDetailReq + */ +export interface KamiApiMerchantV1MerchantDeployGetDetailReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-res.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-res.ts new file mode 100644 index 0000000..43c0603 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-get-detail-res.ts @@ -0,0 +1,157 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1PlatformRateRecord } from './kami-api-merchant-v1-platform-rate-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployGetDetailRes + */ +export interface KamiApiMerchantV1MerchantDeployGetDetailRes { + /** + * 主键,自增 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + id?: number; + /** + * 商户状态状态 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + status?: string; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + merchantUid?: string; + /** + * 支付配置 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + payType?: string; + /** + * 支付配置名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + payTypeName?: string; + /** + * 单通道名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + singleRoadName?: string; + /** + * 轮询通道名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + rollRoadName?: string; + /** + * 通道设置 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + roadSetting?: string; + /** + * 单通道uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + singleRoadUid: string; + /** + * 单通到平台净利率(关系映射) + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + singleRoadPlatformRate: Array; + /** + * 单通到代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + singleRoadAgentRate: number; + /** + * 轮询通道编码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + rollRoadCode: string; + /** + * 轮询通道代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + rollRoadAgentRate: number; + /** + * 轮询通道平台净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + rollRoadPlatformRate: number; + /** + * 自动结算 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + autoSettle: string; + /** + * 自动代付 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + autoPayfor: string; + /** + * 限制地区 + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + restrictArea?: Array; + /** + * 是否检测代理 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + isRestrictAgent?: boolean; + /** + * 是否限制卡密 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + isRestrictCardPass?: boolean; + /** + * 是否限制设备 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + isRestrictDevice?: boolean; + /** + * 是否限制IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + isRestrictIp?: boolean; + /** + * 是否限制局域网IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployGetDetailRes + */ + isRestrictInternalIp?: boolean; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-req.ts new file mode 100644 index 0000000..7bda2ff --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployListReq + */ +export interface KamiApiMerchantV1MerchantDeployListReq { + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployListReq + */ + merchantUid?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-res.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-res.ts new file mode 100644 index 0000000..33597ca --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-list-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1MerchantDeployRecord } from './kami-api-merchant-v1-merchant-deploy-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployListRes + */ +export interface KamiApiMerchantV1MerchantDeployListRes { + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-record.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-record.ts new file mode 100644 index 0000000..5559846 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-record.ts @@ -0,0 +1,157 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1PlatformRateRecord } from './kami-api-merchant-v1-platform-rate-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployRecord + */ +export interface KamiApiMerchantV1MerchantDeployRecord { + /** + * 主键,自增 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + id?: number; + /** + * 商户状态状态 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + status?: string; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + merchantUid?: string; + /** + * 支付配置 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + payType?: string; + /** + * 支付配置名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + payTypeName?: string; + /** + * 单通道名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + singleRoadName?: string; + /** + * 轮询通道名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + rollRoadName?: string; + /** + * 通道设置 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + roadSetting?: string; + /** + * 单通道uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + singleRoadUid: string; + /** + * 单通到平台净利率(关系映射) + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + singleRoadPlatformRate: Array; + /** + * 单通到代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + singleRoadAgentRate: number; + /** + * 轮询通道编码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + rollRoadCode: string; + /** + * 轮询通道代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + rollRoadAgentRate: number; + /** + * 轮询通道平台净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + rollRoadPlatformRate: number; + /** + * 自动结算 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + autoSettle: string; + /** + * 自动代付 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + autoPayfor: string; + /** + * 限制地区 + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + restrictArea?: Array; + /** + * 是否检测代理 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + isRestrictAgent?: boolean; + /** + * 是否限制卡密 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + isRestrictCardPass?: boolean; + /** + * 是否限制设备 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + isRestrictDevice?: boolean; + /** + * 是否限制IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + isRestrictIp?: boolean; + /** + * 是否限制局域网IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployRecord + */ + isRestrictInternalIp?: boolean; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-update-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-update-req.ts new file mode 100644 index 0000000..b1cad1d --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-deploy-update-req.ts @@ -0,0 +1,121 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1PlatformRateRecord } from './kami-api-merchant-v1-platform-rate-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantDeployUpdateReq + */ +export interface KamiApiMerchantV1MerchantDeployUpdateReq { + /** + * 单通道uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + singleRoadUid: string; + /** + * 单通到平台净利率(关系映射) + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + singleRoadPlatformRate: Array; + /** + * 单通到代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + singleRoadAgentRate: number; + /** + * 轮询通道编码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + rollRoadCode: string; + /** + * 轮询通道代理净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + rollRoadAgentRate: number; + /** + * 轮询通道平台净利率 + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + rollRoadPlatformRate: number; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + merchantUid: string; + /** + * 自动结算 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + autoSettle: string; + /** + * 自动代付 + * @type {string} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + autoPayfor: string; + /** + * 限制地区 + * @type {Array} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + restrictArea?: Array; + /** + * 是否检测代理 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + isRestrictAgent?: boolean; + /** + * 是否限制卡密 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + isRestrictCardPass?: boolean; + /** + * 是否限制设备 + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + isRestrictDevice?: boolean; + /** + * 是否限制IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + isRestrictIp?: boolean; + /** + * 是否限制局域网IP + * @type {boolean} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + isRestrictInternalIp?: boolean; + /** + * + * @type {number} + * @memberof KamiApiMerchantV1MerchantDeployUpdateReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-hidden-config-entity.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-hidden-config-entity.ts new file mode 100644 index 0000000..8c0d2c7 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-hidden-config-entity.ts @@ -0,0 +1,111 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantHiddenConfigEntity + */ +export interface KamiApiMerchantV1MerchantHiddenConfigEntity { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + name?: string; + /** + * 商户Id + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + merchantUid?: string; + /** + * 商户通道 + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + roadUid?: string; + /** + * 金额 + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + amount?: number; + /** + * 面额 + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + faceAmount?: number; + /** + * 延迟时间(最小) + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + delayDurationMin?: number; + /** + * 延迟时间(最大) + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + delayDurationMax?: number; + /** + * 是否启用 + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + enable?: number; + /** + * 策略 1空白 2.错误 3.随机 + * @type {number} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + strategy?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + amountRule?: Array; + /** + * 绑卡返回额外信息 + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + extraReturnInfo?: string; + /** + * 创建时间 + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + createdAt?: string; + /** + * 更新时间 + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiMerchantV1MerchantHiddenConfigEntity + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-info-record.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-info-record.ts new file mode 100644 index 0000000..aaf0d7a --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-info-record.ts @@ -0,0 +1,141 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantInfoRecord + */ +export interface KamiApiMerchantV1MerchantInfoRecord { + /** + * 商户状态状态 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + status?: string; + /** + * 所属代理uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + belongAgentUid?: string; + /** + * 所属代理名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + belongAgentName?: string; + /** + * 商户名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + merchantName?: string; + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + merchantUid?: string; + /** + * 商户key + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + merchantKey?: string; + /** + * 商户密钥 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + merchantSecret?: string; + /** + * 登录账号 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + loginAccount?: string; + /** + * 明文明码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + ClearTextPassword?: string; + /** + * 是否自动结算 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + autoSettle?: string; + /** + * 是否自动代付 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + autoPayFor?: string; + /** + * 配置ip白名单 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + whiteIps?: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + remark?: string; + /** + * 单代付代付通道uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + singlePayForRoadUid?: string; + /** + * 单代付通道名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + singlePayForRoadName?: string; + /** + * 轮询代付通道编码 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + rollPayForRoadCode?: string; + /** + * 轮询代付通道名称 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + rollPayForRoadName?: string; + /** + * 代付手续费 + * @type {number} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + payforFee?: number; + /** + * 更新时间 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + updateTime?: string; + /** + * 创建时间 + * @type {string} + * @memberof KamiApiMerchantV1MerchantInfoRecord + */ + createTime?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-merchant-steal-set-req.ts b/src/api/generated/models/kami-api-merchant-v1-merchant-steal-set-req.ts new file mode 100644 index 0000000..d973b14 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-merchant-steal-set-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1MerchantStealSetReq + */ +export interface KamiApiMerchantV1MerchantStealSetReq { + /** + * 商户uid + * @type {string} + * @memberof KamiApiMerchantV1MerchantStealSetReq + */ + merchantUid: string; + /** + * 状态ID + * @type {string} + * @memberof KamiApiMerchantV1MerchantStealSetReq + */ + status?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-order-query-record.ts b/src/api/generated/models/kami-api-merchant-v1-order-query-record.ts new file mode 100644 index 0000000..c2d2716 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-order-query-record.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1OrderQueryRecord + */ +export interface KamiApiMerchantV1OrderQueryRecord { + /** + * + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRecord + */ + orderNo?: string; + /** + * 操作:created、failed、recharging + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRecord + */ + operation?: string; + /** + * + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRecord + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRecord + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRecord + */ + accountName?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-order-query-req.ts b/src/api/generated/models/kami-api-merchant-v1-order-query-req.ts new file mode 100644 index 0000000..7700669 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-order-query-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1OrderQueryReq + */ +export interface KamiApiMerchantV1OrderQueryReq { + /** + * 商户订单号 + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryReq + */ + merchantOrderNo?: string; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-order-query-res.ts b/src/api/generated/models/kami-api-merchant-v1-order-query-res.ts new file mode 100644 index 0000000..5a9fb33 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-order-query-res.ts @@ -0,0 +1,55 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1OrderQueryRecord } from './kami-api-merchant-v1-order-query-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1OrderQueryRes + */ +export interface KamiApiMerchantV1OrderQueryRes { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1OrderQueryRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1OrderQueryRes + */ + list?: Array; + /** + * 平台订单号 + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRes + */ + bankOrderId?: string; + /** + * 创建时间 + * @type {string} + * @memberof KamiApiMerchantV1OrderQueryRes + */ + createTime?: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiApiMerchantV1OrderQueryRes + */ + amount?: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-platform-rate-record.ts b/src/api/generated/models/kami-api-merchant-v1-platform-rate-record.ts new file mode 100644 index 0000000..6b1f73d --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-platform-rate-record.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1PlatformRateRecord + */ +export interface KamiApiMerchantV1PlatformRateRecord { + /** + * 实际面值 + * @type {number} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + factLabel?: number; + /** + * 展示面额 + * @type {number} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + showLabel?: number; + /** + * 平台 + * @type {string} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + platformLabel?: string; + /** + * 链接是否单独放置 + * @type {boolean} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + isLinkSingle?: boolean; + /** + * 费率 + * @type {number} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + value?: number; + /** + * 链接 + * @type {string} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + linkID?: string; + /** + * 排序 + * @type {number} + * @memberof KamiApiMerchantV1PlatformRateRecord + */ + sort?: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-add-req.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-add-req.ts new file mode 100644 index 0000000..de65eea --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-add-req.ts @@ -0,0 +1,71 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealRuleAddReq + */ +export interface KamiApiMerchantV1RechargeStealRuleAddReq { + /** + * 规则名 + * @type {string} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + name: string; + /** + * 单独某条规则的状态 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + status: KamiApiMerchantV1RechargeStealRuleAddReqStatusEnum; + /** + * 目标用户ID + * @type {string} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + targetUserId: string; + /** + * 存储用户ID + * @type {string} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + storageUserId: string; + /** + * 金额 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + amount: number; + /** + * 目标金额 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + targetAmount: number; + /** + * 时间间隔 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleAddReq + */ + intervalTime: number; +} + +export const KamiApiMerchantV1RechargeStealRuleAddReqStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiMerchantV1RechargeStealRuleAddReqStatusEnum = + (typeof KamiApiMerchantV1RechargeStealRuleAddReqStatusEnum)[keyof typeof KamiApiMerchantV1RechargeStealRuleAddReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-delete-req.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-delete-req.ts new file mode 100644 index 0000000..709c392 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealRuleDeleteReq + */ +export interface KamiApiMerchantV1RechargeStealRuleDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-req.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-req.ts new file mode 100644 index 0000000..33ede1c --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealRuleListReq + */ +export interface KamiApiMerchantV1RechargeStealRuleListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleListReq + */ + pageSize: KamiApiMerchantV1RechargeStealRuleListReqPageSizeEnum; +} + +export const KamiApiMerchantV1RechargeStealRuleListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiMerchantV1RechargeStealRuleListReqPageSizeEnum = + (typeof KamiApiMerchantV1RechargeStealRuleListReqPageSizeEnum)[keyof typeof KamiApiMerchantV1RechargeStealRuleListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-res.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-res.ts new file mode 100644 index 0000000..5cfd46d --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1CardAppleHiddenSettings } from './kami-internal-model-entity-v1-card-apple-hidden-settings'; + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealRuleListRes + */ +export interface KamiApiMerchantV1RechargeStealRuleListRes { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1RechargeStealRuleListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-status-update-req.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-status-update-req.ts new file mode 100644 index 0000000..ab32675 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-status-update-req.ts @@ -0,0 +1,41 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealRuleStatusUpdateReq + */ +export interface KamiApiMerchantV1RechargeStealRuleStatusUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleStatusUpdateReq + */ + id: number; + /** + * 状态 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleStatusUpdateReq + */ + status: KamiApiMerchantV1RechargeStealRuleStatusUpdateReqStatusEnum; +} + +export const KamiApiMerchantV1RechargeStealRuleStatusUpdateReqStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiMerchantV1RechargeStealRuleStatusUpdateReqStatusEnum = + (typeof KamiApiMerchantV1RechargeStealRuleStatusUpdateReqStatusEnum)[keyof typeof KamiApiMerchantV1RechargeStealRuleStatusUpdateReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-update-req.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-update-req.ts new file mode 100644 index 0000000..e20a881 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-rule-update-req.ts @@ -0,0 +1,77 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealRuleUpdateReq + */ +export interface KamiApiMerchantV1RechargeStealRuleUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + id: number; + /** + * 规则名 + * @type {string} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + name: string; + /** + * 单独某条规则的状态 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + status: KamiApiMerchantV1RechargeStealRuleUpdateReqStatusEnum; + /** + * 目标用户ID + * @type {string} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + targetUserId: string; + /** + * 存储用户ID + * @type {string} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + storageUserId: string; + /** + * 金额 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + amount: number; + /** + * 目标金额 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + targetAmount: number; + /** + * 时间间隔 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealRuleUpdateReq + */ + intervalTime: number; +} + +export const KamiApiMerchantV1RechargeStealRuleUpdateReqStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiMerchantV1RechargeStealRuleUpdateReqStatusEnum = + (typeof KamiApiMerchantV1RechargeStealRuleUpdateReqStatusEnum)[keyof typeof KamiApiMerchantV1RechargeStealRuleUpdateReqStatusEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-get-res.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-get-res.ts new file mode 100644 index 0000000..6c39a5c --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-get-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealSettingGetRes + */ +export interface KamiApiMerchantV1RechargeStealSettingGetRes { + /** + * 状态 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealSettingGetRes + */ + stealStatus?: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-req.ts b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-req.ts new file mode 100644 index 0000000..4eead95 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-recharge-steal-setting-req.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1RechargeStealSettingReq + */ +export interface KamiApiMerchantV1RechargeStealSettingReq { + /** + * 状态 + * @type {number} + * @memberof KamiApiMerchantV1RechargeStealSettingReq + */ + stealStatus: KamiApiMerchantV1RechargeStealSettingReqStealStatusEnum; +} + +export const KamiApiMerchantV1RechargeStealSettingReqStealStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiMerchantV1RechargeStealSettingReqStealStatusEnum = + (typeof KamiApiMerchantV1RechargeStealSettingReqStealStatusEnum)[keyof typeof KamiApiMerchantV1RechargeStealSettingReqStealStatusEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-create-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-create-req.ts new file mode 100644 index 0000000..176c8df --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-create-req.ts @@ -0,0 +1,87 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealCreateReq + */ +export interface KamiApiMerchantV1StealCreateReq { + /** + * 名称 + * @type {string} + * @memberof KamiApiMerchantV1StealCreateReq + */ + name: string; + /** + * 商户id + * @type {string} + * @memberof KamiApiMerchantV1StealCreateReq + */ + merchantUid: string; + /** + * 通道id + * @type {string} + * @memberof KamiApiMerchantV1StealCreateReq + */ + roadUid: string; + /** + * 返回信息 + * @type {string} + * @memberof KamiApiMerchantV1StealCreateReq + */ + extraReturnInfo?: string; + /** + * 偷卡金额间隔 + * @type {number} + * @memberof KamiApiMerchantV1StealCreateReq + */ + amount: number; + /** + * 偷卡面额 + * @type {number} + * @memberof KamiApiMerchantV1StealCreateReq + */ + faceAmount: number; + /** + * 延迟时间 + * @type {number} + * @memberof KamiApiMerchantV1StealCreateReq + */ + delayDurationMin: number; + /** + * 延迟时间 + * @type {number} + * @memberof KamiApiMerchantV1StealCreateReq + */ + delayDurationMax: number; + /** + * 启用状态 + * @type {number} + * @memberof KamiApiMerchantV1StealCreateReq + */ + enable: number; + /** + * 偷卡策略 + * @type {number} + * @memberof KamiApiMerchantV1StealCreateReq + */ + strategy: number; + /** + * 金额规则 + * @type {Array} + * @memberof KamiApiMerchantV1StealCreateReq + */ + amountRule: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-delete-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-delete-req.ts new file mode 100644 index 0000000..42eddd6 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealDeleteReq + */ +export interface KamiApiMerchantV1StealDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1StealDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-list-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-list-req.ts new file mode 100644 index 0000000..0d67c3b --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealListReq + */ +export interface KamiApiMerchantV1StealListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiMerchantV1StealListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiMerchantV1StealListReq + */ + pageSize: KamiApiMerchantV1StealListReqPageSizeEnum; +} + +export const KamiApiMerchantV1StealListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiMerchantV1StealListReqPageSizeEnum = + (typeof KamiApiMerchantV1StealListReqPageSizeEnum)[keyof typeof KamiApiMerchantV1StealListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-list-res.ts b/src/api/generated/models/kami-api-merchant-v1-steal-list-res.ts new file mode 100644 index 0000000..3d55b4e --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiMerchantV1MerchantHiddenConfigEntity } from './kami-api-merchant-v1-merchant-hidden-config-entity'; + +/** + * + * @export + * @interface KamiApiMerchantV1StealListRes + */ +export interface KamiApiMerchantV1StealListRes { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1StealListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1StealListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-record-list-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-record-list-req.ts new file mode 100644 index 0000000..0677b39 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-record-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealRecordListReq + */ +export interface KamiApiMerchantV1StealRecordListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiMerchantV1StealRecordListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiMerchantV1StealRecordListReq + */ + pageSize: KamiApiMerchantV1StealRecordListReqPageSizeEnum; +} + +export const KamiApiMerchantV1StealRecordListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiMerchantV1StealRecordListReqPageSizeEnum = + (typeof KamiApiMerchantV1StealRecordListReqPageSizeEnum)[keyof typeof KamiApiMerchantV1StealRecordListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-record-list-res.ts b/src/api/generated/models/kami-api-merchant-v1-steal-record-list-res.ts new file mode 100644 index 0000000..925c4c0 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-record-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1MerchantHiddenRecord } from './kami-internal-model-entity-v1-merchant-hidden-record'; + +/** + * + * @export + * @interface KamiApiMerchantV1StealRecordListRes + */ +export interface KamiApiMerchantV1StealRecordListRes { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1StealRecordListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiMerchantV1StealRecordListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-status-get-res.ts b/src/api/generated/models/kami-api-merchant-v1-steal-status-get-res.ts new file mode 100644 index 0000000..92a0d10 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-status-get-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealStatusGetRes + */ +export interface KamiApiMerchantV1StealStatusGetRes { + /** + * 状态 + * @type {boolean} + * @memberof KamiApiMerchantV1StealStatusGetRes + */ + stealStatus?: boolean; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-status-set-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-status-set-req.ts new file mode 100644 index 0000000..67e297b --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-status-set-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealStatusSetReq + */ +export interface KamiApiMerchantV1StealStatusSetReq { + /** + * 状态ID + * @type {boolean} + * @memberof KamiApiMerchantV1StealStatusSetReq + */ + status?: boolean; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-update-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-update-req.ts new file mode 100644 index 0000000..8117712 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-update-req.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealUpdateReq + */ +export interface KamiApiMerchantV1StealUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + id: number; + /** + * 名称 + * @type {string} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + name: string; + /** + * 商户id + * @type {string} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + merchantUid: string; + /** + * 通道id + * @type {string} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + roadUid: string; + /** + * 返回信息 + * @type {string} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + extraReturnInfo?: string; + /** + * 偷卡金额间隔 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + amount: number; + /** + * 偷卡面额 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + faceAmount: number; + /** + * 延迟时间 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + delayDurationMin: number; + /** + * 延迟时间 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + delayDurationMax: number; + /** + * 启用状态 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + enable: number; + /** + * 偷卡策略 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + strategy: number; + /** + * 金额规则 + * @type {Array} + * @memberof KamiApiMerchantV1StealUpdateReq + */ + amountRule: Array; +} diff --git a/src/api/generated/models/kami-api-merchant-v1-steal-update-status-req.ts b/src/api/generated/models/kami-api-merchant-v1-steal-update-status-req.ts new file mode 100644 index 0000000..a6a8203 --- /dev/null +++ b/src/api/generated/models/kami-api-merchant-v1-steal-update-status-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMerchantV1StealUpdateStatusReq + */ +export interface KamiApiMerchantV1StealUpdateStatusReq { + /** + * + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateStatusReq + */ + id: number; + /** + * 启用状态 + * @type {number} + * @memberof KamiApiMerchantV1StealUpdateStatusReq + */ + enable: number; +} diff --git a/src/api/generated/models/kami-api-monitor-v1-health-check-res.ts b/src/api/generated/models/kami-api-monitor-v1-health-check-res.ts new file mode 100644 index 0000000..85b398f --- /dev/null +++ b/src/api/generated/models/kami-api-monitor-v1-health-check-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiMonitorV1HealthCheckRes + */ +export interface KamiApiMonitorV1HealthCheckRes { + /** + * + * @type {boolean} + * @memberof KamiApiMonitorV1HealthCheckRes + */ + ok?: boolean; +} diff --git a/src/api/generated/models/kami-api-order-v1-order-form-delete-req.ts b/src/api/generated/models/kami-api-order-v1-order-form-delete-req.ts new file mode 100644 index 0000000..1d0fb85 --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-form-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderFormDeleteReq + */ +export interface KamiApiOrderV1OrderFormDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderFormDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-order-v1-order-form-list-req.ts b/src/api/generated/models/kami-api-order-v1-order-form-list-req.ts new file mode 100644 index 0000000..055a76e --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-form-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderFormListReq + */ +export interface KamiApiOrderV1OrderFormListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiOrderV1OrderFormListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiOrderV1OrderFormListReq + */ + pageSize: KamiApiOrderV1OrderFormListReqPageSizeEnum; +} + +export const KamiApiOrderV1OrderFormListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiOrderV1OrderFormListReqPageSizeEnum = + (typeof KamiApiOrderV1OrderFormListReqPageSizeEnum)[keyof typeof KamiApiOrderV1OrderFormListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-order-v1-order-form-update-req.ts b/src/api/generated/models/kami-api-order-v1-order-form-update-req.ts new file mode 100644 index 0000000..9584216 --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-form-update-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderFormUpdateReq + */ +export interface KamiApiOrderV1OrderFormUpdateReq { + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderFormUpdateReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-order-v1-order-log-delete-req.ts b/src/api/generated/models/kami-api-order-v1-order-log-delete-req.ts new file mode 100644 index 0000000..12ab7c3 --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-log-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderLogDeleteReq + */ +export interface KamiApiOrderV1OrderLogDeleteReq { + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderLogDeleteReq + */ + id: number; +} diff --git a/src/api/generated/models/kami-api-order-v1-order-log-list-req.ts b/src/api/generated/models/kami-api-order-v1-order-log-list-req.ts new file mode 100644 index 0000000..f1b6d37 --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-log-list-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderLogListReq + */ +export interface KamiApiOrderV1OrderLogListReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiOrderV1OrderLogListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiOrderV1OrderLogListReq + */ + pageSize: KamiApiOrderV1OrderLogListReqPageSizeEnum; +} + +export const KamiApiOrderV1OrderLogListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiOrderV1OrderLogListReqPageSizeEnum = + (typeof KamiApiOrderV1OrderLogListReqPageSizeEnum)[keyof typeof KamiApiOrderV1OrderLogListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-order-v1-order-summary-get-list-req.ts b/src/api/generated/models/kami-api-order-v1-order-summary-get-list-req.ts new file mode 100644 index 0000000..2c5dc12 --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-summary-get-list-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderSummaryGetListReq + */ +export interface KamiApiOrderV1OrderSummaryGetListReq { + /** + * + * @type {string} + * @memberof KamiApiOrderV1OrderSummaryGetListReq + */ + roadUid?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryGetListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryGetListReq + */ + pageSize: KamiApiOrderV1OrderSummaryGetListReqPageSizeEnum; +} + +export const KamiApiOrderV1OrderSummaryGetListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiOrderV1OrderSummaryGetListReqPageSizeEnum = + (typeof KamiApiOrderV1OrderSummaryGetListReqPageSizeEnum)[keyof typeof KamiApiOrderV1OrderSummaryGetListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-order-v1-order-summary-get-list-res.ts b/src/api/generated/models/kami-api-order-v1-order-summary-get-list-res.ts new file mode 100644 index 0000000..cd12d07 --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-summary-get-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiOrderV1OrderSummaryRecord } from './kami-api-order-v1-order-summary-record'; + +/** + * + * @export + * @interface KamiApiOrderV1OrderSummaryGetListRes + */ +export interface KamiApiOrderV1OrderSummaryGetListRes { + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryGetListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiOrderV1OrderSummaryGetListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-order-v1-order-summary-record.ts b/src/api/generated/models/kami-api-order-v1-order-summary-record.ts new file mode 100644 index 0000000..4c32a8a --- /dev/null +++ b/src/api/generated/models/kami-api-order-v1-order-summary-record.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiOrderV1OrderSummaryRecord + */ +export interface KamiApiOrderV1OrderSummaryRecord { + /** + * + * @type {string} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + merchantUid?: string; + /** + * + * @type {string} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + merchantName?: string; + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + succeedCount?: number; + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + succeedShowAmount?: number; + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + succeedFactAmount?: number; + /** + * 订单总量 + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + totalCount?: number; + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + totalShowAmount?: number; + /** + * + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + totalFactAmount?: number; + /** + * 比例 + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + rate?: number; + /** + * + * @type {string} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + date?: string; + /** + * 失败的订单 + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + failedCount?: number; + /** + * 创建但未填写的订单 + * @type {number} + * @memberof KamiApiOrderV1OrderSummaryRecord + */ + waitedCount?: number; +} diff --git a/src/api/generated/models/kami-api-restriction-v1-block-order-req.ts b/src/api/generated/models/kami-api-restriction-v1-block-order-req.ts new file mode 100644 index 0000000..0520d1a --- /dev/null +++ b/src/api/generated/models/kami-api-restriction-v1-block-order-req.ts @@ -0,0 +1,41 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRestrictionV1BlockOrderReq + */ +export interface KamiApiRestrictionV1BlockOrderReq { + /** + * 订单号 + * @type {string} + * @memberof KamiApiRestrictionV1BlockOrderReq + */ + orderNo: string; + /** + * 封单状态 + * @type {number} + * @memberof KamiApiRestrictionV1BlockOrderReq + */ + blockStatus: KamiApiRestrictionV1BlockOrderReqBlockStatusEnum; +} + +export const KamiApiRestrictionV1BlockOrderReqBlockStatusEnum = { + NUMBER_0: 0, + NUMBER_1: 1 +} as const; + +export type KamiApiRestrictionV1BlockOrderReqBlockStatusEnum = + (typeof KamiApiRestrictionV1BlockOrderReqBlockStatusEnum)[keyof typeof KamiApiRestrictionV1BlockOrderReqBlockStatusEnum]; diff --git a/src/api/generated/models/kami-api-restriction-v1-check-ipallowed-req.ts b/src/api/generated/models/kami-api-restriction-v1-check-ipallowed-req.ts new file mode 100644 index 0000000..74efbcb --- /dev/null +++ b/src/api/generated/models/kami-api-restriction-v1-check-ipallowed-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRestrictionV1CheckIPAllowedReq + */ +export interface KamiApiRestrictionV1CheckIPAllowedReq { + /** + * IP地址 + * @type {string} + * @memberof KamiApiRestrictionV1CheckIPAllowedReq + */ + ip: string; + /** + * 设备ID + * @type {string} + * @memberof KamiApiRestrictionV1CheckIPAllowedReq + */ + deviceId?: string; + /** + * 商户部署ID + * @type {number} + * @memberof KamiApiRestrictionV1CheckIPAllowedReq + */ + merchantDeployID: number; + /** + * 订单号 + * @type {string} + * @memberof KamiApiRestrictionV1CheckIPAllowedReq + */ + orderNo: string; + /** + * 充值卡密码 + * @type {string} + * @memberof KamiApiRestrictionV1CheckIPAllowedReq + */ + cardPass: string; +} diff --git a/src/api/generated/models/kami-api-restriction-v1-check-ipallowed-res.ts b/src/api/generated/models/kami-api-restriction-v1-check-ipallowed-res.ts new file mode 100644 index 0000000..4b70a7e --- /dev/null +++ b/src/api/generated/models/kami-api-restriction-v1-check-ipallowed-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRestrictionV1CheckIPAllowedRes + */ +export interface KamiApiRestrictionV1CheckIPAllowedRes { + /** + * + * @type {boolean} + * @memberof KamiApiRestrictionV1CheckIPAllowedRes + */ + isAllowed?: boolean; +} diff --git a/src/api/generated/models/kami-api-restriction-v1-query-all-province-res.ts b/src/api/generated/models/kami-api-restriction-v1-query-all-province-res.ts new file mode 100644 index 0000000..8c5acf7 --- /dev/null +++ b/src/api/generated/models/kami-api-restriction-v1-query-all-province-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRestrictionV1QueryAllProvinceRes + */ +export interface KamiApiRestrictionV1QueryAllProvinceRes { + /** + * + * @type {Array} + * @memberof KamiApiRestrictionV1QueryAllProvinceRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-restriction-v1-user-info-collection-req.ts b/src/api/generated/models/kami-api-restriction-v1-user-info-collection-req.ts new file mode 100644 index 0000000..7a26748 --- /dev/null +++ b/src/api/generated/models/kami-api-restriction-v1-user-info-collection-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRestrictionV1UserInfoCollectionReq + */ +export interface KamiApiRestrictionV1UserInfoCollectionReq { + /** + * 加密数据 + * @type {string} + * @memberof KamiApiRestrictionV1UserInfoCollectionReq + */ + data: string; +} diff --git a/src/api/generated/models/kami-api-road-pool-v1-road-pool-simple-info.ts b/src/api/generated/models/kami-api-road-pool-v1-road-pool-simple-info.ts new file mode 100644 index 0000000..9146654 --- /dev/null +++ b/src/api/generated/models/kami-api-road-pool-v1-road-pool-simple-info.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRoadPoolV1RoadPoolSimpleInfo + */ +export interface KamiApiRoadPoolV1RoadPoolSimpleInfo { + /** + * 通道池名称 + * @type {string} + * @memberof KamiApiRoadPoolV1RoadPoolSimpleInfo + */ + roadPoolName?: string; + /** + * 通道池编号 + * @type {string} + * @memberof KamiApiRoadPoolV1RoadPoolSimpleInfo + */ + roadPoolCode?: string; +} diff --git a/src/api/generated/models/kami-api-road-pool-v1-simple-all-get-road-res.ts b/src/api/generated/models/kami-api-road-pool-v1-simple-all-get-road-res.ts new file mode 100644 index 0000000..7cd0de1 --- /dev/null +++ b/src/api/generated/models/kami-api-road-pool-v1-simple-all-get-road-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiRoadPoolV1RoadPoolSimpleInfo } from './kami-api-road-pool-v1-road-pool-simple-info'; + +/** + * + * @export + * @interface KamiApiRoadPoolV1SimpleAllGetRoadRes + */ +export interface KamiApiRoadPoolV1SimpleAllGetRoadRes { + /** + * + * @type {Array} + * @memberof KamiApiRoadPoolV1SimpleAllGetRoadRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-road-v1-road-simple-info.ts b/src/api/generated/models/kami-api-road-v1-road-simple-info.ts new file mode 100644 index 0000000..e066c00 --- /dev/null +++ b/src/api/generated/models/kami-api-road-v1-road-simple-info.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiRoadV1RoadSimpleInfo + */ +export interface KamiApiRoadV1RoadSimpleInfo { + /** + * 主键,自增 + * @type {number} + * @memberof KamiApiRoadV1RoadSimpleInfo + */ + id?: number; + /** + * 通道名称 + * @type {string} + * @memberof KamiApiRoadV1RoadSimpleInfo + */ + roadName?: string; + /** + * 通道唯一id + * @type {string} + * @memberof KamiApiRoadV1RoadSimpleInfo + */ + roadUid?: string; +} diff --git a/src/api/generated/models/kami-api-road-v1-simple-all-get-road-res.ts b/src/api/generated/models/kami-api-road-v1-simple-all-get-road-res.ts new file mode 100644 index 0000000..5cf6641 --- /dev/null +++ b/src/api/generated/models/kami-api-road-v1-simple-all-get-road-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiRoadV1RoadSimpleInfo } from './kami-api-road-v1-road-simple-info'; + +/** + * + * @export + * @interface KamiApiRoadV1SimpleAllGetRoadRes + */ +export interface KamiApiRoadV1SimpleAllGetRoadRes { + /** + * + * @type {Array} + * @memberof KamiApiRoadV1SimpleAllGetRoadRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-req.ts b/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-req.ts new file mode 100644 index 0000000..1345a9a --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1PaymentSummaryListReq + */ +export interface KamiApiSysPaymentV1PaymentSummaryListReq { + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1PaymentSummaryListReq + */ + username?: string; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1PaymentSummaryListReq + */ + date?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiSysPaymentV1PaymentSummaryListReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiSysPaymentV1PaymentSummaryListReq + */ + pageSize: KamiApiSysPaymentV1PaymentSummaryListReqPageSizeEnum; +} + +export const KamiApiSysPaymentV1PaymentSummaryListReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiSysPaymentV1PaymentSummaryListReqPageSizeEnum = + (typeof KamiApiSysPaymentV1PaymentSummaryListReqPageSizeEnum)[keyof typeof KamiApiSysPaymentV1PaymentSummaryListReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-res.ts b/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-res.ts new file mode 100644 index 0000000..be48d86 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-list-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysPaymentV1PaymentSummaryRecord } from './kami-api-sys-payment-v1-payment-summary-record'; + +/** + * + * @export + * @interface KamiApiSysPaymentV1PaymentSummaryListRes + */ +export interface KamiApiSysPaymentV1PaymentSummaryListRes { + /** + * + * @type {number} + * @memberof KamiApiSysPaymentV1PaymentSummaryListRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiSysPaymentV1PaymentSummaryListRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-record.ts b/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-record.ts new file mode 100644 index 0000000..90520b6 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-payment-summary-record.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1PaymentSummaryRecord + */ +export interface KamiApiSysPaymentV1PaymentSummaryRecord { + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + username?: string; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + totalDepositAmount?: object; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + totalConsumeAmount?: object; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + totalReturnAmount?: object; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + totalActualConsumeAmount?: object; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + totalManualHandleAmount?: object; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1PaymentSummaryRecord + */ + createdAt?: string; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-add-req.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-add-req.ts new file mode 100644 index 0000000..f19499f --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-add-req.ts @@ -0,0 +1,55 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentAddReq + */ +export interface KamiApiSysPaymentV1SysPaymentAddReq { + /** + * 用户ID + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentAddReq + */ + userId: string; + /** + * 交易类型 + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentAddReq + */ + transactionType: KamiApiSysPaymentV1SysPaymentAddReqTransactionTypeEnum; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1SysPaymentAddReq + */ + amount: object; + /** + * 备注 + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentAddReq + */ + remark?: string; +} + +export const KamiApiSysPaymentV1SysPaymentAddReqTransactionTypeEnum = { + Consumption: 'consumption', + DeductionReturn: 'deduction_return', + ManualAdjustment: 'Manual Adjustment', + Deposit: 'deposit' +} as const; + +export type KamiApiSysPaymentV1SysPaymentAddReqTransactionTypeEnum = + (typeof KamiApiSysPaymentV1SysPaymentAddReqTransactionTypeEnum)[keyof typeof KamiApiSysPaymentV1SysPaymentAddReqTransactionTypeEnum]; diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-req.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-req.ts new file mode 100644 index 0000000..64e31af --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentGetOneReq + */ +export interface KamiApiSysPaymentV1SysPaymentGetOneReq { + /** + * 用户ID + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneReq + */ + userId?: string; + /** + * 钱包ID + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneReq + */ + paymentId?: number; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-res.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-res.ts new file mode 100644 index 0000000..897c7ec --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-one-res.ts @@ -0,0 +1,105 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentGetOneRes + */ +export interface KamiApiSysPaymentV1SysPaymentGetOneRes { + /** + * + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + userId?: string; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + balance?: object; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + totalDeposits?: object; + /** + * + * @type {object} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + totalConsumption?: object; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + lastDepositTime?: string; + /** + * 上次消耗时间 + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + lastConsumptionTime?: string; + /** + * 总充值次数 + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + totalDepositCount?: number; + /** + * 总消耗次数 + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + totalConsumptionCount?: number; + /** + * 0.禁用 1.正常 3.关闭 + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + status?: string; + /** + * 备注 + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + notes?: string; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentGetOneRes + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-req.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-req.ts new file mode 100644 index 0000000..4fb3a17 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentGetReq + */ +export interface KamiApiSysPaymentV1SysPaymentGetReq { + /** + * 页数 + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetReq + */ + pageSize: KamiApiSysPaymentV1SysPaymentGetReqPageSizeEnum; +} + +export const KamiApiSysPaymentV1SysPaymentGetReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiSysPaymentV1SysPaymentGetReqPageSizeEnum = + (typeof KamiApiSysPaymentV1SysPaymentGetReqPageSizeEnum)[keyof typeof KamiApiSysPaymentV1SysPaymentGetReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-res.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-res.ts new file mode 100644 index 0000000..db036eb --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-get-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1SysUserPayment } from './kami-internal-model-entity-v1-sys-user-payment'; + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentGetRes + */ +export interface KamiApiSysPaymentV1SysPaymentGetRes { + /** + * + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentGetRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiSysPaymentV1SysPaymentGetRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-req.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-req.ts new file mode 100644 index 0000000..f774de0 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-req.ts @@ -0,0 +1,66 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentRecordsGetReq + */ +export interface KamiApiSysPaymentV1SysPaymentRecordsGetReq { + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetReq + */ + userId?: string; + /** + * + * @type {string} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetReq + */ + transactionType?: KamiApiSysPaymentV1SysPaymentRecordsGetReqTransactionTypeEnum; + /** + * 页数 + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetReq + */ + pageSize: KamiApiSysPaymentV1SysPaymentRecordsGetReqPageSizeEnum; +} + +export const KamiApiSysPaymentV1SysPaymentRecordsGetReqTransactionTypeEnum = { + Consumption: 'consumption', + DeductionReturn: 'deduction_return', + ManualAdjustment: 'Manual Adjustment', + Deposit: 'deposit' +} as const; + +export type KamiApiSysPaymentV1SysPaymentRecordsGetReqTransactionTypeEnum = + (typeof KamiApiSysPaymentV1SysPaymentRecordsGetReqTransactionTypeEnum)[keyof typeof KamiApiSysPaymentV1SysPaymentRecordsGetReqTransactionTypeEnum]; +export const KamiApiSysPaymentV1SysPaymentRecordsGetReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiSysPaymentV1SysPaymentRecordsGetReqPageSizeEnum = + (typeof KamiApiSysPaymentV1SysPaymentRecordsGetReqPageSizeEnum)[keyof typeof KamiApiSysPaymentV1SysPaymentRecordsGetReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-res.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-res.ts new file mode 100644 index 0000000..b031496 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1SysUserPaymentRecords } from './kami-internal-model-entity-v1-sys-user-payment-records'; + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentRecordsGetRes + */ +export interface KamiApiSysPaymentV1SysPaymentRecordsGetRes { + /** + * + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-statistics-res.ts b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-statistics-res.ts new file mode 100644 index 0000000..4969c9e --- /dev/null +++ b/src/api/generated/models/kami-api-sys-payment-v1-sys-payment-records-get-statistics-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1SysUserPayment } from './kami-internal-model-entity-v1-sys-user-payment'; + +/** + * + * @export + * @interface KamiApiSysPaymentV1SysPaymentRecordsGetStatisticsRes + */ +export interface KamiApiSysPaymentV1SysPaymentRecordsGetStatisticsRes { + /** + * + * @type {KamiInternalModelEntityV1SysUserPayment} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetStatisticsRes + */ + payment?: KamiInternalModelEntityV1SysUserPayment; + /** + * + * @type {number} + * @memberof KamiApiSysPaymentV1SysPaymentRecordsGetStatisticsRes + */ + appleAccountCount?: number; +} diff --git a/src/api/generated/models/kami-api-sys-user-login-v1-user-login-req.ts b/src/api/generated/models/kami-api-sys-user-login-v1-user-login-req.ts new file mode 100644 index 0000000..4b36d35 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-login-v1-user-login-req.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserLoginV1UserLoginReq + */ +export interface KamiApiSysUserLoginV1UserLoginReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserLoginReq + */ + username: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserLoginReq + */ + password: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserLoginReq + */ + verifyCode: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserLoginReq + */ + verifyKey: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserLoginReq + */ + totpCode?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-login-v1-user-login-res.ts b/src/api/generated/models/kami-api-sys-user-login-v1-user-login-res.ts new file mode 100644 index 0000000..28aec96 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-login-v1-user-login-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserLoginV1UserLoginRes + */ +export interface KamiApiSysUserLoginV1UserLoginRes { + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserLoginRes + */ + token?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-login-v1-user-menus.ts b/src/api/generated/models/kami-api-sys-user-login-v1-user-menus.ts new file mode 100644 index 0000000..5a1bc0e --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-login-v1-user-menus.ts @@ -0,0 +1,99 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserLoginV1UserMenus + */ +export interface KamiApiSysUserLoginV1UserMenus { + /** + * + * @type {number} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + id?: number; + /** + * + * @type {number} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + pid?: number; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + name?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + component?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + path?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + icon?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + title?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + isLink?: string; + /** + * + * @type {boolean} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + isHide?: boolean; + /** + * + * @type {boolean} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + isKeepAlive?: boolean; + /** + * + * @type {boolean} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + isAffix?: boolean; + /** + * + * @type {boolean} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + isIframe?: boolean; + /** + * + * @type {Array} + * @memberof KamiApiSysUserLoginV1UserMenus + */ + children?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-channel-type.ts b/src/api/generated/models/kami-api-sys-user-v1-channel-type.ts new file mode 100644 index 0000000..22e9176 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-channel-type.ts @@ -0,0 +1,44 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1ChannelType + */ +export interface KamiApiSysUserV1ChannelType { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1ChannelType + */ + channelName?: KamiApiSysUserV1ChannelTypeChannelNameEnum; + /** + * + * @type {number} + * @memberof KamiApiSysUserV1ChannelType + */ + num: number; +} + +export const KamiApiSysUserV1ChannelTypeChannelNameEnum = { + Apple: 'apple', + CTrip: 'cTrip', + Jd: 'jd', + OriginalJd: 'originalJD', + Walmart: 'walmart' +} as const; + +export type KamiApiSysUserV1ChannelTypeChannelNameEnum = + (typeof KamiApiSysUserV1ChannelTypeChannelNameEnum)[keyof typeof KamiApiSysUserV1ChannelTypeChannelNameEnum]; diff --git a/src/api/generated/models/kami-api-sys-user-v1-login-user-record.ts b/src/api/generated/models/kami-api-sys-user-v1-login-user-record.ts new file mode 100644 index 0000000..319412c --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-login-user-record.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1LoginUserRecord + */ +export interface KamiApiSysUserV1LoginUserRecord { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1LoginUserRecord + */ + id?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1LoginUserRecord + */ + userName?: string; + /** + * + * @type {number} + * @memberof KamiApiSysUserV1LoginUserRecord + */ + userStatus?: number; + /** + * + * @type {number} + * @memberof KamiApiSysUserV1LoginUserRecord + */ + isAdmin?: number; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-sys-user-record.ts b/src/api/generated/models/kami-api-sys-user-v1-sys-user-record.ts new file mode 100644 index 0000000..6ff229d --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-sys-user-record.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1SysUserRecord + */ +export interface KamiApiSysUserV1SysUserRecord { + /** + * 主键 + * @type {string} + * @memberof KamiApiSysUserV1SysUserRecord + */ + id?: string; + /** + * 账号 + * @type {string} + * @memberof KamiApiSysUserV1SysUserRecord + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiSysUserV1SysUserRecord + */ + nickName?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-sys-user-role-dept-res.ts b/src/api/generated/models/kami-api-sys-user-v1-sys-user-role-dept-res.ts new file mode 100644 index 0000000..653c8f2 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-sys-user-role-dept-res.ts @@ -0,0 +1,61 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1SysUserPayment } from './kami-internal-model-entity-v1-sys-user-payment'; + +/** + * + * @export + * @interface KamiApiSysUserV1SysUserRoleDeptRes + */ +export interface KamiApiSysUserV1SysUserRoleDeptRes { + /** + * ID + * @type {string} + * @memberof KamiApiSysUserV1SysUserRoleDeptRes + */ + id?: string; + /** + * 账号 + * @type {string} + * @memberof KamiApiSysUserV1SysUserRoleDeptRes + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiApiSysUserV1SysUserRoleDeptRes + */ + nickName?: string; + /** + * 用户状态 + * @type {number} + * @memberof KamiApiSysUserV1SysUserRoleDeptRes + */ + userStatus?: number; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1SysUserRoleDeptRes + */ + createdAt?: string; + /** + * + * @type {KamiInternalModelEntityV1SysUserPayment} + * @memberof KamiApiSysUserV1SysUserRoleDeptRes + */ + payment?: KamiInternalModelEntityV1SysUserPayment; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-sys-user-simple-res.ts b/src/api/generated/models/kami-api-sys-user-v1-sys-user-simple-res.ts new file mode 100644 index 0000000..e452915 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-sys-user-simple-res.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1SysUserSimpleRes + */ +export interface KamiApiSysUserV1SysUserSimpleRes { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1SysUserSimpleRes + */ + id?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1SysUserSimpleRes + */ + userName?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1SysUserSimpleRes + */ + userNickname?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-totp-image-get-req.ts b/src/api/generated/models/kami-api-sys-user-v1-totp-image-get-req.ts new file mode 100644 index 0000000..4c4bab8 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-totp-image-get-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1TotpImageGetReq + */ +export interface KamiApiSysUserV1TotpImageGetReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpImageGetReq + */ + code: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-totp-image-get-res.ts b/src/api/generated/models/kami-api-sys-user-v1-totp-image-get-res.ts new file mode 100644 index 0000000..0c7aa08 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-totp-image-get-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1TotpImageGetRes + */ +export interface KamiApiSysUserV1TotpImageGetRes { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpImageGetRes + */ + image?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-totp-reset-req.ts b/src/api/generated/models/kami-api-sys-user-v1-totp-reset-req.ts new file mode 100644 index 0000000..a0d01eb --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-totp-reset-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1TotpResetReq + */ +export interface KamiApiSysUserV1TotpResetReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpResetReq + */ + code: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-totp-reset-res.ts b/src/api/generated/models/kami-api-sys-user-v1-totp-reset-res.ts new file mode 100644 index 0000000..53c2e0f --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-totp-reset-res.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1TotpResetRes + */ +export interface KamiApiSysUserV1TotpResetRes { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpResetRes + */ + image?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-totp-set-req.ts b/src/api/generated/models/kami-api-sys-user-v1-totp-set-req.ts new file mode 100644 index 0000000..08cddc9 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-totp-set-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1TotpSetReq + */ +export interface KamiApiSysUserV1TotpSetReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpSetReq + */ + code: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpSetReq + */ + otpKey: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpSetReq + */ + otpSecret: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpSetReq + */ + password: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-totp-status-get-res.ts b/src/api/generated/models/kami-api-sys-user-v1-totp-status-get-res.ts new file mode 100644 index 0000000..22aa13e --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-totp-status-get-res.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1TotpStatusGetRes + */ +export interface KamiApiSysUserV1TotpStatusGetRes { + /** + * + * @type {boolean} + * @memberof KamiApiSysUserV1TotpStatusGetRes + */ + status?: boolean; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpStatusGetRes + */ + image?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpStatusGetRes + */ + otpSecret?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1TotpStatusGetRes + */ + otpKey?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-add-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-add-req.ts new file mode 100644 index 0000000..0664139 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-add-req.ts @@ -0,0 +1,61 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1ChannelType } from './kami-api-sys-user-v1-channel-type'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserAddReq + */ +export interface KamiApiSysUserV1UserAddReq { + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserAddReq + */ + status?: number; + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserAddReq + */ + isAdmin?: number; + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserAddReq + */ + channelList?: Array; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserAddReq + */ + username: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserAddReq + */ + password: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserAddReq + */ + UserSalt?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-change-pwd-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-change-pwd-req.ts new file mode 100644 index 0000000..4edf37f --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-change-pwd-req.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserChangePwdReq + */ +export interface KamiApiSysUserV1UserChangePwdReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserChangePwdReq + */ + oldPassword: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserChangePwdReq + */ + newPassword: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserChangePwdReq + */ + totpCode?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-delete-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-delete-req.ts new file mode 100644 index 0000000..67d6056 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-delete-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserDeleteReq + */ +export interface KamiApiSysUserV1UserDeleteReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserDeleteReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-edit-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-edit-req.ts new file mode 100644 index 0000000..6161add --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-edit-req.ts @@ -0,0 +1,45 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserEditReq + */ +export interface KamiApiSysUserV1UserEditReq { + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserEditReq + */ + status?: number; + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserEditReq + */ + isAdmin?: number; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserEditReq + */ + id: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserEditReq + */ + password: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-forbidden-by-id-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-forbidden-by-id-req.ts new file mode 100644 index 0000000..911e67c --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-forbidden-by-id-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserForbiddenByIdReq + */ +export interface KamiApiSysUserV1UserForbiddenByIdReq { + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserForbiddenByIdReq + */ + ids: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-all-simple-user.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-all-simple-user.ts new file mode 100644 index 0000000..fe0a48f --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-all-simple-user.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetAllSimpleUser + */ +export interface KamiApiSysUserV1UserGetAllSimpleUser { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserGetAllSimpleUser + */ + id?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserGetAllSimpleUser + */ + userName?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-all-user-res.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-all-user-res.ts new file mode 100644 index 0000000..56ec4d0 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-all-user-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1UserGetAllSimpleUser } from './kami-api-sys-user-v1-user-get-all-simple-user'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetAllUserRes + */ +export interface KamiApiSysUserV1UserGetAllUserRes { + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserGetAllUserRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-req.ts new file mode 100644 index 0000000..a0dd359 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetByIdsReq + */ +export interface KamiApiSysUserV1UserGetByIdsReq { + /** + * Bearer {{token}} + * @type {string} + * @memberof KamiApiSysUserV1UserGetByIdsReq + */ + Authorization?: string; + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserGetByIdsReq + */ + ids: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-res.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-res.ts new file mode 100644 index 0000000..f19ccbb --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-by-ids-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1SysUserSimpleRes } from './kami-api-sys-user-v1-sys-user-simple-res'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetByIdsRes + */ +export interface KamiApiSysUserV1UserGetByIdsRes { + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserGetByIdsRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-edit-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-edit-req.ts new file mode 100644 index 0000000..86eb4b2 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-edit-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetEditReq + */ +export interface KamiApiSysUserV1UserGetEditReq { + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserGetEditReq + */ + id?: number; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-edit-res.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-edit-res.ts new file mode 100644 index 0000000..447a19d --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-edit-res.ts @@ -0,0 +1,43 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1SysUser } from './kami-internal-model-entity-v1-sys-user'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetEditRes + */ +export interface KamiApiSysUserV1UserGetEditRes { + /** + * + * @type {KamiInternalModelEntityV1SysUser} + * @memberof KamiApiSysUserV1UserGetEditRes + */ + user?: KamiInternalModelEntityV1SysUser; + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserGetEditRes + */ + checkedRoleIds?: Array; + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserGetEditRes + */ + checkedPosts?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-get-params-res.ts b/src/api/generated/models/kami-api-sys-user-v1-user-get-params-res.ts new file mode 100644 index 0000000..b604e46 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-get-params-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelEntityV1SysRole } from './kami-internal-model-entity-v1-sys-role'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserGetParamsRes + */ +export interface KamiApiSysUserV1UserGetParamsRes { + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserGetParamsRes + */ + roleList?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-login-out-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-login-out-req.ts new file mode 100644 index 0000000..8c3d224 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-login-out-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserLoginOutReq + */ +export interface KamiApiSysUserV1UserLoginOutReq { + /** + * Bearer {{token}} + * @type {string} + * @memberof KamiApiSysUserV1UserLoginOutReq + */ + Authorization?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-menus-get-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-menus-get-req.ts new file mode 100644 index 0000000..a4c27af --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-menus-get-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserMenusGetReq + */ +export interface KamiApiSysUserV1UserMenusGetReq { + /** + * Bearer {{token}} + * @type {string} + * @memberof KamiApiSysUserV1UserMenusGetReq + */ + Authorization?: string; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-menus-get-res.ts b/src/api/generated/models/kami-api-sys-user-v1-user-menus-get-res.ts new file mode 100644 index 0000000..d61eb63 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-menus-get-res.ts @@ -0,0 +1,46 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserLoginV1UserMenus } from './kami-api-sys-user-login-v1-user-menus'; +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1LoginUserRecord } from './kami-api-sys-user-v1-login-user-record'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserMenusGetRes + */ +export interface KamiApiSysUserV1UserMenusGetRes { + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserMenusGetRes + */ + menuList?: Array; + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserMenusGetRes + */ + permissions?: Array; + /** + * + * @type {KamiApiSysUserV1LoginUserRecord} + * @memberof KamiApiSysUserV1UserMenusGetRes + */ + userInfo?: KamiApiSysUserV1LoginUserRecord; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-search-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-search-req.ts new file mode 100644 index 0000000..a9a6ca0 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-search-req.ts @@ -0,0 +1,57 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserSearchReq + */ +export interface KamiApiSysUserV1UserSearchReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserSearchReq + */ + status?: string; + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserSearchReq + */ + username?: string; + /** + * 页数 + * @type {number} + * @memberof KamiApiSysUserV1UserSearchReq + */ + current: number; + /** + * 页码 + * @type {number} + * @memberof KamiApiSysUserV1UserSearchReq + */ + pageSize: KamiApiSysUserV1UserSearchReqPageSizeEnum; +} + +export const KamiApiSysUserV1UserSearchReqPageSizeEnum = { + NUMBER_5: 5, + NUMBER_10: 10, + NUMBER_15: 15, + NUMBER_20: 20, + NUMBER_50: 50, + NUMBER_100: 100 +} as const; + +export type KamiApiSysUserV1UserSearchReqPageSizeEnum = + (typeof KamiApiSysUserV1UserSearchReqPageSizeEnum)[keyof typeof KamiApiSysUserV1UserSearchReqPageSizeEnum]; diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-search-res.ts b/src/api/generated/models/kami-api-sys-user-v1-user-search-res.ts new file mode 100644 index 0000000..d5964a5 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-search-res.ts @@ -0,0 +1,37 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiApiSysUserV1SysUserRoleDeptRes } from './kami-api-sys-user-v1-sys-user-role-dept-res'; + +/** + * + * @export + * @interface KamiApiSysUserV1UserSearchRes + */ +export interface KamiApiSysUserV1UserSearchRes { + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserSearchRes + */ + total?: number; + /** + * + * @type {Array} + * @memberof KamiApiSysUserV1UserSearchRes + */ + list?: Array; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-status-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-status-req.ts new file mode 100644 index 0000000..d601753 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-status-req.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserStatusReq + */ +export interface KamiApiSysUserV1UserStatusReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserStatusReq + */ + id: string; + /** + * + * @type {number} + * @memberof KamiApiSysUserV1UserStatusReq + */ + status: number; +} diff --git a/src/api/generated/models/kami-api-sys-user-v1-user-suspend-or-continue-req.ts b/src/api/generated/models/kami-api-sys-user-v1-user-suspend-or-continue-req.ts new file mode 100644 index 0000000..8a26486 --- /dev/null +++ b/src/api/generated/models/kami-api-sys-user-v1-user-suspend-or-continue-req.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiSysUserV1UserSuspendOrContinueReq + */ +export interface KamiApiSysUserV1UserSuspendOrContinueReq { + /** + * + * @type {string} + * @memberof KamiApiSysUserV1UserSuspendOrContinueReq + */ + id: string; +} diff --git a/src/api/generated/models/kami-api-user-center-v1-get-user-info-res.ts b/src/api/generated/models/kami-api-user-center-v1-get-user-info-res.ts new file mode 100644 index 0000000..93452bd --- /dev/null +++ b/src/api/generated/models/kami-api-user-center-v1-get-user-info-res.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import type { KamiInternalModelUserInfo } from './kami-internal-model-user-info'; + +/** + * + * @export + * @interface KamiApiUserCenterV1GetUserInfoRes + */ +export interface KamiApiUserCenterV1GetUserInfoRes { + /** + * + * @type {KamiInternalModelUserInfo} + * @memberof KamiApiUserCenterV1GetUserInfoRes + */ + info?: KamiInternalModelUserInfo; +} diff --git a/src/api/generated/models/kami-api-validation-v1-get-captcha-res.ts b/src/api/generated/models/kami-api-validation-v1-get-captcha-res.ts new file mode 100644 index 0000000..e7759ef --- /dev/null +++ b/src/api/generated/models/kami-api-validation-v1-get-captcha-res.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiApiValidationV1GetCaptchaRes + */ +export interface KamiApiValidationV1GetCaptchaRes { + /** + * + * @type {string} + * @memberof KamiApiValidationV1GetCaptchaRes + */ + key?: string; + /** + * + * @type {string} + * @memberof KamiApiValidationV1GetCaptchaRes + */ + img?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-apple-hidden-settings.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-apple-hidden-settings.ts new file mode 100644 index 0000000..a56c3d8 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-apple-hidden-settings.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardAppleHiddenSettings + */ +export interface KamiInternalModelEntityV1CardAppleHiddenSettings { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + id?: number; + /** + * 规则名称 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + name?: string; + /** + * 规则状态 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + status?: number; + /** + * 待偷取用户ID + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + targetUserId?: string; + /** + * 待存储用户ID + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + storageUserId?: string; + /** + * 间隔金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + amount?: number; + /** + * 偷取金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + targetAmount?: number; + /** + * 偷卡总额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + stealTotalAmount?: number; + /** + * 间隔时间 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + intervalTime?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHiddenSettings + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-apple-history-info.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-apple-history-info.ts new file mode 100644 index 0000000..04efef8 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-apple-history-info.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardAppleHistoryInfo + */ +export interface KamiInternalModelEntityV1CardAppleHistoryInfo { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + accountId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + orderNo?: string; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + rechargeId?: number; + /** + * 操作:created、failed、recharging + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + operation?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleHistoryInfo + */ + accountName?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-apple-recharge-info.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-apple-recharge-info.ts new file mode 100644 index 0000000..2684d0f --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-apple-recharge-info.ts @@ -0,0 +1,147 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardAppleRechargeInfo + */ +export interface KamiInternalModelEntityV1CardAppleRechargeInfo { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + id?: number; + /** + * 订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + accountId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + accountName?: string; + /** + * 卡号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + cardNo?: string; + /** + * 卡密 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + cardPass?: string; + /** + * 商户ID + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + merchantId?: string; + /** + * 余额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + balance?: number; + /** + * 卡面充值金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + cardAmount?: number; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + notifyStatus?: number; + /** + * 状态 0.创建 1.交易成功 2.交易中 3.交易失败 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + status?: number; + /** + * 实际充值金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + actualAmount?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + callbackUrl?: string; + /** + * itunes回调次数 + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + callbackCount?: number; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + distributionCount?: number; + /** + * 创建者ID + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + createdUserId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + attach?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + remark?: string; + /** + * 创建日期 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + createdAt?: string; + /** + * 更新日期 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + updatedAt?: string; + /** + * 删除日期 + * @type {string} + * @memberof KamiInternalModelEntityV1CardAppleRechargeInfo + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-jd-account-history.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-jd-account-history.ts new file mode 100644 index 0000000..cee1e6b --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-jd-account-history.ts @@ -0,0 +1,87 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardJdAccountHistory + */ +export interface KamiInternalModelEntityV1CardJdAccountHistory { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + id?: number; + /** + * 账号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + accountId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + accountName?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + cookie?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + orderNo?: string; + /** + * 金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + amount?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + remark?: string; + /** + * 操作状态 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + operationStatus?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdAccountHistory + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-history.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-history.ts new file mode 100644 index 0000000..5c3ecd0 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-history.ts @@ -0,0 +1,87 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardJdOrderHistory + */ +export interface KamiInternalModelEntityV1CardJdOrderHistory { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + accountName?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + accountId?: string; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + operationStatus?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + responseRawData?: string; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + amount?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderHistory + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-info.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-info.ts new file mode 100644 index 0000000..c953e24 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-jd-order-info.ts @@ -0,0 +1,159 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardJdOrderInfo + */ +export interface KamiInternalModelEntityV1CardJdOrderInfo { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + merchantId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + attach?: string; + /** + * 创建用户 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + createdUserId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + accountId?: string; + /** + * 账号名称 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + accountName?: string; + /** + * 账户昵称 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + accountNickname?: string; + /** + * 账户唯一标识 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + accountUsername?: string; + /** + * 卡号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + cardNo?: string; + /** + * 卡密 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + giftCardPwd?: string; + /** + * 卡种 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + cardTypeName?: string; + /** + * 回调 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + notifyUrl?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + remark?: string; + /** + * 订单金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + orderAmount?: number; + /** + * 实际金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + actualAmount?: number; + /** + * 账户类型 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + category?: number; + /** + * 回调次数 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + callbackCount?: number; + /** + * 回调状态 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + notifyStatus?: number; + /** + * 1.兑换成功 2.兑换失败 + * @type {number} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + status?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardJdOrderInfo + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-group.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-group.ts new file mode 100644 index 0000000..da0e9a5 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-group.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardRedeemAccountGroup + */ +export interface KamiInternalModelEntityV1CardRedeemAccountGroup { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + id?: number; + /** + * 分组名称 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + name?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + notes?: string; + /** + * 分组类别 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + category?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + createdUserId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + deletedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountGroup + */ + updatedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-history.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-history.ts new file mode 100644 index 0000000..1f8732c --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-account-history.ts @@ -0,0 +1,99 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardRedeemAccountHistory + */ +export interface KamiInternalModelEntityV1CardRedeemAccountHistory { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + id?: number; + /** + * 账号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + accountId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + accountName?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + cookie?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + orderNo?: string; + /** + * 金额变化 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + amount?: number; + /** + * 余额(自身充值变化) + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + effectiveBalance?: number; + /** + * 余额(所有余额) + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + balance?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + remark?: string; + /** + * 操作状态 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + operationStatus?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemAccountHistory + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-cookie-info.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-cookie-info.ts new file mode 100644 index 0000000..5a50e6c --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-cookie-info.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardRedeemCookieInfo + */ +export interface KamiInternalModelEntityV1CardRedeemCookieInfo { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + name?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + cookie?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + notes?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + status?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + category?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemCookieInfo + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-history.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-history.ts new file mode 100644 index 0000000..f0006bf --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-history.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardRedeemOrderHistory + */ +export interface KamiInternalModelEntityV1CardRedeemOrderHistory { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + accountId?: string; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + operationStatus?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + responseRawData?: string; + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + amount?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderHistory + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-info.ts b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-info.ts new file mode 100644 index 0000000..03e3a4f --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-card-redeem-order-info.ts @@ -0,0 +1,147 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1CardRedeemOrderInfo + */ +export interface KamiInternalModelEntityV1CardRedeemOrderInfo { + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + orderNo?: string; + /** + * 卡号 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + cardNo?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + merchantId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + attach?: string; + /** + * 创建用户 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + createdUserId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + accountId?: string; + /** + * 账号名称 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + accountName?: string; + /** + * 卡密 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + giftCardPwd?: string; + /** + * 卡种 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + cardTypeName?: string; + /** + * 回调 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + notifyUrl?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + remark?: string; + /** + * 订单金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + orderAmount?: number; + /** + * 实际金额 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + actualAmount?: number; + /** + * 账户类型 + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + category?: string; + /** + * 回调次数 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + callbackCount?: number; + /** + * 回调状态 0没有回调 1.回调成功 2.回调失败 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + notifyStatus?: number; + /** + * 1.兑换成功 0.失败 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + status?: number; + /** + * 订单状态 订单原本状态 + * @type {number} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + orderStatus?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1CardRedeemOrderInfo + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-config.ts b/src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-config.ts new file mode 100644 index 0000000..2fabafb --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-config.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1MerchantHiddenConfig + */ +export interface KamiInternalModelEntityV1MerchantHiddenConfig { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + id?: number; + /** + * 商户Id + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + merchantUid?: string; + /** + * 商户通道 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + roadUid?: string; + /** + * 金额 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + amount?: number; + /** + * 面额 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + faceAmount?: number; + /** + * 延迟时间 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + delayDuration?: number; + /** + * 是否启用 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + enable?: number; + /** + * 策略 1空白 2.报错 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + strategy?: number; + /** + * 创建时间 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + createdAt?: string; + /** + * 更新时间 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenConfig + */ + updatedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-record.ts b/src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-record.ts new file mode 100644 index 0000000..459d2e6 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-merchant-hidden-record.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1MerchantHiddenRecord + */ +export interface KamiInternalModelEntityV1MerchantHiddenRecord { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + id?: number; + /** + * 替换掉的id + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + targetOrderNo?: string; + /** + * 原有id + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + sourceOrderNo?: string; + /** + * 偷卡金额 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + orderAmount?: number; + /** + * 实际金额 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + actualAmount?: number; + /** + * 关联偷卡规则 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + merchantHiddenConfigId?: number; + /** + * 规则 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + strategy?: number; + /** + * 延迟时间 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + delayDuration?: number; + /** + * 状态 1.成功 2.失败 3.准备开始 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + status?: number; + /** + * 是否结束本轮偷卡 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + isFinish?: number; + /** + * 创建时间 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + createdAt?: string; + /** + * 修改时间 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantHiddenRecord + */ + updatedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-merchant-info.ts b/src/api/generated/models/kami-internal-model-entity-v1-merchant-info.ts new file mode 100644 index 0000000..134fbc5 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-merchant-info.ts @@ -0,0 +1,153 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1MerchantInfo + */ +export interface KamiInternalModelEntityV1MerchantInfo { + /** + * 主键,自增 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + id?: number; + /** + * 商户状态状态 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + status?: string; + /** + * 所属代理uid + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + belongAgentUid?: string; + /** + * 所属代理名称 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + belongAgentName?: string; + /** + * 商户名称 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + merchantName?: string; + /** + * 商户uid + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + merchantUid?: string; + /** + * 商户key + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + merchantKey?: string; + /** + * 商户密钥 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + merchantSecret?: string; + /** + * 登录账号 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + loginAccount?: string; + /** + * 登录密码 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + loginPassword?: string; + /** + * 是否自动结算 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + autoSettle?: string; + /** + * 是否自动代付 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + autoPayFor?: string; + /** + * 配置ip白名单 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + whiteIps?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + remark?: string; + /** + * 单代付代付通道uid + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + singlePayForRoadUid?: string; + /** + * 单代付通道名称 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + singlePayForRoadName?: string; + /** + * 轮询代付通道编码 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + rollPayForRoadCode?: string; + /** + * 轮询代付通道名称 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + rollPayForRoadName?: string; + /** + * 代付手续费 + * @type {number} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + payforFee?: number; + /** + * 更新时间 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + updateTime?: string; + /** + * 创建时间 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + createTime?: string; + /** + * 二次验证 + * @type {string} + * @memberof KamiInternalModelEntityV1MerchantInfo + */ + otpSecret?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-account.ts b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-account.ts new file mode 100644 index 0000000..e7fd1cf --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-account.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1RechargeTMallAccount + */ +export interface KamiInternalModelEntityV1RechargeTMallAccount { + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + id?: string; + /** + * 账户 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + accountNumber?: string; + /** + * 余额 + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + balance?: number; + /** + * 充值次数 + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + rechargeTimes?: number; + /** + * 状态 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + status?: string; + /** + * 创建时间 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + createdAt?: string; + /** + * 更新时间 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + updatedAt?: string; + /** + * 删除时间 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallAccount + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order-history.ts b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order-history.ts new file mode 100644 index 0000000..9539ba3 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order-history.ts @@ -0,0 +1,75 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1RechargeTMallOrderHistory + */ +export interface KamiInternalModelEntityV1RechargeTMallOrderHistory { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + id?: number; + /** + * 淘宝订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + orderNo?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + originalData?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + remark?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + status?: string; + /** + * 来源,选择淘宝或者阿奇索 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + sourceType?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrderHistory + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order.ts b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order.ts new file mode 100644 index 0000000..54f267f --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-order.ts @@ -0,0 +1,123 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1RechargeTMallOrder + */ +export interface KamiInternalModelEntityV1RechargeTMallOrder { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + id?: number; + /** + * 通道名称 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + channelName?: string; + /** + * 订单号,同时是ID + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + orderNo?: string; + /** + * 账户ID + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + accountId?: string; + /** + * 账号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + accountNumber?: string; + /** + * 充值金额 + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + amount?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + status?: string; + /** + * 第三方订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + merchantOrder?: string; + /** + * 第三方订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + thirdMerhantOrder?: string; + /** + * 回调状态 + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + notifyStatus?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + callbackUrl?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + remark?: string; + /** + * 关联天猫订单内部id + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + shopId?: number; + /** + * 回调类型 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + callbackType?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallOrder + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop-history.ts b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop-history.ts new file mode 100644 index 0000000..0055520 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop-history.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1RechargeTMallShopHistory + */ +export interface KamiInternalModelEntityV1RechargeTMallShopHistory { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + id?: number; + /** + * 关联订单 + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + shopId?: number; + /** + * 原始记录 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + rawData?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + remark?: string; + /** + * 操作状态 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + status?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShopHistory + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop.ts b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop.ts new file mode 100644 index 0000000..ab702d5 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-recharge-tmall-shop.ts @@ -0,0 +1,135 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1RechargeTMallShop + */ +export interface KamiInternalModelEntityV1RechargeTMallShop { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + id?: number; + /** + * 订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + orderNo?: string; + /** + * 充值账号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + account?: string; + /** + * 淘宝订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + tMallOrderNo?: string; + /** + * 买家昵称 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + buyerNick?: string; + /** + * 买家是否评价 + * @type {number} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + buyerRate?: number; + /** + * 交易状态 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + status?: string; + /** + * 实付金额 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + payment?: string; + /** + * 商品金额 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + totalFee?: string; + /** + * 付款时间 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + payTime?: string; + /** + * 天猫返回状态 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + tradeStatus?: string; + /** + * 买家备注 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + buyerMemo?: string; + /** + * 支付宝交易号 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + alipayNo?: string; + /** + * 买家留言 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + buyerMessage?: string; + /** + * 交易创建时间 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + createTime?: string; + /** + * 交易结束时间 + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + endTime?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1RechargeTMallShop + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-sys-role.ts b/src/api/generated/models/kami-internal-model-entity-v1-sys-role.ts new file mode 100644 index 0000000..ca7c348 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-sys-role.ts @@ -0,0 +1,69 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1SysRole + */ +export interface KamiInternalModelEntityV1SysRole { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1SysRole + */ + id?: number; + /** + * 状态;0:禁用;1:正常 + * @type {number} + * @memberof KamiInternalModelEntityV1SysRole + */ + status?: number; + /** + * 排序 + * @type {number} + * @memberof KamiInternalModelEntityV1SysRole + */ + listOrder?: number; + /** + * 角色名称 + * @type {string} + * @memberof KamiInternalModelEntityV1SysRole + */ + name?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1SysRole + */ + remark?: string; + /** + * 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限) + * @type {number} + * @memberof KamiInternalModelEntityV1SysRole + */ + dataScope?: number; + /** + * 创建时间 + * @type {string} + * @memberof KamiInternalModelEntityV1SysRole + */ + createdAt?: string; + /** + * 更新时间 + * @type {string} + * @memberof KamiInternalModelEntityV1SysRole + */ + updatedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment-records.ts b/src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment-records.ts new file mode 100644 index 0000000..6bdf89d --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment-records.ts @@ -0,0 +1,105 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1SysUserPaymentRecords + */ +export interface KamiInternalModelEntityV1SysUserPaymentRecords { + /** + * 主键 + * @type {number} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + id?: number; + /** + * 交易唯一ID + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + transactionId?: string; + /** + * 钱包ID + * @type {number} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + paymentId?: number; + /** + * 预扣款ID + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + deductionId?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + userId?: string; + /** + * + * @type {object} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + amount?: object; + /** + * 交易类型 1deposit 2.withdrawal + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + transactionType?: string; + /** + * 订单号 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + orderNo?: string; + /** + * 交易状态:0.失败 1.成功 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + status?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + category?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + notes?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + deletedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPaymentRecords + */ + updatedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment.ts b/src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment.ts new file mode 100644 index 0000000..eb3c8fa --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-sys-user-payment.ts @@ -0,0 +1,105 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1SysUserPayment + */ +export interface KamiInternalModelEntityV1SysUserPayment { + /** + * + * @type {number} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + id?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + userId?: string; + /** + * + * @type {object} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + balance?: object; + /** + * + * @type {object} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + totalDeposits?: object; + /** + * + * @type {object} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + totalConsumption?: object; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + lastDepositTime?: string; + /** + * 上次消耗时间 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + lastConsumptionTime?: string; + /** + * 总充值次数 + * @type {number} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + totalDepositCount?: number; + /** + * 总消耗次数 + * @type {number} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + totalConsumptionCount?: number; + /** + * 0.禁用 1.正常 3.关闭 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + status?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + notes?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUserPayment + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-entity-v1-sys-user.ts b/src/api/generated/models/kami-internal-model-entity-v1-sys-user.ts new file mode 100644 index 0000000..6523ecd --- /dev/null +++ b/src/api/generated/models/kami-internal-model-entity-v1-sys-user.ts @@ -0,0 +1,93 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelEntityV1SysUser + */ +export interface KamiInternalModelEntityV1SysUser { + /** + * ID + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + id?: string; + /** + * 账号 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + username?: string; + /** + * 昵称 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + nickName?: string; + /** + * 密码 + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + userPassword?: string; + /** + * 是否是管理员 + * @type {number} + * @memberof KamiInternalModelEntityV1SysUser + */ + isAdmin?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + userSalt?: string; + /** + * 用户状态 + * @type {number} + * @memberof KamiInternalModelEntityV1SysUser + */ + userStatus?: number; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + otpKey?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + otpSecret?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + createdAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + updatedAt?: string; + /** + * + * @type {string} + * @memberof KamiInternalModelEntityV1SysUser + */ + deletedAt?: string; +} diff --git a/src/api/generated/models/kami-internal-model-user-info.ts b/src/api/generated/models/kami-internal-model-user-info.ts new file mode 100644 index 0000000..c2f6bd4 --- /dev/null +++ b/src/api/generated/models/kami-internal-model-user-info.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalModelUserInfo + */ +export interface KamiInternalModelUserInfo { + /** + * + * @type {string} + * @memberof KamiInternalModelUserInfo + */ + name?: string; +} diff --git a/src/api/generated/models/kami-internal-system-v2-model-entity-v2-road-info.ts b/src/api/generated/models/kami-internal-system-v2-model-entity-v2-road-info.ts new file mode 100644 index 0000000..ba1ccec --- /dev/null +++ b/src/api/generated/models/kami-internal-system-v2-model-entity-v2-road-info.ts @@ -0,0 +1,159 @@ +/* tslint:disable */ + +/** + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * + * @export + * @interface KamiInternalSystemV2ModelEntityV2RoadInfo + */ +export interface KamiInternalSystemV2ModelEntityV2RoadInfo { + /** + * 主键,自增 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + id?: string; + /** + * 通道名称 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + name?: string; + /** + * 支付类型 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + payType?: string; + /** + * 代付手续费 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + serviceFee?: number; + /** + * 通道总额度 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + totalLimit?: number; + /** + * 允许面额 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + allowedMm?: string; + /** + * 通道开始时间 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + startHour?: number; + /** + * 通道结束时间 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + endHour?: number; + /** + * 当天的收入 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + todayIncome?: number; + /** + * 通道总收入 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + totalIncome?: number; + /** + * 当天的收益 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + todayProfit?: number; + /** + * 通道总收益 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + totalProfit?: number; + /** + * 通道的余额 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + balance?: number; + /** + * 请求总次数 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + requestAll?: number; + /** + * 请求成功次数 + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + requestSuccess?: number; + /** + * + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + todayRequestAll?: number; + /** + * + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + todayRequestSuccess?: number; + /** + * 参数json格式 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + params?: string; + /** + * 备注 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + remark?: string; + /** + * + * @type {number} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + status?: number; + /** + * 创建时间 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + createdAt?: string; + /** + * 更新时间 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + updatedAt?: string; + /** + * 删除时间 + * @type {string} + * @memberof KamiInternalSystemV2ModelEntityV2RoadInfo + */ + deletedAt?: string; +} diff --git a/src/api/index.ts b/src/api/index.ts new file mode 100644 index 0000000..f0a8b4b --- /dev/null +++ b/src/api/index.ts @@ -0,0 +1,6 @@ +import axios from 'axios'; +import { Configuration, DefaultApi, CkApi } from './generated'; + +export const apiClient = new DefaultApi(new Configuration(), '', axios); + +export const apiCkClient = new CkApi(new Configuration(), '', axios); diff --git a/src/api/interceptor.ts b/src/api/interceptor.ts new file mode 100644 index 0000000..9d9688a --- /dev/null +++ b/src/api/interceptor.ts @@ -0,0 +1,85 @@ +import axios from 'axios'; +import type { AxiosResponse, InternalAxiosRequestConfig } from 'axios'; +import { Message, Modal } from '@arco-design/web-vue'; +import { useUserStore } from '@/store'; +import { getToken, getTokenFrom, setToken } from '@/utils/auth'; +import { isString } from '@/utils/is'; + +export interface HttpResponse { + status: number; + message: string; + code: number; + data: T; +} + +if (import.meta.env.VITE_API_BASE_URL) { + axios.defaults.baseURL = import.meta.env.VITE_API_BASE_URL; +} + +axios.interceptors.request.use( + (config: InternalAxiosRequestConfig) => { + const token = getToken(); + if (token) { + const tokenFrom = getTokenFrom(); + config.headers.Authorization = `Bearer ${token}`; + config.headers['tokenFrom'] = tokenFrom; + } + return config; + }, + error => { + return Promise.reject(error); + } +); +// add response interceptors +axios.interceptors.response.use( + (response: AxiosResponse) => { + if ( + isString(response.headers['refresh-token']) && + response.headers['refresh-token'] !== '' + ) { + setToken(response.headers['refresh-token']); + } + // 二进制文件 + if ( + response.headers['content-type'] === 'application/force-download' || + response.headers['content-type'] === 'application/octet-stream' || + response.headers['content-type'] === 'application/zip' || + response.config.responseType === 'blob' || + response.headers['content-type'] === + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' + ) { + return response; + } + const res = response.data; + if (res.code !== 0) { + Message.error({ + content: res.message || 'Error', + duration: 5 * 1000 + }); + if ( + [5001, 5002, 5003].includes(res.code) && + response.config.url !== '/api/user/info' + ) { + Modal.error({ + title: '警告', + content: '登录过期,你可以选择刷新、继续保持当前页面或重新登录', + okText: '重新登录', + async onOk() { + const userStore = useUserStore(); + await userStore.logout(); + window.location.reload(); + } + }); + } + return Promise.reject(new Error(res.message || 'Error')); + } + return res; + }, + error => { + Message.error({ + content: error.msg || 'Request Error', + duration: 5 * 1000 + }); + return Promise.reject(error); + } +); diff --git a/src/api/list.ts b/src/api/list.ts new file mode 100644 index 0000000..315cb3a --- /dev/null +++ b/src/api/list.ts @@ -0,0 +1,62 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { Pagination } from '@/types/global'; +import type { CommonPageResult, CommonStrIdParams } from './common'; +import { encryptWithBase64 } from '@/utils/encrypt'; +import type { PaymentRecord } from './sys-user-payment'; +import type { + KamiApiSysUserV1UserAddReq, + KamiApiSysUserV1UserEditReq +} from './generated'; + +export interface UserRecord extends CommonStrIdParams { + username: string; + nickName: string; + userStatus: number; + payment?: PaymentRecord; +} + +export interface UserRecordWithId extends CommonStrIdParams { + password: string; +} + +export interface UserListParams extends Partial, Pagination {} + +export function queryUserList(params: UserListParams) { + return axios.get>('/api/user/list', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} + +export interface UserAddRecord { + username: string; + password: string; +} + +// 添加用户 +export function addUserItem(data: KamiApiSysUserV1UserAddReq) { + return axios.post('/api/user/add', { + ...data, + password: encryptWithBase64(data.password) + }); +} + +// 编辑用户 +export function updateUserItem(data: KamiApiSysUserV1UserEditReq) { + return axios.put('/api/user/edit', { + ...data, + password: encryptWithBase64(data.password) + }); +} + +export function deleteUserItem(params: CommonStrIdParams) { + return axios.delete('/api/user/delete', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} diff --git a/src/api/merchant-deploy.ts b/src/api/merchant-deploy.ts new file mode 100644 index 0000000..e3917f1 --- /dev/null +++ b/src/api/merchant-deploy.ts @@ -0,0 +1,109 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonNumIdParams, CommonResult } from './common'; + +export type merchantDeployRate = { + factLabel: number; // 淘宝售价 + showLabel: number; // 卡片面值 + platformLabel: string; + isLinkSingle: boolean; + value: number; + linkID: string; + sort?: number; +}; + +export type simpleArray = { + label: string; + value: any; + isLink?: boolean; +}; + +export type merchantDeployRecord = { + id: number; + status: string; + merchantUid: string; + payType: string; + payTypeName: string; + singleRoadUid: string; + singleRoadName: string; + singleRoadPlatformRate: merchantDeployRate[]; + singleRoadAgentRate: number; + rollRoadCode: string; + rollRoadName: string; + rollRoadPlatformRate: number; + rollRoadAgentRate: number; + autoPayfor: string; + autoSettle: string; + restrictArea: string[]; + isRestrictAgent: boolean; + isRestrictCardPass: boolean; + isRestrictInternalIp: boolean; + isRestrictIp: boolean; + isRestrictDevice: boolean; +}; + +export type merchantDeployAddRecord = { + merchantUid: string; + singleRoadUid: string; + singleRoadPlatformRate: merchantDeployRate[]; + singleRoadAgentRate: number; + autoSettle: string; + autoPayfor: string; + rollRoadCode: string; + rollRoadPlatformRate: number; + rollRoadAgentRate: number; + restrictArea: string[]; + isRestrictAgent: boolean; + isRestrictCardPass: boolean; + isRestrictInternalIp: boolean; + isRestrictIp: boolean; + isRestrictDevice: boolean; +}; + +export type merchantDeployAddRecordWithID = merchantDeployAddRecord & + CommonNumIdParams; + +export function getmerchantDeployList(params: { merchantUid: string }) { + return axios.get>( + '/api/merchant/deploy/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function deleteMerchantDeploy(params: { + merchantUid: string; + payType: string; + singleRoadUid: string; +}) { + return axios.delete('/api/merchant/deploy/delete', { params }); +} + +export function addMerchantDeploy(data: merchantDeployAddRecord) { + return axios.post('/api/merchant/deploy/add', data); +} + +export function updateMerchantDeploy(data: merchantDeployAddRecordWithID) { + return axios.post('/api/merchant/deploy/update', data); +} + +export function getMerchantDeployDetail(params: { id: number }) { + return axios.get('/api/merchant/deploy/getDetail', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} + +export default null; + +export function queryAllRestrictArea() { + return axios.get>( + '/api/restriction/location/getAllProvince' + ); +} diff --git a/src/api/merchant-list.ts b/src/api/merchant-list.ts new file mode 100644 index 0000000..db78c3f --- /dev/null +++ b/src/api/merchant-list.ts @@ -0,0 +1,82 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonNumIdParams } from './common'; +import type { UserRecord } from './list'; +import type { Pagination } from '@/types/global'; + +export interface MerchantConfigAddRecord { + merchantName: string; + loginAccount: string; + loginPassword: string; + remark: string; + status: string; +} + +export interface MerchantConfigResRecord extends CommonNumIdParams { + status: string; + belongAgentUid: string; + belongAgentName: string; + merchantName: string; + merchantUid: string; + merchantKey: string; + merchantSecret: string; + loginAccount: string; + whiteIps: string; + remark: string; + singlePayForRoadUid: string; + singlePayForRoadName: string; + rollPayForRoadCode: string; + rollPayForRoadName: string; + payforFee: number; + updateTime: string; + createTime: string; +} + +export interface MerchantConfigDetailRecord { + loginAccount: string; + merchantName: string; + merchantUid: string; + whiteIps: string; + remark: string; +} + +export interface MerchantConfigParams extends Partial, Pagination {} + +export function queryMerchantConfigList(params: MerchantConfigParams) { + return axios.get>( + '/api/merchant/config/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function queryMerchant(params: { merchantUid: string }) { + return axios.get( + '/api/merchant/config/getDetail', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function updateMerchantInfo(data: MerchantConfigDetailRecord) { + return axios.post('/api/merchant/config/updateDetail', data); +} + +export function addMerchantConfig(data: MerchantConfigAddRecord) { + return axios.post('/api/merchant/config/add', data); +} + +export function switchMerchantStatus(params: { + merchantUid: string; + status: string; +}) { + return axios.post('/api/merchant/config/switchStatus', params); +} diff --git a/src/api/message.ts b/src/api/message.ts new file mode 100644 index 0000000..e2d60ee --- /dev/null +++ b/src/api/message.ts @@ -0,0 +1,38 @@ +import axios from 'axios'; + +export interface MessageRecord { + id: number; + type: string; + title: string; + subTitle: string; + avatar?: string; + content: string; + time: string; + status: 0 | 1; + messageType?: number; +} +export type MessageListType = MessageRecord[]; + +export function queryMessageList() { + return axios.post('/api/message/list'); +} + +interface MessageStatus { + ids: number[]; +} + +export function setMessageStatus(data: MessageStatus) { + return axios.post('/api/message/read', data); +} + +export interface ChatRecord { + id: number; + username: string; + content: string; + time: string; + isCollect: boolean; +} + +export function queryChatList() { + return axios.post('/api/chat/list'); +} diff --git a/src/api/order-summary.ts b/src/api/order-summary.ts new file mode 100644 index 0000000..c5abc06 --- /dev/null +++ b/src/api/order-summary.ts @@ -0,0 +1,35 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult } from './common'; +import type { Pagination } from '@/types/global'; + +export interface OrderSummaryParams extends Pagination { + roadUid?: string; +} + +export interface OrderSummaryRecord { + merchantUid: string; + merchantName: string; + succeedCount: number; + succeedShowAmount: number; + succeedFactAmount: number; + totalShowAmount: number; + totalFactAmount: number; + totalCount: number; + rate: number; + date: string; + failedCount: number; + waitedCount: number; +} + +export function queryOrderSummaryList(params: OrderSummaryParams) { + return axios.get>( + '/api/orderInfo/summary/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} diff --git a/src/api/road.ts b/src/api/road.ts new file mode 100644 index 0000000..0899edb --- /dev/null +++ b/src/api/road.ts @@ -0,0 +1,13 @@ +import axios from 'axios'; +import type { CommonResult } from './common'; + +export interface simpleRoad { + roadName: string; + roadUid: string; +} + +export function getSimpleRoad() { + return axios.get>('/api/road/simple/getAll'); +} + +export default null; diff --git a/src/api/road_pool.ts b/src/api/road_pool.ts new file mode 100644 index 0000000..294d846 --- /dev/null +++ b/src/api/road_pool.ts @@ -0,0 +1,11 @@ +import axios from 'axios'; +import type { CommonResult } from './common'; + +export interface simplePoolRoad { + roadPoolName: string; + roadPoolCode: string; +} + +export function getSimpleRoadPool() { + return axios.get>('/api/roadPool/simple/getAll'); +} diff --git a/src/api/sys-user-payment.ts b/src/api/sys-user-payment.ts new file mode 100644 index 0000000..7556895 --- /dev/null +++ b/src/api/sys-user-payment.ts @@ -0,0 +1,100 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult } from './common'; +import type { Pagination } from '@/types/global'; + +export interface PaymentRecord { + id: number; + userId: string; + balance: string; + totalDeposits: string; + totalConsumption: string; + lastDepositTime: string; + lastConsumptionTime: string; + totalDepositCount: number; + totalConsumptionCount: number; + status: string; + notes: string; +} + +export interface PaymentLogRecord extends Pagination { + id: number; + transactionId: string; + paymentId: number; + userId: string; + amount: number; + category: string; + transactionType: string; + status: string; + notes: string; + createdAt: string; +} + +export interface PaymentLogRecordParams extends Pagination { + userId: string; + transactionType?: string; +} + +export interface PaymentAddRecordParams { + userId: string; + amount: number; + transactionType: string; + remark: string; +} + +// 获取用户钱包流水 +export function queryUserPaymentList(params: PaymentLogRecordParams) { + return axios.get>( + '/api/sysUser/payment/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +// 往钱包内充值 +export function addUserPaymentRecord(data: PaymentAddRecordParams) { + return axios.post>( + '/api/sysUser/payment/add', + data + ); +} + +export function queryUserPaymentRecordsList(params: PaymentLogRecordParams) { + return axios.get>( + '/api/sysUser/paymentRecords/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export interface UserPaymentSummaryRecord { + username: string; + totalDepositAmount: number; + totalConsumeAmount: number; + totalManualHandleAmount: number; + createdAt: string; +} + +export interface UserPaymentListParams extends Pagination { + username?: string; +} + +export function queryUserPaymentSummaryList(params: UserPaymentListParams) { + return axios.get>( + '/api/sysUser/paymentSummary/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} diff --git a/src/api/t-mall-game-account.ts b/src/api/t-mall-game-account.ts new file mode 100644 index 0000000..19ea009 --- /dev/null +++ b/src/api/t-mall-game-account.ts @@ -0,0 +1,91 @@ +import type { Pagination } from '@/types/global'; +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonStrIdParams } from './common'; + +export interface TMallAccountRecord { + accountNumber: string; +} + +export interface TMallAccountParams + extends Pagination, + Partial {} + +export interface TMallAccountAddRecord extends CommonStrIdParams { + status: string; + totalDeposits: number; + balance: number; +} + +export function queryTMallAccountList(params: TMallAccountParams) { + return axios.get>( + '/api/recharge/tMallGame/account/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export function deleteTMallAccountItem(params: CommonStrIdParams) { + return axios.delete('/api/recharge/tMallGame/account/delete', { params }); +} + +export function stopTMallAccountItem(data: CommonStrIdParams) { + return axios.post('/api/recharge/tMallGame/account/toggle', data); +} + +export function getTMallAuthorizeAppKey() { + return axios.get<{ code: string; redirectUri: string }>( + '/api/recharge/tMallGame/account/auth/getAuthorizeKey' + ); +} + +export interface addRandomAccountParams { + count: number; +} + +export function addRandomAccountList(data: addRandomAccountParams) { + return axios.post('/api/recharge/tMallGame/account/create', data); +} + +export function checkTMallAuthStatus() { + return axios.get<{ status: boolean; expiredAt: string }>( + '/api/recharge/tMallGame/account/auth/getTMallAuthStatus' + ); +} + +export function authorizeTMAllGameLogin(data: { + code: string; + channel: string; +}) { + return axios.post('/api/recharge/tMallGame/account/auth/callback', data); +} + +export interface TMallAccountDetailRecord { + id: string; + status: string; + amount: string; + createdAt: string; + notes: string; +} + +export interface TMallAccountDetailParams + extends Pagination, + Partial { + id: string; +} + +export function queryTMallAccountDetailList(params: TMallAccountDetailParams) { + return axios.get>( + '/api/recharge/tMallGame/account/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} diff --git a/src/api/t-mall-game-order.ts b/src/api/t-mall-game-order.ts new file mode 100644 index 0000000..7ad7410 --- /dev/null +++ b/src/api/t-mall-game-order.ts @@ -0,0 +1,251 @@ +import type { Pagination } from '@/types/global'; +import type { CommonPageResult, CommonResult } from './common'; +import qs from 'query-string'; +import axios from 'axios'; + +export interface TMallOrderRecord { + accountNumber: string; + status: string; + createdAt: string; + accountId: string; + accountInfo: { + accountNumber: string; + id: string; + }; + notifyStatus: number; + amount: number; + callbackType: string; + callbackUrl: string; + merchantOrder: string; + orderNo: string; + remark: string; + shopId: number; + updatedAt: string; +} + +export interface RechargeTMallShopRecord { + id: number; + orderNo: string; + tMallOrderNo: number; + created?: string; // 使用了 gtime.Time 的假定类型,且允许为 null + buyerNick: string; + buyerRate: number; + status: string; + payment: string; // 如果 payment 字段存储的是数字,那么应该用 number 类型 + totalFee: string; // 同上,如果是数字存储则使用 number 类型 + payTime?: string | null; // 同上 + tradeStatus: string; + endTime?: string | null; // 同上 + buyerMemo: string; + alipayNo: string; + buyerMessage: string; +} + +export interface RechargeTMallOrderHistory { + id: number; + orderNo: string; + originalData: string; + remark: string; + status: string; + sourceType: string; + createdAt?: Date | null; // 使用 Date 类型 +} + +export interface TMallOrderParams + extends Pagination, + Partial { + dateRange?: Date[]; +} + +export function queryTMallOrderList(params: TMallOrderParams) { + delete params.dateRange; + return axios.get>( + '/api/recharge/tMallGame/order/list', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj, { arrayFormat: 'bracket' }); + } + } + ); +} + +export function queryTMallShopOrder(params: { orderNo: string }) { + return axios.get( + '/api/recharge/tMallGame/shopOrder/getOne', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj, { arrayFormat: 'bracket' }); + } + } + ); +} + +export function queryTMallOrderHistory(params: { orderNo: string }) { + return axios.get>( + '/api/recharge/tMallGame/shopOrder/getHistoryList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +// 手动回调订单 +export function callBackOrderManualAPI(data: { + orderNo?: string; + rechargeId?: string; +}) { + return axios.post('/api/recharge/tMallGame/shopOrder/callbackByManual', data); +} + +/** + * 订单统计摘要 + */ +export interface OrderSummary { + /** + * 订单数量 + */ + count: number; + + /** + * 订单成功数量 + */ + succeedCount: number; + + /** + * 订单成功金额 + */ + succeedAmount: number; + callbackType: string; + + /** + * 总支付金额 + */ + amount: number; + + /** + * 今日订单成功率 + */ + rate: number; + + /** + * 日期 + */ + createdAt: string; +} +export interface OrderSummaryParams extends Pagination, Partial {} + +export function getOrderSummary(params: OrderSummaryParams) { + return axios.get>( + '/api/recharge/tMallGame/workspace/orderSummary', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +/** + * 表示商城游戏统计数据的响应对象 + */ +export interface TMallGameStatsRes { + /** + * 总订单数量 + */ + totalCount: number; + + /** + * 总订单成功数量 + */ + totalSucceedCount: number; + + /** + * 总支付金额 + */ + totalAmount: number; + + /** + * 总成功订单总额 + */ + totalSucceedAmount: number; + + /** + * 今日订单数量 + */ + todayCount: number; + + /** + * 今日订单成功数量 + */ + todaySucceedCount: number; + + /** + * 今日支付金额 + */ + todayAmount: number; + + /** + * 今日成功订单总额 + */ + TodaySucceedAmount: number; + + /** + * 总订单成功率 + */ + totalRate: number; + + /** + * 今日订单成功率 + */ + todayRate: number; +} + +export function getOrderStats(params: { channelName?: string }) { + return axios.get( + '/api/recharge/tMallGame/workspace/stats', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export interface OrderFakeRes { + id: string; // 充值ID + sourceOfShop: string; // 来源 + orderNo: string; // 订单号 + category: string; // 游戏品类 + account: string; // 游戏账号 + amount: number; // 充值金额 + topUpTime: Date | null; // 充值时间 + status: number; // 状态 +} + +export function queryFakeOrder(params: { account: string }) { + return axios.get('/api/recharge/tMallGame/order/queryOne', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} + +export interface GameCategory { + id: number; + name: string; +} + +// 获取游戏分类 +export function queryGameCategory() { + return axios.get>( + '/api/recharge/tMallGame/getCategoryList' + ); +} diff --git a/src/api/t-mall-game-shop-order.ts b/src/api/t-mall-game-shop-order.ts new file mode 100644 index 0000000..58332c9 --- /dev/null +++ b/src/api/t-mall-game-shop-order.ts @@ -0,0 +1,90 @@ +import type { Pagination } from '@/types/global'; +import axios from 'axios'; +import qs from 'query-string'; +import type { CommonPageResult, CommonResult } from './common'; +import { isUndefined } from '@/utils/is'; + +export interface ShopOrderRecord { + id: number; + orderNo: string; + tMallOrderNo: number; + created: Date | null; + buyerNick: string; + buyerRate: number; + status: string; + payment: string; + totalFee: string; + payTime: Date | null; + tradeStatus: string; + endTime: Date | null; + buyerMemo: string; + alipayNo: string; + buyerMessage: string; +} + +export interface TMallOrderParams extends Pagination, Partial { + dateRange?: Date[]; + startDate?: Date; + endDate?: Date; +} + +export function queryTMallShopOrderList(params: TMallOrderParams) { + if (!isUndefined(params.dateRange)) { + switch (params.dateRange.length) { + case 2: { + params.startDate = params.dateRange[0]; + params.endDate = params.dateRange[1]; + break; + } + case 1: { + params.startDate = params.dateRange[0]; + break; + } + } + } + delete params.dateRange; + return axios.get>( + '/api/recharge/tMallGame/shopOrder/getList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} + +export enum RechargeTMallShopOrderStatus { + ReceiveCallback = 'receive_callback', // 接收回调 + Paid = 'paid', // 主动请求天猫订单 + DeliverySucceed = 'delivery_succeed', // 发货成功 + DeliveryFailed = 'delivery_failed', // 发货失败 + ConfirmOrder = 'confirm_order', // 确认收货 + BindOrderFail = 'bind_order_fail', // 绑定订单失败 + BindOrderSucceed = 'bind_order_succeed', // 绑定订单成功 + EvaluationGood = 'evaluation_good', // 用户好评 + EvaluationBad = 'evaluation_bad', // 用户差评 + EvaluatedSucceed = 'evaluated_succeed', // 好评成功 + EvaluatedFailed = 'evaluated_failed' // 好评失败 +} + +export interface RechargeTMallShopOrderHistory { + id: number; + shopId: number; + remark: string; + status: RechargeTMallShopOrderStatus; + originalData: string; + createdAt?: Date | null; // 使用 Date 类型 +} + +export function queryTMallOrderOrderHistory(params: { shopId: number }) { + return axios.get>( + '/api/recharge/tMallGame/shopOrder/getShopHistoryList', + { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + } + ); +} diff --git a/src/api/user.ts b/src/api/user.ts new file mode 100644 index 0000000..734d667 --- /dev/null +++ b/src/api/user.ts @@ -0,0 +1,110 @@ +import axios from 'axios'; +import qs from 'query-string'; +import type { RouteRecordNormalized } from 'vue-router'; +import type { UserState } from '@/store/modules/user/types'; +import { encryptWithBase64 } from '@/utils/encrypt'; +import type { PaymentRecord } from './sys-user-payment'; + +export interface LoginData { + username: string; + password: string; + totpCode: string; + verifyCode: string; + verifyKey: string; +} + +export interface LoginRes { + token: string; +} + +export function login(data: LoginData) { + data.password = encryptWithBase64(data.password); + return axios.post('/api/user/login', data); +} + +export function logout() { + return axios.post('/api/user/logout'); +} + +export function getUserInfo() { + return axios.post('/api/user/info'); +} + +export function getMenuList() { + return axios.post('/api/user/menu'); +} + +export function getCaptchaAPI() { + return axios.get<{ key: string; img: string }>('/api/captcha'); +} + +// 修改密码 +export function changePassword(data: { + oldPassword: string; + newPassword: string; + totpCode: string; +}) { + data = { + oldPassword: encryptWithBase64(data.oldPassword), + newPassword: encryptWithBase64(data.newPassword), + totpCode: data.totpCode + }; + return axios.put('/api/user/changePwd', data); +} + +export interface statisticsRecord { + appleAccountCount: number; + payment?: PaymentRecord; +} + +export function queryStatistics() { + return axios.get('/api/sysUser/statistics'); +} + +// 获取当前账号是否开启了二步验证 +export function queryTotpStatus() { + return axios.get<{ + status: boolean; + image?: string; + otpSecret?: string; + otpKey?: string; + }>('/api/user/totp/status'); +} + +// 设置两步验证 +export function setTotp(data: { + code: string; + password: string; + otpKey: string; + otpSecret: string; +}) { + data.password = encryptWithBase64(data.password); + return axios.post('/api/user/totp/set', data); +} + +// 查看两步验证图像 +export function getTotpImage(params: { code: string }) { + return axios.get<{ image: string }>('/api/user/totp/image', { + params, + paramsSerializer: obj => { + return qs.stringify(obj); + } + }); +} + +// 重置二步验证 +export function resetTotp(data: { code: string }) { + return axios.post('/api/user/totp/reset', data); +} + +// 暂停或重启账号 +export function pauseOrRestartAccount(data: { id: string }) { + return axios.put('/api/user/status/pauseOrRestart', data); +} + +export type UserSimpleInfo = { id: string; userName: string }; + +// 获取所有用户列表 +export function getAllSimpleUserList() { + return axios.get<{ list: UserSimpleInfo[] }>('/api/user/getSimpleAll'); +} diff --git a/src/api/utils.ts b/src/api/utils.ts new file mode 100644 index 0000000..f52a2cb --- /dev/null +++ b/src/api/utils.ts @@ -0,0 +1,20 @@ +import axios from 'axios'; + +export function handleDownLoadFile(response: Blob, fileName: string) { + const blob = new Blob([response], { type: 'application/vnd.ms-excel' }); + const src = window.URL.createObjectURL(blob); + if (src) { + const link = document.createElement('a'); + link.href = src; + link.setAttribute('download', fileName); // 设置文件名 + document.body.appendChild(link); + link.click(); + link.remove(); + } +} + +export function getAPIBaseUrl() { + return axios.defaults.baseURL ? axios.defaults.baseURL : ''; +} + +export default null; diff --git a/src/assets/images/background.png b/src/assets/images/background.png new file mode 100644 index 0000000000000000000000000000000000000000..a161afe8405640b844fba9acb93bf4384580bfa3 GIT binary patch literal 1411696 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%0DNGOY}Q}OJ@XtgrhE*wHs0}aCd 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 d7m7dT29&* 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

T1H5her@)B)c9B(+450A=k6{Qa>=c1xf<_0; z8kSCj$xF(v2pY6aUT1rDY0?n2)@&>MJm+(#j^m$D#k>fTqfV|YW{CtHnp|r|9o5IB z0Vu;bUgU_^bSMp9(%(s&t{FB25BA%6op$UW1ziU9i(QW*-wXJB_`hmb`Mgm8vkB^I z`|oqtcAvuf)9I}?F?Lo?DdVt&--MK#1VAGE%ldylxV)!D2!|apni|utM_HWFHIO$aQH01 z*mj|8R?!(9g4BQgHPBLD0DOpLy7o0tqOt=UuGCJx2v+aEH8EYvde`I?>uO68FxAv!Wui zIrl3E#-nWbFaNIPuBIl`YjnbyR;bidnPX>&j;gf5%alaJ8BubAPbk8t8iYD^-Gs^f z9y#5$1Z7zbaizI%k3Hyw(8TWP^v(JWzIx%4S5y7m*_S)l6g`$ICWlnU8>F7NkT%bF zmm9UNMBu|ih}JFMBQAg-!eYF4l#6U?JTC}tE0hvEOZgN@a;$`M?jHdl_H2Ad@lpwe zpw>fju|D?p7WKMT>EUTBT%#$4NEsJu{32L}x$fd+Ti_40$FE&D_jk`){DG1%k7x4G zH>MY4(%5w zO{;~~JO%pOJD6u(lZ5vgXXKjor3u91G~ZhKFD?an-|5?$eOLf9bBkz~<>OAd_Dg$0_FX=Ap()4y7)>Rw|%x{+~UbHK7&hK>lV@3az zk|YeXLj=TB=sfs|3TZK2bx79%qLWl^Y%1OXg*TP?uwQ`p>>0X-~O8*zUW#9$1~Ri#|2^zjgj$us4|pmG6~^c^Kq6 z7oCQ}xAlfk2^CI-A8cHHB78w`Cgh>dZZoS++1{`65=(%?SWDJBX zWemmmV(AlJgLFRMC}g|@Yq#Ynh((cQ7}WJPUk$1qR$BV05I;LL?ktyR`#mGv(i*fe2H^uK zft`1({Id8%8+s z<=R#n36XTuvdX>+)zFy#_Vk@L1&Z|tG_7|MsFB&Izq=>6=w;O`3&bh?#-y@)-gw;g z-V_rL5?UZmV-hO=ZA7uF0@Kk}oOsvX3xvDijP_mGFjDKY26(N26&R%gqm(83yaYfk z7TmKbpgbzremw77UKK&~1~1Aqyi%6@;EaPOO+!|KyZ(TGCK8f&erJO6MVro-zsbW| z47k|%94H%=QQ?#QwDi3)G8Ky=A*e-{;VI_f1?Qkb_6*TFA%J%(6(GbfRFAInt6~Y4 zLZRawCKK<>xV_J;cW)*@HO%~}B;slR$?)9m!3m?kHd#-|*fsW;DZu-#^Q((%62`iJ zM~|(*q%Lg6sz2O*x_B*P-!$mevqaRllu@)wo@9lZ$dC0#=cyDu4 zL9U1iU4zY~0OHWN(~b8vH3P*u=(w@Oc|n8Tp-MWl1koQf>fa>%7a+?6gZk(A%xwt= zyrU_Tde*KwX3f)DB2*Ur*Ebco+VEcZdZf3RxWn4EF;3QxXh8gRk^Lx7wboGR;@;^>22?+>= z!UTGo{} zdPGECRF^AKUt0~wO^}=}`6IPkIeD|b9o6YwcPj$`KSL zk%ooWGyBnG|9nw$=t$9yGmOmWpXE13eN~@Scrl0{Vp!vZ(Qy|%MtK6_L>4sNkVT`; zqVT4iF7apL*Xt*FF76!WoIhl~$eKm{s!ugO-g(Ebi>76P_ZI&JojX+7$G-pGw^uYf zxr7aj9%12l%|$21k&p?ir>0z&I7!H`dEz?%?B69edF=4!2n+C(*oC-#)n$*MxUAG> zug9RTU%&6NVIkd|H~PYlbhS2>uwtD-*n3>L$@W0`2W&tVs#WwyYMboB2mwAA#&FyQ z89}oN$BX3z0hW5DZqipMNgGt8A={?}k6T@m8_VVluySyCZ(M&jwcW0QQm`lRY*DGd z>#p9s?`bD7MVp=QfEgq~Xi_%VslBN{CSe30W z)5O^)K8|M|Z6_e~Y8!?|^zBO)-NeAK>L^khMhi4)a{Azd>G|86;A@E%uqn5>4vC*J zMZnJwxjXJEl^qq9!{k>MnB}kV8kqpI-C>ndiF91fD|2SnKh*;Jb}zZZZ&~Nwo|Rgd z<28oZH+2f%Ng9|V1F&u)qZaV4N%U^?S)RJX|rB=gc% zMT0yubu}}CLcUVEU_`yXte~QrKt1%bIAH+HxOCm06g7rFC*44Us?8(p{w#~JR=|$w zw5Fd&Sa8qW#O3+nk*#B{Nb%{2aY{r0t4qSg18yeu8m!jOSFMl6$;?08rfN~ zzEimhFuvBUH~mU)k3y*j?%Z5!%-8`taz$d3Gi4$n34OUqUCF`sB+#7uUBjgmkj$=g z^ie^7_}yNlK6y!shO{;43uLjVK=3oiQ;Z4|gFtKe2-LxToQvdP4Hl_9stGPyaOUP^ z-uSZ$Yc>p9WzE#-T^30<_+b$-2n)A>_56t;q628_axgu|wBF6nhU(Y%W=(KpVOJ~` zEW%B^s9O2mt7tBLU;P4G@z9X4^n6co1`{n(dfW7Jv$0}4qfHQiodpps#2OYs_dUsV z5FByISC)*K;R0}U;gj2sS;R7u+QaGdwhgr|>RYMOuyvo@Z$Ez919>Zyv{a=YGZ81* zlAma8EV;)SH0|-8?3Rx3AOoT3MU`15w4pdx!8r2FFlhRDDl3*OwXgU-0ioQ@_?T8%W85FV zv;$@~!rYN!|88%f*8$J;_22(2FT;1-+^VVu9X=Ku(w0ET=r44@~w-g9$Lo z?rbW`c;~hA!1D$<;**#4B}NWDPAI@RpmD_(-F%!h<^8`?$m5(FyAL5`!9i&>>Kj~) zpJl4V=nd9@B?`exK3ie|$rm}|BJ4K|FEse&l7U1n(pk_{a58j^&Me0bCK^6a>J$eG*4d?jdb$J|2eaAb^^ck|h_ zu=s&1>yxhyjEg!!{f{#*CD5vzHuyIq(KDB9d5e~3di^?VjQT<3XVy0?+>X-m|bFMXEC8SiuWvC`)khuUP(98H#W&GW^Er z@@~rg#O$E<^7=U%f#sNEx~rf6&n?8A(CTPaWvSv$dgl-owSKHoaptIFCg^wS5nRP7 zWT!Q#HA*L>SYog7>vm9I!A*T+1O@btn(^~7`Sbqwdc96w1lWq%TsbkVk_N88lmjva zh*+Q?110jjAc_*>cdL_89Up?PjRL9zz!R%v|A{nz-L9RyIryJZWX-ohdY6id2GdHt z_YJC!+N@J(oXT~k=swdb9sjQ-tQ{fwwOV9F83*+njh5Fsf7LDG;JvzHX;kdZVh)4u z<~!>*C?XDChd~F|$FqOra(Pj)>1Z#7;yBev5j(h)?pxL7Iafw(5&=cV@aF@>s4!fz z?S_t$<&t|K{L`0KG={+?vVdI;<62^(jXc?brs@zdH(jU26vcacS1Z$ndrin2$kApLl+|3cksMau9Y|}l| zLJX+b7}@EMJrr74z~8-+v)r$&;W2_cm=5{e5?eKF0j07`<%Q&TxQcV!Mxl^+?SllF zZ5s#EW1j`Z0iV7FSKy~Fu#=TniYFGSBLW;;#|lg-uKU{^yVfp!yv>dNZKedjl)P16 z$Q57`$=9BgBvltShz#Uek4hI^KDOu4Fh2oX;WV$^#)kHpwSFU>n)YXrJJ(~Tc|$QT z-|tzZu(g!kymQT+uIPXe)D@;30155WDc}1GK7=dUhGWM^MqeB}5_u&GezFm>u4VXul z+*}NZqmV~+dElBdri{Z3M>KoeWJHWGEP@fBvLUa1=J}Fhn!tEWSHmKqrDeqei=)aT z*IkOaXjKSCl*A>gV51CECfRm{OR{P$9*bb`pOIQ0C@hyd?W|uflp<;Ly((0t!7ym^ zeD~AC6MB2Af#UU>NL+0CS2c`rjs4|iy(c{{15GKF_?YAfXdRmLp{m5H0Q^tP!du-% z+LLOndMLT3*oJu}8n%oS@F9dK7V&1{H&B8seQ(IaYvQgm1T;3jxVeIzAkvfO^~Dch zO&ONP?e#A7Y4UYYOvnKR!{fN``i9%%rs1tymqrUSuoRls^QXbAP{()c=~q&KEj zEXlABpmjQg95oKz5h=UA+?A!y3JhMVV((gurd=6b4M0;+z;*3hk9dnT;^Nz{MbjAe zuXLhCE?0;x(Igaiuy*MxzC!Aba4+XLUTi^>=%NXoDTkfDDRy^93>_EB+zl~3uEHNl z9^2sUP5Tn^k1qLt=0uf5CG-BBODWEN_xsjRDEbwE}N5VJSgeg-K7hNN(iOcIZ#alD^SDRndP%bT0!~hg_2s~7w z!{2_Ql=MjH1VS?$i+-&~+lX#0NP{yBFwL0Bc=rQN*H4QL1;+S165w^dcj{%^4N?Fo z3Jt2C8d6b_xRW0Sv;)2@(7hVslNfv9=V)fD*_r5yq6lb)+)L@~;Ka4?sC2s7|5?S< zmm}aiK7n*o3kqsGl~x~<`bfT_{Ak|%>1I;;==cAXUzdBz2J}CGU@9uIhGk81Ad2%i zrp*04W(tTAKSHI2(n_WnIwx>sST=3snqLwb#X z?+WC3N=xTIvY`WipZ`s1N^tfniAX1EzUK-_A7~zh`Lga}>xtOTJ~Vj!2(V7AOH!Ya zoH+Jn$1H)04Hc!H?PgS;@82`NjtT8ip%}4iI zsk3E`l6V5)0+WlxcwvMC%YTm(xjXkS);QKoEV=T8E>0i)U7j}g+It7e`ZXMf&ELCe zyhrxb-nqC|M|AL6D6{8X&8IaalcY8Ks0#{Gam^p=dPslD3a{p*|3 ztALk8y*b0u_^$rkT;Uos+af=MSWU{8DEXN;+@7p^yPjzHR8S}N!z(7TSY(n2PqXj$ z?wT6YbeaSr)V`p0&n%>TPq|tdIIs0n1FB+7GpY;?WfQ~+^0IxPSFtJ@f`PK9ObZO- zlQaF@cL=|VM=xHCSZv8tGPC+YU}*QgkEGjA_aTtLdq=aETx>|bG+uK|TzpW-75eEJ z{9(=Tb~)shNtz}|%SN8Qo-5k%HQj!-?FCP6k@4okhiYJ1rM>_AJqT;+o)ZmIdYCIVe&@Cd8bPYz zs?Anx#(|6tLS!lK!<|jR8W2=rjax7CC!(hunQNE8AVT}yj}>vfI7_|cOSK;>$LHoY z_G!(1vjKs*5pr)u>6!3~-Kx3xNkn~lb|Ix3bk~D(Q$dbX3v4<+HNRjMF-Bf!bh$-QAR0pnHNxxIw zI{7Xv3bn$TuVpPbicD`z1*ST8&|iw{=+~U;65tDaGz3Z8Ew5jl25e(u-L2ZD3?m_GR^|feJh}ZIm!;FmGoB7E}tFe+| zDqWhTR8gjiDGw3Jm+Q$1F&R7MA6=g++AH@XGjRa;D6F&tFxt2`&IKQWf{x!zzQ}xs zZ}eAjC8uGe#qF@iXS5+_QM5?M6Nur#*1hGg zNe$;sOizhU*O*Mr6L0@u`YA;CW|%lPp}aIvf+;5#7eSSIaTb09KFO=d_Cz}z#rUdx ziH?uZ(93g#_3+kOIe?%#bb|&=@w;~UIzeav(oa1JPM!!j{5va9)4kb0fJsLl_JOqyjTi*FLrI2Q| zR&Hx#kJ=h0N^yCnCq4upAt})*gTPA0Tu-WF@ooY<)nlhl>!G%8Yb-Gk`???VX-~F7 zyN+tuylpSYXN9*xdxLW!O!%1q9c9n_q-65ae0Dy;#Ft|3XoIkOW$B!5%5GX-b0{os zCS9G^Sc0Aa6eD|}4%JRMt=lgJ_f*>=N7Pi-Sd1H3v03PAZ1$Vg=C~5P#zH0o^W!H# z9N1+M^LMvFMmT;xof5;RREXoH5xxMsv8tK9MY9g_&qSHuBKYn|g^t~Y7WaC6+G-nA zEo_sc$c>u26Z*SCGP>acFK-vfxc!ZYr7Gu~h&y9c1JIyH}+mdw#P z-DSbO3FXg%WKj-BVz&{m%8($UNQ;s~N3tc%yQo|CYp>1R8in6WH$Ti;c^k`$m=LZ=nSbbZ z=rPmbB~V?QA98BBMlueCi|U(HgYanOdvkvm;owit>2oD@b!i;7NI1J1UE_v2;zC73 zyE`8n{S{XqUpidB3+$jId!!zDR9fo}``0}qr%zkR1kIj0^TS)7Jn#96AsUeQ{>Jsv zEC`H3_ZEssy;)P_Ev90I4-50nIT-~d;sBEIqjWVz;PY$s+1SrscTW!~$X@F`mM(j7 zJHzO~m4WVH>eK1Hlm8pZe*gB%S}>o;hU@>&en|5dTJGud7evt~l32(&HWhmSRi`}da#{ec82|Cxn+)CA5X0t+g1%x6OL=kKrV{c9i z3MW>GCNyn#Tj?^Ql9W0sQe&-O(9InaDbX1usm~A4NtnL(Xdg6;kqD0YB5uK0PUxV= z>=xsnBMGN%m?KF*1sb*4`H#0cd~~co=aUIhRVORL++2e5JNO8X6MRaT%xe{fV4E$8;hQxst z#6wwpcHg0e?XpCREiutWXh#cu{$u1gK?BLHV9-{aFl6p)nt^cNhbTKlKGA1*B5fgw6!@g(cxzcSHD9$5&_dWXS=Ag`Bwv$n}2X zU#{2vb9h6#5c;zBUFmwAZ-4Gw!R^O>SwmOF10U`Jv`W5t zaH;gYOV`cnlyaPF|Akr?114Lath}N-cHO-#b}hp zP}IWyQg+m+!le6$OX|YY;`{F->7_qjI?QJUkifKi0m3gN8;Z$PBFQ!7%?e3hs3E=1 zy2Cwc7oUr(jIh~Ba7yD>ed5az9I~NF$zjIlIbD^vFFSP+V+og*>N#%_+8eWwGcUN= zmc2}CHyn9Bf17sN(GzmF+I%}k^Uj*ZYTMV&F`2EQZm!jdj9jM@WiB9HtR`!|W?fnR zQTxSCs=(k|duiIt=4G+DkDrS>_aZvxMDVWWn(ou*rTdTg)q{pOOdB2^{Q62H5H3F^ zq{ZGYQ@6jZ9%S6B7S4!jk6s+D=OmC}yn#Z~~2qIEv3YcbnKMAL3tP5#%fifS?d zLyATQ2|E{ME9;KFyJq|Kdv#VyBEyFGo;)RIx49t1hQLO8(JU0&`#6uGF zQnD$~UUyADWt9iS{b1e??kS5o%ETCVz-pOA97>Y%>L`6{FmYwEzgn%(;Dg5 za{1rCTvVljVKyO)(dw3@qipm{MU0R%HB2H|HVGqMA`mkdkD>{pZZ7F7bqLvH<{XSR zYTVz|Z&WgmJ$(1{CaF0?ext)Jx!=068RU{n*3P5uUG}B>%T@&)SZiermqcO5ijB>A zlr_P?9aSTMKGV}SxDz?_REqkymR@paMp`{(ZdstUo=L6fcrRLm?qiBM(XK#vDEC}E?hR#*NhPTslj0%mP| zm!>Jr+rJ~;vVx)S|Kf}eE=++RC-l>G|E}|KCWzGP&IEag&?{RAfSj8m=y*RtDx`Fo zQS7}f)D6Xqf@5xRX6xW%Az5d9zDD?l3FV5YT;6HXG(H`TY@r#EJ0DTI9Wl!dV9IJb zk(k?T{f+!Rcfsz1JyTTBF9->~w}q?*(litMrRNMsNfL40`pb1G_z}4q>M*UAH~MbE zn7I10Z&y(CXa8BA{2R(i|8ZKLmqOKuQQ^#JVaq6d;P&lzzk8TkwQO5tp-E1{$xcZ&)sMJ^ zfnjCmv7H}e4#WO!n0oquHCh}G{nzX&PW4#2bxNv0frDC=^EA@wiSyMiA;q(Mir?9NzRG^+71SJSjU#2SS|P3EZ59HQ4XJeRBuxHrC6qD@xT^Iq zk-rH*p~>+pK5l-n91CqyDxdOnGnVLcWdKTtVBL$XQ=RRN2?<-u8l2nGM5&9) z*o@4UaG;Le|BdgpkLfCu9!}965ryWql#>Ma?V-TG_EZ5W`<=~5@r_jJ7}tb`vihqi z%8&LE7tS>-4C=Z~v;>)qHYnc%YOQ{t1z$FYc3rQBkoN9IML3h&V||J~W0CIchTq-- zpS^LP&>qKc*0y9GIwsD`*Pk%qrv&W2IphSbuT7cqoX09>wFF8y6Ox4yxbN1Wcz?-I z)hJBXoZ=T6uUGd5?`{;{SC8%4OPd&~yl)=h`jm?#|E4uT(b(={%Ij1b$53Oz3#~?p zl%vI_WuWCdvwrsHejc9UWRQ!9+bly90CHy?(QQdEcPWeU*x=k}Zx(WLDao{XQ{a)& zzV36vQg=m&9#%)MNLy@l6z`x$Yp%{~%hZ{nKQLk$AXFnSY?n`YY*k!kO#mRF6~zCk zbLZ#yusZ1xz~&Sj^YCP5%EMk;m;DITQJ>Iq13k-rD$v3tdoO zx$Hlq_5zmA!k1lNnvBj@Tv^au+0Pi50JRT06$_;(;6hq8rOMFdq)Anh%a`#wfuBzP zJ)T$b@J@6DkKLVro<8y_+t~kMq0?ZTOIbbsZ(`^r?tih?2Ecm zI>j0{dX$pH{9I5Mlo`AW#+vdN+(&0Wu!~9&#>;ZfjA_Se(=98`YS3R9-H}1&!McB( zA8e495kfR({b}VHE!y%vbJP1&bD!;1Zj8;sc-BwO?DQf4?Q8s^00qW~8osa=(l=p( z#s?{4Gpu5@sNaCjcbbusT&Wl!(rAuRa0WOPv6H_Pa%{518c{N7!C)i;?=Yf6po@QT!RqA`1Q zw>Se+cHcFpquseqQ`O|y9w4|m2x$+@N9JNWEtM?t-etXROQOKly+Vv)Ext=(k_qbJ%LqY;`7CHO;seY)1u_M^Obaq5$QRaTG@v zg^DqBbzscAgjP17C4hFEb+2FoEj_jdEIdhr_^U5m!vMeNQ>2VGb^Wn<*q5orM&2^; zPQNh4J|P>dCD|hNTBW-?*;JH9fa|Z~w`m*wk6A9~hGBK_C?gi!0`x&Sesm<&64|Tc z<263ZW+S1oUY6sAP0b3l?VVs1-I{+{1XD$s%1YUwdB7*uG})tJ#wb`%A0~=AKG3oK8Nq~QuyOcO4k~-@_SkQKduje07j%2T zQSWm955fGD-}``uY^9h}SuCOF=`3n>jn2ruX&2OfZZ>zF3UMYT)f$A~-Z*n9fC@qM zy>xi*SvW7obtu=iuGh;E_cjaWCT|uG7UcuG4|)2Y{!BqvtJ!N?!#mKT6y+f8FLw zdf`UEg-B?p97aJSP-~$laId-KF;~KaR;mo?1uGG4g*v?oiiH5J;yUfo0X;Vxprv+m zhy8Ut@iWRfc))e1Gk#{-YKG%e@b}&47196J`KIL^u1Bk{3(7OMT;~;HWFV^3_wO%S zuNwb9&d+NpNkU0O)QRV2lo750M9YtQG63j^(LrFq%*DaLXvZ-Y}?9Z>vrzGIY)De-{zQ7C4ZWv zKs`q@h<52x(Tdlwu#oX*5yMmq8$$1AJnO&`d3oo~%Lw}#W3OKY7hp2K`0vul6;~s+ ziNZm>rCbSpUHu6`dt(WX5*e>#_qi`+;$+bJ$PPXqUbQ~UYMA{jO>Pn2XY+3x}2ECg8?EG&(jTvH2V)Vz! zVp~|-9Dp>w%KKs{X!E{?N&JL_jscwMd7bIEEQ-|86x14pFLM{9yqa!i{qh`-6`>U* z+IfGxD0tBimeMghricuN^vvIp&mMM&Q;+YNQc^3NhNlTTaD~vl_AF-00%LJmnslVn@GI%&D5actXdeQg3-Ss~s0GW{5 ztR;3_Dkq7N^M{2N87Hn0!Nrl+e}u|n_%vmKtnn5J&l$=&noxG$_-@w>Ud^!bLy#R- zCt=~@J|)14fp$-xJ%%OrzAJDg-r{W2wa}hJK~}>%aJu5wWY$q@u{`nJC(J`(UEt$@ z+tJx>8m$gUL9Wcghd^p0ly7iAYr>AscFq!Tl@Ult5i+vk!pWq&i3(t%m{8$RCB&we zgIdv}qWhpy^x_ig5fRM7f~~fj*oq8^@6t6KloR5Sv_8U)ojJf%0IChW={vSHGn8uX zz^YsAoGYpDU!yp@0VgS%{VX{!_|sp4r$244&ko^TKdS?ua2`)?);Exb3}1lPA9ubb z*_MmHQ2e>wXc8xfY!L#Q1dq*)e8^%PuhT??MY5 zEOFOD+2VO}e|$K)`>!T&@X8}cIT#(8E{P{zJ)z5%UhC!1Ha^_1hZXX;&Gn4%-H8Y9 z&7#rZ6`1<`p)UDzMoAgiGkG*`+_azYujIXEl$jAta6z5M`7Pz^SNYe>JL~mFjV8Iv zwP7n6YO8xtbB0XPoKU`qjU9?ml`!zx^-{P7e@vM@ZL?cece33TZ2+#E7e9u!%eJo1 z_*)s%0b(&_kb#t>6&3Q>lyW$r)-v<@-&X0>F#m%BvNh@yj=adP^#**{@QPir6EC=M z9&Khb!{!8hO>JuIT6aAB_|vx^8%+jO>S~RD**efsvQgl`l+ORDe$bMlV|n>Mkw6;ZJ?V_7wfxP%fWDxW&@V|)Gqm!!L&p+{1qJEX%C(->r;cH927FEj9$W5F;sBmOMMhVvIGNoGd)usq07zbXq$T9@Xckys9YEj!8> zsc!yDY!5y`eOe~__1Z>F`cKI}E~u@;8Yj*__O?0oK%isHTUPYg6uq*0e+e_4TvW23 zGc(cywe*GZQqVC*t_`BUSK=Be8K@9@MjEr~9g&TWe1!kHg=js;Q9Mc!sQ?#zExr~0 z;=r0Z{qgm3c-3HHBq;rLi>*5Tii- zgu2AQ?-)kxwAHx5taH<&>V!VgYO4I2*E0iyKP#-dlF+>{NMMSe5owgLzS*4#+Qe%7 z-={CGI+yO}&z5EM?*Gw1^w9h1p!nTA;HF&FF`G+y3du+dYnHx3kHt&{6724YdH{|; zu1u-~-Y-D2QT$Il`Lo#E50r}o0kwjtAXO+>B6@*n!nQ$f^~64%pUvc>JWll2&LWr` zuhuv6`#v6`YVO~hy%vZux$lg>Ogq;*S2mV2DDKPG@32EY2yGd5J`q2=0Gn^pJf7hM z`$_#Mt52FCB3Y47T4q)YA3p{cv3dxS+_=sYu{K-|%nco1Gf$)%H~EtRR~azI>I#vF z4<1|oVxqO&5h*HW`8Y)+WxA>gfhtuklr-dTLv8BeDcsxFo2n>+zPhtMf#?_6G zyOi~Qo{(#D8azq$3+14!Y$2cVC8_aCUmVEa-0SJn3LoijEu`9 zzv4?ny?e~moz+|(z~X3s3BZEhEckZdp-X&n(w>;Bdrru9=9<7}0WRl9zhC7Tl><4$ z1<>Jo>h*cOIgbywjLP_40z81wiI+BBnWg(c9r zEvumC+H2e0A+)BXG)_R6deQ8i#jW4=O%e0LQfPalAE(4A-Pu=wY z&TY?c&Z#$U#hXsE{tG=^A^TA$vn+BfzNXvWfAjCTdA$zL%2yBPB;vJ4NJ$rp<=gG5 zP^@H*HohXJbuot;yyEc~>Z1eEf*57elPxY@7M4YX648MS6Z_V%y4$vxL0!5B6=HR( z>726|Bwj1&pukaw8OnciFE1yCCO_afO*~RA$H8cm**->ry&4=PH)5a9jw)r^9!dh_ z0MVX|x)?hjZQn5lR7GONZ|uf-Rih)1wIf^Kv}H za|u)WV^H*=NB8m}&e}V|&W|FSW89nNPN?-8PSq?CgA4soQFo7>v3?9EtZ!h)epU8} zjnS}%*79F6IoA$yEPBU_{i>N&ZLy%Ayx3ZqAVpLq9H`4$&bJ8Jy*fP5QLW9_(4v6~Vx~vS=pBZRoJ-6jY#lL7wDz8kG^KHi`gSop%Fg5gs<`g>Jb+&NmS z1efQ?=!K;icD)x78V4D`a3NXU2>MMm<_NyfMZKu8&Gb0Q-%K0WrZrwL*yx=>v}x#y z!NgL7<*;M0*6l=bs{u{xL$z4);;9%G7lxmi`G~a$T`?ttbX8tJLgfe%ZP_nI731SD zj18y?$P;0!&!_+4$8{YOl!zuMFjNp_x`-5k;h>|zz#IP!)Y0*M+lM*@S861-e+kV7 z>&NOyehDt%1N=&WP7FU2qLKrp;4S2&IN=R7Qdb41RoqiV6i7RO{E9H(?$QxU!qV@dU|+3eZyWDA0SIqbkzr+x))= z_Hj)wjfhLpO97q!d>cF=`?~jA^XA*loj(SugC9w{uERxcJDTVHB(yRGtHS~AHIH)A z=*fDOiX=6JMsIa0v;15gQsZVwMiqv)E!KVh(*n*`nv5aGXk@0XPjv-}Vq(aI^r$op`K^o_8JciGxo^Nn0 z05ZX~Jv`6k%x53yTX8c4RK?%hQ=rPA*6VWiqdM>$^TY`^uquEbkL+ky`qXRw?r-P* z4&wW3T-lT7M+Smc|7K=Rl08f{M=Zaz)>pyUi4p%hD?MJht-DhI4?Gy}=MOzXv#ps} zgo3vT9z3|onnyIPj9zSJpkA_x;^HuF8)=HD?LrF_4HQkVu*;D4=5|dWuNd8*vf~=T z##RVxlrSkN>Q_-sVqV^dqOCi`YBza@qIQgx^%kty`>$J{Qmy4&dA&l^_dJxJS9Itu zA~g?xU_h&PFCPyFsz>Ccg2vB!1S7DXojI+c?3_mHHYn~X2`VZKjTP75O5YC4@@GtQ38}pixrkCzS@%okCM(1Q2;hp z+aef&*+i7TMBV%teKfp)2{SK0E2jRG8^e#txvWztr{32-#0cxI{r$`Lr`W+L1~&&! z$xG2F-hgSz6|^g*^UeG3DH5l^?TC}Mz9#lhh>Hx5QGAQzTXJLntA9$!rM6T2>dt^S zNpHAs23^=BI5PWeT+Jl|O3h&8U@fS|34ji4{DuiakChq!ednGV26Pa-IOQIrg4Y-7 z&6W)BsNUZ4`QpYc`jTgnIJ2-PKm_{a59YwU9{a|6a=gVlgI`3EG+Xfktom zJ&z_Yqt4)IW6Q1ha>6NOe|~~EXD_HO*(TlQ*PO^5FUG&y`>r`(yM4Qm8jWz5eLQ-W zi@7(0M9`c|omtXx_O!CBB3E|bLTUawC>uTM^Nv1qDuV596@xU)O2NjuWLZfZjS(ma z0bwM!pM6aV4t);_VFW9KYT_{*`{~el{UM|%pNU#JpQXSNv0M-!ouaZJi8z6#GMWy` z2LMcR0}9NBd{4+rSujndr8QKy6TF7&*^ALJ{4-g87M*%8&zPut63F57?mt3py)u>N=t)v^{7o@JjBtDDXi#WK@0$U>93gkO#na6+01R_>o$Bk5cUge z32g0Wdga2g4=DoQJWvRl1+nh-0at-=pv<4uzOtX(T>-ER9#Q0{*94lLa8WHvTkO$0 zcUSz>!%o?9T}0qU=D+C&rZuA*Q1mwg(_O1lAnHhSCwqVHeT(Catmk?E-bqYv41Vd2 znIulK{(;KNT-0Y><{tm7yvuqu>}!%sBnCt-mn`mDa`7Ymm$DWD$o--|0P`DU&_D#A@gdU8SoUX{+8p9`Z5C$!&|`R;MiUrnj(n!qhWj$4 z{y(bTI;xE}YWEHyKth2+fHp{RZ*lja1&X^BcbDQ8tVnSwuBCW!ElzQ5i@QT{D;l6* zp6{Hs-t*3yWY%Qz_rB-e`?`J?7+&Y|mTc)GLJ_2`>1QcxHjbpwoYMsylPHfXg0Ao4 z^s}lPyDs)pu|#C>a|zaMa_1CBbR_o)30BF-+QyV8kb+mpaaS|ewEBuGRzxg#wT(XA_~ulRcaY&hUyO?09NM6i zadO>0tol`IP47cH0#f7lKJwjHW<2ozG*%li>IsM;_MtTE03p1<2Hcb-9=| zbX_1-6ZlHE+d)+S147Q_w=-Vf4?ql6Hpk2!vk%Q1sf%20t8p*_qhz+ZByjRh_`~YO zZG@Em>Fv)Ns6gS0F|(hjBc%Y5gW2Qls&I41O_~p7fS}m+cfJ3g^l^0WRF*7x zz&0f2^C^t>V@qR)KvjJ4e@hd=D#X~*D0#(qtI7Zm2*9ol8WUMts&(vtA!5AhmUg!?MiZl>su80kN6 zHxZlDJ0XHB{1#-7744m@44hk<5JPjE!3{j`h^s|TE@Z#MR?nUJY6eUe1ac8J5#je@ z@MYn8<^{y?pMvJ*qP?6M{r|o0*`wareENiv$zEl#fw8QXQmnQRJLZ2FQ3bP6g5yjCkuap4rTx%{DU6g; z9)H%Xd(vUACm&1hjj#aM+tr(`KdaY`jXd#!>gc-jj3TsQ1ff0s!$j* zriX4E&b_4i-re>Z8Q|6NW2t#JM$`e=w1kTq?-nGgjz}}>DMBvB7aKmTR^0?Zm*PN- zT0xYACEy`e>XR3Ik<0;ys{=f>f)gbcXbkIkpBGwH)xr$lS` zi_K6bg`e?I6Krize~cLm)+51d`M4o@F22v1-}?C|yjwY~+kR-KW?)d0$|odu#3a1g zdyTz7awR7xL5;;!L&Y$_-Edx~`6>g*5e(1F7w+Hr`uV|AL~La2OXEtwrCE2^6QS`B zhL zcKcIqH(}Q{W3YyZuiQ|KEY!#{uK2V48@N+e=lY-eTSM>TJr&^<6p;1o%X>k7*a7<6LVkI=BiL31poVJ2@;8a-_Z6Y zV*EcB#qHVIs{2nNA*ZNh(0W#T*b<|BcTNq7Gy!!wcLM<=76%7LAOP}{AIW$iDC|I{ zC;)~hoFu=YA3pB?d=omj z7?W7;5x@Q6rvwdQLW;F=k*ruo8%{M8rgLx4FgAM`%bA>N{Ilqbh!-hV8KFHFiHs83 zJ4iX9G$9bf(8%E|8q@!JIC90KFN+_&)4$^O;C=7XVHkV$8k*wmHu1)$S?FAvK_9?` zG;sj(CJc^VED(Z@j;8ARm9kM#HW6QnL5>fvd}Qdrw~ShVFv~nh8>um4HDL>`C`ujX_S?-uA(2U(tM2l8&kR$x0|qTtFQ_ z%NM2XrlMsJULF>h(^C$}Ia-1m?j5_HPA@n+X8l&*Q*yT%Rni$bCSo=}-Me~N377W4 zn;jVl5|rC?;7)&K#GTm4GO9qmi8r!L6LsuuQSwT(5Ovo7(<}NoU5axyYY666c_$c~jYa)UY{~grtv1idj+maht6-%GE5Lpwt z@F93(OTKgVpVat#DI_1!t~Egg)~YkfN)v4eeTdpCO(Unu{OP|c`r)bikz!-ie!%Jr zIL7Rj1ARyW{WFUgKJ9O4@cX~H;3|u>J#L~9myW8W>hwKnIa>0z!i-)ZncS1p7E*vE zg@_!17S^ZTv{|G?3Sz;r;OeY6{K`xn1(yKJ$-1~)ShG@Ae3?rNn-sg_xbJhvO#Nq4 z+#kuuI^*l-DPzK7YhXV{ zR4G(3(=Ac|n8sy&BAk%tA9vy78ca$YH|#K+^aCC8x?sLu^P&)GVN~}8G~Hle@Z4wU zA}|zC`r3G>_37`IZ{nx&8Yx`H_}Cv?9^ov?Hkj!l7*_;j2CPcG($UVwPG`>kNR5Yw z!*>rio!8%`pM)LJ(D{P`G7J>!^=*JuY8ncxUtI;m_*shuCH=Z`d(H8oPSMDw_b1=i zyzpk-UVo^6Oh^m66Zo7Ft;fkO!Mju(Eysbhd{+g|Oh`Ib8ewWt)?P!8S{j%|MQ_7d zt}izbNtYhO!|m)<@1Mi3+kZm%PsPDajQQm?^IV6g>L(Sf4Z*?J$56zZ1Co5PQ+D7B z*R#jBr{c_Lwm@06$OMcbiN^jzjZDi64wTp2CClmU+d&Ft4E?MPG2|~L;x6tB7Ugcm zNNNCB6-~V^z>uKU3zH_@Q~0MGxNjWUqPsdZb0he-cnZXY0A6-zj0x*H-pW zHvl+)Uf0nmci1ief4yj;ZniLf7=q?*o{MjL8SS;B&k;`CQ9A9T+N&a7A}@o!#62hU zxi`GGVO4xESY0Clx-N$P>xPG zY_zzW?ZmE4pW{vKr~Y_mHR%=C)1u;LS9eK4n!T4)>l~VSB9wTzk9E7#Yo^!r{BT-B zD~PP{qlLQM;h(Got-_cy^S(8uqNKOPZiAp(A zd{An-5Sg*u%dLHpSWz?D3?ODGwuDDc4X=uIvENp7KKv^TyythGt(r0E{yUdO#ZK7} z?s?9r@yo-~>k5FM4vhp#!dy8y*t!VL7x=+Cb7cN^R=qmTgjH3byr6gv2if+HmVy4) zz5SnSNkYDs;d~}Qzy%RNIE(B)?kSfa2zEdJrS|i zST0JifpJ~JCus!@XXsfveDzVnwN}1m9uLMBLk*?DU58VdFR*5tGkB@*CIx0DBHY_* z#i}e0T&1TIlJ|;O-9Had*a-{f1O0)H!u8j`o|+!oib=l*PD+KXx=)IRaktp<%Y9PF z6PiA~L9TDMC>B4wY)P_EAbuSd>B{6cwCAUa3I++5TLW^{F`FP&hh<>AYkjK<8r~O8*YZh4n!)LDcvkdmMxq z;LJWg8BjF?*`z4$yEY5UMa4T?;$U|{Ut=u2{9wtGZ+oSL5q;mqhvYk03Fb`{a_!Aq z%L#675sL$)v*15SI%I3zS#4m;*c6XD;+hjT%rz4Lu=S5XA&^WzZ6vw65^ySYU$L2H zGPL{LypXm~o=e0x2e`ZR(*s-UH}sA2rayNiO8t@A)D-(;G-7MDRwmirMbcvoU;$Lhvq=#(s1eGT1J3bOSoQ!^2n8~Le%;P+6++P~wX`dhFg761n=kJ|rLTM2TOU=WwV`Wdeh3 z(J8;tCKP7;=tfMcEiWfbC5su!84D*>deoT#rot8yBo45Pa!UZc)|8BWw@=?#jk&;w zk7k50@yGMm4}S-%&#M0so$aKbkr^9qbUi)1dg^(pbGyPX{9r@w_@o3f2?4;S?Xsgf zZmgiOx8U{i11fjWhWR}Gx6=_@3ZnMWvqm#o1I!iLIX?YQwYO5^s=Zy*@B#zxm z`6=1zPJ5bAZiDVwq1ay2iyE;z;Th|Srr!Gph1~s}0YmwBFR?C|VBk=$fd=k21QtF7 z2u3FiJh*xhbX?LImxr|Zl-Is&_QMCKx%Ozo_h`}kof65dd#drx64uVSiiankpuxSN zuqJ;UB zx=ZI9;y2&=g-E_(;?fhW{R6MVvTwC-gn9KidQ$q()$b`NE&}Ckeoq{`JLc_ox}p+$ zv3?JuRr%%}-X_$}J*iwp?8y`wcM>vU(zrv$m=xsXIpSzhliyP8;z-yREa%JhxiJbw z;V$%{Q(X1>riJIE$TPnWmpAd3=kqri?@UHKqXdG)6Q};y%cFO$0P);~)Ed|6pW6i2 z-|QE`gIIz!K~;#mrvL=etX|I0Ikxxy&gIWm@zlV)C!v!NjfeD`{!>)F4Hys<)0YJX z3b5^vDnk*I<6{MBUexJsp+jL0AxY?_WPI1iQe_TK$uk}$s=^B|!U+F}UCWxxt}Df^ zZJ+hdRQQPkRj0kVP}=;5H`rH>CsUp9KsoY}HLiausa?rec|`)gw1i)>8>Bd}(A-5- z8E3OXQw52b=qif9(L&9M^r6Y*bwcG6Ba*zru%nmVQXSJlVDr5yTQ=N=fVZpelqC49q__W-7MeV+sd_iPy3Hhqy6iYF7vqFwEVrYDpG<53f zyQWG3j5RUqurpu6n%J;OBgaIBbz~ahfLcu(X6LPcZ<-oPgl%ZZ(1&{_chjzYAk zkbB#+MA>S5a=%Lh=VVWydB%#;%fe<|GehfamX+(Y{qL$N>^15Q=cT@~qQ&TISh z3~bG)KN?vVVj}HEe8{0#j4%D`;)fZFwmc$OvBM1tytHt{UT1C1D;eiqybT>!jd0xh{Lh5@_1ZUThJ)`#cD{b*@>Odb^unzUyEaHxx6p%x7oYs;s{O;1vg zmgw`VK?B5@0Q+AcDg7A+Q8#6P#O;%g*cub@Z?@z#JUy|{8;^-TJ;wV4{W1oq!01a* zNX$V;j@q13xmaF1&sH0Q3e7g<&cQ6wfbZ^z? z+}=9i99a9qxvRA|%@#euOj8CQL%O@{TBdN_Q92+0SqPeag&^p;iGAu3LzNxKm$m6< zU037vzXH!x?ixzNkD8zAJimU{&nvt?qmPyPp*=^V zQs>ohe>8rTf_#7S50jcIxTjE#9Nz~Wr3c$udinA;Y826RO=vtg8RQl`$7%9IDQcW@ zhah1z15b2+q;)*8pCWQ0?z_OLCsO2jRMyEi%Vmp+PE>43yl7HMB*h)R?n)Zdan)kp zaclM*zI6KEkwB@MeBEEb!qP>tzN=I?okVhMT3-8Wcl8LThTFEd ztfp@fR6og;FPlapU&Y7nto8}8@EK%c-RTV326@YW0a5tp^8`MA>fWGobntX;aP z_1W3E>R-3_Pql5@9YuDX!TqRlvf0M1ILTj zWHmM8YZp&6$nq}xyW{^=KT$W{#^)eE-**43e;X$MayBoQxc~c$x6KF2-MGO%CAn^r z=PRwDuDGjqR}81m@67v3tHrMGSk;+3^(hy&7kJoy1aCh|vRt!->K0 zZhQB$EFxR3P1E(TZs9)+8^UXW;dEhMa}eVW>UJODjpHSVb2Y6b7}l(V$_C{Id2Q3z za3#eg@KArRQ~7-q^hf$tEuYc>UYODvQ?!*Tm5|R11PfVhFd%99G`8}s3%#y2G06Nc z+yzYw?GTfO5XD_eXD~eNBWmF%G>d@&Y4KwIym`&LtFGo;E6fSy(4b=Nlj99xn4i{n z)K9rL>`k4PZav-tkeUrd-BmqyKm#wkwj6KqsRII6kNKENj|r`_y}lL?9H zhc$7VZ&D#siN_Q`9toITPIP*G+MwFG>mv9@DpHjWJiUiTRqv~dM&DZmIfzay%xI9M ze|#W^Y=@bCi7JH=@cWR+0h4z5l;z|lAadz3h(XzpgwH{6v0}Q|1ke$WX(oVzn3_ql zq4kgkufNquu6EDn)UN$!Wvg{p8DWgsNrZ)uY9j#VkV6zLa-#V)TI4PE`rR0@0`l6z z^wZ0OcmjLTpn6hcSC_4Y$=3n$tqGBPTTksOjf1-j_LHN^URNX^kHcs3=roLVm@Q?b zTl^bqzbiqQGdgk@`kk6XSxosA)KbSiy%}T|{4eJ5swQK-&uVV0`zx!VCB z(aN_?;pv7~X)&72N7x9E#YsnqLnU2`E5YzFD_6f`t^K_VFa<7Vh zp>Zs>g;n&@v!(j(G&>-253xfrW}X-qf6UK%`3q`Z83@g!#-{8tDww$Q{_`#-rI&! zXM-s*S&qEA!FA0|g=<_Ypd?|kRNpmB+CNC2IBfmWDa;KhHS*o6Rg)c=D9~~0?zilf zWk*>k-}V|stzGvIIk+T0{NyN!1`mwT<{y!_I~(J`mo~4hJr>Q$$$H2UfM#}3UUhk> z)UWI{7%Z<*by=0{BIo>e5WQC`-32#*lIw~8*S;rYgeUePeEs?3op3I{a$}bUs$uB; z_vsw%ot2pQN#DvZFI-_Ui{%-tEh%!mwL#aKEz5O(=-Jlx9v#|k6{t0(!Bu_ILdN|J zfCvs1tf-^m2&R|R%fYFfR|2|y6}FQ3K(8^HCD^e_AJpt~-g5o>qI0P0Zax54y*Z%P zcj@I&fJ+C-$(Brjwh&FZLf2itKViyJ6dayeXJ=@$toGA0x?p|Q^E=ye+O zzSQc?YNqYHy&y#mh^4ywF;VdJk3-;gnRT=T2mpVW*1q(0bn7CUs}}w+-jUubt(hoM z<+w4tw#x0tfk+Q3KH$fs*SN2xp>zbGxn0#Uy{I9e*%3qdL0Cl&4XDQxut^0gB=9w} zz=^Fhct-8HF;$7Te?w;minnu^qCRPtjKu;UwiAm6XWVw?>8Y?lu7FhcbaX_MTQLms1CyHWEELt*hH zkJel%@QXi%jmI%pSj>3;S|7(!&8+CYYuq>-XJ1gxBWB`E5oJz!a@E_WI~j8hB5s96 z<3IRD-ak7-iqjx46ipWdA2IpFYJXvkQC#GcN<%V3F+o|v;b=1!TQb})h;~#k66CXv z(1_Nr8$=U`Aq4ZM=I8t|56@`uGkl*1Q!B{XhDhQ^N(_gRl``{%j;%&=Qpvy)35Uka z{ov}9hhSr*Z};TGEgpP6>r^;bd?e;~jkG)Q({=@J;DcFr-s3%e;0Mu-n`+sIsj`G$*p1 zs)S}@eObs0X(Vuw(6O_+P~^#BI7jIv7t3Q12&_opdsdMS~uVIBk zkgGdLvSl3+bcb>=yXP6M3%`sJf83|J{6_sQ1v+Z`M%Bd?s7#ilw%x4~6RMMs2* zkf*xeh@&?zn;YDD)+kjOx|c88x~{&-K@STz-&-c$E4oQ1`*Hf3fmjthKfu~VCaG>h ziZM3@PK4;_Snc7F;}@zHbOewcU#f>tMLR)$YgBEDNh61$8p&snJO# zhRWjxNKN=6K591xC(!y|9z7);#YlxP?KOR^%$^O&N?qil zTw6ERg`v5(E`>KXNKT4{-VpTskMx1{yanvVKPsN6SF0>n-ScR!Od)2xR0}!0Xck1d(0*;wX-NZKset4^Zp{M@x-VWdlomUp>yw||;^x%3x}h|D?)rUT@JCuWbmZYx)}=f*(q zGZ{nHmxnM@;q3ylpd3mNqUaZ|+(chCD!4$tOIpyGcUP)t4AD~t#kPFzBk~~R=gXO| zR~quk-*ovrDhUk^Nz5UMkp@{EJ~v+!M8l)9jN~8+v#ne1%fMEx}of+!fYyxoOW6Hn)cxf+U80m|6Xug81 zBx4B1Vqkby$7p9bT8Y<3T^M-tL3?q|hC?gL_qgsMCEjb!p>_Zdv8|mC{}Y+0*&$cF=e0eu%Fl80 zYg#pk343DI+d?g98(|d|SLMgcWyKuWTuy9Qk=5QgY&dwi*7W#5XiuKhn^NNXL_Ub+ z${S{Qk|d+sQqDtXh%_V^CVp)mllL%zTpxPeFthcwzeMeC{;$vH=@!`azzQ&VIP>il zf4ac__jlC(;gX-W(<|rf%St4FTi7e2#eP7QN1AFRyC_ z!=Fi-$!9!fp#K>Ql{=1yeI9#o+79zpCljs%x-f9;b#YJa4W%nsJgW2D_^{kr(tv1U z==$T#OEDG;0N$#3@%%CJ!Q!5^J;o2agST6hj%Qbn-Ck_X^}eH?zu)y{=0MX6O5+|E zsz!nxfHMg!g$RYJg0>FL@egZ~6m!?N7mE6|D>xteZf`c8Dj}}CHlu_E$q1E=TM?#% z@=k!mn0Xl3@FQ5uWLeKIkD-UBXOe4<^sABwwcvzSFClH$NN1-j(U2+{jZs9C*lvF1^w>zBr zbHlG}dTeV)RQe2_P|!K*4n5pX~1b z7jfpleYUrdNTcLgN5~l2o>U*QSM9&qcMEG>koViS5w3;U1ZLk1mix+Vu4HIYxLT9W zEhQccEtyPro#k51bsE~1pTERh;Oa7N82yK?AuOhZ75923DQR)L3Y!y!JK3eQRo_V`aSX?4U!F zE5kV+A=cFe3A4MDTn6(mkWeMLo=wq&yE%D^xJ>?lGqK-Bfn8maLVdI|2vajd(;`h2 zxzmo1uHJV}7`Y zE(nkEq6POL2orQ4HHd~}x1HCF|{hujD%76DtQ!n5im=f`Fzbihv7KQ6BNhqDb1*hD!ne7ibrPKzJPb zaP}K9kpvk*XaGZzJ%|@t>x+S4G6y@o^7QWzP#Azg2CN}!3`xdGuY#P)y4S_KMjUgP zv_a-^!qB4Oke?QDDGeB0@*&?S#%S}`p*p9$gH4I?B?CS zTV0h!&9Zn-@oOH+A|LJ+Re$DYJ;pCSXuU1IUfvN{4@wpnm-nfnm*C5Dw&S1mMi4?QMDIQ^po;V>m5_F;35WA?gsgmc5|I_L8;sc7;jjr% zdvP^4ed#c+@oL7s^<-A^=Jxi4g2M1)?zv)2U*Y2N8mG2ak$Z=DTL)f11}hf z*Y2&>rhUn?+k(9ZyHU{ncCVzaww>^5N0P3V*1o*^BcO9}7-cMEEr5UH289@CGd@0B za`wD^tROH}EQ^t%PryXrqEXinY=Tr3@bQcG_m7jIv$^fD4oPpnn1S`54>if_@qB@) z&W@Cc7&EZyy{ze~^z3v!!zheNB-3}Tkc?S8JmATW>I_+LRwv*#O3x1_*aT2*tbA~c z+ke8zb8Nni(joJg?#{cn_+)%PFnId`4AZT}y;>NptC%NX#}({`H^m|&I# zG=+!ViUd|KOV~APm)Tyrmzp`pv(qLo#aSLQuvb%FU>qpT!R_hR-QRwF{%YZ5$ew%x zX~UV`(cdJC%Kn^6aS_F?BE&~ca?siMKf#5E9(x_Rzx7Bv3{QO z4yfAo33%m~#-)q&KcdifI%eBJ!8?WV%pK!J=&2kOW$NfHSgRo!EYId%)g)6C5CQ9X;1J>azCU3%`RROtT{4A!)K<&*biQ;gv3 zY(9Vxd8%rxFPs}6Fu#4B78+4itx^8Ve|z=03XeEZ_72DAyB4X|9Em5<>7Ya1W^&^T z_o6$UH+#R^snW%pb2O$5k34zz7ubVE6*IahX@COVH@{)bdM3FSMhfF0j3dE*7=xAT zs5s}n_R06c{HNjD)`FTl5h3a*L)8BqBCm{ydQKBv@+_04gk&0yyuFuCUag6q=&S(v zaj);qTt}!MGuNE1DxO!H6F@<>$cw(e-2 z^RhF;{j%oVTlm?@2B!YBh%Yn1hu$4fJ`Y#NR9XIaQVDqY3GOlajEyFtxWH`bVdAx| zAWvmx@ky1OC^UI4o2^a~PD2x^DDd|JS$y#9#`42jA5(xc&Lgcr#2-H$a)mr)0fKB_ z+X*x#C#9sQoFfosZwgD#*LGOmS7&T2B5)$NJRKqNu$+PN8^Wl@q)W_uX)?8cK?;=2EA;_m_D2BxpIXOh1ar@U-Ku`@_5Z* z?UQ|o77~}cU-YOf(e}2?nx*$!73@kFuCNfoXOJJV1Xw05CVwVQic%5^eJOdv6|Dw% zq7nnRqa=c%JF6D*3WC<*CPdJaP8KIsc=q3t%`qws5DH> z*-wsh3Ui0g941fOYbnWd>ol7MjSU|cAKSBXdIYg8pAznn^EDo1GGzN#?vN)Ig@l;no~#5+}n7$gaU^n5EEcJ}TbF*5X-+fL@!}9P4g6V;IJ~t`N`1-)oB(yckXr!u1P;S#{1vZ6K7SuxqfJ z>!-3OIcm*zhZdUi9h|k}E<^|}_}n2KvMm`qOUJb`8q(w$dtcaWf3ol0(_sj$%!CLq zWlKH_QHv7fW11(=8NM$*$QdMi#?p;L=X^s)G2JKMQ$+FcEm&SjT+{S1c>T>b0KQwk zE{pwJW`P++L+cr^(vf*5FOi9F4!5Fn2dfeocD?(V159ybtf;mfoF9%9zfMM@>@dRL z7hWY(y_+P*CgV1e>8%*Lo$W{DAzPkuHP7Gb5C$HO<8@tHMXdPI(Nn}t-+OL}~1^D3^EahhFpGM7Ezh-D4yqKQUOo3A# zfT)0PyulSaQ|>16>UeW#SM9rg3BX_o5l|Cj+H;b zdw%?)>ujGsaMMj=Bs=cmuv1NaXMy2q8$c<8y%s9DwPR>UKmn9H#3l zGzU*qUELeYb7NUjH~Mu=$L_d0W=l7MK4RwWD#%Uo789gbA@GMC*G)#Tlq@G>1sB`n+Xup9`O;y{$?H9V=T6zW*+T0e=>iq!ZYD25mQ55%!?-a zjR6e!Wc&PBW|rz4OUtG`S3|2)w~Jh53uv>&&v#Cp9FJ=Uvf8RuoF$)*|Fq!ZB_jOD zMs-hG#jZu;bKG(CB$`(=Y#p=RDR!nsb3<2V|4)D5f4bBN_XM2o^%v@Uh@DD*9j!g2R^{;Ykm zs*|JF?>&A`m;WWJR176lIW8<&>U26DyQ|Gw;<@vQZ*(8Fp!wEkD?B$y5=*7^@aNm+ zr&sWTByX0j<~upfq0n$ujafw1z5PH0VQeg)9FVa&ksyFsSf#BT@5en~@&Y&tV6_B3 z@97E<(_q$KV=nl}@h7?%T|z_B1R+&tAQOU3>j3s8Ay_puFZoi^f!4;7Nwb+{Z2j=n zSaIIzM4|0a;Q3@pinXZbOY!cZ9`QiI^+9&5hYNmV^E8mLQpl;X(tpOJPOsFn(2B5X zhW?vs#)mC-FIA|DE`W2#f%iufXs3YdWhRtwU8B%zV40EmtswJIY!@_g?4;(I;=ayu zu^V!3_?mRx6Kgrrk_iHqWs_7`2hk~gb~dX?P9o}VAmdbqkkft~$4G}{jiWkhbUk^2 zyz7(x$Gm~NSMeJ(nEpiQovn_;ehe_haoPm|_hun~Ww5G?iK+=lZB)$oP-O8sQ=zJ< zqOXmkZ(ewv_;c38z0}GWVX~mBjmVzo8Q1P_&4GE1fxc|W%zn%s-wO3tXdrxunMuM; zs4G{<=~Y~}q})^(ei8;f_KWUt^BROd_ENmlBE26~=Z8K|W2rW25gA}^^=p0MZJ(5Y z!5`)-B!+50?>9?^3WIA}V>hy-OId#5-wST#c$;w z1|A&@#c$TtB7X6o2(MCRBcI%H?N50qu;XpNEYEc;1~k$;h;$j;+u!-OZrS}`rtJT@ z3{FXA-7ur-m-S{Cd=43>G1B!)C1z7a2!#pzb-qmXm%0?-B|$MSlwF$+2@>+M?0Guj^)ErHC#v5B@7Qym>cW}UoY~TANzBu98F;^YvnFhfJ zO7!?+X&Xx~yWm>oMU=Hf?OPa@8>SXR1V|^8oA^+HV|0#;U-g{^4-Yme5*YMA$<)7Z!oG%6c)m5U4_x}8m5Bsa0 zlvXAH2YHuQaj0PM!WK)35Y~N2z3x`uQ$mTp#kPK&x_*G&vWm6^Zhwq+c~o|J#n^{7 zj~8P)k60LL=z$2+K&Sz9A=_b?v@+ms2cH?i{VFXv5*jHt${d2MA!6O5Ox0XsIoyp5 z=2>g{9%aM_dX%e>ipJ1L_lYkUzmRmF4MYoiX~`!5N#`K(Dl1J?XOLqXAQAnu9K@YX zDxB+UV`?-BU#cueZxVux$=lVqY1$$!J-(}>aBoe^dF}?FV_E3+EeoN#ny3*(-ns0R$GaHD9MQ5(vO{7_;l#5h(pGCV`&q z>rwZKoVNIJYiU_0&E&8K>x8lxlB}K-gcfa*tm0IdZDxWx$}&2yq|MJM+Xr`=X zXCjx*&RHjC?Dm#oP7cNw@XpU=O{9m*2Waap(JigG{8uu*hR+zZRe&l0T(Mws5qM}U z?-H&Hv20O_;w!CSH6R~Zukk&7@8ly+>fXt14cw0sFRvLl#?i#zob3EE&&Y(RUkhr; zxb8O>@^8txtEW0JFm~vL38RIUBL2Lip&M7*_%Fz|I~n?mb@Ww(7kA9tCUu=$#+u$; znuz(?_Rm#t&2dalQVwatbwB>3P-ZxRE*e2t3Ow2D2bqIZAAaFD^2hA%c6a0tjBYe) zJXn)~zyBTfze8vAwU}tuIoF|j%@JoYqP@%9U5sstjCUn&*$UH9LZ2^a0E&1{se4=a zo+h4Lv=Jgl)H}M;KDaao!G_xeSlLp1-*c~WFR3HHv!BZh?+1Lk@(F0=Gh8g+TfHfB zL`-kqL(Y*GF$O8A%w7nSMxMWmH-_|wlIj-^pKT1IWil33$ z$Vs3PsxrLyNpp!eF*)cmaR&1)Fu~Yae7A#gat)QJCWmordTs~|5@D>wTwD^jKc90+ zKHtu+>)JIonxiU_f^r3lr2-5y5#HaHTragqA&HoEOVj{`$=J0ax z!+t}1j(&4_@led}eVPULpF)cA%|`NFimb5(xpS>=@_X4}u4DVj0!-r~asD~5kuir$ z!nC#M%C^@)818>X%y&yY@|4piGeG`x*X~EHafyG^Zn~;3d?Gpj)DAS7Z#TvO?3+mz z<`pgC_7Q>=X-^w{8B*`$wJ|w^ffCRJbvLdxi)|lhSg;Exhi5ftYp8{ScC`cD6Q%z- z@mzlosNZy(H))G%nFnx!1(*i5w=Jwn!J3RWrF3wTftRW<*I{tn!j8IiQGR9brnU7% z=t=WexaLry?Td{!!hZ>qSTsQwcpO?25Kg9#-6)CqCuy(*=NZ^)0H1`K(@a%**c`{y zrH;$BLeUmf5>R(zx_oo13fa8LJi+~pTp6*oA2Dmr!#FINL$tC7ycq7kRiYUD5aO!eq07iOurPJ_G8rR zgo27d^i)3oRM8mL($uL(Lxb`d7*lFOR8ze%04bvHvo4dE64tNDWB%6jX0d@}$YBK7 zG!j%OI?k9Tl=<=|t@Qd4v(c0vbm)dn4VGQFs;j*qfxNN96^09M?%!2yHCpHHM zv@s{oY8r3}v^uKRp z<)Qb#`tf?`Lu{0T$kS1MWY^iJ7}!ONYfHPZm|?@EaczY}q~dKlx)=q**$DJ-cQ|(& z+l&sE?VL%-XMqX8&a)LC7lDXvxZMi}B~%pT$PF{rI=rKV*N^QoDlw{K<6cMrA72n5 zPf)nI(&i;M1!k&Y2aL=hmzS5@Yn_`M(Rp_I->TOnBO*yv5<1Oy30Fo|?vLVAK( z7#?~GP#T~N`S+CU>2dYfcWwzQ0J1m{Yu% zIz0>8Uo-?ULr`LRiW(}Tancacg!HA`CMWFioVB+Xhh^58r>7pvMEuNa5#42fPxVV~ z?)+8A8g{9H!OJDFu6d{LpKt8ivLD(7Jz&nR$*&OQJS_ds{_?+Jw7`F5D=yApBO@_L zc=kL+RFohRJ!K&(X?I(+H+wi4yO=ox z{S${IcsG61sVr4QgZS@6M$u%z`FF)ra`hcSAMZ8Xs42S8Hqn3kz5+W4*V`vYVQ9w4 zdHJnucs2#uAPemSP(GLkJ0C})@i(6LFyt&g( z?6ZqZy*b?!!0LSspnQ*MXpEK@ZxAEg-+;c_{>n9gcf$_d!3?ERtLbpz zm3SsrkU1lgv$#G+%NmxSZ7kq3LGB*jU^pm^PfV-E=kb1oUHGc|;mAD$R*;Te3k1+% zbni8xkUMW+gdB0jzujsVsKXHBeXx&!C{Sz+fJ&0e0>le0Z~-finGbg6h3@fWNB${v zW{tAFe6WJr8yI6c{kCCCP&hX@q&(&wbrTohPdr+XaeOk+I<~x5)K5WN`Wy>x9}D!L zmjF~v;h?C>*aVKGn{^YY4xhMuCxx8Fwmv~H)bz|<9UzCXc^B1-&sX>Vk#&|)aRu#` z2GYUZH9+I;Zo%ClxH|+7t|7Q^d)JF?Q7(h`8WQ){b= zN~e7v&aIE4qza;;=|ILupA^Z;hxY98{te$U_C|Pbcf|?U*d4Za0>sv20tGsYB$a4t z7%yFYSZx&&S8u>YKQu6Hueh1%6h}G`#o1|fAGEh>7(kI7eC4)8MkY^5CDb*iL0mTj zN)b1w;uG!JlJv+9AWbzuEz=ZiKNYusLkA9FS4(*v3x?p|!x;SJIw-Gte{Kf_%psFWQH)5wa)8A9PkYb!tJ_ za2Ws+;=({-b7V^D1ib#I!I{sLwogNaR8M=eMuPB~`oF#<%6~k&=J?hqIUU8n^RZo9 zw@&e8-)3N$pDa)u{wo75W0-yjb=v@M?Z;A;)D|5Xc+I9F-kfBaWU3FX(x1hSgQVy> zU^^zVlGtwlLdgL#SjpHZ(GA487dVmFO(^lmR0>0pq3ULRL-GwAk}3+!aJc-#hzE^+?>5|98RLOR4xW62 zgFu};XH@5V(LVTdoR?02IXqpy#VJru?(~FxhCM1|CrpOasVa~#M$~e=N3=x7_FDG_ zlqOP0BW@bXIKy`p zk494p_x=A0?db($W}jCe&C}qxObg}wxZI?O^W|$FQ9IGMNP5r0sF@Iu zN5BUCG`P76a}z4G^5uV@hW*#iInDpc3y{-rp%r#vKXYg(^KogtYTI7#MPy(Gil}CNnx7o#2YefiPF{Etl9+KT>JUAiZ4{mx@?Qs|F~bQXGgb*Ql>o!gP%OcznI$DdiNR zFEUAMb{xW084`kW8^i_^W?#$lja~_0{PppX0`80LF#FFlINrqo4^7gRtEr_zep9+xJa}{5c+1kAk^Spt z6V1tYjd^r%j_`=RD0bRnj7P?%$av%Z@*qm1i)0x>o!v#2H*u+nd3W%)8lUpe2Z?7& z1c_^kmeRW}fx1LHB*VbF80E3qe)^|AN`qG_Rj(~Aug4`@p--V%gXYAATMua$a27Oh z3>i|mN@}Ir41iqjzA$|pg&>MrD%BN$6zvc{XS?)Bjp|6vE?X~qRfwE0L56v_dP#0D(M&zlEKB~26uGn6VpxQ#DTe)RX#J|sh^tYYap_TgjgxwXITef^Q7Kq=RcB|?O3ii4M24} z{3jPV%pV5Yoqzj1!BL?Qnk?o4Y~;$bIX?a%7wzGJX~Th~wf4xCk9eqCJxecy?|M&g z$hQRE#NOx6zOEjbd}rD$JN;ioz3xR9U&bKGp{`didra8hAK$Ed7sB0WQ{{<3qiw7gS_JMgccNpSk@C&*7-Cgl{tDo3G9VF18@+%n_Q{ z^wJ1GUbC4R3Eo=(4P8l@0}>`Y7v@=SeX`DV)?Q}v2y(Y%(X!laHZDF*7D|Kt(5PII zk@*7K)+zpZJ;`}JaSz4CebSZ%9?9_AQ$prK;DVci|BA14@0Szku+H$ThuKA}B%ZBG z!bSui;pdk;grWf89EgsX%9@NEj{aERi{jaf4nWVfPXtqc9Y>z}Iyw%Dh2zq)mIhXa z|Gr-PCoSSCCf9*Vhwza->S^^s-9xMWy8;4IdN6E`e&0U8-rOY@9gdA4)!2`xkfNCA zHpE2W5$y7sy|bBK)4IRVCd@;yvufFmP331IOKgAEH4n27-g*c+M{;sz8>_Cw{AC(Y zK=1yeW)W|Mcx(T9h|x7@D%SQL7tL6xCaw+vWQKggDcDw4nB;S);P~SX3<;6MX1~?$d^aY{b z2f@Q@O9g!fU_!U8Z_XRe2d^-o68&}18jQg65tY8VYX#*APlY7UeBVW@bZtd~wrG0Mb&mr8r z8PRZBSe?atR;Jvky-9v=_CzhPtp zFY8HKsHYopT$0iU+A!Ff#wM0hyWJr?koF+>}!r^ILBH_MAI*A4YycRI~P3>XvHQ3tPkg2Z#CN`&Y27<-YfT z<_sQuhZ1xSTiyHX_l|;sARn;dPL_wOZ!G<`d85QfxLC7ZV9wYigbGGdjH0}=1$tSc z+M50nI_1?JjUb+qgB`f#ITY*9J_44=Z^WtaWPQKu!N-V%dmdTbFD!^IAE zb=l9%(~|b8G5)1GRD>;35DqStUhj?<_=)=GaTyLSvPK_5I(BnWhV73gAzDnhJ^q~= zDuqmuXyoA6q=%4w1zMk@p`4ighE7x6n_Jof#o z-MLwavqS1X@e`sHU8h1=P)~phc`Q#ahN44dF|EQ6Mx}7;;qMm8*q@2REbikZ9zYi% zmcwQkWRcDT$rAcRll-(w$$%rN+m?QwyaAR0#Q<=9BY-J!Vs#(!sn8X=7n zi(E~>mLbXZE-@F^roEU@1u!jy)s%J({m#<;G>5E-MWT$B{n_O3wkOI`bspbfLMW)N zEddjl^^+e-iAIu_`v}4}a}A4*?w}cDQce7x6on z^>C>do27$WaJIuBIl)QtGhK#;o9{J;I8x%+a>ro8sT46t1hQI4ALzcLq>X6N+i zcv;6E=TO>*`}tH9`Of5@%_N`~qn^Ynw|I^5susVIaCJK6h;zAbchKo7Ge!Y(xco!p z85(!<8~VAWGtTu@nfopbc3{8Hb&nfQS$kWw1et;KR2<@8qxU(DC0a{%K0C-1{(d>w zcxOv6(6fKx3H=-w52>w6^@MHZDe%K38fe7R2!BzWBABaMtAFw$x+GfxG5Y*^dSjny>+x*OwYLh{v_dN4O^&q;T$Ks zqf2#ZYMJwdKeF}pBh-jVz~g8yX-gf|Ut^WwFxw(|)zxLWb}<`Mjt~6PFPNJXtmMl+ zcz`9s51YGV97{ETzs z;U`jTHOG!_#`ub_Xj0&mm_Mq(dIZ9TjL`M+Qs%j1e<8mwLAu+1Y1qYj{>mr$D4A3Q zG1##S4hgUiUZ8v=3~uxcb}bbD8ujeOOHj*$5I^aV&|q;OR-Hbx(B-#E(<02bLrc(8p zo5Zp!n~eQwjLOLWxA@TZjNsYjT`fOhwImNd z$lK}&3d6DddZR+X01d(ZK%_3DBbS7cLMM=eS3QZn+i& zs4pE(*{G`@irw7=bd(i69{bF2fNr}cvMX~BOm@9IZ>zlfmpB42^g+tLZ2gx1vmFY) zw!mY#CSbqs_YK=48_ew9zUaamt^@y5#t!KpyQCp0L?voxNV*NC{5{N(e=Y2dB_Vbg zw9U|~{g(Y&uwDV8`nY`g;1=t7Mf_vGVt}sD$>h9)(fc%45sI-jfClmWH`y>Z3qm|K zs0ADBo;^-$2iAl4ejr@5ahP-Ll7{`Mf)pG-fDxQ1ErOJu^`Rcyx1 zYo_+8iDEvU@+=0Nyz7oM512-q_XO9PwFXzq&hqUKDR;`q1lm8cc9JQyvUe}}N2Pbv zCp}RA+?8TpiCA+L5smi8sib^%qJHc`sjpDnb>hBo@>6^ja$gD#-18R|V3%00*e({9 z@9yzCWr-EXd=MM!8bPQ4o6!v4jYHJd-Zy2J_V(2~|8(X_(IR7_Rx}2CxwO=5Qp^I2 zE1AotCe}j!B@v3BF^C6d-CYFlaY{Z5x&?45F|C|YNV`Wi{Se;u_&CKRPQ}fwYlAQ8 zBk9kXE0{&CGoZ;Ksih>+^hp9hY)w#08~3BnexW0%L6KKW0XQI~g!VZ48QfmFqHbrT zW^&}9{cDNerF%NYi49(kP9$VC@3+GGF+>8~ztglC@<+5UsC>QX@@~r@y5fdbkyl~2 zpvT+87+-Zw-LBdCN#s*0?8#I&#ZQd}Dwd3TG(j7gwI3V>{Lbu|F1kI~tb$|wZNRcc z%QZ0sD~yMLoCc9?*^?j(+r(1JLO_If%Y42h&M+Ul%Qr&`BNHcXM&R{9$@1(}<& zNUIaa?C0m+@1S*eYFbvGPYaj%MeMAoqw;R~X{m56%$Fv)WXpZ~W@ba$vl6N+?D#QzvzPQb?AK(WRQS6^=@NPapjKHBVqKb9b)fsQY&{g z!9O|~L$1`HaY1)zsnt~#(C$R_uO0ml`oA82xdu`$I8J>d^~|4o9o^wpOmQB6#=7(q zH`YEJp;?TW@m|J}g4h2ILY8tdE|ICm9=|QD`Vo^tj>#TBF%iM3E zw@K~YwBl>vEXcmRF;h~AW;PM`$PYCYE-(JD{=tktZnikXwTAD&xE5j2HQo?wA;^X}H^j&TR8mLtxkXQkUMDMPbJ43$ zNWv@_&&N38w7aD^8cJULH(;1|HSdpu*cgji_7chjVGn4kO1;ibdDZ=hP#iwyW}h!z zt?2a6UGE)!fBxkCu_&$JUR~;^LYCzJkGl2W6fVd$1PFgub+^Gmn2UQXEPb8BxwC}O z7MYzz;%Lnm;yQSwNc*}gg|)pW>HT8%uyG6V zgsc^9c?vF9e86q=V8h{xX08D5dx*_)zD_>de#q6w^-7Gnt8qtOu>CEj{~n=Ols|-C zFo7|Tt`&|7tJ#VMKB~3MZHFQ7vHs$8TH$$1W}FBAa)l$z(gFKmbefqOR}p-0RUUtjI){zGIze zr*jcG#f?j_tW!86XTfGY75OcwCUMO2I6H~49nt6(8@_aM;ZBgbzK+=ZfkiOzLk}LH z8FIWW@G^1KslB}()5Z3ZIIzxUaZ_4<`qYVQD)#VO?MK z{nTF9G3I<>P__y{EpRwfSrEX8GqW#k#^R$;je)9p63vVrC+D|9R1&cpO!vM&BUn3qpi*5TQmI48D28>>Jf z;jek6++KuWB$eu~wI6b+1-)o&Qa4_YV6m}hM6MPlvN0Ing#IS9QK_hi8DEq4{o0oo z(B$dACHK!*%Ok(#=Ec?KTbkyo+6|N>(Q3T0a(!|~vQ~pTXB@lubUh*z(z)h`7LfHhe2N1A?@J(!dN1Jmk{3`+7@B@_J;(8GN>WQ~RGjSnJER zXUPRx$#oCj)ZW6qcJF5^?Pxp$qhOE-wO)p~5-qW(xHuYr?hQc3d^B+n|>Up{fgK#e9o_g)_{nO5b_9SVt+ z#THzccKe)Y&%o|oi=)UN%lu84yPcP`=B8_tf+ORPRn%h6P5QXR2el+JK6PEmAe1+4 zgFF~I=YrnO;W^-M zmTM56_`Qj^r*mRv_V7;OGP}==J5UC*;fG|FqKU$w+1|$Ak22h%jFoRPXh0} z$@l*V7Jtfpl+I5)x1uhD3izBsvwqzYx+NC9%){KqtLEQYBpk7A?;ecPz~iArURq;3 z5{FLxxUHi$3M*zwQeLFxh}MN*`%N1v z7Ykyvp22%>0nQ*a+o5v`=BT7GFxFU7uw%Rkblo-GM<5b2(ouCtU-=CShEDw6r#L<7 zxW_a_57M8@eUW-XHI6$Uotc2%2yi?yUXqGT*e58kX?yHd=HJ|SdLJkbz0a~I6wJW> zQB^!WSYH$3eqxfb@ae3g8^ot5apVEwaC3HhU7$N7A)u!%r#8!cyil~wcf<0;wZDHW`kl6^JN?VjAw@&@GjjWlCG0h>hr`cr> zvZcPRuWAFTY6>T=GuD?KS3rI!z6%T9s8jCVgD@$dsy$vuhBFA_KJN`(OC(bpEp`8 zfT^M-VhEDYe)#$6hjG^O-oqZ8EetmW&>9>qZfL8AG|mDJ4IVn2eLNe0K=rCq3IkC_ z>x=YXosTGcu5*pWwmXi+;?7~&J4Y)!z61+jsP`3qp&A9bnS37HfN}c`o%pccYX2Sr zIIJKyX(L6L;OL;e4!WXlV@`msW=XfV@{Xe@D3*);DAI--p3V0`TkrVnd(lt?Q9##G z@}=uf>ucw@ho(6gg!#}JL`7#eFYN50L>hZ~G^P<>d!pDDD{>lw6z+9u`Mn&!i-}yY zY-N=W`M45#*^Vg_GTxZ{JI@jYn%CO0H{zRoHLlCy-}^(h=-)sMg5^=4=pN%!z5CE; z@RsyfNv{_QOSV14w1BBhLKumnrg!wpSlz$-SHUY;H5Qx+l@N&vP!K8%5r}@Q_ zqx(^1(b;EF!d!meqMl2KWx?aQ&O1F0pT1cMk}>^;+Vi$Qp@~Bpa@AP+5e_*k%NGvY zMt7hx{4teu;9e#AwZHS0tEov%-37-pR+{5Z9+-f7>|;#nM!p zKqjI|@JDR+lw#XPcA8c_Y^41$d{SR5pL6G*=@i5*iS)uwk^$c5%UeF&LZT@2rEc~d z`$NcSNBjrk|Ho2)Nmr52@3t20}MWHldwn%TRC6A`S zRDR`;FDs$fH;A_iP+A*BIknT}r=)u+LpF6-Rai7H(%&{@6Cu_{iNL7dV`3)2c#ZBa_M6$a(K+=rK1S+4f?@_w<24Q_(7Cm}ZRO)r& zk=Fgq&sv8ZZH#xdG}24B+t>cP3NNy!g=PCdzkcP*z^Dd+i_6}YeEh@a&nT>+*{$JI z@H>eBkevjIjn1vr!J+MbZmvnCq9KNdWqW`L6ZMQW6M$`%yh2zU+A#++4Vw>NUl!t^B05ZM`iQVZmfpW`v+*nhzAw}GL27S zmjs-u%&+@^+~?ebjULPwMJ>=z?=th|91e98GkcE)=@%289l=PKC0RmXv3_8^ef2dR z4)N$BiSf76%n=cFEfZA)cRt&&%N@mEEeadBH^|)aIE9NkI3J>1tJ<#ICENvd#O=$_ zXIvQLd*Dg9CF5ury*ic7XVvh5jNb1H0KJ?F512mZc+n#ai*9xN5(VAo zIFmR0lscw5`lo1@P=*E{4F0+~D}JVH%UvJ9C`xGt7DEPg@+8u{QOyOo6W=X5-ws!d zS3W9iXvcD*zr)WTFFNF(6~P~uZ#-?Vtrv+^nvGLd z^j-=-8pR~59^QD#f%KM#kjtFu?$J`%HfQkj1F7_}2^l*Fe9ps4|4`QptWy&q5g30v zi9$P+Q{C=O&r?pLHRC;^-K$hyV*0G5xaa0&#he%eRM9ALrHbvcV2^hoi*Ky}xGyVX zU+ry`uoui9402#uj=E1y#Qt0_x6+m8)B&(b?x(@OY=SiJwgfID9z6-Y8jqKADJUw6 z5J3KTR$8N0;@zG)j7QvQzpU?BUkOvbAAc2TF>UGi5WXW7KMZdn!^n&d#5Z7QF*vE( zVJ!iFqC=zSN-|9S`~DNA32yo&qa=X9Vq*WDgplB&`(~Oi?LCos4jxVI^Qlk}YIQ^o zfU(6^dEErXrcx1oK?f<}v5N1uzSeQAP(NT*7-gPF$?}NfxG*y6!5eleEp}#5OaGvU zXvUN;0jNmZS$z7dqB`zFOhU_QP$x3xV41_*5irP{rCY8@tjqXqzmsxUE}FI7xqm6g zeDiV%`?wSG+%_TluKs8LuiI}~Ap%B+QaBaS8WT!%rn#@DyF_|c<6ZmcT}aLJuZJ95 zO4m>ixdqvP!Z-4|FTLnO6881=hmrT(=S>pV8dv9Dciche|D!qgzo#9s2l>->^$PM} zwB5jT*Eepl@{hDoGbB^2!r~H$aIZ{Q&TKtgVB($s*<;iXoR3R@Vn}9x0)A^(t4vWw z_eVst>DQERcb)X^f~NGfDsCR^ zI&Z&g2!$*ogIaX5T*Z@S)0IF5mXm-pk=zAoUD& zB4njn|3*rC#T_Ket04LfU1-KAx!zryoFwDCPdoT8Gz0ed6-LQSDK7jQev1;bHzZ_I zeS&Q}i07)$HGLCVqz*Yl(WO}_&a%{>F%M zBqUE;(d?J;3$!R%Q&8e6DaJ&i*-~;OmGC{uGk}HxlS_c22Pe4;OGkiJuh@kD(BXBc`71_IFp3b$*);HNHERe)*LCTiXu z*OZsr0e;ipd%~ZSkq^d)v4FsNu?y1uW?BS+SF{YBHfD5b?9mEo>~5?y_pI9%f5SVc zSS^9zkQylm)PbJndo^9cFoOMe!W1K`2oR7?tDjXqYq3RcIAfyGA$8H}0eNPWG#Qxx zai()-q~Cu?4@>trP)*V8`9;9Z$g`JB!|)Z;BSafc7hbaI-(nwQf=|!WmsZBnd`W=z z+d>A8)KFrK4d6~?n=X=SkmF4e`n6h{>uK-^8%eD7I&wd)^2)|HgBTdI-=kQTX~yb#X_E5 z03}C%x&8sJ&Y8#`3m1ob9LHm%ZnUA{R;lA3mjbZcmi#y-j=Dv`%i#_wS=wgr3mBva zgI*pVJjK#*b~pT>rZail+rBH$#%m21C5b*huO63oKSEq%{9qQB-|FknzPT}T&ACgJ zu(b!&JDEKgTlPZ7?wxA!(2SFAzkKm>sZ0lVE~KLPr6QxpqMpcEkjr_O%%Ct-jAu<% z@%_vLy7yO?Blu#A82L4bXqtnA1Tz*q`#|(vFnsV*9>dUwXk@ADGCF9yF}U)Z?$Ohk zRMRTaP1mfT(bc*rX0Dge2jG_XZ9xwx$dO=Yxm=tb{FYiYdIW zj+Y)xK%c0-bVaDaNw+%G(N)4F41>C@7@xaP6&v5Z2qwFr7#h6>B5&;}Z)wA}-KsI_ zPt7I)8wgclg3AxXoUFxTIA4x=?nUrX&oPUI_BD&@@ekFWMdk59_&X1V7gdk*o;7A> zj@uoApAy|gKT&NI_=jouZQnza+Om`VE5wX;dP8d!vd(4P#2kT#@=; zUCcp5<=-xTCrv!U&hLE#ewsh0_y|n&P@r37FU~5N8r34uy%TlT)K4j6`_{Pfc|nQV zcafLvVlxe{gC4|pb$;u&MWHuq5wIkicP0)Vi4~cOTl9k=HLh1zVhmmuIMt&Z6wWRb zVDg6~hU0)|wRjb~?QmH}pp(9YMZ8k$QhFxSUCMB$CrPayTDw>|_HMx-;1s`&dEvMa zH_J-Iyen>ycGd6Au#YF-9S67zj}>QX1nK?6r7L?$74k_Ws}zoO9*JYWRi|@n{bz|^ zWN@izDFj{w3lKvFR}&^&7|}~OD|g!J$F{mT*sK=f;?#$wyz;u z7Q}+ylOTFa-$9~=zYh0%i0GD*GQWLcBL9JOS|}EXbXjr6zSq!giaI<8N_&g7XViH1 zBSb53pDh*f7laLkuFbBcIMt9Jl^2|6Uo1FP_E`@amSJP(kKM zQk4QlR1ZfSLlD-@#UE3}g~`WdS`IWc2Z_L()KXCDi`I&rryVvY#r^UN-fp|_>vf25 z#&;tTiI)_gzzF-1Ycj9kMwX5Ce|W)x3kZr#6Vs%D&mAIQ9>r@`QWUe~tZh$IOoWRo zKV!?9??FSPu3F_&pvPOE=q5UR>@s0;bb78}UKVe&MPsb6^sxme+IlMQY4JMBj{vr= zZC;kSw4;RBE{4AXXEu&<38S;P)OhW+7ZWgSQ-q4c9etq(RKxs3j`z#G`cTB{tG3b=&P?$my=JM6TjMGi{#ZuXa1Ou*5EJN7T#x z;2ZqoilDZCqt1#o)Z7gFEqJIS(2FbnOX|`MsKV4GUs@=~Cd^5X^LgVYz!7x6aTCJK zzWCaGd%qF9q>bRLwtjYuDoO;mF!Q40@Wx?=8UNQx^IsD)n(ia}|ExD%g5eD&ooCv6 zI+hQKi5<~U!lNDqxL}vC4LaFbY zXL7W+e3&T!z;3qa?VXm?>fC#VwbAx!fAwG+cv*wGQKsCs?eX64iK5(5!|>sC3clW^ z0#c-o`GHg6W<2djHnm}=%W3G!Zigx(Mk!wGi#H45i;H4smYRc|&@6SGOz>VA%FkIY z6XV}{G*kv0E9qxh&3Ss6SwLG=ag7zwS`70yMS7V?NjU*eA~!VNpA zT?POMwvx0O-aC;x@(15HMdbV4`(e*M8)qQMGh5&W+PMVz-KDyO$F<8&z;^I3%+)1r zN{)HFf&#dY5hUGexTf;d%;p;Yr|c90>)GFic(#KiGB>kPh++6XJ_V4iZL+@|tIH4o zd}iM3e&y$Wv$Qga#ea-d;XO}5elr33_v>7}qU*$I;6j10!413Q#l{$_m+#~UwWK+$ zvBPY{{WxFAralKFYR2#FMVF;EhF5V$M3|g1@zSLX3E@Zhd_9Yxx z?6D>;z|^8-tsIDbbXGP)MAXTW_SjM`ZFN&mZQ!aD7?4 z+c$e*KozhGuw52|Bqs6&?{5BV2sFEE2;NJ#enI<7)TDF;@AIh7gOo~RYAvf2*CNwy zy&3USeT_t3HdXK(UlY*_@jXGwT`Xp=$KT8cR?n@c+4b4QHo67KGzMO$$-Nm@;F@v4 z$a7lfcep*}o@vj9X>Sf>W7@xZkQbhSGCiodMUNvNFf%L+%OZr}SBC%581&WO&1HLE zdC*&xOk&y7Lz(=N{6K=BA}x~Q{=0nUdhO`JTalO~bS#8x=6oiw%yWF6qa`5YQRItb z-&%_D`^Byj6J6SZ9Esc_Cok#o-EV7hdiioCHck}{v=c-OO8tz#i|4*#0$ajgx!fpG zChN$MBBrg?%$ui#|?J` z3}*hwB68$A+TS>1vCU{sqorb$P9=lepx>aW^qLD-Zm#6SvlCQ&YVG;}21K-U_yGt0 z2q}~;W4AWYrRJlOimI-~&g#5}<$&u5MD$|A+jZ%U3VfberM08U!UUR;%PC5UeywSx!{MZHgK=jcoGx_`MMhC3fbip`49jnQX zBOw!Wz)dYF2zh>b?WnN(Rr$0>tRkiS6SQ`0+C6!fsrj%eh`Ad(5PBYH0TtLy)%IMj z3Z?WZ)K&iu`B4rRVU@b}au!st5DyLq-Faj=D=>}0wg$1bWT_5csCu`t0tIz2f1h9X z+!#dyd)Ju+M4;u!(p8LnKgCb@VODj)z-UxcJ%9|(R7D_eq7vgbHW_pEp}{xxeKkwJ z%xhj6V_whUQTOo^g%g4W%W!Y)Y`6ASyK>wum z=00py=Nlhp^+IZ7J&;J}hFJ7pDMqcB8Sgz`^y6fk@*_7g|I;kV4j84`o*Xcu67 zHmtTpXaz~Yc<_rQ)!{1>G?FSBvACPl0$1jDIp)cH`WFI*1&ir;QW9|u+C>o-0bEsU zgft?0ymF(1;Vm4l{#Bu2s*RKMTunx1{3;wlw#a}Ibkh1ciEnwvZk{@h$$6h3^PAG} z>9K#Z!mBbU`B<`N`^;aAY=Ii7*#fA$2|7KZ%8NR**RgAs@;?SXm3ex0Lb~Y$$zgaV zLEbqF{m<)bZMLtD)bfDA0L}0CZ-uq&*RE&{#Dj9ypw(KO0d1xl-d8S;A`AKT)38#6 zeFxBk(}r}yp~+i*6O?FsRzcPUrc?Q^ETmp%CCPaqkIIg2TU^3vE^nQzNi2QfbqAJD z`9eEJ$-ToX+h;65;%g0`HOc?gFdtqvLWnC(n+TyXv{Z`{s4-CSPfW)A>T~>4tzjiX z4^??3_>Mmc-cG70)k!66OXxe8~dH)KzPbq#`+UsBA>#)bE&n9RbGL( z&kD>`%ySi1_~qy97EUTf{*|sd2DB%Z*<(}d=gQo8u-Lt5BDVt=!`)zhtFJl(yq~k; zpa)2S76mj{U?aFT%bi6(`N)a+>FP{*BjNZ^KiB!{wn`MK$~|tmD&5zm@Up*D7up}9 zDrg{KR_1|26?Di?f5vlPxaUFye4xv_LMpTy@>c>$w4DdtborK3ysCqINxlAkq4VS6_+JH~aW`o4M#9d@ z67DT3v5@=C5->9hSZLIP87Rd=0xBHjhXYp`hlha>Jhtcge7;J==I zPNJ~jYc43ryRi4ao852mC&vR_v^6g(Mi6zyy|v3Poo+YM_U;dpB@$ce-8~%-xR;wS z6Nu+t*O&}AO!f71ldjzsp3(Mt2o7sgtGXbJlw3k0AZq~MY-;W~n)J-e z#ggEP1RVz=frOBT3i=NCf&S(rMp=Tf9hy!8(c2}>T-l<}bG!pj#QMtZ{>}Tw{+J1} z85%B_t2l}B`3YiBw1*xquAMC0#lV$czvTsdN*f>=eCgTzxSG&gBdL=mF4gw#ckt}2 zxY`NQ+etLI$LDfYNZa)6<6x;x-QyHBgm0)a@W|_57xMd^3AV#c68(?>t4Ph4pT>ZnA*oK}P zLB$k@2_GYDJ6$O-#cjkd#AxoDXHOw9k_~ydMYsu5x`lOAsYfSpX#pRDVD_b6@pIjE zfoWwjDiBiMx28TU;MnifIZi(~_;i25@d1hT;b=SN>S{HQnJ2sJavg1o?O1q5uh(k! zW(IoPP8yjZwy<<4snWl*7DQ+7+=DG1+BzIp=&VQ;J+Q)Eh+}P5R_<;;0h&h26Ij{4B#bCbU&ZM{h1CHg(a&TY=szvxp;k;B;YxCE2_eMSm<^-4laEHFs4piG&;9L%11fdkv~wo}{F``fgb z4QaN%Cull)!NNik#D;rCHzs-7%)OY?AT}YQs)>_#03da=4MIfwtGTY59xEQ!6s?7W z&u~q?)=`0fs8+hW9&se@)7yQIG#uDG^qS_xFET&WuX`&* z9i7(c9Bg>Kuo!)X!m+xy%p5^UbhwfZ@CGSMYcDgr1WV%$%!vx3*Is@Y&It>Oo3N>4 zS8CtGEn!p5*NTESB{qD;Z6tsDp9v3sMVwr;z)>M+>aekA9XRii&vJ9dERN&y~p{@fx{z4 z!5khRdBYBK!lW)Txd)bb+?ZoPY>dodVg0ocYY@VMLIKEB*-P+QK|!4L!^$y;z<5T^ zJHO8_TDAXtMcX?>^-nAoVVI`&n5ZnLFi~$y-TG$HPl)H4aft5s?~q5)`ly+sAW67T z;Dq2Ag-3X9J~Wv-LFNrFQT zC(qbrWVtVim#`|}yO2lkb3UE8TX&aLwZQ&%MCq@ezALeJJ>ov%uFq3y*cRKj7Xh4! zD9P%hCZ`(qeUO9h6{IzG) z+LJl-q(Gv|QH* z_{R}^DAl-3OR;sTw@iyAWaHX^!VcPq`t85f#NrbJ0(&8T8ZlEB$$F(-DBHgK_gotd z^?K-8Qn%AOt-W2x-%AvBbWtfhCc=_s+3O*@i#QL(23z<)BHB5jL1mlCA;UQ9QF^z zh^Zic%=X%R{9pFXb@_ZIbh*_=c8FsoMw8`fJ*4d_4L0<8Rmc_?(2`6UV0PXaerU7F zh+aeW=(W6x?FZ%ftUKf|rT9LO`l=fIRH;AjVe{z$WAdDh&MjxO!#6Z`h&8+za zigxdF&q|?A6wEDzWR$j%NUe!9>5a#4qPXpfyIs#iqE)3NSaJn62( zy*m^dNP0AlmsmnLacRWeXw2m#LEuV_d{D()-+-g;4C}bq5Z*$aIi(gGWf3~qE4U&# zyC#|KvkR^)T)n&xdV8P$=TQF&@y!E&pS$#KB$N|;J}D3|Z76|Ya?=-0viZDu!$biU z5qPFfPjCGv&%GABP|8?s4hu?B)?4HKZO_6uV&CL2AFIK>@P~9|Mz$=?y5@$N86?{X zZpCLa9EItch~$atz-$yZS1t_*_5Rd!Q$OHOEde@Qj@%0QRH5}YFeg?-7)d=_sLik% z?%_}vC$!A7ad98kaW3q8nclq$#U$-?{oETdMO1<8TF7h<%enQ#n7yO+J+lk0?~MY) z7tlN-0{^_scv(|-*2O6ExM%1H2m$Fw?O>t}kZ$sXQ<12KnlF3A&R_2j71nSWkYj$h zt3xyxhX;Cm-aR^!-;TXt59UkUJ4h~)_>4{4$BPuBk8vVeG^+KJ5FJU=HyF6~@s7e-z&wPLhHOpyV=2idLA_LX0^Pl-o&-jN$|JBGQzF+1lBPe>^TqSKdF zHRA2`G4_C$i=B~Ec(Bm zdKIt_MSsR|v+mo$V(Hj^YK>~QU`()2@^RL5CM!kEai_gEsk&Kp%;@%U5uyT;%h{2m z3Fxk3Xjm61BqQA@q`>t5vaOl41cgK5gT-IB57R!sF0oH@t{r8w1uxuYGZ9D!t?O+- zcB8i%h;KUm4uTQRZ##cqPr3KhIp@D!3wSB19ElC^SZy6$j)A}}FMU$23)o$YI46J2 zI{otaG9nk-dXHH^)43%Y?HRHUjc|QaCnlq<(9Y(NAi?vE@+v$X?f@k@zGNRe706VP zua{~S_)a$wj=0|tS7^~TV<}+cj9xu5Z&>PkX@KkA_}hO{I;`m=6=wb+3DFZ>jcQ)F zuSwG4htn-4kV&rC$c!e_Mk&@iqpuKvYpx5Q1ZLDFgkR%AD=bXNu};aB{98Yhd(A?^7X;?oImr+c`zQt$_uq*#Jtw^ zPM3X80D$@_kVcx_BCyh;{9)bYKrSfM+{D&=beVrTvmKB5y?mTD@AFl0N*0lku&RdB z%AB;bGfNGndxP5Dzpu^y=#y(>b?l(RAcO|Ailrb1Soenun7a@|&=#8brPI(-M^l!k zjz=LU{?U5YXXb11!d#F9gl((itaIUh`Y{O^Tv$QZueBEhWx)ATE$y5@bs3QHV z7NU2FxvjmXqu0^ycZX^fJe9OJpL!Yo1XX3?oNMhK@h2>FZVjC(3uiUFAA~}?i8SQr zgXFO3>S=LhdNCH6!`mm`<(6s<9n1I{jl+XFOT^!UJn#frj6eYeoGHS++pw~ycCTPj zj$3Hg7z8h{m;K9?EBG4HAM_HHckPE4U>xQ7zu0=qxVFM>+qb1q+}$YzElzQF_fVWr z+%3f+p}0$MYYN3F?q0ljDeg{+TX8$=vw!#A{oZrdr>yVKdNSvjWB$ke&fr?t`JCP-DT< z)Q$lJ8tAr~Ce{A*@K;LGbaz=Hon~+Mp3os;yC_lV?HQ{0J0LJ_X-KO<3+??IS?vHK zdi%bgni9x0_O)*!62gx+Yy`RE!#8)o0FlI7j_o>c(pT#_WJl%Yl^1jY& zLdF^dC{VD*c%BOW`!&r$L)d;r;`G?^1Dw*c$^b~z_2gzVEw^N!*ApyX6jt;reeM_0F z(qe&;I#mJi889)nxG6AN*84H;n#GSB;^jX=$4!K=5j;O?BkK*5jWq=kekMgJ5e}kC zxNGoA)!k}&477N?9)ooAxX+Y_{G<5JxXcrDkZh)c<9?jOKf8TCI}zUndKQyV^xTU9 zOU``r;a}_6A{)tKLhA~j<4s7P?L5<*nlLNXrnx0Oj)~p?uTMO@yXn@rIWjIemR`hW zVvpB#XTp@%zFa>l6F9H6WaCR((EIsaQYa31U`P2(Fx(RsoNj(o8k|ALzchr*l`4Bl z_jeP^%$-$wK650W$KO5*`6|AX4^3c&p@#4nHFo>cLG?eA2L$}&7~YF zL26))s@OuO!}MaXgLkB~biCQphZ$>J+uvFq(@yL&!Q?I1meWSIwDhMG9%rm04|lu@ z7Du#S*ATvU{FS$d!d16_A^~5*r1OZZe`|p~9RS5cawHtx{i@73dA*=tCZ%KlJ%JCmc>Lx5VkHV-w~ z{oWiNr2nm*oO1Sz_4iO0^+ZH}qgec}`}tQXjjl7}T}+AVEr;t~UnRw9maEPJMgH^Y z1d6@PqlUUbZ#k2K=6qs8*W>l$(@Y=6)=N(){jfkU1;iBorj&Ow-1~Do<1%xsTkIU3 zCz=Tp!CHFM?P5^zgCk*%sBBW!Z@;#S@Lji*~1~lDqCkCUh9L_o}I>XD}i7zHj204hb5O zr&SNYuhnsUm^ynvy3P3E%l7MFLx{;lFn?YK$ys{;Q!-!TZ66gUeMW~w_Fd_jf#@Ti zsL$0RvxG6~7Bw#X{;^RZW0LQp^*htj*aa0xhT!OPxezZcX^yTAap_O4F{Yq7+h;?H8 z<`vqTYB*W=my@oTzPHv|(c$zjZXlmCYU8$%AM_fqFNh-1@^SwMvLA&Q?u`ETd}?uqd-#u`tLStTaEYLpqHuzvT`4 znUSo=!1flM2Zj;p!;NkI?$jc>IgGl8yo@hOSL}0twvXq~8Z+^z{b6pKbMis9lW?pO z4eSH8Nig@``~WRn<=@7;8C*r|o>RJUy3A1p<68~D(b>%e zRgw~wMJQW-n>$FLXEoYy<%5Kpw+h)A$din7v3TE&P7am&OdBX4_KDqK27si96x^FvyQWEnlgf)`$%9(y&H6MSxc0_|UvlYSIRC-MVP3=%%99DnZOXnapV zp5vG1tz^&q_4y1@d^cPOA#g}XbeT$iow{^l&(|X8=SPoFX3wDL{w1xF#@5Y4kau`p zLNXw2KCi8wfrCu$Q}%Gf+*DUKF=jwE_$7~s%*gZ@cN(H(Y$B7hnm>`PVi($uI;p(- zgfAI3U`qr;sb$5K@C>?i>^nF4>Kby&vybrR-z%0>+RcI@c;6$nQRWA? z>dJ*+m7>M#kb+B#}ut5?nWgUx2nxXRX|+ZCZQpJof=7yMSWiR;TykS#Dhrg7Q?p zcD7?gqtf*)gISRj@iQMefLn{u0iP*`RiB)Nq;FL_G%CJkx1{^={Dsr? zRXE>zaH0DTpr`M{&+Em*lFtXj*Df9veXKINgL6^Vx#CI>Q}yX#pU1@1_KFgQ!#ZFK zv?jl_E85AR(M*|U=sRmd19$+~h8;kI@U^>fWD3Ec!D6|>zg#h;XB+7Z@}w0|CVXq@5;?>3wsaKx5Z5|HT1^6A_}pH}bvt_M1^68)sK zE?w6GF&V?WwN%U5$Y>F%ypu@NmzbEZt@+L5(AEiO-xuP0*9$1f3CkJBeG%Y5=hzeC;|59z1xJ z@IQr)7q3ZBI^Dh*y~gKuoSc{*SAQeZg_bQw_uA*EjY>?`O}k8ja4IBqb-U4E(GT@kKx9e&XUA?X#|ir z)E})mz4i{y>8Q%$1c$TT3oCCV=y4mk;=Jv~lhUG=j?J?PWR01PCt~+iT+{kk9$+g- zCLk1%jn22VwSlU3|K@(_4Xq?(+lGC4`LKBbJH=zgR0bjN+|4t%CNst^H0+{&l=erku=y&W2nx&{ce3c-%1bQ^-^gswuNP+jb}LzgSXZN~XmnKamfqxb~8KEsyE z0fvNmDN3=Yu8;f(LFnL({*&^CKBO|Pe<#yBV5m79ttL^qj2yOI=wahCd{r@(84|x6 z&JI^|$wQv>!7El`c~`c5qf&b^$zq=Um!1F|`qi!Ep|M@encr3Jxe2f?Xl;%e&b=A! z&w?kIJrhpYm(geh#zD7O(Hd5Jn%V6VF<=}T9Jf;a)0DPs%Sj2#SiZv05Cjc+HoI1w z=J$o_flLV9(Qg0t7eQbr_hZ`Ngec1u${mI=20r^<-|JvriYTYL)xY{ors_;fv zf%}jBOFRIn)W7`uUZ>Fdd!Ow7`Pwt1CoTc@6c=Vg>|8x8O4zk|{m?!K>y@<8<)}E( zH5)C`y@@z0;yqSy*~h*QsqU(vx=MZAF6r?;0bCnqS2zmJD($;6Z){&|1wdiMXV*k~ z8ka8%6x>)Tyqp(d(){0Pa`s1P8l!>}S~OS0v^_cvn9cmC??+ro5k$~6g0l+~(<(ha z$o?%gh;96+LUQ|IYfW%RID!5($T$RiLYCGtb}ZhxB@&=~Li!(R!6M@u!pcAYH;B}o z_(cIYoNT)OW4hV$Qpjvc`=~Eh#K))i$RnK=zN%35L0dSWVqIT!G}9sVRq{O`?Jst# zG$rwDyXr0zGnM#3qg_^)H*_A2Ax}I&_v6r&c~qvR8^wxNZsQY~7E03NzQu4r(q|0R zG`gCSwY0>mM1d9@V?CkCPn}(tG0!jzVu5lqfre1DuYZ8kDc^ML)b()PAC8!2 z9o$0^{sx57R(r>)$+W0gW*>D7P#IShc?0(6g+0dxzdmQ!`ppPCpYhN-C`y6^g8ov_ zYu_LK@h$Fjw5CS=P6PGA!F@+an@%d%bm0lXVcr2Eg+=^J1^1OZPWw@uU2J%Y6Jw3; zw(XqU--DK%+UkA1+gWYLyebdeiZ$}s1tK0)O{od5y7oUKjAUS(p;-UMC&1&cKBZ6- z-FTs1uKe2gwoHQ&fi4jcic9-m>7_vsd9jZY4C^rQM-o#6HfPa)IF}s1Fu&XUMYP6xQL#x-dgc+FJO;vTJq~OZ$k3d7?GZP+ zC34-n$XlIz8Buw5@t`68A%Vw~5olOS+klbD@ny17SiwegySqmZSASERfJMlf`;0Do*{S@qIoL zW`_s9WE6)Khd@NRa zqXXY(&zvhbgZZMm$dvbkUbr5zr9ot*3>edff0yK)Gk8g1A)JBptOeDVcY18A zSme_PU|*O82!?@f@?J8|GRjIw%?H`6R&I4YBK)`(ac3 zp-ojSO+40-tS9LAQ!{S*w{A)0BU*69Ja?(f9?66>sX+C_Dtz?H-E2GP*& zw73blE8PvdWlI>1ZtgJE1iV}#{P zS9AHO6*(ttxWirV`=a7d=5;MH31>wG2RDyHn18@+U9iTYGE|_3w}5tm-~-vH!E0*h zT8Ak(_kJ9@=jHD_u|ri^h48#TKztq9THGofUav9rf=Gz&=vJIe2p}3d@;y;BLHdY} z0zR*bTQb{+?khfmQm6O~s8{lByU(PY=zr?EaQyVEI@<5A?)#6Ex;(_f-{0o6r4+*! z_LCBaduyWTI>8lbf1%kx(ce>&oshq*=O-8wx5w9NC||oq5qnjNK=f30M_kI6AdvUgpf12g0@27o+ zFCa?X7Y&2$o+gA&0Re{ymvjUc#O!av;PCdBQW`Bi7Z;4JwjSW8tk^wsHM83VO^KIX zytWmxeZG+Jp1iOz4w_-Ov>leQDohNBl6_tWun>4sOq8~6s9aU>Y`K0_?s!J{ma}}fx&T`r9`gH|)IbpoIek}Ww>dBQl}6=Hv*q|h2!mFpOjdFzyc!}atD8-}0_o=u5zwLW;Ci3JGs|@t1ZDl(nqMgM$hwhF@>vZGG z(oFW$!2G0B2Z@uCS0@TLw$IIHu8*X`INB=b8q?`DDCY7d$A=vJkp4WCYMf#^M5&V1 z3SJy#nzMg_iw`ml;g^2mypo8%Y77Au9bNosDYZn04{7y20E;qZ12250C=sb4kt$ed zBv-(;o$#-1?XutXll`(oV(OSf{Jj9PlMl|*^zkug_p}(#cc2j3C!(iiT7AeRViA0_ zweG0+ois2*rot$)56Amosr9?(Mo3eDXZ>5I5yQYDDf?{@el%GKO9(f#$byJfTB7$P z1+&itTbXEn+)+dKIhF1WqS`gpG%_o^TuV-Po>#vVLzamiGr!2nqP9LJbGvtRUei&M zv9dGQ)fqhIJFy#gYk!?23J7xB6Y!#*M;W5<5|jI zl$l7$1yP#^ZU}1VQmb}{`OTtZ-Sq8w<*FSWNTA{-^IOt46_cF1U&fDp0d5HcVuVxqiIUz7Nwkcfu z!HI_vs7eP+gb2#v2O5Q6IG)1#t{kf#VXwbxvTd0$-(6Uj`c|56-y>;NVO#mKn3XN3 z|19+C1U{>NZ!#kX`2Ps5uiw~v5~hW^KMlccC0s#H>dPVvy^o$9p+d6){LTKI3=TxW zeFaEcbj`Q{r>?I`h>P}K(WgiUW0{0fddht$kvGaP3aSpt7igudGO12DLTA^G< z_Ukx4zF#<-B_-MEdDHm;vSeVIu%O$Qd2?@tp6y}s*)lopO1xrz^;h+NJY$_{;5$hb zwr|a2pGB9$U|UuWDsvRpnHfTfLw1o%G&ZGbh|Sn2@hzN~xlHjgnT; zk_rclVL4XzMosyg5Ff*uwd<|0a+b`AI3!e1#wM9Iw~OdEkdpWdF}hFS(>WEgsd$xd z?_}MPzA{$jyVF(QKg=Rh3`RLj=Inv%MtuMDlIfBkugQ{uD!Q0Du}u2&0oMw@V{GjR z`nobBPb9A6V3xL(iSWwbTmf&Me^vc_zVC{xDfmgGit$;AUmF*;fy{#=7yQ9Ec~S`7 zIw%mEw}a`m?6k))wuRf4p*-${W4-8~0@^HY0fBl`g=wH!>%sD&$G|gA771wf>K-OayMFxy0#@#Pe08h8yrqDr{4H$zwuIG zpu!}=mJ#n!^TB25^k`jSFbpeRb2#R+ZYBVjJ3hOyCmXMGXKwW3)X~kCW8@E4B1`M? zF>8ztr49v`kSi~ENT}r(MUEP}i?jYp3gEbw{oKYRp)r1Tdum_x{E?tgJoFXC3z5_N zy}8shxjd_&^qn)n13zP*##_0E%OLgN8x)oiD%SY&iUBEgkad7tuI3Ch@avB&48+7S z>lWkPiF;;xq{5(&N}yRKSLKN5*d-iK8uq89Yq4GWM~d`~7m)*p8X?sc%uA#B(eBVS zw|7k9S4H8Ae(zj#q^z0AlD}*(>v&(^a&mv=_KDWf&dOm-{OI2#J21Ie*%k&J<=d!w zw@2u|#8uh=}fJ zAf%_(d-Xq37yj$z?DmY}3PZG$o2nnNwh-UJA_%d6{)gS}1B(Uv#`ayKw8ziK{kQNE zv9UlDBpGpWCrqSBt>}h?-Dpjz9^MN|41dP zb$Zk1z=kOnSKwPK9#3?YsIXq)8_&Ezs$xhKyY#4-2wVl}K4raOXDIMtLKiQ+!X0do zCUWg(4S0Xqj_cZw-X%v5DHob~n&77uyK4EWzw4XxD53bur7uVq@xlFPgvs@|JET3x zl{9{WKg8Fu0xS+pfnn%wRjZy?)vcXmmT9}@?!6+irf^_;NCAkVSxA3&V-tzR+_Uq{ zR(~9{M{ZZ=ur+?XQ{0)0D`xvF&Rlt!dW^}9l~oEByzLV~^RUjYXEhfb^XnB?hK>`k zb4j4uv{9z*&&g_!vZM78vk24lBkn#})Dpu(8pR(ebJ4qy>JCeO+iH>C0ZAQK{(p_jvEzY{@D^+SAGokY~av_{YFL6GaU|RnZ z{CS3;lL|F#T)@yNHAvd_+0As7m45Rv%HXR)QO41XzEgG1A&#@u2l+9~iEp{okLBY2 zrb(*n+%t6ZHZXY6;d_Dt55v@@JJ97oiKzr}a1Iwz*Hz4T)l>VKHzdU#O{_c%qmzk- zZ3Zv;nxMeA#4B5sh1sG`UVvTkFQWTD#q2D|V)IPL>>J!DiNWh1xj4LTRXB zBvECZ#0v37Cdpupc&IT8TkT5L5I@d-!m9s|7YvzPW&4PV8SVEX+GxIV^O|7dcqt?T9J`a9kv;8w6$Z*HX0$A*fJ$^aJnUX5Wg+@gRVh1;X77OcF zNs4+dAM_S8Kg%3;v~nGF-q=kR1LN|D!g<}me0{6k-9l7s5&I8^y>hJM++=OieD2@B z9oK4DlJ`maQ2KDWnT>DNA0^161&Ela(tdnf(lH`#F34P}+ia<62=u)@&N z>=&{@W3f)1rt3=t?+NYRL#}gChCa`KB}nD;JE9%>4^su=%(Z*lpKwjg>~z+i^ol5( z-}`2vJuL2K|EI?K-*1{Bs%>z}r(ebqcf_HH2uo$1Ta*SpMMYE&390Snw)_cZj~hlQ zE;T7G^GeZ=J_1PG0Y*AY4Rb#4RTvPH)3oVQO~M6w>$|z;A4?jFj4Ju4b42vyFnXKu z_yKQvULPW#T`$yn)|H4ANPT3}MmLgbkcuL`3L|D62xNL1kM=dx#24QK1+vi}x6p;F zzOHg51`$YK>aOPjwz(=yCz68T(W*E-g*GO$HgRrVpMO$G{X1>tkav1hHtQ)d_tp`1 z`j+&BIc1e{l*D4qr18zJ@+wAZFE85Gad_{xus)d$>MAXACJvVFjtxsYWtcnOfOgQA z{nk^V-JsQ?!!lCh98sDC#*O}^{{A!njVp~Y*(IKxa$%tXsoyLVtmcM4P3sKa*Lf3f zcT4w5+C!q4H)K87S;8G*!77QuY%%#YDv2znIYSJ;R@vNfHW0|ZlWu%?QR;%Kn_pMx z*-DBP^3yYapU~z$8ju6Yyt%P@T+nnp$a~hxIqBYLsDsLHjfuULtxxFG1SnT!W_B`0 z>X}R%P@DWnisD6X_VYL=9NyhB-GhY#Kep6~Ui|8vwyI>-TNVU$rH0Zc$TB1~)>OwP zq*cCaE{r)s4-R%ZoIE>e)ZTXil*peM1vg3YyTL8wzl*#dQiiP}gcY2$sl^o_{|=zP zZxx>sPhYN!ZAn~z!pDy~jHG2KXL|C|7@Omv?`(bnSbDarQMD9tyW42-*#{+sTma;} zkuhjWQD>XSd3WN^9L?mM!|Lc1Rk$csNxZUDOsGjcz~prn)ixJD_eDHAm022-F{d?j zTf9#mimVxAyV`RyC8>hv8BLh@RwMY9t^?51>{H_|jt5+b=?xhAgZcO-%bokCW9hGD zUQma|D&8P_!9PNjUsvhQiJc6bCB>UnY(}v}R4o)5xyi$pKY-?y8sLLVcJ1!h zEnw*^ECOY+2{v3N%*9V|2H=hYm*-Xbe6RLKyoA#26v5o$tQ?bPe2-0z?UlXG$eRPW zf=2vV5xZN6EH2tM&dvm~2l~FX#sr(+ySjQ4!s;xHSFIR?<{6r5#QT7SDk3#E>e_bC zy>P>6UzTX)QS#%s8_MBx9uAI+<1@2q%SZvpZrhfeLGe{be3id*8^})q5zvz!P>Fbg zKt?(4dgjol0V!|>wcG8CStT>reM1}47Ux6VHEk#M&V}rbn~+up*;{L>LAqWQyH|?7 z8;*^S%gwvYEn}$WZA?FCAk`V8k2+Z=jBhbyqaM?=?&AETeFwQ2l56mhA+K2%vE&s8 zNyE81K$1r&&yH&dsM=#ZVH@?9PbK89XzjdfbIcSvQXt46WQ5`l>Jd%nP(ij7Z+GQKuIEi* zrJo?q#_l$R3n*Tx1Q85D+)n6Qav{Vu|9oxRk`KoF6yBn<65Na!0On>B^d-?HkXbpP zOG~j6i6cr@=^SDi9&SN|PaSJI5D&`G*@B$W(CvL+T9+0LSmsYoVxo;#e_!c*d6S}z z2L@uI#5oq0aUH+UCit+WBh#=HSwP8v_YaZ_#bF5{+~5AX@39HQ6salsCd8i_gv~8e zu{37)y+*q(B=Q9OCxo?&cDd(@IIne!VvgNTYY>Qb?6IsWPew$wbMgS$dA`+8>ALkF zmwX&dkvs=46#4E|ITr*}+&qR{Br8i3%>dxE+0zQUD&QrU&35`i*T)D^K6`yJv^e?H z8X_;*PehnKt^O>}Y*=MP0fj1@;LK8fxTW|mjjV;n_-)IscSDcWc&M&=DaH0$2xhWR zi8xX-n2!i2nfB=Wc0dPxH8tUKClwW;SsJp3+tbPdBk`Q(mt?SS!-9)*=a^rn0JN_z zf#Y8D_*<)ri434D@{Lm0$rf9Zy!70dty@Mo-M5LppGrjUHkCf58dwJ6TEA<8|0{fT zHV`4{|2%gi=uNPY%X;v~cd%>idg1OOt$Ck<;PmVgUQ6q!^-zEHCffe+Qkz+ z+tb5|Dqh_lUb`61DmjY^RCBD%b_+5KE>q8%2%8!lus6<(j-DYt5Abc{#LM7g%W<$6 zp!$_*T*3u<^+#g!tO0mwM!T_i-<6^Se!ORd7i?LdULFe_J+@Q#?C&ah=tdK!=8?`7;ol zzvtZ|%U|4VUYHain>5D=R2;)n{u61Ktt&&#siZ%w_4bECkZ&&FEkhbWPT9ik26#!Q zMtp^8JCA7;d*X$vf*-EULIW@#%Z^$f6(RKHAJU~HIL2ocjF02^;2j}AT1jK@&?IjA zh_yU7v0b^+8E(!4I<}%aDjRKxKGN$vbOf^cOR!_44FXbj;cMaup`?DD*~?C4R_Poa z{ZT2VAqi0w_eQLGWO?h~nNA2Hi@`vf%&O-@+7RezdT!Uhrdp6utoBTMX8T~YdkJAa z3i+$xZPCK$;%NoR@O+xSbwH?coO>y3i<3O+{rfLzWcQ4N&)=e3c<``{bh|N{SvDyS zC}S{Hw9AmS=aLso8dHwtV1Oip_wSO}U*Ya-espyc8+54Ce7_SXUjX3%P)m6t;o|fI(D+p4+kx zhwua96){Uvf9xjDr9+xB&+Nji**&0EzY(ouSV2tk=R^&bd>%Rr?GTdxYbVqo z3AXRJG`SR36cA?$GcyS>Fj~I7jWtf|#m+sKTYue#OUCa}S@cX9mhJJvX+!}8{r^n`(V*pQQ;sj-m$=s*r zK_g|=Lnv}7xl{>%WLMlY2+Sp#@-thcNg?>XWQEKR~EGAibyr7EPq+fNo8xH!4D804x;~b34rw zx{N)>H2Zt=S%|p#Rv5|Tn6ekn7J2m&_FN`Ecy-eyiO)w8Au9Wy3 zjpj)snP?`)r!H7LtS7yqQ&2 zK*M{rIsQpRE-+fFFoblLauqVGW&$mkgv{>*$P zsohjuDB8{H<8jfvQCj?WFTK-yHNHuK!2%2mV~<4N#FVAtuX5{|oWkT~d8ewn3M6C~ zh6hmsdQqbpyW?w5rikZdZ>N$Eo(S3}R1%8^YTbo1`3+ZSY^U*uxh+0~_y8Wg zHzD{{-QSaaQO5C^2WFbke=<%IrAniU$0Z81>}*7@xz#in(UWH6Eh;mKgDBl4qHYMs zyK@{uDcqPSE{2l!V_&iTU7cS+6WF=I|D%Z`Y0;rK3&RhH>zvDaSf0hhyyYjr&y_ft zO4QUyf=$dYLO_ypm%^oVApWbGzDZ(qE!8`(iNuR94)7BbZVOyRHTwQ__>lhq^G)vF`e+n@HjGAxg! zEKJ8Mh09$1%hM^4O`=d1HW@I27DJ`Je%u* zdXkpC&-XOz^|c{$Rc4JN-=Y?4A$p0T?g$|34)7 zua8=Sf4rzE=avK{)VB^)lZoLG!?E&x8&KBw^=0e`N6q!0I%71Chlo~{)I1*M==2DS zc_vc5Z#QFmZaHXz7zXa$6wmJ5h#Yr%u0Obt*9G?m>}kErI53r|aAtXP9JU{x`H4{N zV-0MZU+*n(J^M~8s&aoIrH?Ji>&voX1F;EGxz8G91Q;x*lg^##c5r#mcQ>4Ip9x;u zceYLx33$`Yq4=&E_n^?9@OMWZc+f1aRp~YQW8>`D6O0#P-D>J0OL!H{0jj_TP!M8d zWO-)x_0HhGYTY?W&Z!kyKgi=kX6xUuCpTxP@XQ(wfzw5XV?dNp@%DFI6ATcLa}46Y zCp7cPQPhe!2-Ad$tCw@yb`)VLpS@38V)V8;qJzZVag~l*kMdls7)yhkSeWRcaWmqL zWJ8APfUzwV(||O&;>L=LRa1xuTA?}i(>vlABRlEe6&Zg6;L2c=Goe{i*WGuJp0Iy` z7eDXX?o;yOC*JIal8(3!4pvq93;G-__7Ni7ob#g{Po8fcBBl{Mo$H0*A7fm$4?v#o z@c`10Zh=Q`E)ixk9xlpYOgv@v#k|%;<`5IBP@@tlRs)pYVD2R+bpopuYzCq)tYIo_ zuLSj6L+r2M$lxgWOij_>OboB2cLU!(^ozKGAxsSC_}d@JVtBFK>U6yX!}8DsE%-_Y zl|2}g7gKt+(}sUaKjAx@Wqpy|c-vHM9OpCRgdL=}gls+j$eQgY;@6Hu1d7iM5C-Wc zIo(qQc7l=`^5^{8!zQP8CGTMcHssluXPc@Ss0c5Zf{(;eamCPD9$I=IqrJ0V)@QI7 zXNT}{^@5x81fWxpVy~0#7xy=c1v1IQka>+Xl z=IN42ZG0@kgfqo|2Z6PpOkuywIEcfg9Bz>OerHaXV7xf&W!bP8qxL1L41zy0NdNHm zCL%LA-SkmUbz|ENdxx4LAi62t%7J4>RHZE5<=@lA32 zr%e*Oi%VFkr!z+S#Gtf8@73=g;PwaQ* zW?f2Ul?MY;@VQ)?{pl*=iH0tJ7p{Li+iMZ)Ex)9SXZj_T}LwF@p|eE&fm9rTaNv`S7%l46*U8%9x&RuLbk4cJ>rV4PMEGb=MH#u9W>mQ zc0`r$)?a#R=78HJ0}rQMyVBKrRvZIf%wSc=OS&&eTCzX>bD5eew2ww-rAmK5J!VG# zBNk_H?v-%z?}m-dyECg-Ib-)&et8csPOv`A(`OoBr`Xcf$d3DGw)n|i^N}`x7)B0( zMUcD z^Je1u7C@^VflBd-SLYx#9%40YmP6O~>uM4_sajd@3*~;M17+rp}|+x?*14K^NsEl;M_FU4=;HKWogZ088Bk2)i79VX$LnPTKuS zIH2(a<7?jG$hA@MY01}ucHkOs4WK7oi%os)M>Ioah7jlYID@p5Gor;D!^PZUdi`*N zBztVryb;fmxclPTKC5IVlWF5hfas|6+C@%}EFzfXI}vm6CbPMWnr-g}r_Y#|eP5Q2 zuJudMZ$mi9P{-Yoa#RK8Hs=t0aOEWD&=vg2hgw=55Uf9v)Zxoudei+vg_@|>y z$&rC|7ySc6 z7e?2OGajh(pZmWCx-0+nlYr2!F4AZU5uW$2npWphzRSyy*T(Ure=|py-X?|}I@ZW) zQQQhf9b*uE&S{9B+VArOeD*SRk|rwLY# z3a5cN9hLg18ERHM-`%JNUglXt;>f~Z6Zc2weI$Fkr3D5xANxMnY5A?Ce&I#-|0r*~ z$X$X8B-TfrQzCfxDgDLjrg1|2D^;%B%|1(?YRgoG@|im}tBw3MUkQJ*P3xf8o4r%^ zp{T`s7$Xnp25QV}{9X@tghCArW*(?YHd-F12R2<=qQBn0)Yx z$1V)>)_lb_WWDKu8lwyUS0(vxKNDhAq)LC)dA!lQj5j|!f`kgubcou`OI;X+j>FY8 z`jduyyGXsZevWDQHW7yFkeO&lZQCY0Z>>DB{ZpJ{d% z)_5pOKc1sxse>dIXYV7|-Q|F(w*f1oxZZWFyJYTz9|w5}1Ee`-eEA6akbaKgYEc=5{?4^Znf`wP=-Wc=lp#J_+m%}kzm{W!H8Td6TZ<8_} z35tUq6el8scFbcH=;rw&D681PzJzf^rNdN?g`NlJH8p))P)0Z#H;F@+uz(5wFxskpz6Hb`z(7G6|f$5Sk7CR*DgF@1%)0sH!_>qijqklSfBV zpYz48sq5ZVwR{4$d1XAa$`&HWH=wHxN&FL2L8L2%wEnUOz ziP&1BZh;*9qx&@MU)!DORJLAECn*m`baMn$=()+957Fq?Ix5GWu7!35c%0+Byi9x$xwxy|@@b?s7IZ@^>@ zy(&X^ncXrIMlq9=rE!A38T}?GyP&r|Bjq20>K?la@719n_a4%Qb9tD&SEZzdY_xJs zT)XdjfnpHP^N2I895#gTm1dRUNbbd>afif?$YBNZv|FmLQ=B}x>L*k+-NM=7dfL?{)6@xho#t6{D*>4l?LSTPGHcQ zt~`d(*>P`CPU~u>l`xvL2UHo3-+7JT#sT; zNmknV-Atnh`xju`!xC_DC70+q4EP*JcTI=N8gKWu+@Ikb=SN7r#36QFlzs4{8F@?{ zWvZ!mc>XV{xngAzm(VCW(XK10s{1>IrUf|doJ0uHv}kvj_hW*k#U7iuTwk7GX5&YN zH2YE};(~`l$u{AmuCns#Qwr-Fysb)B-4^AtSfi3J1j>3jXqB4cAg0&uAvzw*Fu<19 zD}fq1_VF+K!TWd)k?(a5BV_SzU9SmyX$GXpQ0HHGDAD<`DRk^p(}!3W(JhR{-tvc+ zMMcEkenuMsg=n$G1Wqi80{$YB?>~bBN^ZhA?E5x!C!8Ujl)+7wNWJI!GI#AD{>VeVSt^eOpjQ=yr4l5#rvY{7Oc-KnpK|6;K{oO_2s zFDFEv2cOOP6B=87V}`riVR($jcKt0NKn7e6BM(2WzEcqoueAt0iv5$SMEek2#F`&k0hFyU{-@{jLy;UbKhReR3rzry z{5#*2t?|U7K~1&wzNSqy;}e(EnPC4-2(a|Z-=$(sqUy=Q@z8x4=BT@6QOp5~DSAg|;ilY#+4Pn%cSr{9>bvexzHZ+qL4>g(Ls7+3AQMDzRLlu2KL$8=W_ zl27`HvAB1?xP%u>8v^$I5LA19_#tfa+~{j9#D4L9Q(pP~QSNd{#t1DB++Va()1%3J z;XN6e2hK@CWyV3St5&+TV?4l{VZ-S0GJhe685?aqIDOuF{l=ShRQyg=DK~b|NxfXp z>TjAOTRv3!B)DYm)xl?T`m-j_Ksa~y+S<=+&n-dm9oSm8?bj|BoL*+c)&A8%uvmX< z^(1qoxYu0o&BdR;kD_`1yQ*A>k8YT|G3g}a9?>uI2@JlEyr@At`UQXbo**h03iXSk ze$fAm2!T#r*$B^+LUPUi3RlZA#H`f*4PdOjKoyORZVxVwrybDN^M^xsF0Trn)YWz) z>FrM1a0HY#>4uWED+@C+<7#>X0`6IMdL_+qP9!Q_Jf|M*v!QT#)LfaERUag>B$$C% z6=2E(m5LIL@T&~2r>_vTbe^~z%qd>{mT9O9zjFh!dRONdZYN^O{nhbYV){)*-Z3w^ zlwAXC6Hu9j;9W8+b(Z+tn~*GuQ8vID+F|t;IFwfF(8aSZ?(16-vYaF6s`DN=JS%mx zYtI_0wiJr{ghVq&Z!refS%pG&IEQa*i?xz2-6)7&-#YcMLrTCB@-6437=MV58^Pa| z?-~}!l4TS#cOpkQF!7VealYig{FWQv*z27Ke{0PrfT)D1@)bVKIweA)D+$hLgiz`u z2x{WYZCS~Wq*ocwIU3bkbogd(IH#t#l86;ooU64fc!@ZHdMiv*_W*M7eQVeI-;_jg zl5Amd*V~;+R2foKvTRyyb6EN^q-B(ETI1v9?to@2LgpUEj%UB*;m%w3&30v3DyWO` zg_{&+1CFa*@0lHIHN@v`0!@VE(trVGL*b+>HQ-kmP)C^)S3pxc?H&(SL z3k@f`M0M2ZT`edhN)mVnh?t|{*WYmAynIcV-p9C`#5b@fkkZ2|>~?zh(QT`)LZA_E zY;`I;<&0@GiQ{?(p%+m4lVMBiWo~#y8_;?16npCW4qa5WVu_%9!j=hH8Rs&KpcLIu z$(XB1ieGB3=Ib|EWg9bvl`8`uVRLGw38rYB_Q*wrGU_VMwz;-j8`YERb)r#bouoPj z=Pv)*rN#52i4Xh-yfrEHdDg1OE-xAn+eIRv2N%)T`z8#~Y4$#NAl5OTh3(s*xgQgc zTEC|c0&ndo2yS%l0t(4T964cb5lh#MfK1gl_RAZ6##Y?R)N!O?BoM2X#J9n#f@4EG zR{%=5UGN(#0iwMn<``K^UZazf4daja%n?WKtes@4L1>NGUI=wQEeVS()GQ3k=Eh<#6 zywCfg(0&=E-r)w&Ve#%&;Ii&0Q*-61Qk%B`?dcU`jWi04R_6|mjj)VK9%e=wzzSih zS~8y(wm~(kY-T%y2=1Q`8~?*-R$<`;ZHHE8?{Ke0*6gv3?Rt^j zJo|X|d)yqjn?41It`6RfCI7EV!t5P&CwE@JTicI}d;dRtaAR__@xYZ1I$O#J&cjgk zab;vzFXQBji+9!eDe;)Mb@I$N8ctKyTeJmOD!~W^_IW~-5rz!tPRxF(!x@Q6w8Qi< zj`EUE!hKPa9ag%j>Z-_r*iKh^*QBjG@}>_stpjGPxxYAgngQ(yf5oQIP}@2P$#H9)^Jf8=QzZgAC^|H(vlGEL}S-^)D3*VZsMu&uw5)Ownaxyz)J!O7K=zaH3y6cPb4Nwd{)Cqa4 z=^6OO2~x=ydmlROII6ttQh2|APwo?o=xABte8!;qhy9f?HhsOyI7|goaS1c{1Fapi zT!Uh*JMR{X6XP+tEV0h#gJ5kmZxRQ4D?uVDRVsDjJtcNP{=~JSvu3Vj=o?>}nMA}V_BEi|5B@Xd0GfP*f)TtMeHmMRGalFIPbg>CH zgwW-m)sOn*PxD2bsZk94;8DcBDDtN6cM6PvYHB9??Z!=|hiIq3i)TJO_{?Gd3ejoD)9JVF(u z;ctd=9qy%V<=d;Z8P&;ZF72GrzjfdEp4Sscsb6M4-en&rjegbZD9@VM~gC$+*^x<8VM3PE4G2D%oZM z2eZ85{TM^>@C$&tHg8cZhP+3FgqMb^S01{Gnm^>I{5Jh*nNixZDuxqdKQEeyb@8VV zVduGv^a&4Ru+(XRF7RC&=}o&~WBVJk?_QM%pC2Zjg4Oq7XW)Isuz=0@QC)s0@KsouNFFlPFm8`W3b0zJE0nNoTF~D>EFkyW@O@J z-7Nz<%em7pL(W^AHr2Ckn5x3yULOYShUL?oPu1$W3xl{SOqn`q%M}}3ow}yoI7Jjtf3bB(13uZ)uOkS5i7-o*tp#%cliImyXN(8}7Xw5w1gH^UI*!U7zQ7%XWmc zy0U^toFCf!Hoo`I3rPB_Vi^$vIoB^Pz4R(tYqu_0b|5UYw(+I-%UslBEvyR~@jZP_ zokUb@a_bi(h1HccrC#P{nNtNX?=|n{t4Da)M`;x?V*N@}^H!Z6*;K&%$Q|vRzOfPb zRi`aq2TeyQ-D{~AG&|K5HB8OwQbQIpL3v$^6DtRV87s4zZn7j=&0~m)^7JlE_ZE$#v9&y=WkMgIklQ=n@W`LedcX7tH-iS^ zzWFV`?dkVMN%<#!phD5+!}86$=Xj0hTis3B-mf$?oGrLV&u+=wy?Fk@iV6h6V49*1 zq^gNqCZhnZb%5qOIH~p~N~)#yoF%6c_-=pHLR#(~4C}gbc|92dU2l#wlCB_^oTyH1 z^IS0E)kZ9OJJNlW&fUO<#`#smxoH#g)Cz|K%h+sq;={yDDdAcMUWD)<&KSpeLH*e`9zFT5s7j6Q#X(P{99ul5|t8Pomu3#(D-+x=o7Tk znY4lQc|<1~7MVIk6HMP-gpDP(FhG9>qh9Y_FhD2ziJ;TfJwccTp2#kO%O4JzYQ)YG zQ!3b_`rhEPV*MeVUsk-Z>cMhWL3L|jt~Ne^DETH{G<<9jK1Tv9mGD1nd}fu#w{R`_ z78L72)%{>;k2trtH$S|$m#LH%gpcDFy~3$OO{GHQaRTb%I{~K;cS15C$-*u_d*Mb* z&aDNttl3o(BRRnxLZwG^)p3?2#4?3AF+^P%X@B4B3b^WiK&EbV~ zAEBry06N};kWDu7|1}Uzq%Vc5Rg+amBz zCZn|scFwF2WkGUh^uuG`SOUEoensT0{I~i8OP%}_Lrr*3RXyTNbYyGoBIUBO7eR~X&+I)s$T+QjQ_KIdBkzxt9ahx}8EI6` zU7ox7`9=HVTlA-g3@aG4-YV11=q>OoX0Gi|;`t60MFZ8lD(3FLP0uFBoxxRqIV2>m zDF*4EWd`e?haocs_v?Wto1T4u=eZ)X*Y#vEc(*8@=4{y*8aSK6_%AAF&@O0f3Y64? zMz>QKI$b@IC{iW~H!k#SrzzRdnZhoLz2yBBHbVw<+(;?h5;mwHKj%0%sYWN{>DFW- zI%i>64pAiFk)pgS2v>~&+KfEFgsvLL?tlB5eu3XUQh3=Yg z&^|gVF&d?gQ}+rIYZQWo7J_?ezYlNPYeD9fT`0kKHcjL1mxmk2ychRdilLVr5G}su zDuOPWtS|Lc0V1E2o-RE~GuD!G(s6)w{OWiipGlTEN+O(YgnIq-c{tXb%hjeQU&i*$ z1BFxqpX~yDtl)ViD!S%QXDqSh3Ue23MiV^&wJ(OOnB1`*$f;X%DgQp79La)X9pTTD zJG8R`7JyBC$laGgf2F+)`Ya*U;eC~}*Qdrs3F3xc|FGtMd2#)(wI6&RP&IzjFv@WK z+=i0%KmUH?NV;EMlM(6Ye@zDaK14H(-u%gi<`=&bu9tG}dl0lz2lRurP-2S`&)bn{ z8j)&e-zE`?`agU<#ZXkxT)`f8z)4dfV|_PjqPMDbg=kjujGQ|`ih;F@`tIWJA~amL za&#=%C4-MIiQ!O417oW>S<-Sh{R0%`%?HNnf4mDRr`lVly(6kbAlp4qitl2>NBm6P3NlB z0#^egkpA79&A|Xkmw|l}XXpDyYS*S}(s1gqE(;|#hLItsT*(B@2ovVCd*ABsB@uDI z<~Vx`T|Ex(b#ic!o~Ha>OSFO()RirK-d)W#Hd9y)XaRT2SmD+#${hM{6%xpu?9lQz zTie$=7ItZLd@t^Wytep@wl$@CJmzHpLkov#FI`PVyZWXKan!5Onwu3C2CbN_mSsny zfo@o!a-FdIts6u9Tja-vLZ}rVrc`Zs4!32WGjZ5l{%f0$z~n2D3Q4Y`Pyi>dEC1SPKv)(`~BydBv#ZV^6R@KxIf zh=fQlzPBjYwrVRw!)Mtt10b+H_VPXA^N@snoooc%H=559ag~??={WqEEJ4nb75#=r z!c4@W+hHAVlx8&;U%;hPoQt2%P(j6K9IQIMKr zllwuiY&d(MXkU^yXFX-$u8g4eH)iO!bEqA^FGetl&GKBVd#{MswS+`YhPH9YePB;UGzomZjC{+?Yc1$dJPdq-uS z$G+q_#J*K)ttA@0g{e)2*Hj(#l9fg%#a|#o(_2r+p8rCx|D1T6>+ytA^?bc5IrKnu z7IFCU+XMQtc;V*sFp&3p*hf;gh!I~g5OGZHskTQGfE`yiC&%A}_CBpua+c{J0VyH8 zWmBqQ#1n5;`bB@4H*{)5!m#$Jt;sR-ipj&UbBxwq+Q_@>@NROBmw$}r}#mhEaT1J1<@nQY&%;fQzwCb#P2Q$j1v8%VJV;gK#1WI_iTS&f0th4@GcyZm@ zf37PO%#w=owPEQb2&t~{a?ZG0?VESt5#L9uA|LFYiy&b!pG|S5*jbsG;8@518ihOq z8w@f&sY3?MdV|IKtEdo}I0w29{jT$tGgaw-?fLpN^y79J=*EjL5;VEYRC}o0t;Sbf zwC&ixrt`uL)EBzJLACX(?}J55NmXOUE+=Be-vDlGdq+Q5Iiza)3s9QP6uo|!or0p{ z3f;BDDu{~gQ2#o-o>6vvCbwucESiNd>$h0qHcMnD1;ua%syr;mh*ts)~- z-q{rOLOMm5S)96ay=uh2q}y6%a7%nO`;`yzGx+-;w_C$%Le)ASed zi5l~ry9aV8e$_&1ks6wZ8>B_bKYgVSW6uJYKaH9Z0@R$J@5X$9UcQ_Vs|Rw`J(QtL zhOd`iIirf}R-WE7o==YniXOg97X1|kK^Y|e(lk><`UqZKR%%U0_*Ud-P9qaywT{}D z<4VfS$da*t4;_69-DXWF<0Go5ZrzNGGipE+A0QF$E4shmA98ke-ob_kDe)n!kTSiQ za>I=boA{ujc&a3jy1s}LU%T*l10F9^aAtX2QC@#pO`AA1q1Vh^=(+_5 z1aVcDQaPUL2UqT#t<;$#7er$-P#PC9jPt0G-t8fwH{QpG0wtlq;utpR;hBupPwhFV zKus@A(OYXwfyljIJ9>xr?8PT!DeT{l-cHQkialYO65#gFZu1Y>AB=ZD(tzsg-WB;T z_=Kf%Bir^o^+^uc{_F>Sd$X%zuUaS~KkK?oInn8GpV&sTw`sC(_Pmri2$MPX3C=oO zOUS||ig@>w{pi{2J%aUv~*R8_*@`!GMD^dT8P|2!@lxasA?JqKv;ukxoScdtVW{r zc^da*a{Zc&c1WG&aQ7LK@OoN>qu9q+^cUNJ8Qb-QLTg*-@*73Yl=ebXPc6fYE>N&b}(x7ty}ee?OyVw=1O3?7`X-)2we zkLGm>^l1ioof+51qeuVL|@S#%=1L{ZoA^n-1n3szQ&2;6HbM(*mG$z2fua8y@wgKg=C=LC zOz%FNx;~^-?Jq0;RVNF1)#-x^1*{5m{*=km81!Ehoza${qbcU4v@desNcdFqE1G#J z^BItypFMqB3EBY-%4L@FWTi><&c9cs#F1~9Shy=$EI!2=UuVN2w-zKGe;byVoa>bM zUTYndSDX<6lK0tbm-i=}|9o%8-u1WpX;tRk4^XV{w1?qlEv=iW{-sB%^ZdRt#$}MR znEva4ZDY@!@LP7^oEm1SeCkd7&>Jjxd?a*(bFYIb)^4(0B)gR2uWL#$N4xD%9b5Pt zRy8v7&Zj5{2tpBj*M{_eGAu8?76n#6&nFkqN4gAj@ApCy+_o4Vze4VX?{uz;v{3Kw z;14rN#d&LB&}K5k2!37>uBVf!g;7h4dOys~x?~M^JQJs64!%45P;tI?;e9?qwLAEb zf;fcKg{(Op7Net7jlelyI3IWIH2<`9a-p;9`&RfsoDw?f*mzxYG3iDn0p7YHed@kj zc;8*04cY(p+8Y?aWiBC3V=dQJ_-d5IXL4#yElWazyGWEoRDl<?VSjw>Gq%6wV?7t}?mFRCsa0rB)z`u6%NL16=?|!k_yY1d~7Je&M_)9Q^(K z$gK;z=O%^?K`~`|q&mp6iUKZSt<6-|5<8=VaH*-pW9nY%&)qVlW8;yy=U&dLpcAeb zinPT(hbVd?FCr_~GRD+?Dt+0oe|1t=Z`6xOKT$}~E}zz+tq)TfV+&*Z=TwD+i*_3OU%dNF zFzhhCO&Ucv-5jcgvGm@Y|9iL|2Tk2Ol{kk)@!Yd?xUC-3`B|;F{`M$`X@1ehf|#jb zUu3!Lf=Q=#?5Ozh4kT#R={CSR_M=48uy)(f?)FkwhkE;1=A;)oo%2-xRaihG|8(4M zj#42`3oT{p<>_fzcK+7lxrRjoRGX1pe@pECj(1IdD)7Fi4{M$&I`FdG5LW~mr!3L& zZ1orNAlvF=R_{ZxeqC^HJYeuYgXG6aFCnt+-+78fO&`ZDwsa9M|L=847w)xb+n|Jl zuN&Zs?cao%Yh3QY^8hPzS89&{W9VDZqK+4zxtkmSNr;kOVVa$cXJvZ6BA0T|VEY%? zKaERw+s$>g%Y>iwiHd@J4SEU~0 zo>?}!m~^2Vy6L{6g!^+f>12)?nzZ&~|c z*^sj|ZGZRFBf^PTJ1b$NJDdK)B5H-Hx-NtEZ>EJTqk>nuuJ?+sAp33>70oVo#^x>< zjt>jLgIDQAL%5*()ZLd4hbKn++k%ia(9_p#gSAZj(TD5k>8>WMaJ~$>F!%A?FEotw zjA4JHX(e$*uAK${UT#CH;h7cu&Jt>Y&*ps~kh#Q=Ga6(d)WsQn{OMqiFkOFZ@>V++ z+?j`*QUyj23@&A~Tn6|3nVwVQvM1GqL^ij=4(F5u|P(9V@(L>h0CoXoQSyXo5Qa7JL97Z z$2RN2XeCcfxF@IFDJ}iX0IE_69lz6U#0>GIZH$&bhx)Za<3X5?`2%=Pg5JS*OOPx- znie0`K=F@&q_g`!H(Z%d3dSOXJ5QW30euEq2o{ukpc|41IJc`0gQ?{$7Onac6KjO`Pqrei<%KOLCGzizT^%L{jRmIa`LIe z(pd^`;$WRI)=W%yi0+KWqYKa|%}YCJ6KjM94PX`H+svz&Bfi$)QF|vvT$NYGe_ntt zb*d71*xp<`E4y3vnOz**NFcewvj-Iy8HDbNfDR#Kpnu>*vsdDM^;e{6ntPmSO`k9Q zATkuHWT{z{>!)PrNDvf)`3g%WTIx7e+ur*0;xj&GdL3fr8woaC6hQg2jpu`kA4ehM zCSM9lqPGLmcO4a!<5&_LgV%Tkbv!jmy{k=YE_qq(+3)jMTJ&jw=lm<}(Da|rLsM^0 zT7DcRxqnL(tTL2~3N@oFGz(fi+22|C8a6qLWTZ9sYfF&PV> zQCjX=4$h8|6ZSw;?nC&m@9-wb#yIVx2@{HTAPy#3`js4v(t$iuZLeB5-SFKkX<|zZRG@m-!d4|1Z^Cc6hsI z><&pvVj1-cE_&r*rIxy~e)IP~o9WKbHuj^jpNL(hG;1>$Np7PkNNgrJFl?Uo7X$xNw6)=Q_2|794$OuXgKy< zEC?TXZ(* zf&A5QFIoo&nH~>~2*ncM>3Ug!kwMIkqyx;RI;2OgKOp(RF+N8U<|4ke|8W<60H${h zI}4$CO}QTBFmETn8W$bz?Hm$eeMI~ng_FIF@nM%9SuR0753pt{M-eGW+an(nK^p3e z9q2Yr+Njsn+bgvTB^4mK_szb7oxItObM^YUe_(lhNNq8vroc!Wi!g<*NJJV+wpaxE z8N?bgq9xkRed!3gJPd*ABqegs#r}2Ubpi>fFHQNp9)Ud1#}EvvXJ6%&rI<_+)G2v^ zicVaa#Kt;Z&s+$!jiJABAan$>&qbRoOc_?;=s5`*tc|Gk4oBkn!_zM>>4Z_S=tQKa z-Y3oszXOIZXwkn(VFBxsS_aS!d?Ic|q;-EjoeVetIErV@52TMcZDg~eRSM+M$D_2` zrCKVIk*C1AoI38Kx2M7R$*t2l) z#(-RvHeVPO)@$X+!!c*2|F9zhtu`4*O9;YK-H|u|gvCI5EWJ$%*MauJL#3JE>XeyD zTGBftLP=ipQOD;wmyp57GQ@pum#bcoQ8eiHXVSsHL3=atyi~rtZ2jLWp$Bv#1MgmL z9pUN#Y`94YKjP1NNgQd~={@Y$9iO7goq3Uxe>}#@SB63R3`1a4bg~d7))00MP`J~8*aS}6xbxKN(dUeF9yh8h|=ii@d( z+rl?*dCZd4Z}JuwH|+WvcL-~yCJux0ZVY8c!Qo%(PP~tQxSij>*w9UquRqW~j9FZ+ z6_+d_Sl=f86~BeKowUz$kef1}c6&P-VgFa*PJ$1!m#&U90#@PhbQ0i0pNPEmepd;+_H$b*5DKPHlVca+5n5^P_})pTV%S?f>g`g_w%yQ02by?qEsX7^{>vxc zK=9c?(TCPPFe!VP;~WWdd&oum^}9WMs3WBC6XR&~f~SB;lF;jMjL3%s<6(uHr$n6P zBhH>PHXD3hQK0B)D-`?qv>uH3(o+~E0S)%;nV$Q%=8?TEOssU0RDPrIT11#cw{!Bi z0MpF^3E7Mm|l$7J3HT-(CFzZP7L zp+PgQ=V~@Y`R68yj!1{MhW3#OWqD#GS_BDl3RdUkqDucY?7_|_+^lL>Br+=zYzA`3 zfB3OSCtXH((%np?6T)0R&ps$NKk4M~{hiSTsBN*Zwg{}`W9=|ldq-iR18K)B+*6hx z;S171X$hkhe`T<1J|jS9Klhl^_=24qT#m0u+~_+Uv#oIwrbudUzJ)zBSGZm(=;Ewu z--H>%OOM)Nj;xR+pq*P8RS!_HW>lc3t#GIhOBb5#_^LC(CxyeTEsD14VM!I6`>j4H zfc?}^mj#r36BuGke*ATDFn%zk>av@8e?$fA^3&#WMJa#hs}ZU z{L_r?d3+G_x#%_Rp0uISdj`+_7bh8ADzZGP6$|>i(7oZ9?_|}(v1#Ra9p0poN5CV9C;Z(v@N&JatKm zB>~0cOIdHxz#9~rxwIOLEia+SLc=Bn)eDu+b(LBYL(3uQ?5Oydvcr{)oEog}bjS`& zOqPMKY`Lu;@Ponm5p_w_4q@c;Atr~i&i?Tpyq(GL+rg&OPaAA%;-WHZ^iy|UD;=3};t6S92Lj-fm0lSW1t9DL3UH)6m1yX#!;!LvZ zO5=Pm&l5EJZmtSC7nICIO(X7-?-_srgc?XMI@|0YXV+N$h`qT;eY*=PSXwzdKb(Pd z-A*+Ia@V{U=Tw^MbO~6UcIO$awbx2IbbAtIN3Lsvco^P_`Tta)3`~oHSCG*AonVY= zC&-p8#9zG`vq&lT{r^-TyTOK)%NaDPZD?w+D$MIo;T|hiv6Imt9C7$dY7hnCUyD(E zoz_3u+6rB20TsmNc3IDl!v2!zQ1(*yz!>tK073lWIiJoM@0k0B;Co=w_xKQTu zL&_ag*yVC7`dRd@3CuD%@W%4egVh+Kbzw3R1PsePS8hM#cGUdUFu&!uTd{|z{AnGE zz8)$jDzZ?-5}`>aUS;$8r7z}-4i(V|zNC2yDWba0j|PU)dS1o}69Qw|ap(?D)Nad& zOK?!Q%izV;ochk*XmpI(t1VIz&Gp?3wacK6@m6r8Gm5ci9BGJTgf62eRd~3i0?m&| zV#^o}ODqaR0m;cqjJNwZbt@S9+4>4dt^uNZC*I-ty+&JGe0m(kR>Ka&KO0C}^3f&ZOo%Z9efB%UmeE=vzffR(V@hpESjiW#Et3Tut%#IXp?M$KUk|c%y)+I% zr7-knOUc+dDYNj@4xQ#diNzp6tluId$9b+T7{5#DThpD3X%molk0M4}3Q&|VzNT_z zBxKl)nMu>5IJ%08Y-~-UZ?{%_mp5LAXi9Z2ld4YE_2i03c#Z{~6a<{F4mA1+H4pvy z{_Z?93!tnfXq|3GO}UY@a)R0ke*kT{w{#^1pXjo3 zJp5{my%y_8T+{&(*TILpFYfb60o3VSDNZ)*MU#iOR5T#&{*rytZyhT?{=2Ti+|>WN zOsEmKZZ5gl+4&~gG4A~brf@Pj#h??szlR<$Ln2@vCurH7)=s3YbFXpX<7qqUfT zyOE6L8fVo+lrh?>4oYxrt4u-O0M`oAG~iGrmnHXsjNC8X3Z>)KBt^RD2z!{AiDg3p zu!Cyuqj??z-<414Z_Pe8O)SNWl@aB@=7|BSF1Kdf^mAchZ2ST?(4T1SuF`p z6MXyEFPdJ8(n|mIE-jT3l2W_N3moszW1Oq9 zCqLC(8g0g^AbWUyV`$OIV6)kLpN5QCgwC+vDK>h(zUUf{C&C(*ip;T?`#a<-Jt-h{ zc%sl+ty`vv)ZctBM78MZqG4|n7bx*4e|-_KcgSD1%d<1^5F@BhwbP&I>w({Vif)2z zS!J$Qe~2Lv$3~At#|m)NygnBrMg1tf>V-b6L-JJeaTnUvour{EuM{^VN77=7;#r4q z;`S_tmUaG_Ie!i$u^N;l?Bha{$2M_EPD3-(0%H&(LDj={$_r*<1B=_=r8FT$Xy181$fx?uGKC>hiM?Q5Y@yx$h^eVwC2@D0E zj>%|za84s^T_ILO(U1zMvG$>(Phl(EARRZSmn8)jD&hyu0_Uh9Rs$nq+{}yL?CM34hGr?#v$5Y7zCuJtJsw#*m5@E%Q^#d0=_SL!nB*{AywxbW*o>5np<+NreMjql_UFj+Mm&pya7O4gJ(g;-e_nz`2_cv231c#0 zruUA3hOe^dteYkP)TQ=$7j_!tszN3v5cqQvL1*E?o1lIF zLDHcJ1mm&-khyd>QFAd&yy?bWZ6Mg?G7%Tp4%mXLI6HpLWl}Q`vu@?Ee;c z+_TC2R6Vc=3V7%-0iX2mN8KFA)f_mir>#c+6M8F9S-)l~g<^oK!tpx6$1*Uz;%*zjnHZP+$8 zIQ$0;s@XIJ6U+KxrwAfJH1L#EMHql!_6Nz%nZ%E3i%hl5e}cBYFdlNE+%ViruHrSX#8#-Vg8;lI=zLnSr_V$AZU4E6BUS z;Ad6ag}_VT(Tt(FxZX=EwbXnaPgAzo6wZQ*nb5e@odH^!q8ahJ!_CbZjn>Cc!|o&s z9f~W2VfFvi?&r$Qd=O@)&oOVy(igPpGgH5~7u|}T`-$ZW=gcWqTU5ICUZ{9~d8$(g z;}2~h_c#~KEAZJwLaZhM)I$IW>bXAXkOl{Xn77E8Pb-I@RfsoFDM{4ocS^P8sF!rL;mkc^(HH{%Du0 zrCIN7uaMKR>urbNrQxIyZCJa(bN5W}jbC+=EeR?)Y$ty2fLcf)yi}n}!W znQY_p$_{Z=z_^{2IATfn*0$;fx-+&&OXD)bO&0XI0`Sx?6cymn(f*!2`L%F*Wxt9! zfaSt;K}i}7O-kcWM^kOyB1_rN>&!I#Pt3qkl- z+jYlxx}CM^*ZuPeE|EvL&-w#Q&rgH7SNWX@y+kTNk|7?14CK+2;tY%jO5~=Gqz^u& zB2IUyL@~5Hydtay$irv+(mzwt+~`=I`Q!o3anMYA(N55>N*lZwc7J?UBiA_OFv*m) znBIPbd|A>obG$Q_a2|gqEC;6`4N-&MxTd@%8V(@AsT?~^nBG)u0OmuF+mj)QKiefyL_M-O1e|01rivH4F1 zEPHp<3$jj1UZC0CXg4)`4^s(NA=~FN(g>|QC{%0TtD(@pxzUY&4Qs2!m#PRma;@_L zd`%%&`MkIhK(T^^F3g2p7xJ%wa@?Dy4=4eUD}xu;CJ=<$-CagzwCvCzSblV7Y~RO- zdvjpIL}D%8y-WLONnp{0`(F`~Hau2I?jybjHJSt8w8CCZ;m|Tw9s_<311o`$3Ki*C z)0`3z(D;3@%rLsv&_9~-E6w^ftc2FZ48thh^HOIQMOsU4H=kZs34@X0O9UQX_q(cT zwRm#ni=$NHaBZ%4J{=^}jOL+>e28bHll>lt1JEt6IRdw87;NhnX6RarWUtyGg3{D& zO3f!u*>hK7rLM|jT3g2(B4dMT_pPmN?E(Cp90)n;3QSaMUOM#n3wh@C;SZOw{&N9| zz7ZbOcZyH=Hk#ftJ0U3Afg@k6j2J_=N6))sD%Tef5W3kLQS^X#m=9g`eI1yLK6AM$ z+aXyb4Ezb*(goN5=8m|)oUW*z$|w2 z^NUrsDbH}-#9jN>+0{>IJSNy>p-pM(CD{oO0who?66%QRmuYjOv#0+}nKCeXpI

X)*0`@H%FW@cAMb5!W*_?yr6J$Ufxu=H%+41n7Iw300EEa z^(uNV7GsNJp$g{pL$*)V7`(4VP*4(ZR7HqIX!c0wW8KW!V$Zmmdx8^kdQ?{Jww{HS z#KbMVNFT#+)S6o`XWG*7bT~&(r^ny7L?;9e!~SmXNY<&VhozmYF@Gax@J11cRY@P1{Nc=}6m57q1Vr1X&jdQd{+yuo^SXXSBhc{oNNwfEFT{pC~`A zHPP*K<>a&qfS%g!f{2bm#{hVTcyN0Ar5_O(Hv}LM`neSr#VDkic8+3TjuJjpL6t^$ z@KHKnt74QB>#uKGw?ZzN0_>>qUqPFhpWhmZ|R#kpz@#4?Mv5{EuV^x{F|D3LwEp-$6Mut$F~>Xt(Ky*6Zcp1hWjy zAv|yJ@9TrU-~XiAx3!WD=Frw&lnbkQ^?zcK(^R#l0uCKvC$4!;D6S9}g{qAMSVPX6 zO7TYCDS5iIyw?C=4e9h0ZZ-NnD*}jlCXD&BXqxHubwidu`yV1Kj>HOP6nFe7~EoZt-( zg#%f$_&_@Hv&a)j24171E$Ija*K5d&GGm?D?dUc>=h;&&3D4-Ymwi?8U+LY^*6WcE zj+XNjDjlr(6+d09GGs*8_Xsh)4!ogc{=K|VCg&6*ObhrOmO7wCP%cFmOBc&?|4{g^ zLQGgg)9)LfO61Uo6MDKi1uE`HWU)yr5gM*r4$-@`$IZh-W3RyA==JRVkbt6p>WVi5 zcP|Db@6S4v9o))MRO}lukW+|*=PF5KCoelQdWc$ow=75zQ^=}u6-1}(e za&`NJEgty$`r;{K_rB%eAnkgbgd^~JoLt{=T#2BRS@z98HhR>FIARqf0HU3JZY$R)GZ&!2#ec_wj{zM5Hh|epx7%jdY9sVV4fxJ>y#91l|Az>fF#)Zd( zkRuza9)=)5X2Jq9Mq0n}Di#nzKq{p6d|+lByR-!$5w^Z=UHl_EL#;LmET9kxo4mWo zf}G=&(r_T`_=SxT~#mo|~O(*<5l) zCSWpndAI8!j%8QB3Zx#tpz2pSvYD!#JjNDB84N_FLW@OK z5^p3Cy`BM`49pAR$kThhoTiiwR{usbGIbtgbOA2-y8tA8Z|&09|M-} zV?blT2jwBj_k7IlTww_YAt5jzL z14r%`UW130weR%sM7T3e0~*Kxw{2WOHyxW?HW1%GLs6u*@*6x;lLyNADD?BBo&j=hYT%J1Xtf?cx#UB-y)GIqal-@qd`V~q7 zG*B)%0MZtgUci>JhUgD6{@b#hAOj4Tf4)^jmkc(DMcp#sDqGh_FGLiijv#UtY0HrL zRMIei_MO|NTZRsYj~8*LQRmGZ@a<*(m}(6WO2!;GA62Epv$*{G_qcOFA+YHSoG=C) znWSVCkPN&;`tC+-&TGg?zrv7p+kei6>d-#i&nY_}`QP&bBgITRD}$DUmQ*iu zKH{-5Ae(}yH@Vmj`fKF~uae!=l+u=Jt}O{AAQx+iGIWSyZDq*clI3_zJpcDd?$F^( zmX_470Qs;^e<#Y4b7@KyoUpWlXyPCJp-23Lx=#@1p?&Lbaf$;Xb`Lz5tffY?5;T{r zAtlm*JV=pvAIrOrKR~%9D=;K^D5jTtOMDQckS9_a-_x?DTc?8`lemYT^vL5|Hk_ia zcMSjVe?K`b_j_F6PN8hsj?&4^RiBKrZp@662kUj(cDS=rP1z(%ee&l`@U;{@zI@%5 z*>aTDX+?vE^Tc9&T6Lbqn;U)emSn9O&yyy zu*YqL+f4mE6-+N@q{sF58;G|4r0wcnHxXyqD7~2zY5`k0-uAQK7D=e7x02>M)SlIz ziUdisi_>v@f$KDcz4|XHXNO!7Yt8V_i8m4JGa@RmH`gNK^7uOP0*hhWl1ATMN{aN} z2MJsKDKDq?)TWeVG{?|F67dJTQf;1yw$*;|fi1sr$&BIb#-vefaDUG3?F|LZL7Q* z6hdZDk8jtsXdsRB1cS*Mm^tBE9&%Y3Bd{eu4~-!X-8fl*uY&gkB}DB0+=s4f!Eder zyADo^C)r%$ebINSpF8yGPkCLeNUo1XaxzxsbPze<|A*_gCNf@9T#WQRvTxg%?zLRv zvi|&E$Bi~+HJF2a8MnUiyJq}3AmjeDPx+3z!zJs0#toI=u4yCj6`b4tLo4Q?ipEvn zQ50nXf^Q#)3UUZ9aQA>5EZx|?>G(trtH+NSj|{AsTHnagOL&n+vMcKeuj}d-yom|* zNe=dmlVx(8r7>7R&ZvNTa{36zi(MOd=)lUSUNed?a6jHp=bq+ntRWxOE476B)jp75@IRd@r!TbzqG z6)l*X`BFs{hs8@l0?vGmhb_Azq$$JZayLS1=*0`zRW=s=jk-mHCYb0U`R@!SEDCtM z5tIS8*ep~|9-->6_73t#wXR;XzS}eVXmnDp+xsOT=_%*!wa)te*UhI;zeu@3%{A{> zX9Ha);yE&Myax1ycB{G4xB^jXmI&;E6^qKeVJ%lEZh4r`*L^Nfi|X2S1bwEg*msg>S-M4PR@PefqYCd z!Ck-%bi%kjEyrV5gsCvCn)&5kfFbT%{AWtim~8}32{pXMhz+ptxW5%P@F(Op9a&bJ zGhYoyvy%_ac}0z{Z75`?VU&VxycZE zEoS}2MLq_r;RmKAPa>!2 zAP!$|bsMKs82#$OtB1WO27K(yMStB}8n>zVj6WFqW(qzyVn@BBxBi@yr!>{@xPMf- z8#{}L9zud(d?ZulhD_lcPs*?@N3J>*yx0b?wPePz%w(ga2rMHgjUR#Bntpaph`%8g zQ6Dq;6CY!#^h<^|0ZGQq*04uIAJ?Pb*T4R_Y=YwywyW_xRNWGF8sjM%QFovAI(de-5mdab95MQ%8y86lJz}}JH zk|D*q3}rcQDG*bK>HmsUuFfn4Z#4-4(d-nTjAT zjODWi>b2fFyr8rwlTjBPMfkVup}4gx_^r0XW&$(G2-r5!wn0kF=d?Y)Eo#kXPG=k%NB<2aN+Z}epwFddzs-WoXug}CTY<4~}H z^^8=WBkmNqZ4Q19naDNfsr;$Ghyt+|?#rZ1{S8%r7J<0k8qs0C$-3mhmsdGWkI2LS zo;ft>j=SN9B;zrgkc8cgBf_v2+L)FQ`dh)SyaCs~NXbm5|F!^l2@an|9=dj*_vJt3 zHm-WfZy)FL)Y@N$`DkObNSW+VxZ$aIp%aq$Df&I?AlCaKK zX#llr5RFGO+oG0b&+@4au$v)SWXdwp32WO}ESaFgi@(ntq@qw9k3Rb^o?3yE~(b98-&qFXB zL%(NS>cn=1N_RQu?799+;2h0xGUJCXaPAHx34sAsF$2g}muO`4t;x{$AtcSx!V%p? zk++-V8z(3OH(heKcJmv399vI_14HOR)xPq#XX6OChiJCdc(!X`U0rA^H!K7w9uVuA zP1lXPIVrtt1b<>vNt6!HBH7+TzE4%Nc!?K6GVcm})%x!FmRDGez^&@S^DIWVk-aRb z_IR)aQ3sz(z#9~3ThW!95aMkrJEQ#XU-;8-6N&&qu6PfdNr$!H68#IEYx&n)O|d%W zNs9jRR0&~CIc(d)2tMKTc}C!cZP|pfZSnPt61=!13>8`t9SibW;d})ZRU8;|0&4=+ zEC?>VAH?45Wzhvi?btkdYj6^m1fy?W0tkb?BO(rXaO7?I4F@eiTjMaapm2s^MqLtr z{{k?~RKFKmMK)mgIWEpOre}R_QA=rA>kM*zJA~NQGRe_KT&CasRZ;ltl_SZ$$LU2E zf;{8;D*U98!0m_Z`JCM13A!XEdZ{z8mL&!QbyRDv;FMKG)m=oXboh|P!^DG0-X(;` zNRF|C%CTa?J5FQ7HS)A+czX06QSDVK;^=x}k{13he%#o*t8MM1nan=bi4Qp(eP^s< z_MM<*RXSVp3|l3PH307}mA@TOPe)Ay73XZww{I}n+Tf9yu7Jox7ghY|lOXALItOJQ zvgsT;Wx106OJLo|O&ZsTt}6~Q){Q!2U6&v(;*Dcuw>qNV71cU89-hR4M@lM z__H=XNYhYlESrL%l**-YU*whn4;4GR0SNaoQj02oK1dMhzEGMdLX^3dJbW_%r|TTe4eLum)$&<}UHd~XW5M3zhdN?( zAI9!ZA2nj%L|%c66AE|qMPyW?mC1=?-Umbso6~o~vIOAF554bML?Mu6|8)C?km6hi zSyR#dFN?zqOWCECS-ZI>rF0v2D05Nc%lh>Yp_qY zKn}<~KR-=N4KBv~unVmwRj3(xV}fhH=?1bsUQZbTM5zs%+^y|<6-)Q+3)2KoC654q zDCmBzCmp+U-wo2_19UnOIjCX1Ow8Vi0%-l5DV4UvOv;KzrA=6)S@2{iL;OS_bX0{R zwK9bJdD2?xy>Bhao@<%tBYEf85`1&Xk)JSQ$YkDQg$Ocbsc`MtWzpX7skU@Un#VjW zJeoR#DWuKnQsNcAFIXDrvt&vn2!Q!O#Oj?S(}oH2^3SFuL%HrMSI!R++k&#uLwVfx zsqM3zeKD@gIO4RaP?-(n%rb~SP+j#z9pR@R-mCLSca4z^Qg`NK@RqtyEFls=_ z04wnMSdvZJAJ@ZH1Duzak!-jEW-VS_P!$C~JJL$QH#M{&*M-H{SB?vJs_I{JP(*Lo z+#4cx5{~)5&;H#9pHSF`UA8ggItH)vsBrjdYZULCXO=ZM)8epRyXn98ex354-8=|W zwKwsb6-sTX^9zDu(8BfX)sKAjOQ2sDmqwWp#mEKHP*pJ6z+`^Pi4s7>Kqs8SvYd*K z2aynrKy?6SVG=;S(1dcM%D6vI3&jv3jEkvK!%t300jU%1<6dLoxIONc;J9mge)tuy zza#K2*qVQ?`66xjkd1u3>-oWd?H2Gz`n(oFwwM;5gi@W%?ES@TM%*(!!9eI9xpz3; zg7OXwUyhd^?*}srCC8#uQls#TJDs=WB~I9wqfAVYogtY5~8<371ZxP1xMs5cAEiKZSmxFf0=30>PZcng6Cen z`GE2~EkxA=UBq>ATF{bXHC&Am3}Ijtsjn;|8bHb=xk;6}q^@q2u<4=X<%rV02EeW$ z5=09+Bzf)jErMoa;5s|VKC4_7z!1`SDb;D;41ZIDOonVJ0BMERg>O)e78c!9c>`gd;9x6u{5O z_!umRXn;Q+$hp7^4O;|HEk5grpPOd^`y+fHE$4`Iw~YKZpEIM8{=3sEY~MB40Oh|p zxide0hOBU>aJL*jI&K{p!K>FNyPsO%Aq?9^MuRdlgD@bU=JOAEnWaiVlnYS9#&P# zzE4J12&?4rC-@)%5CHswp)Su{`gZ1{68<&FsNvv0etMW{er;{QqAB^XcVR>TPEqFY zfL_7ifxR9&&@VZ2FD zJfGj}FmVC~9SA0lFjvv61w36v?!28Kw&CJ>jn)^R{q^XcKehe)*QGnuvUjJf4;Pm~ z*C{H}b>+V}P_$8G zmmMkc0L*taF@QR<%W#&2Vt;}CXP?Obfj!lvGw5ZzN?F2?Tf3FODUtZGKX;Jgji`qb+ALWE{@omB z-Zr8ik_{{TfEZbV>r5UJ#0l~DE}Kj(5lNrc+7gU4oU^uN+*$8Bs}q;<&2@SAYKe&) z?$h_Z)*f;SGHRVp@;T?x;ly=6Q6Yg*3;ZxZX`t4V2}tku5juytg$v@LOpq<+wu^G- zg@u)zXFsh(x;+F2hTy z)%!PgpyW9;T2<%E<$0Htr2vLzZ6fGGILBA*!=JHDk3@)gVaabRN@X|glp_AJ!BleF zE~BpYsQCIkPj3tYuE^TNfBcyr&A;}(ZcCk2g8od%1OFVRSD(*B%M`Ke`1AK~>(GPc zKqz6)aW-9N*GGwpxhPjnply|(GniLlKMjK~gc=6!#oOx%bfI_28~nn9 zf}XYPj5$WW6FAN5L}h(#=UsC4TXCOs2&!FpIzQagNW)ui>jP0DK81C)|`R0%{;keX*&N zd4e=-818b0-gVQ2^RPbtxD`)6digm45dhHO=bdrD8;bjOpM`1G_`?IKF+}@${OH9W zd`+v0sa*S&L(<`tJy-57ZGO)yitgeUKCrn{(0qf;G1AE(%NsR}Aoqf64bFFSP2=&d z>zMv~m7T0GU3WVtC5Zu7?3a>=)h#;lj@?qm(My4h(6i zI)3Nmne&UM$@V*p4huiF3c!l}z@r|XM=#l4F$B?iGE=FJA97PEZt04a9pqE5^CND3!A_&0wDzP_81y*&^&>~i1HDWA(dK;kl zZ8_yz*_8SZw(UK81=64>JH63`C0&CCbBcyKVFutI!KFBR zXGlD6KBu26x0u^(rR-GHS#Ay7#)u@og*OLMj7S4Cw3dhxL`PYm+|` zNrB4trl)06hJu>5kwqa;LVmTnIe*9O#bA*XR8kcg>a@op8JPzoD!3 zkO(L)L^ zj=lLV=}w!pLl`v(3&r#L_j{2)MHO*Fg3&-q-NHfn zq{0;tvOE;%p)+_6`bl;HHK6l!9QuN`?GBOT3eHZkUw6b_VR$NN6TwU2hBkwirccp zfRV}aA6t(X=NVBteWRygho;|=uemd1y-h2>+9j;;G!GcYw^cT|d6tdXs=m5&E z0@OL|Vt6HY6dU$*rF(N*`mRhk@jYfssbjXmri*!E^{qPI5}`A2u5Fa(-H5L5Gi`o<8TBI7y!!^!iok z^7(~=m6(m#@haRUm6P?UPdq++q2Ap!cWC)y1~}MuBz`fy(pUL`yXRAhY*e<}+yXmh zOi3kr?`DOUkShaE$(oP=mH&iq7CNqgL@6`Ul3<_|0Kxg?fyo(c(3VLD2z)P%w&beJ zr~k>3w^VhzqZ8pnT#_8Eu=*$)0=$aK-jwt4#2rpAGNil@Cr%#$l60(-+Hd8bN)AB{CaQ4 z`2G~}AEWamN}E^eYhM&I)N=px2hA->Y-3fkP|9N_AWIS;NWDQYq_)sPROpiJ8umR6 zM+@#x|6d!m)$$~(nPenWwI`03$5Pgh-lwXNs!9I`T9cz*o}3+QsdnS@ssn}X*T$t+ z7kSfyKEg-LKm#>N_d{?GYLN6U(Ft@cN;v*oRP&Uf1uHUh}^YBE-wowtw>HzSevgXM1ZDD6^Q*W1sw)B9gyPU)E$#3;N{@6C<-#vOLTxTWn z&`Y@d8UYwt^D?|>9CUA)DiO=twMe6qOKRZ5<9V|te4{Hw1|`N{k{iP#C}&{!9gCSB za*W+807SZVW6^^En$y(wb)AXlY#)RB&t1%pEF6kC2l}>p6SmH{uaBsS6oq39Lcq!S`f2xn@x-*twPr=3{3@4_yd9EG=VE#x(8vR+w?rSH^?YC+oGIgckBz$D?Z=P_i3qA58ek>)5sMUgfkf1010 zcTMsSX%hx6h9_=rk=c89Mz(tQBdbf5!JH<3LL6tz(ibhzoPnB1ihO6vV-yeiNFWOL z9pmEZf%VrhY&i_Lt3R;;33x0SVZvv3o+ms690BDXBrUmF%uk?~H6;uv$esuyyVQF{3HnkxK?&J@%i);aQn ziY|_}oGmgMLqUbq3$G3nm*!19^m`(F#;~flmr{AW~%TpMs?)Z(>gzW>N9%GCS z?w_NJJE@AKBItR8b|wb2HEn1Q=y#=$ER0GFFqq;d14rVG2nek)#WQ~8<9 zYk&9Hq|w&Na?Gx0s{CeP^iaj;@?whn<8G5-W}6~!3(3jhzKBG)biP&0 zHmW4<_|&S2xgmZWf`qI<8WI^i4G2z&bLh*0`8W9!-XlK;>7UMz9Z(A)L@#=U{5`vC z6Zo*=?fHT85wNV0DxuaVBk7)`Zp2vWhm{xEYBdZ1r_s3Ta%6eu7oS67ozQrk$h=XENAe7=RpT+V| zyK&6g-t%6sN=E3edD~gS{ah(Gw){7Z1$d<+ojU>f9|_Q9YT4T8bS29_`GsQG!Uhzj zCBg}!thL`3oG21aRTvD_h6yih3T4eeU(S6@hJb!}3ctYMkxTCMC<7VEB2>Eq*c%0E z!AgZg`@QCiV(X)%Zpnwty^Y55`spI~#m4dJ(>>e6^fT@rHs{ie{uljQ_gr_(k`^2&;Z!5RL;?eCdyb3yMT)u#u*#^F-mKbzK`D zaNUGqLf-6KM4X04FjkbS6m{BcTTJevn1i%4YQl6DRH^)6ninq8b*7S|?z2XKgmMiP zjg_`AsDU+*&d5PY9Nvf$%yHl>P4O|+;AocUtAU!eS#d^;3!Fmtd$j=hjGae&%7MA3 zqUJ4C4JU-8Bc_Y*{H##IGOUQO{mi2Xn1K`sGy z6M;*EGBwZ!_NZY7Sgp1(4OuEeY0+}lajktOl0iTT)B{Til-X@v9^Zg}P`C;fRSD@n zp?dZAVl=t(5SQRVwKl|!2Vf&V)`p@=zw| z_<5})tLL#>#oh0ZASa&qCM{ZZN{$A5jo@>3<_)~4DM5V~zaT$sNMBrqP#DbprtQ%B zlmQH@8&3!QZ7y29uyP#R8!c;{ykshJ9D81^J&gTyr`yY4^Q*WHy&hfhDJxg5<+X;r z2)H$smW;1^Q-1M&_x&F?+JBj1&wfo^GwI>({(aFWMB8~$Rq3|;SJi*G`&%qNe_jZ= zQ>0+a_hLu}0;)hbHx!^A)0kzrG|YhaNPmt2uZGFH7P z8$GO;eZLPmdD`=6w2v_>BQ;d_g(!_%OFCd|m?TvbN*-aTR7e?TA}i_*0*K6;lH&%- zWKU5Ua7umdwb<*(EwFOoQOMzY8tPOG+-SL;!WamJ+p_Z~qrXqi^X+Rs~n^LltjbEVt(C)H*KMK)}X z54-Dfs4h1-G0bllzKhOb@2 z(sAT293NCna3&(vzZ=k1jeVwfMwUS$4~Pj&bQtoYPEPO9N)PJ)`p^tJ z$$`%FpI3qynV&;niq?w|c@f0ry_523bseQ_UV^hEMzFQAbtRN2S)&gh>qh6kxd;Ja zg=ePl06&R#A-w#wyf6jR;PSbEl9G9a+pp<1ay~-NPisi->_S&zNb{beFbz$;V4?Br zM^lCo`uF26?xuTn%Cu=wRvAko?r-72oAf_GZwD~^k}*W3!U9Xj97d7_{4g-EF%oe( z>vSeifjpGL1J}f)ACK4i6+EV5mNlXwf}LtvP7GbqpejbIT(-qF#$3_A&KIh`b2Hv# z#}!$#vM)B;f6~R6xiA|2Y1Z~3Kh;zvc*?}}{fuP+{Y&~|rEn>FS21sGtBKwx`}vDw zi83o5%mBJek6a+n&-C+`D8X!DP7+%D^c;vNh>YSTBDF~!YcWlPlQB%X)K=MFMK}Pj zN9$AiN2?qg(f+wsMvd2g=Eg7Ao3Py6HnTGK{Y+Sm>N{v>>e4XJZphZ<7s~D3mNx(; z0>1Ol!6TqwP_mWP0FW^bNTW6oGF1$Q*1vIugUet>4bV$ON;UDadfk~-_}Y-;M1!r|~3E$pe3@75L*p zh_J;+vYU$0l8X6Qci$wX+MZ2rJ>I!~WdNJ->ZYfuDVCXd$oVX>|Umj>Wl! zaXcQa;o&}6va_jFgW#js1pBG?I}F7={)?ZfwDP0gdNHE9PmDU=N#ct{*CS|+j#5i?)DYgg93k7}t(YKpuv)M?(%;}3^+JnO=D6-!%(M4@3_p;f*z7+cDlOpn&RFSlzdkJ}U&qD9iY zOUZt%BT#0{g%3^NXUd@sW!I?sxEju+!?-1eVBd`GhQYA-9#)`Dwm7^0SV18&(WYTZ|fIaStFA`0ieB%P(4^Z7U6q&IdHt zg8sC#=YE|VW@$*3uY8ej|O?V=G8U#2&pQ0=Hy!cYis*z#BDMo(~ z+A${U2hSb9bQARG-cPDGa-b|Cy}A8KJyoSDIo!I6Mi!5qrzhiB)|A2A*0Uh}{G?D% zol^5<+}Z)d-@{z~fYRi((?%^&U~hVSY2*UFM6cENlHLt)hy#m^=azGaJg%I#mOW`M zc!l0S8PES38WU0^X50G{Pn(c%Y>JeRI}rD7;S*-h&hP6+QOJJ4vHjxh7X4ZvjT)kK z#he8)dYzQY_SQ)FbHci1(VupUc>?n_lHFRzL)9A=v?|5e_RbukxrbrL;Gxi6*FX2( z^YWm}qx7{Lk4eWuM_>Np4}vBrzukULow;$3=bXq7D9T0FUqeGd27*prIq2xshS85% z3pb2FZXc!sLqaC|7uK!i)8hZAmH+!y=qtvc?Ao{(kW+)`sc@`zFg16OW~`0t7#(|y zi}fk+UxfVCsP+kXZspcHoIX?h{SX}zf=uc8uuA9CannO~;kxg=WNcuO`}=W+Xkj*H zq6pyS`)jsO|L8pwt6oeajr%t9>*4+xTA`tn52=&vV4aNb1C+5) z-fjWT>y;NgQH$556Wq>iSgigqI=*zma4Lilaf;niR?bW?jw(!cgeVd&^MaR+qCeh1 zmk$UUici&-X5&V-K6fEGvS^Ck(BdIoZ$fa=u9|nWIYK(7*-uZjqxFuE&Tf{JNOqoY zXt-ZafnzCp^1-#}J?Z34yFOm|a$Ntgv^Uo!lx6U;dE}hqcBIrgg^x5BV4H_G7$>8N z+#UD@-0T1Y7j)Buh^y`Mp-;@h;&%9msJPv;>f%D;y83LLPXMn6`|cI$jV));3g~o= zZLU1%M|l`i6>r6S5F?ltMQh+lpeM<<#}D})jA}%=DtO6h(~nl}+>H$M#(a$u7Z&b& zO5}pS%Rqo(#Kt)OcmOjIJC5m3rY&7hQE0nu6P|yz9$rOdPV3aKd#a14j_XQOX8dQj2^CwleRGO?DIn& zHm%$+A4Z2fm^7TV7+a`TH9pB5!-F@y80alTYFzCaKN%}?DoB|o=AK^U*~zZ2{o2Ey zQ#|(Qt3Ad(({A`ao8$Z5WCGkIJf(JFaaCVBJWGgP6&(BR}s`n7fnT zGXcvUGXTx>@2J7+D!&!Z-wkEO(SLl8xBW2cgMbfJ%M%otc^9U$BH?Z0=7GPv7f7J2 zN|~5gx{XuQfDIK1RH%BVrp~155>giS4Oa^TiG;s@?zad;{vb$Q0#>)qRVY}@PAFz_ z&@9=ALqo9FO{yoV&Q>IfMzT@R^erZ$?m~lSfyG7CrmFA$X2eC5kx+tckClfmH9-IL zSi#CdLc`mPFWMO;UybIAi)uxd^vIrxhQhZh#~j^XO-jiO2^=%w9h(FL)GTkvf_tUg z!?82ktxE}bxKeX*YkFtb1q6)B5vfobsS}*PHU(O3XVLA<8D&c(q{hT}s|cV|BIESj z@N5X(1eTY*CTdfZZqBAza+`8lpK}StEkw|V5tuZVuy71jNfkgcAY%E_95HGzTNvKq z#I>*l0>!%dq5Q{@Yyqtv7mQ+IUIY+#+T_mFwTfMW>Mp)w%d>lxz^d`hyWKq|vdJ~q zPnofkGRwKW%hmtPQ5%B5?-oSJN;lXpmJGB*+Ye80&m4P8{~w%C+%0ya|G%#Q3GVSH z5wSj$ejw)AUXZHQ49jCz$a2-&Fn#U-z@rjq)YzExE)^1HU)Ie)p6E+o#A{p#$2YHH z?8sR)f-s!~Nc(M|L7DlI@|u-v8|pXaYsgM`_AaPmi$!+W;YA(@uSKbi>ykh)ndNqn zC@tqA{*|}yDbl6vn1LM-2h|fUjSIc8b~zfoxRsX@`nBpr`t`$cs}x)J%}{6KW5VdA zu7au@r9pr_Z#tZ4o+ym4^j&~9SzBW|6}p5-lTpetT)J0dTcvGolXc%sIhCN~CsJy9 zq3`dBTc7!_i!gl6!;Z?1$N_I4M&K}``qq#&pZ&9AE+A>Of9!nJl1`5q#Xgs-n`6FKB^bBdPhAQEgV1T=`+wrVwmIZ6 ziUWT@T1M9z@T)qki3uui4k+6+?iwsoTv(<%;f(koly{2#8p#bbBAz#Wg5f23Vg zUWA#1U52CtkEQram7{&|M%;?P`ur6*qxV$eb;EM4IaiSo>~|9t9oy~AW2Bf0Y9<*&ZR^0mP8yf4~q zLp4tA*N8%!AOni4grSy_k|ZPWM1hT5lHz-%t}GmB<^l?!(%&mfo^TYh8A$ENFY>F4`b9x+oRCLCI3e$wspTv*#mA(^0TI1=JH+O1leLozm~zH~XXVmH9BGDnJ_^ zg>DH~9!6b)$qr0FY6I5*HeCY3b&)htO6LXPdT>J7$kHB5&)XB%O*F^Zl$_7$KUgWP zNJcfcuD~C86zjKnvCf(+t1~9y*p&MuD~@mL)fv!y)7kq|U9I^+gR5!0qFbj_v|IoY zrTzUb>y0NySq7RUxcngMvASeBP0o{jGfyY`oTy;C-_+jO%K5yy6oCdu6BS{YGWLl` zH7mq|OevLBrE<7i5~7$=irFsu*vw7GQtBt#zk5yavUsY${-6m2Z41&-F_GzH zFJ|3Mkt|pa)b=kutS7nDv)}MJGvx{HG#n|%2Ab-X^HXb!{|*V64=eW3ug$%+T$A|K zVRaBC>zP zm!7zg;2|O4mvvy`B)c&=Zjp%6gZp?i$8-Pchv0V)Xs?7q0T1S1M0GH`{ccodWjGcBsQ zB%_-Eg=Zm2tzS(|H(gd7+0a{5&86;R+&YBzo_%{i?2}osK2&GadSS$jqmj8;>4Yk z&(LC>qn?=P3*Lyy^xj$9B$3gcs{s2lF*5jU>S|tWC}iit_%Zvh?HCOQb&7?FM4c@vHaoCSb`Deh5v|7F4y0*{f|g zd(|AqP|+fW2&;pEU+3S#;tV)**aMP#VEt$iW#Pj8O#O$%X`c=HjVp3*`AiU2N1!%@a(SpimqqNO)j)xb_r_^_=XhYBvpc7(@0>IxCM- z;kmGq_uYpObA`3U(<;ehu5w@2Unz-4;oXZ001BSw!VPPl$$D7=l?l4i6iXyZ@cd^d zdNbM}4SOSIaWeiQ>7)0odqWph3JM%`MJp7sA`W?m^y5q1(Gj(NOT>-l=ICg7$VKt% z1jD=O0}Am1T&eEF-9GPGJntm|Xm{K_R>5q>A93Vc#-8*UJ5+#bK9fUV?tfG$IOuPl zf8wv+YA1M033Mm1)|9hJ>SrTwNjweeu3~;4B}=w=`f-ovq+UOIF&P%WDRj8rgEu~>t~f8tr>2kRH;lWgzu<12=D+5mkyzSpl6jI&cdK`w zKVC08P8_?RU3Z+fj|4CdV7kG=;iboVbTA=hl7JJ@8fQK%(0h0RBIQY$R6Sv$dPLWw z*6XyVF4YM>9CWG?lF@mwd6PZam(HDM?uB`#%nqB+w_Y{AR;%V~2OL(C9f+uacR*OM zMJ#5N9R6tj5!dckg~~T9FJF^IlI$Nq^Ujxx(#|tmHxhm+SmMy=|MeLC&#i9{&Rb#$ z>H83kIU2mK{43D_tZDL(w1w!t+a3rkY1dz91gbn{9nb7cdfJCMX?0vQqo+Jt{ge9O zZLd5>6f&+4FKFfgwqdNvXvaN6eGl~TM?p-ZitHc*g>y1+ z3Fwnbp@~V|`0iWr2zA^kXK1ZXI@>qog=}i*I#>qwjfA?_`UXaj94_8Zl&3HJiKCr_ zNYO&5>eH-?wz^ptyvfF|QZ{wYR=e35rFiCrkuHvKBT_UzH){q4wXXR+vxMN7YlEux zjOitEspPd-SB>lCu?e2ot$8^qdk=lsMGjV*I%h?dv3Z1DVMJb$*6#s7ynnAnFxRV_ zF#w$uvHhjwpAT^n^>v6Xg4KP{sn6A0T+4L}0fQB!Igy`8{#ZH>^G*A#8@Pm!sCAT& z{!=0e@ywiAPo3&NWXMgHr-ftdc2B50WX;yVgUe0 z^gxwtN-@%fl8RVo7rio5b=N62IaCpPLk3YK(l!T+Q`mhmec9Y5aQsZH{sokIjFw;5 zZz9`8A3=#!mYx-xpjlugb;_l!o_SOMxAO**C# zOrVk`=Y(uMZ&`f|d4GzJ5qG( zs?|}DaAWa$y1uNM0qn`Oo40c!f8D%Ixxt^~&_Mk|uCD^4{R4&ulXnhgs@0*S z$=rLOCciWiX?k8@a=s0&Zmk{3wrWCO+)C|=z5GL->iwy7NbPK5KG3{7?WBrhG;z$; zd3jSkEZA+T>}9$niv$pc5ayOA4u6kLM!uhDupf;|6bS#$$V{m*J^2&1Y~-QP`dPaT zNukM_+_>uX)q&$=OYwEf(d043NXI*NzLlvdJG=(sC61V|>t~X|3EZ0F+%RDiKV*M6 zj3-wk3B7L^wUg(m*YVDlUjHcn|DSUkm1iYNrh|7!{wnb0Qj_%R{~xyADyprp?b=O3 zfFQ*srMSDhLxDnZE$&i^L$P9k;!xbZ1&VudcbAsp+TsKVQrvdlfBfGV`~CKQ4wA9P zI><@Zv+n1<=e(w0)q8||KAN2-0L@FR@wnaVz%O7mupyZ1M#Ml>;F)8p;%^aH*W1)1 zVjJ~MPnP(pM*UbFrc3*|>;4n&F=Uw4{-|x2=j6Fuv{}@xxlfUorpUUyr=OepMRd{9 zpVg`MmZJ`iS7qT!Y`?xr3+PNGeXj+zeEyLodzo}GBF+^bfov>rlF#mWC%#wMGbC5B zG82tBPt$~081MPEzsTrISTf=qRuEXza1_8iyZ%~A<@C;-;rZhHm%UtSYx#rTkJKvn z^|+CG_;N84U^K4mvw!0b8Q(j8d*Oq+>HeaWsMl>f|7`3oOI#1p7@+&3!|g#`SM+;M z$;l=ssG!+H@LLN!828oCu)|O@RWSV3-~wWU&MS0023El~G>5wNf!OV*e5IvysK_88 zxBxg23svQaiG+PcH@`@$#@g2dUu{|`eOg`jRQ$GoPs!p`z^&zS#QsHqK{?s-KwCwP zl{V$fmOZ`fTNx*F&-~8y%}hZG$qILq*2ZWscTA) z+f!DUcgST`-J?%~9UBTAB!$iuolzV=BK=DZw=7Qa3rm_L!s0kUo7Xl{B?(3ihfdCjr(jKdT_B7| z`*PU7>sdFC99%zHm&~Rq$ zoKSgmF7+KlQ%GGIluf|dfIfMuFj3n`#;dfbRCqPv+Zis4J>~grDUg=Rs^F>m@Pdfr zLvtD*-GY|I92uB5Pi%HB#eR9+#($T*6DOL-EYd-eIJi_|B4Z7)%qB5gHDB~Nm4Cc|Lb7o=i1B#jaLzL7%5|?(0FCG?Or2Z~mB1+nwAOF==IOl&tY<(nOc40X6a>XOS zl`YYjf`9&SoFXO(cz=3pD*M*(&Vunl>)#`1G($`JPJamZZ(rjqtT~4St1C?0$(ZXu zT^>zYl>$`5hg%o7jpfd$P_dK}?Y!%Z2L!DiqJ4KJAV28&ihOMKKaZto9ENn03pOTA zxB3t15DhfsoBx&XG5p^3bd%Kg0sHaVfYw@9q}JA=I%(RC=Wb<=E3%tO8^ydp0KfvK)pK-0{$|BSQ-bP z|77c9lNrAKb?bF+0Hh^e2@p7z-l}|zu>R%kC6}ktQ$$ zdU%@Hp9?l1;W7zm+5jDHq)A;tp_z670E=BG5Fw26g|{*lpO0K5M{Jg=PIg{2BRiCI zfQ5m-!;Ao`KALkx(w9mlod~6L58j@S{x(HFP5C~HOGhPc6Va>f6F}`L3%?L8KG><% zPIl8gccGWC8}HdzSjDc{OFBT|`R1(N%0i-H0LQ%rUlFvD6~x6vLz<&?p4G|NT^)Gy z&PPJ(h6tkvmI(9ULB8Vo{{-DvNIc~~D}h29JuI}p*_3RO{oy5)COym_!X?^;FSSyP zdkTMG39pxtW#G_4Eo^!=?8F}1{*yRiK!q|g7%&`_g)f=wFX9WHrcsT8y-WnXjZ53p4nMEbx(3=WTM;YPrBG8u&7D9iCNQ~Z*PL)u+bC(f+lXg?!-$YlZ zL6LPo)9<%_KlK@Le`_lK&`FuS@Nfu}CWh>IZ55dd$glcy>4Fw_wGAZFrERyqoH=-K zoG;VS&1t3CqrE&xKMK@KlVsC;2b!XHJ$ES8N@c7uW5OW7r;nOEEx#*GT+#fJ1<0Y= z;IpD#UQclM)6z}QH&PiS+4)31Tu1|yfV@`I4$g0jy+J%bu|4$Wo5)lI`b+w+!{^k| z8{FQ#EU>t3=G&yXkGQYp%9#4=B2Ms$bZ@3Hq;|Q@Iw3TLfZl*=ii^p8rVt>1B(8za zQPfHoG%P;eiqUg_RhnMC(zw3Xj2`$lPtD{r`Eo@k7tm*;^?Gz~t3dBbG9}-(1o@Oo z#adlgHy+Q64YHPg9zl}>Mni~^pf&ISrY#l$e-~EyRn}4*Zt9ZA8`p@c5(lKn_l+DK z;QtN+|Iak=KLbGpevm6No+5Zb4Uo6(8jN*r?N?}roY9B`-U=Xh1m1*4M>XGJA%+{u zdeUiifa$rWix0Ec92*TMc_*nCen>ibCF2GgYMr4{u!(PM{|B}JZNxP3nN;x%3uSKfvENdQ81aJ;>%>%&G4UP3ImGFlq^7v^kp zjM$x`?ZZV9>bxTdkfK*Ott>!ia+Dv;R8&S(=oDa=4SSxk``{x1Mfc;Nf8`l6`tN!; zY$-}p_4g6~>ZmvN44%)ju9v`14|V?fyZhC%rhkcHsMwmS4;*hauU)h?c9!b4l(eoT z5G-z$4d;))hAcK#{mku5l@iiZ<)mjc6h*A^h*Z2t%zOgaq(^ls--&M~p|UVM{3cDm zaV0!EMjyO4+T3#LTU(>(dip*rw83a>Z2adu>2&vP?TI99eF2IU#e)8zz{y>Fms(_W_7OJDZ%N&XM>U*R}K{vQp8%{L6$YLGfi5qAO} zmx}zD1~-b&o7Yc{J>CD*2{@lt(Vm;TQ(d!(!0$k|XoT-Vl~}m-LhSydx=_+q8&uU$rZ0Nmgwb&L#3cJ!caa9`_x4`;i2R0<9^bs-4 z7Y%Kyw)OUTOw6%A%+}Q5XW4)>ZiXDaFwr!L0t1#bK-!t`ExJ}%y{z#-nqn}RJDZ1` z8p3OuJnrrePg>7#&iqFb^0AuprAMh?VD@1>SCl?vll z-C1q2xfX{=Ot~X6Aa{c7sE&GO@bg5r(L>k9)!_QQpno+oCqYterlG_bW%*7Z2(71K zGse=vNQjR(bF}8`3xH387%I8~Db&Oc9<56Ie~{}+U!e(#3DS|l_`XII*BY>|9!Y9( zN)8K@mvsxf7wK_Qs8?%nefNuM3D|33SDeINUBc%=K(y6wN#qe)lIb^s^ccbazRyeJ z&z%Q^B8fZPv~KC&z7UFZbT!syT%Bb~r^{E!IgE@wDP8YaLiK;0-v94qzq2*f6*8UP zjCDCXAw2xP*Z*t+cTZc+PyJIMk>m(Y&KHXMaSK+lAe+4n|8=NMdvw7h-EDfVB4hP_ zwi2ZA4vPG#)OPz(6r0A1fH;F;u^WjL@PqM}`{Iw~dn0ew)(@>pr1_6W+ocm$t~BD% zaHx3&QlL;4U;whuO(^&X_!esMAD@CH?_X_$Ys9gnt$_-6B*Kg<$pun(n{$6NY{I>*rLz3-r3ocEfiWIP(Zu*Z(-9D42HP+ zAy^Ht`x1!Q!4~24@(_@%Y-|V=C=C;P#rB`3p2k0xP3PIKF>IlL%5Nrx>(7z?QJeJC zsk19Ht)M*e&!4Z{{@l>aRal+eCXr}f-UOaJsU?X!m4O5_>ef86o!)jE?k-OWvWLph zt=DS?dbT@h>e)_Y>%0-4GQH$kChk3KaUXNq?{La;dt%nzi>YnK^5F2ITXEX(w(k;A zH#5~E{Y0=m{CJDtecF*~8tT46VBd5F;}*tlu2e< znhYh?59+u4hu^?t<#Kb9;VolwA`y~@}x!}wfw63|Gbn8uG z!cf%DYYc3JljGi$SCy2}`KFs6&Zwm{wT4NR5QfdMN$V*4QEz`w)lKF@Db$%Os>h0Y zDOplet;t>)phJU+EsIwbIV=aE*}V4m{vvgb<*omQ6FeLqjxV-_B6Xt8z%n zQwac}(U&qZgIS}y&_e)G1hSCGpI5jZ(%+G9&C{lU%Fmn~|IUh$-L?Op_2)s~U#ws^ zsAXL0s@U?t0H^cOM|FB(=JW;+Z!WreJn*e@-&?L*lP%?`m6BL=LRk6;Rs?y+2lST3 zv-!HeE#=bPN(_@azHxDTTq2!7d4V!5?Ofq|7E;-juX`)Sre`TWrJq+`*Z4sw8zxQ) zO?{UI{;JtzE+(yLI-B*zkN;NU#E>H%`;T!tHeoz6g($ln*!+mL;Jwh&(t@Nyg@$H~ zicmx5u2-JPU*vO9$~sH2KKkQo;nktrnY)fOi8ntlg&j^k&z(gq2H!0e8ImY!dKHdt z95l}IA920w=EBpyqBQbqTl0KY2gZLT5T{T_j52GlyU*8P4K3 zs}|{{;kN6#)PI2K*)H2F#e3eQLDy8S-9u(A5LIj~|lKB%vy1GL_y zTge6E`iDslCQ#KBjzo<%=Prnixx`c=4#@8bz_mO(>m$$IFsUk##cSh{J!4Q^cEgDEZ2b9p8eKl5A5tN2W1_t0s=)cL^ok-4A{jwhgNH zd{pHjhEf|mHl~jHBJSp<`uIU#{HwpaVl*s~NLxI-3pt9sM5h7blNu`;l` zzpFhD(3qj{v@|L^jF{XgiT76{ICVZp7@#Ols8*_dHX=6?RCWraJlfKhyh== zPOmj18yHRD+h?nSP>mg)4d2Hy1+d_tQA=Ngtb8st+>`D5mD;JTG*~NhDsgTs+CywK zc=0#m30U@*4grm45|^$QG2mTO;S7s?9yj2p=z&i$tBz#A77L&+b`W{vhKUbE#?!1PMH|w;*OS2n z)5m8Cp^>(uFcv_!D^Pm&EAOm`K*L%lmOfntuPnfd1%Ei?TWi@~T;4jai>T-Kgk_YB z0Aq(>UlS#m=}-%6{bs&3y;?>#(a63xjb14X^(16Z0%-fntt#J<;xUKQ{5fet#$-Uj zT_s5#ukR*s^JrV^|@BWR-|_<;Sh7X8dh=@%)*>IbGG{c zS*I!S%7Jk(Xrt*dX|-V;9fvbY==i-6@hI;BpCG~zyo3--QY8~VxQ&Mnc3A&Bj0LY_wLtrBCh+7-?PWB9ps>7j`J!9JV>w^^Q5yh z911H#`Y{K-8#Da?0_bgFw9Md!acVhZ>R+&N$O!5Tu6N5T0%sRgQmM$BLqF1+tE|&x z7sTmPKibABfn}`E8>znRW+bGR(>wskjSJBTok2o*yjtq6ut35vJZcQ+C%^ER8KdVI zd>77lK7NgTwi>JJ>y{0zy~meiQEwCbt9OoN@e* z@7Ai?r*@ZVRtziH@Pps?CG@>#Bi0!0^;FSZzPSi3lAf9P$AO~uzPD{?dYePDO)ej9xj=vBWHlN&HrnBqzUMCKZ$ zN9zpCo!xySGgj=mHSlETd+sD^Om@nJA3m6dB*lg96TItrSu65BYQ+Yt%Ul#*RPB6n zwN%fxo;EZ_%8aaqxDds)hMzE)4{TGXR3HmUZ%t~}KPoA-ejr=n>P3<3Ne#|D5~Im@ z2li1OUx}aY=Wph6PvSOc$Dbzj4Zw`Oap-?R7logj2<|@R+@!i+!bwlex^wBrUo1p> zfNCsDD77-F8KkE=k{jkz0xnw8KLinGxX++0XXSBBN?oBMMA7yjaV=~a3txYvoj<2w z#!usiI-0po4{nW-ECwHid74J4N6nQb1fs+)j;m!gTq8xt#(7s03U|fzULwvoXNv(3 zHphENdHj^Hje1Vz<3>wW0u=fS7I*`}3FWM=Z98&x!>0imZ}f(=ISaO|ITi?Eki(!a zd3dYmjUDyttcYI$qMKI2e(`vt1Vr+ru@eK&Eso{)_ISN=U)f%*b$av#>{RnT^a6rP}k;qYnwyDb6L%PZN0>zKXG$Hqt^j zpe)Mj9}lQ)_h&$>w#R^iXb8LhLN9>WDq&M~O8)u% z>UO{KsH?v(Lpw5hr^rT^_UqlEkJ?kSl2;`{mDoBNl09&9^*Y|A>k&p3bOQ|k7=h>K zf4hTe))~`sNT4TEYbj5<#*^^!EeR1rEr_3b6o$9pjKHAaX@gYK(x3tB{`PZNK+zme z2%H5a=z(A1u5NC@m!jrtPC4%d(oo_1k;u4W8=OT&LbwW1f#LP^@fS$aEbDv2JlA)K ztv!Ydc#LWm{`jtaj;Qk<%gKYOpQU>aHi%nVIg5cSWz?P@Y03=ILMI3-$6rG+;?6}9 z5rQ4>h@$!TOK;d#0?dC(65X3UdV%b>OK-oWGqmRe!ky$d$aH?+xNUDMNvy@PE1FS zL5q%U%FS*-vltb7(Z;0hQ)RIyjFl9t(HcML^T2o-%fko%ETefMGOB)CkUW*Bl)1vR zOj>>-qUH0w_3J3{;%!b_F#&t>g#+l+XYwD!YSk`dJH_!){?LJ?YP9M~YK(p}M~^r( z_N}OzEyFloW~g(k;DQZfd-EU(^48bZr)5=)zg2v=9RLh6ILsin_< zCivqd@Y9q@rvNM?7ca12K?m2!MCLI>*MR7+BGak(ro6|Gr$2gy(_9Y&f79^p@_^^9 zerhTKCYM}g;G!(C& zp)ah;PZ##bxo53v(-~zICzJ+A3WwNId--l~(#TO0I8HKbJw+2xOSU)rRxh!x6q2|$ zs^>dxjZisz?d2@aJ?$M|*4+))J^o!4zP{hPd+hN5vmrr_|Fuf%cJxj`(qaz;%~N!p z?~v0qGRfyxKf}ZMWPMlO9T4^f9QSm(6>*i8uaBeKz2n$2POf9R0ssyyb z0)^1@l+&}7UyOk9ejVb*IKkNyBQK zoF%xrw=k0TriVKmr`4Z2pKpHnP#ixw(OV$loE_7gcu%KXZ;*iyp+S$+D9<(BJe%LC zYH_eHZ&RX4icQWZXN(OqYuh^3k`{0c)kJlQtsWOq$B)JKsN)@!z2`U*$If*dOW|q1 z8CFXDEl(WeBS>Lv|K3hY=YHuGN&GaMp+HvlMR_N?46AR9cx1G1_eGJvHNbW(L$ zGW-KMxtcv1=2PS22Ic8)jU_6l9B~IjRA%%Max*ZnYF5_r?~qDNnUFGaLOB#2l)&2xnADvZmuuo&&>4a2zP!@PgMXlS9p)+M zT;b;Hmz7u(pmE$mtPYMR`0(qf*z&^u@sEsS zlm%rCw_jOx(7|}Zk?4w6;QDt3DJ8{%YwY(7-xLN^C!k5wBBS%@CIpVoQh(joEY{?W zjnOI>fZ6o=P6XjHu6_%2QI;*btH|(?TFh7|oh(G(>?5;LjBD6O)g}e%V6gjN7o7b= zu!SzQn{SQbv^%`++2d6N8D+RfbLLfG(f{fl{PFz>>H1G2;y){&^!;o_)@NrB&EG9m zTv_x4k(?7RIS;M3#fwn zkjURYoml`bMn_qNs^;eh(?ouuUZUv;9n479F&R|1z3A1>YRB_)Cy31A)oyl`4JtJVg8%yB_4bf8ZK z=dW6BEY9qqgZLj-0=( zIu3cSJlRx14=zts%{M|%eK6H%NN}$SERwdAWo&BBjt}UA%^S?a+!Gtj_HlwOdv$tP zP$RMk`W!d;b2_&nz%D~4UokaM&C*sZjVQG9MXP+dVw0hnFw5_#kjh{5Oh|ot0;6?d z)#?;P_Nr3H&e!(CB7^&z6NF+WM<~kWmbLE$oo%2(2&!1Jfe6tnuyj<~8AS0vNG~s!kpNeV|(-Y=cqJx;=d$lov z>sM_yD<#M8bYisXiCS&y18B)sYRfGXbSBpTb6`y>8I;0woQ?LDo}fLdt{$mJr2jAS z!SBew6PY21>u$2vtTuIKD1m^BJ7WcM0~hxM_}SR9KZERDQ)R!&o^KbVaxBH#r`t{X z^5WXRWwRiWD1nN?r&24)Iqo(-rCvOuMkF{e&|aW6_5 zk@lK^`L=e4t}Mf4xc@1zhU;&>qXl`#_Jl$q71DWnI3x^;M-Hv$IoR|)`%_?xvY}sX z#!c5kui}RHz5zNazK9RDUktY(_p1L|{gVE1m`FfsK5-W4)c0%zvuEcH-FRhYrWRKf zc%wZigSvUNC{h#T$I~K*mo&Nus}vui(=3K1Xt5q-5>EfFbNcvTpckEsY%top7^>w4P$_hgm>t zd(A^@z(~(*Rb_vjpIE%N(czmyLRGiGZo7-+OaGeI&Mt+Nb4D0RZ0BvaR^5&Q?cTYB zb;+v9#myUc@Muu+wlBTc?`beagGP&k*r@l>-u{u#P?OeW%qy;xYrMadf4t&PA3U?J zac>ghrA!|2*mghsTDh%w`8qmoYcVavk{cldw#5VKJ)mlV*DF7D_}8!DG6)b#H}Ceb09&5pSEQ7J_%GQW0(!b9=6t7Qi+tIW zqTgl-d|Pz^wkJi+|0e-J_xU}1y-rER8=LR!(e=|rV(b6=>FUkfaGPMAI# zXx6783THdwjDJ-6RP4OGu%|UZUD8t5St~iU=P*Z$G@gs0eu99{&!qpXo}O1G2bP@N zsOy!0szT%n7OT#Zc+!!U4lHv1-MNrAzo*sna4Qm32FO0kwD9uVT-tzGsEd%i;-Zul zoi(qV$gkf&NhNi#=9<^Zl9ZO!$h_5vIm?%-p{FP2X8TnDpnV$Qsyd5*ei+opE?&MS zOvJU^>v+I3NWnGUIQ3sFzPWclJix2F_;Wz`1FvP)!Re zzoOh5;+noTTYd8CkLmMB3i>Zx>HpXO<03xna6e=Gag*Tt&wWWLjsN5=e?x)bQ&kI< z62r=Bp$ZIPhQ#bc!k*#;v6}a~i3!{`8S1HlWx^etVwF@{LK)>N?8*I8Va24G@sIWY z1d6&VjN@oNQt7#_NF8xCW?SVQEPAjtmkfk5{05sR+LSCi$s#D*weXiz431s9(l0z0dp{&iYePQ9OOpr}*W@{@ zihTFK61mRp_kBMaj>t7)|2^B$xd$I^oh<#3vL`7A6a_3Oxrn|fh=SO$+%1m@ zpZ-mDeT^}rFO$fm^Rc3Xi&S1&)0YhHmXp+{)$pTN4ntOZOit`e@x>d>b>dU0X7MZ= zcTdzFG^YDp!&7tKYlz}fc?l-D%Ajaa&{i|}x!r7SQ~fd3D0E~$1E|H_X5fQWCwV+D zp|Z~53C}-XJ?_dF51<0J3~ANSYKUaREUjBa_4h~Bj&e#R%k_$W@=T6OMDsm28R`y| zcE}MDxEqj){ET3n7WY%j3dp&%xfdO;h}$T=>*h`U4AyzuC`ppStNALPB59b93BU%R zMZ34N(E)FMcpBRh_o_r%X=7E=*yLdSMO_R=dL^nlExKE+#u7$Kc6SonzQO4)8fH1) zJ2Dloeafuhg&0qw_^*z2$KY415-(<0G(AyZ0@tSSBimScff%tte@VLssGb85rx#}7 zVS-Q6pi|SM>$w;z*jZ&IjNr>=<>s~E$2RhvEZqydX3)xSlk)js7~i_l z&X34_ZX(}2{2_i6gvKL3&WoVD795sPGwY`}5@T|#xrh7Sk24Yp7_Fb)o#|lq3=_cO zQSoWc-&un-7~~<~gifaVM@c}| z24Y)c_`v6}-f3riusUF}WO>Vn6?L-&Q|&zG8kxubUu(oC3bRcW*z)yH?9Bi%%sYlg zoFGpT*iz&X&X3$U6pr+w7{qns`NZb@nWnyc#_YL8!Ed$VP|XSEs|$<7LL&Rn01Vnc zShi7?ynal`WxD4pp*8fw|CP5|PS*L{;>hOXo@|jf2TXp&7z(8Ach>r|r4~E%?^^5= z<8`xSzGqEK#qa%84m!wI_ar!*xZz)$vinu9FqL4xpMog5?dJSg7IspV70k3qb?> zJMlIj%9IlSge8#eedZP3AkhlS!u)8&*!y96xc;v-zKZC8qyT^P1Gg9`M%9!Rb%m*o zh?AzG_ZK``&c@dZ=taTQq6M>*@6s_`)>)kqwCh2!H#eGRXM%sOz7J12f$ILA@X{y@ z-F@pHWHqNi;S{!@11W%NM43*&vuHYDI4I1%&xncOE;y}T#pYZ3-GqF!!I^8tC~j7K_CBNiH zzc#|{klgwAa?VD4umN|h_Pmy!p3~YOXXps{A#Y>o2J!TVIPgk&u=^4Ta43wA=9I%@ zisTheHf}7(=Y5s%Rn2EjNc&4Fvgq z4)>?Xi5gF=U*GoiAJ4FRhl^Gv_dLXj&g-HE=Wo&Y(fKMkM;Tj7|K9C&`;u+5Hr*!irZBRob7kHr8@yQ9Jr&?d*QnVl#dBiX5oMB| z#$+1~*FYUQXd(gC6xaQ>J=D<%!F=DvnGU>HNNIEO46_)em(<+cCc`8c?_LCvbu>ZEO39z!$)r-|MM85NG`1H6uep>Zo_ zDT=7)CBFAZqSwztFVN^xW3nvoQc42&oyKtrpWipx`$#}Qp z>;U_jQyu50a7o5Az2fxcpZk0?^4Q<*#@gF#EYu((G6G|HbjL`s1uhSiBw_1@M1Sd^ zwY7EE7~OV&Hk)?6ODkZZ#jsF}ZI|JJ;X@&0!6!H~q5Q}x8PGa(vl=A=)~*Ulq@4la zoWe*$@sKG22U28^v}Uyzj(DW3-}SHmRu%ux)hXG} z4($IF6;q$}gGLcCqY{aeZcK!*3n?a2pU@+jH#_wrKfOQJZsbP=$o)Wq(9_9t;urzs?g8kXepGPSCh6BElWif8jp15UWoAwaN7xAArkKC{(%%^0rv;3zqJ+!s%6q(0; z6wM|VRb9(#DyH+F=ax3?Dd9i%wmGU^(p_8>GyYtg7F@f|qSG35Fq>C_|G9Cy%-L?b z|4KXkyELV$X_tt8hc^V4kx+m~5!Iigr2T_;P8NI9oHBwP$YTm)-rSn>tK@{baEh)5 z09PGpon7dhU68RD$gzemE+)`K$h^~Z>-<~)9P3|q`AA?vHW-Kd(v%Tz5yKcjW4^db zOF##9D^XM+g;c!P?rs;8$xkW+<6>eiXp=gG2yR2PTs%4 zJ?JknUkGT*;ovEhJ~}{=P3?O_KnJR4`}(tV-gHlLbhR?lQ`q#^gP%UY6c z+cy<-b8N=@6ei^#Wp>BX_x$wE<;*(}8xKR4JA_Fj>^G!P0cnxNaihRYLX+!C{g_Lw?iwS2ceds^#;GZTiroC6%@GoNYY@2-CHm+`yUxPkL zAv^^0-|0#PG{X6$@aWWc=LKvL#^y@sA`dM(_ZzSlJ#+Y1^h8TyG3j6+ z=#ZEl)0UdC!7P}_Ty`Hsizg6ZdDyL_BNAUe z;4$6)Kj(=5`ZlFB?QZr*c1?Q%Pi!tqZhqs(^t;eJCy9M9AaWYo$HVOzK_AT#kOz~A z_$7jPMeC#ZnibhDe~y)@3g})}WZ>*vKgMZzd|N8xB3cEsKZ=!4nxqL!Dp%!5 z3|6NxT}2-zOiZJYV9D^{Q6;;Tm)zYE|3JQVd zLdR1*Ckue&zcIe1P{o9g<6dH{vCq6n`2ktIEbzr zd*cnv^`Mqs^{(|zrk24uc_dn7U?=PJ3KVGx-d0q@9`k|$i-^&h>ga!(-%@+XTH99E z(27Rw`bYs@gThT+{T!y7Os|p3>5HJ8QTr*^z&QKgN#72wnt$9k*=hUbd`E#|KmmF* zp9;{laRv5ty?aOt(klbg_SOX7F&;{T>HjH^{rmWGi#%_SU3^E0683oUO&g`QLr0wS ztM9?nMFDXHggWAvcv?X=4*_UzA=hgo{L%Hqo+k6DF6b20jo5p4v+y)QfgDu`)0EMI z0kN7@f@W;vo?=^GYNPp?Gv$SoUsaIuLJjY^)hSi#!N0mjMJuRD$3HR`2^n!yH1cel zyvFI@=Vn(ucm|iW)vT2h$}{=0e;$7p-uRuG^G3D-KZ;O#T=4so(e9cYwHbPvpqxm-U`B(< zg?4Vhx^taxR}FQN);#Ui=QO)fj{sT5$Fv9d%?)N)G;JdOuX(wfnx{v^X++=?fr)UQ z_>(LDxl8|RSLV~@ama+%*wfnIvu_1?D2Y3DlTSmO=ok>n?V;UP78V^0At8mL=wKvm z#iV#O5LY}&3jP@9Hf`?RHO)gxpC{FQ@_ZMvFt|j5Lg$v%YRc!6`F6?i%p;)lrH9|k zYs0apFR}FErv&y$G6h>zF>7I>Z%GvU zm~uaNuc#;`_TVu~u3~g`;`_I#L0u!HqvL|T*D&j_Ai<8YmNM4J3i)+yBCz**S=6?a zmmVVtPY0Dew&xYvicqY|KFErK_PzYReb}UJ&#tp{_d(rK#+NTVS*)&$&@&M{SxAh> z0}>cM(81C5`}Y6SVJv}&*2>>N?kNAy{NXBR3w;r92;#W3zWpZu9Z@o!z5>a;d*58b}8F(J$ShsGS z*M%PYaf$uq-0_SmDn-{*j8|8on)_T8uSN`V5&WrWp+YHOibwl-dur|*SShrfhUP`I zDbzclZ%yIsk8RI=HgLfk^b>%?W;_@fgEh1w6djXV5Q9MhlV(fcRYa^BaECylIsVv! z?LP-a@st5xG;4zl5iVqC%sb=+Fb zjji>anw9N<#A7!u}2#o2WQpO|r_w z$CUcFwTZsOn4?A5bpYL~wLDECydcJ4d^R)&2_LVX zB3+;iMhzb+^x%3f)+fFgVssFt_!w)9F0Vg&4Q5xsV%Yjbp%@v|`+duhUVI46(mg3C1if}NC~9O}u15y% zGiqoIe_RZ0&kWn0DbK&r5bFT}VStJGKpfs@S~=>QE&^l*b3o0{tENS`ysZr7keiZR zEcFX%T%N{PYJIPx5YxfhpC^yoc2nT-N`?P>$f@6Z!lij_d@W3hv|j~K$^uM9pGCeUg&qxfEq zh#e<+^gq`L_zZb8qs`9*rJgh!>F^iH00v;V#myIUXov+$_{M&iR9JVgMRz^*BFual zP3Bdb1}#er9gaxH3y~ZVTDz$U5s$o1Z|`@y3Y9ygZlfcW6Xlgg-kyjXDI`DTosEKm zt-_Ga&Rvz~Mn>-yKblU%bRb5`n4AO~KwQV&iyUNWY^)AQ&_vrMfO6(DeNNbE_9lzI z4t?BT#~zm|I)~mHnkq;sT$|Y3bfibT=n2JXdfAse8(?_TidXQ-3c$_Xx!-OAxba8N z_uv;$pg;jojd4rOg~tJ5!*2_elY&Q2UCQI%g?ab>nWnS;crCjqIyAeyb&=dZyZrSc zIs!ddb_R;%pTCgo5PEM^z|)&}DruWRstLt3cpYoOO)gFOHUQ1=)mNQwH!4xzv?+x* z3GvAUYv=o*va?wUx`|-4!d5bEuO4#Ix z5$ipUYgM3_oE9K{G4Rb)=Ka)8#)YIF*KVkHA>fn;9{jj674H!d=c@$p!QNJ(Xa@D{ zu>hlU-yxA55>JoaJE!?iguU7&A`NXI?or>|z76B*G9u}*k+=3!^C+#~Xg)jN$?4FF zi^;w9GjDqT`p38{Xdj8p5BNIsGu&^X`ez?^j`@`*B^49)Xut1H*B0I-!wcK`oyDY{ zxv1Odlz<(TweO8$8F;#Ca`t9_EQFv@;O@W(Fy2ddOzt#h0AX~cuj(PBt-&lN z-M44v9k#eqbbtw+`R~tp!_x8(g%f@AL1a&A9vp`?BKEb^_8$s)__FY5$yH9tLee1e zKEWuAk8c9q!=5j@A2=QkHfAYdK_&co*A!Vs>SovDRCe|vR-I{{ZgbU~xF9o3fTUL} zRi8dMjBS^MXCHUzeK#aC@SeSGv|0z;_*ovuaqqLlm?vm2L<0Vp3ry^T5;mY*3$p9t zeq+oZW)YlS>Je$JJb=%dHNS?BKW^8zcEH2OlQDb!GmYSHZLofC!NU*h`yWM@DuyhMP5b#vBuE4vq|(4%T_h-!zF)?yyK?b&|~6W~8_ACC!mr~6;4 z(`${s#SpkzUOs-13hc3~0QDg6^OXZmSLSH}84$b|n~2$25*3adQScjfF*yGfIc$#y zaO#u&dWA#cDFsI)JonRs)#fUL=x*_`k^|_W)sl zG}5sF;v@$W0|w)r|MxiF z3-pLDc0f7@G&%$Q(*R0;nrTI*T-GEr4lZ*(^0V7D8y#r)@KzB38DCorM0(;-n!(E|^@$}+!|Gc98z<>lpNj7dsl zj95+C@4T>xV7%NMMRm!lGXZLi$@*zG{IgAu^TeDhlS*gGwn*QGiUL8+$Ib|I9;aaa zg)fmtMp>9qEqGozO;k!I2-ZTl8_k2z|3Y4s79U6K+COl?J?W$myk z*;m+djuCQ-#$+$^Nu6p{FFnD)E#FMI+gn0X@U^7-LNJ0Fwxv9aQX!uSR#QUzRGge7 zuTDC5gik9(70~IyLk2KG zb9s5v3`ha8F-6ZgRq%VOn^jZr-$1-xcRO+#HsF(?GMhtfoDBv>-}@wQDOX;Ot*kXc zdyw2-hNd(7X)4y#+-mE&+sX68mEN8;^mIyW*|)xfbILz|PS%F$_tOsb`V5b)$b!mG zXM>}yK&-)I1?k#lnTt(hD9AgO)QFTns2F6E%;|Gs5J#UGIVmlP?l?V6Q zMt8@U)OlSo^{B_v^+ierHH?tLy{sH%3^aJ%E!%LWiFU^#15~=0E+? z%v!csc?W8XctBZa&v|FB4wB2uo@$hYthcM(>Gt*Dz?DG)#rs-Ad!Mb3bKU||$FRmz z6j9Q~>jFAABX2R*R!C=FRhs$;u|ufZtuZeo$N2JY_MAMOg&^^L2unH`ph)tPHg=#{ zF8j-2_{dE##utoGCvBvrdhhshJA#c{C1&jzOvfpGVx!(K9d)*3M{#Wr@ma%Xv#m%T zQjBTP?9=cYT--1LJ#b5fb%_aS*v@00^uUV%X_=1E5)wqlIJ?Bf zozC_B$aC@36Ryj;7*I?<{JPGoe7={j>tDnbfGv&$u9j2yK93_6%6Q6({wljrVf-uL z)nm(fnEd_+n8>TMoJ7V8WiU|uJdk(N62gMX2QlPqZQ+J_ew@+emZ<%{8q3acxCt`n z(JFy{xEh!+y7^UVD1EoY3%Q=g)^<6?Eo*Q3AOXsrN&@wH#+4=q9O!nco_s7m`?UXJ zJ4G|5;!e*m^jV*Tx}b|iT5)Mjj(FQ`w3HKpX0NGRXQiJ^1VjQxqb__=J)Otoo!vQw zz7KY|W*$FgvoP2S2GDw2)?81&r4G4Df;}Ux!3@8W5Nld0JA>WN;nB$;lZPh&33X=A z*>@dsyo7q5ZxvPmzgxeHI&32XD&`p(sMF0yB!#7Z8j#KYnGmHrhGWM~gi()HO#?l- zF55>cXIAD%XO1Rt_<0juUY_((QbUys&S@9VTQr7+79D00Tovuov?tFxicyk|rv{t& zJPo*O^R$s7rw{xK^w91r$%uHva#v_-vSm}sev@KQ7^#N3n1*Kgesx55!xqAc%ndp} zy-KL;x_DXri1J|tm@6UFm(GdOu8KjLnTAWgE?Qb3roRl6Y}X^M=re_~FoW(^ zo+w}15z024H{&voC6^Yu&xPVDCu*O4cl6^c|EEeq5Wu_SF*N%$>yX%`Gn!D1suo{M z|MP@+wA}Nq|5wi$reyHEJ1jtDX-lvne~Uz7ueF$Y6z+PslJy&=(!k_ zE%u|byUJupSf!rL2#6GNE+=Hl15uL=jyaP7rbh-T*6P_cp`GNTNxK6P;c)=T{kzI%X7%Lo zLTZ0mfmaf8I?babTa6&Y09tRx+#7B*S&9z4o=+hw9pQuYqntQu!)2>D`e%&Alc|E9&+3 zH|{eN?T13-P7(W$wN-uqk=PYavZqy=KO3ONe3NRFCj%E9oT-4OjrJ=YK=OAwiB;G*5ugbM#dIaU{ z*wyWvjJ537n%lpxU29!GR9T+}(4wK}3E60x`-txXs_NtUZOqV-lEb`Y_m{QWKfIeN z7UQ1~&jv-b=H^v;Q&-E^?Kks}m)1wCr%3pK~W#LQyo(wom zR+*pqD1s2BR8@)#EpNY^FO!8XPE$9eRBuqEa&`B-Lk4_48NX6J=RWSiGR@AeQ+>O- z1-7{KIBd$2y{tO9Tal#aWjrYjmo&wF`ytu!+ZiN;Lq&OVm_8wc1pDQz;zk-$2iwy! z%pNoS$Z`@fU)gxX@vFWlk@{F*@;i>X-l*lv6KbFhzpdWcj#0!={G?DNF2| zX{#>WCZB&1fC9I*;u%1K1Io|NluXgspK@86lN;B&^bQxphkZpHGJoEh`9iKd=z*dI z+PunDf}?@~KqGV|tM54GhFbFhOKQIyLlReAA*&{`_P7wIvd1)|>x$i>)?W&ZiYj*01$Etil@ z{0_BV20fONk@NBHb_P7SvZ<44tn`KerMEnHnqVNbn=2c@I}$lrJZ-|u_rdh>^&IKX zIweLNwI-eS1wKPtK2db5uL6sQQVs>fAf3Ri%bH z4Ll>MepLr9ek@}fTJ{*($$R_mkdY?@A`T79(v8Upm=q<9;CKkw%ebD%vsCVmIk9V2@+Qf5XMT}s_3C$9AUE5{6E?~Mp&1c8O0Az0q5_$te!Yf-JJGxc>^Y8M zY2PTM*gI=!u2d?UP1F`M(9<5=x5K$ESuO0;tr(~7vB#bz-6)WuCz3q+y}lafHKwUy z%S;z9mAl!~w{%@Qq`7t8X8K|7TBnH0Tf3!&*#|so1jf5TgS?Ain>0+BYwK`4|EerK6mWkX!(rw2HzGS`{q%L5HOt^y z#L>iuEIh)<6r+{_3jXxv#Mi<0K`!*I+|g=WA_7va+nimOa&L${R?}ahDE9 z^|U(D9dkq@HmY;J08F>w8oP}ic3^99F27a&!9QQRoM6>+BzbXrd%?-0bUY1Q-61-& zo@#9*@my`43!hv`pkaYtV~-G=+B$&D*ew0krhD4rPygg~U=R00o>i~;0AHDg%3NZ? zN5rj#y+?XNld)dxeV)YM?D7>+j!ak`=yITS1Rh1QI6c|I#QjF-OgcIk#SRc=!r=!k>HcUL$OsZF!cbu1_WSuq=0qKw9m`&JY z#X0TU<|}R8%Bdc)Q57DaYg2AJ^KiluoO1kz%6&V5^rz1O^aR5M{5kQm;a^`bbU`Eo z8C&o`eD;;?ppW5j6UyCETA5U3Ac!p;g}pATw(Q3NKtB929AEVHE778ynXuQATFN8a z(Qxch0t2+jHUsJr8CdTs{!;%RVW+jT#SsBf5|Y>?gAX6w^|6?g@#`MF1eRJ=vj*`~-lQ4yJu`k4l=?-)bo!xeqo0?+}9P zjn)IRQ{*vu!tRs=5gXy^ND!l+`7|jAF`e~Ymune{CxldWwFH1hpVWk;w{7X-LS#Yd zR`E$veSDHRrRVVIJ5t2AOx(T2E1-r_(6=-neBy_owf<_k8G;@yz zk}r^snNJ450HrGJ^v2d;z*5En%J&GC3aoUYh{h!)-f{YuSNLO0e-z#=iJz2Fde8Oh zw@(0ST&73y^MR;<%csnO#!eI|{JGHj-i2hN%riMa?J9z~#Nhj}@Li61QZX_uR$9_g zNMJ?p<*(Fs_6B$?Si%MRByD{(bck+_2t`eELK2wEs`2!T)3hHXpE&OuY=>2Qq83`rf+@n zFuY>Pv*}s^@`V}}!*NVYZoDE|*wFWofxe`tNu4GgEg?6q(tuK>Kwr-q5#o7ZD<5PGCUthhW61dLckT9L=B zD?suKfemhVZ&~(g<2Bee_-%1Y>rakSzXmaZIXwVjdXz2Zw#!XBg&)%}T}Kg#zL&N0 z*LZ+YNdJ485t1peLr?E4v%}mUNFseTBWTe3C0d%Yw?)Uh`vIMn-3NPpZ+iRRRKTcM zu8~h<<`qjMDeUGKf*-!b?~{ctdGHI;-NSks{7&Rw;6$?s~~G68Ma6LkQ}?T!~F{AqjV+ zEWMz-yc~3S91Fte0d@N+`iJ7(c-8Jw^To#4>3D*eBYBPcna^zoZHH(UI(E23w-E$@ zxb;&VHBpYdUv5Ra^i%13){+f(ADD(rAAAkZC6%)`C_W1XaL)1 zl1h=6mDB)?RAaYwgf}6tzI4)jgbaix=OeqsT>b%F5+Vtt(h1vJ?%mm1AV=qZOD*#5uK5b<-~v)|FF%vDf4JBJAYtj2ep-du$OaZs%2mLYxcD zdeWS2yh&@Y#MW}@)}Oz?o|#o)N|g5R-|+{4_q}E+r8# zvIQ0IMX+nnaWbLBdZeA?f9X4DhYh$zRu?Yq7@3ZXuVZcX3c zU4H6MB-lr~WD8t5%5INa4tAa1M7Pt!M|2^0WY@|Xn*UqTrFt7eT~q&qJ`Ahqfr$6VqyK&^wTS`e z4fPZNEuo&5G-fna1}q)craa29A7SA;Vv|5HY&pzVwjc;-trh01(t*DFJ_@-=CmBl^ z%q}y6>*K)mcy7{+HbB$)a{m~ik%?6j@wxXw52yKM=`VihYN>!+HI7Pn{DF`YsJU@` z|N9}Ho(#hzNYcs**Fx8V3mF9*85rJl`8zES2PvCZ{U{mzKFKF#_~eCg_s@Z?Ha~jV z#b2E)8a+PBjG7@qVm8GSkrA7OA=OF49`n#V@vF#U%V~>1;Nd`|uNj*X!@GiM_u0Gzs-|94U5eZuHpNxA@bL=IPsPAh^WNW!lMAB+V^FUySZY2>rj|13 zOK?paE)+nc;t!59-;HR0-P%_h z1zj-)?N)Sko(gxyTy983AOd$e7`={YhFhx2i7Od2>X=~j^v;rVE&GtV`K#^KNnmfR z!~6XFQ(a`5zauUDgC7q(q9c1-uLQEG!?8@AeZq|pe&71c;|U*WD-Fv<-E|;1eW~$u zOCw@8gYGtRfi?l>;Qm;}-$2fMTJI0*X0`sm{eU-)|CMRD!MF8~O-s^TLEj3b8!wzE z$W`^izt|50&rTBB!WV-q^Bz5z`3Q(46IKp($kxXIFKJx&43I^S9^j6WWY5w z6ag(KyfMvm{P%Tbp7?d9zyy^b{4469D?>-1ct-SlI~nznoU>&&HC{fq&QAFt)xfZr z3zU@lrOuIhAHmOkuj87^k^0}l!HWO2rKo&iORzEm;6GG4KKvv9WGc_Sz(j@*9l~2r=-*&51c=$ z|9Q{8Tn~gm{>gUvsfTE6zR05nG;U#3DkOqyG;9b;Wzt=GK!B>$o`#mubq$BaI@UgK zzqV~Tq5F+HJR-_k1-vp$Y4k}`l)|LTYj(csn5LEb`}BJeC->3>_gFh%vsXtl8<7^MI~wwW`*McW*u!ljn_BvAia~n7;xcj>)p4yx?p`2eHe&m3Oa| z)6m*mhD`?h3y#qC_B9W6IeZ_^V!g{U^ryf^615D9~hXx()qsvg$M-+Y%;m&bXh@T!Ml(-k4@rGPifURZ!7 z&ml$++`&x;6a&8ayx+`z#o4wvElKS#RDFiG#oK#|P!oFB2>a`+PcPiBPkvW;ds7z- zTqBu_ML-2&1fxFKxvLO7wQ_2REY+iV!;m9wo<$dO&Wr0WRVG*Q%jwkA(2uz@8NSjHXg;}+uy#fPDn4@$@4t&xgDo&L@T}Pr_kg;t zkhT2{qzpTmcvgH(%az3?5Ox>(P$I?!>_+p@pr6E@Qre+Qn%`WB3Tvx`ZsZq~k3aMI zaMhXI$%&#{{b;!-G_|-c~v`oGc~27pic z5Fvy~h$G-Vku5jD%&%6zq&!cqn$+3Ka;F&P=L+}Sh`^9IC8UIwg!*{4wp_J4Z`+gu z$enXFNIFk6e6bB%jo|JhnZEClKr%PGxu}Y!H$a)BIR+`>xl>irq0xpTkRmfARX+>4 zTtDY+kO^%W_1(SfaC@jCM;s&hO*gLAJ)1bPbUu)lLgO%S#oE6&Zf3(6zwaoKoF6GS zDwEuGaq+IgZ6*|Ta{5+lPUG%{NDd{CiZwl*{kr){pF#I0xIlFcT^(uu^ecO!$aiq% zW1X}bmcBkKHTS3l@>C-_xAGgj3nTe5FOLoPcXRirS|K=^9{QL9={+L8aeO@vEhxVJ zD4Fv$DCu6xfeviF$JDzHr!oDGVtSt4xEt{o7NByKW{q6@uk(`@>-3~EH}g0FZKK*a zXs2j(6qPJHBI!>X=b5J>ptDk#uzmkT2~|Zsnu-MWOwgg8dHY9}k0P2cui3*(h_`6< zUZC`a(EI)&yBb@{0D7$B&H=HKQC|ofSU=*R(j)To_qKDZ;|dh-TyDW65Trgn=Qo^y z#z|6c7GpgQcpDX>>=&2R=hJ-VollWM@&4QnQ{9Jha)comDUd-w@4!*>?aJMty^CMi zb?u@~u}<3w&0%ed7Vs}a=Q8Nq2YkA(@O>S0)F-5cqkkpHe3rQM@lqONLh)b ze*#PfF-sZD@@Mr(WwZFXBGb5u7TtmsVL3JScnLy6QZSP5WO~o)w zQ$m>l`Ay7(>o5@k$FI%{&NJNZnoIe>XJmVaV|F)XTol>Kq1qqo*&fkOtXO|)&f~c? zJ6Aw!GjJO<5KjWA9W*&|4Z6h00M-F0Q#WrX-X!z6@{EW#&-0$saDfL6+B(HAd8Im2 zgHf5=fdxtS{IA?^D8jc$M=0|lB(Fw9c@=3t8YCpQA=i3XQDO7wm71790dX&wg-aF$ z+p$yq4BlW~*H_@!_fjHB77gk^_2IkFK^`1{Ae?%V+^wE@=gB^SL7W?Ejj37ktXaC- z#z$I2KRc=@qf=AEAZW;TRmCY7{0k_#7-n95+<2E~UMDzVVN}D?%`?vgb~#=1j@f6>!P>Jn zbo)7pG|Nvr0`|q4_~`T{qt=D*<`f748~-*iUB9VG254@nw`s9%wzmL)bwtEUV%1g zC<`0`w`-1ChX8i{cifU*d3(d7D(YogGX~~vE9NBNvTD=8u~R&Da|p}$Ybl1uS+&F4 zhr-fxD<`7XH-`5U1v8MSAnzL1KNQDz$EgOrGbJs8yRfV~}eDlopnU%Mw6KcNFS(*YK^gGrtgxHkO%vP(u)l`qn|X@aM?GoDz8qNB}3G zWZ?|Niz1fJI=d;Iu* zQ8RJhp*k6g|GtC+vtMveE08^8=kBbY96oxmaS$GmzE5~}Og6V8mvG#1Lg+~de+>9t2#UcKP4pCXwC(#cp!3_&MK zq%E+_6W)ZCciMN=fhd7E8K_&gy2A8LW&QJB@Caqg2&~n|dj$MU$LgUyS9A@DTj=Yi z_YF-JJ$A7}&{RU}zQ39yG*}$i>j>BTM-Kk?+4Of4Mf{I4maj3_^+Q-n&G7Frx6Qu} z>wgeJ2{d)|1dFnSJtTvtR{b!cSglv$w)s0R0rE?o!xe(idYixPyP`~lWFTM2zrKwj z^Gy`S&K-`(k_7Q-+0De2r}UKz?)6sF^mrpkbh(*HihgUU=W2rYcK3T^Xaej}eY8=i zFH8N$lXJ|vq_E*RhiUk%&yTJry`&LYo+jWp!Y`=NR3 z#-+X#d_FxQkdl~YXJySHI*wj#-UPg}#D_o#U%c?Ja( z+zFhC!hSi(+g$E9UZ&afYK_&TuagE z$IA->yOxa=88l`fI&p>Uk4mb4V_YB=MmdQueylEOnk1gWz1zQ0K71J8Q8Sb;to)-& z2BQ12LBk^0MUo(i0|}La4`x{zX3V)dwZZWl*G)>?(2IB3LM6t8^}JM6ZpyB zPqBrjUzdA0k}+wXGjk0K5L%>`PS80FU^D>_@o@qc9MFde;@_cI@8TBpN z;WN$4d$yq3dpisYa5sEj$txM_UM@}ixh1SJ>SDCU0L$d&Q%x;yl-k+e^_G>{!1 zD8V>t-@2QxOK+JdtH>MlNHr`ZmNI@@&Aql?LneF`Wo^+wh1WTxD-#1*itz z-@{I)N1{meLx3XJBI?Cl&}7z^##4$+(mr;1129a<+V>V;o!0{CLcv0JDEZU4dg!Dj zyG{^lUXAxy+cBI94=PlQ40wSH@FD}AJaa4g-|*IaYKvHDWu+;v+th0P+PYO^Z=9B! z{f}sMvpfDDl{^&O%bJq5NU5EczTA#n}vvbR6=3DM7bW>a0 zWX{4L0@!b2w;eU5n{SB$d115|H?3Wss> z-gz*h{CO=@hMcC8b>w`$kxP3>B>RWxAPI?g5-(3S^NO{2%W+s%)MeJAwEY$E6 zb8m_57F+?`A;;gv4itGOvw;yYSjw0KI?){Rb>YHqMj&_~U6S#dpOlFYt$D~ zSGjyGJyOP~2ML#bSl4~F%b$&VsEZ!k1d00YPIGge9M@FyT+0K43Xl{G$K!k~-X&^I zR;ykei9#C8og3DdBw?x!q%%ji3L^{@+7ubV#6<8(t)}Eh>Bze8bLrn>w$Kp&yK8Ph zH-#Z)$7bXFg^1r!A=BMh_=n&(OaqKu_?niqmG+&-K4JN)b}G~6W@|Vknyf%#HW%B{}n;F<5^|cazeG&{v4DexW7TY@-vdKkD({R zv5c83y(e4avGv)XB8&6k8Pe(HNkqk4xocXq4WK2JdTFSp;<~@F#)%4B+dsWmv&5*l zs&(7$QA}Q&m)-R>Psg!_q@o9w$Nal?nRZ&?V=tAQoxcR~uwH*G5~h}s$BK^^=ifCPqXm~`1&#h-&WS8eA!OD>3TPw^7n%YL>CKr$(ivO<*{6A25l;{<; zFqbf;_;%jHX&vGjSf78J%ce1GyLx;uMS=v$B>DY-t$kB`z84nYNNVmf6XSI%i*zZ zs2OFu-C`_bY5|vz*aD+n+gh zo%)zh)uHcSg^PM9)k3a8HH-jhCWAB;Zi_z09WcCh(2hCLjgFIZ@uqUt-I2Cg&YBBQBPa?UBt-7ewfESboAT`;BSyo^kzIub=2L86-R5A(gZV8G z!nM7Y6yQx)@K{rK>#f4*QaMe}uZC`-ONvTXGDlwOPGvwLML zsCuwCVsk)zM@n`Qt1o&~yMFQ@A|s`Nl(6K+B=M`}<9^#>01D;HIcruPh0}OD7Jhsp zA0aYb?Es=TgSN?Rp;UcD1BOI$A ziDt37aNX?DKzYT`bEke7XXgT;4B}&6fa`wT3T=Me3;!eolm{V{^A|$g+hcI{OROWW z>?A(d2=M1SlJvTu<*A(fN-O@qb;|P)9$7UiZe#rp;x-Uqqk%RJJNQRGO$~1mK~f=B zuWZElFE*FsjwcBKNg-D!!ZnRA8PQAWE(1p#s-Zc5;k>?l$L~>Kcf4HjuCKA`bg%~{ z5C%nOYZZo%2o*QHcLS#k_|%e9m}=4s`|TG$xN)L(p|ADcCNA4(nSm$;-ucr8LDCb| zS0G-!oo%d!+|{%LNCZtffCxe42qLha4w$4M8C$?hUm1FQ-boM$cno>XRDm z%Q>U%$!Zb|_)94-UPTdS%3H=b2>0}fmDfuj(~{)-B0@e}1`6cIc0rPBTr5~C$e`k! zLh==qv^WFO?Dzb+EA5a(0}(Jqmw>q-H`m#bpT~==)p=Xg%Gm_4ce2k5MkMI=0;Vb2 z*Sx(`a=C!q1!o-f0H!sNfO`p`2b#s%d_ngPsP3zp0VjR$?G|KBH!;cROFT~Tt!9`Xw;SQ; zWRu`t3hfmmn@ywOrIHYCp}end!j0LzND2g*wO-l84YwMODj)%GNqb?rs;6PMTk%Q1 zS?gLym25l%WK$P*5B*8uBA=&Cy}dT`QX}8ofpfy?`~GI`>roh6($~|QvooAa5f0S} z6H*;WoJMT3R_b$NIDx0wce{T5{Fq3Os#&TKwi(xx{l$Pbana+Am`^1E&Dq>$_gENJ z^)cN|m>k;a;OuREgV?IX+KLxn*rkRG@YU4VqvOx^(yietJ?Y8|X zS4$%GE(|-1L>l!LXgx^qwL^wSET(|>oHI|fkWT)!ksmLs)ty`8pK^f~R?k-h2BDZM zeg;5WLN_x19_RG4UEc3nn3%6>U9j=f7S_m3=S zmfPLNpVGKVWc9_`6?0db(gw}PDl5B%@X?RlSh5hO9TeEJCF1Ndik|$NEBmJhJPkb6 zO98VXP+)9}wl^5195pNQp3OM9{g z389pi-^+-79m5hCCtFt9Ax|`jCvO6IH;LBKyH^1B{k=n3U@yD!eK@-LM{voSgpc0> zdHrsvb{G^IDlwdc(g60eRd{_PQ$D~)-iNAVn$0L+H>m&E-x({MG0~MZd#ob-QYn#w zR|EMK7jLIOxOlf+=dRyWky$k(#A2v^hw^zpB2&I-~+qtC~%wVjuG z)b1SG!0E}lf_Saph|=viw@Fnot5!{&k*1|>$>{in9d{{w-bUfYL6f>Q6+M^R_TJx# z^G!zbk2;3^$aLl9uzhRm%n#!Z$FD_rPdZF5Ff#tAW65W*; z`}Roy49glry@lV^7W(;E{&1k|&)u(AyB>^N(#y1g(NUwjOl`tJUimIMkX4qw74*S9r8^BEsGiVhs ziIZ{jJ(KosAqUVD2kDz2v=1xZ&w5^O-lXO!CFWb5)C+&}lqsq%-9)%IC+ic54*Uoj zb?UXW61jJ0+1`=E1b`41X7L~EP!BruCpVF^7|93A8aYp?nQf0}23T2YdBwCLfb@}_ zMQLgcJwp&%^m4Ei{UInZYx>s(%{BHW%_mf^<%Oqat0v6yvo_H3lk57US5iUn4Bjov z;Tikchj|MRFaQ4QaGS-&9w#ryB8Su|MaPN@q%rb+2+o(pt5p_?`!4<%c4j}j(th!^ zys^G8xyAa5uIlS;-m$AVP39 zPLEgY=q<9icL&ahak~`oXK;YnFiH0&uV~#o3k%~`n0EX z>;4Q3vLJ4T-Tm;WklthB-R z>kBnl%HB7FxUJfh~bbS9d8pdcyVe5F&>1rvYBS^yYVu@TaA&1 z_U(wW66SBi^do6GchZCxF>-gB3`Hd>N#=*(L0zCe_IEs~6CKxHx4qnx_I++hp7P=8 zF}!Q&K>FQ^)|H?95r4O?{}zDXC~l_Ug^`!$$ofT|vH;6fdSJxpQsjs;U^rrCQ8`IX z%s+`-()%?s10COk^^*lKU_@ci&kPb{a21I#oGqTMyXcBqh5Gd4R6b4hm6dnsgFA77 ztR4%iJ>=-JDrOvxH+e3S$@bAe=2CRN2%T%Y^SrKpdr69`+su+xWslBTgPG^*ie0{CO9B)Pj z$E5m>5HfaCN8;Xy1Ly0aNplyd%k4Y7mn*29z01@0w4Gp$p%A?z&V*NY{rjUt*2fv0!rR~_uyqacB? zS2(i6qT65LI^hCheYf7LO$!+Zzvw$SfkiF5Ey(=F1`~;(4)-G~&*FvXJ}bLR_rnHi zFqI;UlQdJ3J$*0n3UGLO@iCFQ}k(OVb!Vr%dj=}1=^rRifOLiBBrp2zkjA_E5YS5Cz}^k*iOOnhrHh(x7jMQ zdv+~Gx4nQdcX5Jh5-9%S(+D)89Vhs=cU3z$J07JO5ki5vLbY1GGstP_ z))S$a+j<+H*H{0*dQwE;Pt0+zd$;S5P|V+E%jYN}vzfh2V1NAIerxV;^N*B%minZ? z^pTmLK=`5*y=J~&Mxs)?0feM@x{IpD*!U_@i3n<@*B*yZ9jRdI)w#?1a& zX86cBFqu+7A>5tt8mPNDQy%y-j8Kw{Qr|?gk1bjDp zKX&Jy9DJJ*3MF;PABtw-HWzV@yeeo}8>*>C&Xo%aqH`6#;vLTx0zipVcj-O8tlZh|JUe+eWNjz%VTzv>E^M6U^_@4LJ_ox`i0@>vU>Q_X8TN|_{kL@Tch)roG&GCl6_{4 zwGG=cuej04RwtEvBP)cLl`E6oj@&_xB3pTMu0Ef2?9Edu zij)Gbr-g(3RO1|Ks&#HMCJc#6KzFIJZgIe2oa=+ix2&NVW?h7aQL@akD+h-s*cFcC zg5@CfRfSOuTbW#hWFV$)eeqSmE|)Y7Fq*;fY;>PDjwT@Hp*{$q+NJmO{a+l@)|*ei zDa3Pt910ldibe64M(`q_0(Dy?^naSBkd zAZ;~d6_zb%0J<@uka2>KNIc;L_9ntJTq1I679L7D;=*~(o^w-_(z*(b{X)+{FWwd~ z159(YxoF$`yxl^~F8kwkL_;zF;1s>(+)##SY-M|hS;tT+IWf3Hv>|Ay9u;gg^8qPX z6$*CJn~5CW0*pJ)Ngv$AQ0ADrH$+#kg#~cAH$YPJIK$3sdd}_v$4!xRZJ{VT|Hi)7 zR#sdY>oh&5iKPey?NzEDIDRmFFa`O7wbGpTIYi>7w>lZucbwEkD5pIbOSVv<(|EL( z;{gBAZ+GNL)&q5;l(^zR9#1kKckr7TJ%tg5Cq947wV;W_MTFTBk4h1qJfRVKV9WoN zpfESjDI#)L;REx|k!I#&9|%2Cf}fugE#|fZYsWhLH@F$;4GALO1X0 zf}TW6$#Q3AZZv+?^O-BoP3^%fMdrzI{`z~CS7>TxwQCRe+r>5C8sEd8_VaG^*k49? z^2y-lvY)5|VM)L3Pfi28p^4!QLi}&aw&DP^=~?|X+|I;E9EPMHb2F6kPnNIXjcP6E zGxUmp;GTwq-~;o-hCg3=rd8GaY3ba$i^=HA_GPL-|8m+epW~ohpfk50=)9B(mRT7y5K7o@1an+)=$;!DU`r=Chqj(lhbnV)@R0pcuIzkLK^`LH;MFA5(292Nv+k9;f3_ruWU%#_+HLg%*hwK(=$ zlN7s;dM^pKr?iA^Yu1`msoDAtV=AUgyAO?Za(}Z8~L$d4T}L%BaM5ll__G;Nl9zgxw#jF*pfP6qiM&ek z#KjNtR(?j?=dHSPEKuhg3VK=i2O(hzXd#;2+NJSK&`yqc6*5br*UO2oCt4x4A-( z{1l6CHMg~O&nYImg}laBY}Y&d2v_H2W@RwVZ#I`PoqNiv*<2SA#+}Kh*?9SLI$L%Q zJye&zU3$_RIsus{F(9wew2ip>Y}AlK}qAsG3{0aGSpsl6jLy z03MaG+vd!&T8ewrYFDD;s?f7=(m)$_@MN5@eu1at;UVi~N3u$=qQu^09znt}A!kE6 zs_KQ%U+U-hv0|}JHmxRts6)OLVmj1elUk%Cvr7)-?Qf~nI^7Q z_5&?{w_nsh=XM8^p;hJA6mHQeE@U@}=X(N(qW=5K#cA^<9|Ff2b1%OHJPbVWP$7;t zHl`-USITo(zi_3?llNSL>`s1J9#B_1Y=9uo4m)T(7S1}D&DT~QTYoW5Y#=5?^QN<_ z>!9)1q?vb|mMkQW*2yoyfE) zd3rF3NOL^1p+W}M-)k@A=4N0?l2r)*ilx=h>I)HGK6U zErzf~I5zrUFfW5p8Nc?sqpaoZBykbU5)$y2>QIL|TBo-ZdD0}AwU;9ya}gQKM9%kp zkxbv++8)VKZii*|dL?d$O|rMwoe_SJ(dY?FIGgPbPPT!QGHb8HO&q(CeofeaFn#_{ z?Y$lkCpE4r)d|V_zlA5%fy|xj%0HGOcAAgV0;k6wmkJx9$VcGSI@w1D?=6ftyasxP zU=2IlwnD3qJ2-)MO!$uHw9AB~QF^bQL8*u5ti1?@$^p$Crg^70vu*j)tq3o>ARKbg zfg`f;RYth&m>++%Oxw}+yNO1>HxyI!g`DZNk@g;wJGLW=Y6l0Lsj3s?HN=*OiWU!* z*JHCm$sW%aTNR?! z16eX&noZS0Z2Dfpakf5iUho*KNgb|_Dx^e6dXoRjz(UCOt&Sqq?qY+yHJx^yjscp7tXR z%X`EjO4le3Ts}$(meq_2YkJXf3-Uh6gU}~lN!jyaAl`rIlejAW85l|i5>SuQUt9Fn zVDi1UpE*uXB-hMfBz$SM*!WdsNhCH?#Y;qJ?E7~D%{37~sm+7K*Qzs1;%7hT2zz1h zUukJo=uJ@GYy!nUYmFdh<^FqJxzt`8JBe>mN48vbg^HwGVxsG_Ew~bP%u_AWA?{i* z2l;Nu+6XuhiIt&MIZSQzEgN7yeWoKC7|e#@m(E20(Fes6bahJHE*?p$3k_lRVK z`*dWsiUElbcGeer!A(vXchyw4cJw0SGi)ImpHwF(W|?fQI61x|6PlV-Ux!vn4yZLe zh%VcL1vf<|i79*1$i;M_{x9m{;%2Irb!Wng4oi52zfG zEyx=n--YCG49@zs+uF?Ts1Sh#Bd*_8>~NLG$stFClt!=6-ZyqD*@0EQ4fUfPTV9>( z?P*e3`)mU5^Y8!V{WeVbR`dSlV!%?64SS#a!8rTBP~;Z-E%E?6b%hWYqY!}?a22p(aT4;Po<^PGXiHVczcv!JW=@IqwEN^jqw) zur%EXnQ^pH_)&bL3*S2_8#4QQnjckXhPX(NmI?N;iXP&nkql7wc540CGjVVdxLl}A;HeyhMR;bL0@xyEEY0J+7o_F3>%nWm=77+B()XYF zXl!d4&;RH*61GoILGdN$l*$_X6x*=KJWm8wd+{nSn|LZf{FfcBeAMZ~SnSq(iqWPh zZcRQdE{{d!K>+>Qvji#P7Y-S-q^RNek<;u0QefOUqaB`ECl$758QsH{wxn zHRic-lwx@7VFrS&+K)R1F+SNj%lTV_x3j6P0CBgkgCI}mt!(caR^fxP^S%zWH_w)e z8)t5Ippt%)%g=~2ym|L|3*8n$6FCA>4B;uHUrJP2L({_g&T(ksh>B&3C3;WLc|4Xl zSFI04q^S_yz}Xh+N@2fX)PYXmf~3gnJPn7BGT%s+Xda8S7as91DpX{t8Dp{42N8WV zcmf>1BVGNJL?6^(a%+%nijl;ip1G`COJNgH_iaL(!VbFz7v|;FUZ#QKZ^F( zIyf*bo3Ecg(Ir0T;X-x&t(y3&90(=?!H)C9TL(yYxGn$e*Fd~N(fwhYR5<>4=KzA# zZB+E>0y`-$Qm6T_Fj`2N5xj40IYB#wDz@k_-@6?wX(jNE9(A*$EOwV|M;Y zd9y>o0|^bYJRFG61J%q7T19usKe^BL!KkpQzNQTx%Io4-y47@ApGU`$& z??Vs76gU}kIo05H^lbEydFQ;Z^fL7NlM3*4&en?9BW~-tsW%_WY*^o)_}=L4nfMDX z&cxb06(<97%5>Flco~kUwCc2)fTino!&Mx>?wR5Jy1IJ94wIG7d#ij2=X6}@lx4rT zKBf-4D1I5NE@jO683f4L4`)FUpy3`nbNY16D00};6B%<$a4T0)B(i25K#uP+?;;7nU2xwtQhnQw+akp8OiJ@q!XUjHk= z-SS_o+~i*~{b#LLy7rXBKDltyvG_Ab4Wj&~NA1 zGlf^XjZ{9Q9yUBSkr*!gju#B4^zr&+_f`gqRER9M)Jv_&XVRN$o7uA|+AeZj%Iw9h z7@LurxZGL083tkIqXfUIna2ou&wRRU7@$($sOppDDQ`&vn2bHa8tYu2#>L(0?&{q) z`Y!M_LD~Es2cNPyBTo6nNNAR`YX09d`VF$&{z#0cyn^kM{x#HU%l2btsh!Yg);zoH z06bSUwtx+x`{qNjcjMnWrPynR)gc8fT@GEnaAu+4_Irz7f;P^c+12xba{Bl?ldfdR z`ue5=FeMe&9elv035IkLFtBAFStvso4}m$cxpYgI*kJccU#ky|Bft6GVv0niCiZ`H z;pVw~%Q+5eP>zhW^{@J)0Nd7dSNrE*98jCtUv@f{9!Tb_OLC^OW&|vfivFFY|NW~q z;h$r=@L=3}nl4x?h!S|i1hH6X{NL4Ee~W%EvlqbEN|j~nvH>hU@LKR{6J8SjM+)$N z6*;a#aqzg0sN0Fi^ioqGE1rIGC`?SF_3T4x$2Kajw2HQHr$uQzEE$#SN7}$p%Sl~K z^R2hkb`8a+ag{5c2%$N;Y;R8bEr=$&Jdrf1e4R^;+Fr2eR=PhQm|XKiwUjtgJ6~R% zqe}eI5`(!Ve1Lu!TlhYDuj771UZ8!LbPli2y~SBw12|!BOh%9AC-fM`RYLm>{ni$gkZVt_ffwab(3Z0U4@b6TSu88J$wk)AM)axx?+;tIi)Ro zp9YX`H`pn2MFvc#P162MAHMJ2Q>^oA^FX}&4OlxfaLO0>J=SAW`?@FNE7nyWvw2Gn zRvMMdIO7rLX2McVa~h>GrS2;Eu)s-d0hkOsiOe0?mw;Wll^g>|XkUMFlN9ml^|nJbCN}|PH(;MBhH}qh@LRlN{+|E& z9zO*~v6LF8<%#n7OqW}97pR0Tb{*~cN$6=0WKBp!f%^N3k8t`@112NesLiR$R?JG( zFN-83`DvYKmXSrjZ@}AHnEI|j)z#jGM^UNJ-yD1bhV|vVOIePk+Jj2a!E@l$u?M__j%)LS)1?$|0mm%4ln!jSVIG`jEHPqd*q%tof6MyE0J-~gTR7t?t>v11U85=3RvjjBBD_FUAjG87$%yCK48_){ z1mU?@laO?=h5jW0$Ty*6>**|`vy&VfE5Y}?ZjL-KfO$UPJgIiO;A2v!?&ja2%te#w zxsjHi&7HQyAEpIo9@Y!;FvjgVo-f2jhOH8RePvoNN1Q4$c`F0QkZ9w=1Yqnmhalq1@r zPn`bFNI1evy4nUSz+OCraQAoR=o%f^l1$3UtfnqzeqL9~Ji=?ZqjP1b-2hv|LoxC` zkvIVR3v~%O8{-8HpZZoKfHtaD^+%cyC55<+Jv^N1d#rgKCx6xF1?kbB$y|!G^o1P5 zUiq`>x+c2)$I_=$STB%-ohO@}z6wKOpM(u9riK1oPU~F2=3G>EFE^4X zA+JAwyj_Rlx8KN884o5|lb(BK?=O9ae)Ti};lM`D04Gx`m5&uSqWhe>a+#H}PCJ?^ zk@gOx^e3x3l+UyA282PAq4JTO>tK>%Ywk6G`m+j$+f)1wv>m1LtrJ2*8 z4B@tn3d#ooU%$wVCklZ%iJI_IRL*h7&C_UA-&oZ{<<~hxU)I|l;Ox3w1~7ovJs!yWG0qe@$T#_#GXUuiBvf7wHmlm% zL8Te;`mx>SD&cWMx~x&lFj>!7u_wdf#VuCr;CQY4SyO0%9I=$ zP9l>I^;tdCnDU6(%>-tTP8U(xHwcycMq{1;3NtcOkvrC?qG-ytr_5YB`>dLiWgZre4(XDDNiZ{C|`y zSg={^8t&_26irrLP7V|ZlY6!Q`;TzrQ)~$Fie*Up0QcTxf<>D5e$I_`rr6?ZeI1Wk z60ZSAG7#)s+HM-URU)LlX0@`rV0v3uUQ0|lIRrB_`Q!N?CMHhGrwsg^_a<-4hp^VI zBLo;Z6&^FI*z*fRYSSHi=&7G&q|{!a=Bi8&*nj$z7HfCZPJX(}{hcqRWgRzF*84&%vHv}mAa2xWIUR;}3DVq zeI_>7h5itx?UkXON-nFI;;}b$%!M|nv5u7@h;iklE#Q>dER+31tMbNpK0NhHA>{{? zlk>6u%>3VzPHf6;Ob6tpby)lO<*uQ^hZ44oTHTD;topq|HzB*U%3URA82Ox3oGRI+ zH2m~qa%}j`y|0~1=_)I;2r`_4EYA#`6+a37ooA_4m*EU`28AY^Th<1B`ZIsY?ex9i zso;fsr1g0sttvqX{_sq&Cstf_R+;pZs^;&-yRh~!f1L4c@d;|u8@5(E$w z20}M^fr0@4Q&omOS&Ptlp44X@dGES@V#pa%u3c@SlzIr?Xx4p__|&^w{A}mev$pAp zn{v5D>tAZbJe2O^($?8LNpViaRPpN>-|z($0ZiucAFzTTerZ;W%`#aN3F?d)(FROG2}U($dGBp-S_~eTF4@uTO*gDLvIe|ZZ6wY5Ky^t!!|h?l%1zYurzLAE3;9;;ayhzVwac%Y#Zk1eG$o zX7xC!L~}KYOid|UvwlukCjVoOYov1Td`LVE*1Ih{DRc|^p{@0c=!p*$X&p$86(%0x ziD!-Uzi4F-xdtKUG>6gM;X>W#DycpBm~Jn`yBc{Qny+~$nU?d9-91jBg9l3&i;E>4BG?lmdqL=GxF|NU#C!jfYo?E|EFtIJ7lBpcl?_-px7ze7PgKRtX4HzMf*jQ{35go+gI3f zae@~6PH*L87~Ro?eMyoFj+o>{3Bz3jwq%HLPGAp=7%y5IBKT;>0@xPcY!z|HkP&*t z0@mjR!7eA?UWiT1`Rmj)SJQhGuT9iTehx^0IBX+1LB8%dU9~y{o8)^IknL{^l|Tw{ z*#*VvQdHL~c7=jIbw0*~Gd%Y;2_k$BSAI(>DMt$mZ8vodyA#xU9pNbqifS*dV#l|L z)+}u4p&YbArJ|Wl>Jb%JPto=$@rz#ai>|O*RMojj?7~Sgp_!Hzn+-To=#iOT>POzx zCsT{N$e+9@8th!W;GFQ*dNDtib63Dbhoo4I%9zrQW_9jyyZ=bD;!)pSCD(I-Q{5bT zq30)w;rw!8k?L$`7u{ypd6Z2oD0pQ8ZVFKWrc3gvPp1VGGo8M~e0UZjmomU zJ~&`Da(rkWY&ht)x;lM^SM_;BN0QVBAeXmSz4uS5XA9HCMI#Yp?3kP8vGKWX+-8Fp z0rUcq6j%o*D&tAz36Ile?#~0iG(a?)mD()wX7#*~LX`nS93wY3WLru0lV~eilV8rR zB3hE%rA^C;wQM}sg`(Fp<|txrK;sTJGxCU=f5$=(K$u@%v>OL_4XLOYdO^HqOaM0^ z=Mv`pN&fMw9%X(`(Vrook2B{!U;kNq=$bHd_E!%C??m>zi*< z4|Xh1ZfA3(_R)pt^I+fk9*QQvPcBkArlwo>HYJWXG?4=04f^v^0QE)1EAD+17)f;Dm8s~xL(bc`GKwjH7Yln zk4~2AI-RCRg4X4=K}qcoasXqm(B*M~K~8DHp?jMjRgsMgdxUv`j0Njx0?l^9zi-oP zIeTLVI_ov^-!G;Q!FT_EXh^PLgVN};br7_P3!?`*JuX_x)-RDFx^*`vZ-`NYa_*Bl zuu#`-v?>6>8>HB4R@Xa0ily}w4(cD5dYuh!f2Cq8QDn0M7& z{@Z>+e21{+*K!g?*xV&aq}?s068wR>is~xqY&Y`Lz(>#>Q1t0$ME4;iz1$gf&L0#Q zje^KC|7^Rknzo-zgrJ1T6tutl?^^$`Fd1}p^Y8S&KTJS#JFW1{Dxc*|1X5Vx_o-(^ z=a$9XedYU`k(1##5(Gxn9*uJCS1(tZKj7=eWp!;Dd76n{bjpwnS8ob8Qy}TLJiN1$ zCw}?ZIPY35hIoDilSJU?JDAfeVmY{$wKT?AfEmapM})u4cbvA0osm4i&w-iYiCkMQ zNesx+#vS}>8W7jOL68DtFc}GiB*0uPxKy{^{xt}7JDI!dyp8(;-^6)-=;nW#b&8Jal2Tgct3(HkKB8#&!&!B*ce+k2VGJo^FSg)+0XgSGEes?m5U)2ThR zSd_g^c&5)2ue=n8`LU*-%6=tPH(s(y?et0~4OJAnyh45y)0IoBE_^jp7Da8b_Ev) zd@8EaF#g34J^}0>TUkTs>rbi6(1X_~_KfyPa_t%3xVZ0Mb!NbkBNf9$xgqdP;>Eu7 zw{H~H&cF-#nVJ*F?b%b4r6x@Y@iV?c^;M=q^Q22Y7eBJIKH6DW;@wl ztdk5$*xk0_NXf7lbnbE*-69q*`oD!5C*?F~ZjbhEE*XTKS*UFq&M5#&O;)P=R=kcN zAR&vofr8hx@zt2vZI0-#-6gSCdQ2!j(JVTWfNm%K9ML-%aY}P0Hu@6Uz3eut#mMOL>}l zKO-~*a+W%EDI(B5WL4$Uk0Bk+<<1ZytD2ER{gPlvle{_9Z3j ze&63duU6jndy{1rW-;<;#R9QAcGz_b_?mbAXY4SnSloPiLb>Vc&x!}EbfAH-m8m(X zl2(4Q0He>vgP!=iyzowe`(;;K&L*ZldV;0to_~ZISs%KWy)GlS-WrWjpo^A)b5XOf$6|`uO`dZ@hh$v4Nom0 zZp~cmAGz&ozplN|PclEBS_q0&J*#60+Xe9#(K(g}xct3YFXLar;HX~aR*c}i1w+*r zQ6hmtjp8^v-J}K)5s3-1a3s+UPY zm3(NDoAy5aNZuaxO4MdM9=qpFuIz9H>Lvl;lv`b3WVk&;fJL_aHnyA7l+7H6-=AD` z99?X>Eec{o+!K219n2zRkfo36Z$?&eAQB^8lqRDN;`~XvWbkNsBu#6@S0AcXmT{>` z|N07~88*oz()Tgcuz!V9c21WZ^?RqgjAwRKqWyTuEO9ezV)*>HF)7qUbU2L`;HkBF zb9lJ({EEKsUkShWry*4%Kb*Qk?$vMT(#{w_p0n15amS!;4lH=F3K~1*`?|i7 z1P$sAYffA=kRaRMp>zqlipioKNok-?77fRs&U8OkO!q?Q%zPvn7z@EzQ)>Lo>Z_=@NZKs2dKnRL6E0p| zzMb{+aVzdPm=<|3c?=S8q!(OWZ{|M&c%I#5phYK4A+!+17}_vL*SDD@;Y@1$2Y)*S-qPZ9mR+=fNcxo6r9}Jdrm}GI$uBMt22sv0*9Iqk z9Io_i?s9$t)UaAR)hwsuw`ng3O^T;;3;TpVRfFIQKgwh@B3(TOfRb{J`Bl3+EW)qJ zc?X#aNivZRd!FXXi3?ItrjUN$JK8nduYTMtHb#P6k%0gLc%jhGi0jo)nBx!|yzo0> zd9l$0UtxW(!lHcWH66~m3yAf5Qv|T4fClOXBNLzkBUVsL8z=rtR-Ei=3 z8N{^lh`gmk*cFJ{+He2e=&+-QX|3^e>q#B;@H(6*Lb{?@B_I?K5kS$#N>4pP<6v+@ z#=!VHk_4`F7pJLtXE*@HKo-}{E@02U3Jktedxdn)yN}nPr}Hm^kcWDkx`n&moK&Fu zFeEnJo9jqz0`4oj8QBOaf5ghM3Y)2jlw>jJ^8ed2^xnu+Q{W!*gc-g z3i>=*v|Tld8T^Z$e5C787Zsd$UG=q*@AzW4Umd{nPPIDz@kig0`x#br2Xsv%Tk}kS zMX`wAZ0c8gD#nQTpDvFm=y&MloP$kceYtGbSwUykj?T{hn9WRp^Ycp)>bBt8mS?}r z%FQ%J89&Ahe}3JUxa}eI0x!dqlW#L4W2a_nKz&EoL;X%b$W4`vQJ=HDwCo2n5($z! z{ zQg#;Ksf%R~3_Gk%7SJAS69H_=X5Z#vpn_6Zo65fVONU&}rVQcODW~`hSjOrrp`+0| zq$@6!mmN#1qF?6t6@@g(ad z(=Y;*m~)dq0ynR%`0L>V)bs<;s2$o`IjqWM1a7uL>h@O#vRx|{vh#buo?MdJt^6}1 zk$!=%hxq5JHvQ^4V_psScLnb*5{rg1Fe`Ar9e8>MmVFSoNHIC|3*jfMr!P?>Gxh^* zg||ehgoc6CA`gc@gnsrsXVC`3u4FOBc_5&c)z}H!qMsi(_W{nASvlT7rEh z{?$CO%XX*g9K{m0WG}MCfmPf-Y48G|_76)-UxtHPm(&_=xZQSJ@98{=0B6&^KSoKB zVc~xpdi`fId;Z=RiG^44i4PoL3l#;?F ztojl#_aABaWNz}E9Y=e@mR~{Fl+;MWzrMPgoAI^y3wyVz5WtpTNlIQvgLpp!JO^t3 zFqyg`F!~YtbR6Y53f|8F8Tc)Pl!)Sgp%a zOqzmzBzER$;i8Hul567e6_*L0)aE;By8}X|3m4odE>eB2SaT|pb&IHEY+ydbhHVd{ zWbR0H)17E-P7s&@^olj8Rhw)itbXGYaqcAz#Rd@v(3e2Lvqjn)1+XLzZQbFF2*C9B2AnU_wEyHa>Yy`|RumC?_LLHNh<^GVDfMZ0 z`Vf~>b>I+PnD3I}S2b#Cv{^|SoaPYBm8LM?u}^wp3S3Nj(%GeJ&v3QU64z?BIcX0* z2zNgUd^nKcZr4F8@1AAY)S|#ucOk66?5>D2H9|NZ9~0!fFw3SBeiE7SHK}8YWj`G! zpCtDWtL!aL^6kGlk#f74zwNbdKy2Xb?WnlY{BS6MZktIgDXhX#^DcY+bl|C;`kEuzYNFlLJi6I$ZvU4*;0VBOkQ3JiY!5A#n^@8Rffu|V9jrSqYY|*>0I2uLCBO;Bpv0yb55BmM^|i4JmJ6L-X^S-bFWS%S-3SsU)#b;Pz3M<{IYZL`5qN*TT8K1Ui5~-CDBE-Ozabk}_>|!TDz&Q9!sl-u`0f%`?5!KaJVCV9@%hs@zhHV=Wu6dd z;i6Y{y){uIutwbE3CLl41cK^$_TE%dx^`#*gdzKh>5FLv(l#znr5sOMNPHYlGO|+g z`imj1)J657-y#fIg8eEh;54fxAh4hG*(b|;>EK1$nAr2tbAJABwTc(p;cDd(Utey^ zIhX*-n+0zvBXUM7H3u1r$(kW6tk{nvy$g&W?B~=Ll78(52`^_5cN4fQQux4j?`*Cb z9XysUTQn!txj}Y_!VMh%G5F5=EDok14#qhYd&VKTZ)yhBY(!9Ik-ah0SGxhu6^~J6 zs!gm()`S&1U^UWZc^Sx7ys*7Gxw$TgTLW)Y;>N=U0+68x;Vuc+Si2?2N#xW7!mT~f zTegRuQTxxAjikb|p?ACFsyX<$v(EN; zJ(Am*^ybcb4?Glxr`S;EJF#puG^OUlwXKGTk;J+Y3$mj^?#OZ5onCJZk(qA$AwcBx4VqQx;{gZ zPycKCVjLqtEfVJTcHZqL1Zk};ZY-1k35r;#6{7^@tfO~!If18!m`w?vSL>�Jf%g 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 F>-hdfe8s_qlkCPD-37uq-lr^~7 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%0DQt^T6 zr?CrUBAEN31t_LvlZ`THjFC<|{*4uR1&JGO>UKS|Xvk?Z(TEsg(`5@J2>q_)Ax`oxdyF=_Q3Z$YqZbk-2=wT#rhlx7>lAdsue7j0$=IG2 zUq0;Z?(9fuFA{5bcsGU#~p%+ID;NvJ)9bKXUG`mX4@K1$E25|@|AcABa?6$_BQn8?5T@Po`LRZi-uBsVQr2+T4YBmbi~u^ zLs{91$!*Qlfr&BN6!xrUW=VacJ}kDRxLn5RB#-TI8{sR!GLUJ-y*9tFE!^B&|}J*0iE01JNscaB1|Ix*U0FZBxO5HOSD3`q*}e`SG3|r zfC+`DuxNzO#o4iJ(f?LDXk_Vg3Q7M51N7_jB-q|QYevpnqo1+oUUx^-oRKDcG!N`m zBYCq8IU-jY!{d?nBIjn$OIbi#>PBFbo3q=uB14i@J@H3I|C-ouNb`iin;%fri`T`G zbcnQXRmN*8=<1hzf&KNl{_pEc%f<-@gv)W z^UKOM6rOzcq?cAPn$XWly!GJ+5o9KLqe(Jheh!HV5zw=iGiKbFUL;C(B_%L1FgbU1X^H9=K_+SYNy5sN;qe5$g{6xK;Z@89pO!3sr@ZT<=}+tHFVivWGgon1w`5h) z-dk~GXQwIky>Wk1#-1yMok(Y1yozz?3$BuMQbRP?p;mpX_wy;?C_cXD~< zT|A?KwO|>NKRqcvD%Z@MT29+prWTKC((Q$h?%=0ZZK)Fu@XJc|{9Z54>7OmH`D-dF zf`Tp?I}Kx`0Op-W*&QtmAg1t8%)sUOgQ+X6q7$b_;&0RS=SlGK!ljrm$~DX-vZOqng2ol0*}{YUnlBWpAO zjFbw*QA|tys25OI(|-9Y=E`M96PrOFqy{7eC{~obx=N>44Udob0??sDf8ZjT3OwM> zk#hG|dnta7T(eUM&=7xyD|$5O<|$;AO7Q#jtG}_wz{{ldlO6<)Qc;N7o#xu*0ptmb zAq`HTq!6l$HEf)}GGdk(z`Hu8dBkr0C1x%C%^};gHnaWn370608;rQ zcJl8J&Dto;%m@Q+axPn5UfyDO?=A%(IE?`50P>rE?8~pWad4CXgh)6bA?Pvir#B&i zv(s`OxD(R9KbOqelgt^G^V@u>YEVy&a7hPvonF9=1ds>CB>}E@Qi=pxB;IAhg|y>7 zuiA(P2evD#rdKm-#^-=*{^^CK%Bu>WUO7-XO-e1BbtV`y1RoA=#Wh#ot26X$j!v_R zSG3Ry06qOV4*bdmKlu%ph_l3G9ox?ve>JfGJP+eQ)$F(udQEo8?fTZr1vX3ts>;x@=J9 zkc{_}EmKg<+K0T>A+zH<*7FV}Nq~pF5ZX-$p#fBOnA7)XVJr_3g3geeQAfNQtSw+G zGLpR;H8RJZ_W$|0*=ls$S*84+M{*()Dxxqre=zs*sFO^JWWkTs#nT4dEx8YWsuu1m zAE~C53R9nw$S37ht#NglN6i>=fFh0{oLZ*-7-aulvG3?UCHAXae&T8WcDe0xG1ErL z8Rv)--LtFmUbRk>4M2w#iqWdikN2lL_=2X7COo!Cb-VQOb2dw_*~EW^eeUgEm}0}N zPR&_E*UR-@dm9PrT$u!|w#MVRpGh!{dOI+?JKJ)=q?zeJ^dM8~+`00i?=NGiA?xBX zI)yPh4uQoyW6V{et96zD(OfAZ(u`#YV3ThVCSt&_`}d7s(V2s%=3`NK{@|~Tw@mNH zy!-p}l0<8QnkVYT#R!9^tG5p~HnOrn2w(#7A?Zx$;2c43!_($t@dcx$p*p#MHn}=K z(QhS7Q%_GWh8i=bNW39aVjE+ts?(0Sj<#EaVoThCWo$y0n;lQ$)B-Q3w&{1zhl&)Z z`vncxdBMXHX)z5c+!j14?~ztvvOwGD+f5Qpd6+SFr&v-J?^JK)h`(jb*>01tiCvDp0cTOv;5eDr^mCr*UV(;+){9H8s#jx z$=iD@P1lfo(vO5k?+|lCA#?p6)`=jO4N3fmls+XHYZvZN<5`qUttn&9MTFZ(L)5~~ zjc;*<^?ri`h76VDF!BUtQQT@=EGS65YGPcz=zFt2bsb=L%YU93ZhUdVWxv3Aa&8f0 zUoC#JKRS9icm;0KF*dTJ0bXBV`9<@NSd z;XJ3*Wd-08;Jji|)WriwY62Bh5CY{KN?L$%ia);^pYDv^zl$9;P;sZ!w@?G1DHAnQKdY?o;bk(a=(3 zlL^>L_1!dSm`chxEZ(m|m6sTvo7{S&-dwofTh}(;wp{qJ8NVQ&n!@w=wl9Sn*xzW} zACq+O+qcH;B>KBV}d4mY4){gfd8GKLx7{-())^gHxx3(ud+`Fs`XaH2%Fq)N+S(*!$9NAqwLO*Y650XO6Hv2{T9 zU6j%wNpPM>?n31ZfbVQV)GNylgHOXts4{k;&hKCK zbm8W(LOdX^j)GjIpPl-}qSna$h8&?Ub8rdd!7sGBAtpJB2sPk~uGhF8Gg-~y5@fci zQEU_5u6HT##htA2|2&Rl6R#tZU;({UYBQYp5%TxYd02lIyY!zP`;%lk7e+j&xfxux z3w`-tGC2D3d|%2;*q>IiCufZh`iwGK>a>AmCOr}$OMRF!9v*u%Vydp$<<15mPkE=x zBrK3?2>FTsf>7)~5xtd48&TZ2RIP`Bt%Xo}Xm~135&ka}+1@l6T&_SH_ek zp92ml#mkPz*NS7@i1Y%RB3t)wTPEt-@>Ty$Io$l)%@OD2=#q_PW{f58wbb0Z_y87X zAQg89TEH=U_|_cm1VMc`Lq1HbO#|p(1(v#9DR4=S8N~O!chVCQrz}<536f6oh)Z&h zMO#<`UeG@K#vH{9M~B0znnTWg#0kcianPu3g+HE}bGisT;e0E+^a2ZLzmZxR)mp6W zd$eJ|YlD$>t^Js_cjy0jb9L$ZWZomSJRsI?tTm+eT>{jpuz9iNKc_1HTUW_a$~6PL zKl@Y+8z0!br*OaVm8kXrL!)H?aPJ{^x%xFN!r#?A|J0QE<|R=>HbQ<1m@3yg-znwx z5x57GoAgmSZnI%!_G48AhypQ76ObdAeVKg|(4MbI^CJ>0$pUdJj3xd_&PD*(Sj?Dr zdt!Cd+qdk_pC2S7eU)y9(b~C8`xQL_*9xRaDaQRsVm4X;9CwXVkDRS0ie}h4@Cd|K z_v$Y^bwZV&Ajq)sy&w0%+=LdOYgTHsQRi;d>ZR>gRt)6Jzt|4t=ETslUlT~zhja!R z`Ft(tmCTAwK>c2kZm406A0QBHp+HLqV???>dPVlMr@1tZ0aiE14p~~FWE?n={|e!<^(&!wR#=;T0&DH*-DqW}` z!YGx*miR@aEc>*uJP4eTy$hlcw~=Ij82{jy?byWS4M$*#dpX&&1 z7d!T-5#kJaMhkk$xH2ZJ>i$karxFGo`Sf)HJO*&iN-#}aD|b9;$7F`Q0@Mb~s4SO` zjK@Q7`7bV}q>UOzKLyUct%ZJ1khF~(O*Xf!z4xtODC49^<@eG~yS4wCVBZ$f;ci^z z*0gqWw*_3ekZf(aIQ!%#a%i`N!mK#l`x$&UJb!#_&fl9mN&i2WH1@VW$^9iGd!>oz zW4ZX(u4^HHvGJv2bp$2BBPO#Hxj)1IU6SW+MOXt7c<`zO_GgO-)+7g$esGBgfWOO$(c*6H&uQ*aQANPa9wJ2_!t)C4(up@4_ zu2om@CF9p@=g{{+L(LT}&L<#|2?L*{D#@zmi`oPzk@|3q$0cB`Lm2-(A1)%K9q!&P z?+eoT$P&yH*lKgLk0R|w;ojYbubAH-9QS6a+?-@B9b=yM{B>&&z--Wmb1oNJy5lTc zLDZnyprrJaPq-RYT*($$c;iEe0n#XW*M-tg*=Yk3?FjcFpfo`{R6Geu?-#jc4l|2= zAhf~_mgGRjkVjZ+4J7{=W^8LaKB-=;(H1K$uUY|hqA8~^l`Ts%dPiS(xWZ2@r9PbL`qzC2%Sc}ayu~q zG--0El?A~>94`4bi>wXi;Q9^!RqF^$iBoRlW>MzdZwv&3hpukl{^6u!Or0!Yv;UxR zAWYhJu;<$tdzG^A=WgkG@zOrHxAY_@;kSgT{^HTqQe(h*rri&n@e+ZO#_D+*PW0hO z{+iNJ!xX)W|7+D6X{p$?DYrd`8y|sfsVvM#v))n%ucj6zIVp6S?44|_j6;iLlAU=c z?|)1vxcxKxuF>m5MqUvWAo!b79!uKDRq%Vv3Y>tY0Pk+5LJC8ScoNLzlGK;Y2)hmXYPE0q_H;j}eY)vc=LlJuE zr~8;`S$YZ(5<+K+k_YDGx?mh&j6aN=%ml}L?C^hy^i)2W;c~@?vP7j1xqg#reyW?V zTD)t+ok_ugev{wY=aSB7kGCv{chH7Dzjy$$l^LIsbJ+7=7)hyk zw*RR9WuiYX6^pZHKYL(W;Qq&tk~1p&=7UM1>koflSo1za?n%BCg5z-mZ-sMg*6*YP zoyx-k?x~N<mkx6f!1(ql7BFw2)jsu87nE7s^ zFD@vO&q<~Rnp6PI*n@v^@^tB7_Nw7$%Ysg=q*zt;h|&F;N!$7q#-{YnoJ#B|@!)o= z>(F4emz?nsCfse&F7sFEN%A#H%#QP*WvS+N&!71}+^T~CaZNYVz&}CCg$fgzVtb;~M6%zP-|ehVZ7TtWQ^dK91v01qOUq>xPWo>~7E2@V4$$M@NmFcSYX= z3N)zh+)3LH_dnLtAVnlMG(uQY)Q?(q!zp-hZf0&ZoN5)a)9uf*~2Hsm{K@wI%DOwr+ z{Tm`)*_5q?>HavlCA$uK7it4flU>V0Xc}G)ih!GVY}Hn~kohyppg~FF@pRwWLYLoXwZ{6iBvR;QVt|KbxfM<{00Av9}?5 zH#B{}(yi`?&%$@;>aQ~9y7=xGr~!Gy&pcH^gotx?I&uEYA{T-?t44uo-C-^?xLca3 z%CGq+A>7l1j6gx$9qgy{hgFw)CH3fxd%5lA9O<+~xMW6gR~~Q^D%bYN|K3ySLgRA( zb;nXGz#Qm|P<+immrDFA(KrRb1_rQ((BWvPas#^{q(YGI8(w%pI0IUAX0d```AY2m z!Lj;QAn1nP{EK$yg;V=e2B?Df2cSQ7&j}7(ZRS>3Shu&Muf>ugnGYrDQj@im^z}^l z(!DTbI*H3`N62#yFqh=J@Do6E!9O}WtJHEVoV;z?+ms@?0 zyoCM@a`MPT)k@u;mX@ECe&S)uIJ1?docIF3XRd6rWwv$v$~R6 zNV4mk{Bf66y|l!IIIF$6<0HI76Zf;FZTB{3zF7QK^2z9%d9lps$W;1v15)|m?tfu| zv8rdJ#fOL!L3_U#6H6eKTQE%Nd2iLy{Tvx(ex-i)@(uW93Q%POfc8bk;(cdqM0FF(ZLH zj(7z8EA|f;=Ft{;r{*m|kwP*=XiCntA^TDjaa6T5-r)apQ&NlE5H0GqB?$qAL?z>J zzfr|Mp3Rp>ykJxO0|sdEk0%n%GpQb8^;xY@U0Ix^Osb+Bbr&Om`%h&WLvI*D;Y%X! zDDKLU`+vJG*H&9Pu~fJbR4lfhAe#Pt1{rJk>CG)R(62&1W#~7Q#pU(W%4%y<9vAW#jvG5(g=EvJ_Z~qzPrVyS0975u8#6HYzx+JXF zK?>Nc$M~H0sfFMmME~yO#-~4*t=jQF$ppbBbV+=FPZNFcjJslyXEapZSN0GI|Wq>v2|RsJ&pcBi)uTLc*bhgDm?AGU>nx7eTzz`OGsUJDTh%&N)! z#bp_}ko=C6Grb7g02)(j)W`m1&g|7qVbT2xy`-16PKjs^AIdBYiIsEB9MVL+9mNNbUeXBpAwq!m@i9&%7 zPQ*xqPJ9hhd!Yj8MmGHZa806(20>2rN6UtbRt|K}*7^K5RFc>9d6`+j9|b_I(;f#Xld;dfWt@4GvF=`p((=$84-au;v_5`*UVIb8e3S%-M+XRU!5 z10ZZDs1CU?HN8*Ep1w4Cg3kSasQRk7CfqmPF=|LSN@+$nj8eKK1OWl*l~ z(TLJDx$|rtCo7bNXmN>CY zNgrwt5bhzYE^ok{qP@pML|a~an>i12XGW9$A$}OgO!4^+VUnIixj8ta+eNn-9%~Mb zViufRwg&1=zEFIPq@&+&iYBro2Ut8%{pyK=mRx|H#=ynzG?Qd>TJ?HwkA!5H=84q| zjB~m0aY!RmP0E$cWEJKo@o8WXh?b!~EbD6pES?_{t(vDv z!y%8?$cGpt+j-YiuiEtWId>S#%XPy+@^@Fda1)l_eEQ_>zp3``8xs#UL5CJ5 zMYOhd!=ei)-B;p-#X2* z#~fd?NE=M}@!-h+e5IylelPbc8HMgbjZ8-5+}HGyP1!|rK$edprkip+8_`u=?~|T; zI8pDT5xNUXxt)RydPC9>*+8;qBAwF z`5L@?>=5jeV2hCsL4vd(EDCR~^PwA}ULsx*8GuIaSrVHv_7U|IocCcd7#v2D^y!|S zse$L`%jL^MrCso)T}aSBtU=-7;98nw4?0>T)ynBZaI&rC8|8LA^Y-tTH+vWS#Ig~e z8aN`|oTnTaF=P@`(-_P5T{MPvVr74agFug4lxX3v8#Z$6P z1w~_$_422$P1Kz`ThIO1B`Y)(EzSc(4;zyUBo=}e%A1FOh&51~7+$&D-o=(-I=TS8 zS3;-2cPx1CqNjYT@$;WQZcE)ds}Rpl-WsmXwDYOr1+iNCRp_xG+ib5hFGZ8MevCGL znlgR*KZ2D>r6!)fz{&^_B06o2Z8XP{&`YO@UqAgANslg19V_LJq*ezCE1B}YZS%|} zd5+kt8yUllOkF;Z4HpHE(q=BjTCp|h0Oe!UZYHDzke*&@b;-3sD;~0wPd8ppnXd&A zWr|5j``X$aw72=H7t|nK9Yg7F?}i2qQph&e2-Ik%y-nP05?FSUUr*DAJ7{K7F$#_} zYIhh!Fd*_WOR;2i7ry+tJ#O8A;g?jd8Zfyjr%!Q>XaD&}(0Y)dUy-7-(x`?V@D@{)M*~2y}wo47hjPH~F$rr@==rCOlf1V`x zR0uWbTM7O->TgKOHG2l1rC)|+AOE(fx;H>+uL@5%fq#(@r`b0>$hGsZ&88;(v_3PU zXuNt(#kMuq#TH-m>{VIUm5uxR61&p$lVj1R;YS?y>f04KEkwh=H?kRfE{H?B!4Fp- zPj2a>vYrp^ae>9YuTO9632tQZMIhy4rinX>%nxOuDcDh9$bcr#k*X$?A50>H^;S{F zWh#nt-uve<4T&5Wy~tA*MdrR*Pzd{XMJJarOmN0g%-=q^`>(T$CpR9u+8%K!+2z-J@BiHrn4E609CGW_yVbJF zIaLZ57YGbMZn3m9t-3b+AzB?HY;=BUxX^PUiE0{}4Ou|im`>$TLZ~+aRWt^joNq;0 zuktbx|~@fd%P8)P(6e!?o>2>QU9yI&`e5$74`tQh;Gj1i!|6}**w zDxL~17T>(bd7(VgtLgwRAhqB05u(?Vd&-zYbL%ICQMTpY?k|c&+9rD5mpY2-;ktaX zeURXF4*b`_oG{hjHR+ON6d=X6_^nyW1+jda&~o49BdvOdf3^iIVD0PP4C-mQ-JiYx zS=iLd{fGG7^<8^4(xs}<5$*W<^X$WL*Gs(7LgZHg8q~mj;OHe{ZZT`&m$W!4s2R1> za=+-gweT7c^zZJr9ckYHTWWr;iXu_Y^{x3wBSej3iz-*pvWedLHTK`-koq@~5O0{s z9!yedH}do=Z>i_O*v-|>UsT`IN1lb_bf4_UUk%s&o)-Ngs!NB4owC#h2E6u-(VkaP9)(YEB9{LyMdSCFYDKQ_1 zUJY|y4zbmn7te`1mEk=d-wA@hYZpy96R04PAPuRX%KY$c~O*HwGcJunmu@-~oBhxSJs`g`|Cf-LT+BJ7(e2C_Xbvk|zDEHw>B6aqHJr-+p<@util)_nU{Y=o6a}Hmb@~ zu5#jviQiuQ3an>IXtNPNnqawosNUc>J1J^u_$wNi{8DvY6i+Xlz($G}%AfQ%g=`*10m1ItP)NwP;IZRUpM&w_U}XuV0R^dOx6~M6~MYf?&t9?vc%knal$Io0}ce> z>XRWjyrb-eg8Im_K^BNGy3jp;SVB0VzBkxp@5*$iSdM-?1exu6hj3r?ZivA0b{Y8; zQg|Uz`vIS{))P*~yg^}Pqn(RE@(D)$Y9T^fK@DX@B5 z-MF2v*{lnAQ*oo4L7D7<#F2Pb07n_rIew4C)~g%Pxys2qviq#4+K*QUsxiHf_goLi zqlm|Yi0c%Px&P`VAeNzvAlssDX3AvPP-!3$LwmX&1>fE%gV4=J1EA#yT zzAUA|2=dA-Dj^4$2_VsOmj8$AqNnJo@MLnaqwmRId;^6lrq29HU-wcaY1e4*vOxjh zew$=1pPRMxC$1dR8-h(Nbc?&jR@${R=DBP#!!lHBI>(M;PeQ`Eov6R}HU-a9m^W44 zl`81N~UTdep|Q+CrZd&*K>0LgaSz zf85))*H*t{{5MEw7ZprKwY`8?Dvo#zC;b^CBV8o|zrM1GHkr%rf^O&RBihYV<)- zwPd?V$yk@?Lld{|m-pOwxOPH=bMhm7WXG=~9*qwg>?Oh&z8*p!V9MTHjdeF>E#bku%~EA*=dpP*XdFqbx~xI|F_nY&O8NRdQ?MCgS)1$t?u@H_uv0r z7{xu(rx?B-G-d);ke!kBqyky5P%u7oBGIA((jsKVXK869*5ugOKdTbK3_PdY3C6rF zz#mJs30q5>&8GA`=OU(psW7*~^0oPzgLd;i${dZsUOk)pVcP@I4%C_F-dTX^y}Nig z#ZNDf)n*LFaf~nV+1#DHit<7P7%{yP$ktd&2!qv>7j_D*3@B#wK|NB%Me^YcnH2-b z5fbg8(wXH~#G{9Ar(!l0UU& z*j97R*WSR;758n~l{0gHwqJ#no^h_3ldENBp`~<|qHPaC49oulehDNCzb9s!;m$VA zikS8n=`nVNkzqo9l&p1KLJEJ_L!dgHYJh~IKd&gBXhl;-;%PGXHImkU0$mF+$0@H} z5kSL5@e2|fm3M_%&pG}s?vavsxCLu{knM-oZ~F4ZTI&Vc&`|h2>1zULFcjlQ@fy)# zIzj1Hsv7}ngljkA0D<}i@Zi+-^swMkYu-ig7w-ypw?>BsJ?HQ0wMzHLI^2z{uXD5h z)nN4*Z7>*JjISU!N!-UX*Y;Q5SC!+fVWaRE;=)mbV~ZdrB)rMtnP#Mg7^}@zLCy4^#vM*teV?IrIlrr<7m1O z;~~nFMZ;4n(oITUxcGH?wQILW@|2%$3*ZT4JenpWjf|tf4qOZ0~ zyMb_va%eN9kL=l)=3^l`h~-Niml1HS{Jv$(Oba%iCCNr#w>Posi##w0eB_aOiO!Au zXRwmX_IYu2QCeDbNHF;KHOkRiVz~QNVOFD0$mBuj6n`x(qWw0sht?%RIP=E%0D0yy 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
x<5G_oY0}#_62hGz6|*`M+|DO(O&FX8FcomTmNS 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