@clikvn/showroom-visualizer 0.2.3-dev-01 → 0.2.3-dev-03

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/.idea/inspectionProfiles/Project_Default.xml +36 -0
  2. package/.idea/jsLinters/eslint.xml +7 -0
  3. package/.idea/misc.xml +9 -0
  4. package/.idea/modules.xml +8 -0
  5. package/.idea/prettier.xml +8 -0
  6. package/.idea/showroom-visualizer.iml +9 -0
  7. package/.idea/vcs.xml +6 -0
  8. package/DEVELOPMENT.md +120 -0
  9. package/EXAMPLES.md +967 -0
  10. package/README.md +133 -26
  11. package/SETUP_COMPLETE.md +149 -0
  12. package/base.json +21 -21
  13. package/dist/commons/SkinLayer/components/Button/index.d.ts +4 -4
  14. package/dist/commons/SkinLayer/components/Button/index.d.ts.map +1 -1
  15. package/dist/components/SkinLayer/DefaultLayout/index.d.ts +8 -0
  16. package/dist/components/SkinLayer/DefaultLayout/index.d.ts.map +1 -0
  17. package/dist/components/SkinLayer/Floorplan/Map.d.ts.map +1 -1
  18. package/dist/components/SkinLayer/Floorplan/Minimap/MiniMapMarker.d.ts.map +1 -1
  19. package/dist/components/SkinLayer/Floorplan/Minimap/index.d.ts.map +1 -1
  20. package/dist/components/SkinLayer/GalleryFullScreen/Content/ARViewer.d.ts +30 -0
  21. package/dist/components/SkinLayer/GalleryFullScreen/Content/ARViewer.d.ts.map +1 -0
  22. package/dist/components/SkinLayer/HotspotCategorySlideIn/index.d.ts.map +1 -1
  23. package/dist/components/SkinLayer/HotspotOverview/index.d.ts +1 -0
  24. package/dist/components/SkinLayer/HotspotOverview/index.d.ts.map +1 -1
  25. package/dist/components/SkinLayer/Layout/index.d.ts.map +1 -1
  26. package/dist/components/SkinLayer/ModalItemInfo/Description.d.ts +10 -0
  27. package/dist/components/SkinLayer/ModalItemInfo/Description.d.ts.map +1 -0
  28. package/dist/components/SkinLayer/ModalItemInfo/Intro.d.ts +9 -0
  29. package/dist/components/SkinLayer/ModalItemInfo/Intro.d.ts.map +1 -0
  30. package/dist/components/SkinLayer/ModalItemInfo/Media.d.ts +13 -0
  31. package/dist/components/SkinLayer/ModalItemInfo/Media.d.ts.map +1 -0
  32. package/dist/components/SkinLayer/ModalItemInfo/index.d.ts +10 -0
  33. package/dist/components/SkinLayer/ModalItemInfo/index.d.ts.map +1 -0
  34. package/dist/components/SkinLayer/PinActionButtons/index.d.ts.map +1 -1
  35. package/dist/components/SkinLayer/PoiTextureOptions/HorizontalMenu/index.d.ts +13 -0
  36. package/dist/components/SkinLayer/PoiTextureOptions/HorizontalMenu/index.d.ts.map +1 -0
  37. package/dist/components/SkinLayer/PoiTextureOptions/SemicircleMenu/index.d.ts +13 -0
  38. package/dist/components/SkinLayer/PoiTextureOptions/SemicircleMenu/index.d.ts.map +1 -0
  39. package/dist/components/SkinLayer/PoiTextureOptions/TextureMenuItem/index.d.ts +15 -0
  40. package/dist/components/SkinLayer/PoiTextureOptions/TextureMenuItem/index.d.ts.map +1 -0
  41. package/dist/components/SkinLayer/PoiTextureOptions/VerticalMenu/index.d.ts +13 -0
  42. package/dist/components/SkinLayer/PoiTextureOptions/VerticalMenu/index.d.ts.map +1 -0
  43. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/DisplayActionPart/index.d.ts.map +1 -1
  44. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/HelpActionPart.d.ts.map +1 -1
  45. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/PoiInfoActionPart/index.d.ts.map +1 -1
  46. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/PromotionPart/index.d.ts.map +1 -1
  47. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/ScenariosPart/index.d.ts.map +1 -1
  48. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/TourInfoActionPart.d.ts.map +1 -1
  49. package/dist/components/SkinLayer/SearchAndDiscoverySlideIn/index.d.ts.map +1 -1
  50. package/dist/components/SkinLayer/index.d.ts +47 -0
  51. package/dist/components/SkinLayer/index.d.ts.map +1 -1
  52. package/dist/context/CustomLayoutContext.d.ts +20 -0
  53. package/dist/context/CustomLayoutContext.d.ts.map +1 -0
  54. package/dist/context/StoreContext.d.ts +5 -0
  55. package/dist/context/StoreContext.d.ts.map +1 -0
  56. package/dist/features/ShowroomVisualizer/Scripts.d.ts +4 -0
  57. package/dist/features/ShowroomVisualizer/Scripts.d.ts.map +1 -0
  58. package/dist/features/ShowroomVisualizer/TourContainer.d.ts +9 -0
  59. package/dist/features/ShowroomVisualizer/TourContainer.d.ts.map +1 -0
  60. package/dist/features/ShowroomVisualizer/Tours.d.ts +3 -0
  61. package/dist/features/ShowroomVisualizer/Tours.d.ts.map +1 -0
  62. package/dist/features/ShowroomVisualizer/VirtualTour.d.ts +5 -0
  63. package/dist/features/ShowroomVisualizer/VirtualTour.d.ts.map +1 -1
  64. package/dist/features/ShowroomVisualizer/VirtualTourContainer.d.ts +4 -3
  65. package/dist/features/ShowroomVisualizer/VirtualTourContainer.d.ts.map +1 -1
  66. package/dist/features/ShowroomVisualizer/index.d.ts +24 -3
  67. package/dist/features/ShowroomVisualizer/index.d.ts.map +1 -1
  68. package/dist/fonts/icomoon.svg +633 -633
  69. package/dist/hooks/Visualizer/reducer.d.ts +116 -0
  70. package/dist/hooks/Visualizer/reducer.d.ts.map +1 -0
  71. package/dist/hooks/headless/index.d.ts +150 -0
  72. package/dist/hooks/headless/index.d.ts.map +1 -0
  73. package/dist/hooks/headless/useFloorplanControl.d.ts +18 -0
  74. package/dist/hooks/headless/useFloorplanControl.d.ts.map +1 -0
  75. package/dist/hooks/headless/usePOIInteraction.d.ts +23 -0
  76. package/dist/hooks/headless/usePOIInteraction.d.ts.map +1 -0
  77. package/dist/hooks/headless/useScenarioControl.d.ts +22 -0
  78. package/dist/hooks/headless/useScenarioControl.d.ts.map +1 -0
  79. package/dist/hooks/headless/useSceneNavigation.d.ts +26 -0
  80. package/dist/hooks/headless/useSceneNavigation.d.ts.map +1 -0
  81. package/dist/hooks/headless/useTourCore.d.ts +23 -0
  82. package/dist/hooks/headless/useTourCore.d.ts.map +1 -0
  83. package/dist/hooks/headless/useViewportControl.d.ts +22 -0
  84. package/dist/hooks/headless/useViewportControl.d.ts.map +1 -0
  85. package/dist/hooks/useToolConfig.d.ts.map +1 -1
  86. package/dist/index.d.ts +11 -0
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.html +102 -27
  89. package/dist/index.js +1 -0
  90. package/dist/register.d.ts +3 -0
  91. package/dist/register.d.ts.map +1 -1
  92. package/dist/types/SkinLayer/tool.type.d.ts +6 -0
  93. package/dist/types/SkinLayer/tool.type.d.ts.map +1 -1
  94. package/dist/types/SkinLayer/visualizer.type.d.ts +3 -0
  95. package/dist/types/SkinLayer/visualizer.type.d.ts.map +1 -1
  96. package/dist/types/custom-layout.d.ts +167 -0
  97. package/dist/types/custom-layout.d.ts.map +1 -0
  98. package/dist/web.d.ts.map +1 -1
  99. package/dist/web.js +1 -1
  100. package/example/CSS_HANDLING.md +141 -0
  101. package/example/FIXES_SUMMARY.md +121 -0
  102. package/example/PATH_ALIASES.md +103 -0
  103. package/example/README.md +64 -0
  104. package/example/index.html +13 -0
  105. package/example/package.json +25 -0
  106. package/example/postcss.config.cjs +6 -0
  107. package/example/tailwind.config.cjs +12 -0
  108. package/example/tsconfig.node.json +12 -0
  109. package/example/vite.config.ts +126 -0
  110. package/package.json +9 -1
  111. package/rollup.config.js +334 -4
  112. package/tailwind.config.cjs +151 -151
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/PromotionPart/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAmC,MAAM,OAAO,CAAC;AAIvE,KAAK,kBAAkB,GAAG;IACxB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;CAC1D,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CA+IzC,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/PromotionPart/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAmC,MAAM,OAAO,CAAC;AAKvE,KAAK,kBAAkB,GAAG;IACxB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;CAC1D,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAuJzC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/ScenariosPart/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAajF,KAAK,iBAAiB,GAAG;IACvB,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;CAC1D,CAAC;AAEF,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAgFvC,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/ScenariosPart/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAcjF,KAAK,iBAAiB,GAAG;IACvB,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;CAC1D,CAAC;AAEF,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAuFvC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TourInfoActionPart.d.ts","sourceRoot":"","sources":["../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/TourInfoActionPart.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAU3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAIjF,KAAK,uBAAuB,GAAG;IAC7B,WAAW,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;CAC1D,CAAC;AAEF,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,uBAAuB,CA8EnD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"TourInfoActionPart.d.ts","sourceRoot":"","sources":["../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/TourInfoActionPart.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAU3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAKjF,KAAK,uBAAuB,GAAG;IAC7B,WAAW,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAS,CAAC;CAC1D,CAAC;AAEF,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,uBAAuB,CAsFnD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/index.tsx"],"names":[],"mappings":"AAwQA,MAAM,CAAC,OAAO,UAAU,UAAU,4CAQjC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SkinLayer/SearchAndDiscoverySlideIn/index.tsx"],"names":[],"mappings":"AAqSA,MAAM,CAAC,OAAO,UAAU,UAAU,4CAQjC"}
@@ -1,2 +1,49 @@
1
+ /**
2
+ * SkinLayer Components Export
3
+ *
4
+ * Export tất cả components để người dùng có thể compose custom UI
5
+ */
1
6
  export { default as Layout } from './Layout';
