pcm-agents 0.6.64-beta.1 → 0.6.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components-position-selector_28.cjs.entry.js +943 -22
- package/dist/cjs/components-position-selector_28.cjs.entry.js.map +1 -1
- package/dist/cjs/index-C_qhED9Z.js.map +1 -1
- package/dist/cjs/{index-CL4Tz2fU.js → index-DQcWrort.js} +5 -5
- package/dist/cjs/{index-CL4Tz2fU.js.map → index-DQcWrort.js.map} +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/{message-utils-pPGi8R71.js → message-utils-OP5WQarf.js} +3 -2
- package/dist/cjs/{message-utils-pPGi8R71.js.map → message-utils-OP5WQarf.js.map} +1 -1
- package/dist/cjs/oem-htws-modal.cjs.entry.js +1 -1
- package/dist/cjs/oem-jd-modal.cjs.entry.js +2 -2
- package/dist/cjs/oem-jlpp-modal.cjs.entry.js +1 -1
- package/dist/cjs/oem-jlsx-modal.cjs.entry.js +3 -3
- package/dist/cjs/oem-jlzz-modal.cjs.entry.js +1 -1
- package/dist/cjs/oem-mnct-modal.cjs.entry.js +1 -1
- package/dist/cjs/oem-qgqjl-modal.cjs.entry.js +1 -1
- package/dist/cjs/oem-zygh-modal.cjs.entry.js +1 -1
- package/dist/cjs/pcm-hr-chat-modal.cjs.entry.js +2 -2
- package/dist/cjs/pcm-mnms-modal.cjs.entry.js +1 -1
- package/dist/cjs/pcm-zygh-v2-modal.cjs.entry.js +1 -1
- package/dist/cjs/{sentry-reporter-CshODO7C.js → sentry-reporter-DbH6qDcz.js} +3 -3
- package/dist/cjs/{sentry-reporter-CshODO7C.js.map → sentry-reporter-DbH6qDcz.js.map} +1 -1
- package/dist/collection/components/pcm-chat-message/pcm-chat-message.js +50 -19
- package/dist/collection/components/pcm-chat-message/pcm-chat-message.js.map +1 -1
- package/dist/components/components-position-selector.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/oem-htws-modal.js +6 -6
- package/dist/components/oem-jd-modal.js +4 -4
- package/dist/components/oem-jlpp-modal.js +8 -8
- package/dist/components/oem-jlsx-modal.js +7 -7
- package/dist/components/oem-jlzz-modal.js +6 -6
- package/dist/components/oem-mnct-modal.js +8 -8
- package/dist/components/oem-mnms-modal.js +9 -9
- package/dist/components/oem-qgqjl-modal.js +8 -8
- package/dist/components/oem-zygh-modal.js +6 -6
- package/dist/components/{p-bciQWw-t.js → p-B-0jiyHD.js} +4 -4
- package/dist/components/{p-bciQWw-t.js.map → p-B-0jiyHD.js.map} +1 -1
- package/dist/components/{p-Ckq0an2q.js → p-CEp2_PZO.js} +3 -3
- package/dist/components/{p-Ckq0an2q.js.map → p-CEp2_PZO.js.map} +1 -1
- package/dist/components/{p-C8RERqdE.js → p-CEyh93ap.js} +3 -3
- package/dist/components/{p-C8RERqdE.js.map → p-CEyh93ap.js.map} +1 -1
- package/dist/components/p-CR7WLzmM.js.map +1 -1
- package/dist/components/{p-BdDugOD6.js → p-CZPju2jV.js} +5 -5
- package/dist/components/{p-BdDugOD6.js.map → p-CZPju2jV.js.map} +1 -1
- package/dist/components/{p-BIII6p1D.js → p-CnK5J7Yw.js} +3 -3
- package/dist/components/{p-BIII6p1D.js.map → p-CnK5J7Yw.js.map} +1 -1
- package/dist/components/{p-B9yaqEpW.js → p-CuqMbk0y.js} +3 -3
- package/dist/components/{p-B9yaqEpW.js.map → p-CuqMbk0y.js.map} +1 -1
- package/dist/components/{p-BY558a8i.js → p-DHC6ZviH.js} +3 -3
- package/dist/components/{p-BY558a8i.js.map → p-DHC6ZviH.js.map} +1 -1
- package/dist/components/{p-Bo88CJnt.js → p-DmAhoM-o.js} +6 -6
- package/dist/components/{p-Bo88CJnt.js.map → p-DmAhoM-o.js.map} +1 -1
- package/dist/components/{p-DvqR5xcW.js → p-FlzcO5gZ.js} +3 -3
- package/dist/components/{p-DvqR5xcW.js.map → p-FlzcO5gZ.js.map} +1 -1
- package/dist/components/{p-D8Wi8fsl.js → p-hFzUvn6_.js} +3 -3
- package/dist/components/{p-D8Wi8fsl.js.map → p-hFzUvn6_.js.map} +1 -1
- package/dist/components/{p-WUTJc9UM.js → p-spXOmqIl.js} +944 -23
- package/dist/components/p-spXOmqIl.js.map +1 -0
- package/dist/components/pcm-1zhanshi-mnms-modal.js +5 -5
- package/dist/components/pcm-app-chat-modal.js +1 -1
- package/dist/components/pcm-card.js +1 -1
- package/dist/components/pcm-chat-message.js +1 -1
- package/dist/components/pcm-digital-human.js +1 -1
- package/dist/components/pcm-export-records-modal.js +1 -1
- package/dist/components/pcm-hr-chat-modal.js +2 -2
- package/dist/components/pcm-htws-modal.js +7 -7
- package/dist/components/pcm-hyzj-modal.js +4 -4
- package/dist/components/pcm-jd-modal.js +4 -4
- package/dist/components/pcm-jlpp-modal.js +7 -7
- package/dist/components/pcm-jlsx-modal.js +6 -6
- package/dist/components/pcm-jlzz-modal.js +6 -6
- package/dist/components/pcm-mnct-modal.js +4 -4
- package/dist/components/pcm-mnms-modal.js +8 -8
- package/dist/components/pcm-mnms-zp-modal.js +8 -8
- package/dist/components/pcm-mobile-input-btn.js +1 -1
- package/dist/components/pcm-mobile-upload-btn.js +1 -1
- package/dist/components/pcm-msbg-modal.js +4 -4
- package/dist/components/pcm-qgqjl-modal.js +7 -7
- package/dist/components/pcm-upload.js +1 -1
- package/dist/components/pcm-virtual-chat-modal.js +1 -1
- package/dist/components/pcm-zsk-chat-modal.js +2 -2
- package/dist/components/pcm-zygh-modal.js +6 -6
- package/dist/components/pcm-zygh-v2-modal.js +6 -6
- package/dist/esm/components-position-selector_28.entry.js +943 -22
- package/dist/esm/components-position-selector_28.entry.js.map +1 -1
- package/dist/esm/index-Bq0K-WqZ.js.map +1 -1
- package/dist/esm/{index-ijcgY5Pl.js → index-C3zkUAFV.js} +5 -5
- package/dist/esm/{index-ijcgY5Pl.js.map → index-C3zkUAFV.js.map} +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/{message-utils-C39egyl9.js → message-utils-CwVqDK3R.js} +3 -3
- package/dist/esm/{message-utils-C39egyl9.js.map → message-utils-CwVqDK3R.js.map} +1 -1
- package/dist/esm/oem-htws-modal.entry.js +1 -1
- package/dist/esm/oem-jd-modal.entry.js +2 -2
- package/dist/esm/oem-jlpp-modal.entry.js +1 -1
- package/dist/esm/oem-jlsx-modal.entry.js +3 -3
- package/dist/esm/oem-jlzz-modal.entry.js +1 -1
- package/dist/esm/oem-mnct-modal.entry.js +1 -1
- package/dist/esm/oem-qgqjl-modal.entry.js +1 -1
- package/dist/esm/oem-zygh-modal.entry.js +1 -1
- package/dist/esm/pcm-hr-chat-modal.entry.js +2 -2
- package/dist/esm/pcm-mnms-modal.entry.js +1 -1
- package/dist/esm/pcm-zygh-v2-modal.entry.js +1 -1
- package/dist/esm/{sentry-reporter-B-Ll9kE6.js → sentry-reporter-Bd1QPHA7.js} +3 -3
- package/dist/esm/{sentry-reporter-B-Ll9kE6.js.map → sentry-reporter-Bd1QPHA7.js.map} +1 -1
- package/dist/pcm-agents/index.esm.js +1 -1
- package/dist/pcm-agents/{p-8d72af4a.entry.js → p-0d6074df.entry.js} +2 -2
- package/dist/pcm-agents/{p-c7525afe.entry.js → p-252b2f5d.entry.js} +2 -2
- package/dist/pcm-agents/{p-b01605a5.entry.js → p-42d05c45.entry.js} +2 -2
- package/dist/pcm-agents/p-4c34cabf.entry.js +251 -0
- package/dist/pcm-agents/p-4c34cabf.entry.js.map +1 -0
- package/dist/pcm-agents/{p-99b56e3d.entry.js → p-8067055f.entry.js} +2 -2
- package/dist/pcm-agents/{p-c6e10b76.entry.js → p-858fd5fe.entry.js} +2 -2
- package/dist/pcm-agents/p-Bq0K-WqZ.js.map +1 -1
- package/dist/pcm-agents/p-Bv5Ai4r3.js +2 -0
- package/dist/pcm-agents/{p-BEtiNpmR.js.map → p-Bv5Ai4r3.js.map} +1 -1
- package/dist/pcm-agents/{p-C39egyl9.js → p-CwVqDK3R.js} +2 -2
- package/dist/pcm-agents/{p-C39egyl9.js.map → p-CwVqDK3R.js.map} +1 -1
- package/dist/pcm-agents/p-DtIVzj9b.js +2 -0
- package/dist/pcm-agents/{p-CjaheW4D.js.map → p-DtIVzj9b.js.map} +1 -1
- package/dist/pcm-agents/{p-c4c4d812.entry.js → p-a38822bf.entry.js} +2 -2
- package/dist/pcm-agents/{p-a3b4cbee.entry.js → p-abda195f.entry.js} +2 -2
- package/dist/pcm-agents/{p-34925caa.entry.js → p-d5d56261.entry.js} +2 -2
- package/dist/pcm-agents/{p-93508b4b.entry.js → p-e25a7834.entry.js} +2 -2
- package/dist/pcm-agents/{p-a8627941.entry.js → p-e4573ad9.entry.js} +2 -2
- package/dist/pcm-agents/{p-3b60a3ba.entry.js → p-ea1df5f6.entry.js} +2 -2
- package/dist/pcm-agents/pcm-agents.esm.js +1 -1
- package/dist/types/components/pcm-chat-message/pcm-chat-message.d.ts +16 -1
- package/package.json +71 -70
- package/dist/components/p-WUTJc9UM.js.map +0 -1
- package/dist/pcm-agents/p-600c7006.entry.js +0 -245
- package/dist/pcm-agents/p-600c7006.entry.js.map +0 -1
- package/dist/pcm-agents/p-BEtiNpmR.js +0 -2
- package/dist/pcm-agents/p-CjaheW4D.js +0 -2
- /package/dist/pcm-agents/{p-8d72af4a.entry.js.map → p-0d6074df.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-c7525afe.entry.js.map → p-252b2f5d.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-b01605a5.entry.js.map → p-42d05c45.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-99b56e3d.entry.js.map → p-8067055f.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-c6e10b76.entry.js.map → p-858fd5fe.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-c4c4d812.entry.js.map → p-a38822bf.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-a3b4cbee.entry.js.map → p-abda195f.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-34925caa.entry.js.map → p-d5d56261.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-93508b4b.entry.js.map → p-e25a7834.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-a8627941.entry.js.map → p-e4573ad9.entry.js.map} +0 -0
- /package/dist/pcm-agents/{p-3b60a3ba.entry.js.map → p-ea1df5f6.entry.js.map} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index-C_qhED9Z.js');
|
|
4
|
-
var index$1 = require('./index-
|
|
4
|
+
var index$1 = require('./index-DQcWrort.js');
|
|
5
5
|
var message_service = require('./message.service-DGUsA-FY.js');
|
|
6
6
|
var errorEvent = require('./error-event-J_ZWIqWF.js');
|
|
7
|
-
var messageUtils = require('./message-utils-
|
|
8
|
-
var sentryReporter = require('./sentry-reporter-
|
|
7
|
+
var messageUtils = require('./message-utils-OP5WQarf.js');
|
|
8
|
+
var sentryReporter = require('./sentry-reporter-DbH6qDcz.js');
|
|
9
9
|
require('./exports-Dc-pQh4A.js');
|
|
10
10
|
|
|
11
11
|
const componentsPositionSelectorCss = ":host{display:block;width:100%;height:100%}.position-selector-container{display:flex;flex-direction:column;width:100%;height:100%;background:#fff}.search-bar{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.search-input-wrapper{position:relative;display:flex;align-items:center;flex:1;min-width:200px;max-width:500px}.search-icon{position:absolute;left:12px;color:#bfbfbf;pointer-events:none}.search-input{width:100%;height:36px;padding:4px 36px 4px 36px;font-size:14px;line-height:1.5;color:rgba(0, 0, 0, 0.85);background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:6px;transition:all 0.3s;outline:none}.search-input:hover{border-color:#40a9ff}.search-input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24, 144, 255, 0.2)}.search-input::placeholder{color:#bfbfbf}.clear-button{position:absolute;right:12px;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#bfbfbf;transition:color 0.3s}.clear-button:hover{color:#8c8c8c}.search-button{padding:4px 15px;height:36px;font-size:14px;line-height:1.5;border-radius:6px;color:#fff;background-color:#1890ff;border:1px solid #1890ff;cursor:pointer;transition:all 0.3s;outline:none;white-space:nowrap;flex-shrink:0}.search-button:hover{background-color:#40a9ff;border-color:#40a9ff}.search-button:active{background-color:#096dd9;border-color:#096dd9}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;gap:16px;color:#8c8c8c}.loading-spinner{width:32px;height:32px;border:3px solid #f0f0f0;border-top-color:#1890ff;border-radius:50%;animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.empty-icon{opacity:0.5}.empty-text{margin:0;color:#8c8c8c;font-size:14px}.position-list{flex:1;overflow-y:auto;min-height:0}.table-container{width:100%;overflow-x:auto}.position-table{width:100%;border-collapse:collapse;font-size:14px}.position-table thead{background-color:#fafafa;position:sticky;top:0;z-index:1}.position-table th{padding:12px 16px;text-align:left;font-weight:500;color:rgba(0, 0, 0, 0.85);border-bottom:1px solid #f0f0f0;white-space:nowrap}.position-table td{padding:12px 16px;border-bottom:1px solid #f0f0f0;color:rgba(0, 0, 0, 0.65)}.position-table tbody tr{transition:background-color 0.3s}.position-table tbody tr:hover{background-color:#fafafa}.position-table tbody tr.selected-row{background-color:#e6f7ff}.checkbox-column{width:50px;text-align:center}.title-column{min-width:150px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-column{min-width:120px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-column{min-width:100px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.requirements-column{min-width:200px;max-width:300px}.requirements-text{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-word;line-height:1.5}.salary-column{min-width:100px;white-space:nowrap}.action-column{width:100px;text-align:center}.position-checkbox{width:16px;height:16px;cursor:pointer;accent-color:#1890ff}.select-button{padding:4px 15px;height:28px;font-size:14px;line-height:1.5;border-radius:6px;color:#fff;background-color:#1890ff;border:1px solid #1890ff;cursor:pointer;transition:all 0.3s;outline:none}.select-button:hover{background-color:#40a9ff;border-color:#40a9ff}.select-button:active{background-color:#096dd9;border-color:#096dd9}@media screen and (max-width: 768px){.search-bar{padding:12px;gap:8px}.search-input-wrapper{min-width:auto;max-width:none}.search-input{height:40px;font-size:16px}.search-button{height:40px;padding:4px 12px}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.position-table{font-size:12px}.position-table th,.position-table td{padding:8px 12px}.title-column,.company-column,.location-column{min-width:100px}.select-button{padding:4px 12px;height:32px;font-size:14px}}.pagination-container{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;border-top:1px solid #f0f0f0;flex-shrink:0}.pagination-button{padding:4px 15px;height:32px;font-size:14px;line-height:1.5;border-radius:6px;color:rgba(0, 0, 0, 0.85);background-color:#fff;border:1px solid #d9d9d9;cursor:pointer;transition:all 0.3s;outline:none}.pagination-button:hover:not(:disabled){color:#40a9ff;border-color:#40a9ff}.pagination-button:active:not(:disabled){color:#096dd9;border-color:#096dd9}.pagination-button:disabled{color:rgba(0, 0, 0, 0.25);background-color:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.pagination-info{font-size:14px;color:rgba(0, 0, 0, 0.65)}.position-list::-webkit-scrollbar{width:8px;height:8px}.position-list::-webkit-scrollbar-track{background:#f1f1f1}.position-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.position-list::-webkit-scrollbar-thumb:hover{background:#555}";
|
|
@@ -3045,6 +3045,897 @@ const PcmCard = class {
|
|
|
3045
3045
|
};
|
|
3046
3046
|
PcmCard.style = pcmCardCss + hostCss$l;
|
|
3047
3047
|
|
|
3048
|
+
var clipboard$1 = {exports: {}};
|
|
3049
|
+
|
|
3050
|
+
/*!
|
|
3051
|
+
* clipboard.js v2.0.11
|
|
3052
|
+
* https://clipboardjs.com/
|
|
3053
|
+
*
|
|
3054
|
+
* Licensed MIT © Zeno Rocha
|
|
3055
|
+
*/
|
|
3056
|
+
var clipboard = clipboard$1.exports;
|
|
3057
|
+
|
|
3058
|
+
var hasRequiredClipboard;
|
|
3059
|
+
|
|
3060
|
+
function requireClipboard () {
|
|
3061
|
+
if (hasRequiredClipboard) return clipboard$1.exports;
|
|
3062
|
+
hasRequiredClipboard = 1;
|
|
3063
|
+
(function (module, exports) {
|
|
3064
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
|
3065
|
+
module.exports = factory();
|
|
3066
|
+
})(clipboard, function() {
|
|
3067
|
+
return /******/ (function() { // webpackBootstrap
|
|
3068
|
+
/******/ var __webpack_modules__ = ({
|
|
3069
|
+
|
|
3070
|
+
/***/ 686:
|
|
3071
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
3072
|
+
|
|
3073
|
+
// EXPORTS
|
|
3074
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
3075
|
+
"default": function() { return /* binding */ clipboard; }
|
|
3076
|
+
});
|
|
3077
|
+
|
|
3078
|
+
// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js
|
|
3079
|
+
var tiny_emitter = __webpack_require__(279);
|
|
3080
|
+
var tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);
|
|
3081
|
+
// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js
|
|
3082
|
+
var listen = __webpack_require__(370);
|
|
3083
|
+
var listen_default = /*#__PURE__*/__webpack_require__.n(listen);
|
|
3084
|
+
// EXTERNAL MODULE: ./node_modules/select/src/select.js
|
|
3085
|
+
var src_select = __webpack_require__(817);
|
|
3086
|
+
var select_default = /*#__PURE__*/__webpack_require__.n(src_select);
|
|
3087
|
+
/**
|
|
3088
|
+
* Executes a given operation type.
|
|
3089
|
+
* @param {String} type
|
|
3090
|
+
* @return {Boolean}
|
|
3091
|
+
*/
|
|
3092
|
+
function command(type) {
|
|
3093
|
+
try {
|
|
3094
|
+
return document.execCommand(type);
|
|
3095
|
+
} catch (err) {
|
|
3096
|
+
return false;
|
|
3097
|
+
}
|
|
3098
|
+
}
|
|
3099
|
+
|
|
3100
|
+
|
|
3101
|
+
/**
|
|
3102
|
+
* Cut action wrapper.
|
|
3103
|
+
* @param {String|HTMLElement} target
|
|
3104
|
+
* @return {String}
|
|
3105
|
+
*/
|
|
3106
|
+
|
|
3107
|
+
var ClipboardActionCut = function ClipboardActionCut(target) {
|
|
3108
|
+
var selectedText = select_default()(target);
|
|
3109
|
+
command('cut');
|
|
3110
|
+
return selectedText;
|
|
3111
|
+
};
|
|
3112
|
+
|
|
3113
|
+
/* harmony default export */ var actions_cut = (ClipboardActionCut);
|
|
3114
|
+
/**
|
|
3115
|
+
* Creates a fake textarea element with a value.
|
|
3116
|
+
* @param {String} value
|
|
3117
|
+
* @return {HTMLElement}
|
|
3118
|
+
*/
|
|
3119
|
+
function createFakeElement(value) {
|
|
3120
|
+
var isRTL = document.documentElement.getAttribute('dir') === 'rtl';
|
|
3121
|
+
var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS
|
|
3122
|
+
|
|
3123
|
+
fakeElement.style.fontSize = '12pt'; // Reset box model
|
|
3124
|
+
|
|
3125
|
+
fakeElement.style.border = '0';
|
|
3126
|
+
fakeElement.style.padding = '0';
|
|
3127
|
+
fakeElement.style.margin = '0'; // Move element out of screen horizontally
|
|
3128
|
+
|
|
3129
|
+
fakeElement.style.position = 'absolute';
|
|
3130
|
+
fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically
|
|
3131
|
+
|
|
3132
|
+
var yPosition = window.pageYOffset || document.documentElement.scrollTop;
|
|
3133
|
+
fakeElement.style.top = "".concat(yPosition, "px");
|
|
3134
|
+
fakeElement.setAttribute('readonly', '');
|
|
3135
|
+
fakeElement.value = value;
|
|
3136
|
+
return fakeElement;
|
|
3137
|
+
}
|
|
3138
|
+
|
|
3139
|
+
|
|
3140
|
+
|
|
3141
|
+
/**
|
|
3142
|
+
* Create fake copy action wrapper using a fake element.
|
|
3143
|
+
* @param {String} target
|
|
3144
|
+
* @param {Object} options
|
|
3145
|
+
* @return {String}
|
|
3146
|
+
*/
|
|
3147
|
+
|
|
3148
|
+
var fakeCopyAction = function fakeCopyAction(value, options) {
|
|
3149
|
+
var fakeElement = createFakeElement(value);
|
|
3150
|
+
options.container.appendChild(fakeElement);
|
|
3151
|
+
var selectedText = select_default()(fakeElement);
|
|
3152
|
+
command('copy');
|
|
3153
|
+
fakeElement.remove();
|
|
3154
|
+
return selectedText;
|
|
3155
|
+
};
|
|
3156
|
+
/**
|
|
3157
|
+
* Copy action wrapper.
|
|
3158
|
+
* @param {String|HTMLElement} target
|
|
3159
|
+
* @param {Object} options
|
|
3160
|
+
* @return {String}
|
|
3161
|
+
*/
|
|
3162
|
+
|
|
3163
|
+
|
|
3164
|
+
var ClipboardActionCopy = function ClipboardActionCopy(target) {
|
|
3165
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
|
3166
|
+
container: document.body
|
|
3167
|
+
};
|
|
3168
|
+
var selectedText = '';
|
|
3169
|
+
|
|
3170
|
+
if (typeof target === 'string') {
|
|
3171
|
+
selectedText = fakeCopyAction(target, options);
|
|
3172
|
+
} else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {
|
|
3173
|
+
// If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
|
|
3174
|
+
selectedText = fakeCopyAction(target.value, options);
|
|
3175
|
+
} else {
|
|
3176
|
+
selectedText = select_default()(target);
|
|
3177
|
+
command('copy');
|
|
3178
|
+
}
|
|
3179
|
+
|
|
3180
|
+
return selectedText;
|
|
3181
|
+
};
|
|
3182
|
+
|
|
3183
|
+
/* harmony default export */ var actions_copy = (ClipboardActionCopy);
|
|
3184
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
3185
|
+
|
|
3186
|
+
|
|
3187
|
+
|
|
3188
|
+
/**
|
|
3189
|
+
* Inner function which performs selection from either `text` or `target`
|
|
3190
|
+
* properties and then executes copy or cut operations.
|
|
3191
|
+
* @param {Object} options
|
|
3192
|
+
*/
|
|
3193
|
+
|
|
3194
|
+
var ClipboardActionDefault = function ClipboardActionDefault() {
|
|
3195
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
3196
|
+
// Defines base properties passed from constructor.
|
|
3197
|
+
var _options$action = options.action,
|
|
3198
|
+
action = _options$action === void 0 ? 'copy' : _options$action,
|
|
3199
|
+
container = options.container,
|
|
3200
|
+
target = options.target,
|
|
3201
|
+
text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.
|
|
3202
|
+
|
|
3203
|
+
if (action !== 'copy' && action !== 'cut') {
|
|
3204
|
+
throw new Error('Invalid "action" value, use either "copy" or "cut"');
|
|
3205
|
+
} // Sets the `target` property using an element that will be have its content copied.
|
|
3206
|
+
|
|
3207
|
+
|
|
3208
|
+
if (target !== undefined) {
|
|
3209
|
+
if (target && _typeof(target) === 'object' && target.nodeType === 1) {
|
|
3210
|
+
if (action === 'copy' && target.hasAttribute('disabled')) {
|
|
3211
|
+
throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');
|
|
3212
|
+
}
|
|
3213
|
+
|
|
3214
|
+
if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {
|
|
3215
|
+
throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');
|
|
3216
|
+
}
|
|
3217
|
+
} else {
|
|
3218
|
+
throw new Error('Invalid "target" value, use a valid Element');
|
|
3219
|
+
}
|
|
3220
|
+
} // Define selection strategy based on `text` property.
|
|
3221
|
+
|
|
3222
|
+
|
|
3223
|
+
if (text) {
|
|
3224
|
+
return actions_copy(text, {
|
|
3225
|
+
container: container
|
|
3226
|
+
});
|
|
3227
|
+
} // Defines which selection strategy based on `target` property.
|
|
3228
|
+
|
|
3229
|
+
|
|
3230
|
+
if (target) {
|
|
3231
|
+
return action === 'cut' ? actions_cut(target) : actions_copy(target, {
|
|
3232
|
+
container: container
|
|
3233
|
+
});
|
|
3234
|
+
}
|
|
3235
|
+
};
|
|
3236
|
+
|
|
3237
|
+
/* harmony default export */ var actions_default = (ClipboardActionDefault);
|
|
3238
|
+
function clipboard_typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return clipboard_typeof(obj); }
|
|
3239
|
+
|
|
3240
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
3241
|
+
|
|
3242
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
3243
|
+
|
|
3244
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
3245
|
+
|
|
3246
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
3247
|
+
|
|
3248
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
3249
|
+
|
|
3250
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
3251
|
+
|
|
3252
|
+
function _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
3253
|
+
|
|
3254
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
3255
|
+
|
|
3256
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
|
|
3257
|
+
|
|
3258
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
3259
|
+
|
|
3260
|
+
|
|
3261
|
+
|
|
3262
|
+
|
|
3263
|
+
|
|
3264
|
+
|
|
3265
|
+
/**
|
|
3266
|
+
* Helper function to retrieve attribute value.
|
|
3267
|
+
* @param {String} suffix
|
|
3268
|
+
* @param {Element} element
|
|
3269
|
+
*/
|
|
3270
|
+
|
|
3271
|
+
function getAttributeValue(suffix, element) {
|
|
3272
|
+
var attribute = "data-clipboard-".concat(suffix);
|
|
3273
|
+
|
|
3274
|
+
if (!element.hasAttribute(attribute)) {
|
|
3275
|
+
return;
|
|
3276
|
+
}
|
|
3277
|
+
|
|
3278
|
+
return element.getAttribute(attribute);
|
|
3279
|
+
}
|
|
3280
|
+
/**
|
|
3281
|
+
* Base class which takes one or more elements, adds event listeners to them,
|
|
3282
|
+
* and instantiates a new `ClipboardAction` on each click.
|
|
3283
|
+
*/
|
|
3284
|
+
|
|
3285
|
+
|
|
3286
|
+
var Clipboard = /*#__PURE__*/function (_Emitter) {
|
|
3287
|
+
_inherits(Clipboard, _Emitter);
|
|
3288
|
+
|
|
3289
|
+
var _super = _createSuper(Clipboard);
|
|
3290
|
+
|
|
3291
|
+
/**
|
|
3292
|
+
* @param {String|HTMLElement|HTMLCollection|NodeList} trigger
|
|
3293
|
+
* @param {Object} options
|
|
3294
|
+
*/
|
|
3295
|
+
function Clipboard(trigger, options) {
|
|
3296
|
+
var _this;
|
|
3297
|
+
|
|
3298
|
+
_classCallCheck(this, Clipboard);
|
|
3299
|
+
|
|
3300
|
+
_this = _super.call(this);
|
|
3301
|
+
|
|
3302
|
+
_this.resolveOptions(options);
|
|
3303
|
+
|
|
3304
|
+
_this.listenClick(trigger);
|
|
3305
|
+
|
|
3306
|
+
return _this;
|
|
3307
|
+
}
|
|
3308
|
+
/**
|
|
3309
|
+
* Defines if attributes would be resolved using internal setter functions
|
|
3310
|
+
* or custom functions that were passed in the constructor.
|
|
3311
|
+
* @param {Object} options
|
|
3312
|
+
*/
|
|
3313
|
+
|
|
3314
|
+
|
|
3315
|
+
_createClass(Clipboard, [{
|
|
3316
|
+
key: "resolveOptions",
|
|
3317
|
+
value: function resolveOptions() {
|
|
3318
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
3319
|
+
this.action = typeof options.action === 'function' ? options.action : this.defaultAction;
|
|
3320
|
+
this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;
|
|
3321
|
+
this.text = typeof options.text === 'function' ? options.text : this.defaultText;
|
|
3322
|
+
this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;
|
|
3323
|
+
}
|
|
3324
|
+
/**
|
|
3325
|
+
* Adds a click event listener to the passed trigger.
|
|
3326
|
+
* @param {String|HTMLElement|HTMLCollection|NodeList} trigger
|
|
3327
|
+
*/
|
|
3328
|
+
|
|
3329
|
+
}, {
|
|
3330
|
+
key: "listenClick",
|
|
3331
|
+
value: function listenClick(trigger) {
|
|
3332
|
+
var _this2 = this;
|
|
3333
|
+
|
|
3334
|
+
this.listener = listen_default()(trigger, 'click', function (e) {
|
|
3335
|
+
return _this2.onClick(e);
|
|
3336
|
+
});
|
|
3337
|
+
}
|
|
3338
|
+
/**
|
|
3339
|
+
* Defines a new `ClipboardAction` on each click event.
|
|
3340
|
+
* @param {Event} e
|
|
3341
|
+
*/
|
|
3342
|
+
|
|
3343
|
+
}, {
|
|
3344
|
+
key: "onClick",
|
|
3345
|
+
value: function onClick(e) {
|
|
3346
|
+
var trigger = e.delegateTarget || e.currentTarget;
|
|
3347
|
+
var action = this.action(trigger) || 'copy';
|
|
3348
|
+
var text = actions_default({
|
|
3349
|
+
action: action,
|
|
3350
|
+
container: this.container,
|
|
3351
|
+
target: this.target(trigger),
|
|
3352
|
+
text: this.text(trigger)
|
|
3353
|
+
}); // Fires an event based on the copy operation result.
|
|
3354
|
+
|
|
3355
|
+
this.emit(text ? 'success' : 'error', {
|
|
3356
|
+
action: action,
|
|
3357
|
+
text: text,
|
|
3358
|
+
trigger: trigger,
|
|
3359
|
+
clearSelection: function clearSelection() {
|
|
3360
|
+
if (trigger) {
|
|
3361
|
+
trigger.focus();
|
|
3362
|
+
}
|
|
3363
|
+
|
|
3364
|
+
window.getSelection().removeAllRanges();
|
|
3365
|
+
}
|
|
3366
|
+
});
|
|
3367
|
+
}
|
|
3368
|
+
/**
|
|
3369
|
+
* Default `action` lookup function.
|
|
3370
|
+
* @param {Element} trigger
|
|
3371
|
+
*/
|
|
3372
|
+
|
|
3373
|
+
}, {
|
|
3374
|
+
key: "defaultAction",
|
|
3375
|
+
value: function defaultAction(trigger) {
|
|
3376
|
+
return getAttributeValue('action', trigger);
|
|
3377
|
+
}
|
|
3378
|
+
/**
|
|
3379
|
+
* Default `target` lookup function.
|
|
3380
|
+
* @param {Element} trigger
|
|
3381
|
+
*/
|
|
3382
|
+
|
|
3383
|
+
}, {
|
|
3384
|
+
key: "defaultTarget",
|
|
3385
|
+
value: function defaultTarget(trigger) {
|
|
3386
|
+
var selector = getAttributeValue('target', trigger);
|
|
3387
|
+
|
|
3388
|
+
if (selector) {
|
|
3389
|
+
return document.querySelector(selector);
|
|
3390
|
+
}
|
|
3391
|
+
}
|
|
3392
|
+
/**
|
|
3393
|
+
* Allow fire programmatically a copy action
|
|
3394
|
+
* @param {String|HTMLElement} target
|
|
3395
|
+
* @param {Object} options
|
|
3396
|
+
* @returns Text copied.
|
|
3397
|
+
*/
|
|
3398
|
+
|
|
3399
|
+
}, {
|
|
3400
|
+
key: "defaultText",
|
|
3401
|
+
|
|
3402
|
+
/**
|
|
3403
|
+
* Default `text` lookup function.
|
|
3404
|
+
* @param {Element} trigger
|
|
3405
|
+
*/
|
|
3406
|
+
value: function defaultText(trigger) {
|
|
3407
|
+
return getAttributeValue('text', trigger);
|
|
3408
|
+
}
|
|
3409
|
+
/**
|
|
3410
|
+
* Destroy lifecycle.
|
|
3411
|
+
*/
|
|
3412
|
+
|
|
3413
|
+
}, {
|
|
3414
|
+
key: "destroy",
|
|
3415
|
+
value: function destroy() {
|
|
3416
|
+
this.listener.destroy();
|
|
3417
|
+
}
|
|
3418
|
+
}], [{
|
|
3419
|
+
key: "copy",
|
|
3420
|
+
value: function copy(target) {
|
|
3421
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
|
3422
|
+
container: document.body
|
|
3423
|
+
};
|
|
3424
|
+
return actions_copy(target, options);
|
|
3425
|
+
}
|
|
3426
|
+
/**
|
|
3427
|
+
* Allow fire programmatically a cut action
|
|
3428
|
+
* @param {String|HTMLElement} target
|
|
3429
|
+
* @returns Text cutted.
|
|
3430
|
+
*/
|
|
3431
|
+
|
|
3432
|
+
}, {
|
|
3433
|
+
key: "cut",
|
|
3434
|
+
value: function cut(target) {
|
|
3435
|
+
return actions_cut(target);
|
|
3436
|
+
}
|
|
3437
|
+
/**
|
|
3438
|
+
* Returns the support of the given action, or all actions if no action is
|
|
3439
|
+
* given.
|
|
3440
|
+
* @param {String} [action]
|
|
3441
|
+
*/
|
|
3442
|
+
|
|
3443
|
+
}, {
|
|
3444
|
+
key: "isSupported",
|
|
3445
|
+
value: function isSupported() {
|
|
3446
|
+
var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];
|
|
3447
|
+
var actions = typeof action === 'string' ? [action] : action;
|
|
3448
|
+
var support = !!document.queryCommandSupported;
|
|
3449
|
+
actions.forEach(function (action) {
|
|
3450
|
+
support = support && !!document.queryCommandSupported(action);
|
|
3451
|
+
});
|
|
3452
|
+
return support;
|
|
3453
|
+
}
|
|
3454
|
+
}]);
|
|
3455
|
+
|
|
3456
|
+
return Clipboard;
|
|
3457
|
+
}((tiny_emitter_default()));
|
|
3458
|
+
|
|
3459
|
+
/* harmony default export */ var clipboard = (Clipboard);
|
|
3460
|
+
|
|
3461
|
+
/***/ }),
|
|
3462
|
+
|
|
3463
|
+
/***/ 828:
|
|
3464
|
+
/***/ (function(module) {
|
|
3465
|
+
|
|
3466
|
+
var DOCUMENT_NODE_TYPE = 9;
|
|
3467
|
+
|
|
3468
|
+
/**
|
|
3469
|
+
* A polyfill for Element.matches()
|
|
3470
|
+
*/
|
|
3471
|
+
if (typeof Element !== 'undefined' && !Element.prototype.matches) {
|
|
3472
|
+
var proto = Element.prototype;
|
|
3473
|
+
|
|
3474
|
+
proto.matches = proto.matchesSelector ||
|
|
3475
|
+
proto.mozMatchesSelector ||
|
|
3476
|
+
proto.msMatchesSelector ||
|
|
3477
|
+
proto.oMatchesSelector ||
|
|
3478
|
+
proto.webkitMatchesSelector;
|
|
3479
|
+
}
|
|
3480
|
+
|
|
3481
|
+
/**
|
|
3482
|
+
* Finds the closest parent that matches a selector.
|
|
3483
|
+
*
|
|
3484
|
+
* @param {Element} element
|
|
3485
|
+
* @param {String} selector
|
|
3486
|
+
* @return {Function}
|
|
3487
|
+
*/
|
|
3488
|
+
function closest (element, selector) {
|
|
3489
|
+
while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {
|
|
3490
|
+
if (typeof element.matches === 'function' &&
|
|
3491
|
+
element.matches(selector)) {
|
|
3492
|
+
return element;
|
|
3493
|
+
}
|
|
3494
|
+
element = element.parentNode;
|
|
3495
|
+
}
|
|
3496
|
+
}
|
|
3497
|
+
|
|
3498
|
+
module.exports = closest;
|
|
3499
|
+
|
|
3500
|
+
|
|
3501
|
+
/***/ }),
|
|
3502
|
+
|
|
3503
|
+
/***/ 438:
|
|
3504
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
3505
|
+
|
|
3506
|
+
var closest = __webpack_require__(828);
|
|
3507
|
+
|
|
3508
|
+
/**
|
|
3509
|
+
* Delegates event to a selector.
|
|
3510
|
+
*
|
|
3511
|
+
* @param {Element} element
|
|
3512
|
+
* @param {String} selector
|
|
3513
|
+
* @param {String} type
|
|
3514
|
+
* @param {Function} callback
|
|
3515
|
+
* @param {Boolean} useCapture
|
|
3516
|
+
* @return {Object}
|
|
3517
|
+
*/
|
|
3518
|
+
function _delegate(element, selector, type, callback, useCapture) {
|
|
3519
|
+
var listenerFn = listener.apply(this, arguments);
|
|
3520
|
+
|
|
3521
|
+
element.addEventListener(type, listenerFn, useCapture);
|
|
3522
|
+
|
|
3523
|
+
return {
|
|
3524
|
+
destroy: function() {
|
|
3525
|
+
element.removeEventListener(type, listenerFn, useCapture);
|
|
3526
|
+
}
|
|
3527
|
+
}
|
|
3528
|
+
}
|
|
3529
|
+
|
|
3530
|
+
/**
|
|
3531
|
+
* Delegates event to a selector.
|
|
3532
|
+
*
|
|
3533
|
+
* @param {Element|String|Array} [elements]
|
|
3534
|
+
* @param {String} selector
|
|
3535
|
+
* @param {String} type
|
|
3536
|
+
* @param {Function} callback
|
|
3537
|
+
* @param {Boolean} useCapture
|
|
3538
|
+
* @return {Object}
|
|
3539
|
+
*/
|
|
3540
|
+
function delegate(elements, selector, type, callback, useCapture) {
|
|
3541
|
+
// Handle the regular Element usage
|
|
3542
|
+
if (typeof elements.addEventListener === 'function') {
|
|
3543
|
+
return _delegate.apply(null, arguments);
|
|
3544
|
+
}
|
|
3545
|
+
|
|
3546
|
+
// Handle Element-less usage, it defaults to global delegation
|
|
3547
|
+
if (typeof type === 'function') {
|
|
3548
|
+
// Use `document` as the first parameter, then apply arguments
|
|
3549
|
+
// This is a short way to .unshift `arguments` without running into deoptimizations
|
|
3550
|
+
return _delegate.bind(null, document).apply(null, arguments);
|
|
3551
|
+
}
|
|
3552
|
+
|
|
3553
|
+
// Handle Selector-based usage
|
|
3554
|
+
if (typeof elements === 'string') {
|
|
3555
|
+
elements = document.querySelectorAll(elements);
|
|
3556
|
+
}
|
|
3557
|
+
|
|
3558
|
+
// Handle Array-like based usage
|
|
3559
|
+
return Array.prototype.map.call(elements, function (element) {
|
|
3560
|
+
return _delegate(element, selector, type, callback, useCapture);
|
|
3561
|
+
});
|
|
3562
|
+
}
|
|
3563
|
+
|
|
3564
|
+
/**
|
|
3565
|
+
* Finds closest match and invokes callback.
|
|
3566
|
+
*
|
|
3567
|
+
* @param {Element} element
|
|
3568
|
+
* @param {String} selector
|
|
3569
|
+
* @param {String} type
|
|
3570
|
+
* @param {Function} callback
|
|
3571
|
+
* @return {Function}
|
|
3572
|
+
*/
|
|
3573
|
+
function listener(element, selector, type, callback) {
|
|
3574
|
+
return function(e) {
|
|
3575
|
+
e.delegateTarget = closest(e.target, selector);
|
|
3576
|
+
|
|
3577
|
+
if (e.delegateTarget) {
|
|
3578
|
+
callback.call(element, e);
|
|
3579
|
+
}
|
|
3580
|
+
}
|
|
3581
|
+
}
|
|
3582
|
+
|
|
3583
|
+
module.exports = delegate;
|
|
3584
|
+
|
|
3585
|
+
|
|
3586
|
+
/***/ }),
|
|
3587
|
+
|
|
3588
|
+
/***/ 879:
|
|
3589
|
+
/***/ (function(__unused_webpack_module, exports) {
|
|
3590
|
+
|
|
3591
|
+
/**
|
|
3592
|
+
* Check if argument is a HTML element.
|
|
3593
|
+
*
|
|
3594
|
+
* @param {Object} value
|
|
3595
|
+
* @return {Boolean}
|
|
3596
|
+
*/
|
|
3597
|
+
exports.node = function(value) {
|
|
3598
|
+
return value !== undefined
|
|
3599
|
+
&& value instanceof HTMLElement
|
|
3600
|
+
&& value.nodeType === 1;
|
|
3601
|
+
};
|
|
3602
|
+
|
|
3603
|
+
/**
|
|
3604
|
+
* Check if argument is a list of HTML elements.
|
|
3605
|
+
*
|
|
3606
|
+
* @param {Object} value
|
|
3607
|
+
* @return {Boolean}
|
|
3608
|
+
*/
|
|
3609
|
+
exports.nodeList = function(value) {
|
|
3610
|
+
var type = Object.prototype.toString.call(value);
|
|
3611
|
+
|
|
3612
|
+
return value !== undefined
|
|
3613
|
+
&& (type === '[object NodeList]' || type === '[object HTMLCollection]')
|
|
3614
|
+
&& ('length' in value)
|
|
3615
|
+
&& (value.length === 0 || exports.node(value[0]));
|
|
3616
|
+
};
|
|
3617
|
+
|
|
3618
|
+
/**
|
|
3619
|
+
* Check if argument is a string.
|
|
3620
|
+
*
|
|
3621
|
+
* @param {Object} value
|
|
3622
|
+
* @return {Boolean}
|
|
3623
|
+
*/
|
|
3624
|
+
exports.string = function(value) {
|
|
3625
|
+
return typeof value === 'string'
|
|
3626
|
+
|| value instanceof String;
|
|
3627
|
+
};
|
|
3628
|
+
|
|
3629
|
+
/**
|
|
3630
|
+
* Check if argument is a function.
|
|
3631
|
+
*
|
|
3632
|
+
* @param {Object} value
|
|
3633
|
+
* @return {Boolean}
|
|
3634
|
+
*/
|
|
3635
|
+
exports.fn = function(value) {
|
|
3636
|
+
var type = Object.prototype.toString.call(value);
|
|
3637
|
+
|
|
3638
|
+
return type === '[object Function]';
|
|
3639
|
+
};
|
|
3640
|
+
|
|
3641
|
+
|
|
3642
|
+
/***/ }),
|
|
3643
|
+
|
|
3644
|
+
/***/ 370:
|
|
3645
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
3646
|
+
|
|
3647
|
+
var is = __webpack_require__(879);
|
|
3648
|
+
var delegate = __webpack_require__(438);
|
|
3649
|
+
|
|
3650
|
+
/**
|
|
3651
|
+
* Validates all params and calls the right
|
|
3652
|
+
* listener function based on its target type.
|
|
3653
|
+
*
|
|
3654
|
+
* @param {String|HTMLElement|HTMLCollection|NodeList} target
|
|
3655
|
+
* @param {String} type
|
|
3656
|
+
* @param {Function} callback
|
|
3657
|
+
* @return {Object}
|
|
3658
|
+
*/
|
|
3659
|
+
function listen(target, type, callback) {
|
|
3660
|
+
if (!target && !type && !callback) {
|
|
3661
|
+
throw new Error('Missing required arguments');
|
|
3662
|
+
}
|
|
3663
|
+
|
|
3664
|
+
if (!is.string(type)) {
|
|
3665
|
+
throw new TypeError('Second argument must be a String');
|
|
3666
|
+
}
|
|
3667
|
+
|
|
3668
|
+
if (!is.fn(callback)) {
|
|
3669
|
+
throw new TypeError('Third argument must be a Function');
|
|
3670
|
+
}
|
|
3671
|
+
|
|
3672
|
+
if (is.node(target)) {
|
|
3673
|
+
return listenNode(target, type, callback);
|
|
3674
|
+
}
|
|
3675
|
+
else if (is.nodeList(target)) {
|
|
3676
|
+
return listenNodeList(target, type, callback);
|
|
3677
|
+
}
|
|
3678
|
+
else if (is.string(target)) {
|
|
3679
|
+
return listenSelector(target, type, callback);
|
|
3680
|
+
}
|
|
3681
|
+
else {
|
|
3682
|
+
throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');
|
|
3683
|
+
}
|
|
3684
|
+
}
|
|
3685
|
+
|
|
3686
|
+
/**
|
|
3687
|
+
* Adds an event listener to a HTML element
|
|
3688
|
+
* and returns a remove listener function.
|
|
3689
|
+
*
|
|
3690
|
+
* @param {HTMLElement} node
|
|
3691
|
+
* @param {String} type
|
|
3692
|
+
* @param {Function} callback
|
|
3693
|
+
* @return {Object}
|
|
3694
|
+
*/
|
|
3695
|
+
function listenNode(node, type, callback) {
|
|
3696
|
+
node.addEventListener(type, callback);
|
|
3697
|
+
|
|
3698
|
+
return {
|
|
3699
|
+
destroy: function() {
|
|
3700
|
+
node.removeEventListener(type, callback);
|
|
3701
|
+
}
|
|
3702
|
+
}
|
|
3703
|
+
}
|
|
3704
|
+
|
|
3705
|
+
/**
|
|
3706
|
+
* Add an event listener to a list of HTML elements
|
|
3707
|
+
* and returns a remove listener function.
|
|
3708
|
+
*
|
|
3709
|
+
* @param {NodeList|HTMLCollection} nodeList
|
|
3710
|
+
* @param {String} type
|
|
3711
|
+
* @param {Function} callback
|
|
3712
|
+
* @return {Object}
|
|
3713
|
+
*/
|
|
3714
|
+
function listenNodeList(nodeList, type, callback) {
|
|
3715
|
+
Array.prototype.forEach.call(nodeList, function(node) {
|
|
3716
|
+
node.addEventListener(type, callback);
|
|
3717
|
+
});
|
|
3718
|
+
|
|
3719
|
+
return {
|
|
3720
|
+
destroy: function() {
|
|
3721
|
+
Array.prototype.forEach.call(nodeList, function(node) {
|
|
3722
|
+
node.removeEventListener(type, callback);
|
|
3723
|
+
});
|
|
3724
|
+
}
|
|
3725
|
+
}
|
|
3726
|
+
}
|
|
3727
|
+
|
|
3728
|
+
/**
|
|
3729
|
+
* Add an event listener to a selector
|
|
3730
|
+
* and returns a remove listener function.
|
|
3731
|
+
*
|
|
3732
|
+
* @param {String} selector
|
|
3733
|
+
* @param {String} type
|
|
3734
|
+
* @param {Function} callback
|
|
3735
|
+
* @return {Object}
|
|
3736
|
+
*/
|
|
3737
|
+
function listenSelector(selector, type, callback) {
|
|
3738
|
+
return delegate(document.body, selector, type, callback);
|
|
3739
|
+
}
|
|
3740
|
+
|
|
3741
|
+
module.exports = listen;
|
|
3742
|
+
|
|
3743
|
+
|
|
3744
|
+
/***/ }),
|
|
3745
|
+
|
|
3746
|
+
/***/ 817:
|
|
3747
|
+
/***/ (function(module) {
|
|
3748
|
+
|
|
3749
|
+
function select(element) {
|
|
3750
|
+
var selectedText;
|
|
3751
|
+
|
|
3752
|
+
if (element.nodeName === 'SELECT') {
|
|
3753
|
+
element.focus();
|
|
3754
|
+
|
|
3755
|
+
selectedText = element.value;
|
|
3756
|
+
}
|
|
3757
|
+
else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {
|
|
3758
|
+
var isReadOnly = element.hasAttribute('readonly');
|
|
3759
|
+
|
|
3760
|
+
if (!isReadOnly) {
|
|
3761
|
+
element.setAttribute('readonly', '');
|
|
3762
|
+
}
|
|
3763
|
+
|
|
3764
|
+
element.select();
|
|
3765
|
+
element.setSelectionRange(0, element.value.length);
|
|
3766
|
+
|
|
3767
|
+
if (!isReadOnly) {
|
|
3768
|
+
element.removeAttribute('readonly');
|
|
3769
|
+
}
|
|
3770
|
+
|
|
3771
|
+
selectedText = element.value;
|
|
3772
|
+
}
|
|
3773
|
+
else {
|
|
3774
|
+
if (element.hasAttribute('contenteditable')) {
|
|
3775
|
+
element.focus();
|
|
3776
|
+
}
|
|
3777
|
+
|
|
3778
|
+
var selection = window.getSelection();
|
|
3779
|
+
var range = document.createRange();
|
|
3780
|
+
|
|
3781
|
+
range.selectNodeContents(element);
|
|
3782
|
+
selection.removeAllRanges();
|
|
3783
|
+
selection.addRange(range);
|
|
3784
|
+
|
|
3785
|
+
selectedText = selection.toString();
|
|
3786
|
+
}
|
|
3787
|
+
|
|
3788
|
+
return selectedText;
|
|
3789
|
+
}
|
|
3790
|
+
|
|
3791
|
+
module.exports = select;
|
|
3792
|
+
|
|
3793
|
+
|
|
3794
|
+
/***/ }),
|
|
3795
|
+
|
|
3796
|
+
/***/ 279:
|
|
3797
|
+
/***/ (function(module) {
|
|
3798
|
+
|
|
3799
|
+
function E () {
|
|
3800
|
+
// Keep this empty so it's easier to inherit from
|
|
3801
|
+
// (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)
|
|
3802
|
+
}
|
|
3803
|
+
|
|
3804
|
+
E.prototype = {
|
|
3805
|
+
on: function (name, callback, ctx) {
|
|
3806
|
+
var e = this.e || (this.e = {});
|
|
3807
|
+
|
|
3808
|
+
(e[name] || (e[name] = [])).push({
|
|
3809
|
+
fn: callback,
|
|
3810
|
+
ctx: ctx
|
|
3811
|
+
});
|
|
3812
|
+
|
|
3813
|
+
return this;
|
|
3814
|
+
},
|
|
3815
|
+
|
|
3816
|
+
once: function (name, callback, ctx) {
|
|
3817
|
+
var self = this;
|
|
3818
|
+
function listener () {
|
|
3819
|
+
self.off(name, listener);
|
|
3820
|
+
callback.apply(ctx, arguments);
|
|
3821
|
+
}
|
|
3822
|
+
listener._ = callback;
|
|
3823
|
+
return this.on(name, listener, ctx);
|
|
3824
|
+
},
|
|
3825
|
+
|
|
3826
|
+
emit: function (name) {
|
|
3827
|
+
var data = [].slice.call(arguments, 1);
|
|
3828
|
+
var evtArr = ((this.e || (this.e = {}))[name] || []).slice();
|
|
3829
|
+
var i = 0;
|
|
3830
|
+
var len = evtArr.length;
|
|
3831
|
+
|
|
3832
|
+
for (i; i < len; i++) {
|
|
3833
|
+
evtArr[i].fn.apply(evtArr[i].ctx, data);
|
|
3834
|
+
}
|
|
3835
|
+
|
|
3836
|
+
return this;
|
|
3837
|
+
},
|
|
3838
|
+
|
|
3839
|
+
off: function (name, callback) {
|
|
3840
|
+
var e = this.e || (this.e = {});
|
|
3841
|
+
var evts = e[name];
|
|
3842
|
+
var liveEvents = [];
|
|
3843
|
+
|
|
3844
|
+
if (evts && callback) {
|
|
3845
|
+
for (var i = 0, len = evts.length; i < len; i++) {
|
|
3846
|
+
if (evts[i].fn !== callback && evts[i].fn._ !== callback)
|
|
3847
|
+
liveEvents.push(evts[i]);
|
|
3848
|
+
}
|
|
3849
|
+
}
|
|
3850
|
+
|
|
3851
|
+
// Remove event from queue to prevent memory leak
|
|
3852
|
+
// Suggested by https://github.com/lazd
|
|
3853
|
+
// Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910
|
|
3854
|
+
|
|
3855
|
+
(liveEvents.length)
|
|
3856
|
+
? e[name] = liveEvents
|
|
3857
|
+
: delete e[name];
|
|
3858
|
+
|
|
3859
|
+
return this;
|
|
3860
|
+
}
|
|
3861
|
+
};
|
|
3862
|
+
|
|
3863
|
+
module.exports = E;
|
|
3864
|
+
module.exports.TinyEmitter = E;
|
|
3865
|
+
|
|
3866
|
+
|
|
3867
|
+
/***/ })
|
|
3868
|
+
|
|
3869
|
+
/******/ });
|
|
3870
|
+
/************************************************************************/
|
|
3871
|
+
/******/ // The module cache
|
|
3872
|
+
/******/ var __webpack_module_cache__ = {};
|
|
3873
|
+
/******/
|
|
3874
|
+
/******/ // The require function
|
|
3875
|
+
/******/ function __webpack_require__(moduleId) {
|
|
3876
|
+
/******/ // Check if module is in cache
|
|
3877
|
+
/******/ if(__webpack_module_cache__[moduleId]) {
|
|
3878
|
+
/******/ return __webpack_module_cache__[moduleId].exports;
|
|
3879
|
+
/******/ }
|
|
3880
|
+
/******/ // Create a new module (and put it into the cache)
|
|
3881
|
+
/******/ var module = __webpack_module_cache__[moduleId] = {
|
|
3882
|
+
/******/ // no module.id needed
|
|
3883
|
+
/******/ // no module.loaded needed
|
|
3884
|
+
/******/ exports: {}
|
|
3885
|
+
/******/ };
|
|
3886
|
+
/******/
|
|
3887
|
+
/******/ // Execute the module function
|
|
3888
|
+
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
|
3889
|
+
/******/
|
|
3890
|
+
/******/ // Return the exports of the module
|
|
3891
|
+
/******/ return module.exports;
|
|
3892
|
+
/******/ }
|
|
3893
|
+
/******/
|
|
3894
|
+
/************************************************************************/
|
|
3895
|
+
/******/ /* webpack/runtime/compat get default export */
|
|
3896
|
+
/******/ !function() {
|
|
3897
|
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
3898
|
+
/******/ __webpack_require__.n = function(module) {
|
|
3899
|
+
/******/ var getter = module && module.__esModule ?
|
|
3900
|
+
/******/ function() { return module['default']; } :
|
|
3901
|
+
/******/ function() { return module; };
|
|
3902
|
+
/******/ __webpack_require__.d(getter, { a: getter });
|
|
3903
|
+
/******/ return getter;
|
|
3904
|
+
/******/ };
|
|
3905
|
+
/******/ }();
|
|
3906
|
+
/******/
|
|
3907
|
+
/******/ /* webpack/runtime/define property getters */
|
|
3908
|
+
/******/ !function() {
|
|
3909
|
+
/******/ // define getter functions for harmony exports
|
|
3910
|
+
/******/ __webpack_require__.d = function(exports, definition) {
|
|
3911
|
+
/******/ for(var key in definition) {
|
|
3912
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
3913
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
3914
|
+
/******/ }
|
|
3915
|
+
/******/ }
|
|
3916
|
+
/******/ };
|
|
3917
|
+
/******/ }();
|
|
3918
|
+
/******/
|
|
3919
|
+
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
3920
|
+
/******/ !function() {
|
|
3921
|
+
/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); };
|
|
3922
|
+
/******/ }();
|
|
3923
|
+
/******/
|
|
3924
|
+
/************************************************************************/
|
|
3925
|
+
/******/ // module exports must be returned from runtime so entry inlining is disabled
|
|
3926
|
+
/******/ // startup
|
|
3927
|
+
/******/ // Load entry module and return exports
|
|
3928
|
+
/******/ return __webpack_require__(686);
|
|
3929
|
+
/******/ })()
|
|
3930
|
+
.default;
|
|
3931
|
+
});
|
|
3932
|
+
} (clipboard$1));
|
|
3933
|
+
return clipboard$1.exports;
|
|
3934
|
+
}
|
|
3935
|
+
|
|
3936
|
+
var clipboardExports = requireClipboard();
|
|
3937
|
+
var ClipboardJS = /*@__PURE__*/messageUtils.getDefaultExportFromCjs(clipboardExports);
|
|
3938
|
+
|
|
3048
3939
|
const markdownCss$1 = ".markdown-body{--base-size-4:4px;--base-size-8:8px;--base-size-16:16px;--base-size-24:24px;--base-size-40:40px;--base-text-weight-normal:400;--base-text-weight-medium:500;--base-text-weight-semibold:600;--fontStack-monospace:ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;--fgColor-accent:Highlight}@media (prefers-color-scheme: dark){.markdown-body,[data-theme=\"dark\"]{color-scheme:dark;--focus-outlineColor:#0969da;--fgColor-default:#1f2328;--fgColor-muted:#59636e;--fgColor-accent:#0969da;--fgColor-success:#1a7f37;--fgColor-attention:#9a6700;--fgColor-danger:#d1242f;--fgColor-done:#8250df;--bgColor-default:#ffffff;--bgColor-muted:#f6f8fa;--bgColor-neutral-muted:#818b981f;--bgColor-attention-muted:#fff8c5;--borderColor-default:#d1d9e0;--borderColor-muted:#d1d9e0b3;--borderColor-neutral-muted:#d1d9e0b3;--borderColor-accent-emphasis:#0969da;--borderColor-success-emphasis:#1a7f37;--borderColor-attention-emphasis:#9a6700;--borderColor-danger-emphasis:#cf222e;--borderColor-done-emphasis:#8250df;--color-prettylights-syntax-comment:#59636e;--color-prettylights-syntax-constant:#0550ae;--color-prettylights-syntax-constant-other-reference-link:#0a3069;--color-prettylights-syntax-entity:#6639ba;--color-prettylights-syntax-storage-modifier-import:#1f2328;--color-prettylights-syntax-entity-tag:#0550ae;--color-prettylights-syntax-keyword:#cf222e;--color-prettylights-syntax-string:#0a3069;--color-prettylights-syntax-variable:#953800;--color-prettylights-syntax-brackethighlighter-unmatched:#82071e;--color-prettylights-syntax-brackethighlighter-angle:#59636e;--color-prettylights-syntax-invalid-illegal-text:#f6f8fa;--color-prettylights-syntax-invalid-illegal-bg:#82071e;--color-prettylights-syntax-carriage-return-text:#f6f8fa;--color-prettylights-syntax-carriage-return-bg:#cf222e;--color-prettylights-syntax-string-regexp:#116329;--color-prettylights-syntax-markup-list:#3b2300;--color-prettylights-syntax-markup-heading:#0550ae;--color-prettylights-syntax-markup-italic:#1f2328;--color-prettylights-syntax-markup-bold:#1f2328;--color-prettylights-syntax-markup-deleted-text:#82071e;--color-prettylights-syntax-markup-deleted-bg:#ffebe9;--color-prettylights-syntax-markup-inserted-text:#116329;--color-prettylights-syntax-markup-inserted-bg:#dafbe1;--color-prettylights-syntax-markup-changed-text:#953800;--color-prettylights-syntax-markup-changed-bg:#ffd8b5;--color-prettylights-syntax-markup-ignored-text:#d1d9e0;--color-prettylights-syntax-markup-ignored-bg:#0550ae;--color-prettylights-syntax-meta-diff-range:#8250df;--color-prettylights-syntax-sublimelinter-gutter-mark:#818b98}}@media (prefers-color-scheme: light){.markdown-body,[data-theme=\"light\"]{color-scheme:light;--focus-outlineColor:#0969da;--fgColor-default:#1f2328;--fgColor-muted:#59636e;--fgColor-accent:#0969da;--fgColor-success:#1a7f37;--fgColor-attention:#9a6700;--fgColor-danger:#d1242f;--fgColor-done:#8250df;--bgColor-default:#ffffff;--bgColor-muted:#f6f8fa;--bgColor-neutral-muted:#818b981f;--bgColor-attention-muted:#fff8c5;--borderColor-default:#d1d9e0;--borderColor-muted:#d1d9e0b3;--borderColor-neutral-muted:#d1d9e0b3;--borderColor-accent-emphasis:#0969da;--borderColor-success-emphasis:#1a7f37;--borderColor-attention-emphasis:#9a6700;--borderColor-danger-emphasis:#cf222e;--borderColor-done-emphasis:#8250df;--color-prettylights-syntax-comment:#59636e;--color-prettylights-syntax-constant:#0550ae;--color-prettylights-syntax-constant-other-reference-link:#0a3069;--color-prettylights-syntax-entity:#6639ba;--color-prettylights-syntax-storage-modifier-import:#1f2328;--color-prettylights-syntax-entity-tag:#0550ae;--color-prettylights-syntax-keyword:#cf222e;--color-prettylights-syntax-string:#0a3069;--color-prettylights-syntax-variable:#953800;--color-prettylights-syntax-brackethighlighter-unmatched:#82071e;--color-prettylights-syntax-brackethighlighter-angle:#59636e;--color-prettylights-syntax-invalid-illegal-text:#f6f8fa;--color-prettylights-syntax-invalid-illegal-bg:#82071e;--color-prettylights-syntax-carriage-return-text:#f6f8fa;--color-prettylights-syntax-carriage-return-bg:#cf222e;--color-prettylights-syntax-string-regexp:#116329;--color-prettylights-syntax-markup-list:#3b2300;--color-prettylights-syntax-markup-heading:#0550ae;--color-prettylights-syntax-markup-italic:#1f2328;--color-prettylights-syntax-markup-bold:#1f2328;--color-prettylights-syntax-markup-deleted-text:#82071e;--color-prettylights-syntax-markup-deleted-bg:#ffebe9;--color-prettylights-syntax-markup-inserted-text:#116329;--color-prettylights-syntax-markup-inserted-bg:#dafbe1;--color-prettylights-syntax-markup-changed-text:#953800;--color-prettylights-syntax-markup-changed-bg:#ffd8b5;--color-prettylights-syntax-markup-ignored-text:#d1d9e0;--color-prettylights-syntax-markup-ignored-bg:#0550ae;--color-prettylights-syntax-meta-diff-range:#8250df;--color-prettylights-syntax-sublimelinter-gutter-mark:#818b98}}.markdown-body{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;margin:0;font-family:-apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Noto Sans\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\";font-size:16px;line-height:1.5;word-wrap:break-word}.markdown-body .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}.markdown-body h1:hover .anchor .octicon-link:before,.markdown-body h2:hover .anchor .octicon-link:before,.markdown-body h3:hover .anchor .octicon-link:before,.markdown-body h4:hover .anchor .octicon-link:before,.markdown-body h5:hover .anchor .octicon-link:before,.markdown-body h6:hover .anchor .octicon-link:before{width:16px;height:16px;content:' ';display:inline-block;background-color:currentColor;-webkit-mask-image:url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>\");mask-image:url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>\")}.markdown-body details,.markdown-body figcaption,.markdown-body figure{display:block}.markdown-body summary{display:list-item}.markdown-body [hidden]{display:none !important}.markdown-body a{background-color:transparent;color:var(--fgColor-accent);text-decoration:none}.markdown-body abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.markdown-body b,.markdown-body strong{font-weight:var(--base-text-weight-semibold, 600)}.markdown-body dfn{font-style:italic}.markdown-body h1{margin:.67em 0;font-weight:var(--base-text-weight-semibold, 600);padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid var(--borderColor-muted)}.markdown-body mark{background-color:var(--bgColor-attention-muted);color:var(--fgColor-default)}.markdown-body small{font-size:90%}.markdown-body sub,.markdown-body sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.markdown-body sub{bottom:-0.25em}.markdown-body sup{top:-0.5em}.markdown-body img{border-style:none;max-width:100%;box-sizing:content-box}.markdown-body code,.markdown-body kbd,.markdown-body pre,.markdown-body samp{font-family:monospace;font-size:1em}.markdown-body figure{margin:1em var(--base-size-40)}.markdown-body hr{box-sizing:content-box;overflow:hidden;background:transparent;border-bottom:1px solid var(--borderColor-muted);height:.25em;padding:0;margin:var(--base-size-24) 0;background-color:var(--borderColor-default);border:0}.markdown-body input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.markdown-body [type=button],.markdown-body [type=reset],.markdown-body [type=submit]{-webkit-appearance:button;appearance:button}.markdown-body [type=checkbox],.markdown-body [type=radio]{box-sizing:border-box;padding:0}.markdown-body [type=number]::-webkit-inner-spin-button,.markdown-body [type=number]::-webkit-outer-spin-button{height:auto}.markdown-body [type=search]::-webkit-search-cancel-button,.markdown-body [type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.markdown-body ::-webkit-input-placeholder{color:inherit;opacity:.54}.markdown-body ::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}.markdown-body a:hover{text-decoration:underline}.markdown-body ::placeholder{color:var(--fgColor-muted);opacity:1}.markdown-body hr::before{display:table;content:\"\"}.markdown-body hr::after{display:table;clear:both;content:\"\"}.markdown-body table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%;overflow:auto;font-variant:tabular-nums}.markdown-body td,.markdown-body th{padding:0}.markdown-body details summary{cursor:pointer}.markdown-body a:focus,.markdown-body [role=button]:focus,.markdown-body input[type=radio]:focus,.markdown-body input[type=checkbox]:focus{outline:2px solid var(--focus-outlineColor);outline-offset:-2px;box-shadow:none}.markdown-body a:focus:not(:focus-visible),.markdown-body [role=button]:focus:not(:focus-visible),.markdown-body input[type=radio]:focus:not(:focus-visible),.markdown-body input[type=checkbox]:focus:not(:focus-visible){outline:solid 1px transparent}.markdown-body a:focus-visible,.markdown-body [role=button]:focus-visible,.markdown-body input[type=radio]:focus-visible,.markdown-body input[type=checkbox]:focus-visible{outline:2px solid var(--focus-outlineColor);outline-offset:-2px;box-shadow:none}.markdown-body a:not([class]):focus,.markdown-body a:not([class]):focus-visible,.markdown-body input[type=radio]:focus,.markdown-body input[type=radio]:focus-visible,.markdown-body input[type=checkbox]:focus,.markdown-body input[type=checkbox]:focus-visible{outline-offset:0}.markdown-body kbd{display:inline-block;padding:var(--base-size-4);font:11px var(--fontStack-monospace, ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace);line-height:10px;color:var(--fgColor-default);vertical-align:middle;background-color:var(--bgColor-muted);border:solid 1px var(--borderColor-neutral-muted);border-bottom-color:var(--borderColor-neutral-muted);border-radius:6px;box-shadow:inset 0 -1px 0 var(--borderColor-neutral-muted)}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:var(--base-size-24);margin-bottom:var(--base-size-16);font-weight:var(--base-text-weight-semibold, 600);line-height:1.25}.markdown-body h2{font-weight:var(--base-text-weight-semibold, 600);padding-bottom:.3em;font-size:1.2em;border-bottom:1px solid var(--borderColor-muted)}.markdown-body h3{font-weight:var(--base-text-weight-semibold, 600);font-size:1.05em}.markdown-body h4{font-weight:var(--base-text-weight-semibold, 600);font-size:0.875em}.markdown-body h5{font-weight:var(--base-text-weight-semibold, 600);font-size:.85em}.markdown-body h6{font-weight:var(--base-text-weight-semibold, 600);font-size:.80em;color:var(--fgColor-muted)}.markdown-body p{margin-top:0;margin-bottom:10px}.markdown-body blockquote{margin:0;padding:0 1em;color:var(--fgColor-muted);border-left:.25em solid var(--borderColor-default)}.markdown-body ul,.markdown-body ol{margin-top:0;margin-bottom:0;padding-left:2em}.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}.markdown-body ul ul ol,.markdown-body ul ol ol,.markdown-body ol ul ol,.markdown-body ol ol ol{list-style-type:lower-alpha}.markdown-body dd{margin-left:0}.markdown-body tt,.markdown-body code,.markdown-body samp{font-family:var(--fontStack-monospace, ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace);font-size:12px}.markdown-body pre{margin-top:0;margin-bottom:0;font-family:var(--fontStack-monospace, ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace);font-size:12px;word-wrap:normal}.markdown-body .octicon{display:inline-block;overflow:visible !important;vertical-align:text-bottom;fill:currentColor}.markdown-body input::-webkit-outer-spin-button,.markdown-body input::-webkit-inner-spin-button{margin:0;appearance:none}.markdown-body .mr-2{margin-right:var(--base-size-8, 8px) !important}.markdown-body::before{display:table;content:\"\"}.markdown-body::after{display:table;clear:both;content:\"\"}.markdown-body>*:first-child{margin-top:0 !important}.markdown-body>*:last-child{margin-bottom:0 !important}.markdown-body a:not([href]){color:inherit;text-decoration:none}.markdown-body .absent{color:var(--fgColor-danger)}.markdown-body .anchor{float:left;padding-right:var(--base-size-4);margin-left:-20px;line-height:1}.markdown-body .anchor:focus{outline:none}.markdown-body p,.markdown-body blockquote,.markdown-body ul,.markdown-body ol,.markdown-body dl,.markdown-body table,.markdown-body pre,.markdown-body details{margin-top:0;margin-bottom:var(--base-size-16);font-size:16px;font-weight:400}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link,.markdown-body h6 .octicon-link{color:var(--fgColor-default);vertical-align:middle;visibility:hidden}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{text-decoration:none}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.markdown-body h1 tt,.markdown-body h1 code,.markdown-body h2 tt,.markdown-body h2 code,.markdown-body h3 tt,.markdown-body h3 code,.markdown-body h4 tt,.markdown-body h4 code,.markdown-body h5 tt,.markdown-body h5 code,.markdown-body h6 tt,.markdown-body h6 code{padding:0 .2em;font-size:inherit}.markdown-body summary h1,.markdown-body summary h2,.markdown-body summary h3,.markdown-body summary h4,.markdown-body summary h5,.markdown-body summary h6{display:inline-block}.markdown-body summary h1 .anchor,.markdown-body summary h2 .anchor,.markdown-body summary h3 .anchor,.markdown-body summary h4 .anchor,.markdown-body summary h5 .anchor,.markdown-body summary h6 .anchor{margin-left:-40px}.markdown-body summary h1,.markdown-body summary h2{padding-bottom:0;border-bottom:0}.markdown-body ul.no-list,.markdown-body ol.no-list{padding:0;list-style-type:none}.markdown-body ol[type=\"a s\"]{list-style-type:lower-alpha}.markdown-body ol[type=\"A s\"]{list-style-type:upper-alpha}.markdown-body ol[type=\"i s\"]{list-style-type:lower-roman}.markdown-body ol[type=\"I s\"]{list-style-type:upper-roman}.markdown-body ol[type=\"1\"]{list-style-type:decimal}.markdown-body div>ol:not([type]){list-style-type:decimal}.markdown-body ul ul,.markdown-body ul ol,.markdown-body ol ol,.markdown-body ol ul{margin-top:0;margin-bottom:0}.markdown-body li>p{margin-top:var(--base-size-16)}.markdown-body li+li{margin-top:.25em}.markdown-body dl{padding:0}.markdown-body dl dt{padding:0;margin-top:var(--base-size-16);font-size:1em;font-style:italic;font-weight:var(--base-text-weight-semibold, 600)}.markdown-body dl dd{padding:0 var(--base-size-16);margin-bottom:var(--base-size-16)}.markdown-body table th{font-weight:var(--base-text-weight-semibold, 600)}.markdown-body table th,.markdown-body table td{padding:6px 13px;border:1px solid var(--borderColor-default)}.markdown-body table td>:last-child{margin-bottom:0}.markdown-body table tr{background-color:var(--bgColor-default);border-top:1px solid var(--borderColor-muted)}.markdown-body table tr:nth-child(2n){background-color:var(--bgColor-muted)}.markdown-body table img{background-color:transparent}.markdown-body img[align=right]{padding-left:20px}.markdown-body img[align=left]{padding-right:20px}.markdown-body .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.markdown-body span.frame{display:block;overflow:hidden}.markdown-body span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid var(--borderColor-default)}.markdown-body span.frame span img{display:block;float:left}.markdown-body span.frame span span{display:block;padding:5px 0 0;clear:both;color:var(--fgColor-default)}.markdown-body span.align-center{display:block;overflow:hidden;clear:both}.markdown-body span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markdown-body span.align-center span img{margin:0 auto;text-align:center}.markdown-body span.align-right{display:block;overflow:hidden;clear:both}.markdown-body span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markdown-body span.align-right span img{margin:0;text-align:right}.markdown-body span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markdown-body span.float-left span{margin:13px 0 0}.markdown-body span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markdown-body span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markdown-body code,.markdown-body tt{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:var(--bgColor-neutral-muted);border-radius:6px}.markdown-body code br,.markdown-body tt br{display:none}.markdown-body del code{text-decoration:inherit}.markdown-body samp{font-size:85%}.markdown-body pre code{font-size:100%}.markdown-body pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:transparent;border:0}.markdown-body .highlight{margin-bottom:var(--base-size-16)}.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.markdown-body .highlight pre,.markdown-body pre{padding:var(--base-size-16);overflow:auto;font-size:85%;line-height:1.45;color:var(--fgColor-default);background-color:var(--bgColor-muted);border-radius:6px}.markdown-body pre code,.markdown-body pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown-body .csv-data td,.markdown-body .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.markdown-body .csv-data .blob-num{padding:10px var(--base-size-8) 9px;text-align:right;background:var(--bgColor-default);border:0}.markdown-body .csv-data tr{border-top:0}.markdown-body .csv-data th{font-weight:var(--base-text-weight-semibold, 600);background:var(--bgColor-muted);border-top:0}.markdown-body [data-footnote-ref]::before{content:\"[\"}.markdown-body [data-footnote-ref]::after{content:\"]\"}.markdown-body .footnotes{font-size:12px;color:var(--fgColor-muted);border-top:1px solid var(--borderColor-default)}.markdown-body .footnotes ol{padding-left:var(--base-size-16)}.markdown-body .footnotes ol ul{display:inline-block;padding-left:var(--base-size-16);margin-top:var(--base-size-16)}.markdown-body .footnotes li{position:relative}.markdown-body .footnotes li:target::before{position:absolute;top:calc(var(--base-size-8)*-1);right:calc(var(--base-size-8)*-1);bottom:calc(var(--base-size-8)*-1);left:calc(var(--base-size-24)*-1);pointer-events:none;content:\"\";border:2px solid var(--borderColor-accent-emphasis);border-radius:6px}.markdown-body .footnotes li:target{color:var(--fgColor-default)}.markdown-body .footnotes .data-footnote-backref g-emoji{font-family:monospace}.markdown-body body:has(:modal){padding-right:var(--dialog-scrollgutter) !important}.markdown-body .pl-c{color:var(--color-prettylights-syntax-comment)}.markdown-body .pl-c1,.markdown-body .pl-s .pl-v{color:var(--color-prettylights-syntax-constant)}.markdown-body .pl-e,.markdown-body .pl-en{color:var(--color-prettylights-syntax-entity)}.markdown-body .pl-smi,.markdown-body .pl-s .pl-s1{color:var(--color-prettylights-syntax-storage-modifier-import)}.markdown-body .pl-ent{color:var(--color-prettylights-syntax-entity-tag)}.markdown-body .pl-k{color:var(--color-prettylights-syntax-keyword)}.markdown-body .pl-s,.markdown-body .pl-pds,.markdown-body .pl-s .pl-pse .pl-s1,.markdown-body .pl-sr,.markdown-body .pl-sr .pl-cce,.markdown-body .pl-sr .pl-sre,.markdown-body .pl-sr .pl-sra{color:var(--color-prettylights-syntax-string)}.markdown-body .pl-v,.markdown-body .pl-smw{color:var(--color-prettylights-syntax-variable)}.markdown-body .pl-bu{color:var(--color-prettylights-syntax-brackethighlighter-unmatched)}.markdown-body .pl-ii{color:var(--color-prettylights-syntax-invalid-illegal-text);background-color:var(--color-prettylights-syntax-invalid-illegal-bg)}.markdown-body .pl-c2{color:var(--color-prettylights-syntax-carriage-return-text);background-color:var(--color-prettylights-syntax-carriage-return-bg)}.markdown-body .pl-sr .pl-cce{font-weight:bold;color:var(--color-prettylights-syntax-string-regexp)}.markdown-body .pl-ml{color:var(--color-prettylights-syntax-markup-list)}.markdown-body .pl-mh,.markdown-body .pl-mh .pl-en,.markdown-body .pl-ms{font-weight:bold;color:var(--color-prettylights-syntax-markup-heading)}.markdown-body .pl-mi{font-style:italic;color:var(--color-prettylights-syntax-markup-italic)}.markdown-body .pl-mb{font-weight:bold;color:var(--color-prettylights-syntax-markup-bold)}.markdown-body .pl-md{color:var(--color-prettylights-syntax-markup-deleted-text);background-color:var(--color-prettylights-syntax-markup-deleted-bg)}.markdown-body .pl-mi1{color:var(--color-prettylights-syntax-markup-inserted-text);background-color:var(--color-prettylights-syntax-markup-inserted-bg)}.markdown-body .pl-mc{color:var(--color-prettylights-syntax-markup-changed-text);background-color:var(--color-prettylights-syntax-markup-changed-bg)}.markdown-body .pl-mi2{color:var(--color-prettylights-syntax-markup-ignored-text);background-color:var(--color-prettylights-syntax-markup-ignored-bg)}.markdown-body .pl-mdr{font-weight:bold;color:var(--color-prettylights-syntax-meta-diff-range)}.markdown-body .pl-ba{color:var(--color-prettylights-syntax-brackethighlighter-angle)}.markdown-body .pl-sg{color:var(--color-prettylights-syntax-sublimelinter-gutter-mark)}.markdown-body .pl-corl{text-decoration:underline;color:var(--color-prettylights-syntax-constant-other-reference-link)}.markdown-body [role=button]:focus:not(:focus-visible),.markdown-body [role=tabpanel][tabindex=\"0\"]:focus:not(:focus-visible),.markdown-body button:focus:not(:focus-visible),.markdown-body summary:focus:not(:focus-visible),.markdown-body a:focus:not(:focus-visible){outline:none;box-shadow:none}.markdown-body [tabindex=\"0\"]:focus:not(:focus-visible),.markdown-body details-dialog:focus:not(:focus-visible){outline:none}.markdown-body g-emoji{display:inline-block;min-width:1ch;font-family:\"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1em;font-style:normal !important;font-weight:var(--base-text-weight-normal, 400);line-height:1;vertical-align:-0.075em}.markdown-body g-emoji img{width:1em;height:1em}.markdown-body .task-list-item{list-style-type:none}.markdown-body .task-list-item label{font-weight:var(--base-text-weight-normal, 400)}.markdown-body .task-list-item.enabled label{cursor:pointer}.markdown-body .task-list-item+.task-list-item{margin-top:var(--base-size-4)}.markdown-body .task-list-item .handle{display:none}.markdown-body .task-list-item-checkbox{margin:0 .2em .25em -1.4em;vertical-align:middle}.markdown-body ul:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.markdown-body ol:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.markdown-body .contains-task-list:hover .task-list-item-convert-container,.markdown-body .contains-task-list:focus-within .task-list-item-convert-container{display:block;width:auto;height:24px;overflow:visible;clip:auto}.markdown-body ::-webkit-calendar-picker-indicator{filter:invert(50%)}.markdown-body .markdown-alert{padding:var(--base-size-8) var(--base-size-16);margin-bottom:var(--base-size-16);color:inherit;border-left:.25em solid var(--borderColor-default)}.markdown-body .markdown-alert>:first-child{margin-top:0}.markdown-body .markdown-alert>:last-child{margin-bottom:0}.markdown-body .markdown-alert .markdown-alert-title{display:flex;font-weight:var(--base-text-weight-medium, 500);align-items:center;line-height:1}.markdown-body .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis)}.markdown-body .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent)}.markdown-body .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis)}.markdown-body .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done)}.markdown-body .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis)}.markdown-body .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention)}.markdown-body .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis)}.markdown-body .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success)}.markdown-body .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis)}.markdown-body .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger)}.markdown-body>*:first-child>.heading-element:first-child{margin-top:0 !important}.markdown-body .highlight pre:has(+.zeroclipboard-container){min-height:52px}";
|
|
3049
3940
|
|
|
3050
3941
|
const pcmChatMessageCss = ":host{display:block;width:100%}.message-round{margin-bottom:16px;width:100%}.user-message-container{display:flex;flex-direction:row-reverse;align-items:flex-start;margin-bottom:15px;position:relative}.assistant-message-container{display:flex;flex-direction:row;align-items:flex-start;margin-bottom:15px;position:relative}.message-bubble{max-width:85%;position:relative}.user-message{padding:5px 10px;background:#f5f7ff;font-size:14px;color:#1F2328;border-radius:6px;box-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.1)}.assistant-message{padding:15px 10px;background-color:#fff;border-radius:6px;font-size:14px;color:#1F2328;box-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05)}.message-time{font-size:12px;color:#999;margin-top:4px}.user-message-container .message-time{color:rgba(255, 255, 255, 0.7)}.loading-dots{display:flex;align-items:center;padding:12px 16px;background-color:#f0f0f0;border-radius:18px;border-top-left-radius:4px}.loading-dots span{width:8px;height:8px;margin:0 3px;background-color:#999;border-radius:50%;display:inline-block;animation:dot-pulse 1.5s infinite ease-in-out}.loading-dots span:nth-child(2){animation-delay:0.2s}.loading-dots span:nth-child(3){animation-delay:0.4s}@keyframes dot-pulse{0%,80%,100%{transform:scale(0.8);opacity:0.5}40%{transform:scale(1.2);opacity:1}}.file-view{margin-top:8px;padding:12px;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;font-size:14px;word-break:break-all;color:#2c3e50;line-height:1.5;box-shadow:0 1px 2px rgba(0, 0, 0, 0.05)}.input-view{margin-top:8px;margin-bottom:10px;padding-bottom:10px;border:1px solid #e9ecef;border-radius:6px;overflow:hidden;background-color:#ffffff;box-shadow:0 1px 2px rgba(0, 0, 0, 0.05)}.input-label-container{display:flex;align-items:center;margin-bottom:4px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;padding:8px 12px}.copy-input-button{background:transparent;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;color:#8c8c8c;opacity:0.7;transition:opacity 0.2s ease;margin-left:5px}.copy-input-button:hover{opacity:1;color:#1677ff}.input-label{font-size:13px;font-weight:600;color:#495057}.input-value{padding:12px 12px 0px;font-size:14px;line-height:1.5;color:#2c3e50;background-color:#ffffff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.input-metadata{font-size:13px;margin-top:8px}.message-actions{display:flex;align-items:center;gap:8px;transition:opacity 0.2s ease;margin-top:15px}.action-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9d9d9;border-radius:6px;padding:4px 15px;font-size:14px;height:32px;background-color:white;cursor:pointer;color:rgba(0, 0, 0, 0.88);transition:all 0.2s}.action-button:hover{color:#1677ff;border-color:#1677ff}.action-button.primary{color:#1677ff;border-color:#1677ff}.action-button.primary:hover{color:#4096ff;border-color:#4096ff}.action-button.icon-only{padding:4px 8px;margin-right:9px}.button-icon{margin-right:8px;display:flex;align-items:center;justify-content:center}.icon-only .button-icon{margin-right:0}.file-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.file-item{display:flex;flex-direction:column;align-items:center;width:80px;cursor:pointer;padding:8px;border-radius:4px;transition:background-color 0.3s;margin:5px 10px}.file-item:hover{background-color:rgba(0, 0, 0, 0.04)}.file-icon{margin-bottom:4px}.file-name{font-size:12px;text-align:center;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8B4513}.action-button.active{color:#1677ff;background-color:rgba(22, 119, 255, 0.1)}.action-button.active .button-icon svg{stroke:#1677ff}.inputs-container{margin-top:8px;display:flex;flex-direction:column;gap:8px}.file-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;padding:8px 12px;background-color:#f5f5f5;border-radius:6px;cursor:pointer;transition:background-color 0.2s}.file-item:hover{background-color:#e8e8e8}.file-icon{margin-right:8px}.file-name{font-size:14px;color:#333;word-break:break-word}.input-view{background-color:#f9f9f9;border-radius:8px;padding:12px;border:1px solid #e8e8e8}.input-label-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.input-label{font-weight:500;color:#333}.input-value{color:#666;line-height:1.5;word-break:break-word;max-height:200px;overflow-y:auto}.copy-input-button{background:none;border:none;cursor:pointer;color:#1677ff;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center}.copy-input-button:hover{background-color:rgba(22, 119, 255, 0.1)}.input-metadata{font-size:14px;color:#666;padding:4px 0}.file-card{display:flex;align-items:center;padding:12px;background:linear-gradient(150deg, #2a6ee933, #0000 50%) 0 0 / 200px 100px no-repeat, #fff;border-radius:8px;cursor:pointer;transition:background-color 0.2s;border:1px solid #e8e8e8;margin-top:8px}.file-card:hover{background-color:#f0f0f0}.file-card-icon{margin-right:12px;flex-shrink:0;border-radius:12px;background:#0d75fb;width:48px;height:48px;display:flex;align-items:center;justify-content:center}.file-card-icon img{width:40px;height:40px}.file-card-content{display:flex;flex-direction:column;flex:1;min-width:0}.file-card-type{font-size:14px;color:#8c8c8c;margin-bottom:4px}.file-card-name{font-size:16px;font-weight:500;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.copy-card-button{background:none;border:none;cursor:pointer;color:#8c8c8c;padding:8px;border-radius:4px;display:flex;align-items:center;justify-content:center;margin-left:8px;transition:color 0.2s}.copy-card-button:hover{color:#1677ff}.avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover}.user-avatar{margin-left:8px}.assistant-avatar{margin-right:8px}.retry-button{background-color:#ff6b35 !important;color:white !important;border:none !important}.retry-button:hover{background-color:#e55a2b !important}.retry-button .button-icon{margin-right:4px}.video-inputs-container{display:flex;flex-direction:column;align-items:end}.video-container{margin-top:0px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0, 0, 0, 0.1);background-color:#000;width:250px;height:auto;max-height:250px;transition:transform 0.2s ease, box-shadow 0.2s ease}.video-container:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0, 0, 0, 0.15)}.video-container video{display:block;width:100%;max-width:500px;height:auto;border-radius:8px}.video-container video:focus{outline:none}.video-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background-color:#f8f9fa;border-radius:8px;color:#666;font-size:14px}.loading-spinner{width:24px;height:24px;border:2px solid #e9ecef;border-top:2px solid #1677ff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media (max-width: 768px){.video-container{width:100%;max-width:300px}}";
|
|
@@ -3069,6 +3960,10 @@ const ChatMessageComponent = class {
|
|
|
3069
3960
|
* 点赞点踩状态
|
|
3070
3961
|
*/
|
|
3071
3962
|
feedbackStatus = null;
|
|
3963
|
+
/**
|
|
3964
|
+
* ClipboardJS 实例
|
|
3965
|
+
*/
|
|
3966
|
+
clipboard = null;
|
|
3072
3967
|
/**
|
|
3073
3968
|
* 视频播放URLs缓存
|
|
3074
3969
|
*/
|
|
@@ -3134,25 +4029,51 @@ const ChatMessageComponent = class {
|
|
|
3134
4029
|
this.feedbackStatus = this.message.feedback.rating;
|
|
3135
4030
|
}
|
|
3136
4031
|
}
|
|
3137
|
-
|
|
3138
|
-
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3150
|
-
message: '复制内容失败',
|
|
3151
|
-
});
|
|
3152
|
-
console.error('复制失败:', err);
|
|
3153
|
-
});
|
|
4032
|
+
/**
|
|
4033
|
+
* 组件加载完成后初始化 ClipboardJS
|
|
4034
|
+
*/
|
|
4035
|
+
componentDidLoad() {
|
|
4036
|
+
this.initClipboard();
|
|
4037
|
+
}
|
|
4038
|
+
/**
|
|
4039
|
+
* 组件卸载时销毁 ClipboardJS
|
|
4040
|
+
*/
|
|
4041
|
+
disconnectedCallback() {
|
|
4042
|
+
if (this.clipboard) {
|
|
4043
|
+
this.clipboard.destroy();
|
|
4044
|
+
this.clipboard = null;
|
|
3154
4045
|
}
|
|
3155
4046
|
}
|
|
4047
|
+
/**
|
|
4048
|
+
* 初始化 ClipboardJS
|
|
4049
|
+
*/
|
|
4050
|
+
initClipboard() {
|
|
4051
|
+
// 如果已经初始化过,先销毁
|
|
4052
|
+
if (this.clipboard) {
|
|
4053
|
+
this.clipboard.destroy();
|
|
4054
|
+
}
|
|
4055
|
+
// 从 Shadow DOM 中获取复制按钮
|
|
4056
|
+
const copyButton = this.hostElement.shadowRoot?.querySelector('.copy-button');
|
|
4057
|
+
if (!copyButton) {
|
|
4058
|
+
console.warn('未找到复制按钮');
|
|
4059
|
+
return;
|
|
4060
|
+
}
|
|
4061
|
+
// 初始化 ClipboardJS
|
|
4062
|
+
this.clipboard = new ClipboardJS(copyButton);
|
|
4063
|
+
// 成功回调
|
|
4064
|
+
this.clipboard.on('success', (e) => {
|
|
4065
|
+
alert('内容已复制到剪贴板');
|
|
4066
|
+
e.clearSelection();
|
|
4067
|
+
});
|
|
4068
|
+
// 失败回调
|
|
4069
|
+
this.clipboard.on('error', (e) => {
|
|
4070
|
+
console.error('复制失败:', e);
|
|
4071
|
+
errorEvent.ErrorEventBus.emitError({
|
|
4072
|
+
error: e,
|
|
4073
|
+
message: '复制内容失败',
|
|
4074
|
+
});
|
|
4075
|
+
});
|
|
4076
|
+
}
|
|
3156
4077
|
// 保存到职位库
|
|
3157
4078
|
saveJdLoading = false;
|
|
3158
4079
|
async handleSaveJd(job_info) {
|
|
@@ -3222,7 +4143,7 @@ const ChatMessageComponent = class {
|
|
|
3222
4143
|
const showSaveJdButton = this.showSaveJdButton && this.botId == '3022316191018873';
|
|
3223
4144
|
return (index.h("div", { class: { 'assistant-message-container': true } }, this.assistantAvatar && (index.h("div", { class: "avatar assistant-avatar" }, index.h("img", { src: this.assistantAvatar, alt: "\u52A9\u624B\u5934\u50CF" }))), index.h("div", { class: "message-bubble " }, index.h("div", { class: "assistant-message" }, index.h("div", { class: "markdown-content markdown-body", innerHTML: showLoading ?
|
|
3224
4145
|
`请稍等...` :
|
|
3225
|
-
htmlContent })), !showLoading && this.message.answer && !this.message.isStreaming && (index.h("div", { class: "message-actions" }, this.message.showRetryButton && (index.h("button", { class: "action-button retry-button", onClick: () => this.handleRetry(), title: "\u91CD\u8BD5" }, index.h("span", { class: "button-icon" }, index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, index.h("polyline", { points: "23 4 23 10 17 10" }), index.h("polyline", { points: "1 20 1 14 7 14" }), index.h("path", { d: "M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15" }))), "\u91CD\u8BD5")), this.showCopyButton && (index.h("button", { class: "action-button",
|
|
4146
|
+
htmlContent })), !showLoading && this.message.answer && !this.message.isStreaming && (index.h("div", { class: "message-actions" }, this.message.showRetryButton && (index.h("button", { class: "action-button retry-button", onClick: () => this.handleRetry(), title: "\u91CD\u8BD5" }, index.h("span", { class: "button-icon" }, index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, index.h("polyline", { points: "23 4 23 10 17 10" }), index.h("polyline", { points: "1 20 1 14 7 14" }), index.h("path", { d: "M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15" }))), "\u91CD\u8BD5")), this.showCopyButton && (index.h("button", { class: "action-button copy-button", title: "\u590D\u5236\u5185\u5BB9", "data-clipboard-text": this.message.answer || '' }, index.h("span", { class: "button-icon" }, index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, index.h("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2", ry: "2" }), index.h("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" }))), "\u590D\u5236")), showSaveJdButton && (index.h("button", { class: "action-button", onClick: () => this.handleSaveJd(this.message.answer), title: this.saveJdButtonText, disabled: this.saveJdLoading }, this.saveJdLoading ? '处理中...' : this.saveJdButtonText)), this.showFeedbackButtons && (index.h(index.h.Fragment, null, index.h("button", { class: `action-button icon-only ${this.feedbackStatus === 'like' ? 'active' : ''}`, title: "\u8D5E", onClick: () => this.handleLike() }, index.h("span", { class: "button-icon" }, index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, index.h("path", { d: "M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3" })))), index.h("button", { class: `action-button icon-only ${this.feedbackStatus === 'dislike' ? 'active' : ''}`, title: "\u8E29", onClick: () => this.handleDislike() }, index.h("span", { class: "button-icon" }, index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, index.h("path", { d: "M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17" })))))))))));
|
|
3226
4147
|
}
|
|
3227
4148
|
getFileName(fileUrl) {
|
|
3228
4149
|
const parts = fileUrl.split('/');
|
|
@@ -3443,7 +4364,7 @@ const ChatMessageComponent = class {
|
|
|
3443
4364
|
}
|
|
3444
4365
|
}
|
|
3445
4366
|
render() {
|
|
3446
|
-
return (index.h("div", { key: '
|
|
4367
|
+
return (index.h("div", { key: '4322e4e98bb04dbca11fb4331e50dc1a64df36c6', class: "message-round" }, this.renderUserMessage(), this.renderAssistantMessage()));
|
|
3447
4368
|
}
|
|
3448
4369
|
};
|
|
3449
4370
|
ChatMessageComponent.style = markdownCss$1 + (pcmChatMessageCss + hostCss$k);
|