pds-dev-kit-web-test 0.3.7 → 0.3.9

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 (49) hide show
  1. package/dist/index.d.ts +2 -2
  2. package/dist/src/common/assets/icons/fill/DeviceMobileNotification.d.ts +4 -0
  3. package/dist/src/common/assets/icons/fill/DeviceMobileNotification.js +30 -0
  4. package/dist/src/common/assets/icons/fill/index.d.ts +1 -0
  5. package/dist/src/common/assets/icons/fill/index.js +2 -0
  6. package/dist/src/common/assets/icons/line/Chapter.js +1 -1
  7. package/dist/src/common/assets/icons/line/DeviceMobileNotification.d.ts +4 -0
  8. package/dist/src/common/assets/icons/line/DeviceMobileNotification.js +30 -0
  9. package/dist/src/common/assets/icons/line/Pages.js +1 -1
  10. package/dist/src/common/assets/icons/line/VideoPlayCircle.js +1 -1
  11. package/dist/src/common/assets/icons/line/index.d.ts +1 -0
  12. package/dist/src/common/assets/icons/line/index.js +2 -0
  13. package/dist/src/common/index.d.ts +1 -1
  14. package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +2 -1
  15. package/dist/src/common/styles/colorSet/PaletteColor_light.json +2 -1
  16. package/dist/src/common/styles/colorSet/UIColor.json +2 -1
  17. package/dist/src/common/styles/colorSet/index.d.ts +350 -347
  18. package/dist/src/common/styles/colorSet/index.js +3 -3
  19. package/dist/src/common/styles/colorSet/ui-type.d.ts +1 -0
  20. package/dist/src/common/types/components.d.ts +5 -0
  21. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.js +5 -5
  22. package/dist/src/desktop/components/DesktopTabBar/DesktopTabBar.d.ts +4 -1
  23. package/dist/src/desktop/components/DesktopTabBar/DesktopTabBar.js +16 -4
  24. package/dist/src/desktop/components/Dropdown/Dropdown.d.ts +3 -2
  25. package/dist/src/desktop/components/Dropdown/Dropdown.js +124 -19
  26. package/dist/src/desktop/components/DynamicDesktopNavBar/DynamicDesktopNavBar.js +25 -6
  27. package/dist/src/desktop/components/DynamicDesktopNavBar/blocks/BrandLogo.d.ts +2 -1
  28. package/dist/src/desktop/components/DynamicDesktopNavBar/blocks/BrandLogo.js +2 -2
  29. package/dist/src/desktop/components/DynamicDesktopNavBar/blocks/UserProfile.d.ts +2 -2
  30. package/dist/src/desktop/components/DynamicDesktopNavBar/blocks/UserProfile.js +7 -5
  31. package/dist/src/desktop/components/DynamicDesktopNavBar/components/LogoNav.d.ts +2 -1
  32. package/dist/src/desktop/components/DynamicDesktopNavBar/components/LogoNav.js +12 -3
  33. package/dist/src/desktop/components/DynamicDesktopNavBar/templates/DynamicDesktopNavBarTemplates.d.ts +136 -1
  34. package/dist/src/desktop/components/DynamicDesktopNavBar/templates/constants.d.ts +141 -0
  35. package/dist/src/desktop/components/DynamicDesktopNavBar/templates/constants.js +141 -0
  36. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.js +5 -5
  37. package/dist/src/mobile/components/Dropdown/Dropdown.d.ts +3 -2
  38. package/dist/src/mobile/components/Dropdown/Dropdown.js +123 -18
  39. package/dist/src/sub/DynamicLayout/DynamicLayout.d.ts +1 -1
  40. package/dist/src/sub/DynamicLayout/DynamicLayout.js +3 -2
  41. package/dist/src/sub/DynamicLayout/components/EditModeSectionMatcher/SectionBox.js +4 -2
  42. package/dist/src/sub/DynamicLayout/dynamicLayoutContext.js +2 -1
  43. package/dist/src/sub/DynamicLayout/pagesPreviewMock.d.ts +790 -2
  44. package/dist/src/sub/DynamicLayout/pagesPreviewMock.js +1988 -1202
  45. package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.js +1 -1
  46. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Youtube/Youtube.js +26 -2
  47. package/dist/src/sub/DynamicLayout/types.d.ts +1 -0
  48. package/package.json +1 -1
  49. package/release-note.md +3 -3