7
+ export { default as DefaultLayout } from './DefaultLayout';
8
+ export { default as PinActions } from './PinActionButtons';
9
+ export { default as ButtonWithTooltip } from './PinActionButtons/ButtonWithTooltip';
10
+ export { default as ActionsChangeScene } from './ActionsChangeScene';
11
+ export { SceneCategories } from './SceneCategories';
12
+ export { Floorplan } from './Floorplan';
13
+ export { default as ScenarioList } from './ScenarioList';
14
+ export { TourScenarios } from './TourScenarios';
15
+ export { default as AGTProgressBar } from './AGTProgressBar';
16
+ export { default as HotspotActive } from './HotspotActive';
17
+ export { default as HotspotOverview } from './HotspotOverview';
18
+ export { default as HotspotCategorySlideIn } from './HotspotCategorySlideIn';
19
+ export { default as ScenarioSlideIn } from './HotspotCategorySlideIn/ScenarioSlideIn';
20
+ export { default as SpaceAndSceneSlideIn } from './HotspotCategorySlideIn/SpaceAndSceneSlideIn';
21
+ export { default as FeatureSlideIn } from './HotspotCategorySlideIn/FeatureSlideIn';
22
+ export { default as ProductSlideIn } from './HotspotCategorySlideIn/ProductSlideIn';
23
+ export { default as PoiSlideIn } from './HotspotCategorySlideIn/PoiSlideIn';
24
+ export { default as PoiDetailSlideIn } from './PoiDetailSlideIn';
25
+ export { PoiMovingPreview } from './PoiMovingPreview';
26
+ export { default as PoiTextureOptions } from './PoiTextureOptions';
27
+ export { ModalPopupPoi } from './ModalPoi';
28
+ export { ModalPopupPromotion } from './ModalPromotion';
29
+ export { ModalGuide } from './ModalGuide';
30
+ export { default as PlayBar } from './PlayBar';
31
+ export { default as PlayListSlideIn } from './PlayListSlideIn';
32
+ export { default as GalleryFullScreen } from './GalleryFullScreen';
33
+ export { default as SearchAndDiscoverySlideIn } from './SearchAndDiscoverySlideIn';
34
+ export { default as TourInfoActionPart } from './SearchAndDiscoverySlideIn/TourInfoActionPart';
35
+ export { default as ScenarioPart } from './SearchAndDiscoverySlideIn/ScenariosPart';
36
+ export { default as PromotionPart } from './SearchAndDiscoverySlideIn/PromotionPart';
37
+ export { default as PoiInfoActionPart } from './SearchAndDiscoverySlideIn/PoiInfoActionPart';
38
+ export { default as DisplayActionPart } from './SearchAndDiscoverySlideIn/DisplayActionPart';
39
+ export { default as HelpActionPart } from './SearchAndDiscoverySlideIn/HelpActionPart';
40
+ export { ContentItem } from './SearchAndDiscoverySlideIn/ContentItem';
41
+ export { ScenarioItem } from './SearchAndDiscoverySlideIn/ScenariosPart/Item';
42
+ export { ContentItemLanguage } from './SearchAndDiscoverySlideIn/ContentItemLanguage';
43
+ export { default as CardItem } from '../../commons/SkinLayer/components/CardItemGroup/Item';
44
+ export { default as LogoAndTitle } from './LogoAndTitle';
45
+ export { default as Joystick } from './Joystick';
46
+ export { Guide } from './Guide';
47
+ export { default as UnmuteButton } from './UnmuteButton';
48
+ export { default as LoadingScreen } from './LoadingScreen';
2
49
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SkinLayer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SkinLayer/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { ComponentType, ReactNode } from 'react';
2
+ import { CustomLayoutConfig } from '../types/custom-layout';
3
+ type CustomLayoutContextType = {
4
+ customLayout: CustomLayoutConfig;
5
+ getCustomComponent: <T = unknown>(path: string[], defaultComponent: ComponentType<T>) => ComponentType<T>;
6
+ };
7
+ /**
8
+ * Hook để access custom layout configuration
9
+ */
10
+ export declare const useCustomLayout: () => CustomLayoutContextType;
11
+ type Props = {
12
+ customLayout?: CustomLayoutConfig;
13
+ children: ReactNode;
14
+ };
15
+ /**
16
+ * CustomLayoutProvider - Wrap app với provider này để enable component overrides
17
+ */
18
+ export declare const CustomLayoutProvider: React.FC<Props>;
19
+ export {};
20
+ //# sourceMappingURL=CustomLayoutContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomLayoutContext.d.ts","sourceRoot":"","sources":["../../src/context/CustomLayoutContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,SAAS,EAKV,MAAM,OAAO,CAAC;AACf,OAAO,EACL,kBAAkB,EAEnB,MAAM,wBAAwB,CAAC;AAEhC,KAAK,uBAAuB,GAAG;IAC7B,YAAY,EAAE,kBAAkB,CAAC;IACjC,kBAAkB,EAAE,CAAC,CAAC,GAAG,OAAO,EAC9B,IAAI,EAAE,MAAM,EAAE,EACd,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC,KAC/B,aAAa,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AAOF;;GAEG;AACH,eAAO,MAAM,eAAe,+BAAwC,CAAC;AAErE,KAAK,KAAK,GAAG;IACX,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAwChD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { StoreData } from '../types/SkinLayer';
3
+ declare const StoreContext: React.Context<StoreData | null>;
4
+ export default StoreContext;
5
+ //# sourceMappingURL=StoreContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StoreContext.d.ts","sourceRoot":"","sources":["../../src/context/StoreContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,QAAA,MAAM,YAAY,iCAA8C,CAAC;AAEjE,eAAe,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ declare const Scripts: FC;
3
+ export default Scripts;
4
+ //# sourceMappingURL=Scripts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Scripts.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/Scripts.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAa,MAAM,OAAO,CAAC;AAKtC,QAAA,MAAM,OAAO,EAAE,EAOd,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ type Props = {
3
+ mobile: boolean;
4
+ loaded: boolean;
5
+ code: string;
6
+ };
7
+ declare const TourContainer: FC<Props>;
8
+ export default TourContainer;
9
+ //# sourceMappingURL=TourContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourContainer.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/TourContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAI3B,KAAK,KAAK,GAAG;IACX,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,EAAE,CAAC,KAAK,CAS5B,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ export declare const Tours: FC;
3
+ //# sourceMappingURL=Tours.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tours.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/Tours.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,eAAO,MAAM,KAAK,EAAE,EAEnB,CAAC"}
@@ -1,6 +1,11 @@
1
1
  import { FC } from 'react';
