@fluid-app/rep-widgets 0.1.4 → 0.1.6
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/{CarouselWidget-F2PDTYUR.js → CarouselWidget-AYDQROQ7.js} +3 -3
- package/dist/{CarouselWidget-F2PDTYUR.js.map → CarouselWidget-AYDQROQ7.js.map} +1 -1
- package/dist/{CarouselWidget-IAWPKZRZ.cjs → CarouselWidget-ORPCX6CM.cjs} +5 -5
- package/dist/{CarouselWidget-IAWPKZRZ.cjs.map → CarouselWidget-ORPCX6CM.cjs.map} +1 -1
- package/dist/ChartWidget-QAVE4MR6.js +6 -0
- package/dist/{ChartWidget-OL5DRMGA.js.map → ChartWidget-QAVE4MR6.js.map} +1 -1
- package/dist/ChartWidget-RTTBCUP5.cjs +19 -0
- package/dist/{ChartWidget-MBLGRSJQ.cjs.map → ChartWidget-RTTBCUP5.cjs.map} +1 -1
- package/dist/{ContainerWidget-DETCLP52.js → ContainerWidget-CYAHQDTH.js} +4 -4
- package/dist/{ContainerWidget-DETCLP52.js.map → ContainerWidget-CYAHQDTH.js.map} +1 -1
- package/dist/{ContainerWidget-XQDJSJXO.cjs → ContainerWidget-WYTZPJSE.cjs} +6 -6
- package/dist/{ContainerWidget-XQDJSJXO.cjs.map → ContainerWidget-WYTZPJSE.cjs.map} +1 -1
- package/dist/{LayoutWidget-WZSMZLLM.js → LayoutWidget-BHM4HFRZ.js} +3 -3
- package/dist/{LayoutWidget-WZSMZLLM.js.map → LayoutWidget-BHM4HFRZ.js.map} +1 -1
- package/dist/{LayoutWidget-4XISA6RO.cjs → LayoutWidget-VCOKZJV3.cjs} +5 -5
- package/dist/{LayoutWidget-4XISA6RO.cjs.map → LayoutWidget-VCOKZJV3.cjs.map} +1 -1
- package/dist/ListWidget-EN2V55JJ.js +6 -0
- package/dist/{ListWidget-N7H3L2N5.js.map → ListWidget-EN2V55JJ.js.map} +1 -1
- package/dist/{ListWidget-CAPL5VLR.cjs → ListWidget-FCMXJE5M.cjs} +5 -5
- package/dist/{ListWidget-CAPL5VLR.cjs.map → ListWidget-FCMXJE5M.cjs.map} +1 -1
- package/dist/{NestedWidget-WGQMOT6E.js → NestedWidget-KH7QSXN7.js} +3 -3
- package/dist/{NestedWidget-WGQMOT6E.js.map → NestedWidget-KH7QSXN7.js.map} +1 -1
- package/dist/{NestedWidget-NJSEZS26.cjs → NestedWidget-T5MRGLSP.cjs} +5 -5
- package/dist/{NestedWidget-NJSEZS26.cjs.map → NestedWidget-T5MRGLSP.cjs.map} +1 -1
- package/dist/{TableWidget-UYLEBMM6.js → TableWidget-APVKJ225.js} +3 -3
- package/dist/{TableWidget-UYLEBMM6.js.map → TableWidget-APVKJ225.js.map} +1 -1
- package/dist/{TableWidget-U45RVA7Z.cjs → TableWidget-DXXVKRNC.cjs} +5 -5
- package/dist/{TableWidget-U45RVA7Z.cjs.map → TableWidget-DXXVKRNC.cjs.map} +1 -1
- package/dist/{chunk-MWED53XR.js → chunk-25GBJPZQ.js} +9 -7
- package/dist/chunk-25GBJPZQ.js.map +1 -0
- package/dist/{chunk-REH6UJCF.js → chunk-3KJRYFS7.js} +4 -3
- package/dist/chunk-3KJRYFS7.js.map +1 -0
- package/dist/{chunk-2TCCLGVT.cjs → chunk-B5S5Q57S.cjs} +4 -3
- package/dist/chunk-B5S5Q57S.cjs.map +1 -0
- package/dist/{chunk-EHSWARYY.js → chunk-DPNUNERL.js} +3 -3
- package/dist/{chunk-EHSWARYY.js.map → chunk-DPNUNERL.js.map} +1 -1
- package/dist/{chunk-PNVBMN27.cjs → chunk-IDKYJ6OT.cjs} +15 -15
- package/dist/{chunk-PNVBMN27.cjs.map → chunk-IDKYJ6OT.cjs.map} +1 -1
- package/dist/{chunk-F6WCQLNF.cjs → chunk-JDIYHCWU.cjs} +4 -3
- package/dist/chunk-JDIYHCWU.cjs.map +1 -0
- package/dist/{chunk-DM2JDG3D.js → chunk-JSC4GMQG.js} +2 -2
- package/dist/{chunk-DM2JDG3D.js.map → chunk-JSC4GMQG.js.map} +1 -1
- package/dist/{chunk-4M2A5W2D.cjs → chunk-PEBYBSSB.cjs} +4 -4
- package/dist/{chunk-4M2A5W2D.cjs.map → chunk-PEBYBSSB.cjs.map} +1 -1
- package/dist/{chunk-R2QY4XCM.js → chunk-RHJWWSDK.js} +4 -3
- package/dist/chunk-RHJWWSDK.js.map +1 -0
- package/dist/{chunk-4JLNVCLR.cjs → chunk-RPVMJLTN.cjs} +4 -3
- package/dist/chunk-RPVMJLTN.cjs.map +1 -0
- package/dist/{chunk-ZV3W3LUO.cjs → chunk-U5HD3GJ7.cjs} +4 -3
- package/dist/chunk-U5HD3GJ7.cjs.map +1 -0
- package/dist/{chunk-D4ULCQ42.cjs → chunk-UH3FAS2R.cjs} +2 -2
- package/dist/{chunk-D4ULCQ42.cjs.map → chunk-UH3FAS2R.cjs.map} +1 -1
- package/dist/{chunk-EUOP3MWJ.cjs → chunk-VDHV7FEJ.cjs} +9 -7
- package/dist/chunk-VDHV7FEJ.cjs.map +1 -0
- package/dist/{chunk-5SAU52ED.js → chunk-VU3NEDUQ.js} +4 -3
- package/dist/chunk-VU3NEDUQ.js.map +1 -0
- package/dist/{chunk-DXBA2NME.js → chunk-YRZ4AHQC.js} +4 -3
- package/dist/chunk-YRZ4AHQC.js.map +1 -0
- package/dist/{chunk-CEZOXMO6.js → chunk-ZCVNDXQ5.js} +3 -3
- package/dist/{chunk-CEZOXMO6.js.map → chunk-ZCVNDXQ5.js.map} +1 -1
- package/dist/ui/index.cjs +14 -14
- package/dist/ui/index.js +1 -1
- package/dist/widgets/index.cjs +29 -29
- package/dist/widgets/index.js +15 -15
- package/package.json +1 -1
- package/dist/ChartWidget-MBLGRSJQ.cjs +0 -19
- package/dist/ChartWidget-OL5DRMGA.js +0 -6
- package/dist/ListWidget-N7H3L2N5.js +0 -6
- package/dist/chunk-2TCCLGVT.cjs.map +0 -1
- package/dist/chunk-4JLNVCLR.cjs.map +0 -1
- package/dist/chunk-5SAU52ED.js.map +0 -1
- package/dist/chunk-DXBA2NME.js.map +0 -1
- package/dist/chunk-EUOP3MWJ.cjs.map +0 -1
- package/dist/chunk-F6WCQLNF.cjs.map +0 -1
- package/dist/chunk-MWED53XR.js.map +0 -1
- package/dist/chunk-R2QY4XCM.js.map +0 -1
- package/dist/chunk-REH6UJCF.js.map +0 -1
- package/dist/chunk-ZV3W3LUO.cjs.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { CarouselWidget, carouselWidgetPropertySchema } from './chunk-
|
|
1
|
+
export { CarouselWidget, carouselWidgetPropertySchema } from './chunk-VU3NEDUQ.js';
|
|
2
2
|
import './chunk-T6BC5TUS.js';
|
|
3
3
|
import './chunk-6U2FEES5.js';
|
|
4
4
|
import './chunk-FKDPFJHH.js';
|
|
5
5
|
import './chunk-5HHN5MRZ.js';
|
|
6
6
|
import './chunk-ZS7C474P.js';
|
|
7
|
-
//# sourceMappingURL=CarouselWidget-
|
|
8
|
-
//# sourceMappingURL=CarouselWidget-
|
|
7
|
+
//# sourceMappingURL=CarouselWidget-AYDQROQ7.js.map
|
|
8
|
+
//# sourceMappingURL=CarouselWidget-AYDQROQ7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"CarouselWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"CarouselWidget-AYDQROQ7.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkB5S5Q57S_cjs = require('./chunk-B5S5Q57S.cjs');
|
|
4
4
|
require('./chunk-LOXFR6XC.cjs');
|
|
5
5
|
require('./chunk-IJHUIM34.cjs');
|
|
6
6
|
require('./chunk-QV3OAAEQ.cjs');
|
|
@@ -11,11 +11,11 @@ require('./chunk-CM7D7WGL.cjs');
|
|
|
11
11
|
|
|
12
12
|
Object.defineProperty(exports, "CarouselWidget", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkB5S5Q57S_cjs.CarouselWidget; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "carouselWidgetPropertySchema", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkB5S5Q57S_cjs.carouselWidgetPropertySchema; }
|
|
19
19
|
});
|
|
20
|
-
//# sourceMappingURL=CarouselWidget-
|
|
21
|
-
//# sourceMappingURL=CarouselWidget-
|
|
20
|
+
//# sourceMappingURL=CarouselWidget-ORPCX6CM.cjs.map
|
|
21
|
+
//# sourceMappingURL=CarouselWidget-ORPCX6CM.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"CarouselWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"CarouselWidget-ORPCX6CM.cjs"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { ChartWidget, chartWidgetPropertySchema } from './chunk-ZCVNDXQ5.js';
|
|
2
|
+
import './chunk-JSC4GMQG.js';
|
|
3
|
+
import './chunk-5HHN5MRZ.js';
|
|
4
|
+
import './chunk-ZS7C474P.js';
|
|
5
|
+
//# sourceMappingURL=ChartWidget-QAVE4MR6.js.map
|
|
6
|
+
//# sourceMappingURL=ChartWidget-QAVE4MR6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ChartWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ChartWidget-QAVE4MR6.js"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkIDKYJ6OT_cjs = require('./chunk-IDKYJ6OT.cjs');
|
|
4
|
+
require('./chunk-UH3FAS2R.cjs');
|
|
5
|
+
require('./chunk-HDA2ZOV2.cjs');
|
|
6
|
+
require('./chunk-CM7D7WGL.cjs');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
Object.defineProperty(exports, "ChartWidget", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () { return chunkIDKYJ6OT_cjs.ChartWidget; }
|
|
13
|
+
});
|
|
14
|
+
Object.defineProperty(exports, "chartWidgetPropertySchema", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () { return chunkIDKYJ6OT_cjs.chartWidgetPropertySchema; }
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=ChartWidget-RTTBCUP5.cjs.map
|
|
19
|
+
//# sourceMappingURL=ChartWidget-RTTBCUP5.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ChartWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ChartWidget-RTTBCUP5.cjs"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { ContainerWidget, containerWidgetPropertySchema } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { ContainerWidget, containerWidgetPropertySchema } from './chunk-DPNUNERL.js';
|
|
2
|
+
import './chunk-25GBJPZQ.js';
|
|
3
3
|
import './chunk-RKDOQV4T.js';
|
|
4
4
|
import './chunk-ZWFK5UUU.js';
|
|
5
5
|
import './chunk-6GF46P3S.js';
|
|
6
6
|
import './chunk-ZS7C474P.js';
|
|
7
|
-
//# sourceMappingURL=ContainerWidget-
|
|
8
|
-
//# sourceMappingURL=ContainerWidget-
|
|
7
|
+
//# sourceMappingURL=ContainerWidget-CYAHQDTH.js.map
|
|
8
|
+
//# sourceMappingURL=ContainerWidget-CYAHQDTH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ContainerWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ContainerWidget-CYAHQDTH.js"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('./chunk-
|
|
3
|
+
var chunkPEBYBSSB_cjs = require('./chunk-PEBYBSSB.cjs');
|
|
4
|
+
require('./chunk-VDHV7FEJ.cjs');
|
|
5
5
|
require('./chunk-FSLUSFJ2.cjs');
|
|
6
6
|
require('./chunk-YU5DAILW.cjs');
|
|
7
7
|
require('./chunk-JYWKXNUO.cjs');
|
|
@@ -11,11 +11,11 @@ require('./chunk-CM7D7WGL.cjs');
|
|
|
11
11
|
|
|
12
12
|
Object.defineProperty(exports, "ContainerWidget", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkPEBYBSSB_cjs.ContainerWidget; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "containerWidgetPropertySchema", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkPEBYBSSB_cjs.containerWidgetPropertySchema; }
|
|
19
19
|
});
|
|
20
|
-
//# sourceMappingURL=ContainerWidget-
|
|
21
|
-
//# sourceMappingURL=ContainerWidget-
|
|
20
|
+
//# sourceMappingURL=ContainerWidget-WYTZPJSE.cjs.map
|
|
21
|
+
//# sourceMappingURL=ContainerWidget-WYTZPJSE.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ContainerWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ContainerWidget-WYTZPJSE.cjs"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { LayoutWidget, layoutWidgetPropertySchema } from './chunk-
|
|
1
|
+
export { LayoutWidget, layoutWidgetPropertySchema } from './chunk-25GBJPZQ.js';
|
|
2
2
|
import './chunk-RKDOQV4T.js';
|
|
3
3
|
import './chunk-ZWFK5UUU.js';
|
|
4
4
|
import './chunk-6GF46P3S.js';
|
|
5
5
|
import './chunk-ZS7C474P.js';
|
|
6
|
-
//# sourceMappingURL=LayoutWidget-
|
|
7
|
-
//# sourceMappingURL=LayoutWidget-
|
|
6
|
+
//# sourceMappingURL=LayoutWidget-BHM4HFRZ.js.map
|
|
7
|
+
//# sourceMappingURL=LayoutWidget-BHM4HFRZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"LayoutWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"LayoutWidget-BHM4HFRZ.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkVDHV7FEJ_cjs = require('./chunk-VDHV7FEJ.cjs');
|
|
4
4
|
require('./chunk-FSLUSFJ2.cjs');
|
|
5
5
|
require('./chunk-YU5DAILW.cjs');
|
|
6
6
|
require('./chunk-JYWKXNUO.cjs');
|
|
@@ -10,11 +10,11 @@ require('./chunk-CM7D7WGL.cjs');
|
|
|
10
10
|
|
|
11
11
|
Object.defineProperty(exports, "LayoutWidget", {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunkVDHV7FEJ_cjs.LayoutWidget; }
|
|
14
14
|
});
|
|
15
15
|
Object.defineProperty(exports, "layoutWidgetPropertySchema", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunkVDHV7FEJ_cjs.layoutWidgetPropertySchema; }
|
|
18
18
|
});
|
|
19
|
-
//# sourceMappingURL=LayoutWidget-
|
|
20
|
-
//# sourceMappingURL=LayoutWidget-
|
|
19
|
+
//# sourceMappingURL=LayoutWidget-VCOKZJV3.cjs.map
|
|
20
|
+
//# sourceMappingURL=LayoutWidget-VCOKZJV3.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"LayoutWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"LayoutWidget-VCOKZJV3.cjs"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { ListWidget, listWidgetPropertySchema } from './chunk-3KJRYFS7.js';
|
|
2
|
+
import './chunk-T6BC5TUS.js';
|
|
3
|
+
import './chunk-FKDPFJHH.js';
|
|
4
|
+
import './chunk-ZS7C474P.js';
|
|
5
|
+
//# sourceMappingURL=ListWidget-EN2V55JJ.js.map
|
|
6
|
+
//# sourceMappingURL=ListWidget-EN2V55JJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ListWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ListWidget-EN2V55JJ.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkRPVMJLTN_cjs = require('./chunk-RPVMJLTN.cjs');
|
|
4
4
|
require('./chunk-LOXFR6XC.cjs');
|
|
5
5
|
require('./chunk-QV3OAAEQ.cjs');
|
|
6
6
|
require('./chunk-CM7D7WGL.cjs');
|
|
@@ -9,11 +9,11 @@ require('./chunk-CM7D7WGL.cjs');
|
|
|
9
9
|
|
|
10
10
|
Object.defineProperty(exports, "ListWidget", {
|
|
11
11
|
enumerable: true,
|
|
12
|
-
get: function () { return
|
|
12
|
+
get: function () { return chunkRPVMJLTN_cjs.ListWidget; }
|
|
13
13
|
});
|
|
14
14
|
Object.defineProperty(exports, "listWidgetPropertySchema", {
|
|
15
15
|
enumerable: true,
|
|
16
|
-
get: function () { return
|
|
16
|
+
get: function () { return chunkRPVMJLTN_cjs.listWidgetPropertySchema; }
|
|
17
17
|
});
|
|
18
|
-
//# sourceMappingURL=ListWidget-
|
|
19
|
-
//# sourceMappingURL=ListWidget-
|
|
18
|
+
//# sourceMappingURL=ListWidget-FCMXJE5M.cjs.map
|
|
19
|
+
//# sourceMappingURL=ListWidget-FCMXJE5M.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ListWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ListWidget-FCMXJE5M.cjs"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { NestedWidget, nestedWidgetPropertySchema } from './chunk-
|
|
1
|
+
export { NestedWidget, nestedWidgetPropertySchema } from './chunk-YRZ4AHQC.js';
|
|
2
2
|
import './chunk-T6BC5TUS.js';
|
|
3
3
|
import './chunk-FKDPFJHH.js';
|
|
4
4
|
import './chunk-ZS7C474P.js';
|
|
5
|
-
//# sourceMappingURL=NestedWidget-
|
|
6
|
-
//# sourceMappingURL=NestedWidget-
|
|
5
|
+
//# sourceMappingURL=NestedWidget-KH7QSXN7.js.map
|
|
6
|
+
//# sourceMappingURL=NestedWidget-KH7QSXN7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"NestedWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"NestedWidget-KH7QSXN7.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkU5HD3GJ7_cjs = require('./chunk-U5HD3GJ7.cjs');
|
|
4
4
|
require('./chunk-LOXFR6XC.cjs');
|
|
5
5
|
require('./chunk-QV3OAAEQ.cjs');
|
|
6
6
|
require('./chunk-CM7D7WGL.cjs');
|
|
@@ -9,11 +9,11 @@ require('./chunk-CM7D7WGL.cjs');
|
|
|
9
9
|
|
|
10
10
|
Object.defineProperty(exports, "NestedWidget", {
|
|
11
11
|
enumerable: true,
|
|
12
|
-
get: function () { return
|
|
12
|
+
get: function () { return chunkU5HD3GJ7_cjs.NestedWidget; }
|
|
13
13
|
});
|
|
14
14
|
Object.defineProperty(exports, "nestedWidgetPropertySchema", {
|
|
15
15
|
enumerable: true,
|
|
16
|
-
get: function () { return
|
|
16
|
+
get: function () { return chunkU5HD3GJ7_cjs.nestedWidgetPropertySchema; }
|
|
17
17
|
});
|
|
18
|
-
//# sourceMappingURL=NestedWidget-
|
|
19
|
-
//# sourceMappingURL=NestedWidget-
|
|
18
|
+
//# sourceMappingURL=NestedWidget-T5MRGLSP.cjs.map
|
|
19
|
+
//# sourceMappingURL=NestedWidget-T5MRGLSP.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"NestedWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"NestedWidget-T5MRGLSP.cjs"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { TableWidget, tableWidgetPropertySchema } from './chunk-
|
|
1
|
+
export { TableWidget, tableWidgetPropertySchema } from './chunk-RHJWWSDK.js';
|
|
2
2
|
import './chunk-T6BC5TUS.js';
|
|
3
3
|
import './chunk-IY3BNQ5Y.js';
|
|
4
4
|
import './chunk-5HHN5MRZ.js';
|
|
5
5
|
import './chunk-ZS7C474P.js';
|
|
6
|
-
//# sourceMappingURL=TableWidget-
|
|
7
|
-
//# sourceMappingURL=TableWidget-
|
|
6
|
+
//# sourceMappingURL=TableWidget-APVKJ225.js.map
|
|
7
|
+
//# sourceMappingURL=TableWidget-APVKJ225.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"TableWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"TableWidget-APVKJ225.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkJDIYHCWU_cjs = require('./chunk-JDIYHCWU.cjs');
|
|
4
4
|
require('./chunk-LOXFR6XC.cjs');
|
|
5
5
|
require('./chunk-NOZVVD6G.cjs');
|
|
6
6
|
require('./chunk-HDA2ZOV2.cjs');
|
|
@@ -10,11 +10,11 @@ require('./chunk-CM7D7WGL.cjs');
|
|
|
10
10
|
|
|
11
11
|
Object.defineProperty(exports, "TableWidget", {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunkJDIYHCWU_cjs.TableWidget; }
|
|
14
14
|
});
|
|
15
15
|
Object.defineProperty(exports, "tableWidgetPropertySchema", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunkJDIYHCWU_cjs.tableWidgetPropertySchema; }
|
|
18
18
|
});
|
|
19
|
-
//# sourceMappingURL=TableWidget-
|
|
20
|
-
//# sourceMappingURL=TableWidget-
|
|
19
|
+
//# sourceMappingURL=TableWidget-DXXVKRNC.cjs.map
|
|
20
|
+
//# sourceMappingURL=TableWidget-DXXVKRNC.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"TableWidget-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"TableWidget-DXXVKRNC.cjs"}
|
|
@@ -6,17 +6,19 @@ import { sectionLayoutConfig } from '@fluid-app/rep-core/types';
|
|
|
6
6
|
import { groupChildrenByColumn } from '@fluid-app/rep-core/widget-utils';
|
|
7
7
|
import { jsx } from 'react/jsx-runtime';
|
|
8
8
|
|
|
9
|
+
var DEFAULT_BACKGROUND = {
|
|
10
|
+
type: "solid",
|
|
11
|
+
color: "background"
|
|
12
|
+
};
|
|
13
|
+
var DEFAULT_CHILDREN = [];
|
|
9
14
|
var LayoutWidget = ({
|
|
10
15
|
sectionLayout = "single-column",
|
|
11
16
|
gap = 4,
|
|
12
17
|
gapSize,
|
|
13
|
-
background =
|
|
14
|
-
type: "solid",
|
|
15
|
-
color: "background"
|
|
16
|
-
},
|
|
18
|
+
background = DEFAULT_BACKGROUND,
|
|
17
19
|
padding = 0,
|
|
18
20
|
borderRadius = "md",
|
|
19
|
-
children =
|
|
21
|
+
children = DEFAULT_CHILDREN,
|
|
20
22
|
registry,
|
|
21
23
|
className = "",
|
|
22
24
|
minHeight
|
|
@@ -111,5 +113,5 @@ var layoutWidgetPropertySchema = {
|
|
|
111
113
|
};
|
|
112
114
|
|
|
113
115
|
export { LayoutWidget, layoutWidgetPropertySchema };
|
|
114
|
-
//# sourceMappingURL=chunk-
|
|
115
|
-
//# sourceMappingURL=chunk-
|
|
116
|
+
//# sourceMappingURL=chunk-25GBJPZQ.js.map
|
|
117
|
+
//# sourceMappingURL=chunk-25GBJPZQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/widgets/LayoutWidget.tsx"],"names":["ScreenRenderer"],"mappings":"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","file":"chunk-25GBJPZQ.js","sourcesContent":["import { ScreenRenderer as DefaultScreenRenderer } from \"../core/ScreenRenderer\";\nimport { useRegistry } from \"../contexts/RegistryContext\";\nimport { useScreenRenderer } from \"../contexts/ScreenRendererContext\";\nimport type {\n TypedWidgetSchema,\n WidgetSchema,\n BorderRadiusOptions,\n PaddingOptions,\n GapOptions,\n SectionLayoutType,\n BackgroundValue,\n} from \"@fluid-app/rep-core/types\";\nimport { sectionLayoutConfig } from \"@fluid-app/rep-core/types\";\nimport type { ComponentType } from \"react\";\nimport type { WidgetPropertySchema } from \"@fluid-app/rep-core/registries\";\nimport {\n getBorderRadiusField,\n getGapField,\n getPaddingField,\n gapValues,\n} from \"../core/fields\";\nimport { groupChildrenByColumn } from \"@fluid-app/rep-core/widget-utils\";\n\nconst DEFAULT_BACKGROUND: BackgroundValue = {\n type: \"solid\",\n color: \"background\",\n};\nconst DEFAULT_CHILDREN: (WidgetSchema | null)[] = [];\n\ntype LayoutProps<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, ComponentType<any>> = Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ComponentType<any>\n >,\n> = {\n // Section layout type (masonry-style column configuration)\n sectionLayout?: SectionLayoutType;\n\n // Legacy props (deprecated, kept for backward compatibility)\n type?: \"flex\" | \"grid\";\n columns?: number;\n rows?: number;\n direction?: string;\n justify?: string;\n align?: string;\n wrap?: boolean;\n\n // Spacing\n gap?: number; // deprecated, use gapSize instead\n gapSize?: GapOptions;\n\n // Design\n background?: BackgroundValue;\n padding?: PaddingOptions;\n borderRadius?: BorderRadiusOptions;\n\n // Content - widgets with columnIndex property for masonry layout\n children: (TypedWidgetSchema<T> | null)[] | (WidgetSchema | null)[];\n\n // Widget registry (passed down from parent renderer)\n registry?: T;\n\n // Styling\n className?: string;\n minHeight?: number;\n};\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const LayoutWidget = <T extends Record<string, ComponentType<any>>>({\n sectionLayout = \"single-column\",\n gap = 4,\n gapSize,\n background = DEFAULT_BACKGROUND,\n padding = 0,\n borderRadius = \"md\",\n children = DEFAULT_CHILDREN,\n registry,\n className = \"\",\n minHeight,\n}: LayoutProps<T>) => {\n // Get registry from context if not provided as prop\n const contextRegistry = useRegistry();\n const effectiveRegistry = registry || contextRegistry;\n\n // Use ScreenRenderer from context (e.g. rep-builder's), fall back to local\n const ContextScreenRenderer = useScreenRenderer();\n const ScreenRenderer = ContextScreenRenderer ?? DefaultScreenRenderer;\n\n // Extract background values\n const backgroundColor = background.color || \"background\";\n const backgroundImage =\n (background.resource?.image_url || background.resource?.imageUrl) &&\n background.type === \"image\"\n ? `url(${background.resource.image_url || background.resource.imageUrl})`\n : \"none\";\n\n // Get layout configuration\n const layoutConfig = sectionLayoutConfig[sectionLayout];\n const columnCount = layoutConfig.columns;\n\n // Calculate gap size\n const gapSizeValue = gapSize ? gapValues[gapSize] : gap;\n\n // Build CSS classes for masonry layout with responsive columns\n const layoutClasses = [\n \"grid\",\n \"grid-cols-1\", // Mobile: single column\n layoutConfig.gridClasses, // Desktop (@md+): configured columns\n `bg-${backgroundColor} p-${padding} rounded-${borderRadius}`,\n `gap-${gapSizeValue}`,\n className,\n ]\n .filter(Boolean)\n .join(\" \");\n\n // Container style\n const containerStyle: React.CSSProperties = {\n ...(minHeight ? { minHeight: `${minHeight}px` } : {}),\n alignItems: \"start\", // Masonry-style: columns don't stretch to match height\n backgroundImage,\n };\n\n // If no registry is available, we can't render the children\n if (!effectiveRegistry) {\n console.warn(\"Layout widget: No registry provided, cannot render children\");\n return <div className={layoutClasses} style={containerStyle} />;\n }\n\n // Group children by column\n const columnGroups = groupChildrenByColumn(\n children as WidgetSchema[],\n columnCount,\n );\n\n // Regular render mode - render each column as a flex column\n return (\n <div className=\"@container\">\n <div className={layoutClasses} style={containerStyle}>\n {columnGroups.map((columnChildren, colIndex) => (\n <ScreenRenderer\n key={colIndex}\n screen={columnChildren}\n registry={effectiveRegistry}\n className={`flex flex-col gap-${gapSizeValue}`}\n />\n ))}\n </div>\n </div>\n );\n};\n\nexport const layoutWidgetPropertySchema: WidgetPropertySchema = {\n widgetType: \"LayoutWidget\",\n displayName: \"Layout\",\n fields: [\n // Layout Configuration - Visual selector matching Figma design\n {\n key: \"sectionLayout\",\n label: \"Layout Type\",\n type: \"sectionLayoutSelect\",\n description: \"Column layout configuration\",\n defaultValue: \"single-column\",\n group: \"Layout\",\n },\n\n // Design\n getGapField({\n key: \"gapSize\",\n label: \"Gap\",\n description: \"Gap between columns and widgets\",\n defaultValue: \"md\",\n group: \"Design\",\n }),\n {\n type: \"background\",\n key: \"background\",\n label: \"Background\",\n description: \"Background for the layout container\",\n defaultValue: \"background\",\n group: \"Design\",\n },\n getPaddingField({\n key: \"padding\",\n label: \"Padding\",\n description: \"Padding for the layout container\",\n defaultValue: 4,\n group: \"Design\",\n }),\n getBorderRadiusField({\n key: \"borderRadius\",\n label: \"Border Radius\",\n description: \"Border radius for the layout container\",\n defaultValue: \"md\",\n group: \"Design\",\n }),\n ],\n};\n"]}
|
|
@@ -4,6 +4,7 @@ import { getFontSizeField, getColorField, getPaddingField, getBorderRadiusField,
|
|
|
4
4
|
import { useRef } from 'react';
|
|
5
5
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
6
6
|
|
|
7
|
+
var DEFAULT_ITEMS = [];
|
|
7
8
|
var SCROLL_ITEM_WIDTH = 300;
|
|
8
9
|
var getImageUrl = (item) => {
|
|
9
10
|
return item.imageUrl || item.image;
|
|
@@ -81,7 +82,7 @@ function ListWidget({
|
|
|
81
82
|
scrollAxis = "horizontal",
|
|
82
83
|
titleEnabled = true,
|
|
83
84
|
title,
|
|
84
|
-
items =
|
|
85
|
+
items = DEFAULT_ITEMS,
|
|
85
86
|
titleColor = "foreground",
|
|
86
87
|
titleSize = "lg",
|
|
87
88
|
itemTitleColor = "foreground",
|
|
@@ -947,5 +948,5 @@ var listWidgetPropertySchema = {
|
|
|
947
948
|
};
|
|
948
949
|
|
|
949
950
|
export { ListWidget, listWidgetPropertySchema };
|
|
950
|
-
//# sourceMappingURL=chunk-
|
|
951
|
-
//# sourceMappingURL=chunk-
|
|
951
|
+
//# sourceMappingURL=chunk-3KJRYFS7.js.map
|
|
952
|
+
//# sourceMappingURL=chunk-3KJRYFS7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/widgets/ListWidget.tsx"],"names":[],"mappings":"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","file":"chunk-3KJRYFS7.js","sourcesContent":["import { useRef, type ComponentProps } from \"react\";\nimport type {\n ColorOptions,\n FontSizeOptions,\n BorderRadiusOptions,\n PaddingOptions,\n GapOptions,\n BackgroundValue,\n} from \"@fluid-app/rep-core/types\";\nimport type { WidgetPropertySchema } from \"@fluid-app/rep-core/registries\";\nimport {\n getBorderRadiusField,\n getColorField,\n getFontSizeField,\n getPaddingField,\n getGapField,\n gapValues,\n} from \"../core/fields\";\nimport { ScrollArrows } from \"../ui/scroll-arrows\";\nimport { MediaRenderer } from \"../components/MediaRenderer\";\n\nconst DEFAULT_ITEMS: ListItem[] = [];\n\n// Layout constants\nconst SCROLL_ITEM_WIDTH = 300;\n\ntype ListItem = {\n id: string;\n image?: string;\n imageUrl?: string;\n videoUrl?: string;\n title?: string;\n description?: string;\n price?: string;\n originalPrice?: string;\n discount?: string;\n qv?: string;\n cv?: string;\n};\n\ntype ImageAspectRatio = \"square\" | \"landscape\" | \"portrait\";\ntype ListType = \"ordered\" | \"unordered\";\ntype ScrollAxis = \"horizontal\" | \"vertical\";\n\ntype ListWidgetProps = ComponentProps<\"div\"> & {\n // List configuration\n listType?: ListType;\n scrollAxis?: ScrollAxis;\n titleEnabled?: boolean;\n title?: string;\n items?: ListItem[];\n\n // Text styling\n titleColor?: ColorOptions;\n titleSize?: FontSizeOptions;\n itemTitleColor?: ColorOptions;\n itemTitleSize?: FontSizeOptions;\n descriptionColor?: ColorOptions;\n descriptionSize?: FontSizeOptions;\n priceColor?: ColorOptions;\n priceSize?: FontSizeOptions;\n originalPriceColor?: ColorOptions;\n metaTextColor?: ColorOptions;\n metaTextSize?: FontSizeOptions;\n\n // Ordered list styling\n numberColor?: ColorOptions;\n numberSize?: FontSizeOptions;\n\n // Layout\n borderRadius?: BorderRadiusOptions;\n padding?: PaddingOptions;\n gap?: GapOptions;\n columns?: number;\n imageAspectRatio?: ImageAspectRatio;\n background?: BackgroundValue;\n\n // Behavior\n showBadge?: boolean;\n showFavorite?: boolean;\n showMetaText?: boolean;\n maxItems?: number;\n\n // Featured section\n showFeaturedSection?: boolean;\n featuredAsset?: string | { [key: string]: unknown };\n featuredTitle?: string;\n featuredSubtitle?: string;\n featuredButtonText?: string;\n featuredButtonUrl?: string;\n featuredSubtitleColor?: ColorOptions;\n featuredSubtitleSize?: FontSizeOptions;\n};\n\n// Helper functions\nconst getImageUrl = (item: ListItem): string | undefined => {\n return item.imageUrl || item.image;\n};\n\nfunction getFeaturedAssetUrl(\n value: string | { [key: string]: unknown } | undefined,\n): { url: string; isVideo: boolean } | undefined {\n if (!value) return undefined;\n\n // Handle string URLs\n if (typeof value === \"string\") {\n const isVideo = /\\.(mp4|webm|ogg|mov)$/i.test(value);\n return { url: value, isVideo };\n }\n\n // Handle ShareableItem objects\n if (typeof value === \"object\") {\n // Check for video URL first\n const videoUrl =\n (value.videoUrl as string) ||\n (value.video_url as string) ||\n (value.url as string);\n if (videoUrl && /\\.(mp4|webm|ogg|mov)$/i.test(videoUrl)) {\n return { url: videoUrl, isVideo: true };\n }\n\n // Fall back to image URL\n const imageUrl =\n (value.imageUrl as string) ||\n (value.image_url as string) ||\n (value.url as string);\n if (imageUrl) {\n return { url: imageUrl, isVideo: false };\n }\n }\n\n return undefined;\n}\n\nfunction getTextContent(value: string | unknown | undefined): string {\n if (!value) return \"\";\n if (typeof value === \"string\") return value;\n if (typeof value === \"object\" && value !== null && \"body\" in value) {\n const body = (value as { body: unknown }).body;\n return typeof body === \"string\" ? body : \"\";\n }\n // For any other object or value, convert to string safely\n if (typeof value === \"object\") return \"\";\n return String(value);\n}\n\nfunction getStringValue(value: unknown): string {\n if (!value) return \"\";\n if (typeof value === \"string\") return value;\n if (typeof value === \"number\") return String(value);\n if (typeof value === \"object\" && value !== null) {\n // Try common text properties\n if (\"body\" in value) {\n const body = (value as { body: unknown }).body;\n if (typeof body === \"string\") return body;\n }\n if (\"text\" in value) {\n const text = (value as { text: unknown }).text;\n if (typeof text === \"string\") return text;\n }\n if (\"value\" in value) {\n const val = (value as { value: unknown }).value;\n if (typeof val === \"string\") return val;\n if (typeof val === \"number\") return String(val);\n }\n }\n return \"\";\n}\n\nconst getAspectRatioClass = (ratio: ImageAspectRatio): string => {\n const ratios = {\n square: \"aspect-square\",\n landscape: \"aspect-video\",\n portrait: \"aspect-[3/4]\",\n };\n return ratios[ratio];\n};\n\nconst getResponsiveGridClass = (columns: number): string => {\n // Always 2 columns on mobile, then configured columns on larger containers\n const responsiveClasses: Record<number, string> = {\n 1: \"grid-cols-2 @lg:grid-cols-1\",\n 2: \"grid-cols-2 @lg:grid-cols-2\",\n 3: \"grid-cols-2 @lg:grid-cols-3\",\n 4: \"grid-cols-2 @lg:grid-cols-4\",\n 5: \"grid-cols-2 @lg:grid-cols-5\",\n 6: \"grid-cols-2 @lg:grid-cols-6\",\n };\n return responsiveClasses[columns] || \"grid-cols-2 @lg:grid-cols-3\";\n};\n\nexport function ListWidget({\n listType = \"unordered\",\n scrollAxis = \"horizontal\",\n titleEnabled = true,\n title,\n items = DEFAULT_ITEMS,\n titleColor = \"foreground\",\n titleSize = \"lg\",\n itemTitleColor = \"foreground\",\n itemTitleSize = \"sm\",\n descriptionColor = \"muted\",\n descriptionSize = \"sm\",\n priceColor = \"foreground\",\n priceSize = \"md\",\n originalPriceColor = \"muted\",\n metaTextColor = \"muted\",\n metaTextSize = \"xs\",\n numberColor = \"primary\",\n numberSize = \"2xl\",\n borderRadius = \"md\",\n padding = 4,\n gap = \"md\",\n columns = 3,\n imageAspectRatio = \"square\",\n background = { type: \"solid\", color: \"background\" },\n showBadge = true,\n showFavorite = true,\n showMetaText = true,\n maxItems = 12,\n showFeaturedSection = false,\n featuredAsset,\n featuredTitle,\n featuredSubtitle,\n featuredButtonText,\n featuredButtonUrl,\n featuredSubtitleColor = \"background\",\n featuredSubtitleSize = \"md\",\n className,\n ...props\n}: ListWidgetProps) {\n const scrollContainerRef = useRef<HTMLDivElement>(null);\n\n const displayItems = maxItems ? items.slice(0, maxItems) : items;\n const hasItems = displayItems.length > 0;\n\n // Large number sizes for ordered lists (in rem, used with inline styles)\n const largeNumberSizes: Record<FontSizeOptions, string> = {\n xs: \"8rem\",\n sm: \"10rem\",\n md: \"12rem\",\n lg: \"14rem\",\n xl: \"16rem\",\n \"2xl\": \"20rem\",\n };\n\n const scrollByAmount = (direction: \"prev\" | \"next\") => {\n const container = scrollContainerRef.current;\n if (!container) return;\n\n const computedGap = parseFloat(getComputedStyle(container).gap) || 0;\n const scrollAmount = SCROLL_ITEM_WIDTH + computedGap;\n\n container.scrollTo({\n left:\n container.scrollLeft +\n (direction === \"next\" ? scrollAmount : -scrollAmount),\n behavior: \"smooth\",\n });\n };\n\n // Featured Section - Standalone section with background image and text overlay\n const renderFeaturedSection = () => {\n if (!showFeaturedSection) return null;\n\n const asset = getFeaturedAssetUrl(featuredAsset);\n if (!asset) return null;\n\n return (\n <div\n className={`relative h-full min-h-[300px] w-full overflow-hidden rounded-${borderRadius}`}\n >\n {/* Background image or video */}\n <div className=\"absolute inset-0 h-full w-full\">\n <MediaRenderer\n src={asset.url}\n mediaType={asset.isVideo ? \"video\" : \"image\"}\n alt={featuredTitle || \"Featured\"}\n objectFit=\"cover\"\n autoplay={asset.isVideo}\n loop={asset.isVideo}\n muted={asset.isVideo}\n controls={false}\n />\n </div>\n\n {/* Dark overlay for better text readability */}\n <div className=\"absolute inset-0 bg-black/40\" />\n\n {/* Content overlay */}\n <div className=\"absolute inset-0 flex flex-col items-start justify-end p-8\">\n {featuredTitle && (\n <h3\n className={`mb-2 font-bold text-white text-${titleSize === \"md\" ? \"base\" : titleSize}`}\n >\n {featuredTitle}\n </h3>\n )}\n {featuredSubtitle && (\n <p\n className={`mb-4 text-${featuredSubtitleColor} text-${featuredSubtitleSize === \"md\" ? \"base\" : featuredSubtitleSize}`}\n >\n {featuredSubtitle}\n </p>\n )}\n {featuredButtonText && (\n <a\n href={featuredButtonUrl || \"#\"}\n className={`bg-white px-6 py-2 font-medium text-foreground transition-opacity hover:opacity-90 rounded-${borderRadius}`}\n >\n {featuredButtonText}\n </a>\n )}\n </div>\n </div>\n );\n };\n\n // Unordered List Renderer (Grid Layout)\n const renderUnorderedList = () => {\n const gridClass = getResponsiveGridClass(columns);\n\n return (\n <div className={`grid ${gridClass} gap-${gapValues[gap]}`}>\n {displayItems.map((item) => {\n const imageUrl = getImageUrl(item);\n const aspectRatioClass = getAspectRatioClass(imageAspectRatio);\n\n return (\n <div\n key={item.id}\n className={`relative rounded-${borderRadius} overflow-hidden bg-background shadow-sm transition-shadow hover:shadow-md`}\n >\n {showBadge && item.discount && (\n <div className=\"absolute top-2 right-2 z-10 rounded-md bg-destructive px-2 py-1 text-xs font-bold text-destructive-foreground\">\n {getStringValue(item.discount)}\n </div>\n )}\n {showFavorite && (\n <button className=\"absolute top-2 left-2 z-10 rounded-full bg-background/80 p-2 backdrop-blur-sm transition-colors hover:bg-background\">\n <svg\n className=\"h-5 w-5 text-muted-foreground\"\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z\"\n />\n </svg>\n </button>\n )}\n {imageUrl && (\n <div className={`w-full ${aspectRatioClass} overflow-hidden`}>\n <img\n src={imageUrl}\n alt={item.title || \"Product\"}\n className=\"h-full w-full object-cover\"\n />\n </div>\n )}\n <div className={`p-${padding}`}>\n {item.title && (\n <h3\n className={`text-${itemTitleColor} text-${itemTitleSize === \"md\" ? \"base\" : itemTitleSize} mb-1 font-semibold`}\n >\n {getTextContent(item.title)}\n </h3>\n )}\n {item.description && (\n <p\n className={`text-${descriptionColor} text-${descriptionSize === \"md\" ? \"base\" : descriptionSize} mb-2`}\n >\n {getTextContent(item.description)}\n </p>\n )}\n <div className=\"flex items-center gap-2\">\n {item.price && (\n <span\n className={`text-${priceColor} text-${priceSize === \"md\" ? \"base\" : priceSize} font-bold`}\n >\n {getStringValue(item.price)}\n </span>\n )}\n {item.originalPrice && (\n <span\n className={`text-${originalPriceColor} text-${descriptionSize === \"md\" ? \"base\" : descriptionSize} line-through`}\n >\n {getStringValue(item.originalPrice)}\n </span>\n )}\n </div>\n {showMetaText && (item.qv || item.cv) && (\n <div\n className={`mt-2 flex gap-3 text-${metaTextColor} text-${metaTextSize === \"md\" ? \"base\" : metaTextSize}`}\n >\n {item.qv && <span>QV: {getStringValue(item.qv)}</span>}\n {item.cv && <span>CV: {getStringValue(item.cv)}</span>}\n </div>\n )}\n </div>\n </div>\n );\n })}\n </div>\n );\n };\n\n // Ordered List Renderer (Numbered Items with Scroll)\n const renderOrderedList = () => {\n const isHorizontal = scrollAxis === \"horizontal\";\n const isVertical = scrollAxis === \"vertical\";\n\n if (isHorizontal) {\n return (\n <div className=\"relative\">\n <div\n ref={scrollContainerRef}\n className={`flex gap-${gapValues[gap]} scrollbar-hide overflow-x-auto scroll-smooth`}\n >\n {displayItems.map((item, index) => {\n const imageUrl = getImageUrl(item);\n const aspectRatioClass = getAspectRatioClass(imageAspectRatio);\n\n return (\n <div\n key={item.id}\n className={`relative w-[300px] flex-shrink-0`}\n >\n {/* Huge number behind the card */}\n <div\n className={`absolute top-0 left-0 text-${numberColor} z-0 leading-none font-bold opacity-20`}\n style={{ fontSize: largeNumberSizes[numberSize] }}\n >\n {index + 1}\n </div>\n\n {/* Card content - positioned on top with margin to show number */}\n <div\n className={`relative z-10 ml-20 rounded-${borderRadius} overflow-hidden bg-background shadow-sm transition-shadow hover:shadow-md`}\n >\n {showBadge && item.discount && (\n <div className=\"absolute top-2 right-2 z-10 rounded-md bg-destructive px-2 py-1 text-xs font-bold text-destructive-foreground\">\n {getStringValue(item.discount)}\n </div>\n )}\n {showFavorite && (\n <button className=\"absolute top-2 left-2 z-10 rounded-full bg-background/80 p-2 backdrop-blur-sm transition-colors hover:bg-background\">\n <svg\n className=\"h-5 w-5 text-muted-foreground\"\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z\"\n />\n </svg>\n </button>\n )}\n {imageUrl && (\n <div\n className={`w-full ${aspectRatioClass} overflow-hidden`}\n >\n <img\n src={imageUrl}\n alt={item.title || \"Product\"}\n className=\"h-full w-full object-cover\"\n />\n </div>\n )}\n <div className={`p-${padding}`}>\n {item.title && (\n <h3\n className={`text-${itemTitleColor} text-${itemTitleSize === \"md\" ? \"base\" : itemTitleSize} mb-1 font-semibold`}\n >\n {getTextContent(item.title)}\n </h3>\n )}\n {item.description && (\n <p\n className={`text-${descriptionColor} text-${descriptionSize === \"md\" ? \"base\" : descriptionSize} mb-2`}\n >\n {getTextContent(item.description)}\n </p>\n )}\n <div className=\"flex items-center gap-2\">\n {item.price && (\n <span\n className={`text-${priceColor} text-${priceSize === \"md\" ? \"base\" : priceSize} font-bold`}\n >\n {getStringValue(item.price)}\n </span>\n )}\n {item.originalPrice && (\n <span\n className={`text-${originalPriceColor} text-${descriptionSize === \"md\" ? \"base\" : descriptionSize} line-through`}\n >\n {getStringValue(item.originalPrice)}\n </span>\n )}\n </div>\n {showMetaText && (item.qv || item.cv) && (\n <div\n className={`mt-2 flex gap-3 text-${metaTextColor} text-${metaTextSize === \"md\" ? \"base\" : metaTextSize}`}\n >\n {item.qv && (\n <span>QV: {getStringValue(item.qv)}</span>\n )}\n {item.cv && (\n <span>CV: {getStringValue(item.cv)}</span>\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n );\n })}\n </div>\n\n {/* Navigation arrows */}\n <div\n className={`absolute inset-x-0 top-1/2 z-20 flex w-full -translate-y-1/2 items-center justify-between px-8`}\n >\n <ScrollArrows\n onPrevious={() => scrollByAmount(\"prev\")}\n onNext={() => scrollByAmount(\"next\")}\n />\n </div>\n </div>\n );\n }\n\n if (isVertical) {\n return (\n <div className={`flex flex-col gap-${gapValues[gap]}`}>\n {displayItems.map((item, index) => {\n const imageUrl = getImageUrl(item);\n\n return (\n <div\n key={item.id}\n className={`relative flex gap-${gapValues[gap]} rounded-${borderRadius} overflow-hidden bg-background shadow-sm transition-shadow hover:shadow-md ${`p-${padding}`}`}\n >\n <div\n className={`flex-shrink-0 text-${numberColor} text-${numberSize === \"md\" ? \"base\" : numberSize} flex w-16 items-center justify-center font-bold`}\n >\n {index + 1}\n </div>\n {imageUrl && (\n <div className=\"h-24 w-24 flex-shrink-0 overflow-hidden rounded-md\">\n <img\n src={imageUrl}\n alt={item.title || \"Product\"}\n className=\"h-full w-full object-cover\"\n />\n </div>\n )}\n <div className=\"flex-1\">\n {item.title && (\n <h3\n className={`text-${itemTitleColor} text-${itemTitleSize === \"md\" ? \"base\" : itemTitleSize} mb-1 font-semibold`}\n >\n {getTextContent(item.title)}\n </h3>\n )}\n {item.description && (\n <p\n className={`text-${descriptionColor} text-${descriptionSize === \"md\" ? \"base\" : descriptionSize} mb-2`}\n >\n {getTextContent(item.description)}\n </p>\n )}\n <div className=\"flex items-center gap-2\">\n {item.price && (\n <span\n className={`text-${priceColor} text-${priceSize === \"md\" ? \"base\" : priceSize} font-bold`}\n >\n {getStringValue(item.price)}\n </span>\n )}\n {item.originalPrice && (\n <span\n className={`text-${originalPriceColor} text-${descriptionSize === \"md\" ? \"base\" : descriptionSize} line-through`}\n >\n {getStringValue(item.originalPrice)}\n </span>\n )}\n </div>\n {showMetaText && (item.qv || item.cv) && (\n <div\n className={`mt-2 flex gap-3 text-${metaTextColor} text-${metaTextSize === \"md\" ? \"base\" : metaTextSize}`}\n >\n {item.qv && <span>QV: {getStringValue(item.qv)}</span>}\n {item.cv && <span>CV: {getStringValue(item.cv)}</span>}\n </div>\n )}\n </div>\n {showBadge && item.discount && (\n <div className=\"absolute top-2 right-2 rounded-md bg-destructive px-2 py-1 text-xs font-bold text-destructive-foreground\">\n {getStringValue(item.discount)}\n </div>\n )}\n {showFavorite && (\n <button className=\"absolute top-2 right-12 rounded-full bg-background/80 p-2 backdrop-blur-sm transition-colors hover:bg-background\">\n <svg\n className=\"h-5 w-5 text-muted-foreground\"\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z\"\n />\n </svg>\n </button>\n )}\n </div>\n );\n })}\n </div>\n );\n }\n\n return null;\n };\n\n // Check if there's actually a featured asset to show\n const hasFeaturedAsset = getFeaturedAssetUrl(featuredAsset);\n const shouldShowFeaturedSection = showFeaturedSection && hasFeaturedAsset;\n\n // Background styling\n const backgroundColor = background.color || \"background\";\n const backgroundImage =\n (background.resource?.image_url || background.resource?.imageUrl) &&\n background.type === \"image\"\n ? `url(${background.resource.image_url || background.resource.imageUrl})`\n : \"none\";\n\n return (\n <div\n className={`@container bg-${backgroundColor} ${className}`}\n style={{ backgroundImage }}\n {...props}\n >\n {titleEnabled && title && (\n <h2\n className={`text-${titleColor} text-${titleSize === \"md\" ? \"base\" : titleSize} mb-6 font-bold`}\n >\n {title}\n </h2>\n )}\n {!hasItems ? (\n <div className=\"flex items-center justify-center rounded-md border-2 border-dashed border-border bg-muted py-12 text-center\">\n <p className=\"text-muted\">No items to display</p>\n </div>\n ) : shouldShowFeaturedSection ? (\n <div className=\"flex flex-col gap-4 @lg:flex-row @lg:gap-6\">\n {/* Featured section - full height standalone, left on desktop, top on mobile */}\n <div className=\"w-full @lg:w-[45%]\">{renderFeaturedSection()}</div>\n\n {/* List content - right on desktop, bottom on mobile */}\n <div className=\"w-full @lg:w-[55%]\">\n {listType === \"unordered\"\n ? renderUnorderedList()\n : renderOrderedList()}\n </div>\n </div>\n ) : listType === \"unordered\" ? (\n renderUnorderedList()\n ) : (\n renderOrderedList()\n )}\n </div>\n );\n}\n\nexport const listWidgetPropertySchema: WidgetPropertySchema = {\n widgetType: \"ListWidget\",\n displayName: \"List\",\n tabsConfig: [\n { id: \"styling\", label: \"Styling\" },\n { id: \"data\", label: \"Data\" },\n ],\n dataSourceTargetProps: [\"items\"],\n fields: [\n // Styling tab - Title group\n {\n key: \"titleEnabled\",\n label: \"Widget Title\",\n type: \"boolean\",\n description: \"Enable the title displayed above the list\",\n defaultValue: true,\n tab: \"styling\",\n group: \"Title\",\n },\n {\n key: \"title\",\n label: \"Title\",\n type: \"text\",\n description: \"Header text for the list\",\n defaultValue: \"List\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n },\n getFontSizeField({\n key: \"titleSize\",\n label: \"Title Font Size\",\n description: \"Size of the list title\",\n defaultValue: \"xl\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n getColorField({\n key: \"titleColor\",\n label: \"Title Color\",\n description: \"Color for the list title\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n\n // Styling tab - Design group\n getPaddingField({\n key: \"padding\",\n label: \"Padding\",\n description: \"Padding inside the container\",\n defaultValue: 4,\n tab: \"styling\",\n group: \"Design\",\n }),\n getBorderRadiusField({\n key: \"borderRadius\",\n label: \"Border Radius\",\n description: \"Rounded corners for the container and images\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Design\",\n }),\n getGapField({\n key: \"gap\",\n label: \"Gap\",\n description: \"Spacing between items\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Design\",\n }),\n {\n type: \"background\",\n defaultValue: \"background\",\n key: \"background\",\n label: \"Background\",\n description: \"Background color or image for the widget\",\n tab: \"styling\",\n group: \"Design\",\n },\n\n // Styling tab - List Configuration group\n {\n key: \"listType\",\n label: \"List Type\",\n type: \"select\",\n description: \"Type of list layout\",\n defaultValue: \"unordered\",\n options: [\n { label: \"Unordered (Grid)\", value: \"unordered\" },\n { label: \"Ordered (Numbered)\", value: \"ordered\" },\n ],\n tab: \"styling\",\n group: \"List Configuration\",\n },\n {\n key: \"maxItems\",\n label: \"Max Items\",\n type: \"number\",\n description: \"Maximum number of items to display\",\n min: 1,\n max: 100,\n step: 1,\n defaultValue: 12,\n tab: \"styling\",\n group: \"List Configuration\",\n },\n {\n key: \"imageAspectRatio\",\n label: \"Image Aspect Ratio\",\n type: \"buttonGroup\",\n description: \"Aspect ratio for item images\",\n defaultValue: \"square\",\n options: [\n { label: \"Square\", value: \"square\" },\n { label: \"Landscape\", value: \"landscape\" },\n { label: \"Portrait\", value: \"portrait\" },\n ],\n tab: \"styling\",\n group: \"List Configuration\",\n },\n {\n key: \"showBadge\",\n label: \"Show Discount Badge\",\n type: \"boolean\",\n description: \"Display discount badge on images\",\n defaultValue: true,\n tab: \"styling\",\n group: \"List Configuration\",\n },\n {\n key: \"showFavorite\",\n label: \"Show Favorite Icon\",\n type: \"boolean\",\n description: \"Display favorite/heart icon on images\",\n defaultValue: true,\n tab: \"styling\",\n group: \"List Configuration\",\n },\n {\n key: \"showMetaText\",\n label: \"Show QV/CV Text\",\n type: \"boolean\",\n description: \"Display QV and CV values\",\n defaultValue: true,\n tab: \"styling\",\n group: \"List Configuration\",\n },\n\n // Styling tab - Unordered List Configuration\n {\n key: \"columns\",\n label: \"Grid Columns\",\n type: \"number\",\n description: \"Number of columns in the grid (unordered list only)\",\n min: 1,\n max: 6,\n step: 1,\n defaultValue: 3,\n tab: \"styling\",\n group: \"Unordered List Configuration\",\n requiresKeyValue: { key: \"listType\", value: \"unordered\" },\n },\n\n // Styling tab - Ordered List Configuration\n {\n key: \"scrollAxis\",\n label: \"Scroll Direction\",\n type: \"select\",\n description: \"Direction for ordered list scrolling\",\n defaultValue: \"horizontal\",\n options: [\n { label: \"Horizontal\", value: \"horizontal\" },\n { label: \"Vertical\", value: \"vertical\" },\n ],\n tab: \"styling\",\n group: \"Ordered List Configuration\",\n requiresKeyValue: { key: \"listType\", value: \"ordered\" },\n },\n getColorField({\n key: \"numberColor\",\n label: \"Number Color\",\n description: \"Color for ordered list numbers\",\n defaultValue: \"primary\",\n tab: \"styling\",\n group: \"Ordered List Configuration\",\n requiresKeyValue: { key: \"listType\", value: \"ordered\" },\n }),\n getFontSizeField({\n key: \"numberSize\",\n label: \"Number Font Size\",\n description: \"Size of ordered list numbers\",\n defaultValue: \"2xl\",\n tab: \"styling\",\n group: \"Ordered List Configuration\",\n requiresKeyValue: { key: \"listType\", value: \"ordered\" },\n }),\n\n // Styling tab - Item Styling group\n getColorField({\n key: \"itemTitleColor\",\n label: \"Item Title Color\",\n description: \"Color for item titles\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n getFontSizeField({\n key: \"itemTitleSize\",\n label: \"Item Title Font Size\",\n description: \"Size of item titles\",\n defaultValue: \"sm\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n {\n key: \"separator2\",\n type: \"separator\",\n label: \"Separator\",\n tab: \"styling\",\n group: \"Item Styling\",\n },\n getColorField({\n key: \"priceColor\",\n label: \"Price Color\",\n description: \"Color for prices\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n getFontSizeField({\n key: \"priceSize\",\n label: \"Price Font Size\",\n description: \"Size of prices\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n getColorField({\n key: \"originalPriceColor\",\n label: \"Original Price Color\",\n description: \"Color for crossed-out original prices\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n {\n key: \"separator3\",\n type: \"separator\",\n label: \"Separator\",\n tab: \"styling\",\n group: \"Item Styling\",\n },\n getColorField({\n key: \"metaTextColor\",\n label: \"Meta Text Color\",\n description: \"Color for QV/CV text\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n getFontSizeField({\n key: \"metaTextSize\",\n label: \"Meta Text Font Size\",\n description: \"Size of QV/CV text\",\n defaultValue: \"xs\",\n tab: \"styling\",\n group: \"Item Styling\",\n }),\n\n // Styling tab - Featured Section group\n {\n key: \"showFeaturedSection\",\n label: \"Show Featured Section\",\n type: \"boolean\",\n description: \"Display a featured content section\",\n defaultValue: false,\n tab: \"styling\",\n group: \"Featured Section\",\n },\n {\n key: \"featuredAsset\",\n label: \"Featured Asset\",\n type: \"resource\",\n description:\n \"Select a single image or video resource for the featured section\",\n tab: \"styling\",\n group: \"Featured Section\",\n allowedTypes: [\"Medium\"],\n requiresKeyToBeTrue: \"showFeaturedSection\",\n },\n {\n key: \"featuredTitle\",\n label: \"Featured Title\",\n type: \"text\",\n description: \"Title for featured section\",\n tab: \"styling\",\n group: \"Featured Section\",\n requiresKeyToBeTrue: \"showFeaturedSection\",\n },\n {\n key: \"featuredSubtitle\",\n label: \"Featured Subtitle\",\n type: \"text\",\n description: \"Subtitle for featured section\",\n tab: \"styling\",\n group: \"Featured Section\",\n requiresKeyToBeTrue: \"showFeaturedSection\",\n },\n {\n key: \"featuredButtonText\",\n label: \"Featured Button Text\",\n type: \"text\",\n description: \"Text for featured section button\",\n tab: \"styling\",\n group: \"Featured Section\",\n requiresKeyToBeTrue: \"showFeaturedSection\",\n },\n {\n key: \"featuredButtonUrl\",\n label: \"Featured Button URL\",\n type: \"text\",\n description: \"URL for featured section button\",\n tab: \"styling\",\n group: \"Featured Section\",\n requiresKeyToBeTrue: \"showFeaturedSection\",\n },\n getColorField({\n key: \"featuredSubtitleColor\",\n label: \"Featured Subtitle Color\",\n description: \"Color for featured subtitle\",\n defaultValue: \"background\",\n tab: \"styling\",\n group: \"Featured Section\",\n requiresKeyToBeTrue: \"showFeaturedSection\",\n }),\n getFontSizeField({\n key: \"featuredSubtitleSize\",\n label: \"Featured Subtitle Font Size\",\n description: \"Size of featured subtitle\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Featured Section\",\n requiresKeyToBeTrue: \"showFeaturedSection\",\n }),\n\n // Data tab - Data Configuration\n {\n key: \"dataSource\",\n label: \"Data Source\",\n type: \"dataSource\",\n description: \"\",\n tab: \"data\",\n group: \"Data Configuration\",\n },\n ],\n itemConfigSchema: {\n description: \"Configure settings for this list item\",\n fields: [\n {\n key: \"title\",\n label: \"Custom Title\",\n type: \"text\",\n description: \"Override the item's title\",\n },\n {\n key: \"description\",\n label: \"Custom Description\",\n type: \"textarea\",\n description: \"Override the item's description\",\n rows: 3,\n },\n {\n key: \"price\",\n label: \"Price\",\n type: \"text\",\n description: \"Current price\",\n },\n {\n key: \"originalPrice\",\n label: \"Original Price\",\n type: \"text\",\n description: \"Original price (will be crossed out)\",\n },\n {\n key: \"discount\",\n label: \"Discount Badge\",\n type: \"text\",\n description: \"Discount text (e.g., '40% Off')\",\n },\n {\n key: \"qv\",\n label: \"QV Value\",\n type: \"text\",\n description: \"Qualifying Volume value\",\n },\n {\n key: \"cv\",\n label: \"CV Value\",\n type: \"text\",\n description: \"Commission Volume value\",\n },\n {\n key: \"image\",\n label: \"Image URL\",\n type: \"text\",\n description: \"Custom image URL for this item\",\n },\n ],\n },\n} as const satisfies WidgetPropertySchema;\n"]}
|
|
@@ -7,8 +7,9 @@ var chunkCM7D7WGL_cjs = require('./chunk-CM7D7WGL.cjs');
|
|
|
7
7
|
var react = require('react');
|
|
8
8
|
var jsxRuntime = require('react/jsx-runtime');
|
|
9
9
|
|
|
10
|
+
var DEFAULT_SLIDES = [];
|
|
10
11
|
function CarouselWidget({
|
|
11
|
-
slides =
|
|
12
|
+
slides = DEFAULT_SLIDES,
|
|
12
13
|
autoScrollInterval = 3e3,
|
|
13
14
|
enableAutoScroll = false,
|
|
14
15
|
carouselHeight = 400,
|
|
@@ -475,5 +476,5 @@ var carouselWidgetPropertySchema = {
|
|
|
475
476
|
|
|
476
477
|
exports.CarouselWidget = CarouselWidget;
|
|
477
478
|
exports.carouselWidgetPropertySchema = carouselWidgetPropertySchema;
|
|
478
|
-
//# sourceMappingURL=chunk-
|
|
479
|
-
//# sourceMappingURL=chunk-
|
|
479
|
+
//# sourceMappingURL=chunk-B5S5Q57S.cjs.map
|
|
480
|
+
//# sourceMappingURL=chunk-B5S5Q57S.cjs.map
|