@next-bricks/ai-portal 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/bricks.json +1 -1
  2. package/dist/chunks/7301.8d3e5e32.js +2 -0
  3. package/dist/chunks/7301.8d3e5e32.js.map +1 -0
  4. package/dist/chunks/chat-box.25b3ea6a.js +2 -0
  5. package/dist/chunks/chat-box.25b3ea6a.js.map +1 -0
  6. package/dist/chunks/{chat-history.5166ddf6.js → chat-history.ba64d223.js} +3 -3
  7. package/dist/chunks/chat-history.ba64d223.js.map +1 -0
  8. package/dist/chunks/home-container.e2de03d1.js +2 -0
  9. package/dist/chunks/{home-container.77357cc7.js.map → home-container.e2de03d1.js.map} +1 -1
  10. package/dist/chunks/{main.afea75cf.js → main.53a4ef9d.js} +2 -2
  11. package/dist/chunks/{main.afea75cf.js.map → main.53a4ef9d.js.map} +1 -1
  12. package/dist/examples.json +1 -1
  13. package/dist/images/af389fa6.svg +16 -0
  14. package/dist/index.72730e54.js +2 -0
  15. package/dist/index.72730e54.js.map +1 -0
  16. package/dist/manifest.json +9 -0
  17. package/dist/types.json +65 -1
  18. package/dist-types/chat-box/i18n.d.ts +2 -1
  19. package/dist-types/chat-box/index.d.ts +14 -1
  20. package/dist-types/chat-history/index.d.ts +1 -0
  21. package/docs/chat-history.md +3 -0
  22. package/package.json +2 -2
  23. package/dist/chunks/8330.59cb93c5.js +0 -2
  24. package/dist/chunks/8330.59cb93c5.js.map +0 -1
  25. package/dist/chunks/chat-box.bb70bdf7.js +0 -2
  26. package/dist/chunks/chat-box.bb70bdf7.js.map +0 -1
  27. package/dist/chunks/chat-history.5166ddf6.js.map +0 -1
  28. package/dist/chunks/home-container.77357cc7.js +0 -2
  29. package/dist/index.ebe83843.js +0 -2
  30. package/dist/index.ebe83843.js.map +0 -1
  31. /package/dist/chunks/{chat-history.5166ddf6.js.LICENSE.txt → chat-history.ba64d223.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.72730e54.js","mappings":"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","sources":["webpack:///webpack/runtime/load script","webpack:///webpack/runtime/consumes","webpack:///webpack/container-entry","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/ensure chunk","webpack:///webpack/runtime/get javascript chunk filename","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/node module decorator","webpack:///webpack/runtime/sharing","webpack:///webpack/runtime/publicPath","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/runtime/nonce","webpack:///webpack/startup"],"sourcesContent":["var inProgress = {};\nvar dataWebpackPrefix = \"@next-bricks/ai-portal:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","var parseVersion = (str) => {\n\t// see webpack/lib/util/semver.js for original code\n\tvar p=p=>{return p.split(\".\").map((p=>{return+p==p?+p:p}))},n=/^([^-+]+)?(?:-([^+]+))?(?:\\+(.+))?$/.exec(str),r=n[1]?p(n[1]):[];return n[2]&&(r.length++,r.push.apply(r,p(n[2]))),n[3]&&(r.push([]),r.push.apply(r,p(n[3]))),r;\n}\nvar versionLt = (a, b) => {\n\t// see webpack/lib/util/semver.js for original code\n\ta=parseVersion(a),b=parseVersion(b);for(var r=0;;){if(r>=a.length)return r<b.length&&\"u\"!=(typeof b[r])[0];var e=a[r],n=(typeof e)[0];if(r>=b.length)return\"u\"==n;var t=b[r],f=(typeof t)[0];if(n!=f)return\"o\"==n&&\"n\"==f||(\"s\"==f||\"u\"==n);if(\"o\"!=n&&\"u\"!=n&&e!=t)return e<t;r++}\n}\nvar rangeToString = (range) => {\n\t// see webpack/lib/util/semver.js for original code\n\tvar r=range[0],n=\"\";if(1===range.length)return\"*\";if(r+.5){n+=0==r?\">=\":-1==r?\"<\":1==r?\"^\":2==r?\"~\":r>0?\"=\":\"!=\";for(var e=1,a=1;a<range.length;a++){e--,n+=\"u\"==(typeof(t=range[a]))[0]?\"-\":(e>0?\".\":\"\")+(e=2,t)}return n}var g=[];for(a=1;a<range.length;a++){var t=range[a];g.push(0===t?\"not(\"+o()+\")\":1===t?\"(\"+o()+\" || \"+o()+\")\":2===t?g.pop()+\" \"+g.pop():rangeToString(t))}return o();function o(){return g.pop().replace(/^\\((.+)\\)$/,\"$1\")}\n}\nvar satisfy = (range, version) => {\n\t// see webpack/lib/util/semver.js for original code\n\tif(0 in range){version=parseVersion(version);var e=range[0],r=e<0;r&&(e=-e-1);for(var n=0,i=1,a=!0;;i++,n++){var f,s,g=i<range.length?(typeof range[i])[0]:\"\";if(n>=version.length||\"o\"==(s=(typeof(f=version[n]))[0]))return!a||(\"u\"==g?i>e&&!r:\"\"==g!=r);if(\"u\"==s){if(!a||\"u\"!=g)return!1}else if(a)if(g==s)if(i<=e){if(f!=range[i])return!1}else{if(r?f>range[i]:f<range[i])return!1;f!=range[i]&&(a=!1)}else if(\"s\"!=g&&\"n\"!=g){if(r||i<=e)return!1;a=!1,i--}else{if(i<=e||s<g!=r)return!1;a=!1}else\"s\"!=g&&\"n\"!=g&&(a=!1,i--)}}var t=[],o=t.pop.bind(t);for(n=1;n<range.length;n++){var u=range[n];t.push(1==u?o()|o():2==u?o()&o():u?satisfy(u,version):!o())}return!!o();\n}\nvar exists = (scope, key) => {\n\treturn scope && __webpack_require__.o(scope, key);\n}\nvar get = (entry) => {\n\tentry.loaded = 1;\n\treturn entry.get()\n};\nvar eagerOnly = (versions) => {\n\treturn Object.keys(versions).reduce((filtered, version) => {\n\t\t\tif (versions[version].eager) {\n\t\t\t\tfiltered[version] = versions[version];\n\t\t\t}\n\t\t\treturn filtered;\n\t}, {});\n};\nvar findLatestVersion = (scope, key, eager) => {\n\tvar versions = eager ? eagerOnly(scope[key]) : scope[key];\n\tvar key = Object.keys(versions).reduce((a, b) => {\n\t\treturn !a || versionLt(a, b) ? b : a;\n\t}, 0);\n\treturn key && versions[key];\n};\nvar findSatisfyingVersion = (scope, key, requiredVersion, eager) => {\n\tvar versions = eager ? eagerOnly(scope[key]) : scope[key];\n\tvar key = Object.keys(versions).reduce((a, b) => {\n\t\tif (!satisfy(requiredVersion, b)) return a;\n\t\treturn !a || versionLt(a, b) ? b : a;\n\t}, 0);\n\treturn key && versions[key]\n};\nvar findSingletonVersionKey = (scope, key, eager) => {\n\tvar versions = eager ? eagerOnly(scope[key]) : scope[key];\n\treturn Object.keys(versions).reduce((a, b) => {\n\t\treturn !a || (!versions[a].loaded && versionLt(a, b)) ? b : a;\n\t}, 0);\n};\nvar getInvalidSingletonVersionMessage = (scope, key, version, requiredVersion) => {\n\treturn \"Unsatisfied version \" + version + \" from \" + (version && scope[key][version].from) + \" of shared singleton module \" + key + \" (required \" + rangeToString(requiredVersion) + \")\"\n};\nvar getInvalidVersionMessage = (scope, scopeName, key, requiredVersion, eager) => {\n\tvar versions = scope[key];\n\treturn \"No satisfying version (\" + rangeToString(requiredVersion) + \")\" + (eager ? \" for eager consumption\" : \"\") + \" of shared module \" + key + \" found in shared scope \" + scopeName + \".\\n\" +\n\t\t\"Available versions: \" + Object.keys(versions).map((key) => {\n\t\treturn key + \" from \" + versions[key].from;\n\t}).join(\", \");\n};\nvar fail = (msg) => {\n\tthrow new Error(msg);\n}\nvar failAsNotExist = (scopeName, key) => {\n\treturn fail(\"Shared module \" + key + \" doesn't exist in shared scope \" + scopeName);\n}\nvar warn = /*#__PURE__*/ (msg) => {\n\tif (typeof console !== \"undefined\" && console.warn) console.warn(msg);\n};\nvar init = (fn) => (function(scopeName, key, eager, c, d) {\n\tvar promise = __webpack_require__.I(scopeName);\n\tif (promise && promise.then && !eager) {\n\t\treturn promise.then(fn.bind(fn, scopeName, __webpack_require__.S[scopeName], key, false, c, d));\n\t}\n\treturn fn(scopeName, __webpack_require__.S[scopeName], key, eager, c, d);\n});\n\nvar useFallback = (scopeName, key, fallback) => {\n\treturn fallback ? fallback() : failAsNotExist(scopeName, key);\n}\nvar load = /*#__PURE__*/ init((scopeName, scope, key, eager, fallback) => {\n\tif (!exists(scope, key)) return useFallback(scopeName, key, fallback);\n\treturn get(findLatestVersion(scope, key, eager));\n});\nvar loadVersion = /*#__PURE__*/ init((scopeName, scope, key, eager, requiredVersion, fallback) => {\n\tif (!exists(scope, key)) return useFallback(scopeName, key, fallback);\n\tvar satisfyingVersion = findSatisfyingVersion(scope, key, requiredVersion, eager);\n\tif (satisfyingVersion) return get(satisfyingVersion);\n\twarn(getInvalidVersionMessage(scope, scopeName, key, requiredVersion, eager))\n\treturn get(findLatestVersion(scope, key, eager));\n});\nvar loadStrictVersion = /*#__PURE__*/ init((scopeName, scope, key, eager, requiredVersion, fallback) => {\n\tif (!exists(scope, key)) return useFallback(scopeName, key, fallback);\n\tvar satisfyingVersion = findSatisfyingVersion(scope, key, requiredVersion, eager);\n\tif (satisfyingVersion) return get(satisfyingVersion);\n\tif (fallback) return fallback();\n\tfail(getInvalidVersionMessage(scope, scopeName, key, requiredVersion, eager));\n});\nvar loadSingleton = /*#__PURE__*/ init((scopeName, scope, key, eager, fallback) => {\n\tif (!exists(scope, key)) return useFallback(scopeName, key, fallback);\n\tvar version = findSingletonVersionKey(scope, key, eager);\n\treturn get(scope[key][version]);\n});\nvar loadSingletonVersion = /*#__PURE__*/ init((scopeName, scope, key, eager, requiredVersion, fallback) => {\n\tif (!exists(scope, key)) return useFallback(scopeName, key, fallback);\n\tvar version = findSingletonVersionKey(scope, key, eager);\n\tif (!satisfy(requiredVersion, version)) {\n\t\twarn(getInvalidSingletonVersionMessage(scope, key, version, requiredVersion));\n\t}\n\treturn get(scope[key][version]);\n});\nvar loadStrictSingletonVersion = /*#__PURE__*/ init((scopeName, scope, key, eager, requiredVersion, fallback) => {\n\tif (!exists(scope, key)) return useFallback(scopeName, key, fallback);\n\tvar version = findSingletonVersionKey(scope, key, eager);\n\tif (!satisfy(requiredVersion, version)) {\n\t\tfail(getInvalidSingletonVersionMessage(scope, key, version, requiredVersion));\n\t}\n\treturn get(scope[key][version]);\n});\nvar installedModules = {};\nvar moduleToHandlerMapping = {\n\t1030: () => (loadSingletonVersion(\"default\", \"lodash\", false, [1,4,17,21], () => (__webpack_require__.e(5250).then(() => (() => (__webpack_require__(5250))))))),\n\t1302: () => (loadSingletonVersion(\"default\", \"moment\", false, [1,2,30,1], () => (Promise.all([__webpack_require__.e(7721), __webpack_require__.e(9844)]).then(() => (() => (__webpack_require__(9420))))))),\n\t5310: () => (loadSingletonVersion(\"default\", \"js-yaml\", false, [0], () => (__webpack_require__.e(9515).then(() => (() => (__webpack_require__(9515))))))),\n\t580: () => (loadSingletonVersion(\"default\", \"@babel/parser\", false, [0], () => (__webpack_require__.e(6773).then(() => (() => (__webpack_require__(6773))))))),\n\t4427: () => (loadSingletonVersion(\"default\", \"@next-core/utils/general\", false, [1,1,7,33], () => (__webpack_require__.e(871).then(() => (() => (__webpack_require__(871))))))),\n\t3922: () => (loadSingletonVersion(\"default\", \"@next-core/i18n\", false, [1,1,0,75], () => (Promise.all([__webpack_require__.e(4427), __webpack_require__.e(671), __webpack_require__.e(3171)]).then(() => (() => (__webpack_require__(5552))))))),\n\t9933: () => (loadSingletonVersion(\"default\", \"@next-core/pipes\", false, [0], () => (__webpack_require__.e(6519).then(() => (() => (__webpack_require__(6519))))))),\n\t3357: () => (loadSingletonVersion(\"default\", \"@next-core/http\", false, [1,1,2,12], () => (__webpack_require__.e(1370).then(() => (() => (__webpack_require__(8989))))))),\n\t1321: () => (loadSingletonVersion(\"default\", \"@next-core/cook\", false, [0], () => (Promise.all([__webpack_require__.e(1122), __webpack_require__.e(580)]).then(() => (() => (__webpack_require__(1122))))))),\n\t1732: () => (loadSingletonVersion(\"default\", \"history\", false, [0], () => (__webpack_require__.e(5384).then(() => (() => (__webpack_require__(5384))))))),\n\t2105: () => (loadSingletonVersion(\"default\", \"@next-core/utils/storyboard\", false, [1,1,7,33], () => (__webpack_require__.e(6314).then(() => (() => (__webpack_require__(3933))))))),\n\t8974: () => (loadSingletonVersion(\"default\", \"@next-core/runtime\", false, [1,1,60,0], () => (Promise.all([__webpack_require__.e(9140), __webpack_require__.e(4427), __webpack_require__.e(3922), __webpack_require__.e(1302), __webpack_require__.e(3357), __webpack_require__.e(1321), __webpack_require__.e(2812), __webpack_require__.e(9718)]).then(() => (() => (__webpack_require__(9140))))))),\n\t848: () => (loadSingletonVersion(\"default\", \"i18next-browser-languagedetector\", false, [0], () => (__webpack_require__.e(726).then(() => (() => (__webpack_require__(726))))))),\n\t5630: () => (loadSingletonVersion(\"default\", \"i18next\", false, [0], () => (__webpack_require__.e(843).then(() => (() => (__webpack_require__(843))))))),\n\t8377: () => (loadSingletonVersion(\"default\", \"@easyops-cn/brick-next-pipes\", false, [0], () => (Promise.all([__webpack_require__.e(4306), __webpack_require__.e(1030), __webpack_require__.e(1302), __webpack_require__.e(5310)]).then(() => (() => (__webpack_require__(4306))))))),\n\t8769: () => (loadStrictVersion(\"default\", \"react\", false, [6,0,0,0,,\"experimental-ee8509801-20230117\"], () => (__webpack_require__.e(4041).then(() => (() => (__webpack_require__(4041))))))),\n\t6192: () => (loadStrictVersion(\"default\", \"@next-core/element\", false, [1,1,2,17], () => (__webpack_require__.e(1045).then(() => (() => (__webpack_require__(1045))))))),\n\t9435: () => (loadStrictVersion(\"default\", \"react-dom\", false, [6,0,0,0,,\"experimental-ee8509801-20230117\"], () => (__webpack_require__.e(3144).then(() => (() => (__webpack_require__(3144))))))),\n\t9859: () => (loadStrictVersion(\"default\", \"@next-core/react-element\", false, [1,1,0,36], () => (Promise.all([__webpack_require__.e(6192), __webpack_require__.e(9435), __webpack_require__.e(7733)]).then(() => (() => (__webpack_require__(114))))))),\n\t4167: () => (loadSingletonVersion(\"default\", \"@next-core/supply\", false, [0], () => (Promise.all([__webpack_require__.e(9933), __webpack_require__.e(1940)]).then(() => (() => (__webpack_require__(9559))))))),\n\t5599: () => (loadSingletonVersion(\"default\", \"@next-core/loader\", false, [0], () => (__webpack_require__.e(5399).then(() => (() => (__webpack_require__(7780))))))),\n\t6036: () => (loadSingletonVersion(\"default\", \"moment/locale/zh-cn.js\", false, [1,2,30,1], () => (Promise.all([__webpack_require__.e(7721), __webpack_require__.e(9844)]).then(() => (() => (__webpack_require__(1329))))))),\n\t9283: () => (loadSingletonVersion(\"default\", \"@next-core/inject\", false, [0], () => (Promise.all([__webpack_require__.e(9933), __webpack_require__.e(4658)]).then(() => (() => (__webpack_require__(2277))))))),\n\t6477: () => (loadSingletonVersion(\"default\", \"@next-core/theme\", false, [1,1,5,4], () => (__webpack_require__.e(1889).then(() => (() => (__webpack_require__(1889))))))),\n\t480: () => (loadSingletonVersion(\"default\", \"@next-core/easyops-runtime\", false, [2,0,13,7], () => (Promise.all([__webpack_require__.e(1550), __webpack_require__.e(9933), __webpack_require__.e(1321), __webpack_require__.e(2812), __webpack_require__.e(5310)]).then(() => (() => (__webpack_require__(1550))))))),\n\t8361: () => (loadStrictVersion(\"default\", \"@next-core/react-runtime\", false, [1,1,7,13], () => (__webpack_require__.e(7218).then(() => (() => (__webpack_require__(4837)))))))\n};\n// no consumes in initial chunks\nvar chunkMapping = {\n\t\"580\": [\n\t\t580\n\t],\n\t\"671\": [\n\t\t848,\n\t\t5630\n\t],\n\t\"1030\": [\n\t\t1030\n\t],\n\t\"1302\": [\n\t\t1302\n\t],\n\t\"1321\": [\n\t\t1321\n\t],\n\t\"2569\": [\n\t\t480,\n\t\t8361\n\t],\n\t\"2812\": [\n\t\t1732,\n\t\t2105\n\t],\n\t\"3357\": [\n\t\t3357\n\t],\n\t\"3922\": [\n\t\t3922\n\t],\n\t\"4427\": [\n\t\t4427\n\t],\n\t\"5310\": [\n\t\t5310\n\t],\n\t\"6192\": [\n\t\t6192\n\t],\n\t\"6477\": [\n\t\t6477\n\t],\n\t\"6519\": [\n\t\t8377\n\t],\n\t\"8769\": [\n\t\t8769\n\t],\n\t\"8974\": [\n\t\t8974\n\t],\n\t\"9435\": [\n\t\t9435\n\t],\n\t\"9718\": [\n\t\t4167,\n\t\t5599,\n\t\t6036,\n\t\t9283\n\t],\n\t\"9859\": [\n\t\t9859\n\t],\n\t\"9933\": [\n\t\t9933\n\t]\n};\nvar startedInstallModules = {};\n__webpack_require__.f.consumes = (chunkId, promises) => {\n\tif(__webpack_require__.o(chunkMapping, chunkId)) {\n\t\tchunkMapping[chunkId].forEach((id) => {\n\t\t\tif(__webpack_require__.o(installedModules, id)) return promises.push(installedModules[id]);\n\t\t\tif(!startedInstallModules[id]) {\n\t\t\tvar onFactory = (factory) => {\n\t\t\t\tinstalledModules[id] = 0;\n\t\t\t\t__webpack_require__.m[id] = (module) => {\n\t\t\t\t\tdelete __webpack_require__.c[id];\n\t\t\t\t\tmodule.exports = factory();\n\t\t\t\t}\n\t\t\t};\n\t\t\tstartedInstallModules[id] = true;\n\t\t\tvar onError = (error) => {\n\t\t\t\tdelete installedModules[id];\n\t\t\t\t__webpack_require__.m[id] = (module) => {\n\t\t\t\t\tdelete __webpack_require__.c[id];\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t};\n\t\t\ttry {\n\t\t\t\tvar promise = moduleToHandlerMapping[id]();\n\t\t\t\tif(promise.then) {\n\t\t\t\t\tpromises.push(installedModules[id] = promise.then(onFactory)['catch'](onError));\n\t\t\t\t} else onFactory(promise);\n\t\t\t} catch(e) { onError(e); }\n\t\t\t}\n\t\t});\n\t}\n}","var moduleMap = {\n\t\"./cruise-canvas\": () => {\n\t\treturn Promise.all(/* cruise-canvas */[__webpack_require__.e(1165), __webpack_require__.e(792), __webpack_require__.e(1030), __webpack_require__.e(8769), __webpack_require__.e(4427), __webpack_require__.e(3922), __webpack_require__.e(1302), __webpack_require__.e(6192), __webpack_require__.e(9859), __webpack_require__.e(9435), __webpack_require__.e(6477), __webpack_require__.e(3357), __webpack_require__.e(8974), __webpack_require__.e(2569), __webpack_require__.e(2267)]).then(() => (() => ((__webpack_require__(6185)))));\n\t},\n\t\"./chat-box\": () => {\n\t\treturn Promise.all(/* chat-box */[__webpack_require__.e(1165), __webpack_require__.e(1030), __webpack_require__.e(8769), __webpack_require__.e(3922), __webpack_require__.e(6192), __webpack_require__.e(9859), __webpack_require__.e(9435), __webpack_require__.e(6477), __webpack_require__.e(6573)]).then(() => (() => ((__webpack_require__(7707)))));\n\t},\n\t\"./home-container\": () => {\n\t\treturn Promise.all(/* home-container */[__webpack_require__.e(8769), __webpack_require__.e(6192), __webpack_require__.e(9859), __webpack_require__.e(6477), __webpack_require__.e(3172)]).then(() => (() => ((__webpack_require__(7494)))));\n\t},\n\t\"./chat-history\": () => {\n\t\treturn Promise.all(/* chat-history */[__webpack_require__.e(8769), __webpack_require__.e(3922), __webpack_require__.e(1302), __webpack_require__.e(6192), __webpack_require__.e(9859), __webpack_require__.e(6477), __webpack_require__.e(1750)]).then(() => (() => ((__webpack_require__(5704)))));\n\t}\n};\nvar get = (module, getScope) => {\n\t__webpack_require__.R = getScope;\n\tgetScope = (\n\t\t__webpack_require__.o(moduleMap, module)\n\t\t\t? moduleMap[module]()\n\t\t\t: Promise.resolve().then(() => {\n\t\t\t\tthrow new Error('Module \"' + module + '\" does not exist in container.');\n\t\t\t})\n\t);\n\t__webpack_require__.R = undefined;\n\treturn getScope;\n};\nvar init = (shareScope, initScope) => {\n\tif (!__webpack_require__.S) return;\n\tvar name = \"default\"\n\tvar oldScope = __webpack_require__.S[name];\n\tif(oldScope && oldScope !== shareScope) throw new Error(\"Container initialization failed as it has already been initialized with a different share scope\");\n\t__webpack_require__.S[name] = shareScope;\n\treturn __webpack_require__.I(name, initScope);\n};\n\n// This exports getters to disallow modifications\n__webpack_require__.d(exports, {\n\tget: () => (get),\n\tinit: () => (init)\n});","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n// expose the module cache\n__webpack_require__.c = __webpack_module_cache__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"chunks/\" + ({\"1750\":\"chat-history\",\"2267\":\"cruise-canvas\",\"3172\":\"home-container\",\"6573\":\"chat-box\"}[chunkId] || chunkId) + \".\" + {\"114\":\"edeb665e\",\"726\":\"0bc62720\",\"792\":\"8349aa42\",\"843\":\"0c7e4c28\",\"871\":\"623e9948\",\"1045\":\"3a82f036\",\"1086\":\"139e75b4\",\"1122\":\"9dcaa54e\",\"1165\":\"6759a6d3\",\"1370\":\"25ebf7b8\",\"1550\":\"b4a46d30\",\"1750\":\"ba64d223\",\"1889\":\"d6185164\",\"1940\":\"674f0e20\",\"2052\":\"12bb32f3\",\"2267\":\"65f61916\",\"2277\":\"9a812e91\",\"2569\":\"ba4c489c\",\"3144\":\"a54c8d65\",\"3171\":\"dbc33a51\",\"3172\":\"e2de03d1\",\"3933\":\"46c6b203\",\"4041\":\"6ba6fafa\",\"4306\":\"7ea515ce\",\"4658\":\"714b36d2\",\"4837\":\"78431856\",\"5250\":\"7614fa5b\",\"5384\":\"451ded3d\",\"5399\":\"da78e6e2\",\"5552\":\"517eedc2\",\"6314\":\"11c44a7e\",\"6519\":\"836946b6\",\"6573\":\"25b3ea6a\",\"6773\":\"7fbec27a\",\"7218\":\"4ed3eab4\",\"7721\":\"4c786e0a\",\"7733\":\"777c181e\",\"8989\":\"6f404d42\",\"9140\":\"9370c1d8\",\"9515\":\"02c68755\",\"9559\":\"4479bc89\",\"9844\":\"a4320543\"}[chunkId] + \".js\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.S = {};\nvar initPromises = {};\nvar initTokens = {};\n__webpack_require__.I = (name, initScope) => {\n\tif(!initScope) initScope = [];\n\t// handling circular init calls\n\tvar initToken = initTokens[name];\n\tif(!initToken) initToken = initTokens[name] = {};\n\tif(initScope.indexOf(initToken) >= 0) return;\n\tinitScope.push(initToken);\n\t// only runs once\n\tif(initPromises[name]) return initPromises[name];\n\t// creates a new share scope if needed\n\tif(!__webpack_require__.o(__webpack_require__.S, name)) __webpack_require__.S[name] = {};\n\t// runs all init snippets from all modules reachable\n\tvar scope = __webpack_require__.S[name];\n\tvar warn = (msg) => {\n\t\tif (typeof console !== \"undefined\" && console.warn) console.warn(msg);\n\t};\n\tvar uniqueName = \"@next-bricks/ai-portal\";\n\tvar register = (name, version, factory, eager) => {\n\t\tvar versions = scope[name] = scope[name] || {};\n\t\tvar activeVersion = versions[version];\n\t\tif(!activeVersion || (!activeVersion.loaded && (!eager != !activeVersion.eager ? eager : uniqueName > activeVersion.from))) versions[version] = { get: factory, from: uniqueName, eager: !!eager };\n\t};\n\tvar initExternal = (id) => {\n\t\tvar handleError = (err) => (warn(\"Initialization of sharing external failed: \" + err));\n\t\ttry {\n\t\t\tvar module = __webpack_require__(id);\n\t\t\tif(!module) return;\n\t\t\tvar initFn = (module) => (module && module.init && module.init(__webpack_require__.S[name], initScope))\n\t\t\tif(module.then) return promises.push(module.then(initFn, handleError));\n\t\t\tvar initResult = initFn(module);\n\t\t\tif(initResult && initResult.then) return promises.push(initResult['catch'](handleError));\n\t\t} catch(err) { handleError(err); }\n\t}\n\tvar promises = [];\n\tswitch(name) {\n\t\tcase \"default\": {\n\t\t\tregister(\"@babel/parser\", \"7.25.3\", () => (__webpack_require__.e(6773).then(() => (() => (__webpack_require__(6773))))));\n\t\t\tregister(\"@easyops-cn/brick-next-pipes\", \"0.7.2\", () => (Promise.all([__webpack_require__.e(4306), __webpack_require__.e(1030), __webpack_require__.e(1302), __webpack_require__.e(5310)]).then(() => (() => (__webpack_require__(4306))))));\n\t\t\tregister(\"@next-core/cook\", \"2.5.8\", () => (Promise.all([__webpack_require__.e(1122), __webpack_require__.e(580)]).then(() => (() => (__webpack_require__(1122))))));\n\t\t\tregister(\"@next-core/easyops-runtime\", \"0.13.7\", () => (Promise.all([__webpack_require__.e(1550), __webpack_require__.e(1030), __webpack_require__.e(4427), __webpack_require__.e(3922), __webpack_require__.e(9933), __webpack_require__.e(3357), __webpack_require__.e(1321), __webpack_require__.e(2812), __webpack_require__.e(8974), __webpack_require__.e(5310), __webpack_require__.e(1086)]).then(() => (() => (__webpack_require__(1550))))));\n\t\t\tregister(\"@next-core/element\", \"1.2.17\", () => (__webpack_require__.e(1045).then(() => (() => (__webpack_require__(1045))))));\n\t\t\tregister(\"@next-core/http\", \"1.2.12\", () => (__webpack_require__.e(8989).then(() => (() => (__webpack_require__(8989))))));\n\t\t\tregister(\"@next-core/i18n\", \"1.0.75\", () => (Promise.all([__webpack_require__.e(4427), __webpack_require__.e(3922), __webpack_require__.e(671), __webpack_require__.e(5552)]).then(() => (() => (__webpack_require__(5552))))));\n\t\t\tregister(\"@next-core/inject\", \"1.0.53\", () => (Promise.all([__webpack_require__.e(1030), __webpack_require__.e(9933), __webpack_require__.e(2277)]).then(() => (() => (__webpack_require__(2277))))));\n\t\t\tregister(\"@next-core/loader\", \"1.6.15\", () => (__webpack_require__.e(5399).then(() => (() => (__webpack_require__(7780))))));\n\t\t\tregister(\"@next-core/pipes\", \"2.0.32\", () => (__webpack_require__.e(6519).then(() => (() => (__webpack_require__(6519))))));\n\t\t\tregister(\"@next-core/react-element\", \"1.0.36\", () => (Promise.all([__webpack_require__.e(8769), __webpack_require__.e(6192), __webpack_require__.e(9435), __webpack_require__.e(114)]).then(() => (() => (__webpack_require__(114))))));\n\t\t\tregister(\"@next-core/react-runtime\", \"1.7.13\", () => (Promise.all([__webpack_require__.e(1030), __webpack_require__.e(8769), __webpack_require__.e(9859), __webpack_require__.e(8974), __webpack_require__.e(4837)]).then(() => (() => (__webpack_require__(4837))))));\n\t\t\tregister(\"@next-core/runtime\", \"1.60.0\", () => (Promise.all([__webpack_require__.e(9140), __webpack_require__.e(1030), __webpack_require__.e(4427), __webpack_require__.e(3922), __webpack_require__.e(1302), __webpack_require__.e(3357), __webpack_require__.e(1321), __webpack_require__.e(2812), __webpack_require__.e(9718)]).then(() => (() => (__webpack_require__(9140))))));\n\t\t\tregister(\"@next-core/supply\", \"2.3.5\", () => (Promise.all([__webpack_require__.e(1030), __webpack_require__.e(1302), __webpack_require__.e(9933), __webpack_require__.e(9559)]).then(() => (() => (__webpack_require__(9559))))));\n\t\t\tregister(\"@next-core/theme\", \"1.5.4\", () => (Promise.all([__webpack_require__.e(1889), __webpack_require__.e(2052)]).then(() => (() => (__webpack_require__(1889))))));\n\t\t\tregister(\"@next-core/utils/general\", \"1.7.33\", () => (__webpack_require__.e(871).then(() => (() => (__webpack_require__(871))))));\n\t\t\tregister(\"@next-core/utils/storyboard\", \"1.7.33\", () => (Promise.all([__webpack_require__.e(4427), __webpack_require__.e(1321), __webpack_require__.e(3933)]).then(() => (() => (__webpack_require__(3933))))));\n\t\t\tregister(\"history\", \"4.10.1\", () => (__webpack_require__.e(5384).then(() => (() => (__webpack_require__(5384))))));\n\t\t\tregister(\"i18next-browser-languagedetector\", \"7.2.2\", () => (__webpack_require__.e(726).then(() => (() => (__webpack_require__(726))))));\n\t\t\tregister(\"i18next\", \"22.5.1\", () => (__webpack_require__.e(843).then(() => (() => (__webpack_require__(843))))));\n\t\t\tregister(\"js-yaml\", \"3.14.1\", () => (__webpack_require__.e(9515).then(() => (() => (__webpack_require__(9515))))));\n\t\t\tregister(\"lodash\", \"4.17.21\", () => (__webpack_require__.e(5250).then(() => (() => (__webpack_require__(5250))))));\n\t\t\tregister(\"moment/locale/zh-cn.js\", \"2.30.1\", () => (Promise.all([__webpack_require__.e(7721), __webpack_require__.e(9844)]).then(() => (() => (__webpack_require__(1329))))));\n\t\t\tregister(\"moment\", \"2.30.1\", () => (Promise.all([__webpack_require__.e(7721), __webpack_require__.e(9844)]).then(() => (() => (__webpack_require__(9420))))));\n\t\t\tregister(\"react-dom\", \"0.0.0-experimental-ee8509801-20230117\", () => (Promise.all([__webpack_require__.e(3144), __webpack_require__.e(8769)]).then(() => (() => (__webpack_require__(3144))))));\n\t\t\tregister(\"react\", \"0.0.0-experimental-ee8509801-20230117\", () => (__webpack_require__.e(4041).then(() => (() => (__webpack_require__(4041))))));\n\t\t}\n\t\tbreak;\n\t}\n\tif(!promises.length) return initPromises[name] = 1;\n\treturn initPromises[name] = Promise.all(promises).then(() => (initPromises[name] = 1));\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2641: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^(1(030|302|321)|6(192|477|71)|9(435|718|859|933)|2812|3357|3922|4427|5310|580|8769|8974)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunk_next_bricks_ai_portal\"] = globalThis[\"webpackChunk_next_bricks_ai_portal\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// module cache are used so entry inlining is disabled\n// startup\n// Load entry module and return exports\nvar __webpack_exports__ = __webpack_require__(8480);\n"],"names":["inProgress","dataWebpackPrefix","parseVersion","versionLt","rangeToString","satisfy","exists","get","eagerOnly","findSatisfyingVersion","findSingletonVersionKey","getInvalidSingletonVersionMessage","getInvalidVersionMessage","fail","warn","init","useFallback","loadStrictVersion","loadSingletonVersion","installedModules","moduleToHandlerMapping","chunkMapping","startedInstallModules","moduleMap","Promise","all","__webpack_require__","e","then","module","getScope","R","o","resolve","Error","undefined","shareScope","initScope","S","name","oldScope","I","d","exports","__webpack_module_cache__","moduleId","cachedModule","id","loaded","__webpack_modules__","call","m","c","n","getter","__esModule","a","definition","key","Object","defineProperty","enumerable","f","chunkId","keys","reduce","promises","u","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","l","url","done","push","script","needAttach","scripts","document","getElementsByTagName","i","length","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","fn","setTimeout","bind","type","target","head","appendChild","r","Symbol","toStringTag","value","nmd","paths","children","initPromises","initTokens","initToken","indexOf","scope","uniqueName","register","version","factory","eager","versions","activeVersion","from","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","replace","p","str","split","map","exec","apply","b","t","range","pop","entry","filtered","requiredVersion","scopeName","join","msg","console","fallback","failAsNotExist","promise","satisfyingVersion","consumes","onFactory","onError","error","baseURI","self","href","installedChunks","j","installedChunkData","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","data","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
@@ -52,6 +52,15 @@
52
52
  {
53
53
  "name": "autoFocus",
54
54
  "type": "boolean"
55
+ },
56
+ {
57
+ "name": "suggestions",
58
+ "attribute": false,
59
+ "type": "Suggestion[]"
60
+ },
61
+ {
62
+ "name": "suggestionsLabel",
63
+ "type": "string"
55
64
  }
56
65
  ],