2
2
  type Props = {
3
3
  code: string;
4
+ /**
5
+ * Disable UI hoàn toàn, chỉ render Visualizer
6
+ * Hữu ích khi muốn build UI hoàn toàn từ đầu ở component cha
7
+ */
8
+ disableDefaultUI?: boolean;
4
9
  };
5
10
  declare const VirtualTour: FC<Props>;
6
11
  export default VirtualTour;
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualTour.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/VirtualTour.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAK3B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,KAAK,CAS1B,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"VirtualTour.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/VirtualTour.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAM3B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,KAAK,CAqB1B,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,7 +1,8 @@
1
- import { FC } from 'react';
1
+ import React from 'react';
2
2
  type Props = {
3
3
  code: string;
4
+ disableDefaultUI?: boolean;
4
5
  };
5
- export declare const VirtualTourContainer: FC<Props>;
6
- export {};
6
+ declare const _default: React.NamedExoticComponent<Props>;
7
+ export default _default;
7
8
  //# sourceMappingURL=VirtualTourContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualTourContainer.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/VirtualTourContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAI3B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,KAAK,CAI1C,CAAC"}
1
+ {"version":3,"file":"VirtualTourContainer.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/VirtualTourContainer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;;AAcF,wBAAgD"}
@@ -1,5 +1,6 @@
1
- import { FC } from 'react';
1
+ import React from 'react';
2
2
  import { ProductType, VisualizerListenersType } from '../../types/SkinLayer';
3
+ import { CustomLayoutConfig } from '../../types/custom-layout';
3
4
  type VirtualTourVisualizerProps = {
4
5
  elementId?: string;
5
6
  apiHost?: string;
@@ -16,7 +17,27 @@ type VirtualTourVisualizerProps = {
16
17
  };
17
18
  listeners?: VisualizerListenersType;
18
19
  products?: ProductType[];
20
+ /**
21
+ * Disable default UI hoàn toàn
22
+ * Chỉ render tour engine, không có UI
23
+ * Hữu ích khi muốn build UI từ đầu ở ngoài component này
24
+ */
25
+ disableDefaultUI?: boolean;
26
+ /**
27
+ * Custom layout config - Override components theo cấu trúc object
28
+ * @example
29
+ * ```tsx
30
+ * customLayout={{
31
+ * Floorplan: {
32
+ * Minimap: {
33
+ * Marker: MyCustomMarker,
34
+ * },
35
+ * },
36
+ * }}
37
+ * ```
38
+ */
39
+ customLayout?: CustomLayoutConfig;
19
40
  };
20
- declare const ShowroomVisualizer: FC<VirtualTourVisualizerProps>;
21
- export default ShowroomVisualizer;
41
+ declare const _default: React.NamedExoticComponent<VirtualTourVisualizerProps>;
42
+ export default _default;
22
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,EAAE,EAKH,MAAM,OAAO,CAAC;AAUf,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAM7E,KAAK,0BAA0B,GAAG;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B,CAAC;AACF,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,0BAA0B,CAoRtD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/ShowroomVisualizer/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAON,MAAM,OAAO,CAAC;AAWf,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAM/D,KAAK,0BAA0B,GAAG;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,CAAC;;AA8RF,wBASG"}