@@ -24,13 +24,14 @@ var DynamicLayout_1 = require("../../../../../../../DynamicLayout");
24
24
  var hooks_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks");
25
25
  var colorUtil_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/newUtils/colorUtil");
26
26
  var util_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/util");
27
+ var utils_1 = require("../../../../../../../DynamicLayout/utils");
27
28
  var styled_components_1 = __importDefault(require("styled-components"));
28
29
  var S_CB_AnimationObserverBox_1 = require("../components/S_CB_AnimationObserverBox");
29
30
  var S_CB_BoxWithShadow_1 = require("../components/S_CB_BoxWithShadow");
30
31
  var S_HiddenCover_1 = require("../components/S_HiddenCover");
31
32
  var parseYoutubeContentProp_1 = __importDefault(require("./parseYoutubeContentProp"));
32
33
  function Youtube(props) {
33
- var _a = (0, react_1.useContext)(DynamicLayout_1.dynamicLayoutContext), device = _a.device, mode = _a.mode;
34
+ var _a = (0, react_1.useContext)(DynamicLayout_1.dynamicLayoutContext), device = _a.device, mode = _a.mode, youtubeAutoplayMode = _a.youtubeAutoplayMode;
34
35
  var CB_CONTENT_PROP_YOUTUBE = props.CB_CONTENT_PROP_YOUTUBE, CB_STYLE_PROP_BGCOLOR = props.CB_STYLE_PROP_BGCOLOR, CB_STYLE_PROP_SHADOW = props.CB_STYLE_PROP_SHADOW, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
35
36
  var _b = (0, parseYoutubeContentProp_1.default)(CB_CONTENT_PROP_YOUTUBE), youtubeSrc = _b.youtubeSrc, thumbnailSrc = _b.thumbnailSrc, id = _b.id;
36
37
  var isEditMode = mode === 'EDIT';
@@ -49,7 +50,13 @@ function Youtube(props) {
49
50
  : CB_EFFECT_PROP_ENTANIM['CB_EFFECT_PROP_ENTANIM_SPEC_TYPE:MOBILE'] === 'NONE';
50
51
  var hasEffect = !isNoneEffectType;
51
52
  var effectVisibleStyle = hasEffect ? { opacity: isVisible ? 1 : 0 } : {};
52
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isEditModeAndHidden && (0, jsx_runtime_1.jsx)(S_HiddenCover_1.S_HiddenCover, {}), (0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box", normalStyle: __assign(__assign(__assign(__assign({}, propsStyle), layoutStyle), effectCssProperties), bgColorStyle), hoverStyle: __assign(__assign({}, propsHoverStyle), bgColorHoverStyle), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device }, { children: isEditMode ? ((0, jsx_runtime_1.jsxs)(S_ThumbnailBox, { children: [(0, jsx_runtime_1.jsx)(YoutubeButton, {}), (0, jsx_runtime_1.jsx)(S_Thumbnail, { src: thumbnailSrc })] })) : ((0, jsx_runtime_1.jsx)(S_Iframe, { title: id, src: youtubeSrc, allow: "accelerometer; encrypted-media; gyroscope; picture-in-picture" })) })) }))] }));
53
+ var autoplayEntry = (0, hooks_1.useIntersectionObserver)(cbRef, {
54
+ freezeOnceVisible: true
55
+ });
56
+ var shouldAutoPlay = youtubeAutoplayMode === 'ALWAYS' ||
57
+ (youtubeAutoplayMode === 'VIEWPORT' && isVisible) ||
58
+ (youtubeAutoplayMode === 'VIEWPORT-FREEZE' && (autoplayEntry === null || autoplayEntry === void 0 ? void 0 : autoplayEntry.isIntersecting));
59
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isEditModeAndHidden && (0, jsx_runtime_1.jsx)(S_HiddenCover_1.S_HiddenCover, {}), (0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box", normalStyle: __assign(__assign(__assign(__assign({}, propsStyle), layoutStyle), effectCssProperties), bgColorStyle), hoverStyle: __assign(__assign({}, propsHoverStyle), bgColorHoverStyle), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device }, { children: isEditMode ? ((0, jsx_runtime_1.jsxs)(S_ThumbnailBox, { children: [(0, jsx_runtime_1.jsx)(YoutubeButton, {}), (0, jsx_runtime_1.jsx)(S_Thumbnail, { src: thumbnailSrc })] })) : ((0, jsx_runtime_1.jsx)(S_Iframe, { title: id, src: shouldAutoPlay ? getAutoplaySrc(youtubeSrc) : youtubeSrc, allow: "accelerometer; encrypted-media; gyroscope; picture-in-picture" })) })) }))] }));
53
60
  }
54
61
  function getBGColorStyles(props, device) {
55
62
  var availableSpecCodes = [
@@ -71,5 +78,22 @@ var S_YoutubeButton = styled_components_1.default.div(templateObject_4 || (templ
71
78
  function YoutubeButton() {
72
79
  return ((0, jsx_runtime_1.jsx)(S_YoutubeButton, { children: (0, jsx_runtime_1.jsxs)("svg", __assign({ height: "100%", version: "1.1", viewBox: "0 0 68 48", width: "100%" }, { children: [(0, jsx_runtime_1.jsx)("path", { className: "ytp-large-play-button-bg", d: "M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z", fill: "#f00" }), (0, jsx_runtime_1.jsx)("path", { d: "M 45,24 27,14 27,34", fill: "#fff" })] })) }));
73
80
  }
81
+ function getAutoplaySrc(youtubeSrc) {
82
+ try {
83
+ var url = new URL(youtubeSrc);
84
+ if (url.hostname.includes('youtube.com') || url.hostname.includes('youtu.be')) {
85
+ var id = utils_1.YouTubeLinkParser.getId(youtubeSrc);
86
+ url.searchParams.set('autoplay', '1');
87
+ url.searchParams.set('mute', '1');
88
+ url.searchParams.set('loop', '1');
89
+ url.searchParams.set('playlist', "".concat(id));
90
+ return url.href;
91
+ }
92
+ return 'Invalid YouTube URL';
93
+ }
94
+ catch (error) {
95
+ return 'Invalid URL';
96
+ }
97
+ }
74
98
  exports.default = Youtube;
75
99
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -224,6 +224,7 @@ export type DynamicLayoutProps = {
224
224
  sectionActionHandler?: (action: TypeOfSectionAction) => void;
225
225
  programmedSectionComponents?: IProgrammedSectionComponents;
226
226
  width?: number;
227
+ youtubeAutoplayMode?: 'ALWAYS' | 'VIEWPORT-FREEZE' | 'VIEWPORT';
227
228
  };
228
229
  export type NavHandlerAction = {
229
230
  openNewTab: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pds-dev-kit-web-test",
3
- "version": "0.3.7",
3
+ "version": "0.3.9",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "dist/index.js",
package/release-note.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # pds-dev-kit-web-test Release Notes
2
- ## [v0.3.7]
3
- ## 기준 pds-dev-kit-web 버전 @2.2.26
2
+ ## [v0.3.9]
3
+ ## 기준 pds-dev-kit-web 버전 @2.2.34
4
4
  ### sub
5
5
  * DynamicLayout
6
- * 선택된 CB 투명도 0.95추가
6
+ * youtube CB autoplay mode 3가지 개발