57
66
  "events": [
package/dist/types.json CHANGED
@@ -26,6 +26,26 @@
26
26
  "type": "keyword",
27
27
  "value": "boolean"
28
28
  }
29
+ },
30
+ {
31
+ "name": "suggestions",
32
+ "annotation": {
33
+ "type": "array",
34
+ "elementType": {
35
+ "type": "reference",
36
+ "typeName": {
37
+ "type": "identifier",
38
+ "name": "Suggestion"
39
+ }
40
+ }
41
+ }
42
+ },
43
+ {
44
+ "name": "suggestionsLabel",
45
+ "annotation": {
46
+ "type": "keyword",
47
+ "value": "string"
48
+ }
29
49
  }
30
50
  ],
31
51
  "events": [
@@ -39,7 +59,39 @@
39
59
  }
40
60
  }
41
61
  ],
42
- "methods": []
62
+ "methods": [],
63
+ "types": [
64
+ {
65
+ "type": "interface",
66
+ "name": "Suggestion",
67
+ "body": [
68
+ {
69
+ "type": "propertySignature",
70
+ "key": {
71
+ "type": "identifier",
72
+ "name": "title"
73
+ },
74
+ "annotation": {
75
+ "type": "keyword",
76
+ "value": "string"
77
+ },
78
+ "computed": false
79
+ },
80
+ {
81
+ "type": "propertySignature",
82
+ "key": {
83
+ "type": "identifier",
84
+ "name": "content"
85
+ },
86
+ "annotation": {
87
+ "type": "keyword",
88
+ "value": "string"
89
+ },
90
+ "computed": false
91
+ }
92
+ ]
93
+ }
94
+ ]
43
95
  },
