@inorain_development/hotel-smarters-chat-ui 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/features/chat/components/common/clock-icon.js +32 -0
- package/lib/commonjs/features/chat/components/common/clock-icon.js.map +1 -0
- package/lib/commonjs/features/chat/components/common/clock-icon.native.js +32 -0
- package/lib/commonjs/features/chat/components/common/clock-icon.native.js.map +1 -0
- package/lib/commonjs/features/chat/components/event/event.js +97 -0
- package/lib/commonjs/features/chat/components/event/event.js.map +1 -0
- package/lib/commonjs/features/chat/components/event/event.model.js +6 -0
- package/lib/commonjs/features/chat/components/event/event.model.js.map +1 -0
- package/lib/commonjs/features/chat/components/event/event.native.js +107 -0
- package/lib/commonjs/features/chat/components/event/event.native.js.map +1 -0
- package/lib/commonjs/features/chat/components/event/index.js +13 -0
- package/lib/commonjs/features/chat/components/event/index.js.map +1 -0
- package/lib/commonjs/features/chat/components/info/index.js +13 -0
- package/lib/commonjs/features/chat/components/info/index.js.map +1 -0
- package/lib/commonjs/features/chat/components/info/info.js +32 -0
- package/lib/commonjs/features/chat/components/info/info.js.map +1 -0
- package/lib/commonjs/features/chat/components/info/info.model.js +6 -0
- package/lib/commonjs/features/chat/components/info/info.model.js.map +1 -0
- package/lib/commonjs/features/chat/components/info/info.native.js +33 -0
- package/lib/commonjs/features/chat/components/info/info.native.js.map +1 -0
- package/lib/commonjs/features/chat/message/index.js +20 -0
- package/lib/commonjs/features/chat/message/index.js.map +1 -0
- package/lib/commonjs/features/chat/message/message.js +49 -0
- package/lib/commonjs/features/chat/message/message.js.map +1 -0
- package/lib/commonjs/features/chat/message/message.logic.js +48 -0
- package/lib/commonjs/features/chat/message/message.logic.js.map +1 -0
- package/lib/commonjs/features/chat/message/message.model.js +6 -0
- package/lib/commonjs/features/chat/message/message.model.js.map +1 -0
- package/lib/commonjs/features/chat/message/message.native.js +50 -0
- package/lib/commonjs/features/chat/message/message.native.js.map +1 -0
- package/lib/commonjs/features/chat/model/chat.model.js +3 -0
- package/lib/commonjs/features/chat/model/chat.model.js.map +1 -1
- package/lib/commonjs/features/chat/renderer/renderer.js +13 -0
- package/lib/commonjs/features/chat/renderer/renderer.js.map +1 -1
- package/lib/commonjs/features/chat/renderer/renderer.native.js +13 -0
- package/lib/commonjs/features/chat/renderer/renderer.native.js.map +1 -1
- package/lib/commonjs/native.js +28 -0
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/utils/price.utils.js +15 -0
- package/lib/commonjs/utils/price.utils.js.map +1 -0
- package/lib/commonjs/utils/theme.utils.js +2 -0
- package/lib/commonjs/utils/theme.utils.js.map +1 -1
- package/lib/commonjs/web.js +28 -0
- package/lib/commonjs/web.js.map +1 -1
- package/lib/module/features/chat/components/common/clock-icon.js +28 -0
- package/lib/module/features/chat/components/common/clock-icon.js.map +1 -0
- package/lib/module/features/chat/components/common/clock-icon.native.js +28 -0
- package/lib/module/features/chat/components/common/clock-icon.native.js.map +1 -0
- package/lib/module/features/chat/components/event/event.js +93 -0
- package/lib/module/features/chat/components/event/event.js.map +1 -0
- package/lib/module/features/chat/components/event/event.model.js +4 -0
- package/lib/module/features/chat/components/event/event.model.js.map +1 -0
- package/lib/module/features/chat/components/event/event.native.js +103 -0
- package/lib/module/features/chat/components/event/event.native.js.map +1 -0
- package/lib/module/features/chat/components/event/index.js +4 -0
- package/lib/module/features/chat/components/event/index.js.map +1 -0
- package/lib/module/features/chat/components/info/index.js +4 -0
- package/lib/module/features/chat/components/info/index.js.map +1 -0
- package/lib/module/features/chat/components/info/info.js +28 -0
- package/lib/module/features/chat/components/info/info.js.map +1 -0
- package/lib/module/features/chat/components/info/info.model.js +4 -0
- package/lib/module/features/chat/components/info/info.model.js.map +1 -0
- package/lib/module/features/chat/components/info/info.native.js +29 -0
- package/lib/module/features/chat/components/info/info.native.js.map +1 -0
- package/lib/module/features/chat/message/index.js +5 -0
- package/lib/module/features/chat/message/index.js.map +1 -0
- package/lib/module/features/chat/message/message.js +45 -0
- package/lib/module/features/chat/message/message.js.map +1 -0
- package/lib/module/features/chat/message/message.logic.js +44 -0
- package/lib/module/features/chat/message/message.logic.js.map +1 -0
- package/lib/module/features/chat/message/message.model.js +4 -0
- package/lib/module/features/chat/message/message.model.js.map +1 -0
- package/lib/module/features/chat/message/message.native.js +46 -0
- package/lib/module/features/chat/message/message.native.js.map +1 -0
- package/lib/module/features/chat/model/chat.model.js +3 -0
- package/lib/module/features/chat/model/chat.model.js.map +1 -1
- package/lib/module/features/chat/renderer/renderer.js +13 -0
- package/lib/module/features/chat/renderer/renderer.js.map +1 -1
- package/lib/module/features/chat/renderer/renderer.native.js +13 -0
- package/lib/module/features/chat/renderer/renderer.native.js.map +1 -1
- package/lib/module/native.js +4 -0
- package/lib/module/native.js.map +1 -1
- package/lib/module/utils/price.utils.js +11 -0
- package/lib/module/utils/price.utils.js.map +1 -0
- package/lib/module/utils/theme.utils.js +2 -0
- package/lib/module/utils/theme.utils.js.map +1 -1
- package/lib/module/web.js +4 -0
- package/lib/module/web.js.map +1 -1
- package/lib/typescript/commonjs/features/chat/components/common/clock-icon.d.ts +6 -0
- package/lib/typescript/commonjs/features/chat/components/common/clock-icon.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/common/clock-icon.native.d.ts +6 -0
- package/lib/typescript/commonjs/features/chat/components/common/clock-icon.native.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/event/event.d.ts +4 -0
- package/lib/typescript/commonjs/features/chat/components/event/event.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/event/event.model.d.ts +11 -0
- package/lib/typescript/commonjs/features/chat/components/event/event.model.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/event/event.native.d.ts +4 -0
- package/lib/typescript/commonjs/features/chat/components/event/event.native.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/event/index.d.ts +3 -0
- package/lib/typescript/commonjs/features/chat/components/event/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/info/index.d.ts +3 -0
- package/lib/typescript/commonjs/features/chat/components/info/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/info/info.d.ts +4 -0
- package/lib/typescript/commonjs/features/chat/components/info/info.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/info/info.model.d.ts +6 -0
- package/lib/typescript/commonjs/features/chat/components/info/info.model.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/components/info/info.native.d.ts +4 -0
- package/lib/typescript/commonjs/features/chat/components/info/info.native.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/message/index.d.ts +4 -0
- package/lib/typescript/commonjs/features/chat/message/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/message/message.d.ts +3 -0
- package/lib/typescript/commonjs/features/chat/message/message.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/message/message.logic.d.ts +3 -0
- package/lib/typescript/commonjs/features/chat/message/message.logic.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/message/message.model.d.ts +29 -0
- package/lib/typescript/commonjs/features/chat/message/message.model.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/message/message.native.d.ts +3 -0
- package/lib/typescript/commonjs/features/chat/message/message.native.d.ts.map +1 -0
- package/lib/typescript/commonjs/features/chat/model/chat.model.d.ts +4 -1
- package/lib/typescript/commonjs/features/chat/model/chat.model.d.ts.map +1 -1
- package/lib/typescript/commonjs/features/chat/renderer/renderer.d.ts +3 -1
- package/lib/typescript/commonjs/features/chat/renderer/renderer.d.ts.map +1 -1
- package/lib/typescript/commonjs/features/chat/renderer/renderer.native.d.ts +3 -1
- package/lib/typescript/commonjs/features/chat/renderer/renderer.native.d.ts.map +1 -1
- package/lib/typescript/commonjs/native.d.ts +7 -0
- package/lib/typescript/commonjs/native.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/price.utils.d.ts +2 -0
- package/lib/typescript/commonjs/utils/price.utils.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/theme.utils.d.ts +1 -0
- package/lib/typescript/commonjs/utils/theme.utils.d.ts.map +1 -1
- package/lib/typescript/commonjs/web.d.ts +7 -0
- package/lib/typescript/commonjs/web.d.ts.map +1 -1
- package/lib/typescript/module/features/chat/components/common/clock-icon.d.ts +6 -0
- package/lib/typescript/module/features/chat/components/common/clock-icon.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/common/clock-icon.native.d.ts +6 -0
- package/lib/typescript/module/features/chat/components/common/clock-icon.native.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/event/event.d.ts +4 -0
- package/lib/typescript/module/features/chat/components/event/event.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/event/event.model.d.ts +11 -0
- package/lib/typescript/module/features/chat/components/event/event.model.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/event/event.native.d.ts +4 -0
- package/lib/typescript/module/features/chat/components/event/event.native.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/event/index.d.ts +3 -0
- package/lib/typescript/module/features/chat/components/event/index.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/info/index.d.ts +3 -0
- package/lib/typescript/module/features/chat/components/info/index.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/info/info.d.ts +4 -0
- package/lib/typescript/module/features/chat/components/info/info.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/info/info.model.d.ts +6 -0
- package/lib/typescript/module/features/chat/components/info/info.model.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/components/info/info.native.d.ts +4 -0
- package/lib/typescript/module/features/chat/components/info/info.native.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/message/index.d.ts +4 -0
- package/lib/typescript/module/features/chat/message/index.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/message/message.d.ts +3 -0
- package/lib/typescript/module/features/chat/message/message.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/message/message.logic.d.ts +3 -0
- package/lib/typescript/module/features/chat/message/message.logic.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/message/message.model.d.ts +29 -0
- package/lib/typescript/module/features/chat/message/message.model.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/message/message.native.d.ts +3 -0
- package/lib/typescript/module/features/chat/message/message.native.d.ts.map +1 -0
- package/lib/typescript/module/features/chat/model/chat.model.d.ts +4 -1
- package/lib/typescript/module/features/chat/model/chat.model.d.ts.map +1 -1
- package/lib/typescript/module/features/chat/renderer/renderer.d.ts +3 -1
- package/lib/typescript/module/features/chat/renderer/renderer.d.ts.map +1 -1
- package/lib/typescript/module/features/chat/renderer/renderer.native.d.ts +3 -1
- package/lib/typescript/module/features/chat/renderer/renderer.native.d.ts.map +1 -1
- package/lib/typescript/module/native.d.ts +7 -0
- package/lib/typescript/module/native.d.ts.map +1 -1
- package/lib/typescript/module/utils/price.utils.d.ts +2 -0
- package/lib/typescript/module/utils/price.utils.d.ts.map +1 -0
- package/lib/typescript/module/utils/theme.utils.d.ts +1 -0
- package/lib/typescript/module/utils/theme.utils.d.ts.map +1 -1
- package/lib/typescript/module/web.d.ts +7 -0
- package/lib/typescript/module/web.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/chat/components/common/clock-icon.native.tsx +19 -0
- package/src/features/chat/components/common/clock-icon.tsx +19 -0
- package/src/features/chat/components/event/event.model.ts +11 -0
- package/src/features/chat/components/event/event.native.tsx +101 -0
- package/src/features/chat/components/event/event.tsx +97 -0
- package/src/features/chat/components/event/index.ts +2 -0
- package/src/features/chat/components/info/index.ts +2 -0
- package/src/features/chat/components/info/info.model.ts +6 -0
- package/src/features/chat/components/info/info.native.tsx +24 -0
- package/src/features/chat/components/info/info.tsx +23 -0
- package/src/features/chat/message/index.ts +9 -0
- package/src/features/chat/message/message.logic.ts +37 -0
- package/src/features/chat/message/message.model.ts +34 -0
- package/src/features/chat/message/message.native.tsx +51 -0
- package/src/features/chat/message/message.tsx +50 -0
- package/src/features/chat/model/chat.model.ts +3 -0
- package/src/features/chat/renderer/renderer.native.tsx +14 -6
- package/src/features/chat/renderer/renderer.tsx +14 -6
- package/src/native.ts +13 -0
- package/src/utils/price.utils.ts +10 -0
- package/src/utils/theme.utils.ts +3 -0
- package/src/web.ts +13 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ClockIcon = ClockIcon;
|
|
7
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
8
|
+
function ClockIcon({
|
|
9
|
+
size = 16,
|
|
10
|
+
color = 'currentColor'
|
|
11
|
+
}) {
|
|
12
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("svg", {
|
|
13
|
+
width: size,
|
|
14
|
+
height: size,
|
|
15
|
+
viewBox: "0 0 24 24",
|
|
16
|
+
fill: "none",
|
|
17
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("circle", {
|
|
18
|
+
cx: "12",
|
|
19
|
+
cy: "12",
|
|
20
|
+
r: "9",
|
|
21
|
+
stroke: color,
|
|
22
|
+
strokeWidth: 1.8
|
|
23
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
|
|
24
|
+
d: "M12 7.5V12l3 1.8",
|
|
25
|
+
stroke: color,
|
|
26
|
+
strokeWidth: 1.8,
|
|
27
|
+
strokeLinecap: "round",
|
|
28
|
+
strokeLinejoin: "round"
|
|
29
|
+
})]
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=clock-icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ClockIcon","size","color","_jsxRuntime","jsxs","width","height","viewBox","fill","children","jsx","cx","cy","r","stroke","strokeWidth","d","strokeLinecap","strokeLinejoin"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/common/clock-icon.tsx"],"mappings":";;;;;;;AAKO,SAASA,SAASA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAEC,KAAK,GAAG;AAA+B,CAAC,EAAE;EAC/E,oBACE,IAAAC,WAAA,CAAAC,IAAA;IAAKC,KAAK,EAAEJ,IAAK;IAACK,MAAM,EAAEL,IAAK;IAACM,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAAAC,QAAA,gBAC7D,IAAAN,WAAA,CAAAO,GAAA;MAAQC,EAAE,EAAC,IAAI;MAACC,EAAE,EAAC,IAAI;MAACC,CAAC,EAAC,GAAG;MAACC,MAAM,EAAEZ,KAAM;MAACa,WAAW,EAAE;IAAI,CAAE,CAAC,eACjE,IAAAZ,WAAA,CAAAO,GAAA;MACEM,CAAC,EAAC,kBAAkB;MACpBF,MAAM,EAAEZ,KAAM;MACda,WAAW,EAAE,GAAI;MACjBE,aAAa,EAAC,OAAO;MACrBC,cAAc,EAAC;IAAO,CACvB,CAAC;EAAA,CACC,CAAC;AAEV","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ClockIcon = ClockIcon;
|
|
7
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
8
|
+
function ClockIcon({
|
|
9
|
+
size = 16,
|
|
10
|
+
color = 'currentColor'
|
|
11
|
+
}) {
|
|
12
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("svg", {
|
|
13
|
+
width: size,
|
|
14
|
+
height: size,
|
|
15
|
+
viewBox: "0 0 24 24",
|
|
16
|
+
fill: "none",
|
|
17
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("circle", {
|
|
18
|
+
cx: "12",
|
|
19
|
+
cy: "12",
|
|
20
|
+
r: "9",
|
|
21
|
+
stroke: color,
|
|
22
|
+
strokeWidth: 1.8
|
|
23
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
|
|
24
|
+
d: "M12 7.5V12l3 1.8",
|
|
25
|
+
stroke: color,
|
|
26
|
+
strokeWidth: 1.8,
|
|
27
|
+
strokeLinecap: "round",
|
|
28
|
+
strokeLinejoin: "round"
|
|
29
|
+
})]
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=clock-icon.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ClockIcon","size","color","_jsxRuntime","jsxs","width","height","viewBox","fill","children","jsx","cx","cy","r","stroke","strokeWidth","d","strokeLinecap","strokeLinejoin"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/common/clock-icon.native.tsx"],"mappings":";;;;;;;AAKO,SAASA,SAASA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAEC,KAAK,GAAG;AAA+B,CAAC,EAAE;EAC/E,oBACE,IAAAC,WAAA,CAAAC,IAAA;IAAKC,KAAK,EAAEJ,IAAK;IAACK,MAAM,EAAEL,IAAK;IAACM,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAAAC,QAAA,gBAC7D,IAAAN,WAAA,CAAAO,GAAA;MAAQC,EAAE,EAAC,IAAI;MAACC,EAAE,EAAC,IAAI;MAACC,CAAC,EAAC,GAAG;MAACC,MAAM,EAAEZ,KAAM;MAACa,WAAW,EAAE;IAAI,CAAE,CAAC,eACjE,IAAAZ,WAAA,CAAAO,GAAA;MACEM,CAAC,EAAC,kBAAkB;MACpBF,MAAM,EAAEZ,KAAM;MACda,WAAW,EAAE,GAAI;MACjBE,aAAa,EAAC,OAAO;MACrBC,cAAc,EAAC;IAAO,CACvB,CAAC;EAAA,CACC,CAAC;AAEV","ignoreList":[]}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Event = Event;
|
|
7
|
+
var _themeUtils = require("../../../../utils/theme.utils.js");
|
|
8
|
+
var _i18nUtils = require("../../../../utils/i18n.utils.js");
|
|
9
|
+
var _priceUtils = require("../../../../utils/price.utils.js");
|
|
10
|
+
var _useExpandableList = require("../../../../utils/use-expandable-list.js");
|
|
11
|
+
var _collapsible = require("../common/collapsible");
|
|
12
|
+
var _clockIcon = require("../common/clock-icon");
|
|
13
|
+
var _chatModel = require("../../model/chat.model.js");
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
const FREE_LABEL = 'Free';
|
|
16
|
+
function Event({
|
|
17
|
+
data,
|
|
18
|
+
theme = _chatModel.Theme.Dark,
|
|
19
|
+
language,
|
|
20
|
+
onSelect
|
|
21
|
+
}) {
|
|
22
|
+
const c = (0, _themeUtils.getThemeClasses)(theme);
|
|
23
|
+
const items = Array.isArray(data) ? data : [data];
|
|
24
|
+
const {
|
|
25
|
+
head,
|
|
26
|
+
rest,
|
|
27
|
+
expanded,
|
|
28
|
+
hasMore,
|
|
29
|
+
toggle
|
|
30
|
+
} = (0, _useExpandableList.useExpandableList)(items);
|
|
31
|
+
const renderCard = item => {
|
|
32
|
+
const name = (0, _i18nUtils.resolveText)(item.name, language);
|
|
33
|
+
const location = (0, _i18nUtils.resolveText)(item.location, language);
|
|
34
|
+
const description = item.description ? (0, _i18nUtils.resolveText)(item.description, language) : '';
|
|
35
|
+
const isFree = (0, _priceUtils.isFreePrice)(item.price);
|
|
36
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
37
|
+
className: `rounded-2xl border p-3 ${c.surface} ${c.border}`,
|
|
38
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
39
|
+
className: "flex gap-3",
|
|
40
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
|
|
41
|
+
src: item.image,
|
|
42
|
+
alt: name,
|
|
43
|
+
onClick: () => onSelect?.(item),
|
|
44
|
+
className: `h-16 w-16 shrink-0 cursor-pointer rounded-xl object-cover down-sm:h-14 down-sm:w-14 ${c.iconBg}`
|
|
45
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
46
|
+
className: "flex min-w-0 flex-1 cursor-pointer flex-col justify-center gap-1",
|
|
47
|
+
onClick: () => onSelect?.(item),
|
|
48
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
49
|
+
className: "flex items-start justify-between gap-2",
|
|
50
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
51
|
+
className: `flex-1 truncate text-lg font-bold down-sm:text-base ${c.title}`,
|
|
52
|
+
children: name
|
|
53
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
54
|
+
className: `shrink-0 text-lg font-bold down-sm:text-base ${isFree ? c.free : c.price}`,
|
|
55
|
+
children: isFree ? FREE_LABEL : item.price
|
|
56
|
+
})]
|
|
57
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
58
|
+
className: "flex items-center gap-1.5",
|
|
59
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_clockIcon.ClockIcon, {
|
|
60
|
+
size: 16,
|
|
61
|
+
color: c.iconColor
|
|
62
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
63
|
+
className: `truncate text-sm down-sm:text-xs ${c.subtitle}`,
|
|
64
|
+
children: [item.time, " \xB7 ", location]
|
|
65
|
+
})]
|
|
66
|
+
}), description ? /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
67
|
+
className: `line-clamp-2 text-sm down-sm:text-xs ${c.subtitle}`,
|
|
68
|
+
children: description
|
|
69
|
+
}) : null]
|
|
70
|
+
})]
|
|
71
|
+
})
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
75
|
+
children: [head.map((item, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
76
|
+
className: index > 0 ? 'mt-3' : undefined,
|
|
77
|
+
children: renderCard(item)
|
|
78
|
+
}, item.id)), hasMore ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
79
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_collapsible.Collapsible, {
|
|
80
|
+
expanded: expanded,
|
|
81
|
+
children: rest.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
82
|
+
className: "mt-3",
|
|
83
|
+
children: renderCard(item)
|
|
84
|
+
}, item.id))
|
|
85
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
86
|
+
className: "mt-3 flex justify-center",
|
|
87
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
88
|
+
type: "button",
|
|
89
|
+
onClick: toggle,
|
|
90
|
+
className: `rounded-xl border px-4 py-1.5 text-sm font-medium ${c.actionBorder} ${c.actionText}`,
|
|
91
|
+
children: expanded ? 'Show less' : 'Show more'
|
|
92
|
+
})
|
|
93
|
+
})]
|
|
94
|
+
}) : null]
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_themeUtils","require","_i18nUtils","_priceUtils","_useExpandableList","_collapsible","_clockIcon","_chatModel","_jsxRuntime","FREE_LABEL","Event","data","theme","Theme","Dark","language","onSelect","c","getThemeClasses","items","Array","isArray","head","rest","expanded","hasMore","toggle","useExpandableList","renderCard","item","name","resolveText","location","description","isFree","isFreePrice","price","jsx","className","surface","border","children","jsxs","src","image","alt","onClick","iconBg","title","free","ClockIcon","size","color","iconColor","subtitle","time","map","index","undefined","id","Fragment","Collapsible","type","actionBorder","actionText"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/event/event.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../../../src","sources":["features/chat/components/event/event.model.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Event = Event;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _themeUtils = require("../../../../utils/theme.utils.js");
|
|
9
|
+
var _i18nUtils = require("../../../../utils/i18n.utils.js");
|
|
10
|
+
var _priceUtils = require("../../../../utils/price.utils.js");
|
|
11
|
+
var _useExpandableList = require("../../../../utils/use-expandable-list.js");
|
|
12
|
+
var _collapsibleNative = require("../common/collapsible.native.js");
|
|
13
|
+
var _clockIconNative = require("../common/clock-icon.native.js");
|
|
14
|
+
var _chatModel = require("../../model/chat.model.js");
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
const FREE_LABEL = 'Free';
|
|
17
|
+
function Event({
|
|
18
|
+
data,
|
|
19
|
+
theme = _chatModel.Theme.Dark,
|
|
20
|
+
language,
|
|
21
|
+
onSelect
|
|
22
|
+
}) {
|
|
23
|
+
const c = (0, _themeUtils.getThemeClasses)(theme);
|
|
24
|
+
const items = Array.isArray(data) ? data : [data];
|
|
25
|
+
const {
|
|
26
|
+
head,
|
|
27
|
+
rest,
|
|
28
|
+
expanded,
|
|
29
|
+
hasMore,
|
|
30
|
+
toggle
|
|
31
|
+
} = (0, _useExpandableList.useExpandableList)(items);
|
|
32
|
+
const renderCard = item => {
|
|
33
|
+
const name = (0, _i18nUtils.resolveText)(item.name, language);
|
|
34
|
+
const location = (0, _i18nUtils.resolveText)(item.location, language);
|
|
35
|
+
const description = item.description ? (0, _i18nUtils.resolveText)(item.description, language) : '';
|
|
36
|
+
const isFree = (0, _priceUtils.isFreePrice)(item.price);
|
|
37
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
38
|
+
className: `rounded-2xl border p-3 ${c.surface} ${c.border}`,
|
|
39
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
40
|
+
className: "flex-row gap-3",
|
|
41
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
42
|
+
onPress: () => onSelect?.(item),
|
|
43
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
|
|
44
|
+
accessibilityLabel: name,
|
|
45
|
+
source: {
|
|
46
|
+
uri: item.image
|
|
47
|
+
},
|
|
48
|
+
className: `h-16 w-16 rounded-xl down-sm:h-14 down-sm:w-14 ${c.iconBg}`
|
|
49
|
+
})
|
|
50
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
|
|
51
|
+
className: "flex-1 justify-center gap-1",
|
|
52
|
+
onPress: () => onSelect?.(item),
|
|
53
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
54
|
+
className: "flex-row items-start justify-between gap-2",
|
|
55
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
56
|
+
className: `flex-1 text-lg font-bold down-sm:text-base ${c.title}`,
|
|
57
|
+
numberOfLines: 1,
|
|
58
|
+
children: name
|
|
59
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
60
|
+
className: `text-lg font-bold down-sm:text-base ${isFree ? c.free : c.price}`,
|
|
61
|
+
children: isFree ? FREE_LABEL : item.price
|
|
62
|
+
})]
|
|
63
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
64
|
+
className: "flex-row items-center gap-1.5",
|
|
65
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_clockIconNative.ClockIcon, {
|
|
66
|
+
size: 16,
|
|
67
|
+
color: c.iconColor
|
|
68
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
|
|
69
|
+
className: `flex-1 text-sm down-sm:text-xs ${c.subtitle}`,
|
|
70
|
+
numberOfLines: 1,
|
|
71
|
+
children: [item.time, " \xB7 ", location]
|
|
72
|
+
})]
|
|
73
|
+
}), description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
74
|
+
className: `text-sm down-sm:text-xs ${c.subtitle}`,
|
|
75
|
+
numberOfLines: 2,
|
|
76
|
+
children: description
|
|
77
|
+
}) : null]
|
|
78
|
+
})]
|
|
79
|
+
})
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
83
|
+
children: [head.map((item, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
84
|
+
className: index > 0 ? 'mt-3' : undefined,
|
|
85
|
+
children: renderCard(item)
|
|
86
|
+
}, item.id)), hasMore ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
87
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_collapsibleNative.Collapsible, {
|
|
88
|
+
expanded: expanded,
|
|
89
|
+
children: rest.map(item => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
90
|
+
className: "mt-3",
|
|
91
|
+
children: renderCard(item)
|
|
92
|
+
}, item.id))
|
|
93
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
94
|
+
className: "mt-3 items-center",
|
|
95
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
96
|
+
onPress: toggle,
|
|
97
|
+
className: `rounded-xl border px-4 py-1.5 ${c.actionBorder}`,
|
|
98
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
99
|
+
className: `text-sm font-medium ${c.actionText}`,
|
|
100
|
+
children: expanded ? 'Show less' : 'Show more'
|
|
101
|
+
})
|
|
102
|
+
})
|
|
103
|
+
})]
|
|
104
|
+
}) : null]
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=event.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_themeUtils","_i18nUtils","_priceUtils","_useExpandableList","_collapsibleNative","_clockIconNative","_chatModel","_jsxRuntime","FREE_LABEL","Event","data","theme","Theme","Dark","language","onSelect","c","getThemeClasses","items","Array","isArray","head","rest","expanded","hasMore","toggle","useExpandableList","renderCard","item","name","resolveText","location","description","isFree","isFreePrice","price","jsx","View","className","surface","border","children","jsxs","Pressable","onPress","Image","accessibilityLabel","source","uri","image","iconBg","Text","title","numberOfLines","free","ClockIcon","size","color","iconColor","subtitle","time","map","index","undefined","id","Fragment","Collapsible","actionBorder","actionText"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/event/event.native.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Event", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _event.Event;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _event = require("./event");
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_event","require"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/event/index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Info", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _info.Info;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _info = require("./info");
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_info","require"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/info/index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Info = Info;
|
|
7
|
+
var _themeUtils = require("../../../../utils/theme.utils.js");
|
|
8
|
+
var _i18nUtils = require("../../../../utils/i18n.utils.js");
|
|
9
|
+
var _chatModel = require("../../model/chat.model.js");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
function Info({
|
|
12
|
+
data,
|
|
13
|
+
theme = _chatModel.Theme.Dark,
|
|
14
|
+
language
|
|
15
|
+
}) {
|
|
16
|
+
const c = (0, _themeUtils.getThemeClasses)(theme);
|
|
17
|
+
const item = Array.isArray(data) ? data[0] : data;
|
|
18
|
+
if (!item) return null;
|
|
19
|
+
const name = (0, _i18nUtils.resolveText)(item.name, language);
|
|
20
|
+
const description = (0, _i18nUtils.resolveText)(item.description, language);
|
|
21
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
22
|
+
className: `rounded-2xl border p-4 ${c.surface} ${c.border}`,
|
|
23
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
24
|
+
className: `block text-base font-bold down-sm:text-sm ${c.title}`,
|
|
25
|
+
children: name
|
|
26
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
27
|
+
className: `mt-1 block text-sm leading-relaxed down-sm:text-xs ${c.subtitle}`,
|
|
28
|
+
children: description
|
|
29
|
+
})]
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_themeUtils","require","_i18nUtils","_chatModel","_jsxRuntime","Info","data","theme","Theme","Dark","language","c","getThemeClasses","item","Array","isArray","name","resolveText","description","jsxs","className","surface","border","children","jsx","title","subtitle"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/info/info.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAA+C,IAAAG,WAAA,GAAAH,OAAA;AAIxC,SAASI,IAAIA,CAAC;EAAEC,IAAI;EAAEC,KAAK,GAAGC,gBAAK,CAACC,IAAI;EAAEC;AAAuC,CAAC,EAAE;EACzF,MAAMC,CAAC,GAAG,IAAAC,2BAAe,EAACL,KAAK,CAAC;EAChC,MAAMM,IAAI,GAAGC,KAAK,CAACC,OAAO,CAACT,IAAI,CAAC,GAAGA,IAAI,CAAC,CAAC,CAAC,GAAGA,IAAI;EACjD,IAAI,CAACO,IAAI,EAAE,OAAO,IAAI;EAEtB,MAAMG,IAAI,GAAG,IAAAC,sBAAW,EAACJ,IAAI,CAACG,IAAI,EAAEN,QAAQ,CAAC;EAC7C,MAAMQ,WAAW,GAAG,IAAAD,sBAAW,EAACJ,IAAI,CAACK,WAAW,EAAER,QAAQ,CAAC;EAE3D,oBACE,IAAAN,WAAA,CAAAe,IAAA;IAAKC,SAAS,EAAE,0BAA0BT,CAAC,CAACU,OAAO,IAAIV,CAAC,CAACW,MAAM,EAAG;IAAAC,QAAA,gBAChE,IAAAnB,WAAA,CAAAoB,GAAA;MAAMJ,SAAS,EAAE,6CAA6CT,CAAC,CAACc,KAAK,EAAG;MAAAF,QAAA,EAAEP;IAAI,CAAO,CAAC,eACtF,IAAAZ,WAAA,CAAAoB,GAAA;MAAMJ,SAAS,EAAE,sDAAsDT,CAAC,CAACe,QAAQ,EAAG;MAAAH,QAAA,EACjFL;IAAW,CACR,CAAC;EAAA,CACJ,CAAC;AAEV","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../../../src","sources":["features/chat/components/info/info.model.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Info = Info;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _themeUtils = require("../../../../utils/theme.utils.js");
|
|
9
|
+
var _i18nUtils = require("../../../../utils/i18n.utils.js");
|
|
10
|
+
var _chatModel = require("../../model/chat.model.js");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function Info({
|
|
13
|
+
data,
|
|
14
|
+
theme = _chatModel.Theme.Dark,
|
|
15
|
+
language
|
|
16
|
+
}) {
|
|
17
|
+
const c = (0, _themeUtils.getThemeClasses)(theme);
|
|
18
|
+
const item = Array.isArray(data) ? data[0] : data;
|
|
19
|
+
if (!item) return null;
|
|
20
|
+
const name = (0, _i18nUtils.resolveText)(item.name, language);
|
|
21
|
+
const description = (0, _i18nUtils.resolveText)(item.description, language);
|
|
22
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
23
|
+
className: `rounded-2xl border p-4 ${c.surface} ${c.border}`,
|
|
24
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
25
|
+
className: `text-base font-bold down-sm:text-sm ${c.title}`,
|
|
26
|
+
children: name
|
|
27
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
28
|
+
className: `mt-1 text-sm leading-relaxed down-sm:text-xs ${c.subtitle}`,
|
|
29
|
+
children: description
|
|
30
|
+
})]
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=info.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_themeUtils","_i18nUtils","_chatModel","_jsxRuntime","Info","data","theme","Theme","Dark","language","c","getThemeClasses","item","Array","isArray","name","resolveText","description","jsxs","View","className","surface","border","children","jsx","Text","title","subtitle"],"sourceRoot":"../../../../../../src","sources":["features/chat/components/info/info.native.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAA+C,IAAAI,WAAA,GAAAJ,OAAA;AAIxC,SAASK,IAAIA,CAAC;EAAEC,IAAI;EAAEC,KAAK,GAAGC,gBAAK,CAACC,IAAI;EAAEC;AAAuC,CAAC,EAAE;EACzF,MAAMC,CAAC,GAAG,IAAAC,2BAAe,EAACL,KAAK,CAAC;EAChC,MAAMM,IAAI,GAAGC,KAAK,CAACC,OAAO,CAACT,IAAI,CAAC,GAAGA,IAAI,CAAC,CAAC,CAAC,GAAGA,IAAI;EACjD,IAAI,CAACO,IAAI,EAAE,OAAO,IAAI;EAEtB,MAAMG,IAAI,GAAG,IAAAC,sBAAW,EAACJ,IAAI,CAACG,IAAI,EAAEN,QAAQ,CAAC;EAC7C,MAAMQ,WAAW,GAAG,IAAAD,sBAAW,EAACJ,IAAI,CAACK,WAAW,EAAER,QAAQ,CAAC;EAE3D,oBACE,IAAAN,WAAA,CAAAe,IAAA,EAACpB,YAAA,CAAAqB,IAAI;IAACC,SAAS,EAAE,0BAA0BV,CAAC,CAACW,OAAO,IAAIX,CAAC,CAACY,MAAM,EAAG;IAAAC,QAAA,gBACjE,IAAApB,WAAA,CAAAqB,GAAA,EAAC1B,YAAA,CAAA2B,IAAI;MAACL,SAAS,EAAE,uCAAuCV,CAAC,CAACgB,KAAK,EAAG;MAAAH,QAAA,EAAER;IAAI,CAAO,CAAC,eAChF,IAAAZ,WAAA,CAAAqB,GAAA,EAAC1B,YAAA,CAAA2B,IAAI;MAACL,SAAS,EAAE,gDAAgDV,CAAC,CAACiB,QAAQ,EAAG;MAAAJ,QAAA,EAC3EN;IAAW,CACR,CAAC;EAAA,CACH,CAAC;AAEX","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "ChatMessageRenderer", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _message.ChatMessageRenderer;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "parseMessage", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _messageLogic.parseMessage;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
var _message = require("./message");
|
|
19
|
+
var _messageLogic = require("./message.logic.js");
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_message","require","_messageLogic"],"sourceRoot":"../../../../../src","sources":["features/chat/message/index.ts"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ChatMessageRenderer = ChatMessageRenderer;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _themeUtils = require("../../../utils/theme.utils.js");
|
|
9
|
+
var _renderer = require("../renderer/renderer");
|
|
10
|
+
var _chatModel = require("../model/chat.model.js");
|
|
11
|
+
var _messageLogic = require("./message.logic.js");
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
function ChatMessageRenderer({
|
|
14
|
+
content,
|
|
15
|
+
blocks,
|
|
16
|
+
language,
|
|
17
|
+
theme = _chatModel.Theme.Dark,
|
|
18
|
+
onAction,
|
|
19
|
+
onSelect,
|
|
20
|
+
actionLabel,
|
|
21
|
+
counts
|
|
22
|
+
}) {
|
|
23
|
+
const c = (0, _themeUtils.getThemeClasses)(theme);
|
|
24
|
+
const segments = (0, _react.useMemo)(() => (0, _messageLogic.parseMessage)(content, blocks), [content, blocks]);
|
|
25
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
26
|
+
className: "flex flex-col gap-2",
|
|
27
|
+
children: segments.map((seg, i) => {
|
|
28
|
+
if (seg.kind === 'text') {
|
|
29
|
+
const text = seg.text.trim();
|
|
30
|
+
if (!text) return null;
|
|
31
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
32
|
+
className: `whitespace-pre-wrap text-sm leading-relaxed ${c.subtitle}`,
|
|
33
|
+
children: text
|
|
34
|
+
}, i);
|
|
35
|
+
}
|
|
36
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_renderer.ChatComponentRenderer, {
|
|
37
|
+
type: seg.block.type,
|
|
38
|
+
data: seg.block.data,
|
|
39
|
+
language: language,
|
|
40
|
+
theme: theme,
|
|
41
|
+
onAction: onAction,
|
|
42
|
+
onSelect: onSelect,
|
|
43
|
+
actionLabel: actionLabel,
|
|
44
|
+
counts: counts
|
|
45
|
+
}, i);
|
|
46
|
+
})
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_themeUtils","_renderer","_chatModel","_messageLogic","_jsxRuntime","ChatMessageRenderer","content","blocks","language","theme","Theme","Dark","onAction","onSelect","actionLabel","counts","c","getThemeClasses","segments","useMemo","parseMessage","jsx","className","children","map","seg","i","kind","text","trim","subtitle","ChatComponentRenderer","type","block","data"],"sourceRoot":"../../../../../src","sources":["features/chat/message/message.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AAA+C,IAAAK,WAAA,GAAAL,OAAA;AAGxC,SAASM,mBAAmBA,CAAC;EAClCC,OAAO;EACPC,MAAM;EACNC,QAAQ;EACRC,KAAK,GAAGC,gBAAK,CAACC,IAAI;EAClBC,QAAQ;EACRC,QAAQ;EACRC,WAAW;EACXC;AACgB,CAAC,EAAE;EACnB,MAAMC,CAAC,GAAG,IAAAC,2BAAe,EAACR,KAAK,CAAC;EAChC,MAAMS,QAAQ,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,0BAAY,EAACd,OAAO,EAAEC,MAAM,CAAC,EAAE,CAACD,OAAO,EAAEC,MAAM,CAAC,CAAC;EAEhF,oBACE,IAAAH,WAAA,CAAAiB,GAAA;IAAKC,SAAS,EAAC,qBAAqB;IAAAC,QAAA,EACjCL,QAAQ,CAACM,GAAG,CAAC,CAACC,GAAG,EAAEC,CAAC,KAAK;MACxB,IAAID,GAAG,CAACE,IAAI,KAAK,MAAM,EAAE;QACvB,MAAMC,IAAI,GAAGH,GAAG,CAACG,IAAI,CAACC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAACD,IAAI,EAAE,OAAO,IAAI;QACtB,oBACE,IAAAxB,WAAA,CAAAiB,GAAA;UAAcC,SAAS,EAAE,+CAA+CN,CAAC,CAACc,QAAQ,EAAG;UAAAP,QAAA,EAClFK;QAAI,GADIF,CAEL,CAAC;MAEX;MAEA,oBACE,IAAAtB,WAAA,CAAAiB,GAAA,EAACpB,SAAA,CAAA8B,qBAAqB;QAEpBC,IAAI,EAAEP,GAAG,CAACQ,KAAK,CAACD,IAAK;QACrBE,IAAI,EAAET,GAAG,CAACQ,KAAK,CAACC,IAAc;QAC9B1B,QAAQ,EAAEA,QAAS;QACnBC,KAAK,EAAEA,KAAM;QACbG,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAEA,QAAS;QACnBC,WAAW,EAAEA,WAAY;QACzBC,MAAM,EAAEA;MAAO,GARVW,CASN,CAAC;IAEN,CAAC;EAAC,CACC,CAAC;AAEV","ignoreList":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.parseMessage = parseMessage;
|
|
7
|
+
const PLACEHOLDER = /\[\[([^\]]+)\]\]/g;
|
|
8
|
+
function parseMessage(content, blocks = []) {
|
|
9
|
+
const byKey = new Map();
|
|
10
|
+
for (const block of blocks) {
|
|
11
|
+
for (const key of Object.keys(block)) byKey.set(key, block[key]);
|
|
12
|
+
}
|
|
13
|
+
const segments = [];
|
|
14
|
+
let lastIndex = 0;
|
|
15
|
+
let match;
|
|
16
|
+
PLACEHOLDER.lastIndex = 0;
|
|
17
|
+
while ((match = PLACEHOLDER.exec(content)) !== null) {
|
|
18
|
+
if (match.index > lastIndex) {
|
|
19
|
+
segments.push({
|
|
20
|
+
kind: 'text',
|
|
21
|
+
text: content.slice(lastIndex, match.index)
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
const key = match[1].trim();
|
|
25
|
+
const block = byKey.get(key);
|
|
26
|
+
if (block) {
|
|
27
|
+
segments.push({
|
|
28
|
+
kind: 'block',
|
|
29
|
+
key,
|
|
30
|
+
block
|
|
31
|
+
});
|
|
32
|
+
} else {
|
|
33
|
+
segments.push({
|
|
34
|
+
kind: 'text',
|
|
35
|
+
text: match[0]
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
lastIndex = PLACEHOLDER.lastIndex;
|
|
39
|
+
}
|
|
40
|
+
if (lastIndex < content.length) {
|
|
41
|
+
segments.push({
|
|
42
|
+
kind: 'text',
|
|
43
|
+
text: content.slice(lastIndex)
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
return segments;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=message.logic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["PLACEHOLDER","parseMessage","content","blocks","byKey","Map","block","key","Object","keys","set","segments","lastIndex","match","exec","index","push","kind","text","slice","trim","get","length"],"sourceRoot":"../../../../../src","sources":["features/chat/message/message.logic.ts"],"mappings":";;;;;;AAEA,MAAMA,WAAW,GAAG,mBAAmB;AAEhC,SAASC,YAAYA,CAACC,OAAe,EAAEC,MAAsB,GAAG,EAAE,EAAoB;EAC3F,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAA8B,CAAC;EACpD,KAAK,MAAMC,KAAK,IAAIH,MAAM,EAAE;IAC1B,KAAK,MAAMI,GAAG,IAAIC,MAAM,CAACC,IAAI,CAACH,KAAK,CAAC,EAAEF,KAAK,CAACM,GAAG,CAACH,GAAG,EAAED,KAAK,CAACC,GAAG,CAAC,CAAC;EAClE;EAEA,MAAMI,QAA0B,GAAG,EAAE;EACrC,IAAIC,SAAS,GAAG,CAAC;EACjB,IAAIC,KAA6B;EAEjCb,WAAW,CAACY,SAAS,GAAG,CAAC;EACzB,OAAO,CAACC,KAAK,GAAGb,WAAW,CAACc,IAAI,CAACZ,OAAO,CAAC,MAAM,IAAI,EAAE;IACnD,IAAIW,KAAK,CAACE,KAAK,GAAGH,SAAS,EAAE;MAC3BD,QAAQ,CAACK,IAAI,CAAC;QAAEC,IAAI,EAAE,MAAM;QAAEC,IAAI,EAAEhB,OAAO,CAACiB,KAAK,CAACP,SAAS,EAAEC,KAAK,CAACE,KAAK;MAAE,CAAC,CAAC;IAC9E;IAEA,MAAMR,GAAG,GAAGM,KAAK,CAAC,CAAC,CAAC,CAACO,IAAI,CAAC,CAAC;IAC3B,MAAMd,KAAK,GAAGF,KAAK,CAACiB,GAAG,CAACd,GAAG,CAAC;IAC5B,IAAID,KAAK,EAAE;MACTK,QAAQ,CAACK,IAAI,CAAC;QAAEC,IAAI,EAAE,OAAO;QAAEV,GAAG;QAAED;MAAM,CAAC,CAAC;IAC9C,CAAC,MAAM;MACLK,QAAQ,CAACK,IAAI,CAAC;QAAEC,IAAI,EAAE,MAAM;QAAEC,IAAI,EAAEL,KAAK,CAAC,CAAC;MAAE,CAAC,CAAC;IACjD;IAEAD,SAAS,GAAGZ,WAAW,CAACY,SAAS;EACnC;EAEA,IAAIA,SAAS,GAAGV,OAAO,CAACoB,MAAM,EAAE;IAC9BX,QAAQ,CAACK,IAAI,CAAC;MAAEC,IAAI,EAAE,MAAM;MAAEC,IAAI,EAAEhB,OAAO,CAACiB,KAAK,CAACP,SAAS;IAAE,CAAC,CAAC;EACjE;EAEA,OAAOD,QAAQ;AACjB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["features/chat/message/message.model.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ChatMessageRenderer = ChatMessageRenderer;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _themeUtils = require("../../../utils/theme.utils.js");
|
|
10
|
+
var _rendererNative = require("../renderer/renderer.native.js");
|
|
11
|
+
var _chatModel = require("../model/chat.model.js");
|
|
12
|
+
var _messageLogic = require("./message.logic.js");
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
+
function ChatMessageRenderer({
|
|
15
|
+
content,
|
|
16
|
+
blocks,
|
|
17
|
+
language,
|
|
18
|
+
theme = _chatModel.Theme.Dark,
|
|
19
|
+
onAction,
|
|
20
|
+
onSelect,
|
|
21
|
+
actionLabel,
|
|
22
|
+
counts
|
|
23
|
+
}) {
|
|
24
|
+
const c = (0, _themeUtils.getThemeClasses)(theme);
|
|
25
|
+
const segments = (0, _react.useMemo)(() => (0, _messageLogic.parseMessage)(content, blocks), [content, blocks]);
|
|
26
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
27
|
+
className: "gap-2",
|
|
28
|
+
children: segments.map((seg, i) => {
|
|
29
|
+
if (seg.kind === 'text') {
|
|
30
|
+
const text = seg.text.trim();
|
|
31
|
+
if (!text) return null;
|
|
32
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
33
|
+
className: `text-sm leading-relaxed ${c.subtitle}`,
|
|
34
|
+
children: text
|
|
35
|
+
}, i);
|
|
36
|
+
}
|
|
37
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_rendererNative.ChatComponentRenderer, {
|
|
38
|
+
type: seg.block.type,
|
|
39
|
+
data: seg.block.data,
|
|
40
|
+
language: language,
|
|
41
|
+
theme: theme,
|
|
42
|
+
onAction: onAction,
|
|
43
|
+
onSelect: onSelect,
|
|
44
|
+
actionLabel: actionLabel,
|
|
45
|
+
counts: counts
|
|
46
|
+
}, i);
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=message.native.js.map
|