44
96
  "ai-portal.chat-history": {
45
97
  "properties": [
@@ -102,6 +154,18 @@
102
154
  },
103
155
  "computed": false
104
156
  },
157
+ {
158
+ "type": "propertySignature",
159
+ "key": {
160
+ "type": "identifier",
161
+ "name": "url"
162
+ },
163
+ "annotation": {
164
+ "type": "keyword",
165
+ "value": "string"
166
+ },
167
+ "computed": false
168
+ },
105
169
  {
106
170
  "type": "propertySignature",
107
171
  "key": {
@@ -1,5 +1,6 @@
1
1
  export declare enum K {
2
- ASK_ANY_THING = "ASK_ANYTHING"
2
+ ASK_ANY_THING = "ASK_ANYTHING",
3
+ COMMON_TASKS = "COMMON_TASKS"
3
4
  }
4
5
  export declare const NS = "bricks/ai-portal/chat-box";
5
6
  export declare const locales: {
@@ -5,6 +5,12 @@ export interface ChatBoxProps {
5
5
  disabled?: boolean;
6
6
  placeholder?: string;
7
7
  autoFocus?: boolean;
8
+ suggestions?: Suggestion[];
9
+ suggestionsLabel?: string;
10
+ }
11
+ export interface Suggestion {
12
+ title: string;
13
+ content: string;
8
14
  }
9
15
  /**
10
16
  * 构件 `ai-portal.chat-box`
@@ -14,9 +20,16 @@ export declare class ChatBox extends ReactNextElement implements ChatBoxProps {
14
20
  accessor disabled: boolean | undefined;
15
21
  accessor placeholder: string | undefined;
16
22
  accessor autoFocus: boolean | undefined;
23
+ accessor suggestions: Suggestion[] | undefined;
24
+ accessor suggestionsLabel: string | undefined;
17
25
  render(): React.JSX.Element;
18
26
  }
19
27
  export interface ChatBoxComponentProps extends ChatBoxProps {
20
28
  onSubmit?: (value: string) => void;
21
29
  }
22
- export declare function ChatBoxComponent({ disabled, placeholder, autoFocus, onSubmit, }: ChatBoxComponentProps): React.JSX.Element;
30
+ export declare function ChatBoxComponent({ disabled, placeholder, autoFocus, suggestions, suggestionsLabel, onSubmit, }: ChatBoxComponentProps): React.JSX.Element;
31
+ export interface SuggestionCarouselProps {
32
+ suggestions: Suggestion[];
33
+ pixelPerSecond: number;
34
+ onSelect: (suggestion: Suggestion) => void;
35
+ }
@@ -9,6 +9,7 @@ export interface ChatHistoryProps {
9
9
  }
10
10
  export interface HistoryItem {
11
11
  id: string;
12
+ url: string;
12
13
  title: string;
13
14
  startTime: number;
14
15
  state?: TaskState;
@@ -9,14 +9,17 @@ brick: ai-portal.chat-history
9
9
  properties:
10
10
  list:
11
11
  - id: task_x
12
+ url: /task_x
12
13
  title: 纳管 X 系统
13
14
  startTime: <% (+moment()) / 1000 %>
14
15
  state: working
15
16
  - id: task_y
17
+ url: /task_y
16
18
  title: 纳管 Y 系统
17
19
  startTime: <% (+moment().subtract(2, "hours")) / 1000 %>
18
20
  state: completed
19
21
  - id: task_z
22
+ url: /task_z
20
23
  title: 纳管 Z 系统
21
24
  startTime: <% (+moment().subtract(1, "days")) / 1000 %>
22
25
  state: completed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-bricks/ai-portal",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "homepage": "https://github.com/easyops-cn/next-advanced-bricks/tree/master/bricks/ai-portal",
5
5
  "repository": {
6
6
  "type": "git",
@@ -41,5 +41,5 @@
41
41
  "peerDependencies": {
42
42
  "@next-bricks/basic": "*"
43
43
  },
44
- "gitHead": "b68229213faeb80e9fe6401335acdd709ebdeb76"
44
+ "gitHead": "0203b823b9d7ff043a076fa0df6df322b72e6c61"
45
45
  }
@@ -1,2 +0,0 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[8330],{1107:(e,t,n)=>{e.exports=n.p+"images/eef4f2bd.png"},1411:(e,t,n)=>{n.d(t,{A:()=>o});var a=n(6758),s=n.n(a),r=n(935),i=n.n(r)()(s());i.push([e.id,":host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.group + .group{margin-top:15px}.group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.item{display:block}.item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.item::part(link):hover{background:rgba(0,0,0,0.04)}.item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.actions{cursor:auto}.item:not(:hover):not(.active) .actions{display:none}.working{width:8px;height:8px;border-radius:8px;background:#2540ff;margin:0 7px}.item:hover .working,\n.item.active .working{display:none}",""]);const o=i.toString()},2165:(e,t,n)=>{n.d(t,{A:()=>p});var a=n(6758),s=n.n(a),r=n(935),i=n.n(r),o=n(62),l=n.n(o),c=new URL(n(2360),n.b),u=i()(s()),d=l()(c);u.push([e.id,`:host{display:block;background-color:#fff;background-image:url(${d});background-position:center;background-size:cover;background-repeat:no-repeat}:host([hidden]){display:none}`,""]);const p=u.toString()},2360:(e,t,n)=>{e.exports=n.p+"images/6336f999.png"},7008:(e,t,n)=>{n.d(t,{A:()=>p});var a=n(6758),s=n.n(a),r=n(935),i=n.n(r),o=n(62),l=n.n(o),c=new URL(n(1107),n.b),u=i()(s()),d=l()(c);u.push([e.id,`:host{display:block;color:#262626}:host([hidden]){display:none}*{box-sizing:border-box}.container{position:relative;background-color:#e1e3ec;background-image:url(${d});background-size:694px 144px;background-position:top left;background-repeat:no-repeat;box-shadow:inset 0px 2px 5px 1px rgba(42,46,59,0.1);border-radius:20px;padding:12px}textarea{display:block;width:100%;padding:10px 16px 52px;color:var(--antd-input-color);background:rgba(255,255,255,0.8);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font-size:14px;line-height:22px;height:130px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{position:absolute;bottom:26px;right:26px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.06);border:none;border-radius:8px;cursor:pointer;color:inherit}.btn-send:hover{background:rgba(0,0,0,0.08)}.btn-send:active{background:rgba(0,0,0,0.15)}`,""]);const p=u.toString()},8330:(e,t,n)=>{var a,s=n(4635),r=n(918),i=n(6902),o=n(5536),l=n(6121),c=n(829),u=n(2740),d=n(8769),p=n.n(d),h=n(6192),m=n(9859),g=n(8974),b=(n(6477),n(3922)),A=n(3373),k=n.n(A),f=n(9126),E=n(7566),x=n(79),v=n(2464),y=n(8231),w=n(6494),S=n(7642),R=n(2773),N=n(9533),T=n(3153),_=n(4999),Y=n(7954),M=n(4388),I=n(6938),D=n(5391),z=n(9295),C=n(6854),W=n(5805);let U,B,O,j,P,$,V,H,L,F,G,K,Q;(0,b.initializeI18n)(x.NS,x.I);const{defineElement:q,property:X,event:J}=(0,h.createDecorators)(),Z=(0,d.memo)(ue);let ee;var te=new WeakMap,ne=new WeakMap,ae=new WeakMap,se=new WeakMap,re=new WeakMap,ie=new WeakSet,oe=new WeakMap;class le extends m.ReactNextElement{constructor(){super(...arguments),(0,s.A)(this,ie),(0,r.A)(this,te,B(this)),(0,r.A)(this,ne,(O(this),j(this))),(0,r.A)(this,ae,(P(this),$(this))),(0,r.A)(this,se,(V(this),H(this))),(0,r.A)(this,re,(L(this),F(this))),(0,r.A)(this,oe,(Q(this),()=>{(0,o.A)(ie,this,G).emit()}))}get taskId(){return(0,c.A)(te,this)}set taskId(e){(0,l.A)(te,this,e)}get task(){return(0,c.A)(ne,this)}set task(e){(0,l.A)(ne,this,e)}get jobs(){return(0,c.A)(ae,this)}set jobs(e){(0,l.A)(ae,this,e)}get goBackUrl(){return(0,c.A)(se,this)}set goBackUrl(e){(0,l.A)(se,this,e)}render(){return p().createElement(ce,{taskId:this.taskId,jobs:this.jobs,task:this.task,goBackUrl:this.goBackUrl,onShare:(0,c.A)(oe,this)})}}function ce(e){var t,n;let{taskId:a,task:s,jobs:r,goBackUrl:i,onShare:o}=e;const l=(0,d.useRef)(null),{task:c,jobs:u,plan:h,error:m,humanInputRef:b}=(0,R.S)(a),A=a?c:s,f=a?u:null!=r?r:[],x=a?h:null==s?void 0:s.plan,Y=(0,N.B)(A,f),M=null==Y?void 0:Y.nodes,I=null==Y?void 0:Y.edges,D=null!==(t=null==A?void 0:A.title)&&void 0!==t?t:"";(0,d.useEffect)((()=>{(0,g.getRuntime)().applyPageTitle(D)}),[D]),(0,d.useEffect)((()=>{m&&(0,g.handleHttpError)(m)}),[m]);const z=(0,d.useCallback)(((e,t)=>{var n;null===(n=b.current)||void 0===n||n.call(b,e,t)}),[b]),[U,B]=(0,d.useState)(null),O=(0,d.useCallback)(((e,t)=>{B((n=>{if(!t){if(!n)return null;const t=new Map(n);return t.delete(e)?t:n}return n?new Map(n).set(e,t):new Map([[e,t]])}))}),[]),{sizeReady:j,nodes:P,edges:$}=(0,S.g)({rawNodes:M,rawEdges:I,state:null==A?void 0:A.state,sizeMap:U}),{grabbing:V,transform:H,transformRef:L,zoomer:F}=(0,y.f)({rootRef:l,zoomable:j,scrollable:j,pannable:j}),{centered:G,setCentered:K,reCenterRef:Q}=(0,w.E)({nodes:P,sizeReady:j,zoomer:F,rootRef:l}),q=!C.QB.includes(null!==(n=null==A?void 0:A.state)&&void 0!==n?n:"working")&&2===P.length,X=(0,d.useMemo)((()=>new Set($.map((e=>e.source)))),[$]),J=(0,d.useMemo)((()=>{if(!j)return null;const e=[];for(const t of P)X.has(t.id)||e.push(t);return e.length>0?Math.max(...e.map((e=>e.view.y+e.view.height))):null}),[P,X,j]),ee=(0,d.useRef)(null);(0,d.useEffect)((()=>{ee.current=J}),[J]);const te=(0,d.useRef)(!1);(0,d.useEffect)((()=>{const e=l.current;if(!e||null===J||te.current)return;const{offsetHeight:t}=e,n=L.current,a=J*n.k+n.y,s=t-C.xX-a;s<0&&F.translateBy((0,E.A)(l.current),0,s)}),[J,L,F]),(0,d.useEffect)((()=>{const e=ee.current,t=l.current;if(!t||null===e)return;const{offsetHeight:n}=t,a=e*H.k+H.y,s=n-C.xX-a;te.current=s<0}),[H,F]);const ne=(0,d.useCallback)((()=>{Q.current=!0,K(!1)}),[Q,K]),ae=(0,d.useCallback)((e=>{F.scaleTo((0,E.A)(l.current),e)}),[F]);return p().createElement(p().Fragment,null,p().createElement("div",{className:k()(v.A.root,{[v.A.loading]:!A}),ref:l,style:{cursor:V?"grabbing":"grab"}},!A&&p().createElement("div",{className:v.A["loading-icon"]},p().createElement(W.Bj,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0})),p().createElement("div",{className:k()(v.A.canvas,{[v.A.ready]:j&&G}),style:{transform:`translate3d(${H.x}px, ${H.y}px, 0) scale(${H.k})`}},p().createElement("svg",{className:v.A.edges},$.map((e=>p().createElement("path",{className:v.A.edge,key:`${e.source}-${e.target}`,d:e.points.map(((e,t)=>{let{x:n,y:a}=e;return`${0===t?"M":"L"}${n},${a}`})).join(" ")})))),P.map((e=>{var t,n,a;return p().createElement(Z,{key:e.id,id:e.id,type:e.type,content:e.content,job:e.job,state:e.state,startTime:null==A?void 0:A.startTime,taskLoading:q,instructionLoading:"instruction"===e.type&&!X.has(e.id)&&!C.QB.includes(null!==(t=e.state)&&void 0!==t?t:"working"),edges:$,x:null===(n=e.view)||void 0===n?void 0:n.x,y:null===(a=e.view)||void 0===a?void 0:a.y,onResize:O,humanInput:z,onShare:o})})))),p().createElement("div",{className:v.A.widgets},i&&p().createElement(W.EM,{className:v.A["go-back"],url:i},p().createElement(W.Bj,{lib:"fa",prefix:"fas",icon:"arrow-left-long"})),p().createElement(T.r,{plan:x}),p().createElement(_.l,{scale:H.k,onScaleChange:ae,onReCenter:ne})))}function ue(e){let{id:t,type:n,state:a,job:s,content:r,startTime:i,taskLoading:o,instructionLoading:l,x:c,y:u,onResize:h,humanInput:m,onShare:g}=e;const b=(0,d.useRef)(null);return(0,d.useEffect)((()=>{const e=b.current;if(!e)return;const n=new f.A((()=>{h(t,[e.offsetWidth,e.offsetHeight])}));return n.observe(e),()=>{n.disconnect(),h(t,null)}}),[t,h]),(0,d.useEffect)((()=>{const e=b.current;if(!e)return;const t=e=>{e.stopPropagation()};return e.addEventListener("mousedown",t),()=>{e.removeEventListener("mousedown",t)}}),[]),p().createElement("div",{className:k()(v.A.node,{[v.A.ready]:null!=c&&null!=u}),ref:b,style:{left:c,top:u}},"start"===n?p().createElement(Y.H,null):"end"===n?p().createElement(z.s,{onShare:g}):"requirement"===n?p().createElement(M.O,{content:r,startTime:i,loading:o}):"instruction"===n?p().createElement(I.L,{content:s.instruction,loading:l}):"job"===n?p().createElement(D.W,{state:a,job:s,humanInput:m}):p().createElement("div",{className:`${v.A["node-default"]} ${v.A["size-medium"]}`},`Unknown job type: "${n}"`))}a=le,({e:[B,O,j,P,$,V,H,L,F,G,K,Q],c:[ee,U]}=(0,u.A)(a,[q("ai-portal.cruise-canvas",{shadowOptions:!1})],[[X(),1,"taskId"],[X({attribute:!1}),1,"task"],[X({attribute:!1}),1,"jobs"],[X(),1,"goBackUrl"],[J({type:"share"}),1,"shareEvent",e=>(0,c.A)(re,e),(e,t)=>(0,l.A)(re,e,t)]],0,(e=>oe.has((0,i.A)(e))),m.ReactNextElement)),U();var de=n(1451);let pe=function(e){return e.ASK_ANY_THING="ASK_ANYTHING",e}({});const he="bricks/ai-portal/chat-box",me={en:{[pe.ASK_ANY_THING]:"Ask anything"},zh:{[pe.ASK_ANY_THING]:"询问任何问题"}},ge=b.i18n.getFixedT(null,he);var be,Ae=n(7008);let ke,fe,Ee,xe,ve,ye,we,Se,Re,Ne,Te;(0,b.initializeI18n)(he,me);const _e=(0,m.wrapBrick)("eo-icon"),{defineElement:Ye,property:Me,event:Ie}=(0,h.createDecorators)();let De;var ze=new WeakMap,Ce=new WeakMap,We=new WeakMap,Ue=new WeakMap,Be=new WeakSet,Oe=new WeakMap;class je extends m.ReactNextElement{constructor(){super(...arguments),(0,s.A)(this,Be),(0,r.A)(this,ze,fe(this)),(0,r.A)(this,Ce,(Ee(this),xe(this))),(0,r.A)(this,We,(ve(this),ye(this))),(0,r.A)(this,Ue,(we(this),Se(this))),(0,r.A)(this,Oe,(Te(this),e=>{(0,o.A)(Be,this,Re).emit(e)}))}get disabled(){return(0,c.A)(ze,this)}set disabled(e){(0,l.A)(ze,this,e)}get placeholder(){return(0,c.A)(Ce,this)}set placeholder(e){(0,l.A)(Ce,this,e)}get autoFocus(){return(0,c.A)(We,this)}set autoFocus(e){(0,l.A)(We,this,e)}render(){return p().createElement(Pe,{disabled:this.disabled,placeholder:this.placeholder,autoFocus:this.autoFocus,onSubmit:(0,c.A)(Oe,this)})}}function Pe(e){let{disabled:t,placeholder:n,autoFocus:a,onSubmit:s}=e;const r=(0,d.useRef)(null),i=(0,d.useRef)(null),o=(0,d.useRef)(""),l=(0,d.useCallback)((e=>{null==s||s(e.currentTarget.value)}),[s]),c=(0,d.useCallback)((e=>{o.current=e.target.value}),[]),u=(0,d.useCallback)((()=>{null==s||s(o.current)}),[s]);return(0,d.useEffect)((()=>{a&&Promise.resolve().then((()=>{var e;null===(e=i.current)||void 0===e||e.focus()}))}),[]),p().createElement("div",{className:"container",ref:r},p().createElement(de.e,{containerRef:r,ref:i,minRows:3,paddingSize:62,autoResize:!0,disabled:t,placeholder:null!=n?n:ge(pe.ASK_ANY_THING),submitWhen:"enter-without-shift",onSubmit:l,onChange:c}),p().createElement("button",{className:"btn-send",onClick:u},p().createElement(_e,{lib:"fa",prefix:"fas",icon:"arrow-up"})))}be=je,({e:[fe,Ee,xe,ve,ye,we,Se,Re,Ne,Te],c:[De,ke]}=(0,u.A)(be,[Ye("ai-portal.chat-box",{styleTexts:[Ae.A]})],[[Me({type:Boolean}),1,"disabled"],[Me(),1,"placeholder"],[Me({type:Boolean}),1,"autoFocus"],[Ie({type:"message.submit"}),1,"messageSubmit",e=>(0,c.A)(Ue,e),(e,t)=>(0,l.A)(Ue,e,t)]],0,(e=>Oe.has((0,i.A)(e))),m.ReactNextElement)),ke();var $e,Ve=n(2165);let He;const{defineElement:Le}=(0,h.createDecorators)();let Fe;class Ge extends m.ReactNextElement{render(){return p().createElement(Ke,null)}}function Ke(){return p().createElement("slot",null)}$e=Ge,[Fe,He]=(0,u.A)($e,[Le("ai-portal.home-container",{styleTexts:[Ve.A]})],[],0,void 0,m.ReactNextElement).c,He();var Qe=n(1302),qe=n.n(Qe);let Xe=function(e){return e.TODAY="TODAY",e.YESTERDAY="YESTERDAY",e.PREVIOUS_7_DAYS="PREVIOUS_7_DAYS",e.PREVIOUS_30_DAYS="PREVIOUS_30_DAYS",e}({});const Je="bricks/ai-portal/chat-history",Ze={en:{[Xe.TODAY]:"Today",[Xe.YESTERDAY]:"Yesterday",[Xe.PREVIOUS_7_DAYS]:"Previous 7 days",[Xe.PREVIOUS_30_DAYS]:"Previous 30 days"},zh:{[Xe.TODAY]:"今天",[Xe.YESTERDAY]:"昨天",[Xe.PREVIOUS_7_DAYS]:"过去7天",[Xe.PREVIOUS_30_DAYS]:"过去30天"}},et=b.i18n.getFixedT(null,Je);var tt,nt=n(1411);let at,st,rt,it,ot,lt,ct,ut,dt;(0,b.initializeI18n)(Je,Ze);const pt=(0,m.wrapBrick)("eo-link"),ht=(0,m.wrapBrick)("eo-mini-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),{defineElement:mt,property:gt,event:bt}=(0,h.createDecorators)();let At;var kt=new WeakMap,ft=new WeakMap,Et=new WeakMap,xt=new WeakSet,vt=new WeakMap;class yt extends m.ReactNextElement{constructor(){super(...arguments),(0,s.A)(this,xt),(0,r.A)(this,kt,st(this)),(0,r.A)(this,ft,(rt(this),it(this))),(0,r.A)(this,Et,(ot(this),lt(this))),(0,r.A)(this,vt,(dt(this),e=>{(0,o.A)(xt,this,ct).emit(e)}))}get list(){return(0,c.A)(kt,this)}set list(e){(0,l.A)(kt,this,e)}get actions(){return(0,c.A)(ft,this)}set actions(e){(0,l.A)(ft,this,e)}render(){return p().createElement(wt,{list:this.list,actions:this.actions,onActionClick:(0,c.A)(vt,this)})}}function wt(e){let{list:t,actions:n,onActionClick:a}=e;const s=(0,d.useMemo)((()=>{const e=new Map,n=qe()(),a=n.startOf("day"),s=a.clone().subtract(1,"day"),r=a.clone().subtract(7,"days"),i=a.clone().subtract(30,"days"),o=+a/1e3,l=+s/1e3,c=+r/1e3,u=+i/1e3,d=n.year();for(const n of null!=t?t:[]){let t;t=n.startTime>=o?et(Xe.TODAY):n.startTime>=l?et(Xe.YESTERDAY):n.startTime>=c?et(Xe.PREVIOUS_7_DAYS):n.startTime>=u?et(Xe.PREVIOUS_30_DAYS):n.startTime>=d?qe()(1e3*n.startTime).format("MMMM"):qe()(1e3*n.startTime).format("YYYY");let a=e.get(t);a||e.set(t,a={title:t,items:[]}),a.items.push(n)}return[...e.values()]}),[t]),[r,i]=(0,d.useState)(null);return p().createElement("ul",null,s.map((e=>p().createElement("li",{key:e.title,className:"group"},p().createElement("div",{className:"group-title"},e.title),p().createElement("ul",{className:"items"},e.items.map((e=>p().createElement("li",{key:e.id},p().createElement(pt,{className:k()("item",{active:r===e.id}),url:`/${e.id}`},p().createElement("div",{className:"item-title"},e.title),p().createElement(ht,{className:"actions",actions:n,onActionClick:t=>{null==a||a({action:t.detail,item:e})},onVisibleChange:t=>{i(t.detail?e.id:null)}}),!C.QB.includes(e.state)&&p().createElement("div",{className:"working"}))))))))))}tt=yt,({e:[st,rt,it,ot,lt,ct,ut,dt],c:[At,at]}=(0,u.A)(tt,[mt("ai-portal.chat-history",{styleTexts:[nt.A]})],[[gt({attribute:!1}),1,"list"],[gt({attribute:!1}),1,"actions"],[bt({type:"action.click"}),1,"actionClick",e=>(0,c.A)(Et,e),(e,t)=>(0,l.A)(Et,e,t)]],0,(e=>vt.has((0,i.A)(e))),m.ReactNextElement)),at()}}]);
2
- //# sourceMappingURL=8330.59cb93c5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/8330.59cb93c5.js","mappings":"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","sources":["webpack:///./src/chat-history/styles.shadow.css","webpack:///./src/home-container/styles.shadow.css","webpack:///./src/chat-box/styles.shadow.css","webpack:///./src/cruise-canvas/index.tsx","webpack:///./src/chat-box/i18n.ts","webpack:///./src/chat-box/index.tsx","webpack:///./src/home-container/index.tsx","webpack:///./src/chat-history/i18n.ts","webpack:///./src/chat-history/index.tsx"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.group + .group{margin-top:15px}.group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.item{display:block}.item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.item::part(link):hover{background:rgba(0,0,0,0.04)}.item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.actions{cursor:auto}.item:not(:hover):not(.active) .actions{display:none}.working{width:8px;height:8px;border-radius:8px;background:#2540ff;margin:0 7px}.item:hover .working,\n.item.active .working{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/background.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;background-color:#fff;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-position:center;background-size:cover;background-repeat:no-repeat}:host([hidden]){display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/background@2x.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;color:#262626}:host([hidden]){display:none}*{box-sizing:border-box}.container{position:relative;background-color:#e1e3ec;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-size:694px 144px;background-position:top left;background-repeat:no-repeat;box-shadow:inset 0px 2px 5px 1px rgba(42,46,59,0.1);border-radius:20px;padding:12px}textarea{display:block;width:100%;padding:10px 16px 52px;color:var(--antd-input-color);background:rgba(255,255,255,0.8);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font-size:14px;line-height:22px;height:130px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{position:absolute;bottom:26px;right:26px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.06);border:none;border-radius:8px;cursor:pointer;color:inherit}.btn-send:hover{background:rgba(0,0,0,0.08)}.btn-send:active{background:rgba(0,0,0,0.15)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// istanbul ignore file: experimental\nimport React, {\n memo,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { getRuntime, handleHttpError } from \"@next-core/runtime\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport classNames from \"classnames\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport { select } from \"d3-selection\";\nimport { NS, locales } from \"./i18n.js\";\nimport styles from \"./styles.module.css\";\nimport { useZoom } from \"./useZoom.js\";\nimport type {\n SizeTuple,\n GraphNode,\n Job,\n RequirementGraphNode,\n JobGraphNode,\n TaskBaseDetail,\n GraphEdge,\n} from \"./interfaces.js\";\nimport { useAutoCenter } from \"./useAutoCenter.js\";\nimport { useLayout } from \"./useLayout.js\";\nimport { useTaskDetail } from \"./useTaskDetail.js\";\nimport { useTaskGraph } from \"./useTaskGraph.js\";\nimport { PlanProgress } from \"./PlanProgress/PlanProgress.js\";\nimport { ZoomBar } from \"./ZoomBar/ZoomBar.js\";\nimport { NodeStart } from \"./NodeStart/NodeStart.js\";\nimport { NodeRequirement } from \"./NodeRequirement/NodeRequirement.js\";\nimport { NodeInstruction } from \"./NodeInstruction/NodeInstruction.js\";\nimport { NodeJob } from \"./NodeJob/NodeJob.js\";\nimport { NodeEnd } from \"./NodeEnd/NodeEnd.js\";\nimport { CANVAS_PADDING_BOTTOM, DONE_STATES } from \"./constants.js\";\nimport { WrappedIcon, WrappedLink } from \"./bricks.js\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst MemoizedNodeComponent = memo(NodeComponent);\n\nexport interface CruiseCanvasProps {\n taskId?: string;\n task?: TaskBaseDetail;\n jobs?: Job[];\n goBackUrl?: string;\n}\n\n/**\n * 构件 `ai-portal.cruise-canvas`\n */\nexport\n@defineElement(\"ai-portal.cruise-canvas\", {\n // Will wrap v2 bricks which don't support in shadow DOM.\n shadowOptions: false,\n})\nclass CruiseCanvas extends ReactNextElement implements CruiseCanvasProps {\n @property()\n accessor taskId: string | undefined;\n\n @property({ attribute: false })\n accessor task: TaskBaseDetail | undefined;\n\n @property({ attribute: false })\n accessor jobs: Job[] | undefined;\n\n @property()\n accessor goBackUrl: string | undefined;\n\n @event({ type: \"share\" })\n accessor #shareEvent!: EventEmitter<void>;\n\n #onShare = () => {\n this.#shareEvent.emit();\n };\n\n render() {\n return (\n <CruiseCanvasComponent\n taskId={this.taskId}\n jobs={this.jobs}\n task={this.task}\n goBackUrl={this.goBackUrl}\n onShare={this.#onShare}\n />\n );\n }\n}\n\nexport interface CruiseCanvasComponentProps extends CruiseCanvasProps {\n onShare?: () => void;\n}\n\nexport function CruiseCanvasComponent({\n taskId,\n task: propTask,\n jobs: propJobs,\n goBackUrl,\n onShare,\n}: CruiseCanvasComponentProps) {\n const rootRef = useRef<HTMLDivElement>(null);\n const {\n task: _task,\n jobs: _jobs,\n plan: _plan,\n error,\n humanInputRef,\n } = useTaskDetail(taskId);\n const task = taskId ? _task : propTask;\n const jobs = taskId ? _jobs : (propJobs ?? []);\n const plan = taskId ? _plan : propTask?.plan;\n const graph = useTaskGraph(task, jobs);\n const rawNodes = graph?.nodes;\n const rawEdges = graph?.edges;\n\n const pageTitle = task?.title ?? \"\";\n\n useEffect(() => {\n getRuntime().applyPageTitle(pageTitle);\n }, [pageTitle]);\n\n useEffect(() => {\n if (error) {\n handleHttpError(error);\n }\n }, [error]);\n\n const humanInput = useCallback(\n (jobId: string, input: string) => {\n humanInputRef.current?.(jobId, input);\n },\n [humanInputRef]\n );\n\n const [sizeMap, setSizeMap] = useState<Map<string, SizeTuple> | null>(null);\n const handleNodeResize = useCallback((id: string, size: SizeTuple | null) => {\n // Handle resize logic here\n setSizeMap((prev) => {\n if (!size) {\n if (!prev) {\n return null;\n }\n const newMap = new Map(prev);\n const deleted = newMap.delete(id);\n return deleted ? newMap : prev;\n }\n return prev ? new Map(prev).set(id, size) : new Map([[id, size]]);\n });\n }, []);\n\n const { sizeReady, nodes, edges } = useLayout({\n rawNodes,\n rawEdges,\n state: task?.state,\n sizeMap,\n });\n\n const { grabbing, transform, transformRef, zoomer /* , scaleRange */ } =\n useZoom({\n rootRef,\n zoomable: sizeReady,\n scrollable: sizeReady,\n pannable: sizeReady,\n });\n\n const { centered, setCentered, reCenterRef } = useAutoCenter({\n nodes,\n sizeReady,\n zoomer,\n rootRef,\n });\n\n const taskDone = DONE_STATES.includes(task?.state ?? \"working\");\n const taskLoading = !taskDone && nodes.length === 2;\n\n const nonLeafNodes = useMemo(() => {\n return new Set<string>(edges.map((edge) => edge.source));\n }, [edges]);\n\n const bottom = useMemo(() => {\n if (!sizeReady) {\n return null;\n }\n\n const leafNodes: GraphNode[] = [];\n for (const node of nodes) {\n if (!nonLeafNodes.has(node.id)) {\n leafNodes.push(node);\n }\n }\n if (leafNodes.length > 0) {\n const y1 = Math.max(\n ...leafNodes.map((node) => node.view!.y + node.view!.height)\n );\n return y1;\n }\n\n return null;\n }, [nodes, nonLeafNodes, sizeReady]);\n\n const bottomRef = useRef<number | null>(null);\n useEffect(() => {\n bottomRef.current = bottom;\n }, [bottom]);\n\n // Disable auto scroll when the user manually scrolled up\n const manualScrolledUpRef = useRef(false);\n\n useEffect(() => {\n const root = rootRef.current;\n if (!root || bottom === null || manualScrolledUpRef.current) {\n return;\n }\n const { offsetHeight } = root;\n const transform = transformRef.current;\n const transformedBottom = bottom * transform.k + transform.y;\n const diffY = offsetHeight - CANVAS_PADDING_BOTTOM - transformedBottom;\n if (diffY < 0) {\n // Make the latest node visible\n zoomer.translateBy(select(rootRef.current!), 0, diffY);\n }\n }, [bottom, transformRef, zoomer]);\n\n // Detect if the user scrolled up manually\n useEffect(() => {\n const bottom = bottomRef.current;\n const root = rootRef.current;\n if (!root || bottom === null) {\n return;\n }\n const { offsetHeight } = root;\n const transformedBottom = bottom * transform.k + transform.y;\n\n const diffY = offsetHeight - CANVAS_PADDING_BOTTOM - transformedBottom;\n manualScrolledUpRef.current = diffY < 0;\n }, [transform, zoomer]);\n\n const handleReCenter = useCallback(() => {\n reCenterRef.current = true;\n setCentered(false);\n }, [reCenterRef, setCentered]);\n\n const handleScaleChange = useCallback(\n (scale: number) => {\n zoomer.scaleTo(select(rootRef.current!), scale);\n },\n [zoomer]\n );\n\n return (\n <>\n <div\n className={classNames(styles.root, { [styles.loading]: !task })}\n ref={rootRef}\n style={{\n cursor: grabbing ? \"grabbing\" : \"grab\",\n }}\n >\n {!task && (\n <div className={styles[\"loading-icon\"]}>\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </div>\n )}\n <div\n className={classNames(styles.canvas, {\n [styles.ready]: sizeReady && centered,\n })}\n style={{\n transform: `translate3d(${transform.x}px, ${transform.y}px, 0) scale(${transform.k})`,\n }}\n >\n <svg className={styles.edges}>\n {edges.map((edge) => (\n <path\n className={styles.edge}\n key={`${edge.source}-${edge.target}`}\n d={edge\n .points!.map(\n ({ x, y }, i) => `${i === 0 ? \"M\" : \"L\"}${x},${y}`\n )\n .join(\" \")}\n />\n ))}\n </svg>\n {nodes.map((node) => (\n <MemoizedNodeComponent\n key={node.id}\n id={node.id}\n type={node.type}\n content={(node as RequirementGraphNode).content}\n job={(node as JobGraphNode).job}\n state={node.state}\n startTime={task?.startTime}\n taskLoading={taskLoading}\n instructionLoading={\n node.type === \"instruction\" &&\n !nonLeafNodes.has(node.id) &&\n !DONE_STATES.includes(node.state ?? \"working\")\n }\n edges={edges}\n x={node.view?.x}\n y={node.view?.y}\n onResize={handleNodeResize}\n humanInput={humanInput}\n onShare={onShare}\n />\n ))}\n </div>\n </div>\n <div className={styles.widgets}>\n {goBackUrl && (\n <WrappedLink className={styles[\"go-back\"]} url={goBackUrl}>\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-left-long\" />\n </WrappedLink>\n )}\n <PlanProgress plan={plan} />\n <ZoomBar\n scale={transform.k}\n onScaleChange={handleScaleChange}\n onReCenter={handleReCenter}\n />\n </div>\n </>\n );\n}\n\ninterface NodeComponentProps {\n id: string;\n type: GraphNode[\"type\"];\n edges: GraphEdge[];\n content?: string;\n job?: Job;\n state?: string;\n startTime?: number;\n taskLoading?: boolean;\n instructionLoading?: boolean;\n x?: number;\n y?: number;\n onResize: (id: string, size: SizeTuple | null) => void;\n humanInput?: (jobId: string, input: string) => void;\n onShare?: () => void;\n}\n\nfunction NodeComponent({\n id,\n type,\n state,\n job,\n content,\n startTime,\n taskLoading,\n instructionLoading,\n x,\n y,\n onResize,\n humanInput,\n onShare,\n}: NodeComponentProps) {\n const nodeRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const element = nodeRef.current;\n if (!element) {\n return;\n }\n const observer = new ResizeObserver(() => {\n onResize(id, [element.offsetWidth, element.offsetHeight]);\n });\n observer.observe(element);\n return () => {\n observer.disconnect();\n onResize(id, null);\n };\n }, [id, onResize]);\n\n useEffect(() => {\n const element = nodeRef.current;\n if (!element) {\n return;\n }\n const handleMouseDown = (e: MouseEvent) => {\n e.stopPropagation();\n };\n element.addEventListener(\"mousedown\", handleMouseDown);\n return () => {\n element.removeEventListener(\"mousedown\", handleMouseDown);\n };\n }, []);\n\n return (\n <div\n className={classNames(styles.node, {\n [styles.ready]: x != null && y != null,\n })}\n ref={nodeRef}\n style={{\n left: x,\n top: y,\n }}\n >\n {type === \"start\" ? (\n <NodeStart />\n ) : type === \"end\" ? (\n <NodeEnd onShare={onShare} />\n ) : type === \"requirement\" ? (\n <NodeRequirement\n content={content}\n startTime={startTime}\n loading={taskLoading}\n />\n ) : type === \"instruction\" ? (\n <NodeInstruction\n content={job!.instruction}\n loading={instructionLoading}\n />\n ) : type === \"job\" ? (\n <NodeJob state={state} job={job!} humanInput={humanInput} />\n ) : (\n <div className={`${styles[\"node-default\"]} ${styles[\"size-medium\"]}`}>\n {`Unknown job type: \"${type}\"`}\n </div>\n )}\n </div>\n );\n}\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n ASK_ANY_THING = \"ASK_ANYTHING\",\n}\n\nconst en: Locale = {\n [K.ASK_ANY_THING]: \"Ask anything\",\n};\n\nconst zh: Locale = {\n [K.ASK_ANY_THING]: \"询问任何问题\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-box\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","import React, { useCallback, useEffect, useRef } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport {\n TextareaAutoResize,\n type TextareaAutoResizeRef,\n} from \"@next-shared/form\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface ChatBoxProps {\n disabled?: boolean;\n placeholder?: string;\n autoFocus?: boolean;\n}\n\n/**\n * 构件 `ai-portal.chat-box`\n */\nexport\n@defineElement(\"ai-portal.chat-box\", {\n styleTexts: [styleText],\n})\nclass ChatBox extends ReactNextElement implements ChatBoxProps {\n @property({ type: Boolean })\n accessor disabled: boolean | undefined;\n\n @property()\n accessor placeholder: string | undefined;\n\n @property({ type: Boolean })\n accessor autoFocus: boolean | undefined;\n\n @event({ type: \"message.submit\" })\n accessor #messageSubmit!: EventEmitter<string>;\n\n #handleMessageSubmit = (value: string) => {\n this.#messageSubmit.emit(value);\n };\n\n render() {\n return (\n <ChatBoxComponent\n disabled={this.disabled}\n placeholder={this.placeholder}\n autoFocus={this.autoFocus}\n onSubmit={this.#handleMessageSubmit}\n />\n );\n }\n}\n\nexport interface ChatBoxComponentProps extends ChatBoxProps {\n // Define react event handlers here.\n onSubmit?: (value: string) => void;\n}\n\nexport function ChatBoxComponent({\n disabled,\n placeholder,\n autoFocus,\n onSubmit,\n}: ChatBoxComponentProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<TextareaAutoResizeRef>(null);\n const valueRef = useRef(\"\");\n\n const handleSubmit = useCallback(\n (e: React.FormEvent<HTMLTextAreaElement>) => {\n onSubmit?.(e.currentTarget.value);\n },\n [onSubmit]\n );\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n valueRef.current = e.target.value;\n },\n []\n );\n\n const handleSubmitClick = useCallback(() => {\n onSubmit?.(valueRef.current);\n }, [onSubmit]);\n\n useEffect(() => {\n if (autoFocus) {\n Promise.resolve().then(() => {\n textareaRef.current?.focus();\n });\n }\n }, []);\n\n return (\n <div className=\"container\" ref={containerRef}>\n <TextareaAutoResize\n containerRef={containerRef}\n ref={textareaRef}\n minRows={3}\n paddingSize={62}\n autoResize\n disabled={disabled}\n placeholder={placeholder ?? t(K.ASK_ANY_THING)}\n submitWhen=\"enter-without-shift\"\n onSubmit={handleSubmit}\n onChange={handleChange}\n />\n <button className=\"btn-send\" onClick={handleSubmitClick}>\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-up\" />\n </button>\n </div>\n );\n}\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\n\nconst { defineElement } = createDecorators();\n\n/**\n * 构件 `ai-portal.home-container`\n */\nexport\n@defineElement(\"ai-portal.home-container\", {\n styleTexts: [styleText],\n})\nclass HomeContainer extends ReactNextElement {\n render() {\n return <HomeContainerComponent />;\n }\n}\n\nexport function HomeContainerComponent() {\n return <slot />;\n}\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n TODAY = \"TODAY\",\n YESTERDAY = \"YESTERDAY\",\n PREVIOUS_7_DAYS = \"PREVIOUS_7_DAYS\",\n PREVIOUS_30_DAYS = \"PREVIOUS_30_DAYS\",\n}\n\nconst en: Locale = {\n [K.TODAY]: \"Today\",\n [K.YESTERDAY]: \"Yesterday\",\n [K.PREVIOUS_7_DAYS]: \"Previous 7 days\",\n [K.PREVIOUS_30_DAYS]: \"Previous 30 days\",\n};\n\nconst zh: Locale = {\n [K.TODAY]: \"今天\",\n [K.YESTERDAY]: \"昨天\",\n [K.PREVIOUS_7_DAYS]: \"过去7天\",\n [K.PREVIOUS_30_DAYS]: \"过去30天\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-history\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","// istanbul ignore file: experimental\nimport React, { useMemo, useState } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport moment from \"moment\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n ActionType,\n EoMiniActions,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping,\n EoMiniActionsProps,\n SimpleActionType,\n} from \"@next-bricks/basic/mini-actions\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport type { TaskState } from \"../cruise-canvas/interfaces.js\";\nimport classNames from \"classnames\";\nimport { DONE_STATES } from \"../cruise-canvas/constants.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedMiniActions = wrapBrick<\n EoMiniActions,\n EoMiniActionsProps,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping\n>(\"eo-mini-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface ChatHistoryProps {\n list?: HistoryItem[];\n actions?: ActionType[];\n}\n\nexport interface HistoryItem {\n id: string;\n title: string;\n startTime: number;\n state?: TaskState;\n}\n\nexport interface ActionClickDetail {\n action: SimpleActionType;\n item: HistoryItem;\n}\n\n/**\n * 构件 `ai-portal.chat-history`\n */\nexport\n@defineElement(\"ai-portal.chat-history\", {\n styleTexts: [styleText],\n})\nclass ChatHistory extends ReactNextElement implements ChatHistoryProps {\n @property({ attribute: false })\n accessor list: HistoryItem[] | undefined;\n\n @property({ attribute: false })\n accessor actions: ActionType[] | undefined;\n\n @event({ type: \"action.click\" })\n accessor #actionClick!: EventEmitter<ActionClickDetail>;\n\n #handleActionClick = (detail: ActionClickDetail) => {\n this.#actionClick.emit(detail);\n };\n\n render() {\n return (\n <ChatHistoryComponent\n list={this.list}\n actions={this.actions}\n onActionClick={this.#handleActionClick}\n />\n );\n }\n}\n\nexport interface ChatHistoryComponentProps extends ChatHistoryProps {\n onActionClick?: (detail: ActionClickDetail) => void;\n}\n\ninterface GroupedHistory {\n title: string;\n items: HistoryItem[];\n}\n\nexport function ChatHistoryComponent({\n list,\n actions,\n onActionClick,\n}: ChatHistoryComponentProps) {\n const groups = useMemo(() => {\n const groupMap = new Map<string, GroupedHistory>();\n // Group history by\n // - today\n // - yesterday\n // - previous 7 days\n // - previous 30 days\n // - each month this year\n // - each year before.\n const now = moment();\n const startOfDay = now.startOf(\"day\");\n const yesterday = startOfDay.clone().subtract(1, \"day\");\n const sevenDaysAgo = startOfDay.clone().subtract(7, \"days\");\n const thirtyDaysAgo = startOfDay.clone().subtract(30, \"days\");\n const thisYear = now.year();\n\n const timestamps = {\n startOfDay: +startOfDay / 1000,\n yesterday: +yesterday / 1000,\n sevenDaysAgo: +sevenDaysAgo / 1000,\n thirtyDaysAgo: +thirtyDaysAgo / 1000,\n thisYear,\n };\n for (const item of list ?? []) {\n let groupKey: string;\n if (item.startTime >= timestamps.startOfDay) {\n groupKey = t(K.TODAY);\n } else if (item.startTime >= timestamps.yesterday) {\n groupKey = t(K.YESTERDAY);\n } else if (item.startTime >= timestamps.sevenDaysAgo) {\n groupKey = t(K.PREVIOUS_7_DAYS);\n } else if (item.startTime >= timestamps.thirtyDaysAgo) {\n groupKey = t(K.PREVIOUS_30_DAYS);\n } else if (item.startTime >= timestamps.thisYear) {\n groupKey = moment(item.startTime * 1000).format(\"MMMM\");\n } else {\n groupKey = moment(item.startTime * 1000).format(\"YYYY\");\n }\n let group = groupMap.get(groupKey);\n if (!group) {\n groupMap.set(groupKey, (group = { title: groupKey, items: [] }));\n }\n group.items.push(item);\n }\n\n return [...groupMap.values()];\n }, [list]);\n\n const [actionsVisible, setActionsVisible] = useState<string | null>(null);\n\n return (\n <ul>\n {groups.map((group) => (\n <li key={group.title} className=\"group\">\n <div className=\"group-title\">{group.title}</div>\n <ul className=\"items\">\n {group.items.map((item) => (\n <li key={item.id}>\n <WrappedLink\n className={classNames(\"item\", {\n active: actionsVisible === item.id,\n })}\n url={`/${item.id}`}\n >\n <div className=\"item-title\">{item.title}</div>\n <WrappedMiniActions\n className=\"actions\"\n actions={actions}\n onActionClick={(e) => {\n onActionClick?.({ action: e.detail, item });\n }}\n onVisibleChange={(e) => {\n setActionsVisible(e.detail ? item.id : null);\n }}\n />\n {!DONE_STATES.includes(item.state!) && (\n <div className=\"working\"></div>\n )}\n </WrappedLink>\n </li>\n ))}\n </ul>\n </li>\n ))}\n </ul>\n );\n}\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","toString","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_REPLACEMENT_0___","initializeI18n","NS","locales","defineElement","property","event","createDecorators","MemoizedNodeComponent","memo","NodeComponent","_CruiseCanvas","_A","WeakMap","_B","_C","_D","_E","_CruiseCanvas_brand","WeakSet","_onShare","CruiseCanvas","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_taskId","_init_extra_taskId","_init_task","_init_extra_task","_init_jobs","_init_extra_jobs","_init_goBackUrl","_init_extra_goBackUrl","_init_shareEvent","_init_extra_shareEvent","_classPrivateGetter","this","_get_shareEvent","emit","taskId","_classPrivateFieldGet","v","_classPrivateFieldSet","task","jobs","goBackUrl","render","React","CruiseCanvasComponent","onShare","_ref","_task$title","_task$state","propTask","propJobs","rootRef","useRef","_task","_jobs","plan","_plan","error","humanInputRef","useTaskDetail","graph","useTaskGraph","rawNodes","nodes","rawEdges","edges","pageTitle","title","useEffect","getRuntime","applyPageTitle","handleHttpError","humanInput","useCallback","jobId","input","_humanInputRef$curren","current","call","sizeMap","setSizeMap","useState","handleNodeResize","size","prev","newMap","Map","delete","set","sizeReady","useLayout","state","grabbing","transform","transformRef","zoomer","useZoom","zoomable","scrollable","pannable","centered","setCentered","reCenterRef","useAutoCenter","taskLoading","DONE_STATES","includes","length","nonLeafNodes","useMemo","Set","map","edge","source","bottom","leafNodes","node","has","Math","max","view","y","height","bottomRef","manualScrolledUpRef","root","offsetHeight","transformedBottom","k","diffY","CANVAS_PADDING_BOTTOM","translateBy","select","handleReCenter","handleScaleChange","scale","scaleTo","className","classNames","styles","loading","ref","style","cursor","WrappedIcon","lib","theme","icon","spinning","canvas","ready","x","key","target","d","points","_ref2","i","join","_node$state","_node$view","_node$view2","type","content","job","startTime","instructionLoading","onResize","widgets","WrappedLink","url","prefix","PlanProgress","ZoomBar","onScaleChange","onReCenter","_ref3","nodeRef","element","observer","ResizeObserver","offsetWidth","observe","disconnect","handleMouseDown","e","stopPropagation","addEventListener","removeEventListener","left","top","NodeStart","NodeEnd","NodeRequirement","NodeInstruction","instruction","NodeJob","_CruiseCanvas2","_set_shareEvent","c","_initClass","_applyDecs","shadowOptions","attribute","o","_","_checkInRHS","K","en","ASK_ANY_THING","zh","t","i18n","getFixedT","wrapBrick","_ChatBox","_ChatBox_brand","_handleMessageSubmit","ChatBox","_init_disabled","_init_extra_disabled","_init_placeholder","_init_extra_placeholder","_init_autoFocus","_init_extra_autoFocus","_init_messageSubmit","_init_extra_messageSubmit","value","_get_messageSubmit","disabled","placeholder","autoFocus","ChatBoxComponent","onSubmit","containerRef","textareaRef","valueRef","handleSubmit","currentTarget","handleChange","handleSubmitClick","Promise","resolve","then","_textareaRef$current","focus","TextareaAutoResize","minRows","paddingSize","autoResize","submitWhen","onChange","onClick","_ChatBox2","_set_messageSubmit","styleTexts","styleText","Boolean","_HomeContainer","HomeContainer","HomeContainerComponent","_HomeContainer2","TODAY","YESTERDAY","PREVIOUS_7_DAYS","PREVIOUS_30_DAYS","WrappedMiniActions","onActionClick","onVisibleChange","_ChatHistory","_ChatHistory_brand","_handleActionClick","ChatHistory","_init_list","_init_extra_list","_init_actions","_init_extra_actions","_init_actionClick","_init_extra_actionClick","detail","_get_actionClick","list","actions","ChatHistoryComponent","groups","groupMap","now","moment","startOfDay","startOf","yesterday","clone","subtract","sevenDaysAgo","thirtyDaysAgo","timestamps","year","item","groupKey","format","group","get","items","values","actionsVisible","setActionsVisible","active","action","_ChatHistory2","_set_actionClick"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[6573],{433:(e,t,n)=>{n.d(t,{I:()=>s,K:()=>i,NS:()=>l,t:()=>u});var o=n(3922);let i=function(e){return e.ASK_ANY_THING="ASK_ANYTHING",e}({});const a={[i.ASK_ANY_THING]:"Ask anything"},r={[i.ASK_ANY_THING]:"询问任何问题"},l="bricks/ai-portal/chat-box",s={en:a,zh:r},u=o.i18n.getFixedT(null,l)},1107:(e,t,n)=>{e.exports=n.p+"images/eef4f2bd.png"},1451:(e,t,n)=>{n.d(t,{e:()=>c});var o=n(9575),i=n(8769),a=n(9435),r=n(9126);const l=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break","white-space"];let s;const u=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey",c=i.forwardRef(d);function d(e,t){let{autoResize:n,minRows:c,maxRows:d,borderSize:p,paddingSize:h,containerRef:b,value:g,style:m,submitWhen:f,onChange:x,onSubmit:w,onKeyDown:k,onCompositionStart:A,onCompositionEnd:v,...S}=e;const y=null==n||n,[z,C]=(0,i.useState)(null!=g?g:""),R=(0,i.useRef)(null),[E,_]=(0,i.useState)(null);(0,i.useImperativeHandle)(t,(()=>({focus:()=>{const e=R.current;if(e){var t;const n=null===(t=e.value)||void 0===t?void 0:t.length;e.focus(),n&&e.setSelectionRange(n,n)}}})),[]);const N=(0,i.useCallback)((()=>{const e=R.current;if(e&&y){const t=function(e,t){const{minRows:n=null,maxRows:o=null,borderSize:i=2,paddingSize:a=8}=null!=t?t:{};s||(s=document.createElement("textarea"),s.setAttribute("tab-index","-1"),s.setAttribute("aria-hidden","true"),document.body.appendChild(s));const r=window.getComputedStyle(e),u=l.map((e=>`${e}:${r.getPropertyValue(e)}`)).join(";");let c,d,p;s.setAttribute("style",`${u};\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n right: 0!important;\n pointer-events: none!important;\n`),s.value=e.value||e.placeholder||"";let h=s.scrollHeight+i;if(null!==n||null!==o){const e=parseFloat(window.getComputedStyle(s).getPropertyValue("line-height"));null!==n&&(c=e*n+a+i,h=Math.max(c,h)),null!==o&&(d=e*o+a+i,h<=d&&(p="hidden"),h=Math.min(d,h))}const b={height:h,overflowY:p,resize:"none"};return c&&(b.minHeight=c),d&&(b.maxHeight=d),b}(e,{minRows:c,maxRows:d,borderSize:p,paddingSize:h});(0,a.flushSync)((()=>{_(t)}))}}),[y,d,c,p,h]);(0,i.useEffect)((()=>{C(null!=g?g:"")}),[g]),(0,i.useEffect)((()=>{N()}),[N,z]);const K=(0,i.useRef)(!1),T=(0,i.useCallback)((e=>{K.current=!0,null==A||A(e)}),[A]),B=(0,i.useCallback)((e=>{K.current=!1,null==v||v(e)}),[v]),F=(0,i.useCallback)((e=>{K.current||("Enter"===e.key&&("enter-without-shift"===f?!e.shiftKey:"enter-with-mod"===f&&e[u])&&(e.preventDefault(),e.stopPropagation(),null==w||w(e)),null==k||k(e))}),[k,w,f]);return(0,i.useEffect)((()=>{const e=null==b?void 0:b.current;if(!e||!y)return;let t;const n=new r.A((n=>{for(const o of n)if(o.target===e){const e=o.contentBoxSize?o.contentBoxSize[0]?o.contentBoxSize[0].inlineSize:o.contentBoxSize.inlineSize:o.contentRect.width;if(void 0!==e&&e!==t){const n=!t;t=e,n||requestAnimationFrame(N)}}}));return n.observe(e),()=>{n.disconnect()}}),[y,b,N]),i.createElement("textarea",(0,o.A)({},S,{ref:R,value:z,style:{...m,...E},onChange:e=>{C(e.target.value),null==x||x(e)},onCompositionStart:T,onCompositionEnd:B,onKeyDown:F}))}},7008:(e,t,n)=>{n.d(t,{A:()=>p});var o=n(6758),i=n.n(o),a=n(935),r=n.n(a),l=n(62),s=n.n(l),u=new URL(n(1107),n.b),c=r()(i()),d=s()(u);c.push([e.id,`:host{display:block;color:#262626}:host([hidden]){display:none}*{box-sizing:border-box}.container{position:relative;background-color:#e1e3ec;background-image:url(${d});background-size:694px 144px;background-position:top left;background-repeat:no-repeat;box-shadow:inset 0px 2px 5px 1px rgba(42,46,59,0.1);border-radius:20px;padding:12px}textarea{display:block;width:100%;padding:10px 16px 52px;color:var(--antd-input-color);background:rgba(255,255,255,0.8);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font-size:14px;line-height:22px;height:130px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{position:absolute;bottom:26px;right:26px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.06);border:none;border-radius:8px;cursor:pointer;color:inherit}.btn-send:hover{background:rgba(0,0,0,0.08)}.btn-send:active{background:rgba(0,0,0,0.15)}`,""]);const p=c.toString()},7707:(e,t,n)=>{n.r(t),n.d(t,{ChatBox:()=>F,ChatBoxComponent:()=>D});var o,i=n(4635),a=n(918),r=n(6902),l=n(5536),s=n(6121),u=n(829),c=n(2740),d=n(8769),p=n.n(d),h=n(6192),b=n(9859),g=n(1451),m=(n(6477),n(3922)),f=n(433),x=n(7008);let w,k,A,v,S,y,z,C,R,E,_;(0,m.initializeI18n)(f.NS,f.I);const N=(0,b.wrapBrick)("eo-icon"),{defineElement:K,property:T,event:B}=(0,h.createDecorators)();let F;var H=new WeakMap,I=new WeakMap,M=new WeakMap,W=new WeakMap,P=new WeakSet,Y=new WeakMap;class G extends b.ReactNextElement{constructor(){super(...arguments),(0,i.A)(this,P),(0,a.A)(this,H,k(this)),(0,a.A)(this,I,(A(this),v(this))),(0,a.A)(this,M,(S(this),y(this))),(0,a.A)(this,W,(z(this),C(this))),(0,a.A)(this,Y,(_(this),e=>{(0,l.A)(P,this,R).emit(e)}))}get disabled(){return(0,u.A)(H,this)}set disabled(e){(0,s.A)(H,this,e)}get placeholder(){return(0,u.A)(I,this)}set placeholder(e){(0,s.A)(I,this,e)}get autoFocus(){return(0,u.A)(M,this)}set autoFocus(e){(0,s.A)(M,this,e)}render(){return p().createElement(D,{disabled:this.disabled,placeholder:this.placeholder,autoFocus:this.autoFocus,onSubmit:(0,u.A)(Y,this)})}}function D(e){let{disabled:t,placeholder:n,autoFocus:o,onSubmit:i}=e;const a=(0,d.useRef)(null),r=(0,d.useRef)(null),l=(0,d.useRef)(""),s=(0,d.useCallback)((e=>{null==i||i(e.currentTarget.value)}),[i]),u=(0,d.useCallback)((e=>{l.current=e.target.value}),[]),c=(0,d.useCallback)((()=>{null==i||i(l.current)}),[i]);return(0,d.useEffect)((()=>{o&&Promise.resolve().then((()=>{var e;null===(e=r.current)||void 0===e||e.focus()}))}),[]),p().createElement("div",{className:"container",ref:a},p().createElement(g.e,{containerRef:a,ref:r,minRows:3,paddingSize:62,autoResize:!0,disabled:t,placeholder:null!=n?n:(0,f.t)(f.K.ASK_ANY_THING),submitWhen:"enter-without-shift",onSubmit:s,onChange:u}),p().createElement("button",{className:"btn-send",onClick:c},p().createElement(N,{lib:"fa",prefix:"fas",icon:"arrow-up"})))}o=G,({e:[k,A,v,S,y,z,C,R,E,_],c:[F,w]}=(0,c.A)(o,[K("ai-portal.chat-box",{styleTexts:[x.A]})],[[T({type:Boolean}),1,"disabled"],[T(),1,"placeholder"],[T({type:Boolean}),1,"autoFocus"],[B({type:"message.submit"}),1,"messageSubmit",e=>(0,u.A)(W,e),(e,t)=>(0,s.A)(W,e,t)]],0,(e=>Y.has((0,r.A)(e))),b.ReactNextElement)),w()}}]);
2
- //# sourceMappingURL=chat-box.bb70bdf7.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/chat-box.bb70bdf7.js","mappings":"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","sources":["webpack:///./src/chat-box/i18n.ts","webpack:///../../../src/utils/calculateAutoSizeStyle.ts","webpack:///../../src/TextareaAutoResize.tsx","webpack:///./src/chat-box/styles.shadow.css","webpack:///./src/chat-box/index.tsx"],"sourcesContent":["import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n ASK_ANY_THING = \"ASK_ANYTHING\",\n}\n\nconst en: Locale = {\n [K.ASK_ANY_THING]: \"Ask anything\",\n};\n\nconst zh: Locale = {\n [K.ASK_ANY_THING]: \"询问任何问题\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-box\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","// istanbul ignore file\nimport type React from \"react\";\n\nconst HIDDEN_TEXTAREA_STYLE = `\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n right: 0!important;\n pointer-events: none!important;\n`;\n\nconst SIZING_STYLE = [\n \"letter-spacing\",\n \"line-height\",\n \"padding-top\",\n \"padding-bottom\",\n \"font-family\",\n \"font-weight\",\n \"font-size\",\n \"font-variant\",\n \"text-rendering\",\n \"text-transform\",\n \"width\",\n \"text-indent\",\n \"padding-left\",\n \"padding-right\",\n \"border-width\",\n \"box-sizing\",\n \"word-break\",\n \"white-space\",\n];\n\nlet hiddenTextarea: HTMLTextAreaElement | undefined;\n\nexport interface AutoSizeOptions {\n minRows?: number | null;\n maxRows?: number | null;\n borderSize?: number;\n paddingSize?: number;\n}\n\n/**\n * 计算 textarea 高度\n * https://github.com/react-component/textarea/blob/1c0026fbe30e5f7dff1fca695b2cf262246381ca/src/calculateNodeHeight.tsx\n */\nexport default function calculateAutoSizeStyle(\n uiTextNode: HTMLTextAreaElement,\n options?: AutoSizeOptions\n): React.CSSProperties {\n const {\n minRows = null,\n maxRows = null,\n borderSize = 2,\n paddingSize = 8,\n } = options ?? {};\n\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement(\"textarea\");\n hiddenTextarea.setAttribute(\"tab-index\", \"-1\");\n hiddenTextarea.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenTextarea);\n }\n\n const uiTextNodeStyle = window.getComputedStyle(uiTextNode);\n const sizingStyle = SIZING_STYLE.map(\n (name) => `${name}:${uiTextNodeStyle.getPropertyValue(name)}`\n ).join(\";\");\n\n // equal style\n hiddenTextarea.setAttribute(\n \"style\",\n `${sizingStyle};${HIDDEN_TEXTAREA_STYLE}`\n );\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || \"\";\n\n let minHeight: number | undefined;\n let maxHeight: number | undefined;\n let overflowY: React.CSSProperties[\"overflowY\"];\n\n let height = hiddenTextarea.scrollHeight + borderSize;\n\n if (minRows !== null || maxRows !== null) {\n const singleRowHeight =\n process.env.NODE_ENV === \"test\"\n ? 22\n : parseFloat(\n window\n .getComputedStyle(hiddenTextarea)\n .getPropertyValue(\"line-height\")\n );\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows + paddingSize + borderSize;\n height = Math.max(minHeight, height);\n }\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows + paddingSize + borderSize;\n if (height <= maxHeight) {\n overflowY = \"hidden\";\n }\n height = Math.min(maxHeight, height);\n }\n }\n\n const style: React.CSSProperties = {\n height,\n overflowY,\n resize: \"none\",\n };\n\n if (minHeight) {\n style.minHeight = minHeight;\n }\n if (maxHeight) {\n style.maxHeight = maxHeight;\n }\n\n return style;\n}\n","import React, {\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { flushSync } from \"react-dom\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport calculateAutoSizeStyle from \"./utils/calculateAutoSizeStyle.js\";\n\n// istanbul ignore next\nconst modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n\nexport interface TextareaAutoResizeProps\n extends React.DetailedHTMLProps<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HTMLTextAreaElement\n > {\n /** @default true */\n autoResize?: boolean;\n minRows?: number | null;\n maxRows?: number | null;\n /** @default 2 */\n borderSize?: number;\n /** @default 8 */\n paddingSize?: number;\n containerRef?: React.RefObject<HTMLElement>;\n submitWhen?: \"enter-without-shift\" | \"enter-with-mod\";\n}\n\nexport interface TextareaAutoResizeRef {\n focus(): void;\n}\n\nexport const TextareaAutoResize = React.forwardRef<\n TextareaAutoResizeRef,\n TextareaAutoResizeProps\n>(LegacyTextareaAutoResize);\n\nfunction LegacyTextareaAutoResize(\n {\n autoResize: _autoResize,\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n containerRef,\n value: propValue,\n style,\n submitWhen,\n onChange,\n onSubmit,\n onKeyDown,\n onCompositionStart,\n onCompositionEnd,\n ...props\n }: TextareaAutoResizeProps,\n ref: React.ForwardedRef<TextareaAutoResizeRef>\n): React.JSX.Element {\n const autoResize = _autoResize ?? true;\n const [value, setValue] = useState(propValue ?? \"\");\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n const [autoStyle, setAutoStyle] = useState<React.CSSProperties | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => {\n const textarea = textareaRef.current;\n // istanbul ignore else: defensive check\n if (textarea) {\n const valueLength = textarea.value?.length;\n textarea.focus();\n valueLength && textarea.setSelectionRange(valueLength, valueLength);\n }\n },\n }),\n []\n );\n\n const doAutoResize = useCallback(() => {\n const textarea = textareaRef.current;\n if (textarea && autoResize) {\n const style = calculateAutoSizeStyle(textarea, {\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n });\n // istanbul ignore next\n if (process.env.NODE_ENV === \"test\") {\n setAutoStyle(style);\n } else {\n flushSync(() => {\n setAutoStyle(style);\n });\n }\n }\n }, [autoResize, maxRows, minRows, borderSize, paddingSize]);\n\n const handleInputChange = (\n e: React.ChangeEvent<HTMLTextAreaElement>\n ): void => {\n setValue(e.target.value);\n onChange?.(e);\n };\n\n useEffect(() => {\n setValue(propValue ?? \"\");\n }, [propValue]);\n\n useEffect(() => {\n doAutoResize();\n }, [doAutoResize, value]);\n\n const compositionRef = useRef(false);\n\n const handleCompositionStart = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = true;\n onCompositionStart?.(e);\n },\n [onCompositionStart]\n );\n\n const handleCompositionEnd = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = false;\n onCompositionEnd?.(e);\n },\n [onCompositionEnd]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (compositionRef.current) {\n // Ignore key events during composition\n return;\n }\n\n if (\n e.key === \"Enter\" &&\n (submitWhen === \"enter-without-shift\"\n ? !e.shiftKey\n : submitWhen === \"enter-with-mod\" && e[modKey])\n ) {\n e.preventDefault();\n e.stopPropagation();\n onSubmit?.(e);\n }\n\n onKeyDown?.(e);\n },\n [onKeyDown, onSubmit, submitWhen]\n );\n\n // istanbul ignore next\n useEffect(() => {\n const container = containerRef?.current;\n if (!container || !autoResize) {\n return;\n }\n let previousInlineSize: number | undefined;\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n // istanbul ignore next: compatibility\n const currentInlineSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].inlineSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .inlineSize\n : entry.contentRect.width;\n if (\n currentInlineSize !== undefined &&\n currentInlineSize !== previousInlineSize\n ) {\n const isInitial = !previousInlineSize;\n previousInlineSize = currentInlineSize;\n if (!isInitial) {\n requestAnimationFrame(doAutoResize);\n }\n }\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, [autoResize, containerRef, doAutoResize]);\n\n return (\n <textarea\n {...props}\n ref={textareaRef}\n value={value}\n style={{\n ...style,\n ...autoStyle,\n }}\n onChange={handleInputChange}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n onKeyDown={handleKeyDown}\n />\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/background@2x.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;color:#262626}:host([hidden]){display:none}*{box-sizing:border-box}.container{position:relative;background-color:#e1e3ec;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-size:694px 144px;background-position:top left;background-repeat:no-repeat;box-shadow:inset 0px 2px 5px 1px rgba(42,46,59,0.1);border-radius:20px;padding:12px}textarea{display:block;width:100%;padding:10px 16px 52px;color:var(--antd-input-color);background:rgba(255,255,255,0.8);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font-size:14px;line-height:22px;height:130px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{position:absolute;bottom:26px;right:26px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.06);border:none;border-radius:8px;cursor:pointer;color:inherit}.btn-send:hover{background:rgba(0,0,0,0.08)}.btn-send:active{background:rgba(0,0,0,0.15)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React, { useCallback, useEffect, useRef } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport {\n TextareaAutoResize,\n type TextareaAutoResizeRef,\n} from \"@next-shared/form\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface ChatBoxProps {\n disabled?: boolean;\n placeholder?: string;\n autoFocus?: boolean;\n}\n\n/**\n * 构件 `ai-portal.chat-box`\n */\nexport\n@defineElement(\"ai-portal.chat-box\", {\n styleTexts: [styleText],\n})\nclass ChatBox extends ReactNextElement implements ChatBoxProps {\n @property({ type: Boolean })\n accessor disabled: boolean | undefined;\n\n @property()\n accessor placeholder: string | undefined;\n\n @property({ type: Boolean })\n accessor autoFocus: boolean | undefined;\n\n @event({ type: \"message.submit\" })\n accessor #messageSubmit!: EventEmitter<string>;\n\n #handleMessageSubmit = (value: string) => {\n this.#messageSubmit.emit(value);\n };\n\n render() {\n return (\n <ChatBoxComponent\n disabled={this.disabled}\n placeholder={this.placeholder}\n autoFocus={this.autoFocus}\n onSubmit={this.#handleMessageSubmit}\n />\n );\n }\n}\n\nexport interface ChatBoxComponentProps extends ChatBoxProps {\n // Define react event handlers here.\n onSubmit?: (value: string) => void;\n}\n\nexport function ChatBoxComponent({\n disabled,\n placeholder,\n autoFocus,\n onSubmit,\n}: ChatBoxComponentProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<TextareaAutoResizeRef>(null);\n const valueRef = useRef(\"\");\n\n const handleSubmit = useCallback(\n (e: React.FormEvent<HTMLTextAreaElement>) => {\n onSubmit?.(e.currentTarget.value);\n },\n [onSubmit]\n );\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n valueRef.current = e.target.value;\n },\n []\n );\n\n const handleSubmitClick = useCallback(() => {\n onSubmit?.(valueRef.current);\n }, [onSubmit]);\n\n useEffect(() => {\n if (autoFocus) {\n Promise.resolve().then(() => {\n textareaRef.current?.focus();\n });\n }\n }, []);\n\n return (\n <div className=\"container\" ref={containerRef}>\n <TextareaAutoResize\n containerRef={containerRef}\n ref={textareaRef}\n minRows={3}\n paddingSize={62}\n autoResize\n disabled={disabled}\n placeholder={placeholder ?? t(K.ASK_ANY_THING)}\n submitWhen=\"enter-without-shift\"\n onSubmit={handleSubmit}\n onChange={handleChange}\n />\n <button className=\"btn-send\" onClick={handleSubmitClick}>\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-up\" />\n </button>\n </div>\n );\n}\n"],"names":["K","en","ASK_ANY_THING","zh","NS","locales","t","i18n","getFixedT","SIZING_STYLE","hiddenTextarea","modKey","test","navigator","platform","TextareaAutoResize","React","LegacyTextareaAutoResize","_ref","ref","autoResize","_autoResize","minRows","maxRows","borderSize","paddingSize","containerRef","value","propValue","style","submitWhen","onChange","onSubmit","onKeyDown","onCompositionStart","onCompositionEnd","props","setValue","useState","textareaRef","useRef","autoStyle","setAutoStyle","useImperativeHandle","focus","textarea","current","_textarea$value","valueLength","length","setSelectionRange","doAutoResize","useCallback","uiTextNode","options","document","createElement","setAttribute","body","appendChild","uiTextNodeStyle","window","getComputedStyle","sizingStyle","map","name","getPropertyValue","join","minHeight","maxHeight","overflowY","placeholder","height","scrollHeight","singleRowHeight","parseFloat","Math","max","min","resize","calculateAutoSizeStyle","flushSync","useEffect","compositionRef","handleCompositionStart","e","handleCompositionEnd","handleKeyDown","key","shiftKey","preventDefault","stopPropagation","container","previousInlineSize","observer","ResizeObserver","entries","entry","target","currentInlineSize","contentBoxSize","inlineSize","contentRect","width","undefined","isInitial","requestAnimationFrame","observe","disconnect","_extends","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","push","module","id","toString","initializeI18n","WrappedIcon","wrapBrick","defineElement","property","event","createDecorators","_ChatBox","_A","WeakMap","_B","_C","_D","_ChatBox_brand","WeakSet","_handleMessageSubmit","ChatBox","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_disabled","_init_extra_disabled","_init_placeholder","_init_extra_placeholder","_init_autoFocus","_init_extra_autoFocus","_init_messageSubmit","_init_extra_messageSubmit","_classPrivateGetter","this","_get_messageSubmit","emit","disabled","_classPrivateFieldGet","v","_classPrivateFieldSet","autoFocus","render","ChatBoxComponent","valueRef","handleSubmit","currentTarget","handleChange","handleSubmitClick","Promise","resolve","then","_textareaRef$current","className","onClick","lib","prefix","icon","_ChatBox2","_set_messageSubmit","c","_initClass","_applyDecs","styleTexts","styleText","type","Boolean","o","_","has","_checkInRHS"],"sourceRoot